1 emerging internet technologies harish sethu department of electrical and computer engineering...
DESCRIPTION
3 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 switchingTRANSCRIPT
1
Emerging Internet Emerging Internet TechnologiesTechnologies
Harish SethuHarish SethuDepartment of Electrical and Computer Department of Electrical and Computer
EngineeringEngineeringDrexel UniversityDrexel University
2
Introduction and HistoryIntroduction and History
More rapid growth than any medium in More rapid growth than any medium in historyhistory
New applications in education, business and New applications in education, business and medicine medicine
Impact on entertainment, politics and the Impact on entertainment, politics and the day-to-day lives of peopleday-to-day lives of people
Internet still very young, and rapidly Internet still very young, and rapidly evolving.evolving.
3
Introduction and History Introduction and History (Cont’d)(Cont’d)
The OriginThe Origin
Began as ARPANET in 1969 for the purpose of sharing Began as ARPANET in 1969 for the purpose of sharing computing resourcescomputing resources
ARPANET was funded by the Department of DefenseARPANET was funded by the Department of Defense Met with resistance even by university research groups Met with resistance even by university research groups
who did not wish to be linked to the ARPANETwho did not wish to be linked to the ARPANET Used packet switching as opposed to circuit switchingUsed packet switching as opposed to circuit switching
4
Introduction and History Introduction and History (Cont’d)(Cont’d)
Circuit SwitchingCircuit Switching
5
Introduction and History Introduction and History (Cont’d)(Cont’d)
Circuit SwitchingCircuit Switching
Physical connection established between Physical connection established between communicating end-points.communicating end-points.
Requires setting up the connection before Requires setting up the connection before communicationcommunication
Guaranteed bandwidthGuaranteed bandwidth Predictable and bounded delayPredictable and bounded delay
6
Introduction and History Introduction and History (Cont’d)(Cont’d)
Packet SwitchingPacket Switching
No physical connection established between No physical connection established between communicating end-points.communicating end-points.
Data is sent in blocks called packetsData is sent in blocks called packets Each packet is routed independentlyEach packet is routed independently
7
Introduction and History Introduction and History (Cont’d)(Cont’d)
Packet SwitchingPacket Switching
Packet 1Packet 2
8
Introduction and History Introduction and History (Cont’d)(Cont’d)
Packet Switching vs. Circuit SwitchingPacket Switching vs. Circuit Switching
Packets may arrive out-of-orderPackets may arrive out-of-order Packets may be dropped, since network does not Packets may be dropped, since network does not
guarantee bandwidthguarantee bandwidth Packet switching analogous to how we share road Packet switching analogous to how we share road
spacespace
9
Introduction and History Introduction and History (Cont’d)(Cont’d)
The origins of packet switchingThe origins of packet switching
The roles of Leonard Kleinrock, Paul Baran and The roles of Leonard Kleinrock, Paul Baran and Donald DaviesDonald Davies
BBN’s proposal to use packet switching for BBN’s proposal to use packet switching for ARPANETARPANET
The travails of packet switchingThe travails of packet switching
10
Introduction and History Introduction and History (Cont’d)(Cont’d)
MilestonesMilestones
EthernetEthernet TCP/IPTCP/IP E-mailE-mail Commercialization of the InternetCommercialization of the Internet World Wide WebWorld Wide Web
11
Introduction and History Introduction and History (Cont’d)(Cont’d)
Internet OrganizationsInternet Organizations
The Internet SocietyThe Internet Society The Internet Architecture BoardThe Internet Architecture Board The Internet Engineering Task ForceThe Internet Engineering Task Force The Internet Engineering Steering GroupThe Internet Engineering Steering Group ICANNICANN
12
Protocol LayeringProtocol Layering
What is a protocol?What is a protocol? What is protocol layering?What is protocol layering? The analogy to postal service.The analogy to postal service. Why use protocol layering?Why use protocol layering?
Simplicity in designSimplicity in design Flexibility in accommodating new technologiesFlexibility in accommodating new technologies Compatibility of applications to systemsCompatibility of applications to systems
13
Protocol Layering (Cont’d)Protocol Layering (Cont’d)
A common implementationA common implementation
Application Layer
Transport Layer
Network Layer
Access Layer
Physical Layer
Application Layer
Transport Layer
Network Layer
Access Layer
Physical Layer
Application protocol, e.g., HTTP
Transport protocol, e.g., TCP
Network protocol, e.g., IP
Network access protocol, e.g., Ethernet
Physical medium, e.g. copper
System 1 System 2
Application Layer
Transport Layer
Network Layer
Access Layer
Physical Layer
Application Layer
Transport Layer
Network Layer
Access Layer
Physical Layer
14
Switches and RoutersSwitches and Routers
What is a switch and what is a router?What is a switch and what is a router? The problem with achieving performanceThe problem with achieving performance The need for buffersThe need for buffers
0
1
0
1
0
1
0
1
Before After
Packet headed to output 0Packet headed to output 1
0
1
0
1
0
1
0
1
Before After
(a)
(b)
15
Switches and Routers Switches and Routers (Cont’d)(Cont’d)
Input queueing and output queueingInput queueing and output queueing
16
Switches and Routers Switches and Routers (Cont’d)(Cont’d)
Head-of-line blocking with input queueingHead-of-line blocking with input queueing
Packet headed to output 0
Packet headed to output 1
0
1
End of Cycle 1
0
1
End of Cycle 2
0
1
0
1
17
Switches and Routers Switches and Routers (Cont’d)(Cont’d)
Output queueing and head-of-line blockingOutput queueing and head-of-line blocking
0
1
End of Cycle 2
0
1
0
1
End of Cycle 1
0
1
Packet headed to output 0
Packet headed to output 1
18
Switches and Routers Switches and Routers (Cont’d)(Cont’d)
Commercial switches and routersCommercial switches and routers
Use both input and output queueingUse both input and output queueing Use shared buffer for output queueingUse shared buffer for output queueing Use complex buffer organizations and queue Use complex buffer organizations and queue
management strategiesmanagement strategies
19
Virtual Circuit SwitchingVirtual Circuit Switching
Establishes a virtual circuitEstablishes a virtual circuit Routes using a virtual circuit identifier on Routes using a virtual circuit identifier on
each packeteach packet Packets with same identifier routed Packets with same identifier routed
identically by a switchidentically by a switch Facilitates easy management of flows of Facilitates easy management of flows of
traffictraffic
20
Virtual Circuit Switching Virtual Circuit Switching (Cont’d)(Cont’d)
Asynchronous Transfer Mode (ATM)Asynchronous Transfer Mode (ATM)
Uses virtual circuitsUses virtual circuits Proposed for providing performance guarantees as Proposed for providing performance guarantees as
in circuit switching using the packet switching in circuit switching using the packet switching technologytechnology
Largely used today in the Internet backboneLargely used today in the Internet backbone
21
RoutingRouting
What is routing?What is routing? What is a route table?What is a route table? What is a “best” route?What is a “best” route?
22
Routing (Cont’d)Routing (Cont’d)
Link State RoutingLink State Routing
Periodically measure cost to each neighborPeriodically measure cost to each neighbor Distribute measurements to all routers in the Distribute measurements to all routers in the
networknetwork Each router has complete and current information Each router has complete and current information
on the topologyon the topology Each router independently computes the “best” pathEach router independently computes the “best” path
23
Routing (Cont’d)Routing (Cont’d)
Distance-Vector RoutingDistance-Vector Routing
Each router maintains a distance-vector, the cost to Each router maintains a distance-vector, the cost to reach each destination from itself.reach each destination from itself.
Exchanges distance-vectors with neighborsExchanges distance-vectors with neighbors Determines the “best” path neighbor to reach Determines the “best” path neighbor to reach
destinationdestination
24
Routing (Cont’d)Routing (Cont’d)
Routing in the InternetRouting in the Internet
Distance-vector routing used in the Internet core Distance-vector routing used in the Internet core (BGP)(BGP)
Link-state routing used within domains (OSPF)Link-state routing used within domains (OSPF) Border routers use bothBorder routers use both
25
Flow Control and Congestion Flow Control and Congestion AvoidanceAvoidance
What is flow control?What is flow control? What is congestion avoidance?What is congestion avoidance? Design goals: Design goals:
responsivenessresponsiveness performanceperformance scalabilityscalability simplicitysimplicity fairnessfairness
26
Flow Control and Congestion Flow Control and Congestion Avoidance (Cont’d)Avoidance (Cont’d)
Flow control strategiesFlow control strategies
Open loop flow controlOpen loop flow control No feedbackNo feedback Pre-arranged self-regulation at the sourcePre-arranged self-regulation at the source
Closed loop flow controlClosed loop flow control Self-regulation based on feedbackSelf-regulation based on feedback
27
Flow Control and Congestion Flow Control and Congestion Avoidance (Cont’d)Avoidance (Cont’d)
Open loop flow controlOpen loop flow control
Traffic descriptorsTraffic descriptors Token bucket regulatorToken bucket regulator
token generationtoken generation bucket capacitybucket capacity
28
Flow Control and Congestion Flow Control and Congestion Avoidance (Cont’d)Avoidance (Cont’d)
Token bucket regulatorToken bucket regulator
Before
Network Network
After
Packets
Tokens
TokenBucket
29
Flow Control and Congestion Flow Control and Congestion Avoidance (Cont’d)Avoidance (Cont’d)
Closed loop flow controlClosed loop flow control
TCP uses closed loop flow controlTCP uses closed loop flow control slow-start phase in TCP (exponential rate increase)slow-start phase in TCP (exponential rate increase) congestion-avoidance phase in TCP (linear rate congestion-avoidance phase in TCP (linear rate
increase)increase) time-outs and back-offtime-outs and back-off
30
Flow Control and Congestion Flow Control and Congestion Avoidance (Cont’d)Avoidance (Cont’d)
A typical saw-tooth graph of TCP sending rateA typical saw-tooth graph of TCP sending rate
Time
Threshold
Time-out occursdue to congestion
Exponential increase
LinearIncrease
TCP
Send
ing
rate
New threshold
31
Flow Control and Congestion Flow Control and Congestion Avoidance (Cont’d)Avoidance (Cont’d)
Problems with TCPProblems with TCP
Does not avoid congestion, reacts only after Does not avoid congestion, reacts only after congestion congestion
Assumes time-outs are always due to congestionAssumes time-outs are always due to congestion Always keeps pushing the network into congestionAlways keeps pushing the network into congestion
32
Flow Control and Congestion Flow Control and Congestion Avoidance (Cont’d)Avoidance (Cont’d)
Random Early Detection (RED)Random Early Detection (RED)
Defines router actions designed to work with TCPDefines router actions designed to work with TCP Goal is congestion avoidance, at good performanceGoal is congestion avoidance, at good performance Detects impending congestion based on queue lengthDetects impending congestion based on queue length Drops packets before congestion occursDrops packets before congestion occurs Triggers TCP to cut down its rate before it causes Triggers TCP to cut down its rate before it causes
congestioncongestion Used in most Internet routers todayUsed in most Internet routers today
33
Emerging Architectures and Emerging Architectures and ServicesServices
Onslaught of multimedia trafficOnslaught of multimedia traffic Need for service beyond best effortNeed for service beyond best effort What is Quality of Service?What is Quality of Service?
throughput guaranteethroughput guarantee delay bound delay bound delay-jitter bounddelay-jitter bound
34
Fairness in Traffic ManagementFairness in Traffic Management
The most basic guarantee: fairness.The most basic guarantee: fairness. Why not just first-come-first-serve?Why not just first-come-first-serve? Why not just packet-by-packet round-robin Why not just packet-by-packet round-robin
scheduling?scheduling?
35
Fairness in Traffic Fairness in Traffic Management (Cont’d)Management (Cont’d)
What is fair and how to be fair?What is fair and how to be fair?
All flows with unsatisfied demands should get an equal All flows with unsatisfied demands should get an equal share of the resourceshare of the resource
No flow should be allocated more resources than its No flow should be allocated more resources than its demanddemand
Fair queueing is a technique that achieves the above two Fair queueing is a technique that achieves the above two conditions for fairness to a satisfactory extent.conditions for fairness to a satisfactory extent.
Most Internet routers now implement some version of a Most Internet routers now implement some version of a fair queueing discipline.fair queueing discipline.
36
The Integrated Services The Integrated Services ModelModel
A new architectural framework to facilitate QoS in A new architectural framework to facilitate QoS in the Internet.the Internet.
Applications describe their traffic to the network, Applications describe their traffic to the network, and their demand for QoSand their demand for QoS
Network decides if the demand can be satisfied Network decides if the demand can be satisfied before admitting the application trafficbefore admitting the application traffic
Routers reserve bandwidths and buffers necessary to Routers reserve bandwidths and buffers necessary to satisfy demandsatisfy demand
37
The Integrated Services The Integrated Services Model (Cont’d)Model (Cont’d)
Flow specificationsFlow specificationsTSpecTSpec
burst sizeburst size long-term average ratelong-term average rate maximum packet sizemaximum packet size peak ratepeak rate
RSpecRSpec service rateservice rate delay bounddelay bound packet loss probabilitypacket loss probability
38
The Integrated Services The Integrated Services Model (Cont’d)Model (Cont’d)
Service ClassesService Classes Guaranteed serviceGuaranteed service
Provides hard guaranteesProvides hard guarantees Requires per-flow management in the routersRequires per-flow management in the routers Suffers from scalability problemsSuffers from scalability problems
Controlled Load ServiceControlled Load Service Service similar to best-effort in a lightly loaded networkService similar to best-effort in a lightly loaded network Meant for applications that can tolerate some loss or delayMeant for applications that can tolerate some loss or delay Requires application to specify traffic descriptionRequires application to specify traffic description Network decides whether or not to admit a new flow for controlled Network decides whether or not to admit a new flow for controlled
load serviceload service
39
The Integrated Services The Integrated Services Model (Cont’d)Model (Cont’d)
Signaling (RSVP)Signaling (RSVP)
RSVP is an IP signaling protocolRSVP is an IP signaling protocol Uses two messages: Path and ResvUses two messages: Path and Resv Path messages go from the sender to the receiver, Path messages go from the sender to the receiver,
containing traffic descriptioncontaining traffic description Resv messages go from receiver to the sender, Resv messages go from receiver to the sender,
containing QoS requirementscontaining QoS requirements
40
The Integrated Services The Integrated Services Model (Cont’d)Model (Cont’d)
Flow of Path and Resv messagesFlow of Path and Resv messages
Sender
Receiver 1
Receiver 3
Path
Path
Path
Path
Path
Path
Path
Path Resv
Resv
Resv
Resv
ResvResv
Resv
Resv
41
The Integrated Services The Integrated Services Model (Cont’d)Model (Cont’d)
Multicasting with RSVPMulticasting with RSVP
RSVP explicitly designed for multicastRSVP explicitly designed for multicast Multicast method based on data replication in the Multicast method based on data replication in the
networknetwork Allows merging of Resv requestsAllows merging of Resv requests RSVP is a soft-state protocolRSVP is a soft-state protocol
42
The Differentiated Services The Differentiated Services ModelModel
Differentiated Serevices model is more scalable.Differentiated Serevices model is more scalable. Traffic is divided into classesTraffic is divided into classes Resources allocated on a per-class basis instead of a Resources allocated on a per-class basis instead of a
per-flow basisper-flow basis Defines a set of Per-Hop Behaviors (PHBs)Defines a set of Per-Hop Behaviors (PHBs) Service by the network based on the PHB carried in Service by the network based on the PHB carried in
the packetthe packet Standard PHBsStandard PHBs
Expedited ForwardingExpedited Forwarding Assured ForwardingAssured Forwarding
43
The Differentiated Services The Differentiated Services Model (Cont’d)Model (Cont’d)
Expedited Forwarding (EF-PHB)Expedited Forwarding (EF-PHB)
A request to forward the packet as quickly as A request to forward the packet as quickly as possiblepossible
Meant for applications with stringent delay Meant for applications with stringent delay requirementsrequirements
Requires strict regulation at sourceRequires strict regulation at source Requires careful capacity planningRequires careful capacity planning
44
The Differentiated Services The Differentiated Services Model (Cont’d)Model (Cont’d)
Assured Forwarding (AF-PHB)Assured Forwarding (AF-PHB)
Delivers with high assurance (a weaker guarantee)Delivers with high assurance (a weaker guarantee) Consists of 4 classes and 3 drop precedence levelsConsists of 4 classes and 3 drop precedence levels In-order delivery within each classIn-order delivery within each class Drop precedence defined at the source endDrop precedence defined at the source end
45
The Differentiated Services The Differentiated Services Model (Cont’d)Model (Cont’d)
A potential DiffServ scenarioA potential DiffServ scenario
Internet backbone network
Hosts
Drexel University DS Domain
Border router
Hosts
Service Level Agreement madeon aggregated rate
ISP router
46
Multi-Protocol Label Multi-Protocol Label SwitchingSwitching
Uses the concept similar to that of virtual circuits in IPUses the concept similar to that of virtual circuits in IP Uses fixed-size labelsUses fixed-size labels Originally designed to facilitate sending IP packets over ATMOriginally designed to facilitate sending IP packets over ATM Packets are routed based on the label, instead of destination Packets are routed based on the label, instead of destination
address.address. Supported by high-end routers todaySupported by high-end routers today Achieves lower header overheadAchieves lower header overhead
47
Multi-Protocol Label Multi-Protocol Label Switching (Cont’d)Switching (Cont’d)
Achieves separation of control and forwarding Achieves separation of control and forwarding components:components:
Routing Protocols
Routing Tables
Updates to/from other routers
Updates to/from other routers
Forwarding Tables
Forwarding Fabric
Packets with labels
Packets with labels
Control Component
Forwarding Component
48
Multi-Protocol Label Multi-Protocol Label Switching (Cont’d)Switching (Cont’d)
A limitation of traditional routing:A limitation of traditional routing:
1
2
3
4
5
6
B
AA & B A & B
Point ofCongestion
49
Multi-Protocol Label Multi-Protocol Label Switching (Cont’d)Switching (Cont’d)
MPLS extends routing functionality:MPLS extends routing functionality:
1
2
3
4
5
6
B
A A A
BB
50
Concluding RemarksConcluding Remarks
Internet is still evolving, and very rapidly.Internet is still evolving, and very rapidly. Service requirements of applications may Service requirements of applications may
change; new solutions such as active change; new solutions such as active networking are emerging.networking are emerging.
Engineering the Internet continues to be both Engineering the Internet continues to be both challenging and rewarding.challenging and rewarding.