SORT BY:

LIST ORDER
THREAD
AUTHOR
SUBJECT


SEARCH

IPS HOME


    [Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

    FCIP: NAPTs Solution Proposal (issue from Irvine, CA Interim meeting)



    The following is proposed as a solution to the NAPTs problem in FCIP.
    This proposal is based on draft-ietf-ips-fcovertcpip-06.txt and should
    contain sufficient detail for evaluation purposes.
    
    This is not a detailed proposal for changes and it is assumed that
    the FCIP editor will cleanup any loose ends. This proposal assumes
    familiarity with FCIP and makes no attempt to explain existing FCIP
    models, structures, or functionality.
    
    Those who were at the Irvine Interim meeting will remember that
    the problem with FCIP and NAPTS is a reliance on IP address in
    the determination of which incoming TCP connections belong in a
    given FCIP Link. This proposal solves that problem by requiring
    that FC Entity World Wide Name be transmitted in the first bytes
    sent by the FCIP Entity that initiates a TCP Connect request.
    This allows the FCIP Entity that receives a TCP Connect request
    to match it with any previously received TCP Connect requests
    from the same source. Since the transmitted World Wide Name is
    required to be unique within Fibre Channel, the FCIP Entity
    that receives this information can correctly assign FCIP Link
    relationships without relying on IP Addresses.
    
    To allow a given FC Entity to have multiple distinct FC/FCIP
    ports, the World Wide Name is qualified by a 32-bit FC/FCIP
    Entity identifier.
    
    Optional suggestions about how a TCP Connection should be used
    are also provided in the first bytes send by the FCIP Entity
    that initiates a TCP Connect request.
    
    It is believed that the proposed changes will work even with
    the manual discovery option provided for in the FCIP draft.
    However, the most reliable end-to-end knowledge of who is
    talking to whom is achieved if SLPv2 discovery is used and
    each SLP service advertisement includes the advertiser's
    World Wide Name and FC/FCIP Entity identifier.
    
    A summary of the proposed changes follows.
    
    [Change 1] Add a new section between 6 and 7. Note all other section
    number have been adjusted to reflect this addition.
    
    7. FCIP Short Frame
    
    Figure x shows the FCIP Short Frame format.
    
       W|------------------------------Bit------------------------------|
       o|                                                               |
       r|3 3 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 1 1 1                    |
       d|1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0 9 8 7 6 5 4 3 2 1 0|
        +---------------+---------------+---------------+---------------+
       0|   Protocol#   |    Version    |  -Protocol#   |   -Version    |
        |    (0x01)     |    (0x01)     |     (0xFE)    |    (0xFE)     |
        +---------------+---------------+---------------+---------------+
       1|   Protocol#   |    Version    |  -Protocol#   |   -Version    |
        |    (0x01)     |    (0x01)     |     (0xFE)    |    (0xFE)     |
        +---------------+---------------+---------------+---------------+
       2|    pFlags     |    Reserved   |    -pFlags    |  -Reserved    |
        |    (0x01)     |     (0x00)    |     (0xFE)    |    (0xFF)     |
        +-----------+---+---------------+-----------+---+---------------+
       3|   Flags   |   Frame Length    |   -Flags  |   -Frame Length   |
        |   (0x00)  |    (0x00-0E)      |   (0x3F)  |     (0x03-F1)     |
        +-----------+-------------------+-----------+-------------------+
       4|                      Time Stamp [integer]                     |
        +---------------------------------------------------------------+
       5|                      Time Stamp [fraction]                    |
        +---------------------------------------------------------------+
       6|                     CRC (Reserved in FCIP)                    |
        |                        (0x00-00-00-00)                        |
        +-------------------------------+-------------------------------+
       7|           Reserved            |          -Reserved            |
        |           (0x00-00)           |          (0xFF-FF)            |
        +-------------------------------+-------------------------------+
       8|                                                               |
        +-----            FC Fabric Entity World Wide Name         -----+
       9|                                                               |
        +---------------------------------------------------------------+
      10|                    FC/FCIP Entity Identifier                  |
        +---------------+---------------+-------------------------------+
      11|   Connection  |    Reserved   |    Connection Usage Code      |
        |  Usage Flags  |     (0x00)    |     <defined in FC-BB-2>      |
        +---------------+---------------+-------------------------------+
      12|                            Reserved                           |
        |                        (0x00-00-00-00)                        |
        +---------------------------------------------------------------+
      13|           Reserved            |          -Reserved            |
        |           (0x00-00)           |          (0xFF-FF)            |
        +-------------------------------+-------------------------------+
    
           Fig. x  FCIP Short Frame Format
    
    pFlags: The pFlags bits provide information about the protocol specific
    usage of the FC Encapsulation Header as shown in figure y.
    
            |----------------Bit--------------------|
            |                                       |
            | 31   30   29   28   27   26   25   24 |
            +----------------------------------+----+
            |             Reserved             | SF |
            +----------------------------------+----+
    
               Fig. y -  pFlags Field Format
    
    In the Short Frame, the SF (Short Frame) bit SHALL be one. FCIP
    Encapsulated frames the SF bit SHALL be zero.
    
    The FC Fabric Entity World Wide Name field SHALL contain the Fibre
    Channel Name_Identifier [FC-FS] for the FC Fabric entity associated
    with the FC Entity FCIP Entity pair that generated the Short Frame.
    For example, if the FC Fabric entity is a FC Switch, the FC Fabric
    Entity World Wide Name field SHALL contain the Switch_Name [FC-SW-2]
    provided that name is world  wide unique. The FC Fabric Entity World
    Wide Name SHALL be world wide unique.
    
    The FC/FCIP Entity Identifier field SHALL contain a unique identifier
    for the FC Entity FCIP Entity pair that generated the Short Frame that
    is assigned by the FC Fabric entity whose world wide name appears in
    the FC Fabric Entity World Wide Name field. The FC/FCIP Entity
    Identifier is statically assigned to represent the configuration
    relationship of the FC Entity FCIP Entity pair to the FC Fabric entity.
    
    Note: The combination of the FC Entity World Wide Name and FCIP
    Entity Identifier fields uniquely identifies every FC Entity FCIP
    Entity pair in the IP Network.
    
    An FCIP Entity that receives a TCP Connect request SHALL use the
    contents of the FC Fabric Entity World Wide Name and FC/FCIP
    Identifier fields to determine the FCIP_LEP to which the FCIP_DE
    associated with the TCP connection is assigned. This may be an
    existing FCIP_LEP or a new FCIP_LEP, depending on whether the
    FCIP Entity has received the same FC Fabric Entity World Wide Name
    and FC/FCIP Identifier field values before. If an FCIP Short Frame
    is received on a TCP connection that has already been assigned to
    an FCIP_LEP, the FC Fabric Entity World Wide Name and FC/FCIP
    Identifier fields SHALL be ignored.
    
    The Connection Usage Flags field identifies the types of SOF values
    [FC Encapsulation] to be carried on the connection as shown in
    figure z.
    
    |------------------------------Bit------------------------------|
    |                                                               |
    |   31      30      29      28      27      26      25      24  |
    +---------------------------------------------------------------+
    |  SOFf | SOF?2 | SOF?3 |                Reserved               |
    +---------------------------------------------------------------+
    
       Fig. z -  Connection Usage Flags Field Format
    
    If the SOFf bit is one, then frames containing SOFf are intended
    to be carried on the connection.
    
    If the SOF?2 bit is one, then frames containing SOFi2 and SOFn2 are
    intended to be carried on the connection.
    
    If the SOF?3 bit is one, then frames containing SOFi3 and SOFn3 are
    intended to be carried on the connection.
    
    All or none of the SOFf, SOF?2, and SOF?3 bits MAY be set to one.
    If all of the SOFf, SOF?2, and SOF?3 bits are zero, then the types
    of FC Frames intended to be carried on the connection has no
    specific relationship to SOF code.
    
    The FCIP Entity SHALL NOT enforce the SOF usage described by
    the Connection Usage Flags field and SHALL only use the contents
    of the field as described below.
    
    The Connection Usage Code field contains Fibre Channel defined
    information regarding the intended usage of the connection as
    specified in FC-BB-2.
    
    The FCIP Entity SHALL use the contents of the Connection Usage
    Flags and Connection Usage Code fields to locate appropriate QoS
    settings in the "shared" database of TCP connection information
    (see 8.1.1) and apply those settings to a newly formed connection.
    If an FCIP Short Frame is received after QOS settings have been
    established, the Connection Usage Flags and Connection Usage Code
    fields SHOULD be ignored.
    
    For each new incoming TCP Connect request received, the FCIP Entity
    SHALL send the contents of the FC Fabric Entity World Wide Name,
    FC/FCIP Identifier, Connection Usage Flags and Connection Usage
    Code fields to the FC Entity along with the other new connection
    information.
    
    
    [Change 2] In 5.6.1, add the pFlags field definition and require
    all FCIP Encapsulated Frames except Short Frames to have SF equal
    to zero.  Note: Some part of the pFlags description above will
    go in 5.6.1 not in the new section but the description above is
    structured for easier reading in this proposal.
    
    
    [Change 3] Some place in 5.6 (the description of the FCIP_DE),
    require the FCIP_DE to pass all FCIP Short Frames to the Control
    & Services Module.
    
    
    [Change 4] In 7.1.3 and 7.1.4 (the two sections where TCP Connect
    requests are generated), require the FCIP Entity to:
    
      1) Acquire the Connection Usage and other information from the
         "shared" database (see section 7.1.1);
      2) Send a FCIP Short Frame as the first bytes passing through
         the Encapsulated Frame Transmitter Portal following establishment
         of a TCP connection;
      3) Compare the first bytes received through the Encapsulated Frame
         Receiver Portal to the FCIP Short Frame sent and close the TCP
         connection if the bytes are not an FCIP Short Frame whose
         contents (words 7 through 13 inclusive) exactly match the FCIP
         Short Frame passed through the Encapsulated Frame Transmitter
         Portal.
    
    It is recommended that an FCIP Entity not initiate TCP Connect requests
    to another FCIP Entity if incoming TCP Connects requests from that FCIP
    Entity have  already been accepted.
    
    
    [Change 5] In 7.1.5 (the section where TCP Connect requests are
    accepted) change the requirements about binding the new connection
    to an FCIP_LEP more or less as follows:
    
      1) Require the FCIP Entity to expect a FCIP Short Frame
         as the first bytes to pass through the Encapsulated Frame
         Receiver Portal following completion of an incoming TCP
         Connect request;
      2) Require the FCIP Entity to transmit the FCIP Short Frame contents
         received (words 7 through 13 inclusive) through the Encapsulated
         Frame Transmitter Portal immediately upon receipt with out
         alteration of any kind;
      3) Require use of the FC Entity WWN and FCIP Entity Identifier
         fields in the FCIP Short Frames to determine if there is an
         existing FCIP_LEP to bind to; and
      4) Recommend that the Connection Usage fields contents be used in
         conjunction with the "shared" database (see section 7.1.1) to
         determine the QOS settings for the newly created connection.
    
    If the local FCIP Entity determines that the TCP Connect request
    just received is for a remote FCIP Entity to which the local FCIP
    Entity has already initiated TCP Connect requests and the
    connection request is otherwise valid, the local FCIP
    Entity SHALL accept TCP Connect request.  The FCIP Entity SHALL
    notify the FC Entity of the reverse direction TCP Connect request
    and the FC Entity SHALL determine whether both connections are
    permitted and, if one is not permitted, request that the FCIP
    Entity close the appropriate connection.
    
    
    [Change 6] In 5.4, replace the following sentence:
    
     "An FC Fabric to IP Network interface product SHALL contain one
     FCIP Entity for each IP Address assigned to the product."
    
    with:
    
     "An FC Fabric to IP Network interface product SHALL provide each
     FC Entity FCIP Entity pair contained in the product with a unique
     combination of FC Fabric Entity World Wide Identifier and FC/FCIP
     Entity Identifier values (see section 7)."
    
    
    
    


Home

Last updated: Tue Oct 30 20:17:39 2001
7457 messages in chronological order