IPv6 L4 protocol abstract class. More...
#include <ipv6-l4-protocol.h>
Public Types | |
enum | RxStatus_e { RX_OK, RX_CSUM_FAILED, RX_ENDPOINT_UNREACH } |
Status of receive. More... | |
Public Member Functions | |
virtual | ~Ipv6L4Protocol () |
Destructor. | |
virtual int | GetProtocolNumber () const =0 |
Get the protocol number. | |
virtual enum RxStatus_e | Receive (Ptr< Packet > p, Ipv6Address const &src, Ipv6Address const &dst, Ptr< Ipv6Interface > incomingInterface)=0 |
Receive method. | |
virtual void | ReceiveIcmp (Ipv6Address icmpSource, uint8_t icmpTtl, uint8_t icmpType, uint8_t icmpCode, uint32_t icmpInfo, Ipv6Address payloadSource, Ipv6Address payloadDestination, const uint8_t *payload) |
ICMPv6 receive method. | |
Static Public Member Functions | |
static TypeId | GetTypeId (void) |
Get the type identifier. |
IPv6 L4 protocol abstract class.
virtual int ns3::Ipv6L4Protocol::GetProtocolNumber | ( | ) | const [pure virtual] |
static TypeId ns3::Ipv6L4Protocol::GetTypeId | ( | void | ) | [static] |
Get the type identifier.
This method returns the TypeId associated to ns3::Ipv6L4Protocol.
This object is accessible through the following paths with Config::Set and Config::Connect:
Attributes defined for this type:
No TraceSources defined for this type.
Reimplemented from ns3::Object.
Reimplemented in ns3::Icmpv6L4Protocol.
virtual enum RxStatus_e ns3::Ipv6L4Protocol::Receive | ( | Ptr< Packet > | p, | |
Ipv6Address const & | src, | |||
Ipv6Address const & | dst, | |||
Ptr< Ipv6Interface > | incomingInterface | |||
) | [pure virtual] |
Receive method.
Called from lower-level layers to send the packet up in the stack.
p | packet to forward up | |
src | source address of packet received | |
dst | address of packet received | |
incomingInterface | the Ipv6Interface on which the packet arrived |
Implemented in ns3::Icmpv6L4Protocol.
virtual void ns3::Ipv6L4Protocol::ReceiveIcmp | ( | Ipv6Address | icmpSource, | |
uint8_t | icmpTtl, | |||
uint8_t | icmpType, | |||
uint8_t | icmpCode, | |||
uint32_t | icmpInfo, | |||
Ipv6Address | payloadSource, | |||
Ipv6Address | payloadDestination, | |||
const uint8_t * | payload | |||
) | [virtual] |
ICMPv6 receive method.
icmpSource | the source address of the ICMPv6 message | |
icmpTtl | the ttl of the ICMPv6 message | |
icmpType | the 'type' field of the ICMPv6 message | |
icmpCode | the 'code' field of the ICMPv6 message | |
icmpInfo | extra information dependent on the ICMPv6 message generated by Icmpv6L4Protocol | |
payloadSource | the source address of the packet which triggered the ICMPv6 message | |
payloadDestination | the destination address of the packet which triggered the ICMPv6 message. | |
payload | the first 8 bytes of the UDP header of the packet which triggered the ICMPv6 message. |