EthernetFragmentPhyHeader

Namespace inet::physicallayer

EthernetFragmentPhyHeader

class

This class represents an Ethernet fragment PHY header as defined in the IEEE Std 802.3-2018, IEEE Standard for Ethernet.

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 +---------------------------------------------------------------+ | Preamble (0x55) | + +---------------+ | | SMD-Sx | +-----------------------------------------------+---------------+

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 +---------------------------------------------------------------+ | Preamble (0x55) | + +---------------+---------------+ | | SMD-Cx | FragNumber | +-------------------------------+---------------+---------------+

Extends

Name Type Description
EthernetPhyHeaderBase (unknown -- not in documented files)

Fields

Name Type Description
preambleType EthernetPhyHeaderType
smdNumber uint8_t

0-3, see SMD_Sx or SMD_Cx

fragmentNumber uint8_t

0-3 (real fragment number modulo 4)

Packet operations (observed)

actionmodule
insertAtFrontEthernetFragmentPhyHeaderInserter
peekAtFrontEthernetFragmentPhyHeaderChecker
popAtFrontEthernetFragmentPhyHeaderChecker

Source code

//
// This class represents an Ethernet fragment PHY header as defined in the IEEE
// Std 802.3-2018, IEEE Standard for Ethernet.
//
//  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
// +---------------------------------------------------------------+
// |                        Preamble (0x55)                        |
// +                                               +---------------+
// |                                               |     SMD-Sx    |
// +-----------------------------------------------+---------------+
//
//  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
// +---------------------------------------------------------------+
// |                        Preamble (0x55)                        |
// +                               +---------------+---------------+
// |                               |     SMD-Cx    |   FragNumber  |
// +-------------------------------+---------------+---------------+
//
class EthernetFragmentPhyHeader extends EthernetPhyHeaderBase
{
    EthernetPhyHeaderType preambleType = SFD;
    uint8_t smdNumber = 0;       // 0-3, see SMD_Sx or SMD_Cx
    uint8_t fragmentNumber = 0;  // 0-3 (real fragment number modulo 4)
}
File: src/inet/physicallayer/wired/ethernet/EthernetPhyHeader.msg