Download COMP680E by M. Hamdi

Document related concepts

Piggybacking (Internet access) wikipedia , lookup

Internet protocol suite wikipedia , lookup

SIP extensions for the IP Multimedia Subsystem wikipedia , lookup

Peering wikipedia , lookup

Distributed firewall wikipedia , lookup

Computer network wikipedia , lookup

Network tap wikipedia , lookup

List of wireless community networks by region wikipedia , lookup

Airborne Networking wikipedia , lookup

IEEE 802.1aq wikipedia , lookup

RapidIO wikipedia , lookup

IEEE 1355 wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Net bias wikipedia , lookup

Cracking of wireless networks wikipedia , lookup

Wake-on-LAN wikipedia , lookup

Asynchronous Transfer Mode wikipedia , lookup

Packet switching wikipedia , lookup

Deep packet inspection wikipedia , lookup

Routing wikipedia , lookup

Routing in delay-tolerant networking wikipedia , lookup

Quality of service wikipedia , lookup

Multiprotocol Label Switching wikipedia , lookup

Transcript
QoS in the Internet –
Proposals and Prospects
COMP680E by M. Hamdi
1
Introduction
• For Many Years the Internet was primarily used for
networking research. File transfer and email were
the most popular applications: They do not need any
performance guarantee from the underlying
network.
• The current Internet cannot provide any resource
guarantees: the service is best effort
• New applications such as VoIP, video conferencing,
e-commerce apps are sensitive to network
performance (e.g., delay and bandwidth guarantees).
COMP680E by M. Hamdi
2
Current State of Internet
• The internet service did not change by much:
– Uses best-effort service model
– No guarantee of timeliness or delivery
– No service discrimination
– Bandwidth and network congestion problems
– Unpredictable network response time
COMP680E by M. Hamdi
3
What is QoS
• The capability to provide resource assurance and
service differentiation so that delay, jitter or loss
sensitive applications can perform satisfactorily is
referred to as quality of service (QoS).
• Can be provided through relative prioritization of
resource allocation to different flows/packets in
the network.
COMP680E by M. Hamdi
4
Resource Allocation
• Many problems in the Internet come down to the
issue of resource allocation.
• Packets get delayed or dropped because network
resource cannot meet the traffic demands.
• A network consists of shared resources :
bandwidth, buffers, serving traffic from competing
users.
• To support QoS, the network must allocate
resources and decide who should get how much
resources.
COMP680E by M. Hamdi
5
Integrated Services
• Based on per flow resource reservation.
• Applications must make a reservation before
transmitting traffic.
• Application characterizes its traffic and resource
requirement.
• Network uses routing protocol to find a path.
• A reservation protocol is used to install the
reservation state along that path.
COMP680E by M. Hamdi
6
Integrated Services (cont’d)
• At each hop admission control checks whether
sufficient resources are available to accept the new
reservation.
• Resource reservation enforced by packet classification
and scheduling mechanisms.
• Two service models are introduced: guaranteed
service and controlled load.
• Guaranteed service provides deterministic worst case
delay
• Controlled load provides less firm guarantee : it’s close
to a lightly loaded best-effort network.
COMP680E by M. Hamdi
7
Integrated Services (cont’d)
• Overhead of setting up reservation is high.
• Scalability problem : Backbone will have a large
number of flows and keeping flow information is
not feasible.
COMP680E by M. Hamdi
8
Differentiated Service
• Users traffic is divided into a small number of
forwarding classes.
• For each forwarding class, the amount of traffic that
users can inject is limited at the edge of the
network.
• Edge of a differentiated Services network
responsible for mapping packets to their appropriate
forwarding classes.
• Packet classification is usually based on service
level agreement.
COMP680E by M. Hamdi
9
Differentiated Service (Cont’d)
• Nodes at the edge of the network perform traffic
policing to ensure conformance.
• Non-conforming traffic may be dropped, delayed
or marked with a different forwarding class.
• Forwarding class is directly encoded into the
packet header.
• Interior nodes use this info. to differentiate the
treatment of packets.
• Does not require resource reservation.
COMP680E by M. Hamdi
10
Differentiated Service (Cont’d)
• Forwarding classes apply to traffic aggregates
rather than individual flows.
• No scalability problem.
COMP680E by M. Hamdi
11
Diffserv Architecture
• Ingress routers
– Police/shape traffic
– Set Differentiated Service Code Point (DSCP) in Diffserv (DS) field
• Core routers
– Implement Per Hop Behavior (PHB) for each DSCP
– Process packets based on DSCP
DS-2
DS-1
Ingress
Ingress
Egress
Edge router
Egress
Core router
COMP680E by M. Hamdi
12
Multiprotocol Label Switching (MPLS)
• A short fixed length label is encoded into the
packet header and is used for packet forwarding.
• When a label switch router (LSR) receives an
MPLS packet, it uses incoming label to find the
next hop and the corresponding outgoing label.
• In MPLS, the path a packet traverses is called
label switched path (LSP).
• Network protocol independent
COMP680E by M. Hamdi
13
Multiprotocol Label Switching (MPLS)
• Works alongside existing routing technologies and
provide a mechanism for explicit control over
routing paths.
• Used for traffic engineering, guaranteeing QoS
and VPN.
COMP680E by M. Hamdi
14
Traffic Engineering
• The basic problem : Given a network and traffic
demands, how can traffic flows in the network be
organized so that an optimization objective can be
optimized.
• Typically optimal operating point is reached when
traffic is evenly distributed : leads to min queuing
delay and packet loss.
• This cannot be achieved through destination based IP
routing
• Advanced routing techniques constraint-based
routing are used.
COMP680E by M. Hamdi
15
Traffic Engineering (cont’d)
• Routes are computed with multiple constraints and
aims for efficient resource utilization.
• Appropriate path selection with uniform traffic
distribution and the congestion avoidance
techniques improve the network performance
• MPLS can be used to achieve this goal.
COMP680E by M. Hamdi
16
Internet QoS Overview
•
•
•
•
Integrated services
Differentiated Services
MPLS
Traffic Engineering
COMP680E by M. Hamdi
17
State information
• No State Vs. Soft State Vs. Hard State
IP
No State
diffserv
No State inside the network
Flow information at the edges
Intserv/
RSVP
ATM
Circuit
Switched
Soft
State
Hard
State
Dedicated
Circuit
Packet Switched
COMP680E by M. Hamdi
18
Integrated Services
• Early 1990 IETF started Inegrated Services
working group to standardize a new resource
allocation architecture.
• Based on a per flow resource reservation.
• Goal is to preserve the datagram model of IPbased networks and at the same time support
resource reservation for real-time applications.
COMP680E by M. Hamdi
19
QoS Router
Queue management
Policer
Per-flow Queue
Scheduler
Classifier
Policer
Per-flow Queue
Policer
Per-flow Queue
Scheduler
Classifier
Policer
shaper
shaper
Per-flow Queue
COMP680E by M. Hamdi
20
Basic Approach
• A set of mechanisms and protocols is used for making
explicit resource reservation.
• To receive performance guarantee from the network,
resource reservation must be set up before the
application can start transmitting packets.
• Sender starts the setup of a reservation by sending
characteristics and resource requirement of the flow.
• The network can accept the new application flow only
if sufficient resource is there.
• Once reservation is setup successfully, the application
can start sending data packets.
COMP680E by M. Hamdi
21
Key Components
QoS routing agent
Admission control
Reservation setup agent
Resource reservation table
Control plane
Flow identification
Packet scheduler
Data plane
COMP680E by M. Hamdi
22
Key Component (cont’d)
• Control Plane sets up resource reservation.
• Data plane forwards data packets based on
reservation state.
• To setup reservation, app first characterizes its
traffic flow and specifies QoS requirements :
referred to as flow specification
• The reservation setup request is then sent to the
network.
COMP680E by M. Hamdi
23
Key Component (cont’d)
• Router upon getting the request, interacts with QoS routing
agent to find the next hop.
• It then coordinates with the admission control module to
determine if there are sufficient resources to meet the
requested resources.
• Once reservation set up is successful, the information for
the reserved flow is installed into the resource reservation
table.
• Info. in the resource reservation table is used to configure
the flow identification module and the packet scheduling
module in the data plane.
COMP680E by M. Hamdi
24
Route Selection
• IntServ does not specify any route selection of its
own.
• It relies on existing routing protocols to forward
its control packets further.
• Obviously a more efficient routing protocol which
can find a path that is likely to have sufficient
resources is desired.
COMP680E by M. Hamdi
25
Reservation Setup
• To setup reservation, a reservation set up protocol
is needed that goes hop by hop along the path to
install the reservation state in the routers.
• The reservation protocol must also deal with
changes in the network topology.
• In IntServ, RSVP has been developed as the
resource reservation protocol.
COMP680E by M. Hamdi
26
Admission Control
• In order to provide guaranteed resources for
reserved flows, a network must monitor its
resource usage and admit a new flow only if it has
sufficient resource.
• It has two functions : to determine if a new flow
reservation can be set up based on the admission
control policies and to monitor and measure the
available resources.
COMP680E by M. Hamdi
27
Flow Identification
• Router must examine every incoming packet and
decide whether the packet belongs to one of the
reserved flows.
• IP flow is identified by src addr, dest addr, proto
ID, src port, dst port : five-tuple.
• These five fields of the incoming packet is
compared against the five-tuple of all the flows in
the reservation table for flow identification.
COMP680E by M. Hamdi
28
Packet Scheduling
• Packet scheduler responsible for resource
allocation
• Directly affects delay, jitter and packet loss
• Primary task is to select a packet to transmit when
outgoing link is ready such that the QoS promised
to flows is provided
COMP680E by M. Hamdi
29
Service Models
• Describe interface between the network and its
users.
• IntServ has standardized two basic service models:
– Guaranteed service
– Controlled load service
COMP680E by M. Hamdi
30
Guaranteed Service
• Provides guaranteed bandwidth and strict bounds
for delay.
• Intended for apps that require highest assurance on
bw and delay : mission critical apps, intolerant
playback apps.
• Can be viewed as a virtual circuit with guaranteed
bw.
• Provides bounds on maximal queuing delay.
COMP680E by M. Hamdi
31
Controlled load service
• Strict bw assurance and delay bound comes at a price :
resources have to be reserved for the worst case.
• For some apps a service model with less strict guarantees
and lower cost would better serve their needs.
• End-to-end behavior somewhat vague.
• A very high percentage of packets will be successfully
delivered by the network to the receivers.
• The transit delay experienced by a very high percentage of
packets will not greatly exceed min delay.
COMP680E by M. Hamdi
32
RSVP
• A resource reservation protocol defined under
IntServ.
• Used by hosts to communicate service
requirements to the network and by routers in the
network to establish reservation state along a path
PATH
(1)
(6)
(2)
(5)
(3)
(4)
RESV
COMP680E by M. Hamdi
33
Protocol Overview (Cont’d)
• RESV must follow the exact same reverse path
upstream.
• They create reservation state in each node along
the paths
• After receiving RESV msg sender can start
sending data packets.
COMP680E by M. Hamdi
34
DiffServ
• Differentiated Services (DiffServ) is proposed by IETF as
a scalable QoS solution for the next generation Internet.
• Developed for relatively simple, coarse methods of
providing different levels of service for Internet traffic.
• Divides traffic into a small number of classes and allocates
resources on a per class basis.
• Core of a diffserv network distinguishes between small
number of forwarding classes rather than individual flows.
COMP680E by M. Hamdi
35
DiffServ (cont.)
• Complex per-flow classification and scheduling used in
intServ (causes scalability) not needed.
• Operates on a per-hop behavior (PHB) basis
• Classifies packets by marking the headers; Routers
discriminate packets based on their markings
• Packet marking is done on the basis of a service level
agreement (SLA) between the host and the ISP
• Provides service assurances but no QoS guarantee
COMP680E by M. Hamdi
36
Basic Approach
• Traffic is divided into a small number of groups
called forwarding classes
• Forwarding class that a packet belongs to is
encoded into a field in the IP packet header.
• Each forwarding class represents a predefined
forwarding treatment in terms of drop priority and
bandwidth allocation.
COMP680E by M. Hamdi
37
Basic Approach (cont.)
• Achieves scalability by implementing traffic classification
and conditioning functions at network boundary nodes
• Classification involves mapping packets to different
forwarding classes.
• Conditioning : checking whether traffic flows meet the
service agreement and dropping/remarking nonconformant packets.
• Interior nodes forward packets based solely on the
forwarding class.
COMP680E by M. Hamdi
38
Per Hop Behavior (PHB)
• Forwarding treatments at a node
• Each PHB is represented by a 6-bit value called DSCP
• All packets with the same code points are referred to as a
behavior aggregate (BA) and they receive the same
forwarding treatment.
• May describe forwarding behavior in either relative or
absolute terms
– Minimal bw for BA : absolute term
– Allocate bw proportionally : relative
• Typically implemented by means of buffer management
and packet scheduling.
COMP680E by M. Hamdi
39
Differentiated Services Field
• Uses 6 bits in the IP header to encode forwarding treatment
• These 6 bits are those out of the IP TOS field (8 bits long)
• DiffServ redefines existing IP TOS field to indicate
forwarding behavior
• Replacement field, called DS field supersedes existing
definition of TOS
• First 6 bits used as DSCP to encode the PHB, remaining 2
bits are currently unused (CU).
COMP680E by M. Hamdi
40
Differentiated Service (DS) Field
0
5 6 7
DS Field
0
4
Version HLen
8
16
TOS
Identification
TTL
19
31
Length
Flags
Fragment offset
Protocol
Header checksum
Source address
Destination address
IP
header
Data
• DS filed reuse the first 6 bits from the former
Type of Service (TOS) byte to determine the
PHB
COMP680E by M. Hamdi
41
Assured Forwarding (AF)
• The basic idea came from RIO scheme
• In RIO scheme packets are marked as in or out
• During congestion, out packets are dropped first :
in/out bit indicates drop priorities
• AF standard extended the basic in or out marking
in RIO into four forwarding classes and within
each forwarding class, three drop precedences
COMP680E by M. Hamdi
42
Assured Forwarding (AF) (cont.)
• Customers can subscribe to the service built with AF
forwarding class and their packets will be marked with
appropriate AF DSCPs.
• Drop priorities within each forwarding class are used to
select which packets to drop during congestion
• When backlogged packets from an AF forwarding class
exceed a specified threshold, packets with highest drop
priority is dropped first, then packets with lower drop
priority
COMP680E by M. Hamdi
43
Mechanism for assured service - summary
Host
First-hop
Marking packets
according to the service profile
Out- and in- dropper
RIO scheme, packets
are treated preferentially
COMP680E by M. Hamdi
44
Expedited Forwarding (EF)
• Proposed to characterize a forwarding treatment
similar to that of a simple priority queuing.
• Forwarding treatment of traffic aggregate must
equal or exceed a configurable rate
• Should receive this rate independent of load of
other traffic passing through the node
• Provides low delay and low loss service
COMP680E by M. Hamdi
45
EF implementation
• Several queuing mechanisms can be used to
implement EF PHB
– Priority queuing with token bucket
• Priority of EF traffic should be highest in the system
• Token bucket is used to limit the total amount of EF traffic so
that other traffic will not starve
– WFQ can be used such that weight assigned to EF
traffic has relative priority than other traffic
COMP680E by M. Hamdi
46
DiffServ – Summary
DiffServ Domain
Classification / Conditioning
PHB
LLQ/WRED
Premium Gold
Silver Bronze
COMP680E by M. Hamdi
47
Functionality at DiffServ Routers
COMP680E by M. Hamdi
48
Proportional QoS
Using a proportional QoS model, we not only
guarantee that a higher priority class receives
better service, but we also quantify the
differentiation between different classes:
COMP680E by M. Hamdi
49
Proportional Differentiation
• Definition
If qi is the QoS metric of interest, and si is the
differentiation factor for class i, we have:
qi si

