rfc2174.txt

来自「RFC 的详细文档!」· 文本 代码 · 共 1,236 行 · 第 1/4 页

TXT
1,236
字号






Network Working Group                                    K. Murakami
Request for Comments: 2174                               M. Maruyama
Category: Informational                             NTT Laboratories
                                                           June 1997


          A MAPOS version 1 Extension - Switch-Switch Protocol

Status of this Memo

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

Authors' Note

   This memo documents a MAPOS (Multiple Access Protocol over SONET/SDH)
   version 1 extension, Switch Switch Protocol which provides dynamic
   routing for unicast, broadcast, and multicast. This document is NOT
   the product of an IETF working group nor is it a standards track
   document.  It has not necessarily benefited from the widespread and
   in depth community review that standards track documents receive.

Abstract

   This document describes a MAPOS version 1 extension, SSP (Switch
   Switch Protocol).  MAPOS is a multiple access protocol for
   transmission of network-protocol packets, encapsulated in High-Level
   Data Link Control (HDLC) frames, over SONET/SDH. In MAPOS network, a
   SONET switch provides the multiple access capability to end nodes.
   SSP is a protocol of Distance Vector family and provides unicast and
   broadcast/multicast routing for multiple SONET switch environment.

1. Introduction

   This document describes an extension to MAPOS version 1, Switch
   Switch Protocol, for routing both unicast and broadcast/multicast
   frames.  MAPOS[1], Multiple Access Protocol over SONET (Synchronous
   Optical Network) / SDH (Synchronous Digital Hierarchy) [2][3][4][5],
   is a link layer protocol for transmission of HDLC frames over
   SONET/SDH. A SONET switch provides the multiple access capability to
   each node. SSP is a dynamic routing protocol designed for an
   environment where a MAPOS network segment spans over multiple
   switches.  It is a protocol of Distance Vector family. It provides
   both unicast and broadcast/multicast routing. First, this document
   describes the outline of SSP. Next, it explains unicast and
   broadcast/multicast routing algorithms. Then, it describes the SSP
   protocol in detail.



Murakami & Maruyama          Informational                      [Page 1]

RFC 2174                         MAPOS                         June 1997


2. Constraints in Designing SSP

   SSP is a unified routing protocol supporting both unicast and
   broadcast/multicast. The former and the latter are based on the
   Distance Vector [6][7] and the spanning tree[8] algorithm,
   respectively. In MAPOS version 1, a small number of switches is
   assumed in a segment.  Thus, unlike DVMRP(Distance Vector Multicast
   Routing Protocol)[8], TRPB(Truncated Reverse Path Broadcasting) is
   not supported for simplicity. This means that multicast frames are
   treated just the same as broadcast frames and are delivered to every
   node.

   In MAPOS version 1, there are two constraints regarding design of the
   broadcast/multicast routing algorithm;

     (1) there is no source address field in MAPOS HDLC frames

     (2) there is no TTL(Time To Live) field in MAPOS HDLC frames to
     prevent forwarding loop.

   To cope with the first issue, VRPB(Virtual Reverse Path Broadcast)
   algorithm is introduced. In VRPB, all broadcast and multicast frames
   are assumed to be generated by a node under a specific switch called
   VSS(Virtual Source Switch). VSS is the switch which has the smallest
   switch number in a MAPOS network. Each switch determine its place in
   the spanning tree rooted from VSS independently. Whenever a switch
   receives a broadcast/multicast frame, it forwards the frame to all
   upstream and downstream switches except for the one which has sent
   the frame to the local switch.

   To cope with the second issue, the forward delay timer is introduced.
   Even if a switch finds a new VSS, it suspends forwarding for a time
   period. This timer ensures that all the switches have a consistent
   routing information and that they are synchronized after a topology
   change.

3. Unicast Routing in SSP

   This section describes the address structure of MAPOS version 1 and
   the SSP unicast routing based on it.











Murakami & Maruyama          Informational                      [Page 2]

RFC 2174                         MAPOS                         June 1997


3.1 Address Structure of MAPOS version 1

   In a multiple switch environment, a node address consists of the
   switch number and the port number to which the node is connected. As
   shown in Figure 1, the address length is 8 bits and the LSB is always
   1, which indicates the end of the address field. A MSB of 0 indicates
   a unicast address. The switch and the port number fields are
   variable-length. In this document, a unicast address is represented
   as "0 <switch-number> <port number>".  Note that a port number
   includes EA bit.

   MSB of 1 indicates multicast or broadcast. In the case of broadcast,
   the address field contains all 1s (0xff in hex). In the case of
   multicast, the remaining bits indicate a group address.  The switch
   number field is variable-length. A multicast address is represented
   as "1 <group address>".


           Switch Number(variable length)
               |
               |      +--- Port Number
               |      |
               V      V
             |<->|<------->|
           +-------------+-+
           | | | | | | | | |
           | |           |1|
           +-+-----------+-+
            ^             ^
            |             |
            |             +------- EA bit (always 1)
            |
            1 : broadcast, multicast
            0 : unicast

                        Figure 1 Address Format

   Figure 2 shows an example of a SONET LAN that consists of three
   switches.  In this configuration, two bits of a node address are used
   to indicate the switch number. Node N1 is connected to port
   0x03(000011 in binary) of the switch S2 numbered 0x2.  Thus, the node
   address is 01000011 in binary. Node N4 has an address 01101001 in
   binary since the connected switch number is 0x3 and the port number
   is 0x09.







Murakami & Maruyama          Informational                      [Page 3]

RFC 2174                         MAPOS                         June 1997


                        01000011
                        +------+
                        | node |
                        |  N1  |
                        +------+
           01000101         |0x03              |0x03       00101001
           +------+     +---+----+         +---+----+      +------+
           | node +-----+ SONET  +---------+ SONET  +------+ node |
           |  N2  | 0x05| Switch |0x09 0x05| Switch |0x09  |  N3  |
           +------+     |   S2   |         |   S1   |      +------+
                        |  (0x2) |         |  (0x1) |
                        +---+----+         +---+----+
                            |0x07              |0x07
                            |                  |
                            |                  |0x03      01101001
                            |              +---+----+     +------+
                            +--------------+ SONET  +-----+ node |
                                       0x05| Switch |0x09 |  N4  |
                                           |   S3   |     +------+
                                           |  (0x3) |
                                           +---+----+
                                               |0x07

               Figure 2 Multiple SONET Switch Environment

3.2 Forwarding Unicast Frames

   Unicast frames are forwarded along the shortest path. For example, a
   frame from node N4 destined to N1 is forwarded by switch S3 and S2.
   These SONET switches forwards an HDLC frame based on the destination
   switch number contained in the destination address.

   Each switch keeps a routing table with entries for possible
   destination switches. An entry contains the subnet mask, the next hop
   to the adjacent switch along the shortest path to the destination,
   the metric measuring the total distance to the destination, and other
   parameters associated with the entry such as timers. For example, the
   routing table in switch S1 will be as shown in Table 1. The metric
   value 1 means that the destination switch is an adjacent switch. The
   value 16 means that it is unreachable. Although the values between 17
   and 31 also mean unreachable, they are special values utilized for
   split horizon with poisoned reverse [8].









Murakami & Maruyama          Informational                      [Page 4]

RFC 2174                         MAPOS                         June 1997


     +-------------------------+----------+--------+------------+
     | destination |   subnet  | next hop | metric |   other    |
     |   switch    |   mask    |   port   |        | parameters |
     +-------------+-----------+----------+--------+------------+
     |  01000000   | 11100000  | 00000101 |    1   |            |
     +-------------+-----------+----------+--------+------------+
     |  01100000   | 11100000  | 00000111 |    1   |            |
     +-------------+-----------+----------+--------+------------+

                 Table 1  An Example of a Routing Table

   When a switch receives a unicast frame, it extracts the switch number
   from the destination address. If it equals to the local switch
   number, the frame is sent to the local node through the port
   specified in the destination address.  Otherwise, the switch looks up
   its routing table for a matching destination switch number by masking
   the destination address with the corresponding subnet mask. If a
   matching entry is found, the frame is sent to an adjacent switch
   through the next hop port in the entry. Otherwise, it is silently
   discarded or sent to the control processor for its error processing.

3.4 Protocol Overview

   This subsection describes an overview of the unicast routing protocol
   and its algorithm.

3.4.1 Route Exchange

   SSP is a distance vector protocol to establish and maintain the
   routing table. In SSP, each switch sends a routing update message to
   every adjacent switches every FULL_UPDATE_TIME (10 seconds by
   default). The update message is a copy of the routing table, that is,
   routes.

   When a switch receives an update message from an adjacent switch
   through a port, it adds the cost associated with the port, usually 1,
   to every metric value in the message. The result is a set of new
   metrics from the receiving switch to the destination switches. Next,
   it compares the new metrics with those of the corresponding entries
   in the existing routing table. A smaller metric means a better route.
   Thus, if the new metric is smaller than the existing one, the entry
   is updated with the new metric and next hop. The next hop is the port
   from which the update message was received. Otherwise, the entry is
   left unchanged. If the existing next hop is the same as the new one,
   the metric is updated regardless of the metric value.  If no
   corresponding route is found, a new route entry is created.





Murakami & Maruyama          Informational                      [Page 5]

RFC 2174                         MAPOS                         June 1997


3.4.2 Route Expiration

   Assume a route to R is advertised by a neighboring switch S. If no
   update message has been received from switch S for the period
   FULL_UPDATE_TIME * 3 (30 seconds by default) or the route is
   advertised with metric 16 by switch S, the route to R is marked as
   unreachable by setting its metric to 16. In other words, the route to
   R is kept advertised even if the route is not refreshed up-to 30
   seconds.

   To process this, each routing table entry has an EXPIRATION_TIMER (30
   seconds by default, that is, FULL_UPDATE_TIME *3). If another switch
   advertises a route to R, it replaces the unreachable route. Even if a
   route is marked unreachable, the entry is kept in the routing table
   for the period of FULL_UPDATE_TIME * 3.  This enables the switch to
   notify its neighbors of the unreachable route by sending update
   messages with metric 16. To process this, each routing table entry
   has a garbage collection timer GC_TIMER (30 seconds by default). The
   entry is deleted on expiration of the timer. Figure 3 shows this
   transition.

         The Last Update           Expiration         Garbage Collection
               |                       |                       |

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?