Claims
- 1. An apparatus comprising:
a packet based transport protocol for use in data networks that operates independent over the underlying physical layer used by the network.
- 2. The apparatus of claim 1, wherein the protocol defines at least three different types of frames including Information frames, Supervisory frames, and Unnumbered frames.
- 3. The apparatus of claim 1, wherein the Information frame header contains the following fields:
a DSAP field configured to identify the protocol connection of a destination node in the network, a SSAP field configured to identify the protocol connection of a source node in the network; a control field configured to carry sequence numbers and control information; a flags field configured to maintain one or more flags; a source port configured to identify a source application; and a destination port configured to identify a destination application.
- 4. The apparatus of claim 3, wherein the DSAP and SSAP fields are each sixteen bits long with one bit of both fields used for identifying either an individual or a group address and the remaining fifteen bits used for addressing respectively.
- 5. The apparatus of claim 3, wherein the control field of the Information frame has one bit set to indicate that it is an Information frame, a first set of bits used to identify the send sequence number of the sender, a second set of bits used to identify the receive sequence number of the sender, and a Poll/Final bit.
- 6. The apparatus of claim 3, wherein the flags field includes flags for one or more of the following: a version field, memory management fields, and an urgent field.
- 7. The apparatus of claim 2, wherein the Supervisory frame contain one or more of the following types of fields:
a DSAP field configured to identify the protocol connection of a destination node in the network; a SSAP field configured to identify the protocol connection of a source node in the network; and a control field configured to carry sequence numbers and control information.
- 8. The apparatus of claim 7, wherein the DSAP and SSAP fields are each sixteen bits long with one bit of both fields used for identifying either an individual or a group address and the remaining fifteen bits used for addressing respectively.
- 9 The apparatus of claim 8, wherein the control field of the Supervisory frame has its two bits set to indicate that the frame is a Supervisory frame, a first set of bits used to identify a Supervisory frame type, a second set of bits used to identify the receive sequence number of the sender, and a Poll/Final bit.
- 10 The apparatus of claim 2, wherein the Unnumbered frame contain one or more of the following types of fields:
a DSAP field configured to identify the protocol connection of a destination node in the network; a SSAP field configured to identify the protocol connection of a source node in the network; and a control field configured to carry control information.
- 11 The apparatus of claim 10, wherein the DSAP and SSAP fields are each sixteen bits long with the one bit of both fields used for identifying either an individual or a group address and the remaining fifteen bits used for addressing respectively.
- 12 The apparatus of claim 10, wherein the control field is configured to carry one or more of the following control commands or responses:
a Set Asynchronous Balance Mode Extended (SABME) command; a Disconnect (DISC) command to disconnect a connection; An Unnumbered Acknowledgement (UA) response to answer a SABME or DISC command; a Disconnect Mode response to answer to a not SABME command when a connection has not yet started; a Frame Reject (FRMR) response for resuming operation after an error condition; an Exchange/Identification (XID) command/response to negotiate the window size of a receiving node in the network; and a TEST command/response to verify the status of a remote node in the network.
- 13 The apparatus of claim 12, wherein the format of the Exchange/Identification (XID) command/response includes a control field and a field used to define the window size of the receiving node.
- 14 The apparatus of claim 1, wherein the protocol is further configured to encapsulate directly on top of an Ethernet or Ethernet II frame, the encapsulated protocol frame over the Ethernet or Ethernet II frame including a destination address field, a source address field, a data field, an E-type field, and a protocol header field.
- 15. The apparatus of claim 1, wherein the protocol is further configured to encapsulate over HARD on top of an Ethernet or Ethernet II frame, the encapsulated protocol frames over HARD on top of the Ethernet or Ethernet II frame including a destination address field, a source address field, a data field, an E-type field, a HARD field, and a protocol header field.
- 16. The apparatus of claim 1, wherein the protocol is further configured to encapsulate over a Generic Routing Encapsulation protocol on top of the IP protocol including a checksum present field C, a Reserved field, a Version field, and an Ethernet Protocol Type field indicating that the encapsulated protocol is ABC.
- 17. The apparatus of claim 1, wherein the protocol is further configured to encapsulate over a HARD protocol over a Generic Routing Encapsulation protocol on top of the IP protocol, the HARD protocol including a sequence number field, a source ID field, and a protocol type field indicating that the encapsulated protocol is ABC, and the Generic Routing Encapsulation protocol including a checksum present field C, a Reserved field, a Version field, and an Ethernet Protocol Type field indicating that the encapsulated protocol is HARD.
- 18. The apparatus of claim 1, further comprising a flow control mechanism configured to control the flow of packets between a transmitting node and a receiving node in the network.
- 19. The apparatus of claim 1, wherein the flow control mechanism at the receiving node transmits a Receiver Not Ready command to the transmitting node when a receiving buffer for buffering received packets at the receiving node exceeds a first predetermined threshold and a Receiver Ready command when the number of buffered packets falls below a second predetermined threshold.
- 20. The apparatus of claim 1, further comprising a congestion control mechanism configured to prevent overflow conditions on a link in the network resulting in the possibility of packets being dropped.
- 21. The apparatus of claim 20, wherein the congestion control mechanism is configured to reduce the number of frames sent by a sending node when a reject message indicating that a receiving node did not receive a message is received by the receiving node.
- 22. The apparatus of claim 1, wherein the protocol is further configured to support the multiplexing of higher layers than the protocol so that multiple applications may share the same connection.
- 23. The apparatus of claim 1, wherein the underlying physical layer includes one of the following IEEE 802.3, Ethernet, Ethernet II, HARD, or IP.
- 24. The apparatus of claim 6, wherein the protocol supports the delivery of urgent data to the destination when the Urgent field of an Informational frame is set.
- 25. The apparatus of claim 6, wherein the protocol supports hardware memory management and segmentation when the memory management flags of an Informational frame are used.
- 26. The apparatus of claim 16 wherein the protocol can be routed over an IP network.
- 27. The apparatus of claim 21, wherein a back-off retransmission timer is used to avoid the synchronization of multiple transmitters where all transmitters observed almost the same Round Trip Time.
RELATED APPLICATIONS
[0001] The present invention is related to U.S. application Ser. No. ______ (attorney docket number ANDIP017) entitled “A Scalable Network Attached Storage System” by Thomas Edsall et. al. and U.S. application Ser. No. ______ (attorney docket number ANDIIP023) entitled “Apparatus and Method for a High Availability Data Network Using Replicated Delivery” by Gai Silvano et. al., both filed on the same day and assigned to the same assignee as the present invention, and incorporated herein by reference for all purposes.