A Discrete-Event Network Simulator
API
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
ns3::Ipv4L3ClickProtocol Class Reference

Implement the Ipv4 layer specifically for Click nodes to allow a clean integration of Click.This is code is mostly repeated from the Ipv4L3Protocol implementation. Changes include: More...

#include <ipv4-l3-click-protocol.h>

+ Inheritance diagram for ns3::Ipv4L3ClickProtocol:
+ Collaboration diagram for ns3::Ipv4L3ClickProtocol:

Additional Inherited Members

- Public Member Functions inherited from ns3::Ipv4
 Ipv4 ()
virtual ~Ipv4 ()
virtual bool AddAddress (uint32_t interface, Ipv4InterfaceAddress address)=0
virtual uint32_t AddInterface (Ptr< NetDevice > device)=0
virtual Ptr< SocketCreateRawSocket (void)=0
 Creates a raw socket.
virtual void DeleteRawSocket (Ptr< Socket > socket)=0
 Deletes a particular raw socket.
virtual Ipv4InterfaceAddress GetAddress (uint32_t interface, uint32_t addressIndex) const =0
virtual int32_t GetInterfaceForAddress (Ipv4Address address) const =0
 Return the interface number of the interface that has been assigned the specified IP address.
virtual int32_t GetInterfaceForDevice (Ptr< const NetDevice > device) const =0
virtual int32_t GetInterfaceForPrefix (Ipv4Address address, Ipv4Mask mask) const =0
 Return the interface number of first interface found that has an Ipv4 address within the prefix specified by the input address and mask parameters.
virtual uint16_t GetMetric (uint32_t interface) const =0
virtual uint16_t GetMtu (uint32_t interface) const =0
virtual uint32_t GetNAddresses (uint32_t interface) const =0
virtual Ptr< NetDeviceGetNetDevice (uint32_t interface)=0
virtual uint32_t GetNInterfaces (void) const =0
virtual Ptr< IpL4ProtocolGetProtocol (int protocolNumber) const =0
virtual Ptr< Ipv4RoutingProtocolGetRoutingProtocol (void) const =0
 Get the routing protocol to be used by this Ipv4 stack.
virtual void Insert (Ptr< IpL4Protocol > protocol)=0
virtual bool IsDestinationAddress (Ipv4Address address, uint32_t iif) const =0
 Determine whether address and interface corresponding to received packet can be accepted for local delivery.
virtual bool IsForwarding (uint32_t interface) const =0
virtual bool IsUp (uint32_t interface) const =0
virtual bool RemoveAddress (uint32_t interface, uint32_t addressIndex)=0
virtual Ipv4Address SelectSourceAddress (Ptr< const NetDevice > device, Ipv4Address dst, Ipv4InterfaceAddress::InterfaceAddressScope_e scope)=0
 Return the first primary source address with scope less than or equal to the requested scope, to use in sending a packet to destination dst out of the specified device.
virtual void Send (Ptr< Packet > packet, Ipv4Address source, Ipv4Address destination, uint8_t protocol, Ptr< Ipv4Route > route)=0
virtual void SendWithHeader (Ptr< Packet > packet, Ipv4Header ipHeader, Ptr< Ipv4Route > route)=0
virtual void SetDown (uint32_t interface)=0
virtual void SetForwarding (uint32_t interface, bool val)=0
virtual void SetMetric (uint32_t interface, uint16_t metric)=0
virtual void SetRoutingProtocol (Ptr< Ipv4RoutingProtocol > routingProtocol)=0
 Register a new routing protocol to be used by this Ipv4 stack.
virtual void SetUp (uint32_t interface)=0
- Static Public Member Functions inherited from ns3::Ipv4
static TypeId GetTypeId (void)
 This method returns the TypeId associated to ns3::Ipv4.
- Static Public Attributes inherited from ns3::Ipv4
static const uint32_t IF_ANY = 0xffffffff
- Protected Member Functions inherited from ns3::Object
 Object (const Object &o)
virtual void DoDispose (void)
virtual void DoStart (void)
virtual void NotifyNewAggregate (void)

Detailed Description

Implement the Ipv4 layer specifically for Click nodes to allow a clean integration of Click.

This is code is mostly repeated from the Ipv4L3Protocol implementation. Changes include:

  • A stripped down version of Send().
  • A stripped down version of Receive().
  • A public version of LocalDeliver().
  • Modifications to AddInterface().

Definition at line 61 of file ipv4-l3-click-protocol.h.


The documentation for this class was generated from the following file: