RFC3292 - General Switch Management Protocol (GSMP) V3(3)

时间:2005-02-17 来源: 作者: 点击:
The behaviour is undefined if the port is taken down over which the GSMP session that controls the switch is running. (In this case the most probable behaviour would be for the switch either to ignor
  

The behaviour is undefined if the port is taken down over
which the GSMP session that controls the switch is running.
(In this case the most probable behaviour would be for the
switch either to ignore the message or to terminate the
current GSMP session and to initiate another session,

possibly with the backup controller, if any.) The correct
method to reset the link over which GSMP is running is to
issue an RSTACK message in the adjacency protocol.

Internal Loopback:
Function = 3. Data arriving at the output port from the
switch fabric are looped through to the input port to return
to the switch fabric. All of the functions of the input
port above the physical layer, e.g., header translation, are
performed upon the looped back data. Afterwards, the Port
Status of the port will be Internal Loopback.

External Loopback:
Function = 4. Data arriving at the input port from the
external communications link are immediately looped back to
the communications link at the physical layer without
entering the input port. None of the functions of the input
port, above the physical layer are performed upon the looped
back data. Afterwards, the Port Status of the port will be
External Loopback.

Bothway Loopback:
Function = 5. Both internal and external loopbacks are
performed. Afterwards, the Port Status of the port will be
Bothway Loopback.

Reset Input Port:
Function = 6. All connections that originate at the
specified input port MUST be deleted and the input and
output port hardware re-initialised. On completion of the
operation, all dynamically assigned Label values for the
specified input port MUST be unassigned, i.e., no
connections will be established in the Label space that GSMP
controls on this input port. The range of labels that may
be controlled by GSMP on this port will be set to the
default values specified in the Port Configuration message.
The transmit data rate of the output port MUST be set to its
default value. The Port Session Number is not changed by
the Reset Input Port function. Afterwards, the Port Status
of the port will be Unavailable.

Reset Flags:
Function = 7. This function is used to reset the Event
Flags and Flow Control Flags. For each bit that is set in
the Event Flags field, the corresponding Event Flag in the
switch port MUST be reset to 0. For each bit that is set in
the Flow Control Flags field, the corresponding Flow Control
Flag in the switch port MUST be toggled; i.e., flow control

for the corresponding event is turned off if is currently on
and it is turned on if it is currently off. The Port Status
of the port is not changed by this function.

Set Transmit Data Rate:
Function = 8. Sets the transmit data rate of the output
port as close as possible to the rate specified in the
Transmit Data Rate field. In the success response message,
the Transmit Data Rate MUST indicate the actual transmit
data rate of the output port. If the transmit data rate of
the requested output port cannot be changed a failure
response MUST be returned with the Code field indicating:
"43: The transmit data rate of this output port cannot be
changed". If the transmit data rate of the requested output
port can be changed, but the value of the Transmit Data Rate
field is beyond the range of acceptable values, a failure
response MUST be returned with the Code field indicating:
"44: Requested transmit data rate out of range for this
output port". In the failure response message, the Transmit
Data Rate MUST contain the same value as contained in the
request message that caused the failure. The transmit data
rate of the output port is not changed by the Bring Up, Take
Down, or any of the Loopback functions. It is returned to
the default value by the Reset Input Port function.

Transmit Data Rate
This field is only used in request and success response
messages with the Function field set to "Set Transmit Data
Rate". It is used to set the output data rate of the output
port. It is specified in cells/s and bytes/s. If the Transmit
Data Rate field contains the value 0xFFFFFFFF the transmit data
rate of the output port SHOULD be set to the highest valid
value.

Event Flags
Field in the request message that is used to reset the Event
Flags in the switch port indicated by the Port field. Each
Event Flag in a switch port corresponds to a type of Event
message. When a switch port sends an Event message, it sets
the corresponding Event Flag on that port. Depending on the
setting in the Flow Control Flag, a port is either subject to
flow control or not. If it is subject to flow control, then it
is not permitted to send another Event message of the same type
before the Event Flag has been reset. To reset an event flag,
the Function field in the request message is set to "Reset
Flags". For each bit that is set in the Event Flags field, the
corresponding Event Flag in the switch port is reset.

The Event Flags field is only used in a request message with
the Function field set to "Reset Event Flags". For all other
values of the Function field, the Event Flags field is not
used. In the success response message the Event Flags field
MUST be set to the current value of the Event Flags for the
port, after the completion of the operation specified by the
request message, for all values of the Function field. Setting
the Event Flags field to all zeros in a "Reset Event Flags"
request message allows the controller to obtain the current
state of the Event Flags and the current Event Sequence Number
of the port without changing the state of the Event Flags.

The correspondence between the types of Event messages and the
bits of the Event Flags field is as follows:

1
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|U|D|I|N|Z|A|x|x|x|x|x|x|x|x|x|x|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

U: Port Up Bit 0, (most significant bit)
D: Port Down Bit 1,
I: Invalid Label Bit 2,
N: New Port Bit 3,
Z: Dead Port Bit 4,
A: Adjacency Event Bit 5,
x: Unused Bits 6-15.

Flow Control Flags Field
The flags in this field are used to indicate whether the flow
control mechanism described in the Events Flag field is turned
on or not. If the Flow Control Flag is set, then the flow
control mechanism for that event on that port is activated. To
toggle the flow control mechanism, the Function field in the
request message is set to "Reset Flags". When doing a reset,
for each flag that is set in the Flow Control Flags field, the
corresponding flow control mechanism MUST be toggled.

The Flow Control Flags correspond to the same event definitions
as defined for the Event Flag.

6.2 Label Range Message

The default label range, Min Label to Max Label, is specified for
each port by the Port Configuration or the All Ports Configuration
messages. When the protocol is initialised, before the transmission
of any Label Range messages, the label range of each port will be set
to the default label range. (The default label range is dependent
upon the switch design and configuration and is not specified by the
GSMP protocol.) The Label Range message allows the range of labels
supported by a specified port, to be changed. Each switch port MUST
declare whether it supports the Label Range message in the Port
Configuration or the All Ports Configuration messages. The Label
Range message is:

Message Type = 33

The Label Range message has the following format for the request and
success response messages:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version | Message Type | Result | Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Partition ID | Transaction Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|I| SubMessage Number | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Port Session Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Q|M|D|x| Range Count | Range Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Label Range Block ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Note: Fields and Parameters that have been explained in the
description of the general messages will not be explained in
this section. Please refer to section 3.1 for details.

Each element of the Label Range Block has the following format:

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|V|C| |
+-+-+-+-+ Min Label |
~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x| |
+-+-+-+-+ Max Label |
~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Remaining Labels |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Flags

Q: Query
If the Query flag is set in a request message, the switch
MUST respond with the current range of valid labels. The
current label range is not changed by a request message with
the Query flag set. If the Query flag is zero, the message
is requesting a label change operation.

M: Multipoint Query
If the Multipoint Query flag is set the switch MUST respond
with the current range of valid specialized multipoint
labels. The current label range is not changed by a request
message with the Multipoint Query flag set.

D: Non-contiguous Label Range Indicator
This flag will be set in a Query response if the labels
available for assignment belong to a non-contiguous set.

V: Label
The Label flag use is port type specific.

C: Multipoint Capable
Indicates label range that can be used for multipoint
connections.

Range Count
Count of Label Range elements contained in the Label Range
Block.

Range Length
Byte count in the Label Range Block.

Min Label
The minimum label value in the range.

Max Label
The maximum label value in the range.

Remaining Labels
The maximum number of remaining labels that could be requested
for allocation on the specified port.

The success response to a Label Range message requesting a change of
label range is a copy of the request message with the Remaining
Labels field updated to the new values after the Label Range
operation.

If the switch is unable to satisfy a request to change the Label
range, it MUST return a failure response message with the Code field
set to: "40: Cannot support one or more requested label ranges". In
this failure response message, the switch MUST use the Min Label and
Max Label fields to suggest a label range that it is able to satisfy.

A Label Range request message may be issued regardless of the Port
Status or the Line Status of the target switch port. If the Port
field of the request message contains an invalid port (a port that
does not exist or a port that has been removed from the switch) a
failure response message MUST be returned with the Code field set to,
"4: One or more of the specified ports does not exist".

If the Query flag is set in the request message, the switch MUST
reply with a success response message containing the current range of
valid labels that are supported by the port. The Min Label and Max
Label fields are not used in the request message.

If the Multipoint Query flag is set in the request message and the
switch does not support a range of valid multipoint labels, then the
switch MUST reply with a failure response message with the Code field
set to, "42: Specialised multipoint labels not supported". The Min
Label and Max Label fields are not used in the Multipoint request
message.

If a label range changes and there are extant connection states with
labels used by the previous label range, a success response message
MUST be returned with the Code field set to, "46: One or more labels
are still used in the previous Label Range". This action indicates
that the label range has successfully changed but with a warning that
there are extant connection states for the previous label range.

6.2.1 Labels

6.2.1.1 ATM Labels

If the Label Type = ATM Label, the labels range message MUST be
interpreted as an ATM Label as shown:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|V|C| ATM Label (0x100) | Label Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x| min VPI | min VCI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x| ATM Label (0x100) | Label Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x| max VPI | max VCI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Remaining VPI's | Remaining VCI's |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

V: Label
If the Label flag is set, the message refers to a range of
VPI's only. The Min VCI and Max VCI fields are unused. If the
Label flag is zero the message refers to a range of VCI's on
either one VPI or on a range of VPI's.

Min VPI, Max VPI
Specify a range of VPI values, Min VPI to Max VPI inclusive. A
single VPI may be specified with a Min VPI and a Max VPI having
the same value. In a request message, if the value of the Max
VPI field is less than or equal to the value of the Min VPI
field, the requested range is a single VPI with a value equal
to the Min VPI field. Zero is a valid value. In a request
message, if the Query flag is set, and the Label flag is zero,
the Max VPI field specifies a single VPI and the Min VPI field
is not used. The maximum valid value of these fields for both
request and response messages is 0xFFF.

Min VCI, Max VCI
Specify a range of VCI values, Min VCI to Max VCI inclusive. A
single VCI may be specified with a Min VCI and a Max VCI having
the same value. In a request message, if the value of the Max
VCI field is less than or equal to the value of the Min VCI
field, the requested range is a single VCI with a value equal
to the Min VCI field. Zero is a valid value. (However, VPI=0,
VCI=0 is not available as a virtual channel connection as it is
used as a special value in ATM to indicate an unassigned cell.)

Remaining VPI's, Remaining VCI's
These fields are unused in the request message. In the success
response message and in the failure response message these
fields give the maximum number of remaining VPI's and VCI's
that could be requested for allocation on the specified port
(after completion of the requested operation in the case of the
success response). It gives the switch controller an idea of
how many VPI's and VCI's it could request. The number given is
the maximum possible given the constraints of the switch
hardware. There is no implication that this number of VPI's
and VCI's is available to every switch port.

If the Query flag and the Label flag are set in the request message,
the switch MUST reply with a success response message containing the
current range of valid VPI's that are supported by the port. The Min
VPI and Max VPI fields are not used in the request message.

If the Query flag is set and the Label flag is zero in the request
message, the switch MUST reply with a success response message
containing the current range of valid VCI's that are supported by the
VPI specified by the Max VPI field. If the requested VPI is invalid,
a failure response MUST be returned indicating: "13: One or more of
the specified Input Labels is invalid". The Min VPI field is not
used in either the request or success response messages.

If the Query flag is zero and the Label flag is set in the request
message, the Min VPI and Max VPI fields specify the new range of
VPI's to be allocated to the input port specified by the Port field.
The range of VPI's previously allocated to this port SHOULD be
increased or decreased to the specified value.

If the Query flag and the Label flag are zero in the request message,
the Min VCI and Max VCI fields specify the range of VCI's to be
allocated to each of the VPI's specified by the VPI range. The range
of VCI's previously allocated to each of the VPI's within the
specified VPI range on this port, it SHOULD be increased or decreased
to the specified value. The allocated VCI range MUST be the same on
each of the VPI's within the specified VPI range.

If the switch is unable to satisfy a request to change the label
range, it MUST return a failure response message with the Code field
set to: "40: Cannot support one or more requested label ranges". If
the switch is unable to satisfy a request to change the VPI, the
switch MUST use the Min VPI and Max VPI fields to suggest a VPI range
that it would be able to satisfy and set the VCI fields to zero, or
if the switch is unable to satisfy a request to change the VCI range

on all VPI's within the requested VPI range, the switch MUST use the
Min VPI, Max VPI, Min VCI, and Max VCI fields to suggest a VPI and
VCI range that it would be able to satisfy.

In all other failure response messages for the label range operation,
the switch MUST return the values of Min VPI, Max VPI, Min VCI, and
Max VCI from the request message.

While switches can typically support all 256 or 4096 VPI's, the VCI
range that can be supported is often more constrained. Often the Min
VCI MUST be 0 or 32. Typically all VCI's within a particular VPI
MUST be contiguous. The hint in the failure response message allows
the switch to suggest a label range that it could satisfy in view of
its particular architecture.

While the Label Range message is defined to specify both a range of
VPI's and a range of VCI's within each VPI, the most likely use is to
change either the VPI range or the range of VCI's within a single
VPI. It is possible for a VPI to be valid but to be allocated no
valid VCI's. Such a VPI could be used for a virtual path connection,
but to support virtual channel connections it would need to be
allocated a range of VCI's.

6.2.1.2 Frame Relay Labels

If the Label Type = FR Label, the labels range message MUST be
interpreted as Frame Relay Labels as shown:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|V|C| FR Label (0x101) | Label Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x| Res |Len| Min DLCI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x| FR Label (0x101) | Label Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x| Res |Len| Max DLCI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Remaining DLCI |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

V: Label
The Label flag is not used.

Res
The Res field is reserved in [21], i.e., it is not explicitly
reserved by GSMP.

Len
The Len field specifies the number of bits of the DLCI. The
following values are supported:

Len DLCI bits
0 10
2 23

Min DLCI, Max DLCI
Specify a range of DLCI values, Min DLCI to Max DLCI inclusive.
The values SHOULD be right justified in the 23-bit fields and
the preceding bits SHOULD be set to zero. A single DLCI may be
specified with a Min DLCI and a Max DLCI having the same value.
In a request message, if the value of the Max DLCI field is
less than or equal to the value of the Min DLCI field, the
requested range is a single DLCI with a value equal to the Min
DLCI field. Zero is a valid value.

Remaining DLCI's
This field is unused in the request message. In the success
response message and in the failure response message, this
field gives the maximum number of remaining DLCI's that could
be requested for allocation on the specified port (after
completion of the requested operation in the case of the
success response). It gives the switch controller an idea of
how many DLCI's it could request. The number given is the
maximum possible given the constraints of the switch hardware.
There is no implication that this number of DLCI's is available
to every switch port.

6.2.1.3 MPLS Generic Labels

The Label Range Block for PortTypes using MPLS labels. These types
of labels are for use on links for which label values are independent
of the underlying link technology. Examples of such links are PPP
and Ethernet. On such links the labels are carried in MPLS label
stacks [14]. If Label Type = MPLS Gen Label, the labels range
message MUST be interpreted as MPLS Generic Label as shown:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|V|C| MPLS Gen Label (0x102)| Label Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x|x|x|x|x|x|x|x|x| Min MPLS Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x| MPLS Gen Label (0x102)| Label Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|x|x|x|x|x|x|x|x|x|x|x| Max MPLS Label |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Remaining Labels |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

V: Label
The Label flag is not used.

Min MPLS Label, Max MPLS Label
Specify a range of MPLS label values, Min MPLS Label to Max
MPLS Label inclusive. The Max and Min MPLS label fields are 20
bits each.

Remaining MPLS Labels
This field is unused in the request message. In the success
response message and in the failure response message this field
gives the maximum number of remaining MPLS Labels that could be
requested for allocation on the specified port (after
completion of the requested operation in the case of the
success response). It gives the switch controller an idea of
how many MPLS Labels it could request. The number given is the
maximum possible given the constraints of the switch hardware.
There is no implication that this number of Labels is available
to every switch port.

6.2.1.4 FEC Labels

The Label Range message is not used for FEC Labels and is for further
study.

7. State and Statistics Messages

The state and statistics messages permit the controller to request
the values of various hardware counters associated with the switch
input and output ports and connections. They also permit the
controller to request the connection state of a switch input port.
The Connection Activity message is used to determine whether one or

more specific connections have recently been carrying traffic. The
Statistics message is used to query the various port and connection
traffic and error counters.

The Report Connection State message is used to request an input port
to report the connection state for a single connection, a single ATM
virtual path connection, or for the entire input port.

7.1 Connection Activity Message

The Connection Activity message is used to determine whether one or
more specific connections have recently been carrying traffic. The
Connection Activity message contains one or more Activity Records.
Each Activity Record is used to request and return activity
information concerning a single connection. Each connection is
specified by its input port and Input Label which are specified in
the Input Port and Input Label fields of each Activity Record.

Two forms of activity detection are supported. If the switch
supports per connection traffic accounting, the current value of the
traffic counter for each specified connection MUST be returned. The
units of traffic counted are not specified but will typically be
either cells or frames. The controller MUST compare the traffic
counts returned in the message with previous values for each of the
specified connections to determine whether each connection has been
active in the intervening period. If the switch does not support per
connection traffic accounting, but is capable of detecting per
connection activity by some other unspecified means, the result may
be indicated for each connection using the Flags field. The
Connection Activity message is:

Message Type = 48

The Connection Activity request and success response messages have
the following format:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version | Message Type | Result | Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Partition ID | Transaction Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|I| SubMessage Number | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Number of Records |x x x x x x x x x x x x x x x x|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Activity Records ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Note: Fields and Parameters that have been explained in the
description of the general messages will not be explained in
this section. Please refer to section 3.1 for details.

Number of Records
Field specifies the number of Activity Records to follow. The
number of Activity records in a single Connection Activity
message MUST NOT cause the packet length to exceed the maximum
transmission unit defined by the encapsulation.

Each Activity Record has the following format:

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|V|C|A|x| TC Count | TC Block Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Input Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Traffic Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|S|x|x| |
+-+-+-+-+ Input Label |
~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Flags

V: Valid Record
In the success response message the Valid Record flag is
used to indicate an invalid Activity Record. The flag MUST
be zero if any of the fields in this Activity Record are
invalid, if the input port specified by the Input Port field
does not exist, or if the specified connection does not
exist. If the Valid Record flag is zero in a success
response message, the Counter flag, the Activity flag, and
the Traffic Count field are undefined. If the Valid Record
flag is set, the Activity Record is valid, and the Counter
and Activity flags are valid. The Valid Record flag is not
used in the request message.

C: Counter
In a success response message, if the Valid Record flag is
set, the Counter flag, if zero, indicates that the value in
the Traffic Count field is valid. If set, it indicates that
the value in the Activity flag is valid. The Counter flag
is not used in the request message.

A: Activity
In a success response message, if the Valid Record and
Counter flags are set, the Activity flag, if set, indicates
that there has been some activity on this connection since
the last Connection Activity message for this connection.
If zero, it indicates that there has been no activity on
this connection since the last Connection Activity message
for this connection. The Activity flag is not used in the
request message.

TC Count
In cases where per connection traffic counting is supported,
this field contains the count of Traffic Count entries.

TC Block Length
In cases where per connection traffic counting is supported,
this field contains the Traffic Count block size in bytes.

Input Port
Identifies the port number of the input port on which the
connection of interest originates in order to identify the
connection (regardless of whether the traffic count for the
connection is maintained on the input port or the output port).

Input Label
Fields identify the specific connection for which statistics
are being requested.

Traffic Count
Field is not used in the request message. In the success
response message, if the switch supports per connection traffic
counting, the Traffic Count field MUST be set to the value of a
free running, connection specific, 64-bit traffic counter
counting traffic flowing across the specified connection. The
value of the traffic counter is not modified by reading it. If
per connection traffic counting is supported, the switch MUST
report the Connection Activity result using the traffic count
rather than using the Activity flag.

The format of the failure response is the same as the request message
with the Number of Records field set to zero and no Connection
Activity records returned in the message. If the switch is incapable
of detecting per connection activity, a failure response MUST be
returned indicating, "3: The specified request is not implemented on
this switch".

7.2 Statistics Messages

The Statistics messages are used to query the various port,
connection and error counters.

The Statistics request messages have the following format:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version | Message Type | Result | Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Partition ID | Transaction Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|I| SubMessage Number | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|S|x|x| |
+-+-+-+-+ Label |
~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Note: Fields and Parameters that have been explained in the
description of the general messages will not be explained in
this section. Please refer to section 3.1 for details.

Label
The Label Fields identifies the specific connection for which
statistics are being requested.

The success response for the Statistics message has the following
format:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version | Message Type | Result | Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Partition ID | Transaction Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|I| SubMessage Number | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|S|x|x| |
+-+-+-+-+ Label |
~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Input Cell Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Input Frame Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Input Cell Discard Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Input Frame Discard Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Header Checksum Error Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Input Invalid Label Count +
| |

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Output Cell Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Output Frame Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Output Cell Discard Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
+ Output Frame Discard Count +
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Note: Field and Parameters that have been explained in the
description of the general messages will not be explained in
this section. Please refer to section 3.1 for details.

Input Cell Count, Output Cell Count
Give the value of a free running 64-bit counter counting cells
arriving at the input or departing from the output
respectively. These fields are relevant for label type = ATM,
for all other label types these fields SHOULD be set to zero by
the sender and ignored by the receiver.

Input Frame Count, Output Frame Count
Give the value of a free running 64-bit counter counting frames
(packets) arriving at the input or departing from the output
respectively. These fields are relevant for label types = FR
and MPLS, for all other label types these fields SHOULD be set
to zero by the sender and ignored by the receiver.

Input Cell Discard Count, Output Cell Discard Count
Give the value of a free running 64-bit counter counting cells
discarded due to queue overflow on an input port or on an
output port respectively. These fields are relevant for label
type = ATM, for all other label types these fields SHOULD be
set to zero by the sender and ignored by the receiver.

Input Frame Discard Count, Output Frame Discard Count
Give the value of a free running 64-bit counter counting frames
discarded due to congestion on an input port or on an output
port respectively. These fields are relevant for label

types = FR and MPLS, for all other label types these fields
SHOULD be set to zero by the sender and ignored by the
receiver.

Header Checksum Error Count
Gives the value of a free running 64-bit counter counting cells
or frames discarded due to header checksum errors on arrival at
an input port. For an ATM switch this would be the HEC count.

Invalid Label Count
Gives the value of a free running 64-bit counter counting cells
or frames discarded because their Label is invalid on arrival
at an input port.

7.2.1 Port Statistics Message

The Port Statistics message requests the statistics for the switch
port specified in the Port field. The contents of the Label field in
the Port Statistics request message is ignored. All of the count
fields in the success response message refer to per-port counts
regardless of the connection to which the cells or frames belong.
Any of the count fields in the success response message not supported
by the port MUST be set to zero. The Port Statistics message is:

Message Type = 49

7.2.2 Connection Statistics Message

The Connection Statistics message requests the statistics for the
connection specified in the Label field that originates on the switch
input port specified in the Port field. All of the count fields in
the success response message refer only to the specified connection.
The Header Checksum Error Count and Invalid Label Count fields are
not connection specific and MUST be set to zero. Any of the other
count fields not supported on a per connection basis MUST be set to
zero in the success response message. The Connection Statistics
message is:

Message Type = 50

7.2.3 QoS Class Statistics Message

The QoS Class Statistics message is not supported in this version of
GSMP.

Message Type = 51 is reserved.

7.3 Report Connection State Message

The Report Connection State message is used to request an input port
to report the connection state for a single connection or for the
entire input port. The Report Connection State message is:

Message Type = 52

The Report Connection State request message has the following format:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version | Message Type | Result | Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Partition ID | Transaction Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|I| SubMessage Number | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Input Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|S|A|V| |
+-+-+-+-+ Input Label |
~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Note: Field and Parameters that have been explained in the
description of the general messages will not be explained in
this section. Please refer to section 3.1 for details.

Input Port
Identifies the port number of the input port for which the
connection state is being requested.

Flags

A: All Connections
If the All Connections flag is set, the message requests the
connection state for all connections that originate at the
input port specified by the Input Port field. In this case
the Input Label field and the Label flag are unused.

V: ATM VPI
The ATM VPI flag may only be set for ports with
PortType=ATM. If the switch receives a Report Connection
State message in which the ATM VPI flag set and in which the
input port specified by the Input Port field does not have
PortType=ATM, the switch MUST return a Failure response "28:
ATM Virtual Path switching is not supported on non-ATM
ports".

If the All Connections flag is zero and the ATM VPI flag is
also zero, the message requests the connection state for the
connection that originates at the input port specified by
the Port and Input Label fields.

ATM specific procedures:
If the All Connections flag is zero and the ATM VPI flag is
set and the input port specified by the Input Port field has
LabelType=ATM, the message requests the connection state for
the virtual path connection that originates at the input
port specified by the Input Port and Input VPI fields. If
the specified Input VPI identifies an ATM virtual path
connection (i.e., a single switched virtual path) the state
for that connection is requested. If the specified Input
VPI identifies a virtual path containing virtual channel
connections, the message requests the connection state for
all virtual channel connections that belong to the specified
virtual path.

Input Label
Field identifies the specific connection for which the
connection state is being requested. For requests that do not
require a connection to be specified, the Input Label field is
not used.

The Report Connection State success response message has the
following format:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version | Message Type | Result | Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Partition ID | Transaction Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|I| SubMessage Number | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Input Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Connection Records ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Note: Fields and Parameters that have been explained in the
description of the general messages will not be explained in
this section. Please refer to section 3.1 for details.

Input Port
Is the same as the Input Port field in the request message. It
identifies the port number of the input port for which the
connection state is being reported.

Sequence Number
In the case that the requested connection state cannot be
reported in a single success response message, each successive
success response message, in reply to the same request message,
MUST increment the Sequence Number. The Sequence Number of the
first success response message, in response to a new request
message, MUST be zero.

Connection Records
Each success response message MUST contain one or more
Connection Records. Each Connection Record specifies a single
point-to-point or point-to-multipoint connection. The number
of Connection Records in a single Report Connection State
success response MUST NOT cause the packet length to exceed the
maximum transmission unit defined by the encapsulation. If the
requested connection state cannot be reported in a single
success response message, multiple success response messages
MUST be sent. All success response messages that are sent in

response to the same request message MUST have the same Input
Port and Transaction Identifier fields as the request message.
A single Connection Record MUST NOT be split across multiple
success response messages. "More" in the Result field of a
response message indicates that one or more further success
response messages should be expected in response to the same
request message. "Success" in the Result field indicates that
the response to the request has been completed. The Result
values are defined in chapter 3.1.1.

Each Connection Record has the following format:

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|A|V|P| Record Count | Record Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|S|x|x| |
+-+-+-+-+ Input Label |
~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| |
~ Output Branch Records ~
| |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Flags

A: All Connections

V: ATM VPI
For the first Connection Record in each success response
message, the All Connections and the ATM VPI flags MUST be
the same as those of the request message. For successive
Connection Records in the same success response message,
these flags are not used.

P: ATM VPC
The ATM VPC flag may only be set for ports with
PortType=ATM. The ATM VPC flag, if set and only if set,
indicates that the Connection Record refers to an ATM
virtual path connection.

Input Label
The input label of the connection specified in this Connection
Record.

Record Count
Count of Output Branch Records included in a response message.

Record Length
Length in bytes of Output Branch Records field

Output Branch Records
Each Connection Record MUST contain one or more Output Branch
Records. Each Output Branch Record specifies a single output
branch belonging to the connection identified by the Input
Label field of the Connection Record and the Input Port field
of the Report Connection State message. A point-to-point
connection will require only a single Output Branch Record. A
point-to-multipoint connection will require multiple Output
Branch Records. If a point-to-multipoint connection has more
output branches than can fit in a single Connection Record
contained within a single success response message, that
connection may be reported using multiple Connection Records in
multiple success response messages.

Each Output Branch Record has the following format:

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Output Port |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|x|S|x|x| |
+-+-+-+-+ Output Label |
~ ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Output Port
The output port of the switch to which this output branch is
routed.

Output Label
The output label of the output branch specified in this Output
Branch Record.

ATM specific procedures:
If this Output Branch Record is part of a Connection Record
that specifies a virtual path connection (the ATM VPC flag
is set) the Output VCI field is unused.

A Report Connection State request message may be issued regardless of
the Port Status or the Line Status of the target switch port.

If the Input Port of the request message is valid, and the All
Connections flag is set, but there are no connections established on
that port, a failure response message MUST be returned with the Code
field set to, "10: General Message Failure". For the Report
Connection State message, this failure code indicates that no

connections matching the request message were found. This failure
message SHOULD also be returned if the Input Port of the request
message is valid, the All Connections flag is zero, and no
connections are found on that port matching the specified connection.

8. Configuration Messages

The configuration messages permit the controller to discover the
capabilities of the switch. Three configuration request messages
have been defined: Switch, Port, and All Ports.

8.1 Switch Configuration Message

The Switch Configuration message requests the global (non port-
specific) configuration for the switch. The Switch Configuration
message is:

Message Type = 64

The Port field is not used in the switch configuration message.

The Switch Configuration message has the following format:

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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Version | Message Type | Result | Code |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Partition ID | Transaction Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|I| SubMessage Number | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| MType | MType | MType | MType |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Firmware Version Number | Window Size |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Switch Type | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +
| Switch Name |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Max Reservations |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

Note: Fields and Parameters that have been explained in the
description of the general messages will not be explained in
this section. Please refer to section 3.1 for details.

MType
Represents an alternative QoS Configuration type. In the
request message the requested MType is in the most significant
(leftmost) MType byte; the other three MType bytes are unused.
The reply message will either accept the MType request by
including the requested MType in the leftmost MType field of
the response message or it will reject the MType request by
responding with MType=0, the default MType, in the first MType
field. Optionally, in the case of a rejection, the switch
reply can include up to 3 additional MType values, each of
which indicates an available alternative QoS Configuration. A
switch that supports only the default QoS Configuration always
returns MType=0 in all four MType fields. MType negotiation is
discussed in section 8.1.1.

0 - Indicates use of the default GSMP model
1-200 - Reserved
201-255 - Experimental

Firmware Version Number
The version number of the switch control firmware installed.

Window Size
The maximum number of unacknowledged request messages that may
be transmitted by the controller without the possibility of
loss. This field is used to prevent request messages being
lost in the switch because of overflow in the receive buffer.
The field is a hint to the controller. If desired, the
controller may experiment with higher and lower window sizes to
determine heuristically the best window size.

Switch Type
A 16-bit field allocated by the manufacturer of the switch.
(For these purposes, the manufacturer of the switch is assumed
to be the organisation identified by the OUI in the Switch Name
field.) The Switch Type identifies the product. When the
Switch Type is combined with the OUI from the Switch Name the
product is uniquely identified. Network Management may use
this identification to obtain product related information from
a database.

Switch Name
A 48-bit quantity that is unique within the operational context
of the device. A 48-bit IEEE 802 MAC address, if available,
may be used as the Switch Name. The most significant 24 bits
------分隔线----------------------------
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
最新评论 查看所有评论
发表评论 查看所有评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 密码: 验证码:
推荐内容