|
INET Framework for OMNeT++/OMNEST
|
#include <ARP.h>
Classes | |
| class | ARPCacheEntry |
Public Types | |
| typedef std::map< IPv4Address, ARPCacheEntry * > | ARPCache |
| typedef std::vector< cMessage * > | MsgPtrVector |
Public Member Functions | |
| ARP () | |
| virtual | ~ARP () |
| virtual int | numInitStages () const override |
| virtual MACAddress | resolveL3Address (const L3Address &address, const InterfaceEntry *ie) override |
| IARP implementation. More... | |
| virtual L3Address | getL3AddressFor (const MACAddress &addr) const override |
| Returns the Layer 3 address for the given MAC address. More... | |
Public Member Functions inherited from inet::IARP | |
| virtual | ~IARP () |
Public Member Functions inherited from inet::ILifecycle | |
| virtual | ~ILifecycle () |
Protected Member Functions | |
| MACAddress | mapMulticastAddress (IPv4Address addr) |
| virtual void | initialize (int stage) override |
| virtual void | handleMessage (cMessage *msg) override |
| virtual void | handleMessageWhenDown (cMessage *msg) |
| virtual bool | handleOperationStage (LifecycleOperation *operation, int stage, IDoneCallback *doneCallback) override |
| Perform one stage of a lifecycle operation. More... | |
| virtual void | finish () override |
| virtual bool | isNodeUp () |
| virtual void | stop () |
| virtual void | start () |
| virtual void | flush () |
| virtual void | sendPacketToNIC (cMessage *msg, const InterfaceEntry *ie, const MACAddress &macAddress, int etherType) |
| virtual void | initiateARPResolution (ARPCacheEntry *entry) |
| virtual void | sendARPRequest (const InterfaceEntry *ie, IPv4Address ipAddress) |
| virtual void | requestTimedOut (cMessage *selfmsg) |
| virtual bool | addressRecognized (IPv4Address destAddr, InterfaceEntry *ie) |
| virtual void | processARPPacket (ARPPacket *arp) |
| virtual void | updateARPCache (ARPCacheEntry *entry, const MACAddress &macAddress) |
| virtual void | dumpARPPacket (ARPPacket *arp) |
| virtual void | refreshDisplay () const override |
Protected Attributes | |
| simtime_t | retryTimeout |
| int | retryCount = 0 |
| simtime_t | cacheTimeout |
| bool | respondToProxyARP = false |
| bool | isUp = false |
| long | numResolutions = 0 |
| long | numFailedResolutions = 0 |
| long | numRequestsSent = 0 |
| long | numRepliesSent = 0 |
| ARPCache | arpCache |
| cGate * | netwOutGate = nullptr |
| IInterfaceTable * | ift = nullptr |
| IIPv4RoutingTable * | rt = nullptr |
Static Protected Attributes | |
| static simsignal_t | sentReqSignal = registerSignal("sentReq") |
| static simsignal_t | sentReplySignal = registerSignal("sentReply") |
Additional Inherited Members | |
Static Public Attributes inherited from inet::IARP | |
| static const simsignal_t | initiatedARPResolutionSignal = cComponent::registerSignal("initiatedARPResolution") |
| Signals used to publish ARP state changes. More... | |
| static const simsignal_t | completedARPResolutionSignal = cComponent::registerSignal("completedARPResolution") |
| static const simsignal_t | failedARPResolutionSignal = cComponent::registerSignal("failedARPResolution") |
ARP implementation.
| typedef std::map<IPv4Address, ARPCacheEntry *> inet::ARP::ARPCache |
| typedef std::vector<cMessage *> inet::ARP::MsgPtrVector |
|
virtual |
|
protectedvirtual |
Referenced by processARPPacket().
|
protectedvirtual |
Referenced by processARPPacket().
|
protectedvirtual |
Referenced by stop().
|
overridevirtual |
Returns the Layer 3 address for the given MAC address.
If it is not available (not in the cache, pending resolution, or already expired), UNSPECIFIED_ADDRESS is returned.
Implements inet::IARP.
|
overrideprotectedvirtual |
|
protectedvirtual |
Referenced by handleMessage().
|
overrideprotectedvirtual |
Perform one stage of a lifecycle operation.
Processing may be done entirely within this method, or may be a longer process that involves nonzero simulation time or several events, and is triggered by this method call.
Return value: true = "done"; false = "not yet done, will invoke doneCallback when done"
Implements inet::ILifecycle.
|
overrideprotectedvirtual |
|
protectedvirtual |
Referenced by resolveL3Address().
|
protectedvirtual |
Referenced by initialize().
|
protected |
|
inlineoverridevirtual |
|
protectedvirtual |
Referenced by handleMessage().
|
overrideprotectedvirtual |
|
protectedvirtual |
Referenced by handleMessage().
|
overridevirtual |
IARP implementation.
Implements inet::IARP.
|
protectedvirtual |
Referenced by initiateARPResolution(), and requestTimedOut().
|
protectedvirtual |
Referenced by processARPPacket(), and sendARPRequest().
|
protectedvirtual |
Referenced by handleOperationStage().
|
protectedvirtual |
Referenced by handleOperationStage().
|
protectedvirtual |
Referenced by processARPPacket().
|
protected |
Referenced by flush(), getL3AddressFor(), initialize(), processARPPacket(), refreshDisplay(), requestTimedOut(), resolveL3Address(), start(), and ~ARP().
|
protected |
Referenced by getL3AddressFor(), initialize(), and resolveL3Address().
|
protected |
Referenced by initialize(), and processARPPacket().
|
protected |
Referenced by handleMessage(), initialize(), start(), and stop().
|
protected |
Referenced by initialize(), and sendPacketToNIC().
|
protected |
Referenced by initialize(), refreshDisplay(), and requestTimedOut().
|
protected |
Referenced by initialize(), processARPPacket(), and refreshDisplay().
|
protected |
Referenced by initialize(), refreshDisplay(), and sendARPRequest().
|
protected |
Referenced by initialize(), and initiateARPResolution().
|
protected |
Referenced by addressRecognized(), and initialize().
|
protected |
Referenced by initialize(), and requestTimedOut().
|
protected |
Referenced by initialize(), initiateARPResolution(), and requestTimedOut().
|
protected |
Referenced by addressRecognized(), and initialize().
|
staticprotected |
Referenced by processARPPacket().
|
staticprotected |
Referenced by sendARPRequest().