RFC2383 - ST2+ over ATM Protocol Specification - UNI 3.1 Ver

时间:2005-02-15 来源: 作者: 点击:
Network Working Group M. Suzuki Request for Comments: 2383 NTT Category: Informational August 1998 ST2+ over ATM Protocol Specification - UNI 3.1 Version Status of this Memo This memo provides information for the Internet community. It does not speci
  Network Working Group M. Suzuki
Request for Comments: 2383 NTT
Category: Informational August 1998

ST2+ over ATM
Protocol Specification - UNI 3.1 Version

Status of this Memo

This memo provides information for the Internet community. It does
not specify an Internet standard of any kind. Distribution of this
memo is unlimited.

Copyright Notice

Copyright (C) The Internet Society (1998). All Rights Reserved.

Abstract

This document specifies an ATM-based protocol for communication
between ST2+ agents. The ST2+ over ATM protocol supports the matching
of one hop in an ST2+ tree-structure stream with one ATM connection.
In this document, ATM is a subnet technology for the ST2+ stream.

The ST2+ over ATM protocol is designed to achieve resource-
reservation communications across ATM and non-ATM networks, to extend
the UNI 3.1/4.0 signaling functions, and to reduce the UNI 4.0 LIJ
signaling limitations.

The specifications of the ST2+ over ATM protocol consist of a
revision of RFC1819 ST2+ and specifications of protocol interaction
between ST2+ and ATM on the user plane, management plane, and control
plane which correspond to the three planes of the B-ISDN protocol
reference model.

1. Introduction

1.1 Purpose of Document

The purpose of this document is to specify an ATM-based protocol for
communication between ST2+ agents.

The ST2+ over ATM protocol is designed to support the matching of one
hop in an ST2+ tree-structure stream with one ATM connection; it is
not designed to support an entire ST2+ tree-structure stream with a
point-to-multipoint ATM connection only.

Therefore, in this document, ATM is only a subnet technology for the
ST2+ stream. This specification is designed to enable resource-
reservation communications across ATM and non-ATM networks.

1.2 Features of ST2+ over ATM Protocol

o Enables resource-reservation communications across ATM and non-ATM
networks.

ATM native API supports resource-reservation communications only
within an ATM network; it cannot support interworking with non-ATM
networks. This is because

- ATM native API cannot connect terminals without an ATM interface.

- ATM native API does not support IP addressing and SAP (port)
addressing systems.

o Extends UNI 3.1/4.0 signaling functions.

ST2+ SCMP supports MTU-size negotiation at all hops in an ST2+
tree-structure stream. UNI 3.1/4.0 supports only max CPCS_SDU
(i.e., MTU) negotiation with the called party of a point-to-point
call or with the first leaf of a point-to-multipoint call.

o Reduces UNI 4.0 LIJ signaling limitations.

The ST2+ over ATM protocol supports UNI 4.0 LIJ Call Identifier
notification from the root to the leaf by using an ST2+ SCMP
extension. LIJ Call Identifier discovery at the leaf is one of the
major unsolved problems of UNI 4.0, and the ST2+ over ATM protocol
provides a solution.

Note: The UNI 3.1 version of the ST2+ over ATM protocol does not
support the above feature. It will be supported by the UNI 3.1/4.0
version.

1.3 Goals and Non-goals of ST2+ over ATM Protocol

The ST2+ over ATM protocol is designed to achieve the following
goals.

o Specify protocol interaction between ST2+ [4] and ATM on the ATM
Forum Private UNI 3.1/4.0 (Sb point) [10, 11].

Note: The UNI 3.1 version of the ST2+ over ATM protocol does not
support UNI 4.0. It will be supported by the UNI 3.1/4.0 version.

o Support ST2+ stream across ATM and non-ATM networks.

o Define one VC on the UNI corresponding to one ST2+ hop; this VC is
not shared with other ST2+ hops, and also this ST2+ hop is not
divided into multiple VCs.

o Support both SVC and PVC.

o Not require any ATM specification changes.

o Coexist with RFC1483 [16] IPv4 encapsulation.

o Coexist with RFC1577 [17] ATMarp.

o Coexist with RFC1755 [18] ATM signaling for IPv4.

o Coexist with NHRP [19].

Because ST2+ is independent of both routing and IP address resolution
protocols, the ST2+ over ATM protocol does not specify the following
protocols.

o IP-ATM address resolution protocol

o Routing protocol

Because the ST2+ over ATM protocol is specified for the UNI, it is
independent of:

o NNI protocol

o Router/switch architecture

2. Protocol Architecture

The ST2+ over ATM protocol specifies the interaction between ST2+ and
ATM on the user, management, and control planes, which correspond to
the three planes in ITU-T Recommendation I.321 B-ISDN Protocol
Reference Model [14].

2.1 User Plane Architecture

The user plane specifies the rules for encapsulating the ST2+ Data
PDU into the AAL5 [15] PDU. An user plane protocol stack is shown in
Fig. 2.1.

+---------------------------------+
| RFC1819 ST2+ |
| (ST2+ Data) |
+---------------------------------+ Point of ST2+ over ATM
|/////////////////////////////////| <--- protocol specification of
+---------------------------------+ user plane
| |
| |
| I.363.5 |
| |
| AAL5 |
| |
| |
+---------------------------------+
| I.361 ATM |
+---------------------------------+
| PHY |
+----------------+----------------+
| UNI
+--------||-------

Fig. 2.1: User plane protocol stack.

An example of interworking from an ATM network to an IEEE 802.X LAN
is shown in Fig. 2.2.

