Download QoS Routing for MPLS Networks Employing Mobile Agents

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Deep packet inspection wikipedia , lookup

Backpressure routing wikipedia , lookup

Net bias wikipedia , lookup

List of wireless community networks by region wikipedia , lookup

Airborne Networking wikipedia , lookup

CAN bus wikipedia , lookup

IEEE 802.1aq wikipedia , lookup

Recursive InterNetwork Architecture (RINA) wikipedia , lookup

Kademlia wikipedia , lookup

Quality of service wikipedia , lookup

Multiprotocol Label Switching wikipedia , lookup

Routing wikipedia , lookup

Routing in delay-tolerant networking wikipedia , lookup

Transcript
QoS Routing for MPLS Networks
Employing Mobile Agents
By: Sergio Gonzalez-Valenzuela and
Victor C. M. Leung
Presented by: Nathan Balon
Introduction
 The authors of the paper propose using
DiffServ-over-MPLS to provide QoS, the
problem with this approach is the lack of routing
support in the current architecture.
 The authors introduce a new routing algorithm
that provides support for establish QoS
compliant routes by using mobile agents.
 The goal of the paper is to introduce the uses of
mobile agents at the network layer, to provide
QoS routing in Internet backbone.
Overview
DiffServ
MPLS
Mobile Agents
Wave
Routing Algorithm
Results
DiffServ
QoS is used to provide a consistent
predictable data delivery service.
In the authors framework they propose
that DiffServ is used to provide QoS.
The reason DiffServ was chosen because
it is highly scaleable.
DiffServ provides a means of categorizing
and prioritizing network traffic flow
aggregates.
DiffServ
 DiffServ uses Differentiated Services Code
Points that identifies a per hop behavior (PHB)
to be applied at each node to a packet.
 Service Level Agreements (SLA) are used to
define the policy criteria and traffic profile.
 One problem with DiffServ is it can not work by
itself, it needs to use another protocol to perform
forwarding.
MPLS
 Multi-protocol Label Switching (MPLS) is based
on a combination of layer 3 routing with label
switching and forwarding.
 MPLS achieves the simplicity of a layer 2 switch
while retaining flexibility and scalability of a layer
3 router.
 Each packet in an MPLS network contains a
label which is associated with a Forward
Equivalence Class (FEC).
 FEC provide scalability. They are used group
flows that are forwarded in a similar manner.
MPLS
 The benefit of MPLS is routing decisions are made at the
edge of a network where a packet will be given a label
based on the FEC.
 MPLS packets are then forwarded based on the label,
which determines the destination of a stream.
 At each hop a new label is inserted into the packet
replacing the old label.
 MPLS routers contain a table with the next hop for a
label. A packet is forwarded based looking up a label in
table. The forwarding table avoids having to make costly
look ups in a routing table and keeps the size of the
routing table small.
MPLS Header
MPLS ‘Shim’ Headers (1-n)
n
•••
1
Network Layer Header
and Packet (eg. IP)
Layer 2 Header
(eg. PPP, 802.3)
4 Octets
Label Stack
Entry Format
Label
Exp.
S
TTL
The Need for a Routing Protocol
 MPLS framework requires an external routing
protocol to determine routes and for the distribution
of labels.
 There is also a need to support multipoint-to-point
connections. Where a number of data streams can
start at separate locations and converge on a
common node or follow the same path and later
diverge.
 Excessive routing traffic can be avoided creating
multiple routes to handle different QoS requirements
which are defined by SLAs.
Mobile Agents
 Mobile agents are autonomous software entities, that
can move themselves from one node to another in a
network.
 Mobile agents can achieve a collective objective in a
cooperative manner.
 The benefits of mobile agents are:
 Agents can communicate with other agents.
 If the machine that launched the agent into the network was
removed, the agent could continue to operate.
 Agents can perform parallel processing.
 One problem is there is no current support for mobile
agents in the Internet infrastructure.
Wave
The Wave paradigm is used to implement
the mobile agents.
Each wave is defined by a string that
represents the agents operations and
variables.
Each wave may start their execution at a
given node and then propagate through
the network.
Wave Program
 One of the reason for the choosing Wave to
