Network Woking Group                                 Danny Cohen Myricom
Internet Draft                              Craig Lund Mercury Computers
Expire in six months          Tony Skjellum, Thom McMahon, Robert George
                                            Mississippi State University
                                                                May 1998

             Enumerations for the PacketWay Protocol for
          High-Performance Interconnection of Computer Clusters
               <draft-ietf-pktway-enumerations-00.txt>

Status of this Memo

     This document is an Internet-Draft.  Internet-Drafts are working
     documents of the Internet Engineering Task Force (IETF), its
     areas, and its working groups.  Note that other groups may also
     distribute working documents as Internet-Drafts.

     Internet-Drafts are draft documents valid for a maximum of six
     months and may be updated, replaced, or obsoleted by other
     documents at any time.  It is inappropriate to use Internet-
     Drafts as reference material or to cite them other than as
     "work in progress."

     To view the entire list of current Internet-Drafts, please check
     the "1id-abstracts.txt" listing contained in the Internet-Drafts
     Shadow Directories on ftp.is.co.za (Africa), ftp.nordu.net
     (Europe), munnari.oz.au (Pacific Rim), ftp.ietf.org (US East
     Coast), or ftp.isi.edu (US West Coast).


Table of Contents:

             This page....................................1
             PacketWay at a Glance ("cheat-sheet")........2
             A note about the PacketWay documents.........3
             Notations....................................4
             (1) PacketWay Packet Types...................5
             (2) RRP messages.............................6
             (3) RRP records..............................6
             (4) Error messages...........................7
             (5) Node capabilities........................7
             (6) Optional header fields types (OH)........8
             (7) Byte order (endianness)..................8
             (8) Symbol types (ST)........................9
             Appendix-A: Glossary........................10
             Appendix-B: Acronyms and Abbreviations......12





Cohen et al.                  Experimental                      [Page 1]


Internet-Draft               PacketWay Enumerations             May 1998


                        PacketWay at a Glance
                        ---------------------


       2   6    type       24                     16                16
PW-Hdr+-+------+-------+--------+---------+--------+--------+--------+--------+
   PH1|V|  P   |     Destination-Type     |  Type-Extension |   Packet-Type   |
      +-+-+---++--------------------------+-+------+--------+-----------------+
   PH2| E | PL|   Data-Length (8B-words)  |h|  RZ  |0     Source-Address      |
      +---+---+--------+--------+---------+-+------+--------+--------+--------+
        4    3             25              1   7    1           23

                type = 0xxx Physical Address
                       10xx L2RH
                       110x Reserved
                       1110 Logical Address
                       1111 Symbols


        2   6    2   6      8        8        8        8        8        8
      +--------+--------+--------+--------+--------+--------+--------+--------+
L2RH  |V|  P   |10LLLLLL|  SR01  |  SR02  |........|........|........|........|
      +--------+--------+--------+--------+--------+--------+--------+--------+
                  Length


        2   6     4   4     8        8        8        8        8        8
      +--------+--------+--------+--------+--------+--------+--------+--------+
Symbol|V|  P   |1111ssss|ssssssss|ssssssss| Length |  data  |........|........|
      +--------+--------+--------+--------+--------+--------+--------+--------+
                    <---- Symbol Type --->

        2   6      8        8        8        8        8        8        8
Opt'l +--------+--------+--------+--------+--------+--------+--------+--------+
hdr   |TCtttttt|LLLLLLLL|  data  |........|........|........|........|........|
fields+--------+--------+--------+--------+--------+--------+--------+--------+
      T: 0=optional, 1=mandatory;  C: 0=more OH-fields follow, 1=last OH-field


          8        8        8        8        8        8        8        8
RRP   +--------+--------+--------+--------+--------+--------+--------+--------+
Record|  RTyp  |   PL   |       RL        |........|........|........|........|
      +--------+--------+--------+--------+--------+--------+--------+--------+
      RRP-messages: GVL2, L2SR, RDRC, TELL, INFO, HRTO, WRU,  GVRT, RTBL;
              RTyp: ADDR, NAME, CAPA, LADR, SRQR, MTUR, RCVF, RTHD;








