home *** CD-ROM | disk | FTP | other *** search
/ Internet Core Protocols / Oreilly-InternetCoreProtocols.iso / RFCs / rfc2641.txt < prev    next >
Encoding:
Text File  |  1999-10-14  |  34.8 KB  |  956 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7. Network Working Group                                           D. Hamilton
  8. Request for Comments: 2641                                        D. Ruffen
  9. Category: Informational                      Cabletron Systems Incorporated
  10.                                                                 August 1999
  11.  
  12.  
  13.               Cabletron's VlanHello Protocol Specification
  14.                                Version 4
  15.  
  16. Status of this Memo
  17.  
  18.    This memo provides information for the Internet community.  It does
  19.    not specify an Internet standard of any kind.  Distribution of this
  20.    memo is unlimited.
  21.  
  22. Copyright Notice
  23.  
  24.    Copyright (C) The Internet Society (1999).  All Rights Reserved.
  25.  
  26. Abstract
  27.  
  28.    The VlanHello protocol is part of the InterSwitch Message Protocol
  29.    (ISMP) which provides interswitch communication between switches
  30.    running Cabletron's SecureFast VLAN (SFVLAN) product.  Switches use
  31.    the VlanHello protocol to discover their neighboring switches and
  32.    establish the topology of the switch fabric.
  33.  
  34. Table of Contents
  35.  
  36.    1. Introduction......................................  2
  37.       1.1 Data Conventions..............................  2
  38.    2. VlanHello Protocol Operational Overview...........  2
  39.       2.1 Neighbor Discovery............................  2
  40.       2.2 Port States...................................  3
  41.       2.3 Topology Events...............................  5
  42.       2.4 Timers........................................  9
  43.    3. InterSwitch Message Protocol......................  9
  44.       3.1 Frame Header.................................. 10
  45.       3.2 ISMP Packet Header............................ 11
  46.       3.3 ISMP Message Body............................. 12
  47.    4. Interswitch Keepalive Message..................... 13
  48.    5. Security Considerations........................... 16
  49.    6. References........................................ 16
  50.    7. Authors' Addresses................................ 16
  51.    8. Full Copyright Statement.......................... 17
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58. Hamilton & Ruffen            Informational                      [Page 1]
  59.  
  60. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  61.  
  62.  
  63. 1. Introduction
  64.  
  65.    This memo is being distributed to members of the Internet community
  66.    in order to solicit reactions to the proposals contained herein.
  67.    While the specification discussed here may not be directly relevant
  68.    to the research problems of the Internet, it may be of interest to
  69.    researchers and implementers.
  70.  
  71. 1.1 Data Conventions
  72.  
  73.    The methods used in this memo to describe and picture data adhere to
  74.    the standards of Internet Protocol documentation [RFC1700], in
  75.    particular:
  76.  
  77.       The convention in the documentation of Internet Protocols is to
  78.       express numbers in decimal and to picture data in "big-endian"
  79.       order.  That is, fields are described left to right, with the most
  80.       significant octet on the left and the least significant octet on
  81.       the right.
  82.  
  83.       The order of transmission of the header and data described in this
  84.       document is resolved to the octet level.  Whenever a diagram shows
  85.       a group of octets, the order of transmission of those octets is
  86.       the normal order in which they are read in English.
  87.  
  88.       Whenever an octet represents a numeric quantity the left most bit
  89.       in the diagram is the high order or most significant bit.  That
  90.       is, the bit labeled 0 is the most significant bit.
  91.  
  92.       Similarly, whenever a multi-octet field represents a numeric
  93.       quantity the left most bit of the whole field is the most
  94.       significant bit.  When a multi-octet quantity is transmitted the
  95.       most significant octet is transmitted first.
  96.  
  97. 2. VlanHello Protocol Operational Overview
  98.  
  99.    Switches use the VlanHello protocol to detect their neighboring
  100.    switches and establish the topology of the switch fabric.
  101.  
  102. 2.1 Neighbor Discovery
  103.  
  104.    At initialization, each switch sends an Interswitch Keepalive message
  105.    out all local ports except those which have been preconfigured such
  106.    that they cannot be Network ports (see Section 2.2).  Then, as each
  107.    switch discovers its neighboring switches via incoming Interswitch
  108.    Keepalive messages, it notifies its local topology services (see
  109.    Section 2.3), which then build the topology tables for the switching
  110.    fabric.
  111.  
  112.  
  113.  
  114. Hamilton & Ruffen            Informational                      [Page 2]
  115.  
  116. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  117.  
  118.  
  119.    Each switch continues to send Interswitch Keepalive messages at
  120.    regular intervals (currently 5 seconds).  If a switch has not heard
  121.    from one of its neighbors for some predetermined interval (see
  122.    Section 2.4), notification is sent to all interested services and the
  123.    neighboring switch is removed from the topology table.
  124.  
  125.    Interswitch Keepalive messages are described in Section 4.
  126.  
  127. 2.2 Port States
  128.  
  129.    Each port on a switch can be in one of several different states.
  130.    These states are listed below.  Figure 1 shows how the port state
  131.    changes within the VlanHello protocol.
  132.  
  133.    o  Unknown.  This is the default state of all ports at
  134.       initialization.
  135.  
  136.    o  Network.  A port is deemed a Network port when the switch has
  137.       received an Interswitch Keepalive message over the port from one
  138.       of its neighbor switches.  A transition to this state triggers a
  139.       Neighbor Found event, notifying the local topology servers that
  140.       the interface is functioning and a 2-way conversation has been
  141.       established with the neighbor.
  142.  
  143.       When the last switch is lost on a Network port, the state of the
  144.       switch reverts to either Network Only (see next state) or to
  145.       Unknown, and a Neighbor Lost event is triggered, notifying the
  146.       local topology servers that the interface is no longer
  147.       operational.
  148.  
  149.    o  Network Only.  Certain types of port interfaces are incapable of
  150.       accessing user endstations and can only be used to access other
  151.       switches.  Such ports are deemed Network Only ports.  If the last
  152.       switch is lost from a port that has already been deemed a Network
  153.       port, the VlanHello protocol checks the condition of the port
  154.       interface.  If it is the type of interface that can only be used
  155.       to access other switches, the state of the port is set to Network
  156.       Only.  Otherwise, it reverts to Unknown.
  157.  
  158.    o  Standby.  A port is deemed a Standby port under the following
  159.       conditions:
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170. Hamilton & Ruffen            Informational                      [Page 3]
  171.  
  172. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  173.  
  174.  
  175.       o  The neighbor switch on the port has a higher level of
  176.          functionality and it has determined that the local switch is
  177.          incompatible with that functionality.  In this circumstance,
  178.          the MAC entry for the local switch in the Interswitch Keepalive
  179.          message received from the neighbor contains an assigned status
  180.          of Incompatible.
  181.  
  182.       o  The list of MAC entries in the Interswitch Keepalive message
  183.          received from the neighbor switch does not contain an entry for
  184.          the local switch.  In this circumstance, the local switch
  185.          assumes that communication with its neighbor will be one-way
  186.          only.
  187.  
  188.       The VlanHello protocol continues to listen for Interswitch
  189.       Keepalive messages on a Standby port, but does not transmit any
  190.       Interswitch Keepalive messages over the port.  If a message is
  191.       received that removes the condition under which the port state was
  192.       set to Standby, the state of the port is set to Network.
  193.  
  194.    o  Going to Access.  When any packet other than an Interswitch
  195.       Keepalive message is received over an Unknown port, the state of
  196.       the port is changed to Going to Access and a timer is activated.
  197.       If the timer expires without an Interswitch Keepalive message
  198.       being received over the port, the port state changes to Access.
  199.  
  200.    o  Access.  A port is deemed an Access port when any packet other
  201.       than an Interswitch Keepalive message has been received over the
  202.       port and the Going to Access timer has expired.  A port can also
  203.       be administratively designated an Access "control" port, meaning
  204.       the port is to remain an Access port, regardless of the type of
  205.       messages that are received on it.  Interswitch Keepalive messages
  206.       are not sent over Access control ports.
  207.  
  208.    Three other types of ports are recognized:  the host management port,
  209.    host data port, and host control port. These ports are designated at
  210.    initialization and are used to access the host CPU.  Interswitch
  211.    Keepalive messages are not sent over these ports.
  212.  
  213.  
  214.  
  215.  
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226. Hamilton & Ruffen            Informational                      [Page 4]
  227.  
  228. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  229.  
  230.  
  231.                                  Packet in
  232.                                      |
  233.                                      V
  234.                                 +---------+
  235.                 Packet in       | Unknown |
  236.                     |           +---------+
  237.         G-A         V                |
  238.        Timer  +----------+   no      V
  239.         exp   | Going to |<------[KA msg?]           Packet in
  240.        <------|  Access  |           |                   |
  241.        |      +----------+       yes |                   V
  242.        V             |               V     yes      +---------+
  243.    +--------+        V            [1-way?]------+-->| Standby |
  244.    | Access |    [KA msg?]           |          ^   +---------+
  245.    +--------+        |               | no       |        |
  246.                      |               V       no |        V
  247.                  yes |         [compatible?]----+    [KA msg?]
  248.                      |               |                   |
  249.                      |               | yes               | yes
  250.                      |               V                   V
  251.                      V          +---------+           [1-way?]
  252.                      +--------->| Network |<--+          |
  253.                                 +---------+   ^          | no
  254.                                      |        | yes      V
  255.                            lost last |        +<----[compatible?]
  256.                             neighbor |
  257.                                      V
  258.                                  [network]
  259.                                  [ only? ]
  260.                                      |
  261.          +--------------+     yes    |    no      +---------+
  262.          | Network Only |<-----------+----------->| Unknown |
  263.          +--------------+                         +---------+
  264.  
  265.  
  266.                      Figure 1:  Port State Machine
  267.  
  268. 2.3 Topology Events
  269.  
  270.    When the VlanHello protocol discovers new information about the
  271.    status of one of its network ports, it notifies its local topology
  272.    service center so that the service center can build or modify the
  273.    topology tables for the switch fabric.  This notification takes the
  274.    form of a system event, described in a structure known as a topology
  275.    relay structure.  These structures are linked in a first-in/first-out
  276.    (FIFO) queue and processed by the topology servers in the order in
  277.    which they were received.
  278.  
  279.  
  280.  
  281.  
  282. Hamilton & Ruffen            Informational                      [Page 5]
  283.  
  284. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  285.  
  286.  
  287.    A topology relay structure typically contains information from
  288.    Interswitch Keepalive messages received on the specified port, as
  289.    shown below.
  290.  
  291.        0                   1                   2                   3
  292.        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
  293.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  294.    00 |                             Event                             |
  295.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  296.    04 |                       Delta options mask                      |
  297.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  298.    08 |                      Current options mask                     |
  299.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  300.    12 |                          Port number                          |
  301.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  302.    16 |                                                               |
  303.       +                Port neighbor switch identifier                +
  304.       |                                                               |
  305.       +                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  306.       |                               |  Port neighbor IP address ... |
  307.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  308.    28 | ... Port neighbor IP address  |                               |
  309.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+   Neighbor chassis MAC addr   +
  310.    32 |                                                               |
  311.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  312.    36 |                   Neighbor chassis IP address                 |
  313.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  314.    40 |                    Neighbor functional level                  |
  315.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  316.    44 |                         Topology agent                        |
  317.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  318.    48 |                           Next event                          |
  319.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  320.  
  321.       Event
  322.  
  323.          This 4-octet field contains the number of the event.
  324.          Valid values are as follows:
  325.  
  326.             1   A new neighbor switch was discovered on the
  327.                 specified port.
  328.             2   The neighbor switch has gained the feature(s)
  329.                 specified in the Delta options mask.
  330.             3   The neighbor switch has lost the feature(s)
  331.                 specified in the Delta options mask.
  332.             4   The neighbor switch has timed out and is presumed
  333.                 down.
  334.             5   The specified port is down.
  335.  
  336.  
  337.  
  338. Hamilton & Ruffen            Informational                      [Page 6]
  339.  
  340. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  341.  
  342.  
  343.             6   The neighbor switch has been previously seen on a
  344.                 different port.  The specified port is the
  345.                 previous port.
  346.             7   The specified port is being reassigned to another
  347.                 topology agent.  Event is generated by the current
  348.                 (old) agent.
  349.             8   The port is looped -- that is, the Keepalive
  350.                 message was generated by the receiving switch.
  351.             9   The port is crossed -- that is, a Keepalive message
  352.                 was received on a port not owned by this topology
  353.                 agent.
  354.             10  The neighbor switch's functional level has changed.
  355.             11  The neighbor switch is running an incompatible
  356.                 version of the protocol.
  357.             12  Two-way communication with the neighbor switch has
  358.                 been lost.
  359.             13  The neighbor switch's Keepalive message sequence
  360.                 number has been reset, indicating the switch
  361.                 itself has been reset.
  362.  
  363.    Delta options mask
  364.  
  365.       This 4-octet field contains a bit map specifying the feature(s)
  366.       gained or lost by the neighbor switch (events 2 and 3 only).
  367.       Valid values are as specified for the next field, Current options
  368.       mask.
  369.  
  370.    Current options mask
  371.  
  372.       This 4-octet field contains a bit map specifying the features of
  373.       the neighbor switch.  Bit assignments are as follows:
  374.  
  375.          1       (unused)
  376.          2       The switch is a VLAN switch.
  377.          4       The switch has link state capability.
  378.          8       The switch has loop-free flood path capability.
  379.          16      The switch has resolve capability.
  380.          32      (unused)
  381.          64      The switch has tag-based flood capability.
  382.          128     The switch has tap capability.
  383.          256     The switch has message connection capability.
  384.          512     The switch has redundant access capability.
  385.          1024    The switch is an isolated switch.
  386.          4096    The switch is an uplink. (SFVLAN V1.8 only)
  387.          8192    The switch is an uplink to core. (SFVLAN V1.8 only)
  388.          16384   The port is an uplink port. (SFVLAN V1.8 only)
  389.          32768   The port is an uplink flood port. (SFVLAN V1.8 only)
  390.  
  391.  
  392.  
  393.  
  394. Hamilton & Ruffen            Informational                      [Page 7]
  395.  
  396. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  397.  
  398.  
  399.    Port number
  400.  
  401.       This 4-octet field contains the logical number of the local port
  402.       for which the event was generated.
  403.  
  404.    Port neighbor switch identifier
  405.  
  406.       This 10-octet field contains the internal identifier of the
  407.       neighbor switch discovered on the port.  The identifier consists
  408.       of the 6-octet physical (MAC) address of the neighbor switch,
  409.       followed by the 4-octet logical port number (local to the neighbor
  410.       switch) on which the neighbor was discovered.
  411.  
  412.    Port neighbor IP address
  413.  
  414.       This 4-octet field contains the Internet Protocol (IP) address of
  415.       the neighbor switch.
  416.  
  417.    Neighbor chassis MAC address
  418.  
  419.       This 6-octet field contains the physical (MAC) address of the
  420.       chassis of the neighbor switch.
  421.  
  422.    Neighbor chassis IP address
  423.  
  424.       This 4-octet field contains the Internet Protocol (IP) address of
  425.       the chassis of the neighbor switch.
  426.  
  427.    Neighbor functional level
  428.  
  429.       This 4-octet field contains the functional level of the neighbor
  430.       switch, as determined by the version level of the SecureFast VLAN
  431.       software under which this switch is operating.  Valid values are
  432.       as follows:
  433.  
  434.       1  The switch is running a version of SFVLAN prior to Version 1.8.
  435.       2  The switch is running SFVLAN Version 1.8 or greater.
  436.  
  437.    Topology agent
  438.  
  439.       This 4-octet field contains a pointer to the topology agent that
  440.       generated the event.  The pointer here can reference any of the
  441.       topology agents that send Interswitch Keepalive messages -- that
  442.       is, any agent running the VlanHello protocol.
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450. Hamilton & Ruffen            Informational                      [Page 8]
  451.  
  452. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  453.  
  454.  
  455.    Next event
  456.  
  457.       This 4-octet field contains a pointer to the next event relay
  458.       structure in the list.
  459.  
  460. 2.4 Timers
  461.  
  462.    The VlanHello protocol uses three timers.
  463.  
  464.    o  Send Hello timer.  The Send Hello timer is used to control the
  465.       interval at which Interswitch Keepalive messages are sent.
  466.  
  467.    o  Aging timer.  The Aging Timer is used to detect when communication
  468.       with a neighboring switch has been lost.
  469.  
  470.    o  Going to Access timer.  The Going to Access timer is used to
  471.       synchronize the transition of a port state to Access and prevent a
  472.       port from being prematurely designation as an Access port during
  473.       network initialization.  If an Unknown port receives any packet
  474.       other than an Interswitch Keepalive message, the port state is set
  475.       to Going To Access.  If the switch receives an Interswitch
  476.       Keepalive message over that port before the timer expires, the
  477.       port state is changed to Network. Otherwise, when the timer
  478.       expires, the port state is changed to Access.
  479.  
  480. 3. InterSwitch Message Protocol
  481.  
  482.    The VlanHello protocol operates as part of the InterSwitch Message
  483.    Protocol (ISMP) -- part of Cabletron's SecureFast VLAN (SFVLAN)
  484.    product, as described in [IDsfvlan].  ISMP provides a consistent
  485.    method of encapsulating and transmitting network control messages
  486.    exchanged between SFVLAN switches.
  487.  
  488.    ISMP message packets are of variable length and have the following
  489.    general structure:
  490.  
  491.    o  Frame header
  492.    o  ISMP packet header
  493.    o  ISMP message body
  494.  
  495.  
  496.  
  497.  
  498.  
  499.  
  500.  
  501.  
  502.  
  503.  
  504.  
  505.  
  506. Hamilton & Ruffen            Informational                      [Page 9]
  507.  
  508. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  509.  
  510.  
  511. 3.1 Frame Header
  512.  
  513.    ISMP packets are encapsulated within an IEEE 802-compliant frame
  514.    using a standard header as shown below:
  515.  
  516.        0                   1                   2                   3
  517.        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
  518.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  519.    00 |                                                               |
  520.       +      Destination address      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  521.    04 |                               |                               |
  522.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+        Source address         +
  523.    08 |                                                               |
  524.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  525.    12 |             Type              |                               |
  526.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
  527.    16 |                                                               |
  528.       +                                                               +
  529.       :                                                               :
  530.  
  531.  
  532.    Destination address
  533.  
  534.       This 6-octet field contains the Media Access Control (MAC) address
  535.       of the multicast channel over which all switches in the fabric
  536.       receive ISMP packets.  The destination address fields of all ISMP
  537.       packets contain a value of 01-00-1D-00-00-00.
  538.  
  539.    Source address
  540.  
  541.       This 6-octet field contains the physical (MAC) address of the
  542.       switch originating the ISMP packet.
  543.  
  544.    Type
  545.  
  546.       This 2-octet field identifies the type of data carried within the
  547.       frame.  The type field of ISMP packets contains the value 0x81FD.
  548.  
  549.  
  550.  
  551.  
  552.  
  553.  
  554.  
  555.  
  556.  
  557.  
  558.  
  559.  
  560.  
  561.  
  562. Hamilton & Ruffen            Informational                     [Page 10]
  563.  
  564. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  565.  
  566.  
  567. 3.2 ISMP Packet Header
  568.  
  569.    The ISMP packet header consists of a variable number of octets, as
  570.    shown below:
  571.  
  572.        0                   1                   2                   3
  573.        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
  574.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  575.    00 |///////////////////////////////////////////////////////////////|
  576.       ://////// Frame header /////////////////////////////////////////:
  577.       +//////// (14 octets)  /////////+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  578.    12 |///////////////////////////////|         ISMP Version          |
  579.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  580.    16 |       ISMP message type       |        Sequence number        |
  581.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  582.    20 |  Code length  |                                               |
  583.       +-+-+-+-+-+-+-+-+                                               +
  584.       |                        Authentication code                    |
  585.       :                                                               :
  586.       |                                                               |
  587.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  588.       |                                                               |
  589.       :                                                               :
  590.  
  591.  
  592.    Frame header
  593.  
  594.       This 14-octet field contains the frame header.
  595.  
  596.    ISMP Version
  597.  
  598.       This 2-octet field contains the version number of the InterSwitch
  599.       Message Protocol to which this ISMP packet adheres.  The VlanHello
  600.       protocol uses ISMP Version 3.0.
  601.  
  602.    ISMP message type
  603.  
  604.       This 2-octet field contains a value indicating which type of ISMP
  605.       message is contained within the message body. VlanHello
  606.       Interswitch Keepalive messages have a message type of 2.
  607.  
  608.    Sequence number
  609.  
  610.       This 2-octet field contains an internally generated sequence
  611.       number used by the various protocol handlers for internal
  612.       synchronization of messages.
  613.  
  614.  
  615.  
  616.  
  617.  
  618. Hamilton & Ruffen            Informational                     [Page 11]
  619.  
  620. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  621.  
  622.  
  623.    Code length
  624.  
  625.       This 1-octet field contains the number of octets in the
  626.       Authentication code field of the message.
  627.  
  628.    Authentication code
  629.  
  630.       This variable-length field contains an encoded value used for
  631.       authentication of the ISMP message.
  632.  
  633. 3.3 ISMP Message Body
  634.  
  635.    The ISMP message body is a variable-length field containing the
  636.    actual data of the ISMP message.  The length and content of this
  637.    field are determined by the value found in the message type field.
  638.  
  639.    The format of the VlanHello Interswitch Keepalive message is
  640.    described in the next section.
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.  
  669.  
  670.  
  671.  
  672.  
  673.  
  674. Hamilton & Ruffen            Informational                     [Page 12]
  675.  
  676. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  677.  
  678.  
  679. 4. Interswitch Keepalive Message
  680.  
  681.    The VlanHello Interswitch Keepalive message consists of a variable
  682.    number of octets, as shown below:
  683.  
  684.         0                   1                   2                   3
  685.         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
  686.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  687.     00 |                                                               |
  688.        +                          Frame header /                       +
  689.        :                       ISMP packet header                      :
  690.        |                                                               |
  691.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  692.      n |            Version            |      Switch IP address ...    |
  693.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  694.    n+4 |    ... Switch IP address      |                               |
  695.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
  696.    n+8 |                                                               |
  697.        +                           Switch ID                           +
  698.        |                                                               |
  699.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  700.   n+16 |                                                               |
  701.        +      Chassis MAC address      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  702.        |                               |      Chassis IP address ...   |
  703.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  704.   n+24 |   ... Chassis IP address      |          Switch type          |
  705.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  706.   n+28 |                        Functional level                       |
  707.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  708.   n+32 |                            Options                            |
  709.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  710.   n+36 |        Base MAC count         |                               |
  711.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +
  712.   n+40 |                                                               |
  713.        :                        Base MAC entries                       :
  714.        |                                                               |
  715.        +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  716.  
  717.           n = 21 + length of the authentication code of the packet
  718.  
  719.  
  720.    Frame header/ISMP packet header
  721.  
  722.       This variable-length field contains the frame header and the ISMP
  723.       packet header.
  724.  
  725.  
  726.  
  727.  
  728.  
  729.  
  730. Hamilton & Ruffen            Informational                     [Page 13]
  731.  
  732. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  733.  
  734.  
  735.    Version
  736.  
  737.       This 2-octet field contains the version number of the VlanHello
  738.       protocol to which this message adheres.  This document describes
  739.       VlanHello Version 4.
  740.  
  741.    Switch IP address
  742.  
  743.       This 4-octet field contains the Internet Protocol (IP) address of
  744.       the sending switch.
  745.  
  746.    Switch ID
  747.  
  748.       This 10-octet field contains the internal ISMP identifier of the
  749.       sending switch.  The identifier is generated by the sending switch
  750.       and consists of the 6-octet physical (MAC) address of the switch,
  751.       followed by a 4-octet value containing the logical port number
  752.       over which the switch sent the packet.
  753.  
  754.    Chassis MAC
  755.  
  756.       This 6-octet field contains the physical (MAC) address of the
  757.       chassis of the sending switch.
  758.  
  759.    Chassis IP address
  760.  
  761.       This 4-octet field contains the Internet Protocol (IP) address of
  762.       the switch chassis.
  763.  
  764.    Switch type
  765.  
  766.       This 2-octet field contains the type of the switch. Currently, the
  767.       only value recognized here is as follows:
  768.  
  769.          2   The switch is an SFVLAN switch.
  770.  
  771.    Functional level
  772.  
  773.       This 4-octet field contains the functional level of the sending
  774.       switch, as determined by the version level of the SecureFast VLAN
  775.       software under which this switch is operating.  Valid values are
  776.       as follows:
  777.  
  778.          1  The switch is running a version of SFVLAN prior to Version
  779.             1.8.
  780.          2  The switch is running SFVLAN Version 1.8 or greater.
  781.  
  782.  
  783.  
  784.  
  785.  
  786. Hamilton & Ruffen            Informational                     [Page 14]
  787.  
  788. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  789.  
  790.  
  791.    Options
  792.  
  793.       This 4-octet field contains a bit map specifying the features of
  794.       the switch.  Bit assignments are as follows:
  795.  
  796.          1       (unused)
  797.          2       The switch is a VLAN switch.
  798.          4       The switch has link state capability.
  799.          8       The switch has loop-free flood path capability.
  800.          16      The switch has resolve capability.
  801.          32      (unused)
  802.          64      The switch has tag-based flood capability.
  803.          128     The switch has tap capability.
  804.          256     The switch has message connection capability.
  805.          512     The switch has redundant access capability.
  806.          1024    The switch is an isolated switch.
  807.          4096    The switch is an uplink. (SFVLAN V1.8 only)
  808.          8192    The switch is an uplink to core. (SFVLAN V1.8 only)
  809.          16384   The port is an uplink port. (SFVLAN V1.8 only)
  810.          32768   The port is an uplink flood port. (SFVLAN V1.8 only)
  811.  
  812.    Base MAC count
  813.  
  814.       This 2-octet field contains the number of entries in the list of
  815.       Base MAC entries.
  816.  
  817.    Base MAC entries
  818.  
  819.       This variable-length field contains a list of entries for all
  820.       neighboring switches that the sending switch has previously
  821.       discovered on the port over which the message was sent. The number
  822.       of entries is found in the Base MAC count field.
  823.  
  824.       Each MAC entry is 10 octets long, structured as follows:
  825.  
  826.        0                   1                   2                   3
  827.        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
  828.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  829.       |                                                               |
  830.       +      Switch MAC address       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  831.       |                               |  Assigned neighbor state ...  |
  832.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  833.       |  ... Assigned neighbor state  |
  834.       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
  835.  
  836.  
  837.  
  838.  
  839.  
  840.  
  841.  
  842. Hamilton & Ruffen            Informational                     [Page 15]
  843.  
  844. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  845.  
  846.  
  847.    Switch MAC address
  848.  
  849.       This 6-octet field contains the base MAC address of the
  850.       neighboring switch.
  851.  
  852.    Assigned neighbor state
  853.  
  854.       This 4-octet field contains the assigned state of the neighboring
  855.       switch as perceived by the sending switch. Currently, the only
  856.       value valid here is 3, indicating a state of Network
  857.  
  858. 5. Security Considerations
  859.  
  860.    Security concerns are not addressed in this document.
  861.  
  862. 6. References
  863.  
  864.    [RFC1700]   Reynolds, J. and  J. Postel, "Assigned Numbers", STD 2,
  865.                RFC 1700, October 1994.
  866.  
  867.    [IDsfvlan]  Ruffen, D., Len, T. and J. Yanacek, "Cabletron's
  868.                SecureFast VLAN Operational Model", RFC 2643, August
  869.                1999.
  870.  
  871.    [IDvlsp]    Kane, L., "Cabletron's VLS Protocol Specification", RFC
  872.                2642, August 1999.
  873.  
  874. 7. Authors' Addresses
  875.  
  876.    Dave Hamilton
  877.    Cabletron Systems, Inc.
  878.    Post Office Box 5005
  879.    Rochester, NH  03866-5005
  880.  
  881.    Phone:(603) 332-9400
  882.    EMail:  daveh@ctron.com
  883.  
  884.  
  885.    Dave Ruffen
  886.    Cabletron Systems, Inc.
  887.    Post Office Box 5005
  888.    Rochester, NH  03866-5005
  889.  
  890.    Phone:(603) 332-9400
  891.    EMail:  ruffen@ctron.com
  892.  
  893.  
  894.  
  895.  
  896.  
  897.  
  898. Hamilton & Ruffen            Informational                     [Page 16]
  899.  
  900. RFC 2641       Cabletron's VlanHello Protocol Version 4      August 1999
  901.  
  902.  
  903. 17.  Full Copyright Statement
  904.  
  905.    Copyright (C) The Internet Society (1999).  All Rights Reserved.
  906.  
  907.    This document and translations of it may be copied and furnished to
  908.    others, and derivative works that comment on or otherwise explain it
  909.    or assist in its implementation may be prepared, copied, published
  910.    and distributed, in whole or in part, without restriction of any
  911.    kind, provided that the above copyright notice and this paragraph are
  912.    included on all such copies and derivative works.  However, this
  913.    document itself may not be modified in any way, such as by removing
  914.    the copyright notice or references to the Internet Society or other
  915.    Internet organizations, except as needed for the purpose of
  916.    developing Internet standards in which case the procedures for
  917.    copyrights defined in the Internet Standards process must be
  918.    followed, or as required to translate it into languages other than
  919.    English.
  920.  
  921.    The limited permissions granted above are perpetual and will not be
  922.    revoked by the Internet Society or its successors or assigns.
  923.  
  924.    This document and the information contained herein is provided on an
  925.    "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
  926.    TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
  927.    BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
  928.    HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
  929.    MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
  930.  
  931. Acknowledgement
  932.  
  933.    Funding for the RFC Editor function is currently provided by the
  934.    Internet Society.
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954. Hamilton & Ruffen            Informational                     [Page 17]
  955.  
  956.