home *** CD-ROM | disk | FTP | other *** search
/ Internet Info 1997 December / Internet_Info_CD-ROM_Walnut_Creek_December_1997.iso / drafts / draft_s_z / draft-yavatkar-sbm-ethernet-02.txt < prev    next >
Text File  |  1996-11-26  |  42KB  |  1,140 lines

  1.  
  2.  
  3.  
  4.  
  5.   Internet Engineering Task Force               Raj Yavatkar, Intel
  6.   INTERNET-DRAFT                                Don Hoffman, Sun Microsystems
  7.                                                 Yoram Bernet, Microsoft
  8.  
  9.                                                 December 1996
  10.                                                 Expires: June 30, 1997
  11.  
  12.                       SBM (Subnet Bandwidth Manager):
  13.                A Proposal for Admission Control over Ethernet
  14.  
  15.                             Status of this Memo
  16.  
  17.   This document is an Internet-Draft.  Internet-Drafts are working
  18.   documents of the Internet Engineering Task Force (IETF), its areas,
  19.   and its working groups.  Note that other groups may also distribute
  20.   working documents as Internet-Drafts.
  21.  
  22.   Internet-Drafts are draft documents valid for a maximum of six months
  23.   and may be updated, replaced, or obsoleted by other documents at any
  24.   time.  It is inappropriate to use Internet-Drafts as reference
  25.   material or to cite them other than as ``work in progress.''
  26.  
  27.   To learn the current status of any Internet-Draft, please check the
  28.   ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow
  29.   Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe), munnari.oz.au
  30.   (Pacific Rim), ds.internic.net (US East Coast), or ftp.isi.edu (US West
  31.   Coast).
  32.  
  33.   This document is a product of the ISSLL subgroup of the Integrated Services
  34.   working group of the Internet Engineering Task Force.  Comments are
  35.   solicited and should be addressed to the working group's mailing list
  36.   at issll@mercury.lcs.mit.edu, and/or the author(s).
  37.  
  38.                          Changes From Last Version
  39.  
  40.   This draft reflects the following changes to its previous version:
  41.  
  42.   1.   SBM now accepts and processes the RSVP PATH messages. A PATH mes-
  43.        sage sent over a LAN now contains LAN_NHOP and LAN_PHOP objects.
  44.        Section 2.2 describes changes to the RSVP operation.
  45.  
  46.  
  47.   2.   Message encapsulation rules and message formats  are added.
  48.  
  49.  
  50.   3.   A section that describes the SBM operation over different LAN topo-
  51.        logies has been added.
  52.  
  53.  
  54.  
  55.  
  56.   draft-yavatkar-sbm-ethernet-02.txt                              [Page 1]
  57.  
  58.  
  59.  
  60.  
  61.  
  62.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  63.  
  64.  
  65.                                     Abstract
  66.  
  67.        This document outlines an architecture for RSVP-based admission
  68.        control over IEEE 802-style LANs.  The proposed architecture is
  69.        designed to work with the current generation of IEEE 802 LANs and
  70.        should be considered as a first step towards discovering solutions
  71.        for implementation of IntServ capabilities over such networks.
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.   draft-yavatkar-sbm-ethernet-02.txt                              [Page 2]
  117.  
  118.  
  119.  
  120.  
  121.  
  122.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  123.  
  124.  
  125.        1. Introduction
  126.  
  127.        RSVP and Integrated-Services specifications together define an
  128.        admission control and traffic control framework for  providing
  129.        end-to-end QoS guarantees over the Internet.  However, specific
  130.        algorithms, mechanisms, and  protocols are needed to map the pro-
  131.        posed integrated services over specific link-layer technologies
  132.        such as the IEEE 802-style LANs. Our goal is to propose an archi-
  133.        tecture for achieving admission control over the 802-style networks
  134.        such as Ethernet on the basis of the framework proposed in the RSVP
  135.        and Int-Serv working groups. Our proposal is  based on the follow-
  136.        ing architectural goals and assumptions:
  137.  
  138.  
  139.  
  140.   I.   We define an architecture that provides a step-by-step solution to
  141.        the problem of managing bandwidth over shared subnetworks (such as
  142.        an Ethernet) that works with the existing, legacy LAN infrastruc-
  143.        ture and takes advantage of the additional functionality (such as
  144.        an explicit support for integrated services) as it becomes avail-
  145.        able in the new generation of  switches, hubs, or bridges. As a
  146.        result, our architecture would allow for a range of LAN bandwidth
  147.        management solutions that vary from one that exercises purely
  148.        administrative control (over the  amount of bandwidth consumed by
  149.        RSVP-enabled traffic flows) to one that requires cooperation (and
  150.        enforcement) from all the end-systems attached to a shared sub-
  151.        network.
  152.  
  153.  
  154.   II.  To support integrated services on a specific networking technology,
  155.        one needs to define mechanisms for admission control, traffic flow
  156.        separation, and traffic scheduling (the latter two are usually
  157.        grouped together under "traffic control"). For instance, an effec-
  158.        tive admission control mechanism for shared subnetworks requires
  159.        managing and controlling bandwidth usage so that the aggregate
  160.        traffic load on any shared segment does not exceed its capacity.
  161.        This requires controlling the amount of traffic generated by both
  162.        RSVP-enabled and non-RSVP traffic flows. Additional link level
  163.        mechanisms for traffic flow separation and traffic control may be
  164.        necessary to achieve the goal. Appendix A elaborates further on the
  165.        traffic control mechanisms necessary for this purpose.
  166.  
  167.        In the short term, our goal is to specify  only a signaling method
  168.        and protocol for LAN-based admission control over RSVP flows and
  169.        leave the task of specifying link layer mechanisms for traffic con-
  170.        trol to the appropriate IEEE 802 working groups.
  171.  
  172.        Thus, the proposed mechanism explicitly controls only the total
  173.  
  174.  
  175.  
  176.   draft-yavatkar-sbm-ethernet-02.txt                              [Page 3]
  177.  
  178.  
  179.  
  180.  
  181.  
  182.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  183.  
  184.  
  185.        amount of traffic load imposed by RSVP-enabled flows on a shared
  186.        LAN.  However, the best-effort traffic generated by the TCP/IP
  187.        sources is generally rate-adaptive (using "slow start" type conges-
  188.        tion avoidance mechanisms or feedback-based rate adaptation used by
  189.        sources based on RTP/RTCP protocols) and limits the amount of
  190.        traffic generated to adapt to available capacity. A specification
  191.        of an RSVP-based admission control mechanism for a LAN should typi-
  192.        cally suffice to control the total amount of traffic over a shared
  193.        LAN.  This is especially true in a switched Ethernet environment if
  194.        switches and NICs support at least two levels of priority. In such
  195.        a multi-priority LAN, assignment of higher priority to the RSVP
  196.        traffic (to separate it from best-effort traffic) coupled with a
  197.        combination of admission control (over RSVP traffic to keep it
  198.        within a fraction of any link's capacity) and per-flow policing at
  199.        end-systems should suffice to realize an approximation to the "con-
  200.        trolled load" service specified in the int-serv working group.
  201.  
  202.  
  203.   III. For traffic control, we assume that end-systems will police indivi-
  204.        dual RSVP-enabled data flows to ensure that each flow stays within
  205.        its traffic specification stipulated in its reservation request for
  206.        admission control. Additional traffic scheduling mechanisms may
  207.        also be employed to realize a particular QoS service class.
  208.  
  209.  
  210.   IV.  As an interim measure until 802-mediated traffic control mechanisms
  211.        become available, we assume that all the RSVP nodes on a LAN will
  212.        utilize the proposed admission control procedure to reserve
  213.        bandwidth in advance of sending any RSVP-enabled data flows and
  214.        will not send/forward such traffic if the reservation request
  215.        fails. Thus, if all the  multimedia traffic on a LAN is sent using
  216.        RSVP for resource reservation, the proposed architecture would
  217.        restrict the total multimedia traffic on any LAN segment within the
  218.        bounds desired by a LAN administrator. This does not, however,
  219.        assure that non-RSVP traffic will not interfere with the RSVP
  220.        traffic.   Appendix A.1 discusses this approach in more detail.
  221.  
  222.  
  223.   2. Overview
  224.  
  225.   Our architecture is based on a logical entity called an SBM (Subnet
  226.   Bandwidth Manager) responsible for handling admission control requests.
  227.   We assume that an IP subnet corresponds to a  single L2 (Layer 2) domain
  228.   [3]. An L2 domain is defined to be a set of nodes and links intercon-
  229.   nected without passing through a L3 (IP or Layer 3) forwarding function.
  230.   We refer to links (point-to-point or shared segments) that interconnect
  231.   nodes within a L2 domain simply as LAN segments. We assume that a Desig-
  232.   nated SBM (DSBM) exists for each LAN segment (also called a Managed
  233.  
  234.  
  235.  
  236.   draft-yavatkar-sbm-ethernet-02.txt                              [Page 4]
  237.  
  238.  
  239.  
  240.  
  241.  
  242.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  243.  
  244.  
  245.   Segment or a MS) and services reservation requests (manages bandwidth)
  246.   for that segment. An SBM is an application-level entity that uses UDP
  247.   for communication with its clients. The architecture makes no assump-
  248.   tions about the number of SBMs within a LAN; a single DSBM may manage a
  249.   shared LAN segment whereas a separate SBM may run on each switch in a
  250.   switched LAN topology (Section 3 discusses this point in greater
  251.   detail).  In the following, we use the term "SBM client" to refer to an
  252.   entity (host or router) that communicates with a DSBM for the purpose of
  253.   establishing a QoS reservation.
  254.  
  255.   2.1 Basic Algorithm
  256.  
  257.   Figure 1 - An Example of a Managed Segment.
  258.  
  259.                          Host                    Host
  260.           _______        ===       -------       ===
  261.          |       |      | C |     | SBM   |     | B |
  262.          | Router|      |   |      - /----      |   |
  263.          |_R2____|       ===        /            ===
  264.             |             |        /              |
  265.             |             |       /               |
  266.      ==============================================================LAN
  267.                       |                                   |
  268.                       |                                   |
  269.                      ===                                __|_____
  270.                     | A |                              | Router |
  271.                     |   |                              |  R1    |
  272.                      ===                               |________|
  273.                     Host
  274.  
  275.  
  276.   Figure 1 shows an example topology consisting of hosts and routers
  277.   interconnected across a LAN. For the purpose of this discussion, we
  278.   ignore the actual physical topology of the LAN and a single SBM is
  279.   assumed to be the DSBM for the entire LAN. Section 3 describes how an
  280.   SBM operates over different LAN topologies.
  281.  
  282.   The basic SBM algorithm works as follows:
  283.  
  284.  
  285.   1.   DSBM Initialization: As part of its initial configuration, DSBM
  286.        obtains information such as the maximum bandwidth that can be
  287.        reserved on each LAN segment under its control. Configuration is
  288.        likely to be static with the current Ethernet devices. Future work
  289.        may allow for dynamic discovery of this information.
  290.  
  291.   2    SBM Client Initialization: At the start, an SBM client discovers
  292.        and binds to its DSBM using a "DSBM Discovery Protocol" (described
  293.  
  294.  
  295.  
  296.   draft-yavatkar-sbm-ethernet-02.txt                              [Page 5]
  297.  
  298.  
  299.  
  300.  
  301.  
  302.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  303.  
  304.  
  305.        in section 2.3).
  306.  
  307.   3.   RSVP-based Admission Control: To reserve LAN bandwidth, RSVP nodes
  308.        (RSVP-capable hosts and routers) follow the following steps:
  309.  
  310.     a)   When an RSVP node sends or forwards a PATH message over a LAN
  311.          interface, it unicasts the PATH message to its DSBM instead of
  312.          sending it to the destination address (as is done in conventional
  313.          RSVP processing). After processing (and possibly updating an
  314.          ADSPEC), the DSBM will forward the PATH message toward its desti-
  315.          nation address (See Section 3 for the case involving multiple
  316.          Layer 2 hops between a sender and a destination). As part of its
  317.          processing, the DSBM builds and maintains a path state for the
  318.          session and notes the previous hop that sent it the PATH message.
  319.  
  320.          For example, if the sender to a session is outside the LAN and
  321.          router R1 (see Figure 1) is on the path to the receivers, R1 will
  322.          forward a PATH message from the sender to its DSBM (the DSBM's
  323.          unicast address) and the DSBM will eventually send the PATH mes-
  324.          sage to the RSVP session address. In the process, the DSBM builds
  325.          the PATH state, remembers the sender (router R1 in Figure 1) as
  326.          the previous hop for the session, and effectively inserts itself
  327.          as an intermediate node between the sender (or R1 in Figure 1)
  328.          and the receivers (or routers) on the LAN.
  329.  
  330.     b)   When a receiver (say, host A) wishes to make a reservation
  331.          request for the session, it follows standard RSVP rules and sends
  332.          a RSVP RESERVE message to the previous hop address obtained from
  333.          the PHOP object in the previously received PATH message.
  334.  
  335.     c)   The DSBM processes the RSVP RESERVE message based on the
  336.          bandwidth available and returns an RSVP_ERROR to the requester
  337.          (host A) if the request cannot be granted. Admission control
  338.          algorithm at DSBM ensures that sufficient bandwidth is available
  339.          on managed segments (MS) between the NHOP (requester) and the
  340.          PHOP (sender/router).
  341.  
  342.          In case of a successful reservation, DSBM forwards the RESERVE
  343.          message towards the PHOP(s) based on the contents of the RESERVE
  344.          message and its local path state for the session.  The DSBM
  345.          merges reservation requests for the same session as and when pos-
  346.          sible using the rules similar to the conventional RSVP process-
  347.          ing.
  348.  
  349.     d)   The RESERVE message eventually reaches the original PHOP
  350.          (sender/router) on that MS if all reservation requests within the
  351.          MS succeed.
  352.  
  353.  
  354.  
  355.  
  356.   draft-yavatkar-sbm-ethernet-02.txt                              [Page 6]
  357.  
  358.  
  359.  
  360.  
  361.  
  362.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  363.  
  364.  
  365.   2.2 Changes to conventional RSVP operation
  366.  
  367.   The addition of an SBM for admission control over Ethernet results in
  368.   the following changes to the RSVP operation on an Ethernet:
  369.  
  370.   -    Outgoing PATH messages on an Ethernet interface are unicast to the
  371.        DSBM.
  372.  
  373.   -    In conventional RSVP processing over point-to-point links, RSVP
  374.        nodes (hosts/routers) use NHOP and PHOP objects to keep track of
  375.        the next hop (and the previous hop) nodes on the path between a
  376.        sender and a receiver.  Over a shared LAN such as an Ethernet, we
  377.        introduce an SBM (subnet Bandwidth Manager) as a logical entity
  378.        that performs admission control over the LAN. Such a LAN may span
  379.        multiple switched or shared segments between a RSVP PHOP node and a
  380.        RSVP NHOP node. For the purpose of Layer 3 routing and RSVP seman-
  381.        tics between two Layer 3 entities, however, the entire LAN acts a
  382.        logical segment and the connection between RSVP PHOP and NHOP nodes
  383.        must be maintained for the correct operation and routing of RSVP
  384.        messages.  Therefore, we introduce two new RSVP objects called
  385.        LAN_PHOP and LAN_NHOP that keep track of the peer RSVP nodes on a
  386.        path between a RSVP sender (or a previous hop router) and a RSVP
  387.        receiver (or a next hop router).
  388.  
  389.        When an RSVP entity (a host or a router acting as the originator of
  390.        a PATH message) sends out a PATH message over an Ethernet inter-
  391.        face, it needs to include both LAN_NHOP and LAN_PHOP objects in the
  392.        message as described below. When a DSBM receives a PATH message it
  393.        passes on LAN_PHOP and LAN_NHOP objects unchanged and only modifies
  394.        PHOP and NHOP (i.e., RSVP_HOP) objects in those messages. Thus,
  395.        when an RSVP node finally receives the PATH message, it has the
  396.        necessary information about RSVP peer-to-peer association (and,
  397.        therefore, the layer 3 routing information) through the contents of
  398.        the LAN_PHOP and LAN_NHOP objects.
  399.  
  400.        When sending out a PATH message over an Ethernet interface, first
  401.        RSVP node (sender or an edge router forwarding the PATH message)
  402.        must include two new objects, namely, a LAN_NHOP object and a
  403.        LAN_PHOP object. The LAN_NHOP object specifies the destination IP
  404.        address of the PATH message. In case of a unicast destination, the
  405.        LAN_NHOP address specifies the destination address or the address
  406.        of the next hop router towards the destination. The LAN_PHOP object
  407.        in the PATH message specifies the IP address of the RSVP node
  408.        (sender or forwarding router) that originated the PATH message on
  409.        the LAN.
  410.  
  411.  
  412.   -    When an SBM receives a RSVP PATH message, it processes it according
  413.  
  414.  
  415.  
  416.   draft-yavatkar-sbm-ethernet-02.txt                              [Page 7]
  417.  
  418.  
  419.  
  420.  
  421.  
  422.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  423.  
  424.  
  425.        to the PATH processing rules described in the RSVP specification.
  426.        In particular, it remembers the PHOP address from which it received
  427.        the messages and forwards the path message with the PHOP object
  428.        modified to reflect its IP address. LAN_PHOP and LAN_NHOP objects
  429.        in the PATH message are passed along unchanged.
  430.  
  431.  
  432.  
  433.   -    The path state in SBM is used for forwarding subsequent RESV mes-
  434.        sages for the same session. When an SBM receives a RESV message, it
  435.        processes the message and forwards it to appropriate PHOP(s) based
  436.        on its path state.
  437.  
  438.  
  439.   -    Because a DSBM inserts itself as a hop between a source of traffic
  440.        on the LAN (sender or router) and the receiver, all RSVP related
  441.        messages (such as PATH, PATH_TEAR, RESV, RESV_CONFM, RESV_TEAR, and
  442.        RESV_ERR) now flow through the DSBM.
  443.  
  444.  
  445.   -    When RSVP session address is a multicast address, it is possible
  446.        for a router that originated a PATH message to receive one or more
  447.        copies of the PATH message when a DSBM on the path to the destina-
  448.        tion forwards it (i.e., multicasts it). However, the router can
  449.        detect and discard the duplicates either based on the contents of
  450.        the LAN_PHOP object (lists one of its interface addresses) or based
  451.        on who forwarded it (any PATH message coming from a SBM other than
  452.        its own DSBM).
  453.  
  454.  
  455.  
  456.  
  457.  
  458.   2.3 Discovering and Binding to a DSBM
  459.  
  460.   DSBM listens to a well-known SBM multicast address (SBM_GRP - an UDP
  461.   multicast address with a local scope -- of the form, <224.0.0.x, port
  462.   XXXX>, TBD) and an SBM client locates its DSBM by multicasting a
  463.   LOCATE_SBM request to the SBM_GRP address with a restricted multicast
  464.   scope (multicast TTL=1). DSBM replies to the client's query and provides
  465.   its unicast address for further communication. After the initial
  466.   handshake between the DSBM and an SBM client, the SBM client is con-
  467.   sidered bound to its DSBM and SBM client uses DSBM's unicast address for
  468.   subsequent communication.
  469.  
  470.   To allow recovery from DSBM failures and binding to a newly elected
  471.   DSBM, the SBM client must listen to the subsequent, periodic I_AM_DSBM
  472.   refresh messages from its DSBM to detect the DSBM failure. These refresh
  473.  
  474.  
  475.  
  476.   draft-yavatkar-sbm-ethernet-02.txt                              [Page 8]
  477.  
  478.  
  479.  
  480.  
  481.  
  482.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  483.  
  484.  
  485.   messages (or "DSBM advertisements") are sent to the SBM_GRP address
  486.   every refresh interval (e.g., every 30 seconds; the refresh interval is
  487.   a configuration parameter).  The client must repeat the binding pro-
  488.   cedure if original DSBM fails (or is replaced by another one).
  489.  
  490.   2.4 More than one active SBM on a LAN segment
  491.  
  492.   For the sake of redundancy and fault tolerance, it is possible to have
  493.   more than one active SBM on any LAN segment that can act as a backup
  494.   DSBM if necessary. In such a case, exactly one SBM acts as the DSBM for
  495.   the segment at any time and is elected using an DSBM election algorithm.
  496.   Once a DSBM is elected, other SBMs stay around and step in to elect a
  497.   new DSBM if the previously elected DSBM terminates or crashes for some
  498.   reason.
  499.  
  500.   The election algorithm works as follows: When a SBM comes up on an IP
  501.   subnet, it must first discover whether a DSBM already exists on the sub-
  502.   net. It does so by listening for incoming I_AM_DSBM messages for a ran-
  503.   dom amount of time. If no other DSBM is present, it announces its wil-
  504.   lingness to be a DSBM by periodically multicasting a DSBM WILLING mes-
  505.   sage to the SBM_GRP address with the restricted multicast scope (TTL=1).
  506.   If another SBM exists on the same subnet and considers itself a current
  507.   or a better choice, it replies to the new SBM via a multicast I AM DSBM
  508.   message to the same group. Ties between candidate DSBMs may be broken
  509.   based on a priority field in the I_AM_DSBM message (priority specified
  510.   by the network administrator) or simply based on IP address ordering.
  511.   (e.g. candidate with the lower IP address wins). If the new SBM does not
  512.   hear a response from a better choice within K (K >= 3) periodic
  513.   announcements, it declares itself to be the SBM by multicasting a
  514.   I_AM_DSBM message.
  515.  
  516.   The designated SBM of the MS periodically multicasts the I_AM_DSBM mes-
  517.   sage. Other SBMs in the MS listen to the periodic announcements and
  518.   assume that the SBM has terminated functioning if they do not hear K (K
  519.   >= 3) successive periodic announcements. In that case, all the SBMs ini-
  520.   tiate the election algorithm to elect a new DSBM.
  521.  
  522.  
  523.   3. Various LAN Topologies
  524.  
  525.   Our goal is to offer an admission control solution that works with the
  526.   existing, shared segments LANs as well as newer, switched LAN topolo-
  527.   gies. In the following, we consider three different LAN topologies and
  528.   describe how our solution works in each case.
  529.  
  530.   3.1 Shared LAN segments
  531.  
  532.   Figure 1 shows a sample topology where entire IP subnet spans a single
  533.  
  534.  
  535.  
  536.   draft-yavatkar-sbm-ethernet-02.txt                              [Page 9]
  537.  
  538.  
  539.  
  540.  
  541.  
  542.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  543.  
  544.  
  545.   shared segment. Actual physical topology in this case may consist of
  546.   multiple physical segments interconnected by hubs. However, for practi-
  547.   cal purposes, such a LAN acts as if all hosts are attached to a single
  548.   shared segment. In this case, a single DSBM manages shared bandwidth for
  549.   the entire subnet.
  550.  
  551.   3.2 Switched LAN segments
  552.  
  553.   Figure 2 shows a sample topology where an IP subnet spans a switched
  554.   Ethernet consisting of one or more switches interconnecting all the
  555.   end-systems within the subnet. In this case, we assume that one SBM
  556.   resides at each switch, the DSBM is responsible for managing outgoing
  557.   interfaces at the switch, and that the DSBM accesses its switch's local
  558.   MAC address table to discern forwarding information.
  559.  
  560.   In this case, PATH and RESV messages between two end-systems on the sub-
  561.   net will propagate hop-by-hop from one DSBM to another DSBM as they
  562.   travel across the switches along the path.
  563.  
  564.   For example, let us assume a unicast RSVP session addressed to host D in
  565.   Figure 2. Let us also assume that the sender in the session resides out-
  566.   side the LAN shown in Figure 2 and the router R1 forwards a PATH message
  567.   towards its receiver on the LAN.
  568.  
  569.   When a PATH message for the session arrives at R1, the following
  570.   sequence of events will happen:
  571.  
  572.  
  573.   1.   R1 forwards the PATH message to its DSBM (B1 in Figure 2).
  574.  
  575.  
  576.   2.   B1 processes the PATH message, builds the path state, and then for-
  577.        wards the PATH message to the next DSBM on the path towards the
  578.        LAN_NHOP address (forwarding information discerned from the MAC
  579.        address table).
  580.  
  581.        In the case of a LAN with multiple hops (segments) between an RSVP
  582.        sender (LAN_PHOP) and a destination (LAN_NHOP), the DSBMs forward
  583.        the PATH message hop-by-hop until it reaches a managed segment
  584.        where the destination resides. At that point, the DSBM for the
  585.        managed segment will send the PATH message directly to the destina-
  586.        tion.
  587.  
  588.        In the case of a multicast destination where many receivers are
  589.        scattered across a LAN, the DSBM at each intermediate hop must for-
  590.        ward the PATH message to the session destination address for all
  591.        outgoing interfaces where group members reside. We assume that the
  592.        DSBM has access to a switch's local MAC address table to discern
  593.  
  594.  
  595.  
  596.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 10]
  597.  
  598.  
  599.  
  600.  
  601.  
  602.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  603.  
  604.  
  605.        such forwarding information.
  606.  
  607.  
  608.   3.   B2 will then process the PATH message and forward it to the
  609.        LAN_NHOP address.
  610.  
  611.  
  612.   4.   When the host D decides to make a reservation for the session, it
  613.        looks up its path state to determine the previous hop(s) for the
  614.        session and sends the RSVP RESV message to its PHOP (B2). If the
  615.        admission control at B2 succeeds, it will forward the RESV message
  616.        to the PHOP (B1) according to its path state, and finally, the RSVP
  617.        RESV message will arrive at R1 if admission control at intermediate
  618.        switches succeeds.
  619.  
  620.  
  621.   5.   Any admission control failure results in a RESV_ERROR being sent to
  622.        the requester and the RESV state at intermediate nodes is removed.
  623.  
  624.  
  625.   Figure 2 - An example of a switched topology
  626.                                           ---------
  627.                                          | Router  |
  628.                                          |   R1    |
  629.                                          |_________|
  630.                                             /
  631.                                            /
  632.                                           /
  633.                                       ++++++
  634.                               Switch  + B1 +
  635.                                 S1    +    +
  636.                                       ++++++
  637.                                       /    |__
  638.                                      /        |
  639.                                     /         |
  640.                                 ++++++      ++++++
  641.                          switch + B2 +      + B3 + switch
  642.                            S2   +    +      +    +  S3
  643.                                 ++++++      ++++++
  644.                                 /  |__         |_____
  645.                                /      |             |
  646.                               /       |             |
  647.                          Host       Host           Host
  648.                          ===         ====            ===
  649.                         | D |       | E |           | F |
  650.                         |   |       |   |           |   |
  651.                          ===         ===             ===
  652.  
  653.  
  654.  
  655.  
  656.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 11]
  657.  
  658.  
  659.  
  660.  
  661.  
  662.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  663.  
  664.  
  665.   3.3 Combination of Shared and Switched segments (heterogeneous case)
  666.  
  667.   Previous two cases represent two popular topologies (shared segment
  668.   topology is popular among legacy LANs and switched topology is popular
  669.   with the newer installations). However, we must also consider a more
  670.   general case when an IP subnet spans a combination of shared and
  671.   switched segments. In this case, we still assume that a DSBM exists at
  672.   each switch. However, the DSBM at a switch is not only responsible for
  673.   managing bandwidth across its incident point-to-point links to its
  674.   peers, but also manages shared segments that are incident to it. When
  675.   more than one switch is attached to a shared segment, the DSBM will
  676.   determine the directly attached segments that it manages >From the con-
  677.   figuration information supplied at the startup time. Shared segments
  678.   (and any non-SBM switches attached to them) are treated as a single log-
  679.   ical segment for the purpose of admission control. When a RESV request
  680.   arrives at the DSBM, it will perform admission control over all the
  681.   managed segments under its domain that are affected by the RESV message
  682.   before forwarding the RESV towards the previous hop address.
  683.  
  684.  
  685.   4. Layer 2 Support Issues
  686.  
  687.   When an SBM resides on a switch, we assume that it has access to the
  688.   local MAC address table so that it can discern the information necessary
  689.   for forwarding PATH and RESV messages to their respective LAN_NHOP and
  690.   LAN_PHOP addresses. An accompanying document [3] describes the require-
  691.   ments for mapping IP Integrated Services over IEEE 802 traffic control
  692.   mechanisms.
  693.  
  694.  
  695.   5. Message Encapsulation and Formats
  696.  
  697.   To minimize changes to existing RSVP implementations and to ensure quick
  698.   deployment of an SBM in conjunction with RSVP, all communication to and
  699.   from a DSBM will be performed using messages constructed using the
  700.   current rules for RSVP message formats. For more details on the RSVP
  701.   message formats, refer to the RSVP specification (draft-ietf-rsvp-spec-
  702.   14.ps).  No changes to the RSVP message formats are proposed, but new
  703.   message types  and new LAN_NHOP and LAN_PHOP objects are added to the
  704.   RSVP message formats to accommodate DSBM-related messages. These addi-
  705.   tions are described below.
  706.  
  707.   All messages to a DSBM (except messages related to DSBM discovery and
  708.   advertizements) are addressed to the DSBM's unicast address.  In partic-
  709.   ular, all RSVP-related messages (PATH, RESV, and other TEAR and ERROR
  710.   messages) directed to a DSBM are sent to the DSBM's unicast address.  An
  711.   RSVP node discovers its DSBM (and DSBM's unicast address) using a
  712.   discovery method described in Section 2.3 earlier.
  713.  
  714.  
  715.  
  716.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 12]
  717.  
  718.  
  719.  
  720.  
  721.  
  722.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  723.  
  724.  
  725.   Each message must occupy exactly one IP datagram. If it exceeds the MTU,
  726.   such a datagram will be fragmented by IP and reassembled at the reci-
  727.   pient node. This has a consequence that a single message may not exceed
  728.   the maximum IP datagram size, approximately 64K bytes.
  729.  
  730.   5.1. RSVP-related Message Formats
  731.  
  732.   All RSVP messages directed to and from a DSBM may contain various RSVP
  733.   objects defined in the RSVP specification and messages continue to fol-
  734.   low the formatting rules specified in the RSVP specification. In addi-
  735.   tion, an RSVP implementation must also recognize two new object classes,
  736.   LAN_NHOP and LAN_PHOP, that are described below.
  737.  
  738.  
  739.   5.2 LAN_NHOP and LAN_PHOP Objects
  740.  
  741.   Both LAN_NHOP and LAN_PHOP objects have the same structure as the
  742.   RSVP_HOP object, but are identified as separate object classes to dis-
  743.   tinguish them from each other and from the RSVP_HOP objects.
  744.  
  745.   LAN_NHOP objects use object class = 40; IPv4 LAN_NHOP object uses
  746.   <Class=40, C-Type=1> and IPv6 LAN_NHOP object uses <Class=40,
  747.   C-Type=2>.
  748.  
  749.   IPv4 LAN_NHOP object: class = 40, C-Type =1
  750.  
  751.   +---------------+---------------+---------------+---------------+
  752.   |                       IPv4 Next Hop Address                   |
  753.   +---------------+---------------+---------------+---------------+
  754.   |                       Logical Interface Handle                |
  755.   +---------------+---------------+---------------+---------------+
  756.  
  757.   IPv6 LAN_NHOP object: Class = 40, C-Type = 2
  758.   +---------------+---------------+---------------+---------------+
  759.   |                                                               |
  760.   +                                                               +
  761.   |                                                               |
  762.   +                       IPv6 next Hop Address                   +
  763.   |                                                               |
  764.   +                                                               +
  765.   |                                                               |
  766.   +---------------+---------------+---------------+---------------+
  767.   |               Logical Interface Handle                        |
  768.   +---------------+---------------+---------------+---------------+
  769.  
  770.   LAN_PHOP objects use class=41; IPv4 LAN_PHOP and IPv6 LAN_PHOP objects
  771.   use C-Types 1 and 2 respectively. These objects are structured same as
  772.   those shown above.
  773.  
  774.  
  775.  
  776.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 13]
  777.  
  778.  
  779.  
  780.  
  781.  
  782.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  783.  
  784.  
  785.   5.3 RSVP PATH Message Format
  786.  
  787.   As specified in the RSVP specification, an RSVP_PATH message contains
  788.   the RSVP Common Header and the relevant RSVP objects. For the RSVP Com-
  789.   mon Header, refer to the RSVP specification (draft-ietf-rsvp-spec-
  790.   14.ps). Changes to an RSVP_PATH message include addition of the LAN_NHOP
  791.   and the LAN_PHOP objects as specified below.
  792.  
  793.   <RSVP_PATH> ::= <RSVP Common Header> [INTEGRITY>]
  794.                   <LAN_PHOP> <LAN_NHOP> <SESSION><RSVP_HOP><TIME_VALUES>
  795.                   [<POLICY DATA>] <sender descriptor>
  796.  
  797.   If the INTEGRITY object is present, it must immediately follow the RSVP
  798.   common header. LAN_NHOP object must always precede the SESSION object.
  799.  
  800.   5.4 RSVP RESV Message Format
  801.  
  802.   As specified in the RSVP specification, an RSVP_RESV message contains
  803.   the RSVP Common Header and relevant RSVP objects. No Changes to the RESV
  804.   message format are needed with the SBM protocol.
  805.  
  806.   5.5. Additional RSVP message types to handle SBM interactions
  807.  
  808.   New RSVP message types are introduced to allow interactions between a
  809.   DSBM and an RSVP node (host/router) for the purpose of discovering and
  810.   binding to a DSBM. New RSVP message types needed are as follows:
  811.  
  812.   RSVP Msg Type (8 bits)      Value
  813.  
  814.   SBM_QUERY                   64
  815.   SBM_REPLY                   65
  816.   DSBM_WILLING                66
  817.   I_AM_DSBM                   67
  818.  
  819.  
  820.  
  821.   All SBM-specific messages are formatted as RSVP messages with an RSVP
  822.   common header followed by SBM-specific objects.
  823.  
  824.   <SBMP_MESSAGE> ::= <SBMP common header> <SBM-specific objects>
  825.  
  826.   where <SBMP common header> ::= <RSVP common Header> [<INTEGRITY>]
  827.  
  828.  
  829.   For each SBM message type, there is a set of rules for the permissible
  830.   choice of object types. These rules are specified using Backus-Naur Form
  831.   (BNF) augmented with square brackets surrounding optional sub-sequences.
  832.   The BNF implies an order for the objects in a message. However, in many
  833.  
  834.  
  835.  
  836.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 14]
  837.  
  838.  
  839.  
  840.  
  841.  
  842.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  843.  
  844.  
  845.   (but not all) cases, object order makes no logical difference. An imple-
  846.   mentation should create messages with the objects in the order shown
  847.   here, but accept the objects in any permissible order. Any exceptions to
  848.   this rule will be pointed out in the specific message formats.
  849.  
  850.   5.5.1 SBM_QUERY Message
  851.  
  852.   SBM_QUERY message contains a single address object in the format that is
  853.   same as the RSVP SESSION object and gives the IP address of the request-
  854.   ing node.  The SBM_QUERY message is multicast to the well known
  855.   DSBM_GROUP address as described earlier.
  856.  
  857.   <SBM_QUERY message> ::= <SBMP common header> <IP address>
  858.  
  859.   where <IP address> object is same as the <SESSION> object.
  860.  
  861.   5.5.2 SBM_REPLY Message
  862.  
  863.   SBM_REPLY message provides the IP address of the node sending out the
  864.   reply.
  865.  
  866.   <SBM_REPLY Message> ::= <SBM Common Header> <IP ADDRESS>
  867.  
  868.   The SBM_REPLY message is unicast to the sender of the SBM_QUERY message
  869.   .
  870.  
  871.   5.5.3 DSBM_WILLING Message
  872.  
  873.   <DSBM_WILLING message> ::= <SBM Common Header> <IP ADDRESS>
  874.  
  875.   IP ADDRESS is the address of the DSBM sending out this message.  All
  876.   DSBM_WILLING messages are multicast to the well known DSBM_GROUP
  877.   address.
  878.  
  879.   5.5.4 I_AM_DSBM Message
  880.  
  881.   <I_AM_DSBM> ::= <SBM Common Header> <IP ADDRESS> [<PRIORITY>]
  882.  
  883.   IP ADDRESS is the address of the DSBM sending out this message.  All
  884.   I_AM_DSBM messages are multicast to the well known DSBM_GROUP address.
  885.   The optional PRIORITY  object specifies the relative priority of the
  886.   requesting SBM. When multiple, redundant SBMs are present on a LAN, a
  887.   priority level is assigned to each one of them by a network administra-
  888.   tor and is used to break ties when multiple candidate DSBMs participate
  889.   in the DSBM election algorithm. The default priority of an SBM is 1 and
  890.   higher priority values represent higher precedence.
  891.  
  892.   PRIORITY Object: class = 42, C-Type =1
  893.  
  894.  
  895.  
  896.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 15]
  897.  
  898.  
  899.  
  900.  
  901.  
  902.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  903.  
  904.  
  905.   +---------------+---------------+---------------+---------------+
  906.   |   ////        |   ////        | ////          | priority      |
  907.   +---------------+---------------+---------------+---------------+
  908.  
  909.  
  910.   6. References
  911.  
  912.   [1] R Braden, L Zhang, S Berson, S Herzog, J Wroclaswki, "Resource
  913.   Reservation Protocol", Internet Draft draft-ietf-rsvp-spec12.txt,May
  914.   1996.
  915.  
  916.   [2] S.Shenker, "Specification of General Characterization Parameters",
  917.   draft-ietf-intserv-charac-00.txt,Nov 1995
  918.  
  919.   [3] D.Hoffman, "Integrated Services/RSVP Requirements for Layer 2
  920.   Traffic Control", draft-hoffman-issll-l2tcreq-00.txt, December 1996.
  921.  
  922.   [4] Y.Bernet, "Admission Control for Best-Effort Traffic", in prepara-
  923.   tion.
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930.  
  931.  
  932.  
  933.  
  934.  
  935.  
  936.  
  937.  
  938.  
  939.  
  940.  
  941.  
  942.  
  943.  
  944.  
  945.  
  946.  
  947.  
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 16]
  957.  
  958.  
  959.  
  960.  
  961.  
  962.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  963.  
  964.  
  965.                                  APPENDIX A
  966.                       Traffic Control Issues on a LAN
  967.  
  968.   A.1 Application Behavior
  969.  
  970.   Because of its goal to support existing 802 infrastructures, this propo-
  971.   sal makes no assumptions about any traffic separation or policing
  972.   mechanisms on the MS. Consequently, there are no network enforced
  973.   mechanisms to keep non-adaptive traffic from interfering with the
  974.   traffic over reserved flows.  In these sorts of environments we propose
  975.   that applications are expected to be well behaved and follow the follow-
  976.   ing set of rules:
  977.  
  978.  
  979.   -    For both unicast and multicast flows, an RSVP-based sender is not
  980.        to transmit any traffic on a RSVP flow until at least one RESERVE
  981.        has been received for that flow. The outgoing flow should be pol-
  982.        iced at the sender host to be less than or equal to the maximum
  983.        flow reserved. RESERVE TEARS are indications that the sender should
  984.        no longer send a flow.
  985.  
  986.   -    For multicast flows, the receiver is to leave the session multicast
  987.        group if a reservation error (RESV_ERROR) or a Path Tear is
  988.        received. This rule may create some difficulty in environments
  989.        where source-specific multicast pruning is not implemented (the
  990.        default case in the current MBONE). A reservation error from a path
  991.        toward any one specific sender would result in the receiver drop-
  992.        ping all senders, even those with the fully reserved paths. Appli-
  993.        cations running in such environments should restrict sessions to a
  994.        single sender if at all possible.
  995.  
  996.  
  997.   A.2 Traffic Control Mechanisms in Layer 2
  998.  
  999.   An effective admission control mechanism for shared subnetworks requires
  1000.   managing and controlling bandwidth usage so that the aggregate traffic
  1001.   load on any shared segment does not exceed its capacity. This requires
  1002.   controlling the amount of traffic generated by both RSVP-enabled and
  1003.   best-effort traffic flows.
  1004.  
  1005.   We do not assume any particular explicit support  for integrated ser-
  1006.   vices is assumed from the LAN infrastructure (NICs, switches, hubs, or
  1007.   bridges) and assume that an appropriate IEEE 802 working group will
  1008.   specify the traffic control solutions for the link-level devices (an
  1009.   accompanying document [3] provides recommendations to the IEEE 802.1
  1010.   committee on the Layer 2 facilities needed to facilitate mapping of
  1011.   int-serv services over Ethernet).
  1012.  
  1013.  
  1014.  
  1015.  
  1016.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 17]
  1017.  
  1018.  
  1019.  
  1020.  
  1021.  
  1022.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  1023.  
  1024.  
  1025.   In the absence of any layer 2 support, some topologies such as a shared
  1026.   Ethernet segment may pose a problem when unrestricted best-effort
  1027.   traffic can  interfere with the traffic from RSVP-enabled traffic.
  1028.   Therefore, an explicit end-system based control over the amount of
  1029.   best-effort traffic that can be sent over Ethernet may be necessary to
  1030.   implement a particular service class. Further investigation and experi-
  1031.   mentation is necessary in this area [4].
  1032.  
  1033.  
  1034.  
  1035.  
  1036.                               ACKNOWLEDGEMENTS
  1037.  
  1038.   Many thanks to Ema Patki for her active participation with the earlier
  1039.   versions of this draft. Authors are also thankful to Fred Baker of Cisco
  1040.   Systems and John ("JJ") Krawczyk of Bay Networks for their constructive
  1041.   comments on the SBM design and the earlier versions of this draft.
  1042.  
  1043.  
  1044.  
  1045.   6. Authors` Addresses
  1046.           Raj Yavatkar
  1047.           Intel Corporation
  1048.           MS: JF3-206
  1049.           2111 N.E. 25th Avenue,
  1050.           Hillsboro, OR 97124
  1051.           USA
  1052.           phone: +1 503-264-9077
  1053.           email: yavatkar@ibeam.intel.com
  1054.  
  1055.           Don Hoffman
  1056.           Sun Microsystems, Inc.
  1057.           MS: UMPK14-305
  1058.           2550 Garcia Avenue
  1059.           Mountain View, California 94043-1100
  1060.           USA
  1061.           phone: +1 503-297-1580
  1062.           email: don.hoffman@eng.sun.com
  1063.  
  1064.           Yoram Bernet
  1065.           Microsoft
  1066.           1 Microsoft Way
  1067.           Redmond, WA 98052
  1068.           USA
  1069.           phone: +1 206 936 9568
  1070.           email: yoramb@microsoft.com
  1071.  
  1072.  
  1073.  
  1074.  
  1075.  
  1076.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 18]
  1077.  
  1078.  
  1079.  
  1080.  
  1081.  
  1082.   INTERNET-DRAFT       SBM (Subnet Bandwidth Manager)       December, 1996
  1083.  
  1084.  
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.  
  1126.  
  1127.  
  1128.  
  1129.  
  1130.  
  1131.  
  1132.  
  1133.  
  1134.  
  1135.  
  1136.   draft-yavatkar-sbm-ethernet-02.txt                             [Page 19]
  1137.  
  1138.  
  1139.  
  1140.