Cohen et al.                  Experimental                      [Page 2]


Internet-Draft               PacketWay RRP                      May 1998


                  A note about the PacketWay Documents
                  ------------------------------------

The PacketWay protocol is defined by a series of documents:

                * EEP (End-to-End Protocol)
                * RRP-1 (basic Router-to-Router Protocol)
                * RRP-2 (dynamic inter-SAN routing)
                * PacketWay enumerations

Each of these documents should include the same "PacketWay at a Glance
(Cheat=Sheet)", this note, and the Notations page.  They should include
also (as appendices) a copy of the PacketWay glossary of terms and its
acronyms and abbreviations list.

The EEP and the RRP documents will be published first as Internet-Drafts
and later as Proposed-Standards, Draft-Standards, and Standards.

The Enumeration Document will be first published as an
"Informational-RFC" and later will be maintained by IANA.

The enumeration document may be attached to the EEP/RRP documents, as
a matter of convenience.  The enumeration is NOT a part of the
PacketWay standard, just as RFC0739 (the original "Assigned Numbers"
RFC) is not a part of RFC0791, that defines IP.

Similarly, the EEP-documenmt has "Appendix-A: A Recommendation for
PacketWay Address Assignment" which is a recommendation only and NOT a
part of the PacketWay standard, just as IP-address-assignment is not a
part of RFC0791, that defines IP.























Cohen et al.                  Experimental                      [Page 3]


Internet-Draft               PacketWay RRP                      May 1998

                               Notations
                               ---------
8B means "8-byte" (64 bits).

0x indicates hexadecimal values,  e.g., 0x0100 is 2^8=256(decimal).

0b indicates binary values, e.g., 0b0100 is 4(decimal).

xxx indicate a field that is discarded without any checking (e.g., padding).

[fff] indicates that fff is an optional field, when appropriate.

[exp], in equations, is the integral part of `exp`, e.g., [17/8]=2.

All length fields do not include themselves, and therefore may be zero.
Fields lengths are specified either (a) by byte count, with following
padding bytes to fill 8B-words, or (b) by 8B-word count, and PL, the
number of trailing padding bytes (with 0<=PL<8).




































Cohen et al.                  Experimental                      [Page 4]


Internet-Draft               PacketWay RRP                      May 1998

                        PacketWay Enumerations
                        ----------------------

(1) PacketWay Packet Types
+-------------------------

The EEP header reserves 4 bytes for signaling from the source node
directly to the destination node.  They are the PACKET TYPE (PT),
and the TYPE EXTENSION (TE), 2 bytes each.

This list defines values for the PACKET-TYPE (PT) 2B-field.  Each
packet-type has its own interpretation of the TE and the h-fields.

    2B-Code     Packet Type
+----------     ----------------------
          0     Illegal
          1     RRP
          2     Embedded PacketWay Packet
          3     MEM-READ
          4     MEM-WRITE
                Higher level protocols:
         21             IP
         22             SNMP
         23             ATM
                Link layer Protocols
         50             Ethernet (E10)
         51             Ethernet (E100)
         52             Ethernet (E1000)
         53             Myrinet
         54             Fibre Channel
         55             RACEway
         56             SCI
         57             VME
                Application level protocols:
         81             MPI
         82             PVM
                Secure Protocols
        121     Secure (1)
        122     Secure (2)
        123     Secure (3)
1,024-2,047     User defined
     65,535     ERR (for Error)

More values will be assigned.  "Ether-types" should be added with
a pointer to those used by the Internet.









Cohen et al.                  Experimental                      [Page 5]


Internet-Draft               PacketWay RRP                      May 1998

Explanation of the MEM-WRITE and MEM-READ (that a memory board
may need):

     PT        Meaning
  ---------    --------------------------------------------------------
  MEM-WRITE -- Treat the first 8 bytes of the Data Block as a local
               memory-address and write the remaining data into memory.

  MEM-READ  -- Treat the data block as 2 8B-memory-addresses and an
               8B-byte count.  Generate a return WRITE packet containing
               the first address, followed by the appropriate data,
               that was read from the second address.




