Multimedia Networks - 5 - QoS and Traffic Engineering
Multimedia Networks - 5 - QoS and Traffic Engineering
Multimedia Networks - 5 - QoS and Traffic Engineering
• Goals
– Improve network service perceived by
applications
– Give control the network administrator over
network resource usage
• If there were infinite network resources,
QoS would not be necessary:
– but - there are congestion points
– QoS is about deciding what traffic gets access to
resources at these points
4
QoS Enabled Internet Structure
Chapter 5 outline
• 5.1 Introduction
• 5.2 Queuing Architectures
• 5.3 QoS: DiffServ, IntServ
• 5.4 MPLS
Queueing architectures
• The basic function of a switching element is
the queuing of packages.
• Depending on the physical location of the
queues, you can define three strategies of
queuing:
– Inlet
– Outlet
– Central
Inlet Queuing
Inlet queue
Logic
N N
Inlet Queue
Switching device
Outlet Queuing
Outlet Queue
N N
1 1
2 2
. .
. .
. .
N N
Central
Queuing Switching Device (II)
Switching Device (I)
Performance
S
S C
S
C S C
S
C
Performance
Central Queuing
Stamps Certificates
S C
C
Server
S
Queue length vs. load for
PLR = 10-3
Packet queue
20 - length Inlet
18 - Outlet
16 -
14 -
12 -
10 -
8-
Central
6-
4-
2- Load(%)
0 | | | | | | | | | |
10 20 30 40 50 60 70 80 90 100
Chapter 5 outline
• 5.1 Introduction
• 5.2 Queuing Architectures
• 5.3 QoS: DiffServ, IntServ
• 5.4 MPLS
Motivation
• Internet currently provides only single class of
“best-effort” service.
– No admission control and no assurances about delivery
• Existing applications are elastic.
– Tolerate delays and losses
– Can adapt to congestion
• “Real-time” applications are inelastic.
• Should we modify these applications to be more
adaptive or should we modify the Internet to
support inelastic behavior?
Application Types
• Elastic applications.
– Wide range of acceptable rates, although faster is better
– E.g., data transfers such as FTP
• Continuous media applications.
– Lower and upper limit on acceptable performance
– Sometimes called “tolerant real-time” since they can
adapt to the performance of the network
• E.g., changing frame rate of video stream
• “Network-aware” applications
• Hard real-time applications.
– Require hard limits on performance – “intolerant real-
time”
– E.g., control applications
Summary
IETF Intserv
• Guaranteed service
– Use token bucket filter to characterize traffic
• Described by rate r and bucket depth b
– Use WFQ at the routers
– Parekh’s bound for worst case queuing delay =
b/r
Call Admission
• Call Admission: routers will admit calls based on
their R-spec and T-spec and based on the current
resource allocated at the routers to other calls.
Differentiated Services
• Intended to address the following difficulties with
Intserv and RSVP:
– Scalability: maintaining per-router state in high speed
networks is unfeasible due to the very large number of
flows
– Flexible Service Models: Intserv has only two classes,
need for providing more qualitative service classes; need
for providing ‘relative’ service distinction (Platinum, Gold,
Silver, RT,…)
– Simpler signaling: (than RSVP) many applications and
users may only want to specify a more qualitative notion
of service
Diffserv - Motivation
• Fine-grained enforcement only at the edge of the
network.
– Typically lower speed links at edges
– E.g., mail sorting in post office
• Label packets with a field.
– E.g., a priority stamp
• The core of the network uses only the type field
for QoS management.
– Small number of types with well defined forwarding
behavior
– Can be handled fast
• Example: expedited service versus best effort
Diffserv - Discussion
• Diffserv defines an architecture and a set of
forwarding behaviors.
– It is up to the service providers to define and implement
end-to-end services on top of this architecture.
– Offers a more flexible service model; different providers
can offer different service.
• One of the main motivations for Diffserv is
scalability.
– Keep the core of the network simple.
• Diffserv is about supporting QoS for flow
aggregates.
– Although architecture does not asseses more fine-grained
guarantees.
Edge Router/Host Functions
• Classification: marks
packets according to
classification rules to
be specified.
• Metering: checks
whether the traffic is
compliant with the
negotiated profile.
• Marking: marks traffic
that is compliant with
the profile.
• Conditioning: delays
and then forwards,
discards, or remarks
other traffic.
Classification and Conditioning
• Advantage:
No state info to be maintained by routers!
Forwarding (PHB)
41
Queuing Disciplines
• Shapers:
– Exceeding traffic is queued and dequeued
according to conforming rate
– Traffic bursts are smoothed
– Shaping modifies original traffic characteristics:
• Possible delay increment
– Non suitable for RT and multimedia traffic
– Shaping is only applicable to outbound traffic
44
Traffic Shaping and Policing
45
Chapter 5 outline
• 5.1 Introduction
• 5.2 Queuing Architectures
• 5.3 QoS: DiffServ, IntServ
• 5.4 MPLS
So what is MPLS ?
UDP-Hello
TCP-open
Initialization(s)
Label request
IP
#L2
Label mapping
Why MPLS ?
IP MPLS ATM
+IP
• MPLS + IP form a middle ground that combines the best of
IP and the best of circuit switching technologies.
• ATM and Frame Relay cannot easily come to the middle so
IP has!!
MPLS Terminology
MPLS IP IP
Header Header Payload
LSP
IP1 IP1
IP1 #L1 IP1 #L2 IP1 #L3
58
Label Switched Path (vanilla)
#14 #311
#216 #99 #311
#96 #311
#96
#14
#612 #462
#311
#5 #99
-Hop-by-hop
-A Vanilla LSP is actually part of a tree from every source
to that destination (unidirectional).
-Vanilla LDP builds that tree using existing IP forwarding
tables to route the control messages.
MPLS built on standard IP
Dest Out
47.1 1
Dest Out
47.2 2
47.1 1
47.3 3
47.2 2
1 47.1
47.3 3
1 3
2
Dest Out 3 2
47.1 1
47.2 2
47.3 3
47.3 1 47.2
3 2
1 47.1
47.3 3
1 IP 47.1.1.1
IP 47.1.1.1
Dest Out
47.1
47.2
1
2
3 2 2
47.3 3 IP 47.1.1.1
47.3 3 1 47.2
IP 47.1.1.1
2
MPLS Label Distribution
#14 C
A
#972
#462
66
MPLS Traffic Engineering
67
Label Encapsulation
IP | PAYLOAD
4 Octets
• Network layer must be inferable from value of bottom label of the stack
• TTL must be set to the value of the IP TTL field when packet is first labeled
• When last label is popped off stack, MPLS TTL to be copied to IP TTL field
• Pushing multiple labels may cause length of frame to exceed layer-2 MTU
- LSR must support “Max. IP Datagram Size for Labeling” parameter
- any unlabelled datagram greater in size than this parameter is to be fragmented