|
INET Framework for OMNeT++/OMNEST
|
Encapsulates a Network Simulation Cradle (NSC) instance. More...
#include <TCP_lwIP.h>
Public Member Functions | |
| TCP_lwIP () | |
| virtual | ~TCP_lwIP () |
| LwipTcpLayer * | getLwipTcpLayer () |
| virtual TcpLwipSendQueue * | createSendQueue (TCPDataTransferMode transferModeP) |
| To be called from TcpLwipConnection: create a new send queue. More... | |
| virtual TcpLwipReceiveQueue * | createReceiveQueue (TCPDataTransferMode transferModeP) |
| To be called from TcpLwipConnection: create a new receive queue. More... | |
Public Member Functions inherited from inet::tcp::LwipTcpStackIf | |
| virtual | ~LwipTcpStackIf () |
Public Member Functions inherited from inet::ILifecycle | |
| virtual | ~ILifecycle () |
Public Attributes | |
| bool | recordStatisticsM |
Protected Types | |
| typedef std::map< int, TcpLwipConnection * > | TcpAppConnMap |
Protected Member Functions | |
| virtual void | initialize (int stage) override |
| virtual int | numInitStages () const override |
| virtual void | handleMessage (cMessage *msgP) override |
| virtual void | finish () override |
| virtual void | ip_output (LwipTcpLayer::tcp_pcb *pcb, L3Address const &src, L3Address const &dest, void *tcpseg, int len) override |
| TCP layer send a packet to IP layer. More... | |
| virtual err_t | lwip_tcp_event (void *arg, LwipTcpLayer::tcp_pcb *pcb, LwipTcpLayer::lwip_event event, struct pbuf *p, u16_t size, err_t err) override |
| TCP layer events. More... | |
| virtual void | lwip_free_pcb_event (LwipTcpLayer::tcp_pcb *pcb) override |
| TCP layer event called before LWIP freeing a pcb. More... | |
| virtual netif * | ip_route (L3Address const &ipAddr) override |
| Get the network interface. More... | |
| virtual void | notifyAboutIncomingSegmentProcessing (LwipTcpLayer::tcp_pcb *pcb, uint32 seqNo, const void *dataptr, int len) override |
| err_t | tcp_event_accept (TcpLwipConnection &conn, LwipTcpLayer::tcp_pcb *pcb, err_t err) |
| err_t | tcp_event_sent (TcpLwipConnection &conn, u16_t size) |
| err_t | tcp_event_recv (TcpLwipConnection &conn, struct pbuf *p, err_t err) |
| err_t | tcp_event_conn (TcpLwipConnection &conn, err_t err) |
| err_t | tcp_event_poll (TcpLwipConnection &conn) |
| err_t | tcp_event_err (TcpLwipConnection &conn, err_t err) |
| TcpLwipConnection * | findAppConn (int connIdP) |
| TcpLwipConnection * | findConnByPcb (LwipTcpLayer::tcp_pcb *pcb) |
| virtual void | refreshDisplay () const override |
| void | removeConnection (TcpLwipConnection &conn) |
| void | printConnBrief (TcpLwipConnection &connP) |
| void | handleAppMessage (cMessage *msgP) |
| void | handleIpInputMessage (TCPSegment *tcpsegP) |
| void | processAppCommand (TcpLwipConnection &connP, cMessage *msgP) |
| void | process_OPEN_ACTIVE (TcpLwipConnection &connP, TCPOpenCommand *tcpCommandP, cMessage *msgP) |
| void | process_OPEN_PASSIVE (TcpLwipConnection &connP, TCPOpenCommand *tcpCommandP, cMessage *msgP) |
| void | process_SEND (TcpLwipConnection &connP, TCPSendCommand *tcpCommandP, cPacket *msgP) |
| void | process_CLOSE (TcpLwipConnection &connP, TCPCommand *tcpCommandP, cMessage *msgP) |
| void | process_ABORT (TcpLwipConnection &connP, TCPCommand *tcpCommandP, cMessage *msgP) |
| void | process_STATUS (TcpLwipConnection &connP, TCPCommand *tcpCommandP, cMessage *msgP) |
| void | sendEstablishedMsg (TcpLwipConnection &connP) |
| virtual bool | handleOperationStage (LifecycleOperation *operation, int stage, IDoneCallback *doneCallback) override |
| Perform one stage of a lifecycle operation. More... | |
Protected Attributes | |
| TcpAppConnMap | tcpAppConnMapM |
| cMessage * | pLwipFastTimerM |
| struct netif | netIf |
| LwipTcpLayer * | pLwipTcpLayerM |
| bool | isAliveM |
| TCPSegment * | pCurTcpSegM |
Encapsulates a Network Simulation Cradle (NSC) instance.
|
protected |
| inet::tcp::TCP_lwIP::TCP_lwIP | ( | ) |
|
virtual |
|
virtual |
To be called from TcpLwipConnection: create a new receive queue.
|
virtual |
To be called from TcpLwipConnection: create a new send queue.
|
protected |
Referenced by handleAppMessage().
|
protected |
|
overrideprotectedvirtual |
|
inline |
Referenced by inet::tcp::TcpLwipConnection::abort(), inet::tcp::TcpLwipConnection::close(), inet::tcp::TcpLwipConnection::connect(), inet::tcp::TcpLwipConnection::do_SEND(), inet::tcp::TcpLwipConnection::listen(), inet::tcp::TcpLwipConnection::send_data(), and inet::tcp::TcpLwipConnection::TcpLwipConnection().
|
protected |
Referenced by handleMessage().
|
protected |
Referenced by handleMessage().
|
overrideprotectedvirtual |
|
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 |
|
overrideprotectedvirtual |
TCP layer send a packet to IP layer.
| pcb | the lwip pcb or nullptr (tipically when send a RESET ) |
| src | the source IP addr |
| dest | the destination IP addr |
| tcpseg | pointer to TCP segment (message) |
| len | length of tcpseg |
Implements inet::tcp::LwipTcpStackIf.
|
overrideprotectedvirtual |
TCP layer event called before LWIP freeing a pcb.
| pcb | pointer to pcb |
Implements inet::tcp::LwipTcpStackIf.
|
overrideprotectedvirtual |
TCP layer events.
Implements inet::tcp::LwipTcpStackIf.
|
overrideprotectedvirtual |
Implements inet::tcp::LwipTcpStackIf.
|
inlineoverrideprotectedvirtual |
|
protected |
Referenced by processAppCommand().
|
protected |
Referenced by processAppCommand().
|
protected |
Referenced by processAppCommand().
|
protected |
Referenced by processAppCommand().
|
protected |
Referenced by processAppCommand().
|
protected |
Referenced by processAppCommand().
|
protected |
Referenced by processAppCommand().
|
protected |
Referenced by handleAppMessage().
|
overrideprotectedvirtual |
|
protected |
Referenced by lwip_free_pcb_event(), and tcp_event_err().
|
protected |
|
protected |
Referenced by lwip_tcp_event().
|
protected |
Referenced by lwip_tcp_event().
|
protected |
Referenced by lwip_tcp_event().
|
protected |
Referenced by lwip_tcp_event().
|
protected |
Referenced by lwip_tcp_event().
|
protected |
Referenced by lwip_tcp_event().
|
protected |
Referenced by finish(), initialize(), and ~TCP_lwIP().
|
protected |
Referenced by ip_route(), and TCP_lwIP().
|
protected |
Referenced by handleIpInputMessage(), and notifyAboutIncomingSegmentProcessing().
|
protected |
Referenced by handleMessage(), initialize(), and ~TCP_lwIP().
|
protected |
Referenced by handleIpInputMessage(), handleMessage(), initialize(), process_OPEN_ACTIVE(), process_OPEN_PASSIVE(), tcp_event_recv(), and ~TCP_lwIP().
| bool inet::tcp::TCP_lwIP::recordStatisticsM |
Referenced by initialize(), and inet::tcp::TcpLwipConnection::TcpLwipConnection().
|
protected |
Referenced by findAppConn(), handleAppMessage(), handleIpInputMessage(), initialize(), refreshDisplay(), removeConnection(), tcp_event_accept(), and ~TCP_lwIP().