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 + -
显示快捷键?