Emerging Internet Technologies
Harish Sethu
Department of Electrical and Computer
Engineering
Drexel University
1
More rapid growth than any medium in history
New applications in education, business and medicine
Impact on entertainment, politics and the day-to-day lives of people
Internet still very young, and rapidly evolving.
2
Introduction and History (Cont’d)
The Origin
Began as ARPANET in 1969 for the purpose of sharing computing resources
ARPANET was funded by the Department of
Defense
Met with resistance even by university research groups who did not wish to be linked to the
ARPANET
Used packet switching as opposed to circuit switching
3
Introduction and History (Cont’d)
Circuit Switching
4
Introduction and History (Cont’d)
Circuit Switching
Physical connection established between communicating end-points.
Requires setting up the connection before communication
Guaranteed bandwidth
Predictable and bounded delay
5
Introduction and History (Cont’d)
Packet Switching
No physical connection established between communicating end-points.
Data is sent in blocks called packets
Each packet is routed independently
6
Introduction and History (Cont’d)
Packet Switching
Packet 1
Packet 2
7
Introduction and History (Cont’d)
Packet Switching vs. Circuit Switching
Packets may arrive out-of-order
Packets may be dropped, since network does not guarantee bandwidth
Packet switching analogous to how we share road space
8
Introduction and History (Cont’d)
The origins of packet switching
The roles of Leonard Kleinrock, Paul Baran and
Donald Davies
BBN’s proposal to use packet switching for
ARPANET
The travails of packet switching
9
Introduction and History (Cont’d)
Milestones
Ethernet
TCP/IP
Commercialization of the Internet
World Wide Web
10
Introduction and History (Cont’d)
Internet Organizations
The Internet Society
The Internet Architecture Board
The Internet Engineering Task Force
The Internet Engineering Steering Group
ICANN
11
Protocol Layering
What is a protocol?
What is protocol layering?
The analogy to postal service.
Why use protocol layering?
Simplicity in design
Flexibility in accommodating new technologies
Compatibility of applications to systems
12
Protocol Layering (Cont’d)
A common implementation
Application Layer
Application Layer
Transport Layer
Transport Layer
Network Layer
Network Layer
Access Layer
Access Layer
Physical Layer
Physical Layer
System 1
Application protocol, e.g., HTTP
Transport protocol, e.g., TCP
Network protocol, e.g., IP
Network access protocol, e.g., Ethernet
Application Layer
Application Layer
Transport Layer
Transport Layer
Physical medium, e.g. copper
Access Layer
Access Layer
Physical Layer
Physical Layer
System 2
13
Switches and Routers
What is a switch and what is a router?
The problem with achieving performance
The need for buffers
Packet headed to output 0
Packet headed to output 1
(a)
0
1
0
1
0
1
0
1
Before After
(b)
0
1
0
1
0
1
0
1
Before After
14
Switches and Routers (Cont’d)
Input queueing and output queueing
15
Switches and Routers (Cont’d)
0
1
Head-of-line blocking with input queueing
Packet headed to output 0
Packet headed to output 1
0
1 1
0
0
1
End of Cycle 2
End of Cycle 1
16
Switches and Routers (Cont’d)
0
1
Output queueing and head-of-line blocking
Packet headed to output 0
Packet headed to output 1
0
1
0
1
0
1
End of Cycle 2
End of Cycle 1
17
Switches and Routers (Cont’d)
Commercial switches and routers
Use both input and output queueing
Use shared buffer for output queueing
Use complex buffer organizations and queue management strategies
18
Virtual Circuit Switching
Establishes a virtual circuit
Routes using a virtual circuit identifier on each packet
Packets with same identifier routed identically by a switch
Facilitates easy management of flows of traffic
19
Virtual Circuit Switching (Cont’d)
Asynchronous Transfer Mode (ATM)
Uses virtual circuits
Proposed for providing performance guarantees as in circuit switching using the packet switching technology
Largely used today in the Internet backbone
20
Routing
What is routing?
What is a route table?
What is a “best” route?
21
Routing (Cont’d)
Link State Routing
Periodically measure cost to each neighbor
Distribute measurements to all routers in the network
Each router has complete and current information on the topology
Each router independently computes the “best” path
22
Routing (Cont’d)
Distance-Vector Routing
Each router maintains a distance-vector, the cost to reach each destination from itself.
Exchanges distance-vectors with neighbors
Determines the “best” path neighbor to reach destination
23
Routing (Cont’d)
Routing in the Internet
Distance-vector routing used in the Internet core
(BGP)
Link-state routing used within domains (OSPF)
Border routers use both
24
Flow Control and Congestion
Avoidance
What is flow control?
What is congestion avoidance?
Design goals:
responsiveness
performance
scalability
simplicity
fairness
25
Flow Control and Congestion
Avoidance (Cont’d)
Flow control strategies
Open loop flow control
No feedback
Pre-arranged self-regulation at the source
Closed loop flow control
Self-regulation based on feedback
26
Flow Control and Congestion
Avoidance (Cont’d)
Open loop flow control
Traffic descriptors
Token bucket regulator
token generation
bucket capacity
27
Flow Control and Congestion
Avoidance (Cont’d)
Token bucket regulator
Token
Bucket
Network
Before
Packets
Tokens
Network
After 28
Flow Control and Congestion
Avoidance (Cont’d)
Closed loop flow control
TCP uses closed loop flow control
slow-start phase in TCP (exponential rate increase)
congestion-avoidance phase in TCP (linear rate increase)
time-outs and back-off
29
Flow Control and Congestion
Avoidance (Cont’d)
A typical saw-tooth graph of TCP sending rate
Linear
Increase
Time-out occurs due to congestion
TCP
Send ing rate
Threshold
New threshold
Exponential increase
Time
30
Flow Control and Congestion
Avoidance (Cont’d)
Problems with TCP
Does not avoid congestion, reacts only after congestion
Assumes time-outs are always due to congestion
Always keeps pushing the network into congestion
31
Flow Control and Congestion
Avoidance (Cont’d)
Random Early Detection (RED)
Defines router actions designed to work with TCP
Goal is congestion avoidance, at good performance
Detects impending congestion based on queue length
Drops packets before congestion occurs
Triggers TCP to cut down its rate before it causes congestion
Used in most Internet routers today
32
Emerging Architectures and
Services
Onslaught of multimedia traffic
Need for service beyond best effort
What is Quality of Service?
throughput guarantee
delay bound
delay-jitter bound
33
Fairness in Traffic Management
The most basic guarantee: fairness.
Why not just first-come-first-serve?
Why not just packet-by-packet round-robin scheduling?
34
Fairness in Traffic Management
(Cont’d)
What is fair and how to be fair?
All flows with unsatisfied demands should get an equal share of the resource
No flow should be allocated more resources than its demand
Fair queueing is a technique that achieves the above two conditions for fairness to a satisfactory extent.
Most Internet routers now implement some version of a fair queueing discipline.
35
The Integrated Services Model
A new architectural framework to facilitate QoS in the Internet.
Applications describe their traffic to the network, and their demand for QoS
Network decides if the demand can be satisfied before admitting the application traffic
Routers reserve bandwidths and buffers necessary to satisfy demand
36
The Integrated Services Model
(Cont’d)
Flow specifications
TSpec
burst size
long-term average rate
maximum packet size
peak rate
RSpec
service rate
delay bound
packet loss probability
37
The Integrated Services Model
(Cont’d)
Service Classes
Guaranteed service
Provides hard guarantees
Requires per-flow management in the routers
Suffers from scalability problems
Controlled Load Service
Service similar to best-effort in a lightly loaded network
Meant for applications that can tolerate some loss or delay
Requires application to specify traffic description
Network decides whether or not to admit a new flow for controlled load service
38
The Integrated Services Model
(Cont’d)
Signaling (RSVP)
RSVP is an IP signaling protocol
Uses two messages: Path and Resv
Path messages go from the sender to the receiver, containing traffic description
Resv messages go from receiver to the sender, containing QoS requirements
39
The Integrated Services Model
(Cont’d)
Flow of Path and Resv messages
Path
Resv
Path
Resv
Receiver 1
Sender Path
Resv
Path
Resv
Resv
Path
Path
Resv
Path
Resv
Resv
Path
Receiver 3
40
The Integrated Services Model
(Cont’d)
Multicasting with RSVP
RSVP explicitly designed for multicast
Multicast method based on data replication in the network
Allows merging of Resv requests
RSVP is a soft-state protocol
41
The Differentiated Services Model
Differentiated Serevices model is more scalable.
Traffic is divided into classes
Resources allocated on a per-class basis instead of a per-flow basis
Defines a set of Per-Hop Behaviors (PHBs)
Service by the network based on the PHB carried in the packet
Standard PHBs
Expedited Forwarding
Assured Forwarding
42
The Differentiated Services Model
(Cont’d)
Expedited Forwarding (EF-PHB)
A request to forward the packet as quickly as possible
Meant for applications with stringent delay requirements
Requires strict regulation at source
Requires careful capacity planning
43
The Differentiated Services Model
(Cont’d)
Assured Forwarding (AF-PHB)
Delivers with high assurance (a weaker guarantee)
Consists of 4 classes and 3 drop precedence levels
In-order delivery within each class
Drop precedence defined at the source end
44
The Differentiated Services Model
(Cont’d)
A potential DiffServ scenario
Drexel University DS Domain
Hosts
Border router
ISP router
Internet backbone network
Hosts
Service Level
Agreement made on aggregated rate
45
Multi-Protocol Label Switching
Uses the concept similar to that of virtual circuits in IP
Uses fixed-size labels
Originally designed to facilitate sending IP packets over ATM
Packets are routed based on the label, instead of destination address.
Supported by high-end routers today
Achieves lower header overhead
46
Multi-Protocol Label Switching
(Cont’d)
Achieves separation of control and forwarding components:
Control Component
Updates to/from other routers
Routing
Protocols
Updates to/from other routers
Routing
Tables
Packets with labels
Forwarding
Tables
Forwarding
Fabric
Forwarding Component
Packets with labels
47
Multi-Protocol Label Switching
(Cont’d)
A limitation of traditional routing:
Point of
Congestion
1
A
4
A & B
A & B
3 6
B
2 5
48
Multi-Protocol Label Switching
(Cont’d)
MPLS extends routing functionality:
1 4
A
A A
3 6
B
B B
2 5
49
Concluding Remarks
Internet is still evolving, and very rapidly.
Service requirements of applications may change; new solutions such as active networking are emerging.
Engineering the Internet continues to be both challenging and rewarding.
50