Ieee8022LlcSnapHeader

Namespace: inet

class Ieee8022LlcSnapHeader

This chunk represents an IEEE 802.2 LLC header with SNAP extension as defined by the section 9.2.4 OUI Extended EtherType of the IEEE Std 802-2014, IEEE Standard for Local and Metropolitan Area Networks: Overview and Architecture.

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

| DSAP | SSAP | CONTROL | OUI | +—————+—————+—————+—————+ | OUI | PROTOCOLID | +——————————-+——————————-+

Inheritance diagram

Extends

Name

Type

Description

Ieee8022LlcHeader

class

This chunk represents an IEEE 802.2 LLC header as defined by the ANSI/IEEE Std 802.2, 1998, IEEE Standard for Information technology, Telecommunications and information exchange between systems, Local and metropolitan area networks.

Fields

Name

Type

Description

id

int

mutable

bool

complete

bool

correct

bool

properlyRepresented

bool

chunkLength

b

rawBin

string[]

rawHex

string[]

regionTags

SharingRegionTagSet::TagBaseRegionTag[]

chunkLength

dsap

short

1 byte

ssap

short

1 byte

control

int

1 or 2 byte, control = byte[0]+256*byte[1], two bytes, when (byte[0] & 3) != 3

chunkLength

dsap

ssap

control

oui

int

organizationally unique identifier (OUI); 0 for protocols that have an EtherType (ARP, IPv4, IPv6, etc.), 3 bytes

protocolId

int

protocol identifier (PID); stores EtherType if orgCode is 0, 2 bytes

Properties

Name

Value

Description

beforeChange

handleChange()

descriptor

readonly

existingClass

packetData

Source code

//
// This chunk represents an IEEE 802.2 LLC header with SNAP extension as defined
// by the section 9.2.4 OUI Extended EtherType of the IEEE Std 802-2014, IEEE
// Standard for Local and Metropolitan Area Networks: Overview and Architecture.
//
//  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
// +---------------+---------------+---------------+---------------+
// |      DSAP     |      SSAP     |    CONTROL    |      OUI      |
// +---------------+---------------+---------------+---------------+
// |              OUI              |           PROTOCOLID          |
// +-------------------------------+-------------------------------+
//
class Ieee8022LlcSnapHeader extends Ieee8022LlcHeader
{
    chunkLength = B(8);
    dsap = 0xAA;
    ssap = 0xAA;
    control = 0x03;
    int oui = -1;   // organizationally unique identifier (OUI); 0 for protocols that have an EtherType (ARP, IPv4, IPv6, etc.), 3 bytes
    int protocolId = -1; // protocol identifier (PID); stores ~EtherType if orgCode is 0, 2 bytes
}

File: src/inet/linklayer/ieee8022/Ieee8022SnapHeader.msg