CHAMELEON A System for Adaptive Qo S Provisioning

  • Slides: 36
Download presentation
CHAMELEON - A System for Adaptive Qo. S Provisioning Rajesh Krishna Balan

CHAMELEON - A System for Adaptive Qo. S Provisioning Rajesh Krishna Balan

 • Internet has proliferated rapidly Date 12/69 12/79 01/89 07/95 07/96 07/97 07/98

• Internet has proliferated rapidly Date 12/69 12/79 01/89 07/95 07/96 07/97 07/98 07/99 07/00 Hosts 4 188 80, 000 6, 642, 000 8, 200, 000 16, 729, 000 26, 053, 000 36, 739, 000 56, 218, 000 80, 000 (projection)

 • Strong Interest in carrying Voice traffic over the Internet - 250 billion

• Strong Interest in carrying Voice traffic over the Internet - 250 billion conversation minutes by 2005 • Internet is designed for non-real time data communications - Assuring Qo. S is a problem.

Why there is no such problem in POTS? Tele-X Trunk lines • Statistical guarantees

Why there is no such problem in POTS? Tele-X Trunk lines • Statistical guarantees are provided

Vo. IP Gateway Internet Voice Flow

Vo. IP Gateway Internet Voice Flow

Technical challenges • Lack of guarantees in terms of BW, packet loss, delay and

Technical challenges • Lack of guarantees in terms of BW, packet loss, delay and jitter - Quality of Voice over Internet suffers. IP is only best effort!! • Qo. S guarantees are primarily provided by two mechanisms: • RSVP (Resource Reservation Protocol) • Priority Queue Mechanism • Diff. Serv framework initiative under IETF and QBone initiative under Internet 2 or Next Generation Internet hold promise.

Objectives To search for and acquire various hardware and / or software tools which

Objectives To search for and acquire various hardware and / or software tools which can generate application specific traffic which follow TCP dynamics. To verify and evaluate the properties and capabilities of TCP tunnels. To develop a complete system which uses TCP tunnels to provide Qo. S for various classes of traffic. This system should also be adaptive and thus be able to adjust itself to the traffic conditions on the network. To develop a mechanism by which the system can be used as an efficient yet reliable link layer protocol for transmitting TCP data over lossy links.

TCP-Trunking Testbed Setup (Centre For Internet Research) Internet Earth-1 10. 1. 1 Compaq Intel

TCP-Trunking Testbed Setup (Centre For Internet Research) Internet Earth-1 10. 1. 1 Compaq Intel Earth-2 10. 2. 1 Compaq Intel Mercury 10. 0. 2 Linux Intel Ether. Express Pro 100 B (Org) Earth Trunking Gateway Linux Pluto-2 10. 1. 254 Intel OEM Jupiter-1 10. 2. 2 Compaq Intel Jupiter-2 10. 3. 1 Compaq Intel Jupiter Delay / Drop Box Linux ananda-r 9 137. 132. 89. 91 Compaq Intel Saturn-1 10. 3. 2 Compaq Intel Pluto-1 10. 0. 254 Intel OEM Neptune Pluto Traffic Aggregator Linux Saturn-2 Trunking Gateway Linux 10. 4. 1 Compaq Intel Krypton-1 10. 4. 254 Intel OEM Venus 10. 0. 3 Linux Intel Ether. Express Pro 100 B (Org) Mars 10. 0. 4 Linux Intel OEM Krypton-2 10. 5. 254 Intel OEM Krypton Traffic Aggregator Linux Uranus-2 10. 5. 4 Compaq Intel 10. 5. 2 Linux Intel OEM Uranus-1 10. 5. 3 Compaq Intel Uranus 10. 5. 3 Linux Compaq Intel Rajesh & Boon Peng 3 rd September 1999 Revised on 19 th July 2000

Traffic Generators Need for Realistic Traffic Generators Mathematical Models (Poisson, Erlang, Exponential etc. )

Traffic Generators Need for Realistic Traffic Generators Mathematical Models (Poisson, Erlang, Exponential etc. ) Trace-based Models (collect usage statistics / data and replay etc. ) Ad-Hoc Models (models with no realistic component. E. g. models which just generate packets and send them out as fast as possible etc. )

