Internet DRAFT - draft-brunner-nsis-rsvp2

draft-brunner-nsis-rsvp2





                                                             M. Brunner 
   Internet Draft                                              R. Greco 
   Document: draft-brunner-nsis-rsvp2-00.txt                        NEC 
   Expires: March 2003                                     October 2002 
    
    
                          Towards RSVP Version 2 
                     <draft-brunner-nsis-rsvp2-00.txt> 
                                      
    
Status of this Memo 
    
   This document is an Internet-Draft and is in full conformance 
   with all provisions of Section 10 of RFC2026. 
    
    
   Internet-Drafts are working documents of the Internet Engineering 
   Task Force (IETF), its areas, and its working groups.  Note that      
   other groups may also distribute working documents as Internet-
   Drafts. 
    
   Internet-Drafts are draft documents valid for a maximum of six 
   months and may be updated, replaced, or obsoleted by other documents 
   at any time.  It is inappropriate to use Internet-Drafts as 
   reference material or to cite them other than as "work in progress." 
    
   The list of current Internet-Drafts can be accessed at 
        http://www.ietf.org/ietf/1id-abstracts.txt 
   The list of Internet-Draft Shadow Directories can be accessed at 
        http://www.ietf.org/shadow.html. 
    
    
Abstract 
    
   This memo is a first step towards the design of RSVP Version 2. We 
   take RSVP Version 1 as a basis of this work. RSVP has been criticized 
   mainly because of its complexity and poor scalability among others. 
    
   We present the first steps towards the definition of a new version of 
   RSVP. The goal is to provide a more "light" approach that can help 
   improve handling reservations in the network by means of a simplified 
   behavior. 
    
   This proposal for RSVP Version 2 is not meant as a complete 
   replacement of RSVP Version 1 but is meant to coexist with Version 1. 
   For some scenarios such as receiver orientation and multicasting we 
   assume that RSVP version 1 works fine. 
 
1. Introduction 
    
   A key to the success in the provision of QoS over the Internet is the 
   ability to schedule resources along the communications paths 
   according to the reservations issued by users. As a result of 
   reservation signaling, the nodes along the communications paths 
     
   Brunner,Greco         - Expires March 2003                        1 

                        Towards RSVP Version 2            October 2002 
                                    
    
   should contain sufficient information to detect packets belonging to 
   specific data flows and be prepared to provide them with an adequate 
   quality of service. 
    
   Not only QoS needs signaling but different other applications should 
   get enabled such as signaling for MPLA label switched paths or for 
   firewall traversals [TIST][RSVP-TE]. 
    
   Currently, the most widely used reservation protocol is RSVP. RSVP 
   has a large number of implementations in place and it has been 
   standardized by the IETF in September 1997. For these reasons, we 
   take RSVP as the basis of this work. However, since its 
   standardization, RSVP has been criticized mainly because of its 
   complexity and poor scalability. The protocol has been designed for 
   large multicast scenarios and for multicast applications such as the 
   distribution of audio and video contents over IP multicast, as it is 
   done with the MBONE [RFC 3170]. Although RSVP responds well to the 
   needs why it has been designed, it is felt to be too complex to be 
   used in many other scenarios, that are perhaps more restricted but 
   nevertheless useful for a wide range of applications. 
    
   This document presents the first steps towards the definition of a 
   new version of RSVP, which we call RSVPv2. The goal of RSVPv2 is to 
   provide a more "light" approach that can help improve handling 
   reservations in the network by means of a simplified behavior. In 
   particular, the new protocol should be able to be more efficient in 
   terms of reservations setup time. We also introduce into the protocol 
   a series of new mechanisms that extend it to make it able to handle 
   mobility. It is a first experiment to open up the road for 
   applications based on mobile IP that need an adequate provision of 
   quality of service. RSVPv2 is not intended to replace RSVP but, on 
   the contrary, to coexist with it in a dual stack architecture, so 
   that both reservation protocols are available to applications with 
   different needs. 
    
   In the rest of this document, we present in details a possible design 
   of RSVPv2, including the new features for mobility. The message 
   formats are a quick shot and must be refined in the future anyway. 
    
2. Conventions used in this document 
    
   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
   "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and "OPTIONAL" in 
   this document are to be interpreted as described in RFC-2119. 
    
3. Design Principles 
    
3.1. Co-exist with RSVP Version 1 
    
   The proposal explicitly changes RSVP Version one such that it co-
   exists with the implementation of version 1. It is not meant to re-
   design the feature RSVP version 1 does in a nice way. 
    
     
   Brunner, Greco         Expires March 2003                         2 

                        Towards RSVP Version 2            October 2002 
                                    
    
   Version 2 should run dual-stack together with version 1. 
    
3.2. Small and efficient core protocol 
    
   The core protocol is small, simple and efficient. Only minimal 
   functionality is used in the core protocol. Everything, which might 
   not be used in some scenarios or environments is removed and should 
   get handled in the service specific part. 
    
3.3. Service-specific extensibility 
    
   The service-specific part is freely extensible. Any type of service 
   request can be used. We assume some service types will get 
   standardized, others are Network provider specific, or vendor 
   specific. 
    
3.4. Service Toolbox 
    
   Since still a set of functionality might be reused for several 
   service. We provide the mechanism to add common parts into the 
   service specification. The question then is only is the comman part 
   present or not. Examples of such common parts include security and 
   policy data for authentication and authorization. 
    
4. General features 
    
   The main features of RSVPv2 have been designed by evaluating pros and 
   cons and trying to learn as much as possible from RSVP, other 
   protocols and from the critics moved to them.  
    
4.1. Unicast 
    
   RSVPv2 has been thought as a unicast protocol. Even if we consider 
   multicast as an important feature of a signaling protocol, we 
   focused, as a first step in the protocol design, on  simplicity and 
   a lightweight approach that can fit very well in many scenarios. We 
   think that multicast support can be regarded as an extension to be 
   added to the protocol. The idea is to have an underlying common 
   structure that can be specialised adding different functionalities 
   required by particular scenarios. 
    
   We even believe the proposed protocol works also for multicast, 
   however with homogeneous receivers and with only small groups. 
 
4.2. Sender-Oriented 
    
   We propose a sender-oriented protocol. This approach has been chosen 
   considering that, in this way, the complexity of the protocol can be 
   reduced. In fact, the cost of sending advertisements, processing them 
   in each aware router along the path is eliminated, together with the 
   necessity of symmetric routing (from source to destination and vice 
   versa). Besides, the time to obtain a reservation decreases. This 

     
   Brunner, Greco         Expires March 2003                         3 

                        Towards RSVP Version 2            October 2002 
                                    
    
   approach does not give the receiver the opportunity to choose or 
   change service-parameters.  
    
   However, from the experience with RSVP version 1, it has been seen 
   that in most of the cases the receiver will simply request whatever 
   traffic bandwidth the sender has indicated. The receiver-oriented 
   approach is helpful in multicast scenario where there is the need to 
   accommodate a large number of groups membership and heterogeneous 
   receiver requirements. As previously mentioned, RSVPv2 has been 
   thought for unicast scenarios and as a minimal protocol where 
   multicast support can be provided by RSVP version 1 running dual 
   stack with RSVPv2 or by extension of the protocol itself. 
 
4.3. Soft State 
    
   RSVP version 1 is a Soft State protocol, which means that information 
   about the flows are temporary saved along the path. Soft state gives 
   adaptivity to route changes during the lifetime of a reservation and 
   increases the protocol robustness to loss of messages. Besides, 
   unexpected loss of connectivity from an end-point will simply lead to 
   timeout states after some time along the path. These characteristics 
   seem to be very important in every scenario where a signaling 
   protocol can be used. 
    
   Soft state, on the other hand, introduces the issue of refreshing the 
   information stored along the path. For RSVPv2, we propose to make the 
   end points of the reservation responsible for sending end-to-end 
   refresh messages and in particular the source. In this way, the 
   effort done by intermediate nodes is reduced to the forwarding of the 
   refresh message as opposite to issuing such messages upon expiration 
   of the correspondent soft state lifetime. 
    
   Besides, even if the soft state approach does not require the 
   existence of any mechanism for the explicit end (teardown) of a 
   reservation, this feature can be useful to avoid keeping resources 
   allocated when they are not needed any longer. 
   RSVPv2 supports the explicit end of a reservation coming from the 
   source that requested the reservation. 
    
