rfc2641.txt
来自「RFC 的详细文档!」· 文本 代码 · 共 956 行 · 第 1/3 页
TXT
956 行
Network Working Group D. Hamilton
Request for Comments: 2641 D. Ruffen
Category: Informational Cabletron Systems Incorporated
August 1999
Cabletron's VlanHello Protocol Specification
Version 4
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 (1999). All Rights Reserved.
Abstract
The VlanHello protocol is part of the InterSwitch Message Protocol
(ISMP) which provides interswitch communication between switches
running Cabletron's SecureFast VLAN (SFVLAN) product. Switches use
the VlanHello protocol to discover their neighboring switches and
establish the topology of the switch fabric.
Table of Contents
1. Introduction...................................... 2
1.1 Data Conventions.............................. 2
2. VlanHello Protocol Operational Overview........... 2
2.1 Neighbor Discovery............................ 2
2.2 Port States................................... 3
2.3 Topology Events............................... 5
2.4 Timers........................................ 9
3. InterSwitch Message Protocol...................... 9
3.1 Frame Header.................................. 10
3.2 ISMP Packet Header............................ 11
3.3 ISMP Message Body............................. 12
4. Interswitch Keepalive Message..................... 13
5. Security Considerations........................... 16
6. References........................................ 16
7. Authors' Addresses................................ 16
8. Full Copyright Statement.......................... 17
Hamilton & Ruffen Informational [Page 1]
RFC 2641 Cabletron's VlanHello Protocol Version 4 August 1999
1. Introduction
This memo is being distributed to members of the Internet community
in order to solicit reactions to the proposals contained herein.
While the specification discussed here may not be directly relevant
to the research problems of the Internet, it may be of interest to
researchers and implementers.
1.1 Data Conventions
The methods used in this memo to describe and picture data adhere to
the standards of Internet Protocol documentation [RFC1700], in
particular:
The convention in the documentation of Internet Protocols is to
express numbers in decimal and to picture data in "big-endian"
order. That is, fields are described left to right, with the most
significant octet on the left and the least significant octet on
the right.
The order of transmission of the header and data described in this
document is resolved to the octet level. Whenever a diagram shows
a group of octets, the order of transmission of those octets is
the normal order in which they are read in English.
Whenever an octet represents a numeric quantity the left most bit
in the diagram is the high order or most significant bit. That
is, the bit labeled 0 is the most significant bit.
Similarly, whenever a multi-octet field represents a numeric
quantity the left most bit of the whole field is the most
significant bit. When a multi-octet quantity is transmitted the
most significant octet is transmitted first.
2. VlanHello Protocol Operational Overview
Switches use the VlanHello protocol to detect their neighboring
switches and establish the topology of the switch fabric.
2.1 Neighbor Discovery
At initialization, each switch sends an Interswitch Keepalive message
out all local ports except those which have been preconfigured such
that they cannot be Network ports (see Section 2.2). Then, as each
switch discovers its neighboring switches via incoming Interswitch
Keepalive messages, it notifies its local topology services (see
Section 2.3), which then build the topology tables for the switching
fabric.
Hamilton & Ruffen Informational [Page 2]
RFC 2641 Cabletron's VlanHello Protocol Version 4 August 1999
Each switch continues to send Interswitch Keepalive messages at
regular intervals (currently 5 seconds). If a switch has not heard
from one of its neighbors for some predetermined interval (see
Section 2.4), notification is sent to all interested services and the
neighboring switch is removed from the topology table.
Interswitch Keepalive messages are described in Section 4.
2.2 Port States
Each port on a switch can be in one of several different states.
These states are listed below. Figure 1 shows how the port state
changes within the VlanHello protocol.
o Unknown. This is the default state of all ports at
initialization.
o Network. A port is deemed a Network port when the switch has
received an Interswitch Keepalive message over the port from one
of its neighbor switches. A transition to this state triggers a
Neighbor Found event, notifying the local topology servers that
the interface is functioning and a 2-way conversation has been
established with the neighbor.
When the last switch is lost on a Network port, the state of the
switch reverts to either Network Only (see next state) or to
Unknown, and a Neighbor Lost event is triggered, notifying the
local topology servers that the interface is no longer
operational.
o Network Only. Certain types of port interfaces are incapable of
accessing user endstations and can only be used to access other
switches. Such ports are deemed Network Only ports. If the last
switch is lost from a port that has already been deemed a Network
port, the VlanHello protocol checks the condition of the port
interface. If it is the type of interface that can only be used
to access other switches, the state of the port is set to Network
Only. Otherwise, it reverts to Unknown.
o Standby. A port is deemed a Standby port under the following
conditions:
Hamilton & Ruffen Informational [Page 3]
RFC 2641 Cabletron's VlanHello Protocol Version 4 August 1999
o The neighbor switch on the port has a higher level of
functionality and it has determined that the local switch is
incompatible with that functionality. In this circumstance,
the MAC entry for the local switch in the Interswitch Keepalive
message received from the neighbor contains an assigned status
of Incompatible.
o The list of MAC entries in the Interswitch Keepalive message
received from the neighbor switch does not contain an entry for
the local switch. In this circumstance, the local switch
assumes that communication with its neighbor will be one-way
only.
The VlanHello protocol continues to listen for Interswitch
Keepalive messages on a Standby port, but does not transmit any
Interswitch Keepalive messages over the port. If a message is
received that removes the condition under which the port state was
set to Standby, the state of the port is set to Network.
o Going to Access. When any packet other than an Interswitch
Keepalive message is received over an Unknown port, the state of
the port is changed to Going to Access and a timer is activated.
If the timer expires without an Interswitch Keepalive message
being received over the port, the port state changes to Access.
o Access. A port is deemed an Access port when any packet other
than an Interswitch Keepalive message has been received over the
port and the Going to Access timer has expired. A port can also
be administratively designated an Access "control" port, meaning
the port is to remain an Access port, regardless of the type of
messages that are received on it. Interswitch Keepalive messages
are not sent over Access control ports.
Three other types of ports are recognized: the host management port,
host data port, and host control port. These ports are designated at
initialization and are used to access the host CPU. Interswitch
Keepalive messages are not sent over these ports.
Hamilton & Ruffen Informational [Page 4]
RFC 2641 Cabletron's VlanHello Protocol Version 4 August 1999
Packet in
|
V
+---------+
Packet in | Unknown |
| +---------+
G-A V |
Timer +----------+ no V
exp | Going to |<------[KA msg?] Packet in
<------| Access | | |
| +----------+ yes | V
V | V yes +---------+
+--------+ V [1-way?]------+-->| Standby |
| Access | [KA msg?] | ^ +---------+
+--------+ | | no | |
| V no | V
yes | [compatible?]----+ [KA msg?]
| | |
| | yes | yes
| V V
V +---------+ [1-way?]
+--------->| Network |<--+ |
+---------+ ^ | no
| | yes V
lost last | +<----[compatible?]
neighbor |
V
[network]
[ only? ]
|
+--------------+ yes | no +---------+
| Network Only |<-----------+----------->| Unknown |
+--------------+ +---------+
Figure 1: Port State Machine
2.3 Topology Events
When the VlanHello protocol discovers new information about the
status of one of its network ports, it notifies its local topology
service center so that the service center can build or modify the
topology tables for the switch fabric. This notification takes the
form of a system event, described in a structure known as a topology
relay structure. These structures are linked in a first-in/first-out
(FIFO) queue and processed by the topology servers in the order in
which they were received.
Hamilton & Ruffen Informational [Page 5]
RFC 2641 Cabletron's VlanHello Protocol Version 4 August 1999
A topology relay structure typically contains information from
Interswitch Keepalive messages received on the specified port, as
shown below.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
00 | Event |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
04 | Delta options mask |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
08 | Current options mask |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
12 | Port number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
16 | |
+ Port neighbor switch identifier +
| |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | Port neighbor IP address ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
28 | ... Port neighbor IP address | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Neighbor chassis MAC addr +
32 | |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
36 | Neighbor chassis IP address |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
40 | Neighbor functional level |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
44 | Topology agent |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
48 | Next event |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?