Service Provided by Airlines

Download Report

Transcript Service Provided by Airlines

Where Does Circuit
Switching Make Sense In
the Internet?
Pablo Molinero-Fernández
High Performance Networking Group
Stanford University
Outline
• Motivation
• Packet switching
– Description and myths
• Circuit switching
– Where it can be useful
• Research: TCPSwitch
– Goals, architecture and QoS
• Conclusion
How We Think the Internet
Is
How the Internet Really Is
$41Bn
$12Bn
IP routers
SONET/SDH
Market Size in 2003: Data from RHK
What Dictates Internet’s
Performance
Processing power
Link speed
Fast Links, Slow Routers
Processing Power
Link Speed (Fiber)
10000
1000
1000
100
100
10
10
1
1
1985
1990
1995
2000
1985
1990
1995
2000
0,1
Source: SPEC95Int; Prof. Miller, Stanford Univ., 2000
0,1
Fiber Capacity (Gbit/s)
Spec95Int CPU results
10000
Fast Links, Slow Routers
Processing Power
Link Speed (Fiber)
1000
10000
2x / 2 years
1000
2x / 7 months
100
100
10
10
1
1
1985
1990
1995
2000
1985
1990
1995
2000
0,1
0,1
Fiber optics
DWDM
Source: SPEC95Int; Prof. Miller, Stanford Univ., 2000
Fiber Capacity (Gbit/s)
Spec95Int CPU results
10000
Can We Build All Optical
Routers?
• Packet switches require
buffering
• We cannot buffer light
We need
other
techniques
Why was Internet PacketSwitched in the First Place?
• Gallager:
– “Circuit switching is rarely used for data
networks, ... because of very inefficient
use of the links”
• Tanenbaum:
– ”For high reliability, ... [the Internet]
was to be a datagram subnet, so if some
lines and [routers] were destroyed,
messages could be ... rerouted”
Statistical Multiplexing
A
A
C
B
A+B
B
2x
1.7x
How Was Internet Used in
the 70s and 80s?
• Applics: email, news, ftp,
telnet
• Peer-to-peer network
• Long lasting and bursty
flows (telnet, large ftp’s)
• Interactive applications
(telnet) could consume
pkts as they arrived
Many things
have
changed
since then
How Is It Different Today?
• Client-server population
• Traffic dominated by short http flows
– Average: 5 s, 10 pkts
• TCP flows
– Connection setup: dominated by RTT
– Burst of data: dominated by data rate
• Nature of user expectations has changed
– telnet: each pkt was useful
– Web: only useful when all pkts have arrived
How the Internet Was Used
Then
T0
Host A
R1
R2
R3
Host B
T1
How the Internet Is Used
Today
Tresponse
Client A
R1
R2
R3
Server B
How Current Internet
Works
Servers
Internet
Clients
An Example
1 server
100 clients
1 Mbps
File = 1Mbit
Circuit sw Packet sw
Bandwidth
1 Mbps
Average latency
50 sec
Worst case latency 100 sec
10 Kbps
100 sec
100 sec
Paradox:
99% of
Circuits
Finish
Earlier
Myths about BW Efficiency
• Most networks lightly
utilized on average
– Backbone links: 10-15%
– Private lines: 3-5%
– Ethernet links: extremely
low
BW
efficiency
not needed
• Links are not congested
Source: A. Odlyzko and K. Coffman, AT&T Research
Myths about Robustness
• Link/router failure is rare
– 0.5% reroute prob. of TCP flow
• Rerouting circuits is not hard
(if there aren’t too many!)
– 50 ms reroute delay for
SONET
– vs. over 30 s for OSPF and BGP
– Current products can reroute
1,000’s of STS-1 circuits
Robustness
can also be
achieved
with circuits
If we were to start again
with what we know today,
could we use circuit
switching?
This Is Where We Are
IP routers
SONET/SDH
Where We Can Go From
Here
• Big routers replace circuit switches
PS
• MPLS replaces circuit switches
Circuit and packet switching
coexist, as today
CS
•MP[lambda]S replaces TDM circuit
switches
•Pure circuit switched Internet,
All Packet Switched
Network Is Unlikely
Decision making
frequency
(for OC-192)
Packet
Per-packet
switching
(32 ns)
Circuit
Per-connection
switching
(50 μs)
Complexity
(for OC-192)
# pkts (~10,000)
[#conn (~100,000)]
# connections
(~100,000)
All Circuit Switched
Network Is Unlikely
• Hard to change all end hosts
• Hard to change mentality of OS and
application developers
• Too much investment in packet
switched LANs
Circuits Make Sense in the
Core
• Where:
– electronics cannot keep up with
link speeds
– performance is more important
than price
• Broad Picture Is Unlikely to
Change
• However, provisioning of
circuits is primitive
Let’s see
how we
could
change the
circuit
switches
What Other People Are
Proposing
• Burst switching
– Mega packets or mini circuits with
explicit tear-down
• Automatic monitoring of traffic
– Queues, utilization, …
• Both cases need new provisioning
protocol
We Want to Propose a
Different Approach
TCPSwitch
• Expose circuits to IP
• Optimize for the common
case
– TCP (90-95% of traffic)
– Data (9 out of every 10
pkts)
TCPSwitch
•
•
•
•
Objectives
Architecture
QoS
Results
– Simulation
– Implementation
Objectives of TCPSwitch
• Ability to interoperate with:
– Normal IP routers
– Unmodified end-hosts
• Optics and off-the-shelf switches
• QoS and best-effort
TCPSwitch Exposes Circuit
Switching to IP
IP routers
TCPSwitches
TCP “Creates” a Connection
Source
Router
Router
Router
Destination
SYN
SYN+ACK
DATA
Packets
Permanent Circuits
Packets
Let TCP Leave State Behind
Source
Ingress
TCP-SW
Core
TCP-SW
Egress
TCP-SW
Destination
SYN
ACCEPTED
ACCEPTED
SYN+ACK
DATA
Packets
Circuits
Packets
Complexity of Switches
• Ingress:
– Like a packet-sw’ed router
– Admission control
– Outgoing port creates circuits
• Core:
– Regular TDM/Optical switch
• Egress:
– Like core, but with packet reassembly
Design Issues
• Layer-4 lookup
– Exact match
• Path rerouting
– SYN-packet not seen
– Hard state vs. soft state
Design Issues (2)
• Admission control
– Priority+BW request
– blocking prob. vs dropping prob.
• Circuit establishment/tear-down
– In-band vs out-of-band
• Minimum granularity
Simplifies QoS
• In PS:
– Very complex schemes for isolation, jitter and
reserved BW
• In CS:
– dedicated BW
– Jitter and isolation fall naturally
• Can mix premium customers (QoS) as well
as best-effort in a single network
Simulation Results
• In ns-2
• Paradox verified using TCP and http traffic
– Avg response: 50% and 90% improvement, for
some blocking prob (0%-3%)
– Some TCP inefficiencies noticeable with very
short flows
• Work in progress
Implementation Results
• Ingress TCPSwitch
• Linux 2.4 router using netfilter (iptables)
and iproute2
• Module in user space for proof of concept
– Big penalty for crossing kernel-user boundary
– Data switching: similar performance as a router
with a classifier (e.g. policer)
• Now being ported into kernel
Conclusion
• Circuit switching is already there
• CS makes sense in the core:
– Electronics can keep up with link speed
• Use of Internet fits well with CS
• TCPSwitch
– Exposes circuits to IP
– Optimized for TCP and data