BgpUpdatePathAttributes

BgpUpdatePathAttributes

class

(no description)

Usage diagram

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Extends

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

Known subclasses

Name Type Description
BgpUpdatePathAttributesAggregator class (no description)
BgpUpdatePathAttributesAsPath class

AS_PATH (RFC4271 Section 4.3, Type code 2):

BgpUpdatePathAttributesAtomicAggregate class

ATOMIC_AGGREGATE (RFC4271 Section 4.3, Type code 6):

BgpUpdatePathAttributesLocalPref class

LOCAL_PREF (RFC4271 Section 4.3, Type code 5):

BgpUpdatePathAttributesMultiExitDisc class

MULTI_EXIT_DISC (RFC4271 Section 4.3, Type code 4):

BgpUpdatePathAttributesNextHop class

NEXT_HOP (RFC4271 Section 4.3, Type code 3):

BgpUpdatePathAttributesOrigin class

ORIGIN (RFC4271 Section 4.3, Type code 1):

Fields

Name Type Description
optionalBit bool

1 bit, Optional bit. It defines whether the attribute is optional (if set to 1) or well-known (if set to 0).

transitiveBit bool

1 bit, Transitive bit. It defines whether an optional attribute is transitive (if set to 1) or non-transitive (if set to 0). Transitive bit MUST be set to 1 for well-known attributes

partialBit bool

1 bit, Partial bit. It defines whether the information contained in the optional transitive attribute is partial (if set to 1) or complete (if set to 0). For well-known attributes and for optional non-transitive attributes, the Partial bit MUST be set to 0.

extendedLengthBit bool

1 bit, Extended Length bit. It defines whether the Attribute Length is one octet (if set to 0) or two octets (if set to 1).

reserved unsigned short

4 bit

typeCode BgpUpdateAttributeTypeCode

1 octet

length unsigned short

2 octets or just 1 depending on the value of flags.extendedLengthBit

Source code

class BgpUpdatePathAttributes extends cObject
{
    bool optionalBit = false;    // 1 bit, Optional bit. It defines whether the attribute is optional (if set to 1) or well-known (if set to 0).
    bool transitiveBit = false;    // 1 bit, Transitive bit. It defines whether an optional attribute is transitive (if set to 1) or non-transitive (if set to 0). Transitive bit MUST be set to 1 for well-known attributes
    bool partialBit = false;    // 1 bit, Partial bit. It defines whether the information contained in the optional transitive attribute is partial (if set to 1) or complete (if set to 0).  For well-known attributes and for optional non-transitive attributes, the Partial bit MUST be set to 0.
    bool extendedLengthBit = false;    // 1 bit, Extended Length bit. It defines whether the Attribute Length is one octet (if set to 0) or two octets (if set to 1).
    unsigned short reserved = 0;    // 4 bit
    BgpUpdateAttributeTypeCode typeCode;    // 1 octet
    unsigned short length; // 2 octets or just 1 depending on the value of flags.extendedLengthBit
}

File: src/inet/routing/bgpv4/bgpmessage/BgpHeader.msg