Hardware Traffic Generators Very expensive ( > $70, 000 for a full system) Used

Hardware Traffic Generators Very expensive ( > $70, 000 for a full system) Used for stress testing production networks Generally unable to generate application level traffic (telnet, HTTP etc. ) which follow TCP dynamics (re-transmissions, window size negotiations etc. )

Software Traffic Generators

Software Traffic Generators

Principle of TCP Tunnels • TCP tunnels are virtual circuits through which all traffic

Principle of TCP Tunnels • TCP tunnels are virtual circuits through which all traffic belonging to a class of application are aggregated. • A single aggregated flow in a tunnel can be managed better than individual flows across a congested link. traffic management TCP tunnel encapsulation incoming packet admission control mechanisms Subsystem 1 TCP tunnel TCP trunk incoming encapsulated packet original data packets sent to mechanisms Subsystem 3 destination via normal routing decapsulation Subsystem 2 outgoing encapsulated packet

Principle of TCP Tunnels (cont) • Provides statistical guarantees to classes of traffic (eg.

Principle of TCP Tunnels (cont) • Provides statistical guarantees to classes of traffic (eg. , voice traffic should get at least 5% of the BW; Video traffic should get at least 10% of the BW, but no more than 20%). • Guarantees can be assured because of the traffic distribution pattern (eg. , all flows do not peak at the same time) traffic management • • TCP trunk encapsulation outgoing encapsulated packet Aggregation of traffic Reliable link level protocol Protection of flows TCP trunk Congestion handling is moved from core to edge of the network incoming packet admission control Subsystem 1 TCP trunk incoming encapsulated packet original data packets sent to mechanisms Subsystem 3 destination via decapsulation mechanisms Subsystem 2

Back Pressure Effect of TCP Tunnels Limit=1000 Tunnel Router Max=96 Core Router Instantaneous Queue

Back Pressure Effect of TCP Tunnels Limit=1000 Tunnel Router Max=96 Core Router Instantaneous Queue occupancies for core and tunnel routers using TCP tunnels

The Chameleon A complete solution that can help in the design of Voice over

The Chameleon A complete solution that can help in the design of Voice over IP Gateways with Qo. S guarantees. Traffic -Modeling of Vo. IP. Research and development at the network protocol layer (TCP/IP etc. ). Started in co-operation with Harvard University.

Chameleon Tele-X Designed to support multiple classes of traffic over the Internet with explicit

Chameleon Tele-X Designed to support multiple classes of traffic over the Internet with explicit minimum statistical guarantees. Chameleon INTERNET Border Router End Machines Encapsulated aggregated data in the TCP tunnels Border Router End Machines Aggregation of Incoming Data into TCP Tunnels by Chameleon

Chameleon Implementation w Qo. S routines are compiled into the Linux kernel to enable

Chameleon Implementation w Qo. S routines are compiled into the Linux kernel to enable the various Qo. S providing buffer and scheduling mechanisms (like RED, CBQ etc. ) in the Linux kernel. w User level program, TC used to activate the various buffer and scheduling mechanisms. This requires different parameters to be passed into the program TC.

Chameleon Implementation (2) User space Kernel space Remove packets from list and place into

Chameleon Implementation (2) User space Kernel space Remove packets from list and place into TCP tunnels after adding length of packet in front of packet Place packet into linked list libpcap incoming packet outgoing encapsulated packet Firewall TCP tunnels 1) Read length of pack 2) Read packet incoming encapsulated packet 1) Read IP destination of packet 2) Write packet into raw socket. User space Kernel space Packet sent to TCP tunnel receiver as that is the destination address for TCP tunnel packets Data Flow Diagram of TCP Tunnel Software original data packets sent to destination via normal routing

Deployment INTERNET LANs Border Router Running Chameleon INTERNET LANs Commodity Linux Machine running Chameleon

Deployment INTERNET LANs Border Router Running Chameleon INTERNET LANs Commodity Linux Machine running Chameleon Border Router LANs Border Router Commodity Linux Machine running Chameleon

Experimental Setup Virtual TCP tunnels between the 2 border routers Border Router Delay/Error Box

Experimental Setup Virtual TCP tunnels between the 2 border routers Border Router Delay/Error Box Border Router End Machines Logical setup of Experimental Testbed

Results - TCP Bulk Traffic Shows effectiveness in protecting TCP bulk traffic 1 2

Results - TCP Bulk Traffic Shows effectiveness in protecting TCP bulk traffic 1 2 2 1 One 2 Mbps UDP CBR stream One 2 Mbps UDP exponential on/off stream Ten TTCP bulk transfer

Results - Web Traffic Mix • 100 web sources • 2 video streams •

Results - Web Traffic Mix • 100 web sources • 2 video streams • Jitter is less • Substantial improvement in End-to-end response time

Results - UDP Packet Loss Traffic Mix • 10 TCP bulk sources • 2

Results - UDP Packet Loss Traffic Mix • 10 TCP bulk sources • 2 video stream • Packet loss is less

Results - Adaptive Nature Traffic Mix • 10 TCP bulk sources • 2 UDP

Results - Adaptive Nature Traffic Mix • 10 TCP bulk sources • 2 UDP streams 4 1 2 3 4 1 3 2

Reliable Data Link Layer Lossy / Wireless links are becoming increasingly common in todays

Reliable Data Link Layer Lossy / Wireless links are becoming increasingly common in todays networks However, TCP performs poorly in cases where packets are lost due to corruption Chameleon can be used to “isolate” the lossy links from the rest of the network Versions of TCP optimised for lossy environments, like TCP HACK, can be used by the Chameleon

Reliable Data Link Layer (2) Virtual TCP tunnels between the 2 border routers Border

Reliable Data Link Layer (2) Virtual TCP tunnels between the 2 border routers Border Router Delay/Error Box Border Router Lossy Link being simulated by Delay/Error Box End Machines Logical Setup of Experimental Testbed for lossy link experiments

Reliable Data Link Layer - Results 1 2 3 4 2 4 3 1

Reliable Data Link Layer - Results 1 2 3 4 2 4 3 1 Throughput of Chameleon versus percentage packet loss for short latency (10 ms) link with random single packet errors

Reliable Data Link Layer - Results (2) 1 2 3 4 3 1 4

Reliable Data Link Layer - Results (2) 1 2 3 4 3 1 4 2 Throughput of Chameleon versus percentage packet loss for long latency (300 ms) link with random single packet errors

Reliable Data Link Layer - Results Burst Errors 5% burst error 2% burst error

Reliable Data Link Layer - Results Burst Errors 5% burst error 2% burst error

Reliable Data Link Layer - Results Burst Errors (2) 10% burst error 15% burst

Reliable Data Link Layer - Results Burst Errors (2) 10% burst error 15% burst error

Future Work Port Chameleon fully into kernel space Test Chameleon in different network conditions

Future Work Port Chameleon fully into kernel space Test Chameleon in different network conditions Optimise Chameleon for UDP traffic Optimise Chameleon as a Vo. IP gateway More work needs to be done on the use of the Chameleon as a reliable data link layer Fully automate the Chameleon

Summary Chameleon enables the provisioning of Qo. S for various classes of traffic in

Summary Chameleon enables the provisioning of Qo. S for various classes of traffic in an easy yet effective manner No modifications to existing protocols and applications and is totally transparent to the end users The Chameleon is also adaptive and reacts seamlessly to changes in network bandwidth. It will strive to satisfy all statistical Qo. S contracts n Applicable not only to voice, but other multimedia traffic as well. Expertise in traffic generation and analysis: n Poisson - telnet; Heavy-tail (Pareto) - web traffic; exponential on-off - voice

Acknowledgements A/P A. L. Ananda Mr. Lee Boon Peng TCP Trunk Project Group n

Acknowledgements A/P A. L. Ananda Mr. Lee Boon Peng TCP Trunk Project Group n n n Dr. Lillykutty Jacob Dr Winston Seah Khoon Guan Renjish Kumar Liu Yong Xiang Chan Lee Yeo Ann Kian

Questions?

Questions?