increase datagram number in transport header and do not allow wrap
This commit is contained in:
parent
dd7e9dbc19
commit
86f737a404
1 changed files with 17 additions and 15 deletions
|
|
@ -11,7 +11,7 @@
|
||||||
<?rfc tocindent="yes"?>
|
<?rfc tocindent="yes"?>
|
||||||
<?rfc tocompact="yes"?>
|
<?rfc tocompact="yes"?>
|
||||||
|
|
||||||
<rfc category="std" docName="draft-ietf-lsvr-l3dl-00" ipr="trust200902">
|
<rfc category="std" docName="draft-ietf-lsvr-l3dl-01" ipr="trust200902">
|
||||||
|
|
||||||
<front>
|
<front>
|
||||||
|
|
||||||
|
|
@ -374,27 +374,29 @@
|
||||||
<section anchor="transport" title="Transport Layer">
|
<section anchor="transport" title="Transport Layer">
|
||||||
|
|
||||||
<t>L3DL PDUs are carried by a simple transport layer which allows
|
<t>L3DL PDUs are carried by a simple transport layer which allows
|
||||||
long PDUs to occupy many Ethernet frames. The L3DL data in each
|
long PDUs to occupy many Ethernet frames. An L3DL frame is referred
|
||||||
frame is referred to as a Datagram.</t>
|
to as a Datagram.</t>
|
||||||
|
|
||||||
<t>The L3DL Transport Layer encapsulates each Datagram using a
|
<t>The L3DL Transport Layer encapsulates each Datagram using a
|
||||||
common transport header.</t>
|
common transport header.</t>
|
||||||
|
|
||||||
<t>If a PDU does not fit in a single datagram, it is broken into
|
<t>If a PDU does not fit in a single datagram, it is broken into
|
||||||
multiple datagrams and reassembled by the receiver a la <xref
|
multiple datagrams and reassembled by the receiver a la <xref
|
||||||
target="RFC0791"/> Section 2.3 Fragmentation..</t>
|
target="RFC0791"/> Section 2.3 Fragmentation.</t>
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
protocol "Version:8,L:1,Datagram Number:7,Datagram Length:16,Checksum:32"
|
protocol "Version:7,L:1,Datagram Number:24,Datagram Length:16,Checksum:32,Payload...:16"
|
||||||
-->
|
-->
|
||||||
<figure>
|
<figure>
|
||||||
<artwork>
|
<artwork>
|
||||||
0 1 2 3
|
0 1 2 3
|
||||||
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
|
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
|
||||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
||||||
| Version |L|Datagram Num.| Datagram Length |
|
| Version |L| Datagram Number |
|
||||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
||||||
| Checksum |
|
| Datagram Length | Checksum ~
|
||||||
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
||||||
|
~ | Payload... |
|
||||||
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|
||||||
</artwork>
|
</artwork>
|
||||||
</figure>
|
</figure>
|
||||||
|
|
@ -402,21 +404,22 @@
|
||||||
<t>The fields of the L3DL Transport Header are as follows:
|
<t>The fields of the L3DL Transport Header are as follows:
|
||||||
<list style="hanging">
|
<list style="hanging">
|
||||||
|
|
||||||
<t hangText="Version:">Version number of the protocol, currently
|
<t hangText="Version:">Seven-bit Version number of the protocol,
|
||||||
0. Values other than 0 are treated as errors.</t>
|
currently 0. Values other than 0 are treated as errors.</t>
|
||||||
|
|
||||||
<t hangText="L:">A bit that set to one if this Datagram is the
|
<t hangText="L:">A bit that set to one if this Datagram is the
|
||||||
last Datagram of the PDU. For a PDU which fits in only one
|
last Datagram of the PDU. For a PDU which fits in only one
|
||||||
Datagram, it is set to one. Note that this is the inverse of the
|
Datagram, it is set to one. Note that this is the inverse of the
|
||||||
marking technique used by <xref target="RFC0791"/>.</t>
|
marking technique used by <xref target="RFC0791"/>.</t>
|
||||||
|
|
||||||
<t hangText="Datagram Number:">0..127, a monotonically increasing
|
<t hangText="Datagram Number:">A monotonically increasing 24-bit
|
||||||
value, modulo 128, see <xref target="RFC1982"/> which starts at 0
|
value which starts at zero for each PDU. This is used to
|
||||||
for each PDU. Note that this does not limit an L3DL PDU to 128
|
reassemble frames into PDUs a la <xref target="RFC0791"/> Section
|
||||||
frames.</t>
|
2.3. Note that this limits an L3DL PDU to 2^24 frames.</t>
|
||||||
|
|
||||||
<t hangText="Datagram Length:">Total number of octets in the
|
<t hangText="Datagram Length:">Total number of octets in the
|
||||||
Datagram including all payloads and fields.</t>
|
Datagram including all payloads and fields. Note that this limits
|
||||||
|
a datagram to 2^16 octets.</t>
|
||||||
|
|
||||||
<t hangText="Checksum:">A 32 bit hash over the Datagram to detect
|
<t hangText="Checksum:">A 32 bit hash over the Datagram to detect
|
||||||
bit flips, see <xref target="checksum"/>.</t>
|
bit flips, see <xref target="checksum"/>.</t>
|
||||||
|
|
@ -1544,7 +1547,6 @@ uint32_t sbox_checksum_32(const uint8_t *b, const size_t n)
|
||||||
<references title="Normative References">
|
<references title="Normative References">
|
||||||
<?rfc include="reference.RFC.1213"?>
|
<?rfc include="reference.RFC.1213"?>
|
||||||
<?rfc include="reference.RFC.1629"?>
|
<?rfc include="reference.RFC.1629"?>
|
||||||
<?rfc include="reference.RFC.1982"?>
|
|
||||||
<?rfc include="reference.RFC.2119"?>
|
<?rfc include="reference.RFC.2119"?>
|
||||||
<?rfc include="reference.RFC.3032"?>
|
<?rfc include="reference.RFC.3032"?>
|
||||||
<?rfc include="reference.RFC.4271"?>
|
<?rfc include="reference.RFC.4271"?>
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue