This class implements a tag that carries the satellite MAC of GW and UT. More...
#include "satellite-mac-tag.h"
Public Member Functions | |
SatAddressE2ETag () | |
Default constructor. More... | |
~SatAddressE2ETag () | |
Destructor for SatMacTag. More... | |
virtual void | Deserialize (TagBuffer i) |
Deserializes information from buffer to this instance of SatMacTag. More... | |
Mac48Address | GetE2EDestAddress (void) const |
Get E2E destination MAC address. More... | |
Mac48Address | GetE2ESourceAddress (void) const |
Get E2E source MAC address. More... | |
virtual TypeId | GetInstanceTypeId (void) const |
Get the type ID of instance. More... | |
virtual uint32_t | GetSerializedSize (void) const |
Get serialized size of SatMacTag. More... | |
virtual void | Print (std::ostream &os) const |
Print time stamp of this instance of SatMacTag. More... | |
virtual void | Serialize (TagBuffer i) const |
Serializes information to buffer from this instance of SatMacTag. More... | |
void | SetE2EDestAddress (Mac48Address e2eDestAddress) |
Set E2E destination MAC address. More... | |
void | SetE2ESourceAddress (Mac48Address e2eSourceAddress) |
Set E2E source MAC address. More... | |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Get the type ID. More... | |
Static Public Attributes | |
static const uint32_t | SIZE = 12 |
Private Attributes | |
Mac48Address | m_e2eDestAddress |
Mac48Address | m_e2eSourceAddress |
Static Private Attributes | |
static const uint32_t | ADDRESS_LENGHT = 6 |
This class implements a tag that carries the satellite MAC of GW and UT.
It is used for regenerative cases to update MAC address on satellite when packet is forwarded between uplink and downlink.
Definition at line 125 of file satellite-mac-tag.h.
ns3::SatAddressE2ETag::SatAddressE2ETag | ( | ) |
Default constructor.
Definition at line 133 of file satellite-mac-tag.cc.
ns3::SatAddressE2ETag::~SatAddressE2ETag | ( | ) |
Destructor for SatMacTag.
Definition at line 138 of file satellite-mac-tag.cc.
|
virtual |
Deserializes information from buffer to this instance of SatMacTag.
i | Buffer from which the information is deserialized |
Definition at line 210 of file satellite-mac-tag.cc.
References ADDRESS_LENGHT, m_e2eDestAddress, and m_e2eSourceAddress.
Mac48Address ns3::SatAddressE2ETag::GetE2EDestAddress | ( | void | ) | const |
Get E2E destination MAC address.
Definition at line 167 of file satellite-mac-tag.cc.
References m_e2eDestAddress.
Referenced by ns3::SatOrbiterFeederMac::EnquePacket(), ns3::SatOrbiterUserMac::EnquePacket(), ns3::SatOrbiterUserPhy::GetE2EDestinationAddress(), ns3::SatPhyRxCarrier::GetReceiveParams(), ns3::SatOrbiterFeederMac::GetRxUtAddress(), ns3::SatOrbiterNetDevice::GetRxUtAddress(), ns3::SatPhy::ModcodTrace(), ns3::SatOrbiterFeederMac::Receive(), ns3::SatOrbiterUserMac::Receive(), ns3::SatGwMac::Receive(), ns3::SatUtMac::Receive(), ns3::SatPhyRxCarrierPerSlot::ReceiveSlot(), and ns3::SatOrbiterFeederPhy::RxTraces().
Mac48Address ns3::SatAddressE2ETag::GetE2ESourceAddress | ( | void | ) | const |
Get E2E source MAC address.
Definition at line 181 of file satellite-mac-tag.cc.
References m_e2eSourceAddress.
Referenced by ns3::SatPhyRxCarrier::GetReceiveParams(), ns3::SatOrbiterUserMac::GetRxUtAddress(), ns3::SatOrbiterNetDevice::GetRxUtAddress(), ns3::SatPhy::ModcodTrace(), ns3::SatGwMac::Receive(), ns3::SatUtMac::Receive(), ns3::SatUtMac::ReceiveSignalingPacket(), ns3::SatGwMac::ReceiveSignalingPacket(), and ns3::SatPhyRxCarrierPerSlot::ReceiveSlot().
|
virtual |
Get the type ID of instance.
Definition at line 152 of file satellite-mac-tag.cc.
References GetTypeId().
|
virtual |
Get serialized size of SatMacTag.
Definition at line 188 of file satellite-mac-tag.cc.
References ADDRESS_LENGHT.
|
static |
Get the type ID.
Definition at line 144 of file satellite-mac-tag.cc.
Referenced by GetInstanceTypeId().
|
virtual |
Print time stamp of this instance of SatMacTag.
&os | Output stream to which tag timestamp is printed. |
Definition at line 224 of file satellite-mac-tag.cc.
References m_e2eDestAddress, and m_e2eSourceAddress.
|
virtual |
Serializes information to buffer from this instance of SatMacTag.
i | Buffer in which the information is serialized |
Definition at line 196 of file satellite-mac-tag.cc.
References ADDRESS_LENGHT, m_e2eDestAddress, and m_e2eSourceAddress.
void ns3::SatAddressE2ETag::SetE2EDestAddress | ( | Mac48Address | e2eDestAddress | ) |
Set E2E destination MAC address.
e2eDestAddress | E2E destination MAC address |
Definition at line 160 of file satellite-mac-tag.cc.
References m_e2eDestAddress.
Referenced by ns3::SatUtMac::DoTransmit(), ns3::SatGwLlc::Enque(), ns3::SatLlc::Enque(), ns3::SatUtLlc::Enque(), ns3::SatFwdLinkSchedulerDefault::GetNextFrame(), ns3::SatFwdLinkSchedulerTimeSlicing::GetNextFrame(), ns3::SatScpcScheduler::GetNextFrame(), ns3::SatGenericStreamEncapsulatorArq::NotifyTxOpportunity(), ns3::SatGenericStreamEncapsulator::NotifyTxOpportunity(), ns3::SatReturnLinkEncapsulatorArq::NotifyTxOpportunity(), ns3::SatReturnLinkEncapsulator::NotifyTxOpportunity(), ns3::LorawanMacEndDeviceClassA::Receive(), ns3::LorawanGroundMacGateway::Send(), ns3::LorawanMacGateway::Send(), ns3::SatOrbiterNetDeviceDvb::SendControlMsgToFeeder(), and ns3::LorawanMacEndDeviceClassA::SendToPhy().
void ns3::SatAddressE2ETag::SetE2ESourceAddress | ( | Mac48Address | e2eSourceAddress | ) |
Set E2E source MAC address.
e2eSourceAddress | E2E source MAC address |
Definition at line 174 of file satellite-mac-tag.cc.
References m_e2eSourceAddress.
Referenced by ns3::SatUtMac::DoTransmit(), ns3::SatGwLlc::Enque(), ns3::SatLlc::Enque(), ns3::SatUtLlc::Enque(), ns3::SatFwdLinkSchedulerDefault::GetNextFrame(), ns3::SatFwdLinkSchedulerTimeSlicing::GetNextFrame(), ns3::SatScpcScheduler::GetNextFrame(), ns3::SatGenericStreamEncapsulatorArq::NotifyTxOpportunity(), ns3::SatGenericStreamEncapsulator::NotifyTxOpportunity(), ns3::SatReturnLinkEncapsulatorArq::NotifyTxOpportunity(), ns3::SatReturnLinkEncapsulator::NotifyTxOpportunity(), ns3::LorawanGroundMacGateway::Send(), ns3::LorawanMacGateway::Send(), ns3::SatOrbiterNetDeviceDvb::SendControlMsgToFeeder(), and ns3::LorawanMacEndDeviceClassA::SendToPhy().
|
staticprivate |
Definition at line 201 of file satellite-mac-tag.h.
Referenced by Deserialize(), GetSerializedSize(), and Serialize().
|
private |
Definition at line 203 of file satellite-mac-tag.h.
Referenced by Deserialize(), GetE2EDestAddress(), Print(), Serialize(), and SetE2EDestAddress().
|
private |
Definition at line 204 of file satellite-mac-tag.h.
Referenced by Deserialize(), GetE2ESourceAddress(), Print(), Serialize(), and SetE2ESourceAddress().
|
static |
Definition at line 128 of file satellite-mac-tag.h.
Referenced by ns3::SatGwHelperDvb::Install(), and ns3::SatUtHelperDvb::Install().