ST2+ ST2+ ST2+
Origin ATM Cloud Intermediate Agent Target
+---------+ +---------+
| AP |--------------------------------------------->| AP |
+---------+ +-------------------+ +---------+
|ST2+ Data|------------------>| RFC1819 ST2+ Data|----->|ST2+ Data|
+---------+ +---------+---------+ +---------+
|I.363 AAL|------------------>|I.363 AAL| SNAP |----->| SNAP |
+---------+ +---------+ +---------+---------+ +---------+
|I.361 ATM|--->|I.361 ATM|--->|I.361 ATM| LLC |----->| LLC |
+---------+ +---------+ +---------+---------+ +---------+
| | | | | |IEEE802.X| |IEEE802.X|
| PHY |--->| PHY |--->| PHY | & 802.1p|----->| & 802.1p|
+---------+ +---------+ +---------+---------+ +---------+

Fig. 2.2: Example of interworking from
an ATM network to an IEEE 802.X LAN.

The ATM cell supports priority indication using the CLP field;
indication is also supported by the ST2+ Data PDU by using the Pri
field. It may be feasible to map these fields to each other. The
ST2+ over ATM protocol specifies an optional function that maps the
Pri field in the ST header to the CLP field in the ATM cell.
However, implementors should note that current ATM standardization
tends not to support tagging.

2.2 Management Plane Architecture

The management plane specifies the Null FlowSpec, the Controlled-Load
Service [5] FlowSpec, and the Guaranteed Service [6] FlowSpec mapping
rules [8] for UNI 3.1 traffic management. A management plane
protocol stack is shown in Fig. 2.3.

+---------------------------------+
| Null FlowSpec |
|Controlled-Load Service FlowSpec |
| Guaranteed Service FlowSpec |
+---------------------------------+ Point of ST2+ over ATM
|/////////////////////////////////| <--- protocol specification of
+---------------------------------+ management plane
| |
| UNI 3.1 |
| |
| |
| Traffic Management |
| |
| |
| VBR/UBR |
| |
+---------------------------------+

Fig. 2.3: Management plane protocol stack.

Note: The UNI 3.1 version of the ST2+ over ATM protocol does not
support Guaranteed Services. It will be supported by the UNI 3.1/4.0
version.

The ST2+ over ATM protocol specifies the ST FlowSpec format for the
Integrated Services. Basically, FlowSpec parameter negotiation,
except for the MTU, is not supported. This is because, in the ST2+
environment, negotiated FlowSpec parameters are not always unique to
each target. The current ATM standard does not support heterogeneous
QoS to receivers.

The ST2+ over ATM protocol supports FlowSpec changes by using the
CHANGE message (RFC1819, Section 4.6.5) if the I-bit in the CHANGE
message is set to one and if the CHANGE message affects all targets
in the stream. This is because the UNI 3.1 does not support QoS
changes. The ST2+ over ATM protocol supports FlowSpec changes by
releasing old ATM connections and establishing new ones.

The ST2+ over ATM protocol does not support stream preemption (RFC
1819, Section 6.3). This is because the Integrated Services FlowSpec
does not support the concept of precedence.

It does not support the ST2+ FlowSpec (RFC1819, Section 9.2). ST2+
FlowSpec specifies useful services, but requires a datalink layer to
support heterogeneous QoS to receivers. The current ATM standard
does not support heterogeneous QoS to receivers.

2.3 Control Plane Architecture

The control plane specifies the rules for encapsulating the ST2+ SCMP
PDU into the AAL5 [15] PDU, the relationship between ST2+ SCMP and
PVC management for ST2+ data, and the protocol interaction between
ST2+ SCMP and UNI 3.1 signaling [10]. A control plane protocol stack
is shown in Fig. 2.4.

+---------------------------------+
| RFC1819 ST2+ |
| (ST2+ SCMP) |
+---------------------------------+ Point of ST2+ over ATM
|/////////////////////////////////| <--- protocol specification of
+------------+---+----------------+ control plane
| IEEE 802 | |UNI3.1 Signaling|
| SNAP | +----------------+
+------------+ | Q.2130 SSCF |
| ISO 8802-2 | +----------------+
| LLC Type1 | | Q.2110 SSCOP |
+------------+ +----------------+
| I.363.5 AAL5 |
+---------------------------------+
| I.361 ATM |
+---------------------------------+
| PHY |
+----------------+----------------+
| UNI
+--------||-------

Fig. 2.4: Control plane protocol stack.

The ST2+ over ATM protocol does not cover a VC (SVC/PVC) that
transfers ST2+ SCMP. VCs for IPv4 transfer may be used for ST2+ SCMP
transfer, and implementations may provide particular VCs for ST2+
SCMP transfer. Selection of these VCs depends on the implementation.

Implementors should note that when ST2+ data and SCMP belong to a
stream, the routing directions on the ST2+ layer must be the same.
Implementors should also note that ST2+ and IPv4 directions for
routing to the same IP destination address are not always the same.

The ST2+ over ATM protocol supports both SVC and PVC for ST2+ Data
PDU transfer. If SVC is used, the ST2+ and ATM layers establish a
connection sequentially by using respectively ST2+ SCMP and UNI 3.1
signaling. An example of ST2+ SCMP and UNI 3.1 signaling message
flows for establishing and releasing of ST2+ data connections is
shown in Fig. 2.5, where (S) means an ST2+ entity and (Q) means a UNI
3.1 signaling entity.

ATM SW ATM SW
+------------+ UNI +----+ NNI +----+ UNI +------------+
____|Intermediate|--||--| \/ |______| \/ |--||--|Intermediate|____
| (Upstream) | | /\ | | /\ | |(Downstream)|
+------------+ +----+ +----+ +------------+
SCMP
------->(S)<------------------------------------------>(S)<-------
\ UNI Sig. UNI Sig. /
CONNECT | (Q)<--------->(Q)<-------->(Q)<--------->(Q) |
-------->| |
ACK <----|--------------------CONNECT------------------>| CONNECT
|<---------------------ACK---------------------|-------->
| |<--- ACK
| | ACCEPT
| |<--------
|<-------------------ACCEPT--------------------|---> ACK
|----------------------ACK-------------------->|
| |
|->|----SETUP--->| | | |
| |<-CALL PROC--|----------->|----SETUP--->|->|
| | | |<----CONN----|<-|
ACCEPT | |<----CONN----|<-----------|--CONN ACK-->|->|
<--------|<-|--CONN ACK-->| | | |
ACK ---->| |
| |
-------\ |--------------------------------------------\ |-------\
>| ST2+ Data >| >
-------/ |--------------------------------------------/ |-------/
| |
DISCONN | |
-------->| |
ACK <----|-------------------DISCONNECT---------------->|
|<---------------------ACK---------------------|
| |
|->|---RELEASE-->| | | |
|<-|<--REL COMP--|----------->|---RELEASE-->|->| DISCONN
| | | |<--REL COMP--|<-|-------->
| |<--- ACK

Fig. 2.5: Example of ST2+ SCMP and UNI 3.1 signaling message flows.

UNI 3.1/4.0 specifies PVC, point-to-point SVC, and point-to-
multipoint SVC as VC styles. However, in actual ATM network
environments, especially public ATM WANs, only PVC and bi-directional
point-to-point SVC may be supported. To support the diverse VC
styles, the ST2+ over ATM protocol supports the following VC styles
for ST2+ Data PDU transfer.

o PVC

o Reuse of reverse channel of bi-directional point-to-point SVC that
is used by existing stream.

o Point-to-point SVC initiated from upstream side.

o Point-to-multipoint SVC initiated from upstream side.

o Point-to-point SVC initiated from downstream side.

o Point-to-multipoint SVC initiated from downstream side (LIJ).

Note: The UNI 3.1 version of the ST2+ over ATM protocol does not
support LIJ. LIJ will be supported by the UNI 3.1/4.0 version.

The second style is needed in environments supporting bi-directional
point-to-point SVC only. The selection of PVC and SVC styles in the
ST2+ agent is based on preconfigured implementation-dependent rules.

SVC supports both upstream and downstream call initiation styles.
Implementors should note that this is independent of the sender-
oriented and receiver-oriented ST2+ stream-building process (RFC
1819, Section 4.1.1). This is because the ST2+ over ATM protocol
specifies the process for establishing ST2+ data hops on the UNI, and
because the ST2+ stream building process belongs to another layer.
The SVC initiation side should be determined based on the operational
and billing policies between ST2+ agents; this is basically
independent of the sender-oriented and receiver-oriented ST2+
stream-building process.

An example of ST2+ SCMP interworking is shown in Fig. 2.6.

_____
/ \
(Origin )
\ /
A ~~|~~ A
| = | UNI Signaling
| | |
| +-+-+ V
| | X | ATM SW
| +-+-+ A
SCMP | | | NNI Signaling
| +-+-+ V
| | X | ATM SW
| +-+-+ A
| | |
| = | UNI Signaling
V | V
+-----+------+ IEEE 802.X & 802.1p
| |<---------------------+
|Intermediate|--------------------+ |
| |<-----------------+ | |
+------------+ L2 Signaling| | |
A | A | | |
| = | UNI Signaling | | | SCMP
| | | | | |
| +-+-+ V | | |
| | X | ATM SW V | |
| +-+-+ A +---+-|-+
SCMP | | | NNI Signaling | \ /| |
| +-+-+ V | X | |LAN SW
| | X | ATM SW | / \| |
| +-+-+ A +---+-|-+
| | | A | |
| = | UNI Signaling | | |
V __|__ V V_|_V
/ \ / \
(Target ) (Target )
\ / \ /
~~~~~ ~~~~~

Fig. 2.6: Example of ST2+ SCMP interworking.

3. Revision of RFC1819 ST2+

To specify the ST2+ over ATM protocol, the functions in RFC1819 ST2+
must be extended to support ATM. However, it is difficult for the
current ATM standard to support part of the specifications in RFC
1819 ST2+. This section specifies the extended, restricted,
unsupported, and modified functions in RFC1819 ST2+. Errata for RFC
1819 appears in Appendix A.

3.1 Extended Functions of RFC1819 ST2+

3.1.1 ST FlowSpec for Controlled-Load Service

The ST2+ over ATM protocol specifies the ST FlowSpec format for the
Integrated Services. Basically, FlowSpec parameter negotiation,
except for the MTU, is not supported. The ST2+ intermediate agent
and the target decide whether to accept or refuse the FlowSpec
parameters, except for the MTU. Therefore, each of the FlowSpec
parameter values other than MTU is the same at each target in the
stream.

The format of the ST FlowSpec for the Controlled-Load Service is
shown in Fig. 3.1.

0 1 2 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PCode = 1 | PBytes = 36 | ST FS Ver = 8 | 0(unused) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Ver=0 | 0(reserved) | Overall Length = 7 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SVC Number |0| 0(reserved) | SVC Length = 6 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Param Num = 127| Flags = 0 | Param Length = 5 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Token Bucket Rate [r] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Token Bucket Size [b] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Peak Data Rate [p] (32-bit IEEE floating point number) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Minimum Policed Unit [m] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Maximum Packet Size [M] |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Fig. 3.1: Format of ST FlowSpec for Controlled-Load Service.

The PCode field identifies common SCMP elements. The PCode value
for the ST2+ FlowSpec is 1.

The PBytes field for the Controlled-Load Service is 36 bytes.

The ST FS Ver (ST FlowSpec Version) field identifies the ST
FlowSpec version. The ST FlowSpec version number for the
Integrated Services is 8.

The Ver (Message Format Version) field identifies the Integrated
Services FlowSpec message format version. The current version is
zero.

The Overall Length field for the Controlled-Load Service is 7
words.

The SVC Number (Service ID Number) field identifies the Integrated
Services. If the Integrated Services FlowSpec appears in the
CONNECT or CHANGE message, the value of the SVC Number field is 1.
If it appears in the ACCEPT, NOTIFY, or STATUS-RESPONSE message,
the value of the SVC Number field is 5.

The SVC Length (Service-specific Data Length) field for the
Controlled-Load Service is 6 words.

The Param Num (Parameter Number) field is 127.

The Flags (Per-parameter Flags) field is zero.

The Param Length (Length of Per-parameter Data) field is 5 words.

Definitions of the Token Bucket Rate [r], the Token Bucket Size
[b], the Peak Data Rate [p], the Minimum Policed Unit [m], and the
Maximum Packet Size [M] fields are given in [5]. See section 5 of
[5] for details.

The ST2+ agent, that creates the FlowSpec element in the SCMP
message, must assign valid values to all fields. The other agents
must not modify any values in the element.

The MaxMsgSize field in the CONNECT message is assigned by the origin
or the intermediate agent acting as origin, and updated by each agent
based on the MTU value of the datalink layer.

The negotiated value of MaxMsgSize is set back to the origin or the
intermediate agent acting as origin using the [M] field and the
MaxMsgSize field in the ACCEPT message that corresponds to the
CONNECT message.

In the original definition of the Controlled-Load Service, the value
of the [m] field must be less than or equal to the value of the [M]
field. However, in the ST FlowSpec for the Controlled-Load Service,
if the value of the [m] field is more than that of the [M] field, the
value of the [m] field is regarded as the same value as the [M]
field, and must not generate an error. This is because there is a
possibility that the value of the [M] field in the ACCEPT message may
be decreased by negotiation.

In the ST2+ SCMP messages, the value of the [M] field must be equal
to or less than 65,535. In the ACCEPT message that responds to
CONNECT, or the NOTIFY message that contains the FlowSpec field, the
value of the [M] field must be equal to the MaxMsgSize field in the
message. If these values are not the same, FlowSpec is regarded as
an error.

If the ST2+ agent receives the CONNECT message that contains
unacceptable FlowSpec, the agent must generate a REFUSE message.

3.1.2 ST FlowSpec for Guaranteed Service

Note: The UNI 3.1 version of the ST2+ over ATM protocol does not
support Guaranteed Services. It will be supported by the UNI 3.1/4.0
version.

3.1.3 VC-type common SCMP element

The ST2+ over ATM protocol specifies an additional common SCMP
element that designates the VC type used to support the diverse VC
styles. The CONNECT and CHANGE messages that establish a hop with a
VC must contain a VC-type common SCMP element. This element is valid
between neighboring ST2+ agents, but must not propagate beyond the
previous-hop or next-hop ST2+ agent.

The format of the VC-type common SCMP element is shown in Fig. 3.2.

0 1 2 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PCode = 8 | PBytes = 20 | VCType |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PVCIdentifer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0(unused) | UniqueID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OriginIPAddress |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LIJCallIdentifer |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Fig. 3.2: Format of VC-type common SCMP element.

The PCode field identifies the common SCMP elements. The PCode
value for the VC type is 8.

The PBytes field for the VC type is 20 bytes.

The VCType field identifies the VC type. The correspondence
between the value in this field and the meaning is as follows:

0: ST2+ data stream uses a PVC.

1: ST2+ data stream uses the reverse channel of the bi-
directional point-to-point SVC used by the existing stream.

2: ST2+ data stream is established by a point-to-point SVC
initiated from the upstream side.

3: ST2+ data stream is established by a point-to-multipoint SVC
initiated from the upstream side.

4: ST2+ data stream is established by a point-to-point SVC
initiated from the downstream side.

5: ST2+ data stream is established by a point-to-multipoint SVC
initiated from the downstream side.

Note: The UNI 3.1 version of the ST2+ over ATM protocol does not
support VCType 5. It will be supported by the UNI 3.1/4.0
version.

The PVCIdentifer field identifies the PVC identifier uniquely
assigned between neighboring ST2+ agents. This field is valid only
when the VCType field is zero.

The UniqueID and OriginIPAddress fields identify the reverse
channel of the bi-directional point-to-point SVC that is used by
this SID. These fields are valid only when the VCType field is 1.

The LIJCallIdentifer field identifies the LIJ Call Identifier for
point-to-multipoint SVC. This field is valid only when the VCType
field is 5.

3.1.4 Reason Code

The extension of the Reason Code (RFC1819, Section 10.5.3) to the
ST2+ over ATM protocol is shown below.

57 CantChange Partial changes not supported.
58 NoRecover Stream recovery not supported.

3.2 Restricted Functions of RFC1819 ST2+

3.2.1 FlowSpec changes

