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 122 of file satellite-mac-tag.h.
ns3::SatAddressE2ETag::SatAddressE2ETag | ( | ) |
Default constructor.
Definition at line 131 of file satellite-mac-tag.cc.
ns3::SatAddressE2ETag::~SatAddressE2ETag | ( | ) |
Destructor for SatMacTag.
Definition at line 136 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 208 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 165 of file satellite-mac-tag.cc.
References m_e2eDestAddress.
Referenced by ns3::SatGeoFeederMac::EnquePacket(), ns3::SatGeoUserMac::EnquePacket(), ns3::SatGeoUserPhy::GetE2EDestinationAddress(), ns3::SatPhyRxCarrier::GetReceiveParams(), ns3::SatGeoFeederMac::GetRxUtAddress(), ns3::SatGeoNetDevice::GetRxUtAddress(), ns3::SatPhy::ModcodTrace(), ns3::SatGeoFeederMac::Receive(), ns3::SatGeoUserMac::Receive(), ns3::SatGwMac::Receive(), ns3::SatUtMac::Receive(), ns3::SatPhyRxCarrierPerSlot::ReceiveSlot(), and ns3::SatGeoFeederPhy::RxTraces().
Mac48Address ns3::SatAddressE2ETag::GetE2ESourceAddress | ( | void | ) | const |
Get E2E source MAC address.
Definition at line 179 of file satellite-mac-tag.cc.
References m_e2eSourceAddress.
Referenced by ns3::SatPhyRxCarrier::GetReceiveParams(), ns3::SatGeoUserMac::GetRxUtAddress(), ns3::SatGeoNetDevice::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 150 of file satellite-mac-tag.cc.
References GetTypeId().
|
virtual |
Get serialized size of SatMacTag.
Definition at line 186 of file satellite-mac-tag.cc.
References ADDRESS_LENGHT.
|
static |
Get the type ID.
Definition at line 142 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 222 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 194 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 158 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::LorawanMacGateway::Send(), ns3::SatGeoNetDevice::SendControlMsgToFeeder(), and ns3::LorawanMacEndDeviceClassA::SendToPhy().
void ns3::SatAddressE2ETag::SetE2ESourceAddress | ( | Mac48Address | e2eSourceAddress | ) |
Set E2E source MAC address.
e2eSourceAddress | E2E source MAC address |
Definition at line 172 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::LorawanMacGateway::Send(), ns3::SatGeoNetDevice::SendControlMsgToFeeder(), and ns3::LorawanMacEndDeviceClassA::SendToPhy().
|
staticprivate |
Definition at line 198 of file satellite-mac-tag.h.
Referenced by Deserialize(), GetSerializedSize(), and Serialize().
|
private |
Definition at line 200 of file satellite-mac-tag.h.
Referenced by Deserialize(), GetE2EDestAddress(), Print(), Serialize(), and SetE2EDestAddress().
|
private |
Definition at line 201 of file satellite-mac-tag.h.
Referenced by Deserialize(), GetE2ESourceAddress(), Print(), Serialize(), and SetE2ESourceAddress().
|
static |
Definition at line 125 of file satellite-mac-tag.h.
Referenced by ns3::SatGwHelper::InstallDvb(), and ns3::SatUtHelper::InstallDvb().