1 / 31

Lightweight Flow Setup Wirespeed Flow Reservation

Learn about the Lightweight Flow Setup (LFS) service, which provides one-way unicast flows with reserved bandwidth, easy deployment, and no complex signaling, for improved performance in extreme networking environments.

delberte
Télécharger la présentation

Lightweight Flow Setup Wirespeed Flow Reservation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Lightweight Flow SetupWirespeed Flow Reservation Jon Turner Fred Kuhns{jst,fredk}@cs.wustl.eduhttp://www.arl.wustl.edu/arl

  2. Resource Reservation in Internet? • Bandwidth reservation can provide dramatically better performance for some applications. • Obstacles to resource reservation in Internet. • distaste for signaling protocols • perceived complexity of IntServ+RSVP • requires end-to-end deployment • little motivation for service providers • How to get resource reservation in Internet? • keep it simple • focus on top priorities - one-way unicast flows • avoid complex signaling - leverage hardware routing mechanisms • make it useful when only partially deployed • provide motivation for ISPs to deploy it

  3. Context: Extreme Networking • The Lightweight Flow Service is one of two interrelated services provided within the Extreme Networking framework. • Lightweight Flow Setup (LFS) • one-way unicast flow with reserved bandwidth, soft-state • no complex signaling, wire-speed setup, easy to deploy • Network Access Service (NAS) • provides controlled access to LFS • registration/authentication of hosts, users • resource usage data collection for monitoring, accounting

  4. Lightweight Flow Setup Service • Sender initiated,one-way, unicast flow • Soft-statethat responds to transmission of packets between endpoints • Arrival of “first” packet triggers creation of per flow state - no advance signaling required • Reservation request embedded in application packets • flow rate(s) specified in packet header using IP options • Routers independently process reservations and allocate resources • No global coordination required • Flow detected and route selection triggered as needed • Route for flow pinned until flow is released or times out • Prefer routes with ample unreserved bandwidth • allocate requested rate if/when “sufficient” bandwidth

  5. Service Models • Firm rate - Basic Service Model • Application’s requiredminimum guaranteed rate • Client may alter reservation up or down - limits may be placed on rate of reservation change • Allocate bandwidth on a FCFS basis as available • Partial allocations - congested links forward packets as datagrams until sufficient bandwidth is released by other flows • Soft Reservations • Can be intermixed with firm requests • Application’s maximum desired rate • Congested links allocate bandwidth fairly among competing flows, proportional to their firm rate • Requires minimum firm rate of 64Kbps

  6. 10 Mb/s available 5 Mb/s available 20 Mb/s available 5 Mb/s available 2 Mb/s available Basic LFS Operation Select path and attempt to reserve Reserve bandwidth Reserve 8 Mb/s to B Complete reservation A 20 Mb/s available B Select best next hop Select path and reserve • One way, unicast setup with partial reservation. • complete reservations locally when bandwidth released • Optional Status Report returned by far-end access router. • Reservation may terminate explicitly with a Release message or timed out. • May alter reserved bandwidth but not route.

  7. Edge Router PrivateLAN ISP Network WebSite Example Application • Web site specifies stable rate in outgoing streaming media packets • Use feedback to adjust sending rate if necessary. • Note: no action required by receivers.

  8. TR TR IP LFS data Example Application - Continued Network 2) server receives request prepares to send video Service Provider AR End System (source) TR TR 4) each router allocates rate and binds flow to route. 3) Sends video with embedded LFS reservation requests, user identifier = U1. Service User 5) Receives video clip at guaranteed rate. TR TR End system (destination) AR 1) request video clip from service provider. TR TR AR - Access Router TR - Transit Router

  9. Regulating LFS Use • Assumes the existence of a Network Access Service (NAS) • client (user or host) must register prior to using LFS service • binds client-specific privileges • limit rates, # reserved flows, frequency of changes, total bandwidth • establishes an access pipe between an access router and an authenticated client • Records usage for monitoring, accounting. • record reservation periods, rates, # bytes delivered • Regulation and monitoring at network access points by NAS or its proxy • for fixedaccess, just use physical interface • access router keeps record and enforces limits • for roamingaccess to ISP or corporate network • registration protocol executed when host connects to network • IP tunnel for data transfers between host and access point • all data to/from host passes through that point

  10. Source Network and SAR NAS user dB id user info limits ... ... ... ... Establish access pipe and client usage limits register user Authenticate user, return credentials SAR NAS: verify user and request LFS: process request End system (Source) All traffic from Client to Access Router goes through the established Access Pipe. Access pipes are simplex.

  11. Status Reporting and Usage Monitoring • If a router can not allocate the requested rate it updates a field in the LFS request • DAR maintains a usage database by recording the flow, user and current reservation status • Client may request end-to-end status reports from the DAR • DAR sends report directly to client • Status reporting mechanism for use by network provides (ISPs). • reporting to routers within a domain, reporting across the public network portion of the path and end-to-end reporting for private networks at the ends of a path

  12. IP LFS data Destination Network and DAR Record usage, remove LFS requests if destination does not support LFS End system Destination IP data AR Usage dB time reservation flow identifier user id requested allocated start duration

  13. TR TR IP (R1) data Example Application - Continued user dB SAR: NAS - Verify user and request. LFS - Process request AR - Access Router TR - Transit Router NAS user auth. info and usage rights. Create Access Pipe. register AR Source Host (NAS and LFS Client) TR TR Access Pipe TR: process request and update LFS option showing minimum allocation along path Source LAN DAR: record reservation status (requested and minimum rates). Remove LFS option. TR TR Destination Host (Not required to register with NAS) AR Access Pipe (Not Supported!) TR TR usage dB Destination LAN

  14. Partial LFS • LFS to Non-LFS networks: • Boundary router between last LFS network and first non-LFS network terminates LFS flow. Status messages sent from this node. Assumes LFS role of the DAR. • non-LFS LAN to LFS network through a single access point: • Assume bandwidth plentiful within LANs. • Use LFS capable router at access point • Intermediate Non-LFS networks: • Terminate LFS flow at the first LFS to Non-LFS network boundary router. • Suggests policy of routing LFS flows through LFS-capable networks.

  15. Partial LFS • WAN supports LFS but LANs do not. • Ample LAN bandwidth can make partial reservation worthwhile. • Sending LAN router (and perhaps switches) give LFS flows high priority. • Sending WAN router processes reservation.

  16. A B Partial LFS in WANs • Partial LFS useful from A to B if only A supports it. • If only B supports LFS, not clear if it’s worthwhile. • route changes can cause “orphan reservations” • avoid orphan reservations by configuring inter-WAN routers to mark packets to disable LFS processing • but if time between route changes is >> reservation timeout, orphan reservations not serious problem

  17. The LFS IP Option op (2b) type (8 bits) length (8 bits) flags (6 bits) rate 1 (8 bits) rate 2 (8 b its) trace field (24 bits) Client Network Status Recipient (32 bits, optional) Public Network Status Recipient (32 bits, optional) Intradomain Status Recipient (32 bits, optional) Operations 00 Firm Rate Request 01 Soft Rate Request 10 Release 11 Undefined Flags (XXHCPI) H Host Status Request C Client Network Status Request P Public Network Status Request I Intradomain Network Status Request XX Undefined Status Recipient - 32 bit IP Address

  18. LFS Option- Flags • Host Status Request - Requests router terminating the LFS portion of the path to send status report directly to the source host (source address in IP header). • Client Network Status Request - Requests router terminating the LFS portion of the path to send status report to the Client Network Status Report Recipient. • Public Network Status Request - Requests router terminating the LFS portion of the path to send status report to the Public Network Status Report Recipient. The recipient forwards the status report along the path of the flow. Report removed by the router that terminates the LFS section of the path, i.e. the reporting router. • Intradomain Network Status Request - The report is sent by the last router on the path within the domain, to the intradomain status report recipient. Removed at outgoing BR

  19. Remaining LFS Option Fields • Rate1 and Rate2 - Rates expressed using a floating point representation with a 4 bit mantissa and a 4 bit exponent. • if m = first 4 bits, x= last 4 bits, then the rate is m2x64 Kb/s. • Permits reservation rates ranging from 64 Kb/s to over 4 Gb/s. • Successive rates differ by no more than a factor of 1.0625. • Rate 1 contains the desired rate, Rate 2 contains the minimum rate allocated along the path • Trace field- Enables a network to determine where a flow entered the network for purposes of monitoring and accounting. Domains free to define own specific use. • Status report target recipients- Optional list of up to three status report recipients. Each is associated with one of the status request flags and is present if and only if the corresponding status request flag is present. The order in which they appear (if present) is Client Network, Public Network then Intradomain.

  20. LFS Control and Status Messages Hdr flags (8 bits) operation(8 bits) undefined (2 Bytes) source IP address (32 bits) Flow Identifier destination IP address (32 bits) Status Record (20 Bytes) destination port (16 bits) source port (16 bits) firm (8 bits) soft (8 bits) undefined (8 bits) protocol (8 bits) • LFS Status report are encapsulated within an IP datagram with a unique protocol type field. • Currently, only this status message is envisioned so we do not need the LFS header.

  21. BR TR Internet: Different ISPs user database NAS ISP “A” authenticate/ authorization user authorization and constraints register user identifer SAR BR TR End system Source usage dB application flow LFS trace A:X application flow LFS trace A:X to B:X Source Network remove LFS option for trace B:X BR TR End system Client DAR BR TR usage dB usage dB Destination Network ISP “B”

  22. Rt Manager InVIN0 InVIN1 InVIN2 InVIN3 Source Access Router - LFS Processing • SW manages FPX reserved queues. • Always reclassify packets. • New or updated reservation must return bandwidth allocated. Define access pipe, set usage limits/trace ID, get usage table CP NAS (IKE, Accounting) Return usage table, current and history. NAS Register Route Update Add Exact Match Filter with Reservation New LFS Flow. Allocate QID Command Interface Classify after filter added Delete Exact Match Filter/Reservation Release or error. Free QID Route DB Classify before delete filter Forward: No option or no change No option or no change Queue, Flow, and Access Pipe Table Change LFS flow reservation FPX Classifier Change rate or style. Classify after rate change Dst == Local, Proto = LFS (status report) Packet/Event Dispatcher NAS (Authentication) Access Pipe Authorized Non-LFS or Error drop LFS option LFS Processing Send status report to next hop Encapsulated Status Report, send to next hop for flow

  23. Rt Manager InVIN0 InVIN1 InVIN2 InVIN3 Transit Router CP Route Update Add Exact Match Filter with Reservation New LFS Flow. Allocate QID Command Interface Classify after filter added Delete Exact Match Filter/Reservation Release or error. Free QID Route dB Classify before delete filter Forward: No option or no change No option or no change Queue and Flow Table Change LFS flow reservation FPX Classifier Change rate or style. Classify after rate change Dst == Local, Proto = LFS (status report) Packet/Event Dispatcher IP Option Processing Packets with IP Options LFS Options Present LFS Processing Send status report to next hop Encapsulated Status Report, send to next hop for flow

  24. InVIN0 InVIN1 InVIN2 InVIN3 Boundary or Destination Access Router • No specialized routing needed since either the destination host is directly connected or peers with a Non-LFS network. • Also needs output port bandwidth reservations. CP Get Usage Report NAS (Accounting) Return Usage Report Add Exact Match Filter with Reservation New LFS Flow. Allocate QID Command Interface Classify after filter added Delete Exact Match Filter/Reservation Release or error. Free QID Usage dB Classify before delete filter Forward: No option or no change No option or no change Queue and Flow Table Change LFS flow reservation FPX Classifier Change rate or style. Classify after rate change Dst == Local, Proto = LFS (status report) Packet/Event Dispatcher Remove LFS options; Do not forward status reports. * Can destination register? If so we forward options and reports. IP Option Processing Packets with IP Options LFS Options Present LFS Processing

  25. FPX - LFS Issues • Shims: input and output VINs included, SID changed to QID or Queue identifier • Interfacing to FPX • Queue Identifier for reserved flows allocated by software on the SPC. • Add/removing/modifying exact match filters, including reservations and QID. Should return rate allocated. • Do we need to request current firm and soft rate allocation for specific flow? • Rely on LFS options to expose current allocation to SPC - when SPC updates filter the current allocation is returned. • All packets with IP options are sent to SPC. • Sent to SPC before classification. • What about timing out LFS soft state on TR or DAR? Application must send LFS option in every X packets.

  26. NAS - LFS Issues • Access pipe is used by LFS for authorizing requests • NAS assigns usage limitations on a per access pipe basis • LFS then verifies request against access pipe limits. If request exceeds limit then drop should we drop request, drop packet or reduce rate to max allowed? • NAS may request LFS to release all reservations associated with a given access pipe. • LFS obtains access pipe designator by: • inVIN != default, then arrived on an access pipe with ID = sub-port ID. • IPSec - what do we use for an access pipe ID? • Usage database reporting to NAS: • SPC/FPX sends to NAS instance on local CP • LFS to NAS usage: push or pull? AAL0 or AAL5? JDD data channels? • IKE on SPC?! Not supported now. Implement on CP. • Access Pipes are simplex - only on source end.

  27. FlowTable RouteTable FlowTable FlowProcessor FlowProc. . . . Implementation -Transit Router Input • If flow table entry present, use stored next hop. • If no flow table entry, lookup route & create entry • store selected next hop in flow table entry • next hop selected from list of candidates, based on outgoing link status

  28. FlowTable RouteTable FlowTable FlowProcessor FlowProc. . . . Implementation - Transit Router Output • If flow table entry present, use it to find queue, otherwise create an entry & allocate queue. • If firm reservation specified, update entry. • keep list of unsatisfied reservation requests to process as bandwidth becomes available • If soft reservation, update fair share, pacing rate.

  29. FlowTable RouteTable FlowTable FlowProcessor FlowProc. . . . AccessTable Implementation - Access Router Ingress • If entry for user present in access table. • check privileges and record usage in access table • Otherwise, first retrieve user data from database. • implies delay on first use of any given access link • When multiple concurrent access points. • user’s allocation divided - periodic updates

  30. Implementation - Access Router Egress FlowTable RouteTable FlowTable FlowProcessor FlowProc. . . . StatusTable AccessTable • Flow status recorded in status table. • Record usage data for accounting. • reserved amount, time of reservation changes • Periodically transfer accounting data to CP. • need to do data reduction, first?

  31. length + a(kR-margin)2 cost length kR margin = (avail bw) - R Routing Flow Reservations • Link cost proportional to length when link not busy. • When margin is small, link cost grows to reflect uncertainty in link state. • Parameter a chosen to balance cost of “false positive” and “false negative”. • Interdomain routing? • May use standard datagram routing for flows. • QoS routing can produce better results. • Shortest path routing with suitable cost metric. sample parameter valuesR=5 Mb/s, k=5, a=500/(kR)2

More Related