![]() |
5G-LENA nr-v4.0
The 5G/NR module for the ns-3 simulator
|
#include "nr-epc-gtpc-header.h"
Public Types | |
enum | Cause_t { RESERVED = 0 , REQUEST_ACCEPTED = 16 } |
Public Member Functions | |
uint32_t | DeserializeBearerContextHeader (Buffer::Iterator &i, uint16_t &length) const |
uint32_t | DeserializeBearerQos (Buffer::Iterator &i, NrEpsBearer &bearerQos) |
uint32_t | DeserializeBearerTft (Buffer::Iterator &i, Ptr< NrEpcTft > epcTft) const |
uint32_t | DeserializeCause (Buffer::Iterator &i, Cause_t &cause) const |
uint32_t | DeserializeEbi (Buffer::Iterator &i, uint8_t &epsBearerId) const |
uint32_t | DeserializeFteid (Buffer::Iterator &i, NrGtpcHeader::Fteid_t &fteid) const |
uint32_t | DeserializeImsi (Buffer::Iterator &i, uint64_t &imsi) const |
uint32_t | DeserializeUliEcgi (Buffer::Iterator &i, uint32_t &uliEcgi) const |
uint32_t | GetSerializedSizeBearerTft (std::list< NrEpcTft::PacketFilter > packetFilters) const |
uint64_t | ReadNtohU40 (Buffer::Iterator &i) |
void | SerializeBearerContextHeader (Buffer::Iterator &i, uint16_t length) const |
void | SerializeBearerQos (Buffer::Iterator &i, NrEpsBearer bearerQos) const |
void | SerializeBearerTft (Buffer::Iterator &i, std::list< NrEpcTft::PacketFilter > packetFilters) const |
void | SerializeCause (Buffer::Iterator &i, Cause_t cause) const |
void | SerializeEbi (Buffer::Iterator &i, uint8_t epsBearerId) const |
void | SerializeFteid (Buffer::Iterator &i, NrGtpcHeader::Fteid_t fteid) const |
void | SerializeImsi (Buffer::Iterator &i, uint64_t imsi) const |
void | SerializeUliEcgi (Buffer::Iterator &i, uint32_t uliEcgi) const |
void | WriteHtonU40 (Buffer::Iterator &i, uint64_t data) const |
Public Attributes | |
const uint32_t | serializedSizeBearerContextHeader = 4 |
Fteid serialized size. | |
const uint32_t | serializedSizeBearerQos = 26 |
Bearer QoS serialized size. | |
const uint32_t | serializedSizeCause = 6 |
Cause serialized size. | |
const uint32_t | serializedSizeEbi = 5 |
EBI serialized size. | |
const uint32_t | serializedSizeFteid = 13 |
Fteid serialized size. | |
const uint32_t | serializedSizeImsi = 12 |
IMSI serialized size. | |
const uint32_t | serializedSizePacketFilter |
Packet filter serialized size. | |
const uint32_t | serializedSizeUliEcgi = 12 |
UliEcgi serialized size. | |
GTP-C Information Elements
Definition at line 181 of file nr-epc-gtpc-header.h.
Cause
Definition at line 187 of file nr-epc-gtpc-header.h.
uint32_t ns3::NrGtpcIes::DeserializeBearerContextHeader | ( | Buffer::Iterator & | i, |
uint16_t & | length | ||
) | const |
Deserialize the Bearer Context Header
i | Buffer iterator | |
[out] | length | length |
Definition at line 458 of file nr-epc-gtpc-header.cc.
References serializedSizeBearerContextHeader.
uint32_t ns3::NrGtpcIes::DeserializeBearerQos | ( | Buffer::Iterator & | i, |
NrEpsBearer & | bearerQos | ||
) |
Deserialize the eps Bearer QoS
i | Buffer iterator | |
[out] | bearerQos | The Bearer QoS |
Definition at line 301 of file nr-epc-gtpc-header.cc.
References ns3::NrGbrQosInformation::gbrDl, ns3::NrEpsBearer::gbrQosInfo, ns3::NrGbrQosInformation::gbrUl, ns3::NrGbrQosInformation::mbrDl, ns3::NrGbrQosInformation::mbrUl, ns3::NrEpsBearer::qci, ReadNtohU40(), and serializedSizeBearerQos.
uint32_t ns3::NrGtpcIes::DeserializeBearerTft | ( | Buffer::Iterator & | i, |
Ptr< NrEpcTft > | epcTft | ||
) | const |
Deserialize the Bearer TFT
i | Buffer iterator | |
[out] | epcTft | The Bearer TFT |
Definition at line 352 of file nr-epc-gtpc-header.cc.
References ns3::NrEpcTft::PacketFilter::direction, GetSerializedSizeBearerTft(), ns3::NrEpcTft::PacketFilter::localAddress, ns3::NrEpcTft::PacketFilter::localMask, ns3::NrEpcTft::PacketFilter::localPortEnd, ns3::NrEpcTft::PacketFilter::localPortStart, ns3::NrEpcTft::PacketFilter::precedence, ns3::NrEpcTft::PacketFilter::remoteAddress, ns3::NrEpcTft::PacketFilter::remoteMask, ns3::NrEpcTft::PacketFilter::remotePortEnd, ns3::NrEpcTft::PacketFilter::remotePortStart, ns3::NrEpcTft::PacketFilter::typeOfService, and ns3::NrEpcTft::PacketFilter::typeOfServiceMask.
uint32_t ns3::NrGtpcIes::DeserializeCause | ( | Buffer::Iterator & | i, |
Cause_t & | cause | ||
) | const |
Deserialize the Cause
i | Buffer iterator | |
[out] | cause | The cause |
Definition at line 223 of file nr-epc-gtpc-header.cc.
References serializedSizeCause.
uint32_t ns3::NrGtpcIes::DeserializeEbi | ( | Buffer::Iterator & | i, |
uint8_t & | epsBearerId | ||
) | const |
Deserialize the eps Bearer Id
i | Buffer iterator | |
[out] | epsBearerId | The eps Bearer Id |
Definition at line 247 of file nr-epc-gtpc-header.cc.
References serializedSizeEbi.
uint32_t ns3::NrGtpcIes::DeserializeFteid | ( | Buffer::Iterator & | i, |
NrGtpcHeader::Fteid_t & | fteid | ||
) | const |
Deserialize the Fteid
i | Buffer iterator | |
[out] | fteid | Fteid |
Definition at line 433 of file nr-epc-gtpc-header.cc.
References ns3::NrGtpcHeader::Fteid_t::addr, ns3::NrGtpcHeader::Fteid_t::interfaceType, serializedSizeFteid, and ns3::NrGtpcHeader::Fteid_t::teid.
uint32_t ns3::NrGtpcIes::DeserializeImsi | ( | Buffer::Iterator & | i, |
uint64_t & | imsi | ||
) | const |
Deserialize the IMSI
i | Buffer iterator | |
[out] | imsi | The IMSI |
Definition at line 199 of file nr-epc-gtpc-header.cc.
References serializedSizeImsi.
uint32_t ns3::NrGtpcIes::DeserializeUliEcgi | ( | Buffer::Iterator & | i, |
uint32_t & | uliEcgi | ||
) | const |
Deserialize the UliEcgi
i | Buffer iterator | |
[out] | uliEcgi | UliEcgi |
Definition at line 407 of file nr-epc-gtpc-header.cc.
References serializedSizeUliEcgi.
uint32_t ns3::NrGtpcIes::GetSerializedSizeBearerTft | ( | std::list< NrEpcTft::PacketFilter > | packetFilters | ) | const |
packetFilters | The packet filter |
Definition at line 388 of file nr-epc-gtpc-header.cc.
References serializedSizePacketFilter.
Referenced by DeserializeBearerTft(), ns3::NrGtpcCreateSessionRequestMessage::GetMessageSize(), and ns3::NrGtpcCreateSessionResponseMessage::GetMessageSize().
uint64_t ns3::NrGtpcIes::ReadNtohU40 | ( | Buffer::Iterator & | i | ) |
i | Buffer iterator |
Read data and advance the Iterator by the number of bytes read. The data is read in network format and returned in host format.
Definition at line 271 of file nr-epc-gtpc-header.cc.
Referenced by DeserializeBearerQos().
void ns3::NrGtpcIes::SerializeBearerContextHeader | ( | Buffer::Iterator & | i, |
uint16_t | length | ||
) | const |
Serialize the Bearer Context Header
i | Buffer iterator |
length | The length |
Definition at line 450 of file nr-epc-gtpc-header.cc.
void ns3::NrGtpcIes::SerializeBearerQos | ( | Buffer::Iterator & | i, |
NrEpsBearer | bearerQos | ||
) | const |
Serialize the eps Bearer QoS
i | Buffer iterator |
bearerQos | The Bearer QoS |
Definition at line 287 of file nr-epc-gtpc-header.cc.
References ns3::NrGbrQosInformation::gbrDl, ns3::NrEpsBearer::gbrQosInfo, ns3::NrGbrQosInformation::gbrUl, ns3::NrGbrQosInformation::mbrDl, ns3::NrGbrQosInformation::mbrUl, ns3::NrEpsBearer::qci, and WriteHtonU40().
void ns3::NrGtpcIes::SerializeBearerTft | ( | Buffer::Iterator & | i, |
std::list< NrEpcTft::PacketFilter > | packetFilters | ||
) | const |
Serialize the Bearer TFT
i | Buffer iterator |
packetFilters | The Packet filters |
Definition at line 319 of file nr-epc-gtpc-header.cc.
References serializedSizePacketFilter.
void ns3::NrGtpcIes::SerializeCause | ( | Buffer::Iterator & | i, |
Cause_t | cause | ||
) | const |
Serialize the Cause
i | Buffer iterator |
cause | The Cause |
Definition at line 213 of file nr-epc-gtpc-header.cc.
void ns3::NrGtpcIes::SerializeEbi | ( | Buffer::Iterator & | i, |
uint8_t | epsBearerId | ||
) | const |
Serialize the eps Bearer Id
i | Buffer iterator |
epsBearerId | The eps Bearer Id |
Definition at line 238 of file nr-epc-gtpc-header.cc.
void ns3::NrGtpcIes::SerializeFteid | ( | Buffer::Iterator & | i, |
NrGtpcHeader::Fteid_t | fteid | ||
) | const |
Serialize the Fteid_t
i | Buffer iterator |
fteid | The Fteid_t |
Definition at line 422 of file nr-epc-gtpc-header.cc.
References ns3::NrGtpcHeader::Fteid_t::addr, ns3::NrGtpcHeader::Fteid_t::interfaceType, and ns3::NrGtpcHeader::Fteid_t::teid.
void ns3::NrGtpcIes::SerializeImsi | ( | Buffer::Iterator & | i, |
uint64_t | imsi | ||
) | const |
Serialize the IMSI
i | Buffer iterator |
imsi | The IMSI |
Definition at line 190 of file nr-epc-gtpc-header.cc.
void ns3::NrGtpcIes::SerializeUliEcgi | ( | Buffer::Iterator & | i, |
uint32_t | uliEcgi | ||
) | const |
Serialize the UliEcgi
i | Buffer iterator |
uliEcgi | The UliEcgi |
Definition at line 394 of file nr-epc-gtpc-header.cc.
void ns3::NrGtpcIes::WriteHtonU40 | ( | Buffer::Iterator & | i, |
uint64_t | data | ||
) | const |
i | Buffer iterator |
data | data to write in buffer |
Write the data in buffer and advance the iterator position by five bytes. The data is written in network order and the input data is expected to be in host order.
Definition at line 261 of file nr-epc-gtpc-header.cc.
Referenced by SerializeBearerQos().
const uint32_t ns3::NrGtpcIes::serializedSizeBearerContextHeader = 4 |
Fteid serialized size.
Definition at line 206 of file nr-epc-gtpc-header.h.
Referenced by DeserializeBearerContextHeader(), ns3::NrGtpcCreateSessionRequestMessage::GetMessageSize(), ns3::NrGtpcCreateSessionResponseMessage::GetMessageSize(), ns3::NrGtpcModifyBearerRequestMessage::GetMessageSize(), and ns3::NrGtpcDeleteBearerCommandMessage::GetMessageSize().
const uint32_t ns3::NrGtpcIes::serializedSizeBearerQos = 26 |
Bearer QoS serialized size.
Definition at line 196 of file nr-epc-gtpc-header.h.
Referenced by DeserializeBearerQos(), ns3::NrGtpcCreateSessionRequestMessage::GetMessageSize(), and ns3::NrGtpcCreateSessionResponseMessage::GetMessageSize().
const uint32_t ns3::NrGtpcIes::serializedSizeCause = 6 |
Cause serialized size.
Definition at line 194 of file nr-epc-gtpc-header.h.
Referenced by DeserializeCause(), ns3::NrGtpcCreateSessionResponseMessage::GetMessageSize(), ns3::NrGtpcModifyBearerResponseMessage::GetMessageSize(), and ns3::NrGtpcDeleteBearerResponseMessage::GetMessageSize().
const uint32_t ns3::NrGtpcIes::serializedSizeEbi = 5 |
EBI serialized size.
Definition at line 195 of file nr-epc-gtpc-header.h.
Referenced by DeserializeEbi(), ns3::NrGtpcCreateSessionRequestMessage::GetMessageSize(), ns3::NrGtpcCreateSessionResponseMessage::GetMessageSize(), ns3::NrGtpcModifyBearerRequestMessage::GetMessageSize(), ns3::NrGtpcDeleteBearerCommandMessage::GetMessageSize(), ns3::NrGtpcDeleteBearerRequestMessage::GetMessageSize(), and ns3::NrGtpcDeleteBearerResponseMessage::GetMessageSize().
const uint32_t ns3::NrGtpcIes::serializedSizeFteid = 13 |
Fteid serialized size.
Definition at line 205 of file nr-epc-gtpc-header.h.
Referenced by DeserializeFteid(), ns3::NrGtpcCreateSessionRequestMessage::GetMessageSize(), ns3::NrGtpcCreateSessionResponseMessage::GetMessageSize(), and ns3::NrGtpcModifyBearerRequestMessage::GetMessageSize().
const uint32_t ns3::NrGtpcIes::serializedSizeImsi = 12 |
IMSI serialized size.
Definition at line 193 of file nr-epc-gtpc-header.h.
Referenced by DeserializeImsi(), ns3::NrGtpcCreateSessionRequestMessage::GetMessageSize(), and ns3::NrGtpcModifyBearerRequestMessage::GetMessageSize().
const uint32_t ns3::NrGtpcIes::serializedSizePacketFilter |
Packet filter serialized size.
Definition at line 197 of file nr-epc-gtpc-header.h.
Referenced by GetSerializedSizeBearerTft(), and SerializeBearerTft().
const uint32_t ns3::NrGtpcIes::serializedSizeUliEcgi = 12 |
UliEcgi serialized size.
Definition at line 204 of file nr-epc-gtpc-header.h.
Referenced by DeserializeUliEcgi(), ns3::NrGtpcCreateSessionRequestMessage::GetMessageSize(), and ns3::NrGtpcModifyBearerRequestMessage::GetMessageSize().