4.4. Reservation and Error notification 
    
   After sending a reservation request, it is desirable to receive an 
   answer about its result. RSVPv2 has been designed including a 
   reservation acknowledgement sent from the destination back to the 
   source in the case of a successful reservation. This acknowledgement 
   can be used by the source as an indication that the reservation has 
   been completed along the path. A source may decide whether to wait 
   for this acknowledgement or not before sending the data (optimistic 
   versus pessimistic behavior). 
    
   In the same way, it is desirable to receive information in case of 
   failure of a reservation in a node along the network. RSVPv2 sends an 
   error notification from the node where the reservation failed back to 
     
   Brunner, Greco         Expires March 2003                         4 

                        Towards RSVP Version 2            October 2002 
                                    
    
   the source. This message may contain information on the state of the 
   resources at the node where the failure occurred and it can be used 
   by the source to perform a new reservation request with different 
   parameters. However, this information is very service specific, there 
   for the acknowledgment might contain service-specific information. 
    
4.5. Modularity and Extensibility 
    
   The proposal is partly modular in the sense that two different layers 
   are used. The base signaling protocol and a service-specific part are 
   differentiated. The base signaling protocol is pretty monolithic 
   because it is optimized for speed. The service-specific part is very 
   open to any modularity and extensibility. 
    
4.6. Service specification 
    
   RSVP version 1 can provide one of the following types of service:  
   Guaranteed Load and Controlled Load Services and defines the 
   according service specifications. RSVPv2 wants, on the other hand, to 
   be as general as possible as far as offering services is concerned. 
   The idea is that the protocol should be able to carry specifications 
   for a large number of services in order to be easily used in 
   different scenarios and not only for QoS. 
    
4.7. Transport mechanism 
    
   For RSVPv2, all messages are sent as raw IP packets, following the 
   same approach used in version 1. The main motivation lies in the 
   architectural consideration that we want to have a network-level 
   signaling protocol. This basically excludes to use any transport 
   protocol.  
 
4.8. Flow Identifier and Reservation Identifier 
    
   To keep things separate as much as possible, RSVPv2 uses different 
   information to identify a flow and a reservation. In other words, 
   each RSVP message carries a Reservation Identifier to address the 
   reservation and a Flow Identifier that allows matching data level 
   mechanisms with the reservation previously set.  
    
   Mobile IP scenarios and processing refresh messages profit of this 
   feature. The first because the source or destination address of the 
   same reservation might change; the second because searching for a 
   Reservation Identifier is fast than a N-tuple search. 
    
4.9. Refreshing Reservations 
    
   As described before we propose to reuse the soft-state approach. 
   This implies the use of a refresh mechanism of information stored in 
   states. 
    
   In RSVPv2 refresh messages are generated from the endpoints and 
   refresh all the state for the reservation saved along the path. 
     
   Brunner, Greco         Expires March 2003                         5 

                        Towards RSVP Version 2            October 2002 
                                    
    
   Refreshes happen through two different messages a reservation message 
   as well as through a refresh message. Sending a smaller refresh 
   message containing only the reservation id and the time value 
   optimizes for lower badwidth and faster message processing. Using the 
   refresh message approach, it is necessary to be aware that in case of 
   route change, there will not be any route adaptation. 
    
   A compromise need to be found between reducing the refresh period and 
   not increasing too much the overhead of the protocol. Reducing the 
   refresh interval mainly means: 
   -Quicker adaptability to the routing changes 
   -Increased robustness to message loss 
   -Increasing the protocol overhead 
    
   For these reasons, RSVPv2 leaves the application requiring the 
   reservation the freedom to choose the more appropriate time interval 
   for the refresh. The cost for signaling can be handled in a market 
   managed way. 
    
4.10. Timers 
    
   The states need to be refreshed somehow. In order to keep the 
   protocol simple, the numbers of timers used is reduced to the 
   minimum. RSVP version 1 sets a timer for each state saved. This fact 
   adds complexity and increase scalability problems in the core network 
   due to the management of thousands of timers. The proposal for  
   RSVPv2 is to use just one timer for each RSVPv2 daemon. This timer 
   acts as a garbage collector periodically scanning the list of the 
   saved states and erasing all the timed out entries. 
    
   The time value carried by the reservation messages can be a default 
   value or the expected time an application needs that particular 
   service. Both solutions have pros and cons, but what is suggested is 
   that the first message should carry the default time (i.e. 30s as 
   suggested in RSVP version 1) because the reservation can fail before 
   the end point of the reservation is reached and the states already 
   set should timeout quickly. If the reservation is established, a 
   longer time should be carried. 
    
   With this solution, the synchronization of periodic refresh messages 
   stated in RSVPv1 is avoided.  
    
5. Outline of the protocol 
    
5.1. Overview 
    
   +--------------------------+ 
   |    Service-specific      | 
   +--------------------------+ 
   |     Base RSVPv2          | 
   +--------------------------+ 
   |       IP                 | 
   +--------------------------+ 
     
   Brunner, Greco         Expires March 2003                         6 

                        Towards RSVP Version 2            October 2002 
                                    
    
   Figure: Layering 
    
   RSVPv2 as already Version 1 operates directly on top of IP. There is 
   a limited base signaling protocol, where service-specifics are placed 
   on top of the base protocol. In the base-protocol not much 
   extensibility, modularity, or different modes of operations are 
   included.  
    
   The base signaling protocol should be fast and provide very basic 
   functionality, whereas service specific parts are keeping a lot of 
   functionality used for the signaling for that particular service. 
    
   For instance, any policy data and security relevant data is kept in 
   the service-specific part, since this heavily depends on the 
   environment and situation the protocol is used. 
    
   However, we could imagine that the service-specific part does have 
   two layers as well. A common service toolbox containing anything 
   dealing with security and policy might be defined in order to have 
   unified mechanisms to be used by several services using RSVPv2. 
    
5.2. Operation 
    
   The scenario (and we use a scenario for ease of understanding) 
   presented here consists of two end-systems placed in different part 
   of the network that want to request a reservation before transmitting 
   the data.  
    
   The goal of the protocol is to carry a service request from the data 
   source to the destination.  This operation is carried out in two 
   steps. As a first step, the source sends a reservation (RESV) message 
   to the destination. If the message reaches the receiver, than an 
   acknowledgement (ACK) is sent back from the receiver to the source as 
   a confirmation of the reservation set up. If an error occurs along 
   the path, then, the RESV message is not further forwarded and an 
   error message (NACK) is returned back to the source. While processing 
   a RESV message, each aware router along the path saves state and sets 
   an appropriate reservation for the flow.  
    
5.3. Basic Message Format 
    
   The basic format of a RSVPv2 message is represented in the following 
   Figure. 
    
   +------------------------+ 
   |  Common RSVPv2 Header  | 
   +------------------------+ 
   |  Message-Type Specific | 
   +------------------------+ 
   |  Service-Specific      | 
   +------------------------+ 
    
   Figure 1: Basic message format 
     
   Brunner, Greco         Expires March 2003                         7 

                        Towards RSVP Version 2            October 2002 
                                    
    
    
   The structure of RSVPv2 messages consists of a common part, a message 
   specific part, and a service specific part. The common part is 
   included in all the messages of different types. The message type-
   specific part contains information common to all messages of that 
   particular type, and finally the service-specific part is open to 
   contain any service-specific information.  
    
5.4. The Common Header 
    
   The common header is very similar to the header for RSVPv1. 
    
                0             1              2             3 
         +-------------+-------------+-------------+-------------+ 
         | Vers | Flags|  Msg Type   |       RSVP Checksum       | 
         +-------------+-------------+-------------+-------------+ 
         |  Send_TTL   | (Reserved)  |        RSVP Length        | 
         +-------------+-------------+-------------+-------------+ 
         |            Reservation Identifier                     | 
         +-------------+-------------+-------------+-------------+ 
    
    
    
         The fields in the common header are as follows: 
    
         Vers: 4 bits 
    
              Protocol version number.  This is version 2. 
    
         Flags: 4 bits 
    
          0x01 = No message processing until destination reached. 
                 This flag is the equivalent to the usage of the router  
                 alert option for RSVPv2 messages. It means that the 
                 packet must not get handled in the daemon until it  
                 reaches the IP destination address. But it also allows  
                 the daemon to differentiate in-band versus out-of-band  
                 signaling, if both runs on the same daemon. 
    
          0x02 = IPv6 addresses used 
                 This means the flow identifier contains IPv6 adresses 
    
          0x04 = Trigger bi-directional reservation 
                 It this bit is set a reservation in the reverse  
                 direction is triggered. It doesnot mean the same path 
                 through the network is used. 
    
          0x08 = for further study 
 
         Msg Type: 8 bits 
              2  = Resv 
              6  = ResvTear 
              8  = Refresh 
     
   Brunner, Greco         Expires March 2003                         8 

                        Towards RSVP Version 2            October 2002 
                                    
    
              13 = Ack/Nack 
    
         RSVP Checksum: 16 bits 
    
              The one's complement of the one's complement sum of the 
              message, with the checksum field replaced by zero for the 
              purpose of computing the checksum.  An all-zero value 
              means that no checksum was transmitted. 
    
         Send_TTL: 8 bits 
    
              The IP TTL value with which the message was sent. 
    
         RSVP Length: 16 bits 
    
              The total length of this RSVP message in bytes, including 
              the common header and the variable-length objects that 
              follow. 
    
         Reservation Identifier 
    
              The Reservation Identifier is a unique number identifying  
              the reservation independent of any flow or service  
              specification.  
    
5.5. The Message-type Specific Fields 
    
 Reservation Message Specific Fields 
 
   +------------------------------------------+ 
   |                                          | 
   |                                          | 
   |           Flow Identifier                | 
   |                                          | 
   |                                          | 
   +------------------------------------------+ 
   |              Time Value                  | 
   +------------------------------------------+ 
   |             Service Type                 | 
   +------------------------------------------+ 
    
   Figure: Message-Type Specific Fields 
    
   A so-called Flow Identifier including the IP source and destination 
   address and the TCP/UDP source and the destination port numbers 
   represents each flow. We have chosen to keep a basic flow identifier 
   in the reservation message itself. The other place could have been 
   the service-specific part. Keeping it general help in certain 
   situation such as NAT traversal, where a NAT can replace the IP 
   addresses if they are NSIS aware. However, some services for example 
   QoS using DiffServ might specify coarser grained flows. So any type 
   of address masking or ranges of ports need to be carried in the 
   service-specific part. 
     
   Brunner, Greco         Expires March 2003                         9 

                        Towards RSVP Version 2            October 2002 
                                    
    
    
   As previously pointed out, the soft state approach requires to set 
   and manage a number of timers for the RSVP state saved along the 
   path. In order to keep the protocol simple, we propose a solution 
   that reduces the number of timers simplifying its managing even if 
   the deallocation of timed out resources can be slightly penalized. 
   RSVP version 1 sets a timer for each state saved. This in fact adds 
   complexity and increases scalability problems in the core network due 
   to the management of these of timers. RSVPv2 uses just one timer for 
   each RSVP list of entries. This timer periodically scans the list of 
   the saved states and erases all the timed out entries. 
    
   In order to reduce the impact of refresh messages in the overhead of 
   the protocol, the initiating node responsible for the reservation 
   request, can specify, as a time value, the whole expected duration of 
   the data transmission without sending any refresh. In case of an 
   earlier end, an explicit tear down of the reservation can be 
   performed using an appropriate TearDown message (TEAR) included among 
   the protocol messages. The time value needs to be chosen according to 
   the expected route changes the signaling protocol needs to handle.  
    
   The Service Type field 
    
   +------------------------------------------+ 
   | toolbox  |        service identifier     | 
   +------------------------------------------+ 
    
   The service type defines the kind of service requested. It is also 
   used in other messages referring to that service, such as the ACK and 
   refreshes. In order to allow for toolbox approach it is divided into 
   two parts. The service identifier and the tools used. 
    
   The values for the toolbox are 
      0x00: no toolbox functionality used. 
      0x01: security 
      0x02: policy 
      0x04 - 0x0X TBD 
    
   The following values for the service identifier are predefined: 
      0: unknown 
      1: RSVPv1 Controlled Load and Guaranteed Service. Contains the 
         FLOWSPEC defined according to [RFC 2210]. 
      2-1023: reserved for standardized services [TBD IANA] 
      1024-X: IANA 
      X-Y: provider/domain specific 
    
 Refresh Message Specific Field 
    
   The refresh message only contains an additional field namely the time 
   value. The definition is exactly the same as for the reservation 
   message. It basically prolongs a reservation. The reservation is 
   identified by the reservation identifier field of the common header. 
    
     
   Brunner, Greco         Expires March 2003                        10 

                        Towards RSVP Version 2            October 2002 
                                    
    
   +------------------------------------------+ 
   |              Time Value                  | 
   +------------------------------------------+ 
    
    
 Acknowledge/Not Acknowledge message (ACK/NACK) 
    
   This ACK/NACK messages are used for feedback of the reservation 
   process. The functionality they offer is pretty basic, but it is 
   coherent with the whole protocol and its scope. 
    
   The ACK simply tells the sender of the reservation that complete 
   reservation process has been handled gracefully, the NACK tells the 
   opposite, namely an error occurred somewhere in the network. The type 
   of message is coded into the code field. Also different reasons for 
   failures can be given in the Reason field.  
    
   +------------------------------------------+ 
   |    Code            |      Reason         | 
   +------------------------------------------+ 
   |             Service Type                 | 
   +------------------------------------------+ 
    
   Codes: 
      0x00 : unknown 
      0x01 : ACK 
      0x02 : ACK hint 
      0x03 : Error (see below for error reasons) 
   ...0x04 : Service-specific notification. The reason is then service- 
             specific and semantic depends on the service type.  
    
   Reason (if Code is set to 0x03) 
      0x00 : unknown, just does not work 
      0x01 : unavailable resources 
      0x02 : unknown service-type 
      0x03 : service not available anymore 
      ....  TBD 
    
   In any case service-specific information can follow. 
    
 Teardown message 
    
   The tear down message does not have any additional parameters.  
    
5.6. Service-Specific Information 
    
   Any service-specific information needs to be defined in a different 
   document and is out of scope of this document.  
    
6. Security Considerations 
 
7. References 
    
     
   Brunner, Greco         Expires March 2003                        11 

                        Towards RSVP Version 2            October 2002 
                                    
    
   [NSIS-REQ] M. Brunner et al. "Requirements for Signaling Protocols", 
   draft-ietf-nsis-req-04.txt, September 2002. 
    
   [TIST] M. Shore, "The TIST (Topology-Insensitive Service Traversal) 
   Protocol", draft-shore-tist-prot-00.txt, May 2002. 
    
   [RFC2210] J. Wroclawski, "The Use of RSVP with IETF Integrated 
   Services", RFC 2210, September 1997. 
    
8. Author's Addresses 
    
   Marcus Brunner, Rosella Greco 
   Network Laboratories, NEC Europe Ltd. 
   Adenauerplatz 6 D-69115 Heidelberg     
   Germany 
    
   Phone: +49 6221 905 110 
   Email: [brunner|greco]@ccrle.nec.de 
    
9. Appendix: Protocol operations in some scenarios 
    