(2) RRP Messages  (Type Extensions of PT="RRP)
+---------------------------------------------
  RRP-
  Type  Code Description
+------ ---- ----------------------------------------------------
          0  Illegal
  GVL2   21  Please give me L2-routes from you to node (address)
  L2SR   22  Here are L2-routes to node (address)
  RDRC   23  Re-direct to node (address) via a neighbor HR (address)
  TELL   24  Please tell about node (address | name | capabilities)
  INFO   25  Info about node (address, name, capabilities)
  HRTO   26  Which HR should I use for node (address)
  WRU?   27  Who/what-Are-You?
  GVRT   28  Please give me your RTs
  RTBL   29  Here is an RT

Throughout this document the RRP messages are indicated by their
type (e.g., RDRC for re-direct).  In actual messages the code is used
(e.g., 2 for RDRC).


(3) RRP records
+--------------

  RTyp  Code Description
+------ ---- ----------------------------------------------------
          0  Illegal
  ADDR   41  Address record for one or many nodes
  NAME   42  Node Name record
  CAPA   43  Node Capability record
  LADR   44  Node Logical Addresses record
  SRQR   45  Source Route record and its Quality (SR, Q)
  MTUR   46  MTU record (for the previous SRQR)

Throughout this document the RRP records are indicated by their RTyp (e.g.,
ADDR for address).  In actual messages the code is used (e.g.,41 for ADDR).


Cohen et al.                  Experimental                      [Page 6]


Internet-Draft               PacketWay RRP                      May 1998

(4) Error Messages
+-----------------

  Subtype     Code      Description
  ---------   ----      ----------------------------------------------
                0       Illegal
  UNK          71       Unknown (address)
  HRDOWN       72       HR-Down (and the links associated with it)
  LINKDOWN     73       Link-Down (between two HRs)
  GENERAL      74       General error message

Throughout this document the error messages are indicated by their
subtype (e.g., LINKDOWN for Link-Down).  In actual messages the code
is used (e.g., 3 for LINKDOW).


(5) PacketWay Node Capabilities
+------------------------------

Code  Capability                Parameters
+---  ------------------------  --------------------------------------
  0   Illegal
  1   GP Computing Node
  2   Router                    SAN-IDs, 1+3 Bytes each
  3   PacketWay Server
  4   Network Multicast Server
  5   NFS
  6   NPS (Paging Server)
  7   Floating-point DSP        IEEE word-sizes (in bytes), 1B per size
  8   Fixed-point DSP           word-sizes (in bytes), 1B per size
  9   Printer
250   SRVLOC server
253   Secure PacketWay HR
254   Multicast agent for its SAN
255   SAN



















Cohen et al.                  Experimental                      [Page 7]


Internet-Draft               PacketWay RRP                      May 1998

(6) Optional Header Fields Types (OH)
+------------------------------------

The MSbit of the type field (T) is the type-of-type.  Its assignment is:

   0b0: Optional (may drop this OH if its type, tttttt, is unknown)
   0b1: Mandatory (should not process this OH if its type is unknown)

The next bit is the "Completion bit" (C).  Its assignment is:

   0b0: More options follow
   0b1: This is the last option field

The 6 LSbits, tttttt, are the type field.  Their assignment is:

 0x00:      Illegal
 0x01:      TBD
 0x02:      CRC32 here
 0x03:      CRC32 following in the OT (after the DB)
 0x04:      CRC64 here
 0x05:      CRC64 following in the OT (after the DB)
 0x06:      There is an OT (Optional Trailer)
 0x07-0x3D: TBD
 0x3E:      Cryptographic data


(7) Byte Order (Endianness)
+--------------------------

A 4 bit field (E) is used to indicate Endianness, with e being its first
bit (MSbit).

        e=0: Big-Endian order
        e=1: Little-Endian order

The 3 LSbits indicate the size of data chucks (must be the same for the
entire data block) to allow hardware swapping

        e000: don't swap, it's 8-bit data
        e001: swap as if all the data is  16-bit words
        e010: swap as if all the data is  32-bit words
        e011: swap as if all the data is  64-bit words
        e100: swap as if all the data is 128-bit words
        e101: illegal and reserved for future use
        e110: illegal and reserved for future use
        e111: illegal and reserved for future use








Cohen et al.                  Experimental                      [Page 8]


Internet-Draft               PacketWay RRP                      May 1998

(8) Symbol Types (ST)
+--------------------

The format of Symbols is:

+--------+--------+--------+--------+--------+--------+--------+--------+
|vv000000|1111ssss|ssssssss|ssssssss| Length |  data  |........|........|
+--------+--------+--------+--------+--------+--------+--------+--------+
              <---- Symbol Type --->


        Code      Symbol Type
        --------  -----------------
        0x00000:  Reserved
        0x00001:  Multicast
        0x00002:  Secure PacketWay






































Cohen et al.                  Experimental                      [Page 9]


Internet-Draft               PacketWay RRP                      May 1998


                          Appendix-A: Glossary
                      ---------------------------
                      (Last update: Aug-24, 1997)

Address:        A unique designation of a node (actually an interface to
                that node) or a SAN.

Buddy-HR:       HRs are "buddies" if they are on the same SAN.

Cut-Thru:       See wormhole.

Destination:    The node to which a packet is intended

Dynamic-Routing: Routing according to dynamic information
                (i.e., acquired  at run time, rather than pre-set).

Endianness:     The property of being Big-Endian or Little-Endian
                (transmission order, etc.)

Ethertype:      A 16-bit value designating the type of Level-3 packets
                carried by a Level-2 communication system.

HR:             Half-Router, the part of a router that handles one
                network only.

L2-Forwarding:  Forwarding based on Level-2 (i.e., data-link layer
                of the ISORM) information, e.g., the native technique
                of each SAN or LAN.  Also called "source routing."

L3-Forwarding:  Forwarding based on end-to-end Level-3 (i.e., network
                layer of the ISORM) addresses.  Also called
                "destination routing."

Map:            The topology of a network.

Mapper:         A node on a SAN/LAN that has the map and an RT for that
                network.  It is expected that the mapper dynamically
                updates the map and the RT.

Multi-homed Node: A node with more than one network interface, where each
                interface has another address.

Node:           Whatever can send and receive packets (e.g., a computer,
                an MPP, a software process, etc.)

Node structure: A C-struct (or equivalent) containing values for some
                attributes of a node.

Planned Transfer: Transfer of information, occurs after an initial phase
                in which the sender decides which Level-2 route to use
                for that transfer.


Cohen et al.                  Experimental                     [Page 10]


Internet-Draft               PacketWay RRP                      May 1998


RCVF:           The "Received From" set includes all the physical
                addresses through which an RT was disseminated, starting
                with that of the mapper that created that RT.

Re-direct-message: A message that tells nodes which HR should be used in

                order to get to a certain remote address (or range of).

Router:         The inter-SAN communication device

Security Context: A relationship between 2 (or more) nodes that defines
                how the nodes utilize security services to communicate
                securely.

Source:         The node that created a packet.

Source-Route:   A Level-2 route that is chosen for a packet by its source.

Symbol:         Data preceeding the EEP header of a PacketWay message,
                interleaving with the L2RHs.

Twin-HR:        Two HRs are twins if they both are parts of the same
                inter-SAN router.

Wormhole-routing: (aka cut-thru routing) forwarding packets out of
                switches as soon as possible, without storing that
                entire packet in the switch (unlike Stop-and-forward).

Zero-copy TCP:  A TCP system that copies data directly between the user
                area and the network device, bypassing OS copies.























Cohen et al.                  Experimental                     [Page 11]


Internet-Draft               PacketWay RRP                      May 1998


                 Appendix-B: Acronyms and Abbreviations
                 --------------------------------------
                     (Last update: August 24, 1997)

0bNNNN  The binary number NNNN (e.g., 0b0100 is 4-decimal)
0xNNNN  The hexadecimal number NNNN (e.g., 0x0100 is 256-decimal)
8B      8 byte (64 bits) entity
ADDR    The Address-record of RRP
API     Application/Program Interface
AT      Address Type
ATM     Asynchronous Transmission Mode
B       Byte (e.g., 4B)
b       bit (e.g., 32b)
BC      Byte Count (of parameters)
BER     Bit Error Rate
CAPA    The CAPAbility-record of RRP
CC      Capability Code
CSR     Common Source-Route
DA      Destination Address
DB      Data Block
DL      Data Length (in 8B words)
DSP     Digital Signal Processore
DT      Destination-Type
e       The MSbit of E
E       The Endianness field (in the EEP header)
EEP     End/End Protocol
EI      Error Indication
GP      General Purpose
GVL2    An RRP message, requesting L2 route to a given destination
GVRT    An RRP message asking an HR to give its routing tables
h       Optional header fields flag
HR      Half Router
HRTO    An RRP message asking which HR to use for a given destination
ID      Identification
IGMP    Internet Group Management Protocol
INFO    An RRP message providing information about nodes
IP      The Internet protocol
ISORM   The ISO Reference Model
L       Length field (exclusive of itself)
L2      Level-2 of the ISORM (Link)
L2RH    Level-2 Routing Header
L2SR    Source Route
L3      Level-3 of the ISORM (Network)
LA      Logical Address
LADR    The Logical-addresses-record of RRP
LAN     Local Area Network
LRT     Local Routing Table
LSbit   Least Significant bit
LSbyte  Least Significant byte
MAC     Message Authentication Code / Media Access Control
MPI     Message Passing Interface
MPP     Massively Parallel Processing system

Cohen et al.                  Experimental                     [Page 12]


Internet-Draft               PacketWay RRP                      May 1998

MSbit   Most Significant bit
MSbyte  Most Significant byte
MSU     Mississippi State University
MTU     Maximum Transmission Unit
MTUR    The MTU-record of RRP
M/C     Multicast
NAME    The name-record of RRP
NFS     Network File Server
OH      Optional Header field
OH-TYPE The Type of an Optional Header field
OT      Optional Trailer field
P       The Priority field
PAD     Padding After Data
PBD     Padding Before Data
PCI     The Peripheral Component Interconnect "standard"
PH      PacketWay Header
PL      Padding Length (always in bytes)
PPP     The Point-to-Point Protocol
PROM    Programmable ROM (Read-Only-Memory)
PT      Packet Type (2B)
PVM     Parallel Virtual Machine
PW      The Myrinet Packet Type assigned to PacketWay (PW=0x0300)
Q       Quality (of a path)
RCVF    Received-From list, or the Received-From record of RRP
RDRC    A re-direct message of RRP
RH      Routing Header
RID     Record ID
RL      Record Length (in 8B-words)
RRP     Router/Router Protocol
RT-hd   RT (Routing Table) header
RT      Routing Table
RTBL    An RRP message proving a Routing Table
RTHD    The Routing-Table-Header record of RRP
RTyp    RRP's Record Type
RZ      The Reserved field (in the EEP header)
SA      Source Address
SAN     System Area Network
SAN-ID  The 24-bit PacketWay-address of a SAN
SAR     Segmentation and Reassembly
SN      Serial Number
SNID    SAN-ID
SNMP    Simple Network Management Protocol
SR      Source Route (always at Level-2)
SRQR    The Source-Route-and-Q-record of RRP
ST      Symbol Type
TAIL    PacketWay EEP Trailer
TE      Type Extension (2B)
TELL    An RRP message requesting information about nodes partially specified
UNK     Unknown
V       Version
WRU?    An RRP message asking its recipient to identify itself
XRT     External Routing Table
xxx     A padding byte

Cohen et al.                  Experimental                     [Page 13]

Internet-Draft               PacketWay RRP                      May 1998

Editor's Address

   Anthony Skjellum
   Computer Science Department
   Box 9637
   Mississippi State University
   Mississippi State, MS 39762-9637

   Phone: 601-325-8435
   Fax:   601-325-8997
   Email: tony@cs.msstate.edu