draft-ietf-intarea-gue-03.txt | draft-ietf-intarea-gue-04.txt | |||
---|---|---|---|---|
Internet Area WG T. Herbert | Internet Area WG T. Herbert | |||
Internet-Draft Quantonium | Internet-Draft Quantonium | |||
Intended status: Standard track L. Yong | Intended status: Standard track L. Yong | |||
Expires November 11, 2017 Huawei USA | Expires November 19, 2017 Huawei USA | |||
O. Zia | O. Zia | |||
Microsoft | Microsoft | |||
May 10, 2017 | May 18, 2017 | |||
Generic UDP Encapsulation | Generic UDP Encapsulation | |||
draft-ietf-intarea-gue-03 | draft-ietf-intarea-gue-04 | |||
Status of this Memo | Status of this Memo | |||
This Internet-Draft is submitted in full conformance with the | This Internet-Draft is submitted in full conformance with the | |||
provisions of BCP 78 and BCP 79. | provisions of BCP 78 and BCP 79. | |||
Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
Task Force (IETF), its areas, and its working groups. Note that | Task Force (IETF), its areas, and its working groups. Note that | |||
other groups may also distribute working documents as Internet- | other groups may also distribute working documents as Internet- | |||
Drafts. | Drafts. | |||
skipping to change at page 4, line 23 ¶ | skipping to change at page 4, line 23 ¶ | |||
5.12 Negotiation of acceptable flags and extension fields . . . 24 | 5.12 Negotiation of acceptable flags and extension fields . . . 24 | |||
6. Motivation for GUE . . . . . . . . . . . . . . . . . . . . . . 24 | 6. Motivation for GUE . . . . . . . . . . . . . . . . . . . . . . 24 | |||
6.1. Benefits of GUE . . . . . . . . . . . . . . . . . . . . . . 24 | 6.1. Benefits of GUE . . . . . . . . . . . . . . . . . . . . . . 24 | |||
6.2 Comparison of GUE to other encapsulations . . . . . . . . . 25 | 6.2 Comparison of GUE to other encapsulations . . . . . . . . . 25 | |||
7. Security Considerations . . . . . . . . . . . . . . . . . . . . 26 | 7. Security Considerations . . . . . . . . . . . . . . . . . . . . 26 | |||
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 27 | 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 27 | |||
8.1. UDP source port . . . . . . . . . . . . . . . . . . . . . . 27 | 8.1. UDP source port . . . . . . . . . . . . . . . . . . . . . . 27 | |||
8.2. GUE version number . . . . . . . . . . . . . . . . . . . . 28 | 8.2. GUE version number . . . . . . . . . . . . . . . . . . . . 28 | |||
8.3. Control types . . . . . . . . . . . . . . . . . . . . . . . 28 | 8.3. Control types . . . . . . . . . . . . . . . . . . . . . . . 28 | |||
8.4. Flag-fields . . . . . . . . . . . . . . . . . . . . . . . . 28 | 8.4. Flag-fields . . . . . . . . . . . . . . . . . . . . . . . . 28 | |||
9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 29 | 9. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 28 | |||
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 29 | 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 29 | |||
10.1. Normative References . . . . . . . . . . . . . . . . . . . 29 | 10.1. Normative References . . . . . . . . . . . . . . . . . . . 29 | |||
10.2. Informative References . . . . . . . . . . . . . . . . . . 30 | 10.2. Informative References . . . . . . . . . . . . . . . . . . 29 | |||
Appendix A: NIC processing for GUE . . . . . . . . . . . . . . . . 33 | Appendix A: NIC processing for GUE . . . . . . . . . . . . . . . . 32 | |||
A.1. Receive multi-queue . . . . . . . . . . . . . . . . . . . . 33 | A.1. Receive multi-queue . . . . . . . . . . . . . . . . . . . . 32 | |||
A.2. Checksum offload . . . . . . . . . . . . . . . . . . . . . 33 | A.2. Checksum offload . . . . . . . . . . . . . . . . . . . . . 33 | |||
A.2.1. Transmit checksum offload . . . . . . . . . . . . . . . 34 | A.2.1. Transmit checksum offload . . . . . . . . . . . . . . . 33 | |||
A.2.2. Receive checksum offload . . . . . . . . . . . . . . . 34 | A.2.2. Receive checksum offload . . . . . . . . . . . . . . . 34 | |||
A.3. Transmit Segmentation Offload . . . . . . . . . . . . . . . 35 | A.3. Transmit Segmentation Offload . . . . . . . . . . . . . . . 34 | |||
A.4. Large Receive Offload . . . . . . . . . . . . . . . . . . . 36 | A.4. Large Receive Offload . . . . . . . . . . . . . . . . . . . 35 | |||
Appendix B: Implementation considerations . . . . . . . . . . . . 36 | Appendix B: Implementation considerations . . . . . . . . . . . . 36 | |||
B.1. Priveleged ports . . . . . . . . . . . . . . . . . . . . . 36 | B.1. Priveleged ports . . . . . . . . . . . . . . . . . . . . . 36 | |||
B.2. Setting flow entropy as a route selector . . . . . . . . . 37 | B.2. Setting flow entropy as a route selector . . . . . . . . . 36 | |||
B.3. Hardware protocol implementation considerations . . . . . . 37 | B.3. Hardware protocol implementation considerations . . . . . . 36 | |||
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 37 | Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 37 | |||
1. Introduction | 1. Introduction | |||
This specification describes Generic UDP Encapsulation (GUE) which is | This specification describes Generic UDP Encapsulation (GUE) which is | |||
a general method for encapsulating packets of arbitrary IP protocols | a general method for encapsulating packets of arbitrary IP protocols | |||
within User Datagram Protocol (UDP) [RFC0768] packets. Encapsulating | within User Datagram Protocol (UDP) [RFC0768] packets. Encapsulating | |||
packets in UDP facilitates efficient transport across networks. | packets in UDP facilitates efficient transport across networks. | |||
Networking devices widely provide protocol specific processing and | Networking devices widely provide protocol specific processing and | |||
optimizations for UDP (as well as TCP) packets. Packets for atypical | optimizations for UDP (as well as TCP) packets. Packets for atypical | |||
skipping to change at page 28, line 46 ¶ | skipping to change at page 28, line 46 ¶ | |||
| 128..255 | User defined | This document | | | 128..255 | User defined | This document | | |||
+----------------+------------------+---------------+ | +----------------+------------------+---------------+ | |||
8.4. Flag-fields | 8.4. Flag-fields | |||
IANA is requested to create a "GUE flag-fields" registry to allocate | IANA is requested to create a "GUE flag-fields" registry to allocate | |||
flags and extension fields used with GUE. This shall be a registry of | flags and extension fields used with GUE. This shall be a registry of | |||
bit assignments for flags, length of extension fields for | bit assignments for flags, length of extension fields for | |||
corresponding flags, and descriptive strings. There are sixteen bits | corresponding flags, and descriptive strings. There are sixteen bits | |||
for primary GUE header flags (bit number 0-15). New values are | for primary GUE header flags (bit number 0-15). New values are | |||
assigned in accordance with RFC Required policy [RFC5226]. | assigned in accordance with RFC Required policy [RFC5226]. New flags | |||
should be allocated from high to low order bit contiguously without | ||||
+-------------+--------------+-------------+--------------------+ | holes. [GUEXTENS] requests in initial set of flag assignments. | |||
| Flags bits | Field size | Description | Reference | | ||||
+-------------+--------------+-------------+--------------------+ | ||||
| Bit 0 | 4 bytes | Group | [GUEEXTENS] | | ||||
| | | identifier | | | ||||
| | | | | | ||||
| Bit 1..3 | 001->8 bytes | Security | [GUEEXTENS] | | ||||
| | 010->16 bytes| | | | ||||
| | 011->32 bytes| | | | ||||
| | | | | | ||||
| Bit 4 | 8 bytes | Fragmen- | [GUEEXTENS] | | ||||
| | | tation | | | ||||
| | | | | | ||||
| Bit 5 | 4 bytes | Payload | [GUEEXTENS] | | ||||
| | | transform | | | ||||
| | | | | | ||||
| Bit 6 | 4 bytes | Remote | [GUEEXTENS] | | ||||
| | | checksum | | | ||||
| | | offload | | | ||||
| | | | | | ||||
| Bit 7 | 4 bytes | Checksum | [GUEEXTENS] | | ||||
| | | | | | ||||
| Bit 8..15 | | Unassigned | | | ||||
+-------------+--------------+-------------+--------------------+ | ||||
New flags are to be allocated from high to low order bit contiguously | ||||
without holes. | ||||
9. Acknowledgements | 9. Acknowledgements | |||
The authors would like to thank David Liu, Erik Nordmark, Fred | The authors would like to thank David Liu, Erik Nordmark, Fred | |||
Templin, Adrian Farrel, Bob Briscoe, and Murray Kucherawy for | Templin, Adrian Farrel, Bob Briscoe, and Murray Kucherawy for | |||
valuable input on this draft. | valuable input on this draft. | |||
10. References | 10. References | |||
10.1. Normative References | 10.1. Normative References | |||
End of changes. 9 change blocks. | ||||
41 lines changed or deleted | 15 lines changed or added | |||
This html diff was produced by rfcdiff 1.45. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ |