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

ULE Extension Headers



Hi everyone,
I just started to draft the defintion for ULE extension headers, but i am 
becoming creative and crazy :), I have pasted the updation which i have done, 
though it is not complete, Wish to have your comments and views.


<snip>
     4. SNDU Format

        PDUs (IP packets and bridged Ethernet frames)are encapsulated using
        ULE to form a SNDU. Each SNDU is sent as an MPEG-2 Payload Unit. The
        encapsulation format to be used for PDUs  is illustrated below:

        <---------------------------- SNDU ----------------------------- >
        +-+-------+------+---------------------+----------------+--------+
        |E|Length | Type |   Ext.Header*       |       PDU      | CRC-32 |
        +-+-------+------+---------------------+----------------+--------+

        Figure 1: SNDU Encapsulation

        All multi-byte values in ULE (including Length, Type, and
        Destination fields) are transmitted in network byte order (most
        significant byte first). Appendix A provides informative examples of
        usage.

        4.1 The Destination Address Present Field
        Can be removed and moved on to Extension Header

        4.2 Extension Header Present Field

        The most significant bit of the Length Field carries the value of the
        Extension Header Present Field, the E-bit. A Value of 1 indicates the
        absence of extension header for ULE. Otherwise a value of 0 indicates
        presence of extension header(see section 4.6).

        By default, the E-bit value MUST be set to a value 1. i.e.
        extension header doesn't exist.

        4.3 Length Field
        <no change>

        4.4 End Indicator
        <no change>

        4.5 Type Field
        <no change>, Even if the extension headers are present, the Type Field
        carries the final SNDU payload type, i.e. even the payload is 
scrambled
        IP packet, it SHOULD have the value of 0x0800 in case of IPv4


        4.6 SNDU Extension Header Field
        The SNDU extension header format to be used is illustrated below:

        < ----------------------- Ext. Header Field ---------------------- >
        +----------------+-----+---------------+----// ....... //----------+
        |Ext.Header Type |NEHB | Ext. H Length |Ext. Header Param Value    |
        +----------------+-----+---------------+---// ....... //-----------+

        Figure 2: Extension header format

        4.6.1 Extension Header Type Field
        The 4-bit extension header type field indicates the additional
        information for the SNDU header, which has to be considered in
        decoding/encoding of the SNDU payload. But it is not MANDATORY
        to consider all the extension headers, again it is an implementation
        decision.

	The extension header types are yet to be finialized(MAX 15 different
        ext. header types). TBD

	For example,

	0 - Security Header
        1 - Section Packing
        2 - Section number
        3 - Payload Start Pointer/offset
        4 - Source Mac Address
        5 - Destination Mac Address
        etc.. TBD

        4.6.2 Next Extension header present field

        The most significant bit of the extension header Length Field carries
        the value of the Next Extension Header Present Field, the N-bit.
        A Value of 0 indicates the absence of next extension header. Otherwise
        a value of 1 indicates presence of extension header.

        By default, the N-bit value MUST be set to a value 0. i.e.
        next extension header doesn't exist.

        4.6.3 Extension header Length

	The 7-bit value that indicates the extension header value length, in bytes,
        for the Extension header of ULE.

       4.6.4 Extension Header Param Value

       This is the varible length parameter value for extension header. The 
length of
       this parameter is set by Extension header length(Section 4.6.3) based 
on the
       extension header type(Section 4.6.1).

       For example,

       Extension header type is 5 - Destionation Mac Address then,
       Extension header length is 6 - i.e. 6 bytes of ext. header value
       extension header param value is 00:50:c2:2f:42:43

       Extension header type is 3 - Payload Start Pointer/offset then,
       Extension header length is 2 - i.e. 2 bytes of offset where payload 
starts
       extension header param value is 20
       This is the typical example, if we say some of the extension headers as 
Mandatory
       and some are optional. In that case, all mandatory extension headers 
comes first,
       then follows payload start offset ext. header and all optional ext. 
headers
       next, if the receiver wishes to consider these optional, its well and 
fine
       otherwise, it can just discard and jump to the payload.

        SNDU Destination Address Field
	<no change> will be moved on to 4.6 subsection at appropirate location.


<snip>