UDP LOWPAN_NHC Extension Header Encoding - see RFC 6282. More...
#include <sixlowpan-header.h>
Public Types | |
enum | Ports_e { PORTS_INLINE = 0, PORTS_ALL_SRC_LAST_DST, PORTS_LAST_SRC_ALL_DST, PORTS_LAST_SRC_LAST_DST } |
Ports: More... | |
Public Member Functions | |
SixLowPanUdpNhcExtension (void) | |
virtual uint32_t | Deserialize (Buffer::Iterator start) |
Deserialize the packet. More... | |
bool | GetC (void) const |
Get the C (Checksum). More... | |
uint16_t | GetChecksum (void) const |
Get the Checksum field value. More... | |
uint16_t | GetDstPort () const |
Get the Destination Port. More... | |
virtual TypeId | GetInstanceTypeId (void) const |
Return the instance type identifier. More... | |
virtual SixLowPanDispatch::NhcDispatch_e | GetNhcDispatchType (void) const |
Get the NhcDispatch type. More... | |
Ports_e | GetPorts (void) const |
Get the compressed Src and Dst Ports. More... | |
virtual uint32_t | GetSerializedSize (void) const |
Get the serialized size of the packet. More... | |
uint16_t | GetSrcPort () const |
Get the Destination Port. More... | |
virtual void | Print (std::ostream &os) const |
virtual void | Serialize (Buffer::Iterator start) const |
Serialize the packet. More... | |
void | SetC (bool cField) |
Set the C (Checksum). More... | |
void | SetChecksum (uint16_t checksum) |
Set the Checksum field values. More... | |
void | SetDstPort (uint16_t port) |
Set the Destination Port. More... | |
void | SetPorts (Ports_e port) |
Set the compressed Src and Dst Ports. More... | |
void | SetSrcPort (uint16_t port) |
Set the Destination Port. More... | |
Public Member Functions inherited from ns3::Header | |
virtual | ~Header () |
Public Member Functions inherited from ns3::ObjectBase | |
virtual | ~ObjectBase () |
Virtual destructor. More... | |
void | GetAttribute (std::string name, AttributeValue &value) const |
bool | GetAttributeFailSafe (std::string name, AttributeValue &attribute) const |
void | SetAttribute (std::string name, const AttributeValue &value) |
bool | SetAttributeFailSafe (std::string name, const AttributeValue &value) |
bool | TraceConnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceConnectWithoutContext (std::string name, const CallbackBase &cb) |
bool | TraceDisconnect (std::string name, std::string context, const CallbackBase &cb) |
bool | TraceDisconnectWithoutContext (std::string name, const CallbackBase &cb) |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Return the instance type identifier. More... | |
Static Public Member Functions inherited from ns3::Header | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::Chunk | |
static TypeId | GetTypeId (void) |
Static Public Member Functions inherited from ns3::ObjectBase | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Private Attributes | |
uint8_t | m_baseFormat |
Dispatch + encoding fields. More... | |
uint16_t | m_checksum |
Checksum. More... | |
uint16_t | m_dstPort |
Destination port. More... | |
uint16_t | m_srcPort |
Source port. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from ns3::ObjectBase | |
void | ConstructSelf (const AttributeConstructionList &attributes) |
virtual void | NotifyConstructionCompleted (void) |
This method is invoked once all member attributes have been initialized. More... | |
UDP LOWPAN_NHC Extension Header Encoding - see RFC 6282.
Doxygen introspection did not find any typical Config paths.
0 1 2 3 4 5 6 7 +---+---+---+---+---+---+---+---+ | 1 | 1 | 1 | 1 | 0 | C | P | +---+---+---+---+---+---+---+---+
No Attributes are defined for this type.
No TraceSources are defined for this type.
Definition at line 1076 of file sixlowpan-header.h.
Ports:
00: 16 bits for both Source Port and Destination Port 01: 16 bits for Source Port. Last 8 bits for Destination Port 10: Last 8 bits for Source Port. All 16 bits for Destination Port 11: Last 4 bits of both Source Port and Destination Port
Enumerator | |
---|---|
PORTS_INLINE | |
PORTS_ALL_SRC_LAST_DST | |
PORTS_LAST_SRC_ALL_DST | |
PORTS_LAST_SRC_LAST_DST |
Definition at line 1087 of file sixlowpan-header.h.
ns3::SixLowPanUdpNhcExtension::SixLowPanUdpNhcExtension | ( | void | ) |
Definition at line 1553 of file sixlowpan-header.cc.
References m_baseFormat, m_checksum, m_dstPort, and m_srcPort.
|
virtual |
Deserialize the packet.
start | Buffer iterator |
Implements ns3::Header.
Definition at line 1642 of file sixlowpan-header.cc.
References GetC(), GetPorts(), GetSerializedSize(), m_baseFormat, m_checksum, m_dstPort, m_srcPort, PORTS_ALL_SRC_LAST_DST, PORTS_INLINE, PORTS_LAST_SRC_ALL_DST, PORTS_LAST_SRC_LAST_DST, ns3::Buffer::Iterator::ReadNtohU16(), ns3::Buffer::Iterator::ReadU16(), ns3::Buffer::Iterator::ReadU8(), and visualizer.core::start().
bool ns3::SixLowPanUdpNhcExtension::GetC | ( | void | ) | const |
Get the C (Checksum).
Definition at line 1724 of file sixlowpan-header.cc.
References m_baseFormat.
Referenced by ns3::SixLowPanNetDevice::DecompressLowPanUdpNhc(), Deserialize(), GetSerializedSize(), and Serialize().
uint16_t ns3::SixLowPanUdpNhcExtension::GetChecksum | ( | void | ) | const |
Get the Checksum field value.
Definition at line 1734 of file sixlowpan-header.cc.
References m_checksum.
Referenced by ns3::SixLowPanNetDevice::DecompressLowPanUdpNhc().
uint16_t ns3::SixLowPanUdpNhcExtension::GetDstPort | ( | void | ) | const |
Get the Destination Port.
Definition at line 1713 of file sixlowpan-header.cc.
References m_dstPort.
Referenced by ns3::SixLowPanNetDevice::DecompressLowPanUdpNhc().
|
virtual |
Return the instance type identifier.
Implements ns3::ObjectBase.
Definition at line 1570 of file sixlowpan-header.cc.
References GetTypeId().
|
virtual |
Get the NhcDispatch type.
Definition at line 1682 of file sixlowpan-header.cc.
References ns3::SixLowPanDispatch::LOWPAN_UDPNHC.
SixLowPanUdpNhcExtension::Ports_e ns3::SixLowPanUdpNhcExtension::GetPorts | ( | void | ) | const |
Get the compressed Src and Dst Ports.
Definition at line 1693 of file sixlowpan-header.cc.
References m_baseFormat.
Referenced by ns3::SixLowPanNetDevice::DecompressLowPanUdpNhc(), Deserialize(), GetSerializedSize(), and Serialize().
|
virtual |
Get the serialized size of the packet.
Implements ns3::Header.
Definition at line 1580 of file sixlowpan-header.cc.
References GetC(), GetPorts(), PORTS_ALL_SRC_LAST_DST, PORTS_INLINE, PORTS_LAST_SRC_ALL_DST, and PORTS_LAST_SRC_LAST_DST.
Referenced by ns3::SixLowPanNetDevice::CompressLowPanUdpNhc(), and Deserialize().
uint16_t ns3::SixLowPanUdpNhcExtension::GetSrcPort | ( | void | ) | const |
Get the Destination Port.
Definition at line 1703 of file sixlowpan-header.cc.
References m_srcPort.
Referenced by ns3::SixLowPanNetDevice::DecompressLowPanUdpNhc().
|
static |
Return the instance type identifier.
Definition at line 1562 of file sixlowpan-header.cc.
References ns3::TypeId::SetParent().
Referenced by GetInstanceTypeId().
|
virtual |
os | output stream This method is used by Packet::Print to print the content of a trailer as ascii data to a c++ output stream. Although the trailer is free to format its output as it wishes, it is recommended to follow a few rules to integrate with the packet pretty printer: start with flags, small field values located between a pair of parens. Values should be separated by whitespace. Follow the parens with the important fields, separated by whitespace. i.e.: (field1 val1 field2 val2 field3 val3) field4 val4 field5 val5 |
Implements ns3::Header.
Definition at line 1575 of file sixlowpan-header.cc.
References m_baseFormat.
Referenced by ns3::operator<<().
|
virtual |
Serialize the packet.
start | Buffer iterator |
Implements ns3::Header.
Definition at line 1605 of file sixlowpan-header.cc.
References GetC(), GetPorts(), m_baseFormat, m_checksum, m_dstPort, m_srcPort, PORTS_ALL_SRC_LAST_DST, PORTS_INLINE, PORTS_LAST_SRC_ALL_DST, PORTS_LAST_SRC_LAST_DST, visualizer.core::start(), ns3::Buffer::Iterator::WriteHtonU16(), ns3::Buffer::Iterator::WriteU16(), and ns3::Buffer::Iterator::WriteU8().
void ns3::SixLowPanUdpNhcExtension::SetC | ( | bool | cField | ) |
Set the C (Checksum).
cField | false (All checksum carried in-line), true (Checksum elided) |
Definition at line 1718 of file sixlowpan-header.cc.
References m_baseFormat.
Referenced by ns3::SixLowPanNetDevice::CompressLowPanUdpNhc().
void ns3::SixLowPanUdpNhcExtension::SetChecksum | ( | uint16_t | checksum | ) |
Set the Checksum field values.
checksum | the Checksum field value |
Definition at line 1729 of file sixlowpan-header.cc.
References m_checksum.
Referenced by ns3::SixLowPanNetDevice::CompressLowPanUdpNhc().
void ns3::SixLowPanUdpNhcExtension::SetDstPort | ( | uint16_t | port | ) |
Set the Destination Port.
port | the Destination Port. |
Definition at line 1708 of file sixlowpan-header.cc.
References m_dstPort.
Referenced by ns3::SixLowPanNetDevice::CompressLowPanUdpNhc().
void ns3::SixLowPanUdpNhcExtension::SetPorts | ( | Ports_e | port | ) |
Set the compressed Src and Dst Ports.
port | Src and Dst the Ports |
Definition at line 1687 of file sixlowpan-header.cc.
References m_baseFormat.
Referenced by ns3::SixLowPanNetDevice::CompressLowPanUdpNhc().
void ns3::SixLowPanUdpNhcExtension::SetSrcPort | ( | uint16_t | port | ) |
Set the Destination Port.
port | the Destination Port. |
Definition at line 1698 of file sixlowpan-header.cc.
References m_srcPort.
Referenced by ns3::SixLowPanNetDevice::CompressLowPanUdpNhc().
|
private |
Dispatch + encoding fields.
Definition at line 1197 of file sixlowpan-header.h.
Referenced by Deserialize(), GetC(), GetPorts(), Print(), Serialize(), SetC(), SetPorts(), and SixLowPanUdpNhcExtension().
|
private |
Checksum.
Definition at line 1198 of file sixlowpan-header.h.
Referenced by Deserialize(), GetChecksum(), Serialize(), SetChecksum(), and SixLowPanUdpNhcExtension().
|
private |
Destination port.
Definition at line 1200 of file sixlowpan-header.h.
Referenced by Deserialize(), GetDstPort(), Serialize(), SetDstPort(), and SixLowPanUdpNhcExtension().
|
private |
Source port.
Definition at line 1199 of file sixlowpan-header.h.
Referenced by Deserialize(), GetSrcPort(), Serialize(), SetSrcPort(), and SixLowPanUdpNhcExtension().