View
215
Download
0
Category
Preview:
Citation preview
1
Session 7.Packet Switching Networks
Dongsoo S. Kim (dskim@iupui.edu)Electrical and Computer EngineeringIndiana U. Purdue U. Indianapolis
7-1
p
OverviewGeneral Layer-3 (Network) ProtocolsPacket network topologyPacket network topologyIP networkATM networkDatagram and virtual circuitsRoutingShortest path algorithms
7-2
Shortest path algorithmsOptimal path algorithmsTraffic controlCongestion control
2
Network Protocol StackEnd
systemEnd
system
Upper Upper
Transportlayer
Networklayer
Transportlayer
Networklayer
Networklayer
Networklayer
Upperlayers
Upperlayers
Network device(switch, router)
Network device(switch, router)
7-3
Physicallayer
Physicallayer
Physicallayer
Physicallayer
Data Linklayer
Data Linklayer
DLlayer
DLlayer
Physicallayer
Physicallayer
DLlayer
DLlayer
Network Layer FunctionsTransport packet from sending to receiving hosts Network layer protocols in every host, routerTh i f iThree important functions:
Path determination: route taken by packets from source to destinationRouting algorithms
Central routing algorithmDistributive algorithm
Switching: move packets from router’s input to appropriate router outputSwitch architecture
Shared memory architecture/shared bus architecture
7-4
Shared memory architecture/shared bus architectureMultistage switch architecturesInput buffer vs. output buffer
Call setup: some network architectures require router call setup along path before data flows
SignalingAdmission control
3
Network service modelQuestion: What service model of the channel for
transporting packets from sender to receiver?p g p
Service modelGuaranteed bandwidth?Preservation of inter-packet timing (no jitter)?Loss-free delivery?In-order delivery?Congestion feedback to
??
7-5
Congestion feedback to sender?Cost? ? ?IP
Virtual CircuitsCircuitA source-to-destination path behaves much like telephone circuitcircuit
Performance-wiseNetwork actions along source-to-destination pathcall setup, teardown for each call before and after data flows
VirtualNo link is dedicated to the connection not as pure circuit switchingA channel may not dedicate to the connection not as TDM
Not a Datagram
7-6
Each packet carries VC identifier (not destination host OD)Every router on source-destination paths maintain state for each passing connectionLink, router resources (bandwidth, buffers) may be allocated to VC to get circuit-like performance
4
Virtual Circuits: Signaling Protocols
Used to setup, maintain teardown VCUsed in ATM frame-relay X 25Used in ATM, frame relay, X.25
3 Accept call4. Call connected
5. Data flow begins6. Receive data
NetworkTransport
Transport
7-7
1. Initiate call2. incoming call
3. Accept call
physicalData linkNetwork
physicalData linkNetwork
Datagram Networks: the Internet modelNo call setup at network layerRouters: no state about end-to-end connections
No network-level concept of connection
Packets typically routed using destination host IDPackets between same source-destination pair may take different paths
7-8
1. Send data 2. Receive data
physicalData linkNetworkTransport
physicalData linkNetworkTransport
5
Network Layer Service Models
TimingOrderLossBandwidth
Guarantees?ServiceModel
NetworkArchitecture
YesYesYesGuaranteedRate
VBR
YesYesYesConstantRate
CBRATM
NoNoNoNoneBest EffortInternet
TimingOrderLossBandwidth
7-9
NoYesNoNone UBR
NoYesNoGuaranteed minimum
ABR
Datagram or VC network: why?
InternetData exchange among computers
ATMDesigned for integration (B ISDN)elastic service
no strict timing requirement Intelligent end-systems (computers)
Can adapt, perform control, error recoverySimple inside network, complexity at edge
(B-ISDN)Telephony
strict timing, reliability requirementsneed for guaranteed service
Stream ServiceDelay is OKVariance of delay is critical
Data communiction
7-10
complexity at edgeMany link types
Different characteristicsUniform service difficult
Bursty Need bandwidth as much as possible, but not always
Complication of network device
6
What Are They?
Application
Network
Transport
or below
IPwares AAL
7-11
Physical
Data LinkATM
Ether
DSL
Network Topology
XX ∩Internet
Gateway or Border Routerserver switches
X X
XX ∩
router
High speedbackboneDistributive
servers AutonomousSystem
7-12
hub
Departmentserver
7
IP RouterGeneral computer system with two or more IP interfacesinterfacesEach IP packet contains the destination addressThe IP router decides the next router with the dest address
No previous knowledge on the dest addressNo touch on the IP packet (with a little exception?)
Routing table
7-13
Routing tableList of destination address and port numberTable lookup for each packet, and forward to the port number
Virtual Circuit SwitchingEstablish a connection (fixed path) before communication
Set parameters in the switches along the pathBandwidthLoss rateDelay and delay variants
A physical link can be shared by multiple connectionsAdmission control - whether allow the establishment or not based on the available resources in the network
All packets for a connection follow the same path
7-14
Each packet contains a VCI but not a full destination addressThe overhead caused by the full source and destination address Table lookup with the VCI to find the next-hop port and VCIThe VCI in the packet is translated to the next VCI
8
VC Switching - Illustration
Node 1A
BVCNdVCNd
OutgoingIncomingNode 3
1 8Node 1A
5A331A23335A231A
VCNdVCNdOutgoingIncoming
2332VCNdVCNd
OutgoingIncoming
314424162176162444317621
738B135B5B138B73
VCNdVCNdOutgoingIncoming
Node 4
Node 62
7
5
4
3
7-15C
D
6C34346C
VCNdVCNdOutgoingIncoming 4355
322355432332
542D2D54
VCNdVCNdOutgoingIncoming
Node 2 Node 5
2
5
Routing - OverviewFind the best path. But, what is the best?
Shortest path - minimum number of hopsMinimum end-to-end delayMaximum available bandwidth
ClassificationStatic or Dynamic (Adaptive)
Static routing - pre-assigned path, manually configured routing tableGood for small and fixed network topologyDisadvantage for network failure
Dynamic (adaptive) routing - each router learns the network topology by exchanging information with its neighbors
7-16
exchanging information with its neighborsComplication in each router
Centralized or Distributed routingCentralized routing - a central computer calculates all possible paths and dictates routers in the network
Flood of routing informationDistributed routing - each router calculates paths with available information
Inconsistency, loop
9
Principle of OptimalityPrinciple
If a node b is on the optimal path from node a to node c,th th ti l th f b t l f ll th ththen the optimal path from b to c also falls the same path
ExpansionSink-tree
a b c
optimal
Then, optimal
7-17
Hierarchical RoutingSize of routing table
US telephone - 10 billion entriesUS telephone 10 billion entriesIP - 32 bit address (4 billion entries)IPv6 - 128 bit address (256x1036 entries)
Common prefixProcess only the prefix if they are not in my network
7-18
317 - 274 - 4493
Area code
Central office identifier
Port # in CO
10
Distance Vector RoutingDistributed Bellman-Ford algorithmVariations
Original ARPANET routing algorithmInternet RIPNovell’s IPXAppleTalk and Cisco routers
Structure of Routing Table F
A
E
B
C
DRoute Info
Delay NextHopE, 3C, 4A, 8To
8
4
3
7-19
530488
E2326FE02314E
3047
591216
-9DC12CC5BA0A 3
Distance Vector Routing - continuedHOWTO
Metric - Number of hops Time delay or something elseMetric Number of hops, Time delay, or something elseEach router know the metrics to the next routerEach router sends its table to each neighbor router periodicallyEach router receives the table of each neighbor and updates its routing table
Question: What if a link fails?Hey baby, don’t worry.
C
BA D
7-20
y y, yReally?Counting-to-infinity
Question: Where is the bandwidth consideration?
E
11
Link State RoutingDijkstra’s algorithm for finding the shortest pathEnhancingEnhancing
Measure the delay or other cost as bandwidthPropagate a new information quickly
ExampleOSPF
7-21
Flooding Forward an incoming packet to all ports except the one the packet was received fromApplication
When no routing table is availableFor broadcasting
ProblemsSwamp the network. Packets are multiplicated exponentiallyCirculating packets
SolutionUse TTL fields
7-22
Use TTL fieldsEach router adds an ID to each packet. If the router sees the packet again, then discard it.Each router records an packet ID before flooding. It the router sees the packet again, then discard it.
12
Hot potato routingDeflecting routingHowtoHowto
In normal situation, a router forwards packets to a default portIf the default port is busy or congested, forward any other port
ProblemsOut-of order deliveryNo path via the alternative port
Advantage
7-23
AdvantageVery simple. No routing table is requiredNo buffer required
Source routingHowto
A source host knows the complete route to the destinationA source host knows the complete route to the destinationEach packet contains the route information in the headerEach route strips off the label indicating the node and forwards the packet to the next node
CharacteristicsIn-order guaranteedOverhead of packets
7-24
pOverhead in the source host
13
Optimal routing Based on the queuing modelDelay or cost on a link between node i and j = DDelay or cost on a link between node i and j = Dij
Minimize the total cost
FFC
FFCDT ij
ijij
ij +−
== ∑∑subject to
),(
Minimize
βα
7-25
CFF≤
and t,requiremen thesatisfying flowdity multicommo a is j
Useful for network planning
ATM NetworksPrinciples
Connection-oriented packet switching (virtual circuit switching)Integration voice data multimediaIntegration - voice, data, multimedia Statistical multiplexingShort fixed-length packets (cells): 53 bytes
5 bytes ATM header and 48 bytes Payload Why 48 bytes?
Asynchronous – no global clock pulse or no synchronous frameSwitched Virtual Circuit (SVC)
Connection-establishing on demand by ATM signalingPermanent Virtual Path, Circuit, or Channel (PVP, PVC)
Man all set p the connection fo leased lines
7-26
Manually set up the connection for leased linesTraffic Descriptor and Quality-of-Service
Peak cell rateLong-term average cell rateMaximum length of bursty cellsCell delay and cell loss rateCell delay jitter
14
Virtual Path and Virtual ChannelHierarchical switching to release the load in switches
A physical link contains 4096 (or 256) VPC’s (VPI)A VPC contains 65536 VCC’s (VCI)A VPC contains 65536 VCC’s (VCI)
VP segments
ATMSW ATM
SW
ATMDCC
ATMSW
ATMSW
b
a a
VP Segment of a
7-27VP Segment of b
ATMDCC
ATMSW
b
b
b
ATM SW can do either VP or VC switching,but ATM DCC does VP switching only
Traffic Management and QOSProvide quality-of-service to individual packet thru the series of switches or routersWhat to Provide
End-to-end delaySum of individual delays
Jitter experience Variation of packet delayDifference of minimum delay and maximum delay
Packet loss rate
The link doesn’t have a control, but the node does.
7-28
Caused by faults in equipments, or traffic congestion
Bandwidth
15
QueuesFIFO Queue
A single common buffergThe order of arrival is the order of departureEqual opportunity to every packet – no control of QOSFairness? – a low-volume traffic vs. a high-volume traffic
Priority QueueA separate buffer to each priority classTransmit packets in a class if all higher queues are emptyFairness in a priority class?
7-29
Fairness in a priority class?
Packetdistributor
Fist class queue
Economy class queue
When high-priority queue empty
Fair QueueTo provide equal opportunity to access to transmission bandwidth
Each user has its own logical queueIdeally, the network bandwidth is divided equally among the queuesPractically, it is impossible to divide the bandwidth equally
Fluid-flow system:both packets served at rate 1/2
Packet-by-packet system:queue 1 served first at rate 1;then queue 2 served at rate 1.Packet from
queue 2 waiting
7-30
1
t1 2
Both packetscomplete serviceat t=2
0
1
t1 2
Packet from queue 2being served
Packet fromqueue 1 beingserved
queue 2 waiting
0
16
Approximation of Fair QueueDifficulties
Large frame sizeLarge frame sizeVariable frame size
ApproximationWhen a packet arrives at a user queue, the ideal completion time is derived and this number is used as a finish tagAfter completing a packet transmission, pick the next packet to be transmitted with the smallest finish tag
7-31
Fair Queue, GeneralizationPacket flow 1
Packet flo 2
Approximated bit-levelround robin service
The actual duration of a given round is proportional to the actual number of buffers (nA).Let R(t) is the number of rounds at time t then
C bits/second
Transmission link
Packet flow 2
Packet flow n
Let R(t) is the number of rounds at time t, then
where C is the capacity
)()(
tnC
dttdR
A=
17
Computing Finishing TagNotation:
F(i k t) = finish time of kth packet that arrives at time t to flowF(i,k,t) = finish time of kth packet that arrives at time t to flow i . P(i,k,t) = size of kth packet that arrives at time t to flow i. R(t) = round number at time t
Fair Queueing:F(i,k,t) = max{F(i,k-1,t), R(t)} + P(i,k,t)
W i ht d F i Q iWeighted Fair Queueing:F(i,k,t) = max{F(i,k-1,t), R(t)} + P(i,k,t)/wi
Buffer 1at t=0
Buffer 2at t=0
1
Fluid-flow system:both packets served at rate 1/2
Packet from buffer 2 served at rate 1
2
2t
30
1
Packet-by-packet fair queueing:buffer 2 served at rate
Packet from buffer 2 waiting. Finish tag for buffer 2 is 2.
1
t1 2
1Packet from buffer 1 served at rate 1.Finish tag for buffer 1 is 1.
0 3
18
Weighted Fair Queueing
Buffer 1 at t=0, weight is 1
Fluid-flow system:packet from buffer 1
Packet-by-packet weighted fair queueing:buffer 2 served first at rate 1;
weight is 1
Buffer 2 at t=0,Weight is 3 1
t1 2
packet from buffer 1served at rate 1/4;
Packet from buffer 1 served at rate 1Packet from buffer 2
served at rate 3/4 0
Packet frombuffer 1 waiting buffer 2 served first at rate 1;
then buffer 1 served at rate 11
t1 2
Packet from buffer 1 served at rate 1
Packet frombuffer 2 served at rate 1
buffer 1 waiting
0
Congestion ControlToo many packets try to access the same link (buffer)
The buffer builds up and eventually becomes fullp yPacket lossRetransmission will make it worse
StrategiesOpen-loop control
Prevent congestion from occurring by making sure that the traffic flow generated by the source will not degrade the performance of the network below the specified QoS
7-36
Admission controlClosed-loop control
React to congestion when it is already happening or is about to happen by regulating the traffic flowFeedback information
19
Open-Loop ControlsRegulate the traffic flow. Once it is accepted, its traffic flow will not overload the networkStrategies
Admission controlSpecify QoS parameters (or traffic descriptor) before establishing a connection as peak rate, average rate, maximum burst size, maximum delay, loss probability, and delay varianceConnection AC (CAC) systems should know the traffic flow of each source
PolicingOnce a connection is accepted the system must monitors the traffic flow
7-37
Once a connection is accepted, the system must monitors the traffic flow to check whether it violates the initial contract or notLeaky bucket algorithm
Traffic ShapingReform a traffic flow to another flow
Leaky BucketCharacteristics
Irregular incoming packetWater poured
Constant rate outgoing packetThe overflowed packet is discarded
Capacity of the bucketDepends on the traffic patternSmoothed traffic needs small bucketBursty traffic requires a large bucket
Leaky bucket
Water pouredirregularly
7-38
Drain rateBandwidth allocation to the specific connection
Water drains ata constant rate
20
Leaky Bucket AlgorithmArrival of a packet at time ta I = nomial inter-arrival time
L+I = size of the bucketX’ = X - (ta - LCT)
X’ = 0
Nonconformingpacket
Yes
NoYes
X’ < 0?
X’ > L?
L+I = size of the bucket
The bucket will drain at a continuous rate of 1 unit per packet time, if it is not empty.
7-39
X = X’ + ILCT = ta
conforming packet
p
X = value of the leaky bucket counterX’ = auxiliary variableLCT = last conformance time
No
Behavior of Leaky Bucket
Packetarrival
Nonconforming
I
L+I
Bucketcontent
Time
arrival
7-40
I
Time* * * * * * * **
21
Dual Leaky BucketPolice the sustainable rate as well as the peak rate
Tagged or dropped
Untagged traffic
Incomingtraffic Leaky bucket 1
PCR and CDVT
7-41
Untagged traffic
Leaky bucket 2SCR and MBS
Tagged or dropped
PCR: Peak Cell RateCDVT: Cell Delay Variation ToleranceSCR: Sustainable Cell RateMBS: Medium Burst Size
Traffic ShapingFor smoothing abrupt traffic flow Many possible waysy p y
Eg) application periodically generate 10 Kbit data every second 10 Kbps
Time0 1 2 3(a)
i
50 Kbps(b)
7-42
Time0 1 2 3
Time0 1 2 3
100 Kbps
(c)
22
Leaky Bucket Traffic ShaperDifference in implementation
Leaky bucket policing – countersLeaky bucket policing countersLeaky bucket traffic shaper - buffer
Incoming traffic Shaped traffic
Size N
7-43
Packet
Token Bucket Traffic ShaperToo restricted leaky bucket traffic shaper (constant output rate)Flexibility for variable-rate traffic Tokens arrivey
Size K
Tokens arriveperiodically
Token
7-44
Incoming traffic
Shaped trafficSize N
Server
Packet
23
Closed-Loop ControlUse of feedback informationTCP congestion controlTCP congestion control
Implicit feedback – timeout
ATM congestion controlExplicit feedback – OAM message
7-45
TCP Congestion ControlA sender maintains the “congestion window”The maximum amount of data that the sender can transmit is the minimum of an advertised window and the congestion windowDynamically adjust the congestion windows
Congestion15
20Congestionavoidance
Congestion occurs
7-46
Congestionwindow
10
5
0Round-trip times
Slowstart
Threshold
Recommended