Internet DRAFT - draft-fujikawa-ric-srsvp
draft-fujikawa-ric-srsvp
INTERNET DRAFT FUJIKAWA Kenji
draft-fujikawa-ric-srsvp-00.txt SHENG I
Kyoto University
GOTO Yukinori
Kyushu University
Real Internet Consortium
1 February 1999
Simple Resource ReSerVation Protocol (SRSVP)
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 draft describes Simple Resource ReSerVation Protocol (SRSVP),
which implements multicasting, resource reservation and charging in
the Internet.
1. Introduction
Simple Resource ReSerVation Protocol (SRSVP) is an extension of
Resource ReSerVation Protocol (RSVP) [RSVP], and the purposes of it is
as follows:
* Multicasting
* Resource reservation
FUJIKAWA Kenji Expires on 1 June [Page 1]
INTERNET DRAFT SRSVP February 2000
* Charging
SRSVP creates multicast flows and resource-reserved flows (QoS flows).
The state of a QoS flow is hard-state.
SRSVP implements both of unicast and multicast resource reservations
by a method of receiver-initiated resource reservation.
1.1 Specification of QoS
Quality of Services (QoSes) specified by hosts are defined in [SS].
1.2 Terminology
Session
A Session is identified by a protocol number, a destination
address and a destination port.
Sender Template
A sender template is identified by a source address and a
source port.
Flow
A flow is a unit of resource reservation. There are two type of
flows, a uni-source flow and a multi-source flow.
Uni-source flow
A flow is identified by a session and a sender template.
Currently, a flow is regarded as a uni-source one when the
destination address of its session is unicast.
Multi-source flow
A flow is identified by a session. Currently, a flow is
regarded as a multi-source one when the destination address of
its session is multicast.
Rendezvous Point (RVP)
A sender which forwards data in the case of a multi-source
flow. It is generally an application gateway, and does not have
to be a router.
State of a flow
State of a flow that a router manages. This includes incoming
interfaces of Resv/Path and outgoing interfaces of Resv/Path.
Routing Entry
The information for forwarding a packet which incomes from a
certain interface to a defined interface. An entry of a routing
FUJIKAWA Kenji Expires on 1 June [Page 2]
INTERNET DRAFT SRSVP February 2000
table.
Area Information
A router advertises information of addresses and charging as
area information. Area information is global. See [HQLIP] for
details.
Link Information
A link links an area to another area. A router advertises a
metric and QoS parameters of bandwidth and delay as link
information. Link information is global. There are two types of
link information, external link information and internal link
information. See [HQLIP] for details.
Sender Tspec (Tspec)
Specification of traffic that a sender specifies.
Flowspec
Specification of traffic that a receiver requests for. A
resource reservation is not established unless Flowspec and
Tspec are the same.
Path QoS (PQ)
A PQ shows link information at a link from the viewpoint of a
reservation when the reservation is established. Assuming that
a link of 10Kpps/50msec exists, a reservation is 3Kpps/50msec,
and the link advertises 8Kpps/100msec as a result. In this
case, the PQ shows 10Kpps/50msec is available. A PQ is local
for each reservation.
First Aggregated QoS (FAQ)
Receivers and en-route routers may not get information around a
sender or an RVP. A FAQ is a set of calculated QoSes from a
sender or an RVP to centers of the areas containing it, and is
sent to the receivers and en-route routers. A FAQ is local for
each reservation.
Policy
A policy defined in SRSVP is for charging, and specifies for
which areas a sender should pay according to a certain
reservation.
1.3 Main Differences from RSVP
The main differences between SRSVP and RSVP are:
* hard-state,
* including a multicast mechanism based on rendezvous points,
* including a charging function,
FUJIKAWA Kenji Expires on 1 June [Page 3]
INTERNET DRAFT SRSVP February 2000
* and having a QoS routing mechanism.
SRSVP does not need FilterSpecs in RSVP, since filtering senders can
be executed at RVPs.
2. Multicast Model
The multicast model of SRSVP is based on RVP like PIM-SM. However, an
RVP is generally an application gateway, and does not have to be a
router. Distinguishable reservations (flows) are established, between
a sender and an RVP, and between an RVP and receivers. A sender can be
an RVP. Each sender sends multicast data to an RVP by unicasting. Each
receiver joins a multicast group, and a tree rooted from an RVP is
created as a result. A receiver is a leaf in the tree. Multicast data
received at an RVP is forwarded along the created tree.
RVP is described as ``sender'' in the case of a reservation between
sender(s) and an RVP, and is described as ``receiver'' in the case of
a reservation between an RVP and receiver(s), in this paper.
3. Messages
The following six messages are used in SRSVP:
* Path Message
* Resv Message
* PathTear Message
* ResvTear Message
* PathChg Message
* ResvChg Message
3.1 Path Message
A Path message MUST include a session, a sender template, Tspec and
MAY include FAQ, PQ and policy if needed. A Path is sent from a sender
in response to a Resv message. A request from a receiver, i.e. a Resv
message, is restricted by a Path message.
3.2 Resv Message
There are two types of Resv messages. One is for obtaining Tspec, FAQ,
PQ and policy, and the other is for actually requesting for a resource
reservation. The former is called as Resv0 and the latter is called as
Resv1. Resv0 MUST include session and sender template(s). Resv1 MUST
include session, sender template(s) and Flowspec, and MAY include FAQ
and PQ. A Resv message is sent from a receiver.
FUJIKAWA Kenji Expires on 1 June [Page 4]
INTERNET DRAFT SRSVP February 2000
3.3 PathTear/ResvTear Message
A PathTear message, which a sender or an RVP sends, and a ResvTear
message, which a receiver sends, tear down a resource reservation and
notify an error. A sender, an RVP or a receiver explicitly tear down a
reservation by a PathTear/ResvTear message, while a sender, an RVP, a
receiver or an en-route router tear down a reservation by a
PathTear/ResvTear message with an error code. A PathTear/ResvTear MUST
include session and sender template(s), and MAY include an object that
indicates an error when the error occurs.
Types of error objects are as follows:
Unreachable Host (UH)
Cannot reach a host
Unavailable Bandwidth (UB)
The bandwidth is unavailable
Unsatisfying Delay (UD)
The delay does not satisfy a request
Unsatisfying Charge (UC)
The charge does not satisfy a request
Illegal Flowspec (IF)
The Flowspec is illegal.
Invalid Policy (IP)
The policy is invalid.
3.4 PathChg/ResvChg
A PathChg and a ResvChg conveys charging information for a flow, and
are transfered from a side of a sender to receivers, and from sides of
receivers to a sender, respectively.
4. Basic Procedure of Making a Resource Reservation
The following shows an abstract of a procedure of making a resource
reservation.
4.1 Abstract of Resource Reservation Procedure
1. A receiver sends a Resv message without a Flowspec, i.e. Resv0.
En-route routers forwards it along the way to a sender, and
memorize a state of the flow.
FUJIKAWA Kenji Expires on 1 June [Page 5]
INTERNET DRAFT SRSVP February 2000
2. A sender that received a Resv0 sends a Path message. It is
forwarded along the reverse path of Resv0, with being added FAQ
and PQs. Each router releases the state of the flow after
forwarding the Path.
3. The receiver that received the Path sends a Resv message (Resv1)
with a Flowspec corresponding to the Tspec and received FAQ/PQs.
Each of the receiver and en-route routers calculates a QoS path
from a sender to itself, and forwards Resv1 along the reverse path
of that path, with memorizing a state of the flow.
4. The sender that received the Resv1 sends a Path message. It is
forwarded along the reverse path of Resv1, with being added FAQ
and PQs. Each of the sender and en-route routers adds an entry of
the flow, while sending/forwarding the Path.
4.2 Differences between Uni-source Flow and Multi-source Flow
* Source address and port are considered for identifying a
uni-source flow, while they are not for a multi-source flow.
* Source address and port are included in an entry for uni-source
flow, while they are not for a multi-source flow.
* A node looks up a correct sender template, i.e. an RVP, when it
receives multiple Resv messages each of which indicates different
sender template(s) in the case of a reservation for a multi-source
flow.
4.3 Valid Period of Resv
Though a router memorizes a state of the flow when it receives the
flow, it deletes the state unless it receives a corresponding Path
within 30 seconds from the reception of the Resv.
4.4 Merging Resv Messages
A router postpones the process of a Resv until it receives a Path,
when it has already received a Resv for the same flow.
It forwards a Path message to each direction it has received one of
the Resv message, or sends a PathTear message when the Flowspec of the
Resv does not correspond to the Tspec of the Path, when it received
the Path.
These procedures mean merging reservations.
4.5 Restriction of Reservation by Sender
A Resv from a receiver is restricted by a Path of a sender. That is, a
sender adds restriction to a reservation. Receivers obeys the
restriction.
FUJIKAWA Kenji Expires on 1 June [Page 6]
INTERNET DRAFT SRSVP February 2000
4.5.1 Resv1 Received before Setting Up Reservation
A router absolutely trusts Flowspec/FAQ/PQ in a Resv and proceeds the
reservation, when it receives the Resv before setting up the
reservation.
4.5.2 Resv1 Received after Setting Up Reservation
Assuming that a reservation for the flow is already established when a
router receives Resv1.
* In the case that the Flowspec of the Resv is the same as the Tspec
of the Path, the FAQ of the Resv includes that of the Path, and
the PQ of the Resv includes that of the Path:
The router forwards the Resv1 to the upstream node, which has
already established the reservation, as long as the router has not
sent a Resv to the upstream node.
* In the case that the Flowspec of the Resv is different from the
Tspec of the Path:
The router forwards the Resv0 to the upstream node, which has
already established the reservation, as long as the router has not
sent a Resv to the upstream node. The router re-receives a Path
and compares the Flowspec to the Tspec of the Path. The resulting
difference means an error.
* In the case that the FAQ of the Resv does not include that of the
Path, or the PQ of the Resv does not include that of the Path:
The router forwards the Resv0 to the upstream node, which has
already established the reservation, as long as the router has not
sent a Resv to the upstream node. The router re-receives a Path
and proceeds the Resv1 with FAQ/PQ in the Path.
5. Examples of Reservations
The following shows an example of creating a multicast tree. See
appendix C for more complicated examples.
5.1 Notation
Notation is as follows:
L(bw=<bandwidth>,dly=<delay>):
Link information.
A(chg=<charge>):
Area information.
FUJIKAWA Kenji Expires on 1 June [Page 7]
INTERNET DRAFT SRSVP February 2000
P(req=<request type>,bw=<bandwidth>,PQ(...),...):
Path message.
R(req=<request type>,bw=<bandwidth>,PQ(...),...):
Resv message.
PQ(<link>,bw=<bandwidth>):
PQ.
PT(err=<error type>):
PathTear message.
RT(err=<error type>):
ResvTear message.
where:
bw=<bandwidth>:
Bandwidth available at a link or requested by a Resv.
dly=<delay>:
Transmission delay at each link.
chg=<charge>:
Charge when a reservation is established.
req=<request type>:
This specifies a condition for calculating the shortest path
tree. This is included in a Flowspec or a Tspec. See [SS] for
details.
<link>:
A link, which is written as A1->A2.
err=<error type>
A type of errors. Illegal Flowspec (IF) and Unreachable Host
(UH) are used here.
Note that a ``+'' in a message means succeeds contents of the previous
message.
5.2 Initial State
Consider a network in Figure C.2.1.
Assuming that bandwidth or delay at each link is the same as that of
the opposite direction for simplicity, though each of them is
different from the opposite directions originally. Charging for
FUJIKAWA Kenji Expires on 1 June [Page 8]
INTERNET DRAFT SRSVP February 2000
passing an area is just defined for simplicity, though charging is
based on both of incoming direction and outgoing direction originally.
S1-----------A1-----------A2-----------A5-----------R1
| | |
| | |
| | |
| | |
+-----------A3-----------A6-----------R2
L(bw=0) |A(chg=2) |
| |
| |
| |
P1-----------A4-----------A7
L(bw=0)
S: Sender bw=1 at every link except A1-A3 and A4-A7
R: Receiver dly=1 at every link
A: Area chg=1 at every area except A3
P: rendezvous Point
Figure C.2.1: Initial State
5.3 Reservation of Uni-source Flow
5.3.1 Reservation of S1->P1
Consider that RVP P1 makes a reservation of S1->P1. This reservation
is one for a uni-source flow.
First, P1 sends Resv0, and each router forwards it along the unicast
path towards a sender S1. Each node memorizes the state of the flow at
this time.
<----------
S1-----------A1-----------A2
^ | |
| | |
| | |
| | |
| +-----------A3
+------------- | ^
| |
| |
| |
P1-----------A4
---------->
R()
FUJIKAWA Kenji Expires on 1 June [Page 9]
INTERNET DRAFT SRSVP February 2000
Figure C.3.1: P1->S1 Resv0
S1 sends a Path towards the direction from which it has received a
Resv, and each router forwards the Path along the reverse path of
Resv0. (Figure C.3.2) The state of the flow is deleted after the Path
was sent/forwarded.
A FAQ is actually included, but is omitted here.
P(req=dly,bw=1)
---------->
S1-----------A1-----------A2
| | |
| | |
| | |
| | |
| +-----------A3
+------------> | |
| |
| |
| V
P1-----------A4
<----------
Figure C.3.2: S1->P1 Path
P1 sends a Resv1 with a Tspec same as the Flowspec included in the
Path. Each router calculates a QoS path from S1 to itself, and
forwards the Resv1 along the path reversely. (Figure C.3.3) Each
router memorizes a state of the flow.
<---------- <----------
S1-----------A1-----------A2
| | ^
| | |
| | |
| | |
+-----------A3
| ^
| |
| |
| |
P1-----------A4
---------->
R(req=dly,bw=1)
Figure C.3.3: P1->S1 Resv1
FUJIKAWA Kenji Expires on 1 June [Page 10]
INTERNET DRAFT SRSVP February 2000
A Path is forwarded along the reverse path of Resv1. As each router
adds an entry, the revervation is established. The Path includes PQs.
(Figure C.3.4)
FAQs are also included actually, but are omitted here.
P(req=dly,bw=1,
PQ(S1->A1,bw=1)) P(+,PQ(A1->A2,bw=1))
----------> ---------->
S1===========A1===========A2
| || |
| || |P(+,PQ(A2->A3,bw=1))
| || |
| || V
+-----------A3
|| |
|| |P(+,PQ(A3->A4,bw=1))
|| |
|| V
P1<==========A4
<----------
P(+,PQ(A4->P1,bw=1))
Figure C.3.4: S1->P1 Path with PQ
A state of the network is shown in Figure C.3.5, after the reservation
is established.
L(bw=0) L(bw=0)
S1-----------A1-----------A2
| |
L(bw=0)| L(bw=0)|
| |
| |
+-----------A3
|
L(bw=0)|
|
|
P1-----------A4
L(bw=0)
Figure C.3.5: A state after establishment of the reservation
5.4 Resource Reservation of Multi-Source Flow
5.4.1 Resource Reservation P1->R1
FUJIKAWA Kenji Expires on 1 June [Page 11]
INTERNET DRAFT SRSVP February 2000
Assuming that receiver R1 will make a reservation of a multi-source
flow towards RVP P1. First, a reservation is established shown as
Figure C.4.1 - C.4.4, same as a unicast resource reservation
Note that bandwidth of links P1->A4, A4->A3 and A3->A2 remain as shown
in Figure C.2.1, since they are reverse directions of the previously
described flow of a unicast resource reservation.
R()
<---------
A2-----------A5-----------R1
| | |
| | |
| | |
| | V
A3-----------A6-----------R2
| | |
| | |
| | |
| | V
P1-----------A4-----------A7
<---------- <----------
Figure C.4.1: R1->P1 Resv0
--------->
A2-----------A5-----------R1
| | ^
| | |
| | |
| | |
A3-----------A6-----------R2
| | ^
| | |
| | |
| | |
P1-----------A4-----------A7
----------> ---------->
P(req=chg,bw=1)
Figure C.4.2: P1->R1 Path
FUJIKAWA Kenji Expires on 1 June [Page 12]
INTERNET DRAFT SRSVP February 2000
R(req=chg, bw=1)
<--------- <----------
A2-----------A5-----------R1
| | |
| | |
| | |
V | |
A3-----------A6-----------R2
| | |
| | |
| | |
V | |
P1-----------A4-----------A7
<----------
Figure C.4.3: R1->P1 Resv1
P(+,PQ(A2->A5,bw=1)) P(+,PQ(A5->R1,bw=1))
---------> --------->
A2===========A5==========>R1
^ || |
P(+,PQ(A3->A2,bw=1))| || |
| || |
| || |
A3-----------A6-----------R2
^ || |
P(+,PQ(A4->A3,bw=1))| || |
| || |
| || |
P1===========A4-----------A7
---------->
P(req=chg,bw=1,
PQ(P1->A4,bw=1))
Figure C.4.4: R1->P1 Path with PQ
FUJIKAWA Kenji Expires on 1 June [Page 13]
INTERNET DRAFT SRSVP February 2000
5.5 P1->R2 Resource Reservation
Next, the procedure for R2 to make a resource reservation is shown in
Figure C.4.5-C.4.8.
A2===========A5==========>R1
|| |
|| |
|| | R()
||<---------- |<----------
A3-----------A6-----------R2
| || |
| || |
| || |
V || |
P1===========A4-----------A7
<----------
Figure C.4.5: R2->P1 Resv0
A2===========A5==========>R1
|| |
|| |
|| |
||----------> |---------->
A3-----------A6-----------R2
^ || |
P(+,PQ(A4->A3,bw=1))| || |
| || |
| || |
P1===========A4-----------A7
---------->
P(req=chg,bw=1,
PQ(P1->A4,bw=1))
Figure C.4.6: P1->R2 Path
A2===========A5==========>R1
|| |
|| |
|| |
|| |
A3-----------A6-----------R2
| ||<--------- |<----------
R(req=chg,bw=1, | || | R(req=chg,bw=1,
PQ(P1->A4,bw=1))| || | PQ(P1->A4,bw=1),
V || | PQ(A4->A3,bw=1))
P1===========A4-----------A7
FUJIKAWA Kenji Expires on 1 June [Page 14]
INTERNET DRAFT SRSVP February 2000
<----------
R(req=chg,bw=1)
Figure C.4.7: R2->P1 Resv1
A2===========A5==========>R1
|| |
|| |
|| |
|| |
A3===========A6==========>R2
^ || ---------> | --------->
P(+,PQ(A4->A3,bw=1))| ||P(+, | P(+,PQ(A6->R2,bw=1))
| || PQ(A3->A6,|
| || bw=1)) |
P1===========A4-----------A7
---------->
P(req=chg,bw=1,
PQ(P1->A4,bw=1))
Figure C.4.8: P1->R2 Path
6. TCP Connections for Exchanging Messages
The way to establish TCP connections for exchanging SRSVP messages.
The port number of XXXX is used for TCP connections. Each node
searches adjacent nodes from link information of HQLIP, and establish
a TCP connection to each of them. The direction of a TCP connection is
decided by the way described in [HQLIP].
A node tear down reservations related to the connection, when the
connection is cut off.
7. Structure of Messages
7.1 Objects of Messages
Each message in SRSVP is defined by the following objects, with BNF.
* Common Header:
The header attached to every SRSVP message.
* SESSION:
A session, which is constructed by a source address, a protocol ID
and a destination port.
* RSVP_HOP:
This describes an identifier of the output interface, which
FUJIKAWA Kenji Expires on 1 June [Page 15]
INTERNET DRAFT SRSVP February 2000
consists of an IP address of the interface and Logical Interface
Handler (LIH).
* SENDER_TEMPLATE:
An IP address of a sender or an RVP.
* SENDER_TSPEC:
A QoS specified by a sender, which is described by REQ_QOS in
[SS].
* FLOWSPEC:
A QoS requested for by a receiver.
* ERROR_SPEC:
This shows a type of errors.
* POLICY_DATA:
Range where a sender is charged
* PQ_INFO:
PQs, each of which consists of identifier of a link and available
QoS.
* FAQ_INFO:
FAQs, each of which consists of identifier of a link and available
QoS.
* CHARGE_INFO:
Information for charging.
7.2 Construction of Messages
<Path message> ::= <Common Header> <SESSION> <RSVP_HOP>
<SENDER_TEMPLATE>
[<SENDER_TSPEC>] [<POLICY_DATA>]*
[<FAQ_INFO>] [<PQ_INFO>]
<Resv message> ::= <Common Header> <SESSION> <RSVP_HOP>
[<SENDER_TEMPLATE>]+
[<FLOWSPEC>] [<FAQ_INFO>] [<PQ_INFO>]
<PathTear message> ::= <Common Header> <SESSION> <RSVP_HOP>
<SENDER_TEMPLATE>
[<ERROR_SPEC>]
<ResvTear message> ::= <Common Header> <SESSION> <RSVP_HOP>
[<SENDER_TEMPLATE>]+
[<ERROR_SPEC>]
<PathChg message> ::= <Common Header> <SESSION> <RSVP_HOP>
<SENDER_TEMPLATE>
<CHARGE_INFO>
<ResvChg message> ::= <Common Header> <SESSION> <RSVP_HOP>
[<SENDER_TEMPLATE>]+
<CHARGE_INFO>
FUJIKAWA Kenji Expires on 1 June [Page 16]
INTERNET DRAFT SRSVP February 2000
References
[RSVP]
Braden, R., Zhang, L., Berson, S., Herzog, S. and Jamin, S.,
``Resource ReSerVation Protocol (RSVP) -- Version 1 Functional
Specification,'' RFC2205, September 1997.
[SS]
Fujikawa, K., ``Service Specification,''
http://www.real-internet.org/draft/draft-ric-ss-00.txt, 1999.
[HQLIP]
Ohta, M. and Fujikawa, K., ``HQLIP,''
http://www.real-internet.org/draft/draft-ric-hqlip-00.txt,
1999.
Authors' Address
FUJIKAWA Kenji
Graduate School of Informatics
Kyoto University
Yoshidahonmachi, Sakyo-Ku, Kyoto City, 606-8501, JAPAN
Phone: +81-75-753-5387
Fax: +81-75-751-0482
EMail: fujikawa@real-internet.org
SHENG I
Graduate School of Informatics
Kyoto University
Yoshidahonmachi, Sakyo-Ku, Kyoto City, 606-8501, JAPAN
Phone: +81-75-753-5387
Fax: +81-75-751-0482
EMail: sheng@kuis.kyoto-u.ac.jp
FUJIKAWA Kenji Expires on 1 June [Page 17]
INTERNET DRAFT SRSVP February 2000
Appendix
A. Message Formats
A.1 Common Header Format
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-------+-------+---------------+---------------+---------------+
| Ver | Flags | Type | 0 |
+-------+-------+---------------+---------------+---------------+
| (reserved) | (reserved) | Length (bytes) |
+---------------+---------------+---------------+---------------+
* Ver: 4 bits
Protocol version number. This is version 2.
* Flags: 4 bits
0x1 = Uncharged
This is valid when the message type is Resv. A flow is not charged
when this flag is set. Besides, coefficients and restrictions
included in Tspec/Flowspec are ignored, and only bandwidth and
delay are considered to calculate the shortest path.
* Type: 8 bits
1 = Path
2 = Resv
5 = PathTear
6 = ResvTear
7 = PathChg
8 = ResvChg
* Length: 16bits
The length of a message in bytes, including a common header.
A.2 Object Formats
Every object consists of one or more 32-bit words with a one- word
header, with the following format:
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
| Length (bytes) | Class-Num | C-Type |
+---------------+---------------+---------------+---------------+
| |
// (Object Contents) //
| |
+---------------+---------------+---------------+---------------+
* Length: 16bits
The length of an object in bytes, including an object header.
FUJIKAWA Kenji Expires on 1 June [Page 18]
INTERNET DRAFT SRSVP February 2000
* Class-Num: 8bits
The class number of an object. The following objects are defined:
+ SESSION
+ RSVP_HOP
+ SENDER_TEMPLATE
+ ERROR_SPEC
+ SENDER_TSPEC
+ FLOWSPEC
+ PQ_INFO
+ FAQ_INFO
+ POLICY_DATA
+ CHARGE_INFO
* C-Type: 8bits
Object type, unique within Class-Num.
A.3 Definition of Objects
A.3.1 SESSION Class
IPv4/UDP SESSION object: Class = 1, C-Type = 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
| IPv4 DstAddress |
+---------------+---------------+---------------+---------------+
| Protocol Id | Flags | DstPort |
+---------------+---------------+---------------+---------------+
IPv6/UDP SESSION object: Class = 1, C-Type = 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
| |
+ +
| |
+ IPv6 DstAddress +
| |
+ +
| |
+---------------+---------------+---------------+---------------+
| Protocol Id | Flags | DstPort |
+---------------+---------------+---------------+---------------+
* DstAddress: 32bits or 128bits
The IP unicast or multicast destination address of the session.
* Protocol ID: 8bits
The IP Protocol Identifier for the data flow.
* Flags: 8bits
Not defined.
* DstPort: 8bits
FUJIKAWA Kenji Expires on 1 June [Page 19]
INTERNET DRAFT SRSVP February 2000
The UDP/TCP destination port for the session.
A.3.2 RSVP_HOP Class
IPv4 RSVP_HOP object: Class = 3, C-Type = 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
| IPv4 Next/Previous Hop Address |
+---------------+---------------+---------------+---------------+
| Logical Interface Handle |
+---------------+---------------+---------------+---------------+
IPv6 RSVP_HOP object: Class = 3, C-Type = 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
| |
+ +
| |
+ IPv6 Next/Previous Hop Address +
| |
+ +
| |
+---------------+---------------+---------------+---------------+
| Logical Interface Handle |
+---------------+---------------+---------------+---------------+
A.3.3 SENDER_TEMPLATE Class
IPv4 SENDER_TEMPLATE object: Class = 11, C-type = 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
| IPv4 SrcAddress |
+---------------+---------------+---------------+---------------+
| ////// | Flags | SrcPort |
+---------------+---------------+---------------+---------------+
FUJIKAWA Kenji Expires on 1 June [Page 20]
INTERNET DRAFT SRSVP February 2000
IPv6 SENDER_TEMPLATE object: Class = 11, C-type = 2
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
| |
+ +
| |
+ IPv6 SrcAddress +
| |
+ +
| |
+---------------+---------------+---------------+---------------+
| ////// | Flags | SrcPort |
+---------------+---------------+---------------+---------------+
* SrcAddress: 32bits or 128bits
The IP address for a sender. This may indicate an RVP.
* Flags: 8bits
0x01 = Failure
indicates the sender is not available.
* SrcPort: 8bits
The UDP/TCP source port for a sender.
A.3.4 ERROR_SPEC Class
RIC ERROR_SPEC object: Class = 6, C-type = 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
| Flags | //// |
+---------------+---------------+---------------+---------------+
* Flags: 8bits
0x01 = Unreachable Host (UH)
0x02 = Unavailable Bandwidth (UB)
0x04 = Unsatisfying Delay (UD)
0x08 = Unsatisfying Charge (UC)
0x10 = Invalid Flowspec (IF)
0x20 = Invalid PQ (IP)
A.3.5 SENDER_TSPEC Class
RIC SENDER_TSPEC object: Class = 12, C-type = 3
Refer to REQ_QOS in [SS] for the format.
A.3.6 FLOWSPEC Class
RIC FLOWSPEC object: Class = 9, C-type = 3
FUJIKAWA Kenji Expires on 1 June [Page 21]
INTERNET DRAFT SRSVP February 2000
Refer to REQ_QOS in [SS] for the format.
A.3.7 PQ_INFO Class
PQ_INFO object: Class = 16, C-type = 1(IPv4), 2(IPv6)
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
// SrcArea (see Area in [HQLIP]) //
+---------------+---------------+---------------+---------------+
// DstArea (see Area in [HQLIP]) //
+---------------+---------------+---------------+---------------+
// PATH_QOS (See [SS]) //
+---------------+---------------+---------------+---------------+
// (the above tuple repeats) //
.........................
A.3.8 FAQ_INFO Class
FAQ_INFO object: Class = 17, C-type = 1(IPv4), 2(IPv6)
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
// SrcArea (see Area in [HQLIP]) //
+---------------+---------------+---------------+---------------+
// DstArea (see Area in [HQLIP]) //
+---------------+---------------+---------------+---------------+
// PATH_QOS (See [SS]) //
+---------------+---------------+---------------+---------------+
// (the above tuple repeats) //
.........................
A.3.9 POLICY_DATA Class
Charging Range POLICY_DATA object: Class = 14, C-Type = 1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+---------------+---------------+---------------+---------------+
// Area (See [HQLIP]) //
+---------------+---------------+---------------+---------------+
// (repeats) //
.........
A.3.10 CHARGE_INFO Class
CHARGE_INFO object: Class = 18, C-type = 1
Refer to CHARGE in [SS] for the format.
FUJIKAWA Kenji Expires on 31 May [Page 22]