In the following case, the ST2+ over ATM protocol supports stream
FlowSpec changes by using the CHANGE message.

o The I-bit is set to 1 and the G-bit is set to 1.

In the following case, the CHANGE fails and a REFUSE message, with
the E and N-bits set to 1 and the ReasonCode set to CantChange, is
propagated upstream.

o The I and/or G-bits are set to zero.

3.3 Unsupported Functions of RFC1819 ST2+

3.3.1 ST2+ FlowSpec

The ST2+ over ATM protocol does not support the ST2+ FlowSpec (RFC
1819, Section 9.2). The ST2+ FlowSpec specifies useful services, but
requires the datalink layer to support heterogeneous QoS to
receivers. The current ATM standard does not support heterogeneous
QoS to receivers.

3.3.2 Stream preemption

The ST2+ over ATM protocol does not support stream preemption (RFC
1819, Section 6.3). This is because the Integrated Services FlowSpec
does not support the concept of precedence.

3.3.3 HELLO message

Implementations may not support the HELLO message (RFC1819, Section
10.4.7) and thus ST2+ agent failure detection using the HELLO message
(RFC1819, Section 6.1.2). This is because ATM has an adequate
failure detection mechanism, and the HELLO message is not sufficient
for detecting link failure in the ST2+ over ATM protocol, because the
ST2+ data and the ST2+ SCMP are forwarded through another VC.

3.3.4 Stream recovery

Implementors must select the NoRecover option of the CONNECT message
(RFC1819, Section 4.4.1) with the S-bit set to 1. This is because
the descriptions of the stream recovery process in RFC1819 (Sections
5.3.2, 6.2, and 6.2.1) are unclear and incomplete. It is thus
possible that if a link failure occurs and several ST2+ agents detect
it simultaneously, the recovery process may encounter problems.

The ST2+ over ATM protocol does not support stream recovery. If
recovery is needed, the application should support it. A CONNECT
message in which the NoRecover option is not selected will fail; a
REFUSE message in which the N-bit is set to 1 and the ReaseonCode is
set to NoRecover is then propagated upstream.

3.3.5 Subnet Resources Sharing

The ST2+ over ATM protocol does not support subnet resources sharing
(RFC1819, Section 7.1.4). This is because ATM does not support the
concept of the MAC layer.

3.3.6 IP encapsulation of ST

The ST2+ over ATM protocol does not support IP encapsulation of ST
(RFC1819, Section 8.7), because there is no need to implement IP
encapsulation in this protocol.

3.3.7 IP Multicasting

The ST2+ over ATM protocol does not support IP multicasting (RFC
1819, Section 8.8), because this protocol does not support IP
encapsulation of ST.

3.4 Modified Functions of RFC1819 ST2+

The ST2+ receiver-oriented stream creation procedure has some fatal
problems: the value of the LnkReferecnce field in the CONNECT message
that is a response to a JOIN message is not valid, ST2+ agent cannot
update the LnkReference field in the JOIN-REJECT message, and ST2+
agent cannot deliver the JOIN-REJECT message to the target because
the JOIN-REJECT message does not contain a TargetList field. To
solve these problems, the ST2+ over ATM protocol modifies the ST2+
protocol processing rules.

3.4.1 Modifications of Message Processing Rules

Modifications of the CONNECT, JOIN, and JOIN-REJECT message
processing rules in the ST2+ over ATM protocol are described in the
following.

o The target that creates a JOIN message assigns the same value as in
the Reference field to the LnkReference field.

o The agent that creates a CONNECT message as a response to a JOIN
message assigns the same value as in the LnkReference field in the
JOIN message to the LnkReference field. In other cases, the value
of the LnkReference field in a CONNECT message is zero.

o The agent that creates a JOIN-REJECT message assigns the same value
as in the LnkReference field in the JOIN message to the
LnkReference field.

o An intermediate agent must not modify the value of the LnkReference
field in the CONNECT, JOIN, or JOIN-REJECT message. Note that this
rule differs from the LnkReference field processing rule in the
ACCEPT and REFUSE messages.

3.4.2 Modified JOIN-REJECT Control Message

The modified JOIN-REJECT control message in the ST2+ over ATM
protocol is shown in Fig. 3.3

0 1 2 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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OpCode = 9 | 0 | TotalBytes |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reference | LnkReference |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SenderIPAddress |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Checksum | ReasonCode |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| GeneratorIPAddress |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
: TargetList :
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Fig. 3.3: JOIN-REJECT Control Message.

The TargetList is assigned the same TargetList in the JOIN message as
the one that corresponds to the JOIN-REJECT message.

4. Protocol Specification of the User Plane

This section specifies the AAL5 PDU encapusulation for the ST2+ Data
PDU.

4.1 Service Primitives Provided by User Plane

4.1.1 Overview of interactions

The ST2+ data layer entity on the user plane of the ST2+ over ATM
protocol provides the following services to the upper layer.

o st2p_unitdata.req

o st2p_unitdata.ind

4.1.1.1 St2p_unitdata.req

The st2p_unitdata.req primitive sends a request for an ST2+ Data PDU
transfer to the ST2+ data layer entity. The semantics of the
primitive are as follows:

st2p_unitdata.req (
pri,
sid,
data
)

The pri parameter specifies priority of ST2+ Data PDU. The sid
parameter specifies SID of ST2+ Data PDU. The data parameter
specifies ST2+ data to be transferred.

4.1.1.2 St2p_unitdata.ind

The st2p_unitdata.ind primitive indicates an ST2+ Data PDU delivery
from the ST2+ data layer entity. The semantics of the primitive are
as follows:

st2p_unitdata.ind (
pri [optional],
sid,
data,
status [optional]
)

The pri parameter indicates priority of ST2+ Data PDU, if AAL5 is
used for encapsulating the ST2+ Data PDU. The sid parameter
indicates SID of ST2+ Data PDU. The data parameter indicates
delivered ST2+ data. The status is an optional parameter that
indicates whether the delivered ST2+ data is corrupt or not.

4.2 Service Primitives Provided by AAL5

4.2.1 Requirements for AAL5

The requirements for the AAL5 layer on the ST2+ over ATM user plane
are as follows:

o The SSCS must be null.

o Implementations must use message-mode service.

Note: Selection of the corrupted SDU delivery option on the
receiver side depends on the implementation, so the receiver may or
may not be able to select this option.

4.2.2 Overview of Interactions

The AAL5 layer entity on the ST2+ over ATM user plane provides the
following services to the ST2+ data layer.

o AAL5_UNITDATA.req

o AAL5_UNITDATA.ind

4.2.2.1 AAL5_UNITDATA.req

The AAL5_UNITDATA.req primitive sends a request for an AAL5 data
(AAL5 CPCS_SDU) transfer from the ST2+ data layer entity to the AAL5
layer entity. The semantics of the primitive are as follows:

AAL5_UNITDATA.req (
DATA,
CPCS_LP,
CPCS_UU
)

The DATA parameter specifies the AAL5 data to be transferred. The
CPCS_LP parameter specifies the value of the CLP field in the ATM
cell. The CPCS_UU parameter specifies the user-to-user data to be
transferred.

4.2.2.2 AAL5_UNITDATA.ind

The AAL5_UNITDATA.ind indicates an AAL5 data (AAL5 CPCS_SDU) delivery
from the AAL5 layer entity to the ST2+ data layer entity. The
semantics of the primitive are as follows:

AAL5_UNITDATA.ind (
DATA,
CPCS_LP,
CPCS_UU,
STATUS [optional]
)

The DATA parameter indicates the delivered AAL5 data. The CPCS_LP
parameter indicates the value of the CLP field in the ATM cell. The
CPCS_UU parameter indicates the delivered user-to-user data. The
STATUS parameter indicates whether the delivered AAL5 data is corrupt
or not. The STATUS parameter is an optional parameter, and valid
only when the corrupted SDU delivery option is selected.

4.3 AAL5 Encapsulation for ST2+ Data PDU

4.3.1 Mapping from st2_unitdata.req to AAL5_UNITDATA.req

The ST2+ Data PDU is directly assigned to the DATA parameter in
AAL5_UNITDATA.req. That is, as shown in Fig. 4.1, the ST2+ Data PDU
is mapped to the payload of AAL5 CPCS_PDU.

+-------+---------------------------+
| ST | ST2+ data | ST2+
| header| | Data PDU
+-------+---------------------------+
: :
: :
+---------------------------------------+--------+
| CPCS_PDU |PAD|CPCS_PDU| AAL5
| payload | |trailer | CPCS_PDU
+---------------------------------------+--------+

Fig. 4.1: Mapping of ST2+ data to AAL5 CPCS_PDU payload.

The value of CPCS_LP in AAL5_UNITDATA.req depends on the
implementation: 1 (low priority) or zero (high priority) may be
assigned permanently, or they may be assigned depending on the value
of pri in st2_unitdata.req.

The value of the CPCS_UU indication field in AAL5_UNITDATA.req is set
to zero.

4.3.2 Mapping from AAL5_UNITDATA.ind to st2p_unitdata.ind

The DATA parameter in AL5_UNITDATA.ind is directly assigned to the
ST2+ Data PDU. That is, the payload in AAL5 CPCS_PDU is mapped to
the ST2+ Data PDU.

If the value of STATUS in AAL5_UNITDATA.ind is valid, it is assigned
to the status in st2p_unitdata.ind.

4.3.3 Value of MTU

The value of MTU is Maximum CPCS_SDU size.

5. Protocol Specification of the Management Plane

The management plane specifies the Null FlowSpec, the Controlled-Load
Service FlowSpec, and the Guaranteed Service FlowSpec mapping rules
for UNI 3.1 traffic management.

5.1 Mapping of the Null FlowSpec

The Null FlowSpec is mapped to the UBR (VBR with the Best Effort
Indicator).

The value of the PCR (CLP=0+1) is shown in section 6.7.2.

5.2 Mapping of the Controlled-Load Service FlowSpec

The Controlled-Load FlowSpec is mapped to the VBR whose PCR
(CLP=0+1), SCR (CLP=0+1), and MBS (CLP=0+1) are specified.

The value of the PCR (CLP=0+1) is shown in section 6.7.2.

Let scr be the calculated value of the SCR (CLP=0+1). Based on the
value of the [r] field in the Controlled-Load FlowSpec, it is given
by:
scr = ([r] / 48) * S,

where S is the coefficient of segmentation, and in an implementation,
it must be configurable to any value between 1.0 and 56.0. The
recommended default value is 1.2. The value of the SCR (CLP=0+1) is
a minimum integer equal to or more than the calculated value of the
scr.

Let mbs be the calculated value of the MBS (CLP=0+1). Based on the
value of the [b] field in the Controlled-Load FlowSpec, it is given
by:
mbs = ([b] / 48) * S.

The value of the MBS (CLP=0+1) is a minimum integer equal to or more
than the calculated value of the mbs.

The values of the [p] and [m] fields in the Controlled-Load FlowSpec
are ignored.