qj sj
(i, j  1...N )
For example:
Given two classes 1 and 2, and the QoS metric is packet
loss rate, s1=1; s2=2, the packet loss rate of class 2
should be twice that of the loss rate of class 1.
COMP680E by M. Hamdi
50
Proportional Differentiation
• Pros
– Controllable
Differentiation level between service classes can
be controlled by network operator;
– Predictable
Performance of higher classes is consistently
better than the performance of lower Class even
in short time scale;
COMP680E by M. Hamdi
51
Proportionally differentiated packet delay
Waiting Time Priority (WTP) Scheduling
Class 0
One packet
need to be
scheduled
Class 1
Class N
On-line priority
measurement is
done
COMP680E by M. Hamdi
52
Proportionally differentiated packet delay
Waiting Time Priority (WTP) Scheduling
Class 0
Class 1
Class N
Class 1 has the
highest priority
COMP680E by M. Hamdi
53
Proportionally differentiated packet delay
• Wait Time Priority (WTP) Scheduling
– Suppose class i is backlogged at time t, and that wi(t) is
the head waiting time of class i at t;
– We have normalized head waiting time of class i at t as:
~ (t )  w (t ) / s
w
i
i
i
– When a packet need to be scheduled, a backlogged
class j is selected for
~ (t )
j  arg max w
i
iB ( t )
COMP680E by M. Hamdi
54
Performance
Proportional average packet delay:
COMP680E by M. Hamdi
55
Proportionally differentiated loss rate
• Buffer Management
On-line priority
measurement
is done
Class 0
Class 1
One packet
arrives
Class 2
Total buffer size 20
COMP680E by M. Hamdi
56
Proportionally differentiated loss rate
• Buffer Management
Class 0
Class 1
Class 0 has the
lowest priority
Class 2
Total buffer size 20
COMP680E by M. Hamdi
57
Proportionally differentiated loss rate
• Proportional Loss Rate (PLR) dropper
– Suppose there are two counters for each class i, counter
ai records packet arrival history of class i, counter di
records packet drop history of class i;
– We have normalized packet loss rate of class i as:
~
li  di /( ai si )
– When a packet needs to be dropped, a backlogged class j
is selected for
~
j  arg min li (t )
iB ( t )
COMP680E by M. Hamdi
58
Performance
Proportional packet loss rate:
COMP680E by M. Hamdi
59
Architecture I
Parameters
Timer
Counter sets
Update
Resetting
counterwhen
counter
Packet
condition is
arrival
fulfilled
CPU
Dropper
Drop one
packet
COMP680E by M. Hamdi
Waiting time
recorder
Scheduler
Schedule a
packet60
MPLS
COMP680E by M. Hamdi
61
Why MPLS?
• MPLS stands for: “Multi-Protocol Label Switching”
• Goals:
– Bring the speed of layer 2 switching to layer 3
• May no longer be perceived as the main benefit: Layer 3 switches
– Resolve the problems of IP over ATM, in particular:
• Complexity of control and management
• Scalability issues
– Support multiple layer 2 technologies
COMP680E by M. Hamdi
62
Basic Idea
• MPLS is a hybrid model adopted by IETF to incorporate
best properties in both packet routing & circuit switching
IP Router
Control:
MPLS
Control:
IP Router
Software
IP Router
Software
Forwarding:
Forwarding:
Longest-match
Lookup
Label Swapping
COMP680E by M. Hamdi
ATM Switch
Control:
ATM Forum
Software
Forwarding:
Label Swapping
63
Basic Idea (Cont.)
• Packets are switched, not routed, based on labels
• Labels are filled in the packet header
• Basic operation:
– Ingress LER (Label Edge Router) pushes a label in front of the IP header
– LSR (Label Switch Router) does label swapping
– Egress LER removes the label
• The key : establish the forwarding table
– Link state routing protocols
• Exchange network topology information for path selection
• OSPF-TE, IS-IS-TE
– Signaling/Label distribution protocols:
• Set up LSPs (Label Switched Path)
• LDP, RSVP-TE, CR-LDP
COMP680E by M. Hamdi
64
MPLS Operation
1a. Routing protocols (e.g. OSPF-TE, IS-IS-TE)
exchange reachability to destination networks
1b. Label Distribution Protocol (LDP)
establishes label mappings to destination
network
4. LER at egress
removes label and
delivers packet
IP
IP
2. Ingress LER receives packet
and “label”s packets
3. LSR forwards
packets using label
COMP680E by M. Hamdiswapping
65
Label switching technologies
• Main objectives: a forwarding technique
– Improve Internet forwarding technology
performance
– As a result, scale the (WAN) Internet infrastructure
• Several pre-standard industry flavors
– "Tag switching", "IP switching", "Fast IP", ...
• IETF Standardization
– First drafts produced mid 97
COMP680E by M. Hamdi
66
Label Switching
• Uses concept of edge and
core where:
– conventional routing done
at the edge
Conventional
Routing at edge
Switching
in core
– switching
(i.e.make forwarding decision not
based on destination address)
done in the core
COMP680E by M. Hamdi
67
Labels
7423
H
• In core, forwarding
decision based on
“logical forwarding
references”
7423
R
3
7423
R
7
R
• “Logical forwarding
reference” called Label
(1)
label
COMP680E by M. Hamdi
7423
68
Label Switching Routers
• In the core nodes capable of
switching on labels called:
Specific
device
7423
H
7423
– Label Switching Routers
(LSR)
3
LSR
7423
• LSR is a specific device
LSR
7
– neither regular router
– nor regular ATM switch
Label Switching
Domain
COMP680E by M. Hamdi
7423
69
Label Switching rationale
• Select output port at
"hardware speed"
Simple look-up
Using an Index
–
–
–
–
–
Label
3
Outgoing
port
short
of fixed length
in fixed position
at beginning of packet
with no internal structure
COMP680E by M. Hamdi
0
1
2
3
4
5
6
7
70
Relationships with QoS
• Entry may also contain
information about what
resources all the pkts
carrying this label may use
Label
3
Outgoing Resources
port
0
1
2
3
4
5
6
7
e.g.
– outgoing queue
– drop reference level
COMP680E by M. Hamdi
71
Label local significance
• No reason index (labels) to
forwarding tables be the
same in all nodes
• Label to be agreed by two
communicating LSRs
• Have strictly local
significance, as
3
LSR
7
LSR
2
– X.25 virtual channels
numbers
– ATM VCIs and VPIs
COMP680E by M. Hamdi
72
Label Switched Path (LSP)
• Label Switched Path
(LPS)
– concatenation of
labels
3
LSR
7
LSR
2
– constitutes, from
node to node, the path
followed by all pkts
carrying those labels
COMP680E by M. Hamdi
73
FEC and Label Switched Paths
Forwarding Equivalence
Classes
• Pkts following an LSP
form an FEC
“a set of pkts forwarded in
the same manner”
Example of Label and FEC
binding
5
LSR
LSR
2
LSR
FEC:
All packets forwarded in the
same manner by that router
• An FEC maps to a label
l
Form a Class (FEC)
l
carry same label 3 on this
section
COMP680E by M. Hamdi
74
Further FEC partition
Example of further partition of an FEC
• Further FEC partition
possible (but not mandatory)
Set of Packets
• Taking Same path
• Best Effort PHB
label x
LSR
• If packets have
different QoS
requirements
LSR
label y
Set of Packets
• Taking Same path
• Expedited PHB
COMP680E by M. Hamdi
75
Label swapping
• Label swapping in a core Label Switching Network
(LSN) is similar to forwarding over ATM or X.25
virtual circuits
– replace incoming label with outgoing label for next
hop
– Implement QoS/priority as appropriate
– forward to output port
• In addition, LSRs must check if pkt has reached
final destination (egress point)
COMP680E by M. Hamdi
76
Core MPLS Switching Routers
MPLS switches may be
Core switching
• Routers enhanced with
MPLS functionality
R
R
R
– If IP, can be:
• IPv4 router
• IPv6 router
MPLS-capable Routers
• ATM switches (1)
Core switching
– supporting MPLS protocols
– implementing regular layer
3 routing
– called ATM-LSR or LS-ATM
ATM
R
ATM
R
ATM
R
MPLS-capable and routingcapable ATM switch
COMP680E by M. Hamdi
77
Where to code the label?
• Labeling a pkt: either
Layer 2
header
Layer 3
header
Label
– overwriting an existing
field in a layer 2 header,
or
– inserting an extra header
between layer 2 and layer
3 headers - the MPLS
header
label set in existing field
Layer 2
header
COMP680E by M. Hamdi
MPLS
header
Layer 3
header
Label
label inserted
78
Example of layer 2 label
Core switching
• When Label Switching
Routers are ATM-LSR
...
ATM
R
ATM
R
ATM
R
Layer 2
header
Layer 3
header
Label
then, ...
VPI
• … Label carried in the
VPI/VCI field (28 bits)
VPI
VCI
COMP680E by M. Hamdi
VCI
VCI
Payload CLP
HEC
8
79
Traffic Engineering
&
MPLS
COMP680E by M. Hamdi
80
Traffic Engineering
• Concerned with the performance optimization of operational
networks
• Main objective is to reduce congestion hot spots and improve
resource utilization across the network through carefully
managing the traffic distribution inside the network
• Cost savings that results in more efficient use of resources (e.g.
bw) helps to reduce overall cost of operation for service
providers.
• IP routing is based on destination and used simple metrics such
as hop count
• IP routing can lead to poor resource utilization
COMP680E by M. Hamdi
81
The Fish Problem
D
G
F
Head
A
C
E
COMP680E by M. Hamdi
Tail
B
82
The Fish Problem (cont.)
• There are two paths from A and B to G.
• But only one of the two paths (shortest path) will
be used for traffic
• Leads to unbalanced traffic distribution
• Problem caused by two properties of IP routing
– IP routing is destination based. Thus for each
destination network there is typically only one path in
the routing table : traffic distribution tends to be
unbalanced
COMP680E by M. Hamdi
83
The Fish Problem (cont.)
– Decision making in current routing is based on local
optimization : any node simply selects a path that is
best from its own perspective. It does not take into
account the overall system objective and have a global
view of the network in terms of traffic distribution
COMP680E by M. Hamdi
84
Optimization Objectives
• The main aim of TE is to improve network
performance through optimization of resource
utilization in the network.
• Common optimization objectives are
– Minimizing congestion and packet losses in the
network
– Improving link utilization
– Minimizing total delay experienced by packets
– Increasing number of customers with the current assets
COMP680E by M. Hamdi
85
Optimization Objectives (cont.)
• ISPs would like to avoid hot spots in the network
– Mathematically means minimize the maximum link
utilization
– Means lower total delay and loss
– Leaves more space for future traffic growth since
available bandwidth is maximized
COMP680E by M. Hamdi
86
Constraint-Based Routing
• Conventional IP routing is based on an algorithm
that optimizes a particular scalar metric
• With constraint based routing path is optimal w.r.t.
some scalar metric, at the same time it does violate
a set of constraints :
– Performance constraint
• Path with certain minimum available bw
– Administrative constraints
• Path that excludes certain links in the network
COMP680E by M. Hamdi
87
Constraint-Based Routing (cont.)
• Plain IP routing cannot support constraint based
routing
– Constraint-based routing requires path calculation at the
source
• Because different source may have different constraints for a
path to the same destination
• Constraints associated with a particular source router are only
known to that router
• In plain IP routing paths are computed in a distributed fashion
by every router; does not take into account constraints of
different sources
COMP680E by M. Hamdi
88
Constraint-Based Routing (cont.)
– When a path is determined by the source, forwarding
along such a path cannot be provided using the
destination-based IP forwarding
– Path computation at the source needs to have
information about attributes associated with individual
links (e.g. link utilization).
• There is no mechanism to distribute this information in the
network through plain IP routing
• IP routing protocol can be augmented to support
these functionality
COMP680E by M. Hamdi
89