9.1. Signaling of service between mobile hosts 
    
   The mobile scenario has to be analyzed separating two possible cases: 
   mobile sender and mobile receiver. 
    
 Mobile sender 
    
   In this case, RSVPv2 tries to increase the re-use of resources and 
   the probability to obtain a reservation while moving from one place 
   (IP address A) to another (IP address B).   






















     
   Brunner, Greco         Expires March 2003                        12 

                        Towards RSVP Version 2            October 2002 
                                    
    
 
   +----+ 
   | MN \  Position B 
   +----+\\ 
           \\ 
             \          ------- 
              \\     ///       \\\ 
                \\  |             | 
                  \|               | 
                    |             |        Router C 
                     \\\       /// 
                        ------- 
                              --          +-----+ 
                                ----      |     | 
                                    ----  |     | ------- 
                                        --|-   /|/       \\\ 
                                          | --| |           |  +-----+ 
                                          | /|  |            --| Recv| 
                                          |/  | |           |  +-----+ 
                                          |    \|\       /// 
                                         /|     | ------- 
                                        / +-----+ 
                                        / 
                          -------      / 
                       ///       \\\  / 
                      |             |/ 
                   --|               | 
                 --   |             | 
              ---      \\\       /// 
            --            ------- 
   +----+ -- 
   | MN --   Position A 
   +----+ 
    
   Figure: Mobile Scenario 
    
   Referring to the above Figure, we assume that a mobile user starts a 
   reservation from its home site (A). The reservation is set through 
   the entire path till the destination according normal routing. The 
   Reservation Id identifies the reservation. When the mobile sender 
   moves to B (which can be everywhere and we are not making any 
   assumptions on that), it tries to set a new reservation from B. This 
   new reservation can be sent through a certain numbers of routers, 
   which are in common with the previous reservation.  
    
   The Reservation Id remains unchanged as the source moves. When a new 
   reservation request comes in a router where a reservation with the 
   same reservation Id already exists, the flow Id is modified to 
   reflect the change of the sender IP address and the same resources 
   allocated for the old reservation are reused. At the merging point 
   (C), a message is sent back to inform the source that, from there on, 
   the protocol tries to exploit the old reservation. (note that this is 
   a hint). 
     
   Brunner, Greco         Expires March 2003                        13 

                        Towards RSVP Version 2            October 2002 
                                    
    
     
   Had no Reservation Id field be used by the protocol, as with RSVP 
   version 1, then the reservation from B would have been seen as 
   completely new because the sender has a different IP address. 
    
 Mobile receiver 
    
   If the mobile end-system is the receiver of the data, the following 
   approach is possible with RSVP version 2. Let us consider the above 
   Figure again, assuming that a receiver host located in zone A moves 
   to zone B.  
    
   The proposed solution is to use a tunnel between the home agent 
   located in A to the foreign agent located near location B and to make 
   a separate and independent reservation across the tunnel. When a 
   reservation request arrives at the home agent, this agent is 
   responsible for the creation of a new reservation to the foreign 
   agent and for forwarding signaling and data messages along the 
   tunnel.  
    
   The creation of the tunnel may introduce additional delay to the 
   delivery time, which means that mobile users can experience temporary 
   disruptions of QoS. Since tunnel management is separated from end to 
   end reservation, it is possible to make tunnel reservation in advance 
   or in a proprietary way limiting this service disruption.  
 
9.2. Signaling between networks with centralized management of 
     resources 
    
   In a heterogeneous network as Internet is, there can be situations 
   where signaling should follow a different path from the one followed 
   by data. In specific, a possible scenario is a DiffServ network where 
   admission control and all the management of resource inside the 
   domain is done by a centralized management system often called 
   Bandwidth Broker (BB) or QoS Server.  
    
   In this case, when a RESV message arrives at the BB, it is processed 
   and resources are reserved in the appropriate routers according to 
   intra-domain decisions. At this point, a notification is sent back to 
   the ingress router to notify the result of the reservation inside the 
   domain. The message contains information necessary to set the routing 
   tables for the data flow or take the existing route into 
   consideration for admission control and reservation. 
    
   Benefits of this mechanism are that it allows an independent 
   management of resources inside a domain and it separates the data 
   from the signaling path. 
    





     
   Brunner, Greco         Expires March 2003                        14