5.3 Mapping of the Guaranteed Service FlowSpec

Note: The UNI 3.1 version of the ST2+ over ATM protocol does not
support Guaranteed Services. It will be supported by the UNI 3.1/4.0
version.

6. Protocol Specification of the Control Plane

This section specifies the rules for encapsulating the ST2+ SCMP PDU
into the AAL5 PDU, the relationship between ST2+ SCMP and PVC
management for ST2+ data, and the protocol interaction between ST2+
SCMP and UNI 3.1 signaling.

6.1 AAL5 Encapsulation for ST2+ SCMP PDU

This subsection describes AAL5 PDU encapsulation for the ST2+ SCMP
PDU. ST2+ Data PDU compatible encapsulation, AAL5 encapsulation
based on RFC1483, and on the RFC1483 extension are specified.
Selection of which one to use depends on the implementation.

The ST2+ over ATM protocol does not cover a VC (SVC/PVC) that
transfers ST2+ SCMP. VCs for IPv4 transfer may be used for ST2+ SCMP
transfer, and implementations may provide particular VCs for ST2+
SCMP transfer. Selection of these VCs depends on the implementation.

6.1.1 ST2+ Data PDU compatible encapsulation

The ST2+ Data PDU compatible encapsulation is shown in Fig. 6.1: the
ST2+ SCMP PDU is mapped to the payload of AAL5 CPCS_PDU.
Implementors should note that this encapsulation is not applicable
when the ST2+ SCMP PDU is multiplexed with other protocols.

+-------+---------------------------+
| ST | ST2+ SCMP | ST2+
| header| | SCMP PDU
+-------+---------------------------+
: :
: :
+---------------------------------------+--------+
| CPCS_PDU |PAD|CPCS_PDU| AAL5
| payload | |trailer | CPCS_PDU
+---------------------------------------+--------+

Fig. 6.1: ST2+ Data PDU conpatible encapsulation.

6.1.2 RFC1483 base encapsulation

The RFC1483 base encapsulation is shown in Fig. 6.2: the ST2+ SCMP
PDU with the RFC1483 LLC encapsulation for routed protocol format is
mapped to the payload in AAL5 CPCS_PDU.

+------+----------------+
| ST | ST2+ SCMP | ST2+
|header| | SCMP PDU
+------+----------------+
: :
+---+---+---+-----------------------+
|LLC|OUI|PID| Information | IEEE 802 SNAP
| | | | | ISO 8802-2 LLC
+---+---+---+-----------------------+
: :
+---------------------------------------+--------+
| CPCS_PDU |PAD|CPCS_PDU| AAL5
| payload | |trailer | CPCS_PDU
+---------------------------------------+--------+

Fig. 6.2: RFC1483 base encapsulation.

The value of the LLC is 0xAA-AA-03, the value of the OUI is 0x00-00-
00, and the value of the PID is 0x08-00. The classification of the
IPv4 and the ST2+ SCMP is determined by the IP version number, which
is located in the first four bits of the IPv4 or ST headers.

6.1.3 RFC1483 extension base encapsulation

The RFC1483 extension base encapsulation is the same as for RFC1483
base encapsulation, except that the value of the OUI is 0x00-00-5E
(IANA) and the value of the PID is 0xXX-XX (TBD).

The RFC1483 base encapsulation for the SCMP is ideal, but requires
modifying the IPv4 processing in the driver software of the WS or PC.
Therefore, the RFC1483 base encapsulation may be difficult to
implement. This encapsulation is designed to solve this problem.

6.2 Service Primitives Provided by Control Plane

RFC1819 ST2+ does not specify SCMP state machines. And the ST2+
over ATM protocol does not correspond to SCMP state machines.
Therefore, the control plane specification assumes the following.

o The ST2+ agent has ST2+ SCMP layer entities that correspond to the
next hops and the previous hop in the stream.

o The SCMP layer entity terminates ACK, ERROR, and timeout processing
and provides reliable SCMP delivery.

o The origin consists of an upper layer entity, ST2+ SCMP layer
entities for next hops, and a routing machine that delivers SCMP
messages between these entities.

o The intermediate agent consists of ST2+ SCMP layer entities for a
previous hop and for next hops and a routing machine that delivers
SCMP messages between these entities.

o The target consists of an upper layer entity, an ST2+ SCMP layer
entity for a previous hop, and a routing machine that delivers SCMP
messages between these entities.

At least, the ST2+ SCMP layer entity for the next hop provides the
following services to the routing machine.

o connect.req
This primitive sends a request for a CONNECT message transfer to
the ST2+ SCMP layer entity.

o change.req
This primitive sends a request for a CHANGE message transfer to the
ST2+ SCMP layer entity.

o accept.ind
This primitive indicates an ACCEPT message delivery from the ST2+
SCMP layer entity.

o disconnect.req
This primitive sends a request for a DISCONNECT message transfer to
the ST2+ SCMP layer entity.

o refuse.ind
This primitive indicates a REFUSE message delivery from the ST2+
SCMP layer entity, or indicates detection of an abnormal status
such as an illegal message or timeout in the ST2+ SCMP layer
entity.

At least, the ST2+ SCMP layer entity for the previous hop provides
the following services to the routing machine.

o connect.ind
This primitive indicates a CONNECT message delivery from the ST2+
SCMP layer entity.

o change.ind
This primitive indicates a CHANGE message delivery from the ST2+
SCMP layer entity.

o accept.req
This primitive sends a request for an ACCEPT message transfer to
the ST2+ SCMP layer entity.

