RSVP
By
Ajay Kashyap
1
• Multimedia Networking : Goals&Challenges
• Definition
• Introduction
• Data Flows
• Reservation Models & Styles
• RSVP :Protocol Mechanisms
• RSVP:Functional Specifications
2
• Build hardware and software infrastructure and tools to support multimedia traffic
• Three basic difficulties
• Higher Bandwidth
• Real Time Traffic
• Data is usually bursty
• Design of real time protocols-imperative
3
• RSVP: It is a network control protocol that allows data receiver to request a special end to end quality of service for its data flows.
• Although it sits on top of the IP protocol stack, it is not a routing protocol
• It is rather an internet control protocol
• It is designed to operate with current and future unicast and multicast routing protocols
4
Application
RSVP
Process
RSVP
Process
Policy
Ctrl
Routing
Process
Admis
Ctrl
Classifier
Packet
Scheduler
RSVP
Daemon
Data
5
• Quality of Service is implemented for a particular data flow by a mechanism called
“traffic control”
• Packet Classifier: Determines the QOS
• Packet Scheduler: Link layer dependent mechanism to determine which particular packets are forwarded
• For each outgoing interface, the scheduler achieves the desired QOS.
6
•During reservation setup, an RSVP QOS request is passed to two local decision modules: 1. Admission control 2. Policy control.
Admission Control: Determines whether the node has sufficient available resources to supply the requested resources.
Policy Control: Determines whether the user has administrative permission to make the reservation.
7
•If both checks succeed, parameters are set in the packet classifier and in the link layer interface to obtain the desired QOS.
If either checks fails, the RSVP program returns an error notification to the application process that generated the request.
8
•Since the membership of a large multicast group and the resulting tree are likely to change with time,the RSVP protocol specifies the creation of “soft states” , that can be built and destroyed incrementally in the routers and the hosts.
For this RSVP periodically sends refresh messages to maintain the state along the reserved paths.
9
RSVP defines a session to be a “data flow” with a particular destination and transport layer protocol.
An RSVP session is defined by the triple:
DestAddress , Protocol ID , DstPort
The DstPort is an optional parameter and is a generalized destination port.
However the DstPort is necessary to allow more than one unicast session addressed to the same receiver host.
10
An RSVP request consists of : flowspec together with a filterspec. This pair is called the “flow descriptor”.
The flowspec specifies a desired QOS.
The filterspec together with the session specification defines the set of data packets.
The flowspec is used to set parameters in the packet scheduler,while the filterspec is used to set parameters in the packet classifier.
11
The flowspec in a reservation request will generally include a service class and two sets of numeric parameters:
Rspec- defines the desired QOS.
Tspec- describes the data flow.
The format and contents of the above are determined by the integrated service models and are generally opaque to RSVP.
12
RSVP messages carrying reservation requests originate at receivers and are passed upstream towards the senders.
At each intermediate node, a reservation triggers two general actions:
1.The RSVP passes the request to admission and policy control and the check is executed.
2. A reservation request is propagated upstream towards the appropriate senders. The set of sender hosts to which a reservation request is propagated is called the “scope” of that request.
13
•The basic reservation model is “one-pass”: a receiver sends a request upstream and each node in the path either accepts or rejects the request.This does not provide a way to determine the end-to-end service.
Therefore, RSVP supports an enhancement to one pass service known as One-Pass With
Advertising (OPWA). With this scheme, RSVP control packets are sent downstream , flowing the data paths to gather information that can be used to predict the end to end QOS.These results are delivered to the receivers hosts which can dynamically adjust the QOS.
14
A reservation request includes a set of options termed ’reservation styles’.
One style concerns the treatment of reservations for different sessions within the same sessions. Another style controls the selection of senders.It may be explicit or a wildcard entry.
15
Sender Reservations
Selection Distinct Sender
Explicit Fixed Filter Shared Explicit
Wildcard None Wildcard Filter
16
1.
Wildcard Filter (WF)Style:It creates a single reservation shared by flows from all upstream senders.WF(*(Q))
*- represents the wildcard sender selection
Q-flowspec
2. Fixed Filter (FF): It creates a distinct reservation for data packets from a particular sender. FF(S(Q))
3. Shared Explicit (SE):It creates a single reservation shared by selected upstream senders.SE((S1,S2,..)(Q))
17
B
B’
A
Router
C
D
D’
18
•There are two fundamental RSVP messages:
1.Path
2. Resv
Each receiver host sends a Resv message upstream towards the senders. These messages must follow the exact reverse path the data will use.
They create and maintain the reservation state in each node along the path.
19
Path: Each RSVP sender host transmits a Path message downstream. These store the the ‘path state’ in each node along the way.
This path state includes the IP address of the previous hop node which is used to route the
Resv message in the reverse direction.
Each Path message contains the following information:
1.Sender Template: Describes the format of data packets that the sender will originate.
2.Sender Tspec: Defines the traffic characteristics of the data flow.
3.Adspec: Used for OPWA.
20
1.
Soft State : RSVP takes a soft state approach to manage the reservation state in routers and hosts.
A soft state is created and periodically refreshed by Path and Resv messages.
2. Teardown : It is used to remove path or reservation state immediately.Two Types:
1. PathTear-travels downstream
2. ResvTear -travels upstream
21
3. Errors: The two killer reservation problems:
1. KR-1-It arises when already there is a Q0 in place and if another receiver makes a larger
Q1>Q0, the result of merging may be rejected by some intermediate node.
Solution : In case of failure, any existing reservation is kept in place.
2.KR-II-The receiver is trying to make a reservation of Q1 even though admission control is failing for it in some node.This must not prevent a Q0 <Q1 from establishment.
Solution : Blockade State.
22
•
Blockade State : A blocked state in a node modifies the merging process to omit the offending flowspec.
When a ResvErr message is received , its flowspec Qe is used to create or refresh an element of local blockade state. Each element of blocked state consists of a blocked flowspec Qb taken from the error message and a associated blockade timer Tb. When a blockade timer expires , the corresponding blockade state is deleted.
23
----------------------------------------------------------
Vers | Flags| Msg Type | RSVP Checksum
---------------------------------------------------------
| Send_TTL | (Reserved) | RSVP Length
---------------------------------------------------
24
Vers : Usually 1.
2. Flags : 4 bits 0x01-0x08:Reserved.
3. Msg Type :8 bits
1=Path
2= Resv and so on.
4. RSVP Checksum :16 bits
5. Send_TTL :IP TTL value with which the message was sent.
6. RSVP Length : 16 bits- includes the common header and variable length objects that follow.
25
•Objects:
----------------------------------------------------
Length (bytes) | Class-Num | C-Type
----------------------------------------------------
// (Object contents) //
----------------------------------------------------
26
•Objects…
1. Length : 16 bit containing the total length in bytes.
2. Class-Num :Identifies the object class.
3. C-Type : Object type , unique within each object class.
The maximum object content length is 65528 bytes. The Class-Num and the C-Type fields may be used together as a 16 bit number to define a unique type for each object.
27
1. Makes reservations for both unicast and multicast.
2. RSVP is receiver oriented.
3. RSVP maintains soft state in routers and hosts.
4.It is not a routing protocol but depends upon the present and future protocols.
5. It transports and maintains traffic control and policy control parameters that are opaque to RSVP.
6.RSVP provides several reservation styles to fit a variety of applications.
7.RSVP supports both IPV4 and IPV6.
28
• RFC 2205
• RFC 2209
• http://www.cs.columbia.edu/~hgs/internet/rsvp
.html
29