implement the mobile agents is the program is
compact.
 Wave code is approximately 20 to 50 times more
compact then many high level languages.
Wave
 Each node in the network needs to run a Wave
interpreter.
 The Wave framework also provides an interfacing
mechanism, so that waves can communicate with
programs written in other languages.
 Waves use the information they gather when traversing
the network to build a Knowledge Network (KN).
 Wave agents are able to clone themselves in a virus like
fashion and are then propagated to neighboring nodes.
 Agents can carry along with them any information they
need and set variables at nodes to share the information
they gather.
Benefits of Wave
Strong migration
Synchronous/asynchronous navigation
Agent collaboration
Flexibility
Fault tolerance
Autonomy
Compactness
QoS Routing
 The routing scheme uses two types of
agents:
1. A set of static agents obtain availability of
network resources.
2. A second set of agents are deployed into the
network find QoS compliant routes.
Static Agents
 Static agents are created to reside on every
node in the network.
 The purpose of static agents is to monitor the
available resources in a DiffServ switch.
 The agents gather information such as the
amount of: bandwidth, delay and jitter.
 The static agents can update the value of a
virtual link to a neighbor in the KN.
 A benefit of this is there is no need to flood the
network with routing tables whenever a change
takes place.
Static Agents
Discovering QoS Compliant Routes
The goal at this phase is to create a tree
with a minimized cost for a specific type of
service.
Paths that do not contribute to optimization
of resources are pruned from the tree.
The end result is minimization of the use
of network resources such as the number
of communication links needed and the
number of labels.
Egress and Ingress Nodes
Egress node: A differentiated service (DS)
boundary node whose role is handling
traffic as it leaves a DS domain.
Ingress node: A DS boundary node whose
role is handling traffic as it enters a DS
domain.
Route Discovery
 Route discovery consist of 2 parts.
1. Finding QoS compliant routes for each ingress
node whose final path is the root of the tree.
2. Determining if any routes overlap.
Finding QoS Compliant Routes
 During initialization of a switch a request from ingress
nodes is made to a common egress node.
 A colony of mobile agents are launched from all ingress
nodes to an egress node to create a mp2p tree.
 The agents clone themselves and then launched copies
on each QoS compliant link.
 When the agent arrives at an intermediate node, the
distance traveled is recorded in a local variable.
 If the agent has a shorter distance than was previously recorded
for an agent originating from the same node it is able to continue.
 If the agents distance is larger, the agent is discarded.
Finding QoS Compliant Routes
A second set of agents are then launched.
The goal of this round of agents is to determine
all of the possible shortest paths to the root.
Agents are allowed to continue on their path to
the root if their recorded distance equals that
recorded by the previous set of agents.
Finding Overlapping Routes
 Next, another set of agents are launched from different
origins to find routes that minimize resources by finding
routes that will allow data to be merged.
 When the phase starts each node sends an agent to travel
along the shortest paths that were previously discovered.
 When an agent arrives at a node:
 The agent checks a flag to see if any other agent had
visited that node from the same origin.
 If the agent is the first to visit the node, it sets a flag which
tells other agents that the node was previously visited.
Finding Overlapping Routes
 A final set of agents is then set out along the
same shortest path to determine the number of
visits at that node from distinct origins.
 The more visits that a node has the better, the
path is then credited a higher weight.
 Every agent will record associated weights to a
destination node based on the amount of
overlapping.
 The result is the egress node will contain the
records for all the shortest paths from each
origin to itself.
Creating Routes
MPLS Switches Can Be Updated
Using Waves interfacing feature, the IP
addresses for nodes found on each path
can passed to the MPLS switch.
The MPLS switch can then assign labels
and use a label distribution protocol.
Results
One problem that was found with the
routing algorithm is that routing traffic can
take place in large bursts.
The sudden increase in the number of
agents can cause congestion problems
and queuing delays.
The authors determine that more efficient
navigation techniques need to be
developed.
Arrival Pattern of Mobile Agents
Conclusion
An framework such as the one the authors
are suggested is unlikely to be embraced
at the present time.
To use mobile agents in core of the
Internet infrastructure, new routers would
need to be put in place to the support
mobile agents.
The paper was written to show longer term
possible routing solutions.