QoS - Rudra Dutta
Download
Report
Transcript QoS - Rudra Dutta
Quality of Service
CSC/ECE 573, Section 001
Fall, 2012
Outline
Expectations from the Internet changing
Network mechanisms must change to meet
Network architectural issues
Approaches – Integrated Services,
Differentiated Services
Copyright Rudra Dutta, NCSU, Fall, 2012
2
Performance and QoS
Performance – what we want out of our networks
–
–
QoS
–
–
Defined by metrics
Usually “more the better” flavor
Defined level of some performance metric or combination of
metrics
Some form of guarantee, expressed as a contract
Metrics
–
–
–
–
Delay
Throughput
Loss
Variability
Copyright Rudra Dutta, NCSU, Fall, 2012
3
Challenges for the Internet
Performance challenges
–
–
–
–
QoS challenges
–
–
–
Delay, bandwidth, loss are problems
Loss recovery is based on retransmission
Routing is based on bandwidth conservation
Traffic load on network is variable
All of the above
Traffic streams cannot be identified inside the
network
Metrics are not integrated inside or outside network
Check network traffic loads at CAIDA site
Copyright Rudra Dutta, NCSU, Fall, 2012
4
QoS Elements
QoS descriptor
–
Traffic descriptor (traffic profile)
–
describes behavior of user's traffic at the entrance
of the network
Conformance test
–
describes QoS requested by user
specifies criteria to be applied to determine
whether traffic submitted by user complies with
traffic descriptor
Traffic contract
–
user agrees not to violate traffic descriptor,
network promises to deliver QoS
Copyright Rudra Dutta, NCSU, Fall, 2012
5
Traffic Descriptor
A set of parameters that describes the behavior
of a source
–
typically describes the source’s worst behavior, not
average behavior
Traffic descriptor is used by traffic regulators
–
Policer
–
rejects out-of-profile traffic, at network entrance only
Shaper
shapes output traffic to specified profile (by buffering)
at source, just before entrance to the network
also, at switches/routers inside the network
Copyright Rudra Dutta, NCSU, Fall, 2012
6
Traffic Descriptors (cont'd)
Peak rate = highest rate at which source can
ever generate data
–
trivial bound: speed of access link
Average rate = rate at which traffic will be
generated over a long interval
Linear bounded arrival process (LBAP)
–
bound on the # of bits transmitted in any interval of
length t is a linear function of t
B(t) * t +
–
–
: the long-term average rate allocated by network
to source
: longest “burst” that a source may send
Copyright Rudra Dutta, NCSU, Fall, 2012
7
LBAP Example
Copyright Rudra Dutta, NCSU, Fall, 2012
8
Leaky/Token Bucket Regulators
Incoming
Packets
• Allows bursts
• If no token when packet arrives
– policer: drop packet
– shaper: buffer packet
• What does it enforce?
Copyright Rudra Dutta, NCSU, Fall, 2012
9
Other Required/Desired Functions
Resource reservation
–
–
Admission control
–
–
–
link bandwidth
buffer space at switching nodes
determine which service requests to grant and which
to deny
based on traffic descriptor and QoS requirements
admitting new users must not unduly degrade quality
of existing users
Other signaling
–
–
–
feedback about network quality
application synchronization
“device” control
Copyright Rudra Dutta, NCSU, Fall, 2012
10
Network Mechanisms
•
QoS routing: unicast/multicast paths based on QoS
•
•
•
•
Need some form of flow switching
Policing: hold users to committed resources
Buffer management: allocate buffers to user flows
Packet scheduling: determine which packet to
transmit next
(Performance and fault management): monitor for
defects that affect performance
(Protection switching): protect traffic from failures by
switching to alternate path – fault tolerance
Copyright Rudra Dutta, NCSU, Fall, 2012
11
Router Buffer Management Strategies
Objectives
–
Protection: traffic behavior of one user should not
affect the service experienced by other users
–
Isolation
minimization of packet loss
Achieved by...
–
–
Buffer sharing
Active Queue Management (RED etc)
Copyright Rudra Dutta, NCSU, Fall, 2012
12
Protection – How to Achieve?
Main tradeoff: aggregation vs. service differentiation
Complete aggregation: all flows share a single queue
–
No aggregation: each flow assigned its own queue
–
–
no guarantees == best-effort
per-flow state information, expensive for backbone routers
per-flow guarantees == maximum QoS
Per-class aggregation: one queue per class of flows
–
–
class-based queueing, per-class state info, manageable
per-class guarantees == QoS classes
Copyright Rudra Dutta, NCSU, Fall, 2012
13
Protection (cont'd)
Copyright Rudra Dutta, NCSU, Fall, 2012
14
Buffer Sharing Strategies
Given: N flows and B buffers
–
–
Complete partitioning: each flow has access to
single buffer pool of size B/N
–
–
objective: to divide the B buffers among the N
queues
tradeoff: protection vs. probability of packet loss
full protection
high loss probability
Complete sharing: each flow has access to total
pool, of size B
–
–
no protection
low loss probability
Copyright Rudra Dutta, NCSU, Fall, 2012
15
Buffer Sharing Strategies (cont'd)
Sharing with minimum allocation
–
–
–
–
flow i given exclusive access to ai buffers
sum of the ai’s < B
remaining buffers shared among flows
effective in terms of protection, loss minimization
Copyright Rudra Dutta, NCSU, Fall, 2012
16
Packet Dropping for Best-Effort Traffic
Overloaded network
–
–
Packet-drop strategy: which packet to drop upon
overload?
–
losses from best-effort flows are inevitable
losses from guaranteed-service applications should be rare
should protect “well-behaved” flows from misbehaving ones
Drop-tail strategy: drop incoming packet if queue full
–
–
–
simple, but no protection
packet dropping of different users is synchronized
penalizes bursty flows
Copyright Rudra Dutta, NCSU, Fall, 2012
17
Random Early Detection Strategy
Provides congestion avoidance by controlling
the average queue length
–
–
–
average queue size should be kept low
fluctuations in queue size should be allowed to
accommodate bursty traffic and transient
congestion
Prevents router synchronization
Copyright Rudra Dutta, NCSU, Fall, 2012
18
RED Routers: Basic Operation
Router maintains...
–
–
If average queue length > threshold: drop
incoming packet with probability p
–
an exponential average of queue length
a threshold
prevents severe reaction to a moderate overload
condition
Probability that flow loses packets is
proportional to its sending rate
–
–
misbehaving sources more likely to lose packets
does not penalize bursty flows
Copyright Rudra Dutta, NCSU, Fall, 2012
19
Probability of dropping
RED Gateways (cont'd)
Copyright Rudra Dutta, NCSU, Fall, 2012
20
Link Scheduling Disciplines
Function: determine the order in which packets
are transmitted on a link
Objectives
–
–
“fair” sharing of bandwidth among best-effort
applications
performance bounds for guaranteed-service
applications
minimum bandwidth or rate
maximum delay guarantee
maximum delay jitter guarantee
Copyright Rudra Dutta, NCSU, Fall, 2012
21
Scheduling: Fundamental Choices
Work-conserving or non-work-conserving
discipline
2. Number of priority levels
3. Service order within level
1.
Copyright Rudra Dutta, NCSU, Fall, 2012
22
Work-conserving vs. Non-work-conserving
Work-conserving: link is never idle when there
are packets waiting for service
–
no bound on delay-jitter
Non-work-conserving: link may be idle even if it
has packets to serve (i.e., packets are delayed)
–
–
reason for delaying traffic: to reduce jitter
To enforce “share”
Or, can pre-empt
Copyright Rudra Dutta, NCSU, Fall, 2012
23
Logical View of Scheduler Subsystem
Copyright Rudra Dutta, NCSU, Fall, 2012
24
FIFO (First-in, First-out) Scheduling
Serve packets in the order in which they arrive
Most widely-implemented scheduler; benefits…
–
–
simple
minimal scheduling state
Problems
–
–
packets requiring low delay cannot skip to head of
queue
rewards “greediness”: flows receive service
(bandwidth) roughly in proportion to the rate at which
they send data
Copyright Rudra Dutta, NCSU, Fall, 2012
25
FIFO Example
Copyright Rudra Dutta, NCSU, Fall, 2012
26
Static (Strict) Priority Scheduler
Each flow is associated with one of K priority
levels
A packet from priority level k is served only if
there are no packets in levels k+1 and higher
Benefits
–
–
simple to implement
small amount of scheduling state for each priority
level
Problems
–
may result in “starvation” for lower-priority flows
Copyright Rudra Dutta, NCSU, Fall, 2012
27
Static Priority Example
Copyright Rudra Dutta, NCSU, Fall, 2012
28
Round-Robin Scheduling
During each round of service...
–
–
Benefits
–
–
consider each queue in a predefined order
transmit (serve) one packet from each non-empty
queue
simple
little scheduling state
Problems
–
can be unfair when packet size is variable
Copyright Rudra Dutta, NCSU, Fall, 2012
29
Round-Robin Example
Copyright Rudra Dutta, NCSU, Fall, 2012
30
Round-Robin Example
With variable length packets…
Copyright Rudra Dutta, NCSU, Fall, 2012
31
Weighted Round-Robin
Variant of round-robin which...
–
–
allocates different amount of bandwidth to different
classes
overcomes the unfairness problems of round-robin
Weight wk assigned to queue k
Whenever queue k is backlogged, it receives a
fraction k of the link bandwidth such that k
wk / (sum of the wi’s)
Copyright Rudra Dutta, NCSU, Fall, 2012
32
Weighted Round-Robin Example
Copyright Rudra Dutta, NCSU, Fall, 2012
33
Generalized Processor Scheduling
Ideal algorithm
Operation: bit-by-bit (possibly weighted) RoundRobin (ideally fluid)
Benefits
–
–
end-to-end delay bound for guaranteed-service
applications
fair allocation of bandwidth among best-effort flows
Problem: not implementable!
Copyright Rudra Dutta, NCSU, Fall, 2012
34
Weighted Fair Queueing
Designed to approximate GPS
–
–
simulates GPS "on the side", uses results to
determine the service order of packets
finish number: a packet's finishing time under GPS
WFQ serves packets in order of increasing
finish number
Benefits
–
similar properties to GPS
Problems
–
–
complex, finish number computation expensive
difficult to implement in hardware
Copyright Rudra Dutta, NCSU, Fall, 2012
35
Earliest Deadline First
At each router...
–
–
–
Benefits
–
–
–
–
traffic stream i associated with a local delay bound di
packet arriving at time t is stamped with deadline t+di
packets served in order of increasing deadlines
relatively simple to implement in hardware
can provide rate guarantees
end-to-end delay bound similar to that of WFQ
optimal for a single router
Problems
–
requires shaping at each router for end-to-end delay bound
rate-controlled EDF (RC-EDF)
Copyright Rudra Dutta, NCSU, Fall, 2012
36
Earliest Deadline First (cont'd)
Copyright Rudra Dutta, NCSU, Fall, 2012
37
Hierarchical Schedulers
Link sharing among traffic streams grouped
according to...
–
–
–
–
administration affiliation
traffic type
protocol type
etc…
Link share may also need to be further
subdivided based on application types
Copyright Rudra Dutta, NCSU, Fall, 2012
38
Hierarchical Schedulers (cont'd)
Copyright Rudra Dutta, NCSU, Fall, 2012
39
Hierarchical Schedulers (cont'd)
Copyright Rudra Dutta, NCSU, Fall, 2012
40
QoS Guarantees
Deterministic (100%) guarantees
–
–
–
Statistical (< 100%) guarantees
–
–
–
based on peak traffic rate
simple, predictable, conservative
Guaranteed Service (RFC 2212)
based on peak and mean traffic rates
complex, less predictable, higher utilization
Controlled Load Service
No guarantees
–
–
the network performance is what it is
Best Effort Service
Copyright Rudra Dutta, NCSU, Fall, 2012
41
The RSVP Protocol (RFC2205)
Purpose: announce / signal...
–
–
the sending application requirements to receivers
the receivers' resource requirements to the network
Senders announce their traffic characteristics
and requirements: PATH messages
Receivers initiate request for resources along
the path: RESV messages
Calculation of resource requirements or QoS is
not within RSVP scope!
Copyright Rudra Dutta, NCSU, Fall, 2012
42
RSVP (cont’d)
RSVP is unidirectional
–
reservations are established from sender to receiver
Runs directly over IP (unreliable)
RSVP is a hop-by-hop protocol
–
–
routers have to process the messages and possibly
modify their contents
requires the IP "router alert" option to be specified
Copyright Rudra Dutta, NCSU, Fall, 2012
43
Is that the Only Approach?
QoS: some levels of network service are better
than others
Intserv: QoS managed on a per-flow basis
–
–
–
per-flow state stored in all routers in the path
per-flow scheduling, policing, shaping
hop-by-hop reservations signaling overhead,
complexity
Copyright Rudra Dutta, NCSU, Fall, 2012
44
Another Approach: Airline Seating!
First-class, business-class, and coach-class
–
–
Coach class (best-effort) carries bulk of traffic
business/first-class: small amount of traffic, but quite
profitable
Differentiated services
–
–
not expected to comprise all traffic in the Internet
goal: healthy service offerings and profit opportunities
Copyright Rudra Dutta, NCSU, Fall, 2012
45
Another Approach: Carpool Lanes!
One lane reserved for exclusive use of HighOccupancy Vehicles (HOVs) during rush hour
–
outside rush hour, other vehicles may also use the
HOV lane
HOVs experience little congestion, less delay
Work Conservation law: total queueing delay
remains constant over all cars
improved
service for HOVs means worse service for
everyone else
Copyright Rudra Dutta, NCSU, Fall, 2012
46
DiffServ Goals
1.
Ease of use and generality
–
2.
but, limited flexibility
Simple processing in core routers
–
push complexity to network edge
Access
Networ
k
Access
Networ
k
R1
R3
Core Network
R2
Access
Networ
k
Copyright Rudra Dutta, NCSU, Fall, 2012
R4
Access
Networ
k
47
Architecture
Neither…
–
–
best-effort (connectionless) model
guaranteed service (connection-oriented) model
In-between: service guarantees for
aggregations of flows
–
implemented in the core network only
Architecture…
IntServ
DiffServ
Focus is on…
Users, applications
Network owners / administrators
Standardizes…
End-to-end service
Per-hop service (behavior)
Copyright Rudra Dutta, NCSU, Fall, 2012
48
Diffserv Codepoint (DSCP)
Field in the IP header specifying the class of
service the packet is to receive
–
replaces the previous (8-bit) TOS field
Copyright Rudra Dutta, NCSU, Fall, 2012
49
Per-Hop Behavior (PHB)
Behavior aggregate (BA) = a collection of flows
with the same Diffserv codepoint (DSCP) , and
sharing a link
Per-hop behavior (PHB) = the QoS (absolute or
relative) given to a BA
DSCP maps to a PHB
Protocol defined in terms of various PHBs
Copyright Rudra Dutta, NCSU, Fall, 2012
50
Traffic Conditioning
Edge routers
–
–
Classifies/remarks traffic (i.e., sets the DSCP)
Meters traffic in a BA
–
measures performance and arrival statistics
Polices (shapes, drops) traffic in a BA
Implements PHBs
–
–
–
–
Best Effort (none) and Class Selector
(compatibility)
Expedited Forwarding – absolute rate, other
qualitative
Virtual Wire – apparent channel
Assured Forwarding – high probability, not firm
Copyright Rudra Dutta, NCSU, Fall, 2012
51
Border Router Input Interface Profile Meters
Copyright Rudra Dutta, NCSU, Fall, 2012
52
Issues
Signaling for DiffServ: RSVP?? SNMP??
Greatest burden of flow matching and shaping will be
at access routers
–
State maintained for aggregations of flows, not
individual flows
–
–
the speeds and buffering required should be less than those
required deeper in the network
proper provisioning for DiffServ BAs is key to acceptable
performance
resource provisioning, admission control: difficult?
unknown?!
Organizational control – “Policy Decision Points”
–
Security
Copyright Rudra Dutta, NCSU, Fall, 2012
53
IP Address Lookup
Every forwarding engine needs to perform rule
matching
Remember: structure of rule:
<CIDR Prefix> <Next-hop i/f>
Requirement: match longest prefix
–
Requirement: prefix can be any length
–
In reality: rarely see prefix of prefix
In reality: rarely more than /24, many are /24
Requirement: complete matching at wire-speed
At 1 Gbps, 40 byte TCP ACK ?
– Memory access takes, say, 10 ns
– ???
–
Copyright Rudra Dutta, NCSU, Fall, 2012
54
Forwarding Table Size
Copyright Rudra Dutta, NCSU, Fall, 2012
http://www.routeviews.org
55
Reducing Lookup Time
Number of prefixes N can be very large
–
–
Even when the number of interfaces is fairly small
Maximum length W of prefix is fixed
Prefix
Label
Prefix
Prefix Meaning
P1
0
0*******************************
P2
00001
00001*
P3
001
001*
P4
1
1*
P5
1000
1000*
P6
1001
1001*
P7
1010
1010*
P8
1011
1011*
P9
111
111*
Copyright Rudra Dutta, NCSU, Fall, 2012
56
Trie as FIB Data Structure
Originally used for file searching or retrieval
Binary tries can be used for prefix lookup
More sophisticated tries possible
–
Requires adaptation for prefix lookup
Copyright Rudra Dutta, NCSU, Fall, 2012
57
Trie as FIB Data Structure
Left = ‘()’ Right = ‘1’
Prefix
Label
Prefix
P1
0
P2
00001
P3
001
P4
1
P5
1000
P6
1001
P7
1010
P8
1011
P9
111
k-bit prefix matches at level k
How to: Lookup? Insert? Delete?
Copyright Rudra Dutta, NCSU, Fall, 2012
58
Storing Lookup Information
Prefix
Label
Prefix
P1
P1
0
P2
00001
P3
001
P4
1
P5
1000
P6
1001
P7
1010
P8
1011
P9
111
Copyright Rudra Dutta, NCSU, Fall, 2012
P2
P3
P9
P5
P6
P7
P8
P2
59
Path Compression
Prefix
Label
Prefix
0*
P1
0
P2
00001
P3
001
P4
1
P5
1000
P6
1001
P7
1010
P8
1011
P9
111
00001*
001*
Eliminate all but “decision” nodes
Requires labeling surviving nodes
Copyright Rudra Dutta, NCSU, Fall, 2012
60
More Sophisticated Tries
Multibit tries
–
–
Prefix transformation
–
–
–
–
Transform prefixes so that only leaves match
No longer precisely corresponding to addresses
Content of node stores actual address
Fixed stride multibit trie
–
More than two way branch
More than one bit coded at each level
More fanout, less depth
Reduces constant lookup complexity
Hardware – RAM, TCAM
Tuple matching – hierarchical tries
Copyright Rudra Dutta, NCSU, Fall, 2012
61
Fixed-stride Multibit Trie
Prefix
Label
Prefix
P1
0
P2
00001
P3
001
P4
1
P5
1000
P6
1001
P7
1010
P8
1011
P9
111
Copyright Rudra Dutta, NCSU, Fall, 2012
62
MPLS
In QoS, we run up against the problem of introducing
complexity inside network
Routers have to forward each packet
–
Virtual circuits can help
–
–
Serve to reduce router load, as well as
QoS can be related to circuit/channel
Flows/circuits can be labeled
–
Can only do so much
Now switch labels, not packets
Conceptual predecessors – cut-through switching, IP
switching, tag switching, …
Copyright Rudra Dutta, NCSU, Fall, 2012
63
Conventional Packet Forwarding
As a packet travels in an IP network, each router...
–
–
–
analyzes the packet's header
consults the routing, or forwarding, table
chooses a next hop router for the packet
Packet headers contain many fields for varying
purposes
–
independently of any choices made for other packets
only some of them are used for routing purposes
Choosing the next hop involves two steps
–
partition the entire set of possible packets into forwarding
equivalence classes (FECs)
–
Corresponding to router rules, roughly
map each FEC to a next hop
Execute forwarding algorithm for each datagram
Copyright Rudra Dutta, NCSU, Fall, 2012
64
Forwarding Equivalence Classes
Example: two packets arrive at a router
–
–
packet with destination D1 and longest prefix
match X1
packet with destination D2 and longest prefix
match X2
If X1 = X2, the two packets are “in the same
FEC”
Each hop in turn reexamines packet and
assigns it to a FEC
Copyright Rudra Dutta, NCSU, Fall, 2012
65
Limitations of IP Forwarding
For forwarding purposes
–
–
Current forwarding scheme has limitations
–
–
different packets mapped to same FEC are indistinguishable
all packets in the same FEC from the same router must
follow the same path
uses only destination IP address from packet
doesn’t support QoS, traffic engineering, fast recovery from
failures, …
Hop-by-hop forwarding architecture has remained
unchanged since the very early days of the Internet
–
even though routing architecture has undergone many
changes
Copyright Rudra Dutta, NCSU, Fall, 2012
66
Traffic Engineering
“Fish Network” – example
Destination based routing cannot engineer
traffic
R2
R1
R3
Copyright Rudra Dutta, NCSU, Fall, 2012
67
Connection-Oriented Architectures
Ex.: ATM, Frame Relay, X.25
A logical connection must be set up before data is
exchanged
–
A flow is the sequence of datagrams exchanged over
a TCP or UDP connection
–
the state of the connection is maintained at each network
switch
multiple flows may be multiplexed into a single logical
connection
Connection-oriented architectures enable the type of
services that are not well-supported by conventional
IP datagram routing
What is “Label Substitution” ?
One of the many ways of getting from A to B:
• BROADCAST: Go everywhere, stop when you get to
B, never ask for directions.
• HOP BY HOP ROUTING: Continually ask who’s closer
to B go there, repeat … stop when you get to B.
“Going to B? You’d better go to X, its on the way”.
• SOURCE ROUTING: Ask for a list (that you carry with
you) of places to go that eventually lead you to B.
“Going to B? Go straight 5 blocks, take the next left, 6 more
blocks and take a right at the lights”.
Copyright Rudra Dutta, NCSU, Fall, 2012
69
Label Substitution
Have a friend go to B ahead of you using one of the
previous two techniques. At every road they reserve a
lane just for you. At every intersection they post a big sign
that says for a given lane which way to turn and what new
lane to take.
LANE#1 TURN RIGHT USE LANE#2
LANE#1
LANE#2
Copyright Rudra Dutta, NCSU, Fall, 2012
70
Connection Oriented Forwarding
A’s FIB
C’s FIB
E’s FIB
6
Copyright Rudra Dutta, NCSU, Fall, 2011
6
3
3
11
H1 sends request to A
A assigns label “1”, forwards
request to C
C assigns label “6”, forwards
request to E
E assigns label “3”, forwards
request to F
F accepts request, replies to
E with label “11”
E notes label, replies to C
with assigned label
C notes label, replies to A
with assigned label
A notes label, replies to H1
with assigned label
H1 sends packets with label
“1” to A on “virtual circuit”
71
MPLS Networks
A logical connection is established between two points in a pure
datagram network
–
MPLS adds an additional header, containing a label
–
connection carries normal datagram traffic
identifies the connection
A hybrid architecture (advantages of both?)
–
–
logical connections can be used for connection-oriented services
normal datagram processing (forwarding) still available for
datagram services
Copyright Rudra Dutta, NCSU, Fall, 2012
72
Where it Fits
Below the network layer
–
not an end-to-end protocol
IPv4
IPv6
IPX
Appletalk
Network
Layer
MPLS
ATM
Copyright Rudra Dutta, NCSU, Fall, 2012
Frame
Relay
Ethernet
PPP
FDDI…
Link Layer
73
MPLS Labels and Encapsulation
Insert in each packet a new header ("shim
header")
Link Layer
Header
MPLS
“Shim”
Header
IP
Header
Payload….
• A label = short, fixed length value
• used to identify the FEC
• Labels have local significance only
• adjacent routers must agree on the binding of label FEC
• does not have to be globally unique
• no meaning to the label; just an identifier
Copyright Rudra Dutta, NCSU, Fall, 2012
74
The MPLS Forwarding Table
Add a new table to router: the Label Switching
Forwarding Table
–
–
may be other info in this table, as well (e.g., quality of
service)
trivial to match a label in the table
Forwarding Table
Incoming
Label
Outgoing
Interface
Next Hop
Address
6
eth0
192.0.168.100
12
…
…
…
…
…
…
Copyright Rudra Dutta, NCSU, Fall, 2012
Outgoin
Other
g Label Requirements
75
Basic MPLS Idea
Look at the label to pick an outgoing interface
Then replace the incoming label with the
appropriate outgoing label
Routers that don’t support MPLS do normal
packet forwarding
--
6
------
--
12
------
Router
incoming
label
Copyright Rudra Dutta, NCSU, Fall, 2012
outgoing
label
76
MPLS Terminology
A label-switched router (LSR) can perform MPLS
label-switching
A label-switched path (LSP) is a consecutive
sequence of LSRs that forward a packet using MPLS
An ingress LSR is the first LSR on a LSP
–
–
–
determines FEC for packet from routing table
inserts a label (shim header) in front of the packet
at this point, the label is bound to the FEC at this router
An egress LSR is the last LSR on a LSP
–
responsible for removing the label from in front of the packet
Copyright Rudra Dutta, NCSU, Fall, 2012
77
Label-Switched Paths
Ra
Rd
Rb
Rc
Rf
Re
Can start and terminate in the middle of the network
Copyright Rudra Dutta, NCSU, Fall, 2012
78
Notes
Labels are an optimization
–
Assignment of a packet to an FEC is done only once, as
the packet enters the MPLS network
–
packets can be routed even if labels aren't set up at all, or are
set up on just parts of the path
subsequent hops do not need to examine the network layer
header
Important questions
–
–
–
on what basis are LSPs set up?
how are they set up, and how long do they last?
RSVP can be reused to request label setup: -TE extension
Copyright Rudra Dutta, NCSU, Fall, 2012
79
Standardizing
MPLS Working Group (within Sub-IP area)
Some RFCs
–
–
–
–
–
Multiprotocol Label Switching Architecture (RFC 3031)
Requirements for Traffic Engineering Over MPLS (RFC
2702)
LDP Specification (RFC 3036) (274855 bytes)
MPLS Loop Prevention Mechanism (RFC 3063)
Carrying Label Information in BGP-4 (RFC 3107)
Reinventing ATM (minus small packets)???
–
label-switched path = VC, label = VCI
Copyright Rudra Dutta, NCSU, Fall, 2012
80
Some Benefits / Applications of MPLS
1.
2.
3.
4.
5.
Traffic engineering
Route pinning
Virtual circuit emulation
Protection and fast rerouting
Hierarchical forwarding
Also: faster packet processing at routers (=
greater throughput)
Copyright Rudra Dutta, NCSU, Fall, 2012
81
GMPLS
GMPLS stands for “Generalized Multi-Protocol
Label Switching”
A previous version is “Multi-Protocol Lambda
Switching”
Developed from MPLS
A suite of protocols that provides common
control to packet, TDM, and wavelength
services.
Currently, in development by the IETF
Copyright Rudra Dutta, NCSU, Fall, 2012
82
Why GMPLS?
GMPLS is proposed as the signaling protocol for optical
networks
What do service providers want?
Carry a large volume of traffic in a cost-effective way
Turns out to be a challenge within current data network architecture
IP
ATM
SONET/SDH
DWDM
–
–
Transport/Protection
Capacity
Problems:
–
Carry applications and services
Traffic Engineering
Complexity in management of multiple layers
Inefficient bandwidth usage
Not scalable
Solutions: eliminate middle layers IP/WDM
Need a protocol to perform functions of middle layers
Copyright Rudra Dutta, NCSU, Fall, 2012
83
Why GMPLS? (Cont.)
Optical Architectures
UNI
UNI
Overlay Model
Peer Model
A control protocol support both overlay model and peer model
will bring big flexibility
–
The selection of architecture can be based on business decision
Copyright Rudra Dutta, NCSU, Fall, 2012
84
Why GMPLS? (Cont.)
What we need? A common control plane
–
–
–
–
Support multiple types of traffic (ATM, IP, SONET
and etc.)
Support both peer and overlay models
Support multi-vendors
Perform fast provisioning
Why MPLS is selected?
–
Provisioning and traffic engineering capability
Copyright Rudra Dutta, NCSU, Fall, 2012
85
GMPLS and MPLS
GMPLS is deployed from MPLS
–
Apply MPLS control plane techniques to optical
switches and IP routing algorithms to manage
lightpaths in an optical network
GMPLS made some modifications on MPLS
–
–
–
Separation of signaling and data channel
Support more types of control interface
Other enhancement
Copyright Rudra Dutta, NCSU, Fall, 2012
86
Control interfaces
Extend the MPLS to support more interfaces other than packet
switch
–
Packet Switch Capable (PSC)
Router/ATM Switch/Frame Reply Switch
–
Time Division Multiplexing Capable (TDMC)
–
Lambda Switch Capable (LSC)
–
SONET/SDH ADM/Digital Crossconnects
All Optical ADM or Optical Crossconnects (OXC)
Fiber-Switch Capable (FSC)
LSPs of different interfaces can be nested inside another
PSC
TDMC
LSC
FSC
TDMC
LSC
Copyright Rudra Dutta, NCSU, Fall, 2012
87
Challenges
Routing challenges
–
Limited number of labels
– Very large number of links
Link identification will be a big problem
Scalability of the Link state protocol
Port connection detection
Signaling challenges
–
Long label setup time
– Bi-directional LSPs setup
Management challenges
–
Failure detection
– Failure protection and restoration
Copyright Rudra Dutta, NCSU, Fall, 2012
88
Suggested label
Problem: it takes time for the optical switch to program switch
–
Solution:
–
Long setup time
Each LSR selects a label (Suggested Label) and signals this label to
downstream LSR, and start program its switch.
reduce LSP setup overhead
No suggested label
Request
Map Label = l1
Request
Map Label = l2
Program Switch l1 X l2
Copyright Rudra Dutta, NCSU, Fall, 2012
with suggested label
Program Switch l1 X l2
Suggested Label = l1
Suggested Label = l2
Reserved Label = l4
Reserved Label = l3
Make sure the programming
request has completed
89
Bi-Directional LSP setup
Problem: How to set up bi-directional LSP?
Solution:
–
Set up 2 uni-directional LSP
–
Signaling overhead
End points coordination
One single message exchange for one bi-directional
LSP
Upstream Label.
Suggested Label = l1
Upstream Label = la
Reserved Label = l4
Copyright Rudra Dutta, NCSU, Fall, 2012
Suggested Label = l2
Upstream Label = lb
l4
l3
la
lb
Reserved Label = l3
90
Link Management Protocol
Problem:
–
–
How to localize the precise location of a fault?
How to validate the connectivity between
adjacent nodes?
Solution: link management protocol
–
–
–
–
–
Control Channel Management
Link Connectivity Verification
Link Property Correlation
Fault Management
Authentication
Copyright Rudra Dutta, NCSU, Fall, 2012
91
GMPLS Summary
Provides a new way of managing network
resources and provisioning
Provide a common control plane for multiple
layers and multi-vendors
Fast and automatic service provisioning
Greater service intelligence and efficiency
Copyright Rudra Dutta, NCSU, Fall, 2012
92