A Deployable Framework for Providing Better Than Best-Effort Quality of Service for Traffic Flows Proposal Presentation Raheem A. Beyah July 10, 2002 Communications Systems Center
Presentation Outline Motivation & Background QoS-based Routing Traffic Measurement & Characterization Proposed Research Generalized Application-Layer Overlay Application Layer Switching Application Layer Striping Work Remaining Communications Systems Center 2
Presentation Outline Motivation & Background QoS-based Routing Traffic Measurement & Characterization Proposed Research Generalized Application-Layer Overlay Application Layer Switching Application Layer Striping Work Remaining Communications Systems Center 3
Quality of Service (QoS) Background Internet was initially used for simple data transfer Now provides a multitude of services The current Internet is a best-effort, delay and jitter prone Network of networks Users and applications now push for a overall better and more predictable experiences on the Internet To accomplish this some level of QoS must be established Communications Systems Center 4
Quality of Service (QoS) Background QoS is defined as a set of service requirements to be met by the network while transporting a flow [22] QoS is usually discussed using several different metrics: delay, jitter, bandwidth, and loss. Let m(n1,n2) be the metric of interest. Also, let the entire path be denoted as P = (n1, n2, n3,., ni, nj) additive, if m(p) = m(n1,n2) + m(n2,n3) + + m (ni, nj) (Jitter, delay, link-cost, and hop-count) multiplicative, if m(p) = m(n1,n2) * m(n2,n3) * * m (ni, nj) (Loss probability) concave, if m(p) = min{m(n1,n2),m(n2,n3),, m (ni, nj)} (Bandwidth) Communications Systems Center 5
Presentation Outline Motivation & Background QoS-based Routing Traffic Measurement & Characterization Proposed Research Generalized Application-Layer Overlay Application Layer Switching Application Layer Striping Work Remaining Communications Systems Center 6
QoS-based Routing Current Internet routes packets using OSPF, taking in account only shortest paths Common shortest paths leads to over utilized links hot spots Results in improper load balancing on the Internet QoS-based routing considers multiple metrics (distance, delay, loss, jitter, bandwidth) Communications Systems Center 7
QoS-based Routing (Objectives) Dynamic determination of feasible paths Optimization of resource usage Graceful performance degradation Controlling network service response Service establishment in advance Controlling link contention Communications Systems Center 8
QoS-based Routing (Issues) How do routers determine the QoS capability of each outgoing link? Granularity of routing decision: per-flow or per aggregate basis? Metrics and path computation. How is scalability achieved? Path updates and maintenance. Communications Systems Center 9
QoS-based Routing (Inter vs. Intra domain ) Similar to regular routing protocols, QoS routing protocols may have a routing hierarchy: Intradomain and Inter-domain routing Intra-domain concentrates on routing within a single Autonomous System (AS) Inter-domain routing focuses on connectivity of different domains and global routing between ASs Communications Systems Center 10
QoS-based Routing (Algorithms) Source-based Routing Strengths: path calculated locally, loop-free routes Weaknesses: overhead, scalability, delayed state information Hop-by-hop Routing Strengths: path computation is distributed, may not require global state maintenance Weaknesses: may encounter loops, may encounter overhead Hierarchical Routing Strengths: Maintains partial global states (scalable), path computation Weaknesses: Imprecision based on aggregate state information Communications Systems Center 11
QoS-based Routing (Extensions) IntServ Allows per-flow granularity and uses standard routing QoS-based routing can be used to provide additional routes which will distribute the load and signaling DiffServ Allows per-aggregate granularity and uses standard routing QoS-based routing can be used to provide additional routes which will distribute the load MPLS Allows per-flow to per-aggregate granularity Uses CR-LDP, thus already incorporates QoS-based routing Communications Systems Center 12
Presentation Outline Motivation & Background QoS-based Routing Traffic Measurement & Characterization Proposed Research Generalized Application-Layer Overlay Application Layer Switching Application Layer Striping Work Remaining Communications Systems Center 13
Traffic Measurement & Characterization Internet Growth Increase in need to monitor and measure Internet traffic Best Solution Deploy many trusted and reliable probes in each Autonomous System Common Solution Measurements along a cross-section of the Internet Conclusions and coarse predictions can be drawn and possibly be applied to other areas of the Internet Communications Systems Center 14
Introduction (continued) In this experiment we generate: Single TCP flows, multiple TCP flows, single UDP flows We discuss: Link asymmetry Effects of file size and transport protocol on throughput Overall throughput when using multiple TCP flows UDP and TCP behaviors Communications Systems Center 15
Experimental Apparatus Four end nodes (GT, NCAT, UCR, UCLA) Nodes are mesh connected - each nodes takes a different route to every other nodes Total of 12 paths Modified sock program (Stevens vol. 1) Perl scripts used to run instances of program Cron scripts for Synchronization Scripts executed in two twelve-hour blocks Experiment Duration Nov. 15, 2001 Feb. 1, 2002 Communications Systems Center 16
Summary of Empirical Study Results Link asymmetry persists Asymmetry may be caused by loss, congestion, link capacity, etc In our testbed, primarily congestion TCP throughput proportional to file size (slow start, window size) UDP throughput independent of file size TCP throughput depends on time of day (background traffic) UDP throughput independent of time (background traffic) My be a shift in diurnal traffic patterns??? UDP flows attain available bandwidth of the link and has a much higher throughput than TCP Larger files sent in parallel share the link more fairly than smaller files Communications Systems Center 17
TCP Single Flows (Per Link Throughput) Link # Link1 Link2 Link3 Link4 Link5 Link6 Link7 Link8 Link9 Link10 Link11 Link12 Link Description UCR NCAT GT NCAT UCLA NCAT UCR GT NCAT GT UCLA GT NCAT UCR GT UCR UCLA UCR UCR UCLA GT UCLA NCAT UCLA Fig. 1. Single TCP flows All file sizes Communications Systems Center 18
Presentation Outline Motivation & Background QoS-based Routing Traffic Measurement & Characterization Proposed Research Generalized Application-Layer Overlay Application Layer Switching Application Layer Striping Work Remaining Communications Systems Center 19
Generalized Application-Layer Overlay (GALO) Overlay Architecture: current Infrastructure remains in place and a virtual network is run atop it. Previous Relevant Overlay Architectures MBone EtoE Strictly uses end nodes to generate path quality updates Deployable solution: No infrastructure modifications (i.e. routers, etc.) Communications Systems Center 20
Generalized Application-Layer Overlay (GALO) GALO is used to gather path quality along the logical links of the collaborating nodes Three components: Distributed Client Engine (DCE) Forwarding Engine (FE) QoS Routing Engine (QRE) The Application Layer Communications Protocol (ALCP) will be the scheme in place to communicate between components Communications Systems Center 21
Generalized Application-Layer Overlay (GALO) DCE Resides on remote node Primary purpose is to calculate and transmit path quality updates (throughput) to QRE May be used to implement lost detection or perform packet reordering FE Resides on remote node Only invoked at transit nodes Switching engine for passing traffic When appropriate signaling is received, incoming and outgoing port are invoked to perform switching QRE Controlling unit of the system Maintains an accurate picture of the network Receives UPDATE messages from DCEs Maintains reachability information Table uses Dijktra s or Bellman-Ford algorithm Communications Systems Center 22
UPDATE Generalized Application-Layer Overlay (GALO) Path A->B A->C A->D A->E B->E Thpt 12 18 4 19 8 Background Traffic - sock UPDATE UPDATE UPDATE UPDATE Communications Systems Center 23
Generalized Application-Layer Overlay (GALO) Work Completed Generalized Application Layer Overlay network has been preliminarily defined. Application Layer Communications Protocol has been designed (APPENDIX A). WAN testbed has been defined and implemented. The ability to generate artificial traffic between the 4 nodes in the testbed has been implemented. Communications Systems Center 24
Presentation Outline Motivation & Background QoS-based Routing Traffic Measurement & Characterization Proposed Research Generalized Application-Layer Overlay Application Layer Switching Application Layer Striping Work Remaining Communications Systems Center 25
Application Layer Switching (ALSW) Motivated by improper traffic balance on Internet Related Work: Savage, et. al. Performed a measurement-based study of path quality (used traceroute) Primary metrics considered were: rtt and loss, with minimal emphasis on thpt After synthetically constructing alternate paths, found that 30%-80% had a better path quality than default path Communications Systems Center 26
Application Layer Switching (ALSW) ALSW Introduced to provide a better than traditional, best-effort QoS Has the ability to utilize alternative paths when routing Routing decisions can be made based on multiple metrics Hence, helping to balance the load on the Internet Communications Systems Center 27
Application Layer Switching (ALSW) Uses end nodes to route packets, therefore no modification of current infrastructure ALSW module is an extension to GALO GALO has the current state of the network, this is passed to the ALSW module to perform QoS- based routing If a better path for a flow is known, the ALSW module signals using the ALCP to the path nodes to allow forwarding along the new alternate path The path nodes provision appropriately and expect data to be routed through it Communications Systems Center 28
Application Layer Switching (ALSW) PROVISION PROVISION PROVISION PROVISION Path B->A B->A B->A B->A B->A Alternate Path DEFAULT B->D->A B->E->A B->D->C->A B->E->C->A Min(Thpt) 12 18 4 19 8 ATH REQUEST Communications Systems Center 29
Application Layer Switching (ALSW) Results from Measurement Study (Sec. 3) Figure 11. (a)left Best alternate path-default path(thpt) (b)right Best alternate path-default path(%) 50% of nodes had a alternate path with better path quality Increase ranged from 30% to 120% Communications Systems Center 30
Application Layer Switching (ALSW) Work Completed ALSW module used to enhance GALO has been preliminarily defined. The feasibility of Application Layer Switching has been assessed through an offline empirical alternate path construction based on a live study. Application Layer Communications Protocol has been extended to support ALSW. Communications Systems Center 31
Presentation Outline Motivation & Background QoS-based Routing Traffic Measurement & Characterization Proposed Research Generalized Application-Layer Overlay Application Layer Switching Application Layer Striping Work Remaining Communications Systems Center 32
Application Layer Striping (ALST) Concept has been around for years. Most popular form of Striping is Disk Striping. Striping concept addresses a general question: Can multiple resources be used in parallel to increase a specific performance metric? Single-user Striping: Resources are disk drives, metric of interest is transfer time. In ALST, resources are paths to a destination and metric of interest is overall throughput. Communications Systems Center 33
Application Layer Striping (ALST) Figure 13. (a) left Normal routing scenario. (b) right Striped routing scenario. ALST Introduced to provide a better than traditional, best-effort QoS Has the ability to simultaneously utilize alternative paths when routing Data is split and striped of multiple paths Communications Systems Center 34
Application Layer Striping (ALST) Uses end nodes to segment and reassemble data, therefore no modification of current infrastructure ALST module is an extension to GALO GALO has the current state of the network, this is passed to the ALST module which looks for additional paths with superior path quality If a eligible additional paths for a flow is known, the ALST module signals using the ALCP to the path nodes to allow forwarding along the new alternate path The path nodes provision appropriately and expect data to be routed through it Communications Systems Center 35
Application Layer Switching (ALST) PROVISION PROVISION PROVISION PROVISION Path B->C B->C B->C B->C B->C Alternate Path DEFAULT B->D->A->C B->E->C B->D->C B->E->A->C Min(Thpt) 18 12 4 19 8 Path 1 Path 2 ATH REQUEST Communications Systems Center 36
Application Layer Striping (ALST) Results from Measurement Study (Sec. 3) Figure 14. (a) left Top two cumulative paths - default path (thpt) (b) right Top two cumulative paths - default path (%) If data were striped over two paths (default and alternate path) Increase ranged from 10% to 280% Communications Systems Center 37
Application Layer Striping (ALST) Work Completed ALST module used to enhance GALO has been defined. The feasibility of Application Layer Striping has been assessed through an offline empirical alternate path construction based on a live study. Application Layer Communications Protocol has been extended to support ALST. Communications Systems Center 38
Presentation Outline Motivation & Background QoS-based Routing Traffic Measurement & Characterization Proposed Research Generalized Application-Layer Overlay Application Layer Switching Application Layer Striping Work Remaining Communications Systems Center 39
Work Remaining Expand the QoS testbed. Complete the detail design and implementation of the overlay framework. Complete the design and implementation of the Application Layer Switching module. Integrate this module with the overlay framework. Communications Systems Center 40
Work Remaining Complete the design and implementation of the Application Layer Striping Module. Integrate this module with the overlay framework. Update Application Layer Communications Protocol as necessary. Complete the performance analysis of the Application Switching and Striping techniques. Communications Systems Center 41
A Deployable Framework for Providing Better Than Best-Effort Quality of Service for Traffic Flows Proposal Presentation Raheem A. Beyah July 10, 2002 Communications Systems Center