o disconnect.ind
This primitive indicates a DISCONNECT message delivery from the
ST2+ SCMP layer entity, or indicates detection of an abnormal
status such as an illegal message or timeout in the ST2+ SCMP layer
entity.

o refuse.req
This primitive sends a request for a REFUSE message transfer to the
ST2+ SCMP layer entity.

6.3 Service Primitives Provided by UNI 3.1 Signaling

The UNI 3.1 signaling layer entity on the ST2+ over ATM control plane
provides the following services to the ST2+ SCMP layer entity. The
ST2+ over ATM protocol does not specify the UNI 3.1 signaling state

machines. These are defined in [10, 12, 13].

o setup.req
This primitive sends a request for a SETUP message transfer from
the ST2+ SCMP layer entity to the UNI 3.1 signaling layer entity.
The ST2+ SCMP layer entity that sent this primitive receives an
acknowledgment. If the setup succeeds the acknowledgment is a
setup.conf primitive and if the setup fails it is a release.ind or
release.conf primitive.

o setup.conf
This primitive indicates a CONNECT message delivery from the UNI
3.1 signaling layer entity to the ST2+ SCMP layer entity.

o setup.ind
This primitive indicates a SETUP message delivery from the UNI 3.1
signaling layer entity to the ST2+ SCMP layer entity. The ST2+
SCMP layer entity that received this primitive sends an
acknowledgment. If the setup is accepted the acknowledgment is a
setup.resp primitive and if the setup is rejected it is a
release.resp primitive if the state of the UNI 3.1 signaling layer
entity is U6; otherwise it is a release.req primitive.

o setup.resp
This primitive sends a request for a CONNECT message transfer from
the ST2+ SCMP layer entity to the UNI 3.1 signaling layer entity.
The ST2+ SCMP layer entity that sent this primitive receives an
acknowledgment. If the setup is completed the acknowledgment is a
setup-complete.ind primitive and if the setup fails it is a
release.ind or release.conf primitive.

o setup-complete.ind
This primitive indicates a CONNECT ACKNOWLEDGE message delivery
from the UNI 3.1 signaling layer entity to the ST2+ SCMP layer
entity.

o release.req
This primitive sends a request for a RELEASE message transfer from
the ST2+ SCMP layer entity to the UNI 3.1 signaling layer entity.
The ST2+ SCMP layer entity that sent this primitive receives an
acknowledgment that is a release.conf primitive.

o release.conf
This primitive indicates a RELEASE COMPLETE message delivery, or
indicates a RELEASE message delivery when the status of the UNI 3.1
signaling layer entity is U11, or indicates detection of an
abnormal status such as an illegal message or timeout in the UNI
3.1 signaling layer entity, from the UNI 3.1 signaling layer entity

to the ST2+ SCMP layer entity.

o release.ind
This primitive indicates a RELEASE message delivery from the UNI
3.1 signaling layer entity to the ST2+ SCMP layer entity when the
status of the UNI 3.1 signaling layer entity is other than U11.
The ST2+ SCMP layer entity that received this primitive sends an
acknowledgment that is a release.resp primitive. And this
primitive also indicates detection of an abnormal status such as an
illegal message or timeout in the UNI 3.1 signaling layer entity
and then a REFUSE message is transferred. In this case, the ST2+
SCMP layer entity that received this primitive receives a
release.conf primitive in succession.

o release.resp
This primitive sends a request for a RELEASE COMPLETE message
transfer from the ST2+ SCMP layer entity to the UNI 3.1 signaling
layer entity.

o add-party.req
This primitive sends a request for an ADD PARTY message transfer
from the ST2+ SCMP layer entity to the UNI 3.1 signaling layer
entity. The ST2+ SCMP layer entity that sent this primitive
receives an acknowledgment. If the setup is succeeds the
acknowledgment is an add-party.conf primitive and if the setup
fails it is a drop-party.conf primitive.

o add-party.conf
This primitive indicates an ADD PARTY ACKNOWLEDGE message delivery
from the UNI 3.1 signaling layer entity to the ST2+ SCMP layer
entity.

o drop-party.req
This primitive sends a request for a DROP PARTY message transfer
from the ST2+ SCMP layer entity to the UNI 3.1 signaling layer
entity. The ST2+ SCMP layer entity that sent this primitive
receives an acknowledgment that is a drop-party.conf primitive.

o drop-party.conf
This primitive indicates an ADD PARTY REJECT message delivery, or
indicates a DROP PARTY ACKNOWLEDGE message delivery, or indicates
detection of an abnormal status such as an illegal message or
timeout in the UNI 3.1 signaling layer entity, from the UNI 3.1
signaling layer entity to the ST2+ SCMP layer entity.

o drop-party.ind
This primitive indicates a DROP PARTY message delivery from the UNI
3.1 signaling layer entity to the ST2+ SCMP layer entity. The ST2+

SCMP layer entity that sent this primitive receives an
acknowledgment that is a drop-party.resp primitive.

o drop-party.resp
This primitive sends a request for a DROP PARTY ACKNOWLEDGE message
transfer from the ST2+ SCMP layer entity to the UNI 3.1 signaling
layer entity.

6.4 VC Style Selection Criteria

The ST2+ over ATM protocol supports PVC, the reverse channel of bi-
directional SVC, point-to-point SVC, and point-to-multipoint SVC for
ST2+ Data PDU transfer. And SVC supports both upstream and
downstream call initiation styles.

A 32-bit PVC identifier that is unique between neighboring ST2+
agents is assigned to each PVC. And the reverse channel of the bi-
------分隔线----------------------------
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容