#include <TCP_NSC.h>
Public Member Functions | |
TCP_NSC () | |
virtual | ~TCP_NSC () |
virtual void | send_callback (const void *, int) |
virtual void | wakeup () |
virtual void | gettime (unsigned int *, unsigned int *) |
Static Public Attributes | |
static bool | testingS |
static bool | logverboseS |
Protected Types | |
enum | { MAX_SEND_BYTES = 500000 } |
typedef std::map< int, TCP_NSC_Connection > | TcpAppConnMap |
typedef std::map< u_int32_t, IPvXAddress > | Nsc2RemoteMap |
typedef std::map< IPvXAddress, u_int32_t > | Remote2NscMap |
typedef std::map < TCP_NSC_Connection::SockPair, int > | SockPair2ConnIdMap |
Protected Member Functions | |
virtual void | initialize () |
virtual void | handleMessage (cMessage *msgP) |
virtual void | finish () |
void | changeAddresses (TCP_NSC_Connection &connP, const TCP_NSC_Connection::SockPair &inetSockPairP, const TCP_NSC_Connection::SockPair &nscSockPairP) |
TCP_NSC_Connection * | findAppConn (int connIdP) |
TCP_NSC_Connection * | findConnByInetSockPair (TCP_NSC_Connection::SockPair const &sockPairP) |
TCP_NSC_Connection * | findConnByNscSockPair (TCP_NSC_Connection::SockPair const &sockPairP) |
virtual void | updateDisplayString () |
void | removeConnection (int connIdP) |
void | printConnBrief (TCP_NSC_Connection &connP) |
void | loadStack (const char *stacknameP, int bufferSizeP) |
void | handleAppMessage (cMessage *msgP) |
void | handleIpInputMessage (TCPSegment *tcpsegP) |
void | sendToIP (const void *dataP, int lenP) |
void | processAppCommand (TCP_NSC_Connection &connP, cMessage *msgP) |
void | process_OPEN_ACTIVE (TCP_NSC_Connection &connP, TCPCommand *tcpCommandP, cMessage *msgP) |
void | process_OPEN_PASSIVE (TCP_NSC_Connection &connP, TCPCommand *tcpCommandP, cMessage *msgP) |
void | process_SEND (TCP_NSC_Connection &connP, TCPCommand *tcpCommandP, cPacket *msgP) |
void | process_CLOSE (TCP_NSC_Connection &connP, TCPCommand *tcpCommandP, cMessage *msgP) |
void | process_ABORT (TCP_NSC_Connection &connP, TCPCommand *tcpCommandP, cMessage *msgP) |
void | process_STATUS (TCP_NSC_Connection &connP, TCPCommand *tcpCommandP, cMessage *msgP) |
void | do_SEND (TCP_NSC_Connection &connP) |
void | do_SEND_all () |
u_int32_t | mapRemote2Nsc (IPvXAddress const &addrP) |
IPvXAddress const & | mapNsc2Remote (u_int32_t nscAddrP) |
void | sendEstablishedMsg (TCP_NSC_Connection &connP) |
void | decode_tcpip (const void *, int) |
void | decode_tcp (const void *, int) |
Protected Attributes | |
TcpAppConnMap | tcpAppConnMapM |
SockPair2ConnIdMap | inetSockPair2ConnIdMapM |
SockPair2ConnIdMap | nscSockPair2ConnIdMapM |
Nsc2RemoteMap | nsc2RemoteMapM |
Remote2NscMap | remote2NscMapM |
INetStack * | pStackM |
cMessage * | pNsiTimerM |
bool | isAliveM |
int | curAddrCounterM |
TCP_NSC_Connection * | curConnM |
cOutVector * | sndWndVector |
cOutVector * | rcvWndVector |
cOutVector * | rcvAdvVector |
cOutVector * | sndNxtVector |
cOutVector * | sndAckVector |
cOutVector * | rcvSeqVector |
cOutVector * | rcvAckVector |
cOutVector * | unackedVector |
cOutVector * | dupAcksVector |
cOutVector * | pipeVector |
cOutVector * | sndSacksVector |
cOutVector * | rcvSacksVector |
cOutVector * | rcvOooSegVector |
cOutVector * | sackedBytesVector |
cOutVector * | tcpRcvQueueBytesVector |
cOutVector * | tcpRcvQueueDropsVector |
Static Protected Attributes | |
static const IPvXAddress | localInnerIpS |
static const IPvXAddress | localInnerGwS |
static const IPvXAddress | localInnerMaskS |
static const IPvXAddress | remoteFirstInnerIpS |
static const char * | stackNameParamNameS |
static const char * | bufferSizeParamNameS |
Encapsulates a Network Simulation Cradle (NSC) instance.
Definition at line 41 of file TCP_NSC.h.
typedef std::map<u_int32_t, IPvXAddress> TCP_NSC::Nsc2RemoteMap [protected] |
typedef std::map<IPvXAddress, u_int32_t> TCP_NSC::Remote2NscMap [protected] |
typedef std::map<TCP_NSC_Connection::SockPair, int> TCP_NSC::SockPair2ConnIdMap [protected] |
typedef std::map<int,TCP_NSC_Connection> TCP_NSC::TcpAppConnMap [protected] |
anonymous enum [protected] |
TCP_NSC::TCP_NSC | ( | ) |
virtual TCP_NSC::~TCP_NSC | ( | ) | [virtual] |
void TCP_NSC::changeAddresses | ( | TCP_NSC_Connection & | connP, | |
const TCP_NSC_Connection::SockPair & | inetSockPairP, | |||
const TCP_NSC_Connection::SockPair & | nscSockPairP | |||
) | [protected] |
void TCP_NSC::decode_tcp | ( | const void * | , | |
int | ||||
) | [protected] |
void TCP_NSC::decode_tcpip | ( | const void * | , | |
int | ||||
) | [protected] |
void TCP_NSC::do_SEND | ( | TCP_NSC_Connection & | connP | ) | [protected] |
void TCP_NSC::do_SEND_all | ( | ) | [protected] |
TCP_NSC_Connection* TCP_NSC::findAppConn | ( | int | connIdP | ) | [protected] |
TCP_NSC_Connection* TCP_NSC::findConnByInetSockPair | ( | TCP_NSC_Connection::SockPair const & | sockPairP | ) | [protected] |
TCP_NSC_Connection* TCP_NSC::findConnByNscSockPair | ( | TCP_NSC_Connection::SockPair const & | sockPairP | ) | [protected] |
virtual void TCP_NSC::finish | ( | ) | [protected, virtual] |
virtual void TCP_NSC::gettime | ( | unsigned int * | , | |
unsigned int * | ||||
) | [virtual] |
void TCP_NSC::handleAppMessage | ( | cMessage * | msgP | ) | [protected] |
void TCP_NSC::handleIpInputMessage | ( | TCPSegment * | tcpsegP | ) | [protected] |
virtual void TCP_NSC::handleMessage | ( | cMessage * | msgP | ) | [protected, virtual] |
virtual void TCP_NSC::initialize | ( | ) | [protected, virtual] |
void TCP_NSC::loadStack | ( | const char * | stacknameP, | |
int | bufferSizeP | |||
) | [protected] |
IPvXAddress const& TCP_NSC::mapNsc2Remote | ( | u_int32_t | nscAddrP | ) | [protected] |
u_int32_t TCP_NSC::mapRemote2Nsc | ( | IPvXAddress const & | addrP | ) | [protected] |
void TCP_NSC::printConnBrief | ( | TCP_NSC_Connection & | connP | ) | [protected] |
void TCP_NSC::process_ABORT | ( | TCP_NSC_Connection & | connP, | |
TCPCommand * | tcpCommandP, | |||
cMessage * | msgP | |||
) | [protected] |
void TCP_NSC::process_CLOSE | ( | TCP_NSC_Connection & | connP, | |
TCPCommand * | tcpCommandP, | |||
cMessage * | msgP | |||
) | [protected] |
void TCP_NSC::process_OPEN_ACTIVE | ( | TCP_NSC_Connection & | connP, | |
TCPCommand * | tcpCommandP, | |||
cMessage * | msgP | |||
) | [protected] |
void TCP_NSC::process_OPEN_PASSIVE | ( | TCP_NSC_Connection & | connP, | |
TCPCommand * | tcpCommandP, | |||
cMessage * | msgP | |||
) | [protected] |
void TCP_NSC::process_SEND | ( | TCP_NSC_Connection & | connP, | |
TCPCommand * | tcpCommandP, | |||
cPacket * | msgP | |||
) | [protected] |
void TCP_NSC::process_STATUS | ( | TCP_NSC_Connection & | connP, | |
TCPCommand * | tcpCommandP, | |||
cMessage * | msgP | |||
) | [protected] |
void TCP_NSC::processAppCommand | ( | TCP_NSC_Connection & | connP, | |
cMessage * | msgP | |||
) | [protected] |
void TCP_NSC::removeConnection | ( | int | connIdP | ) | [protected] |
virtual void TCP_NSC::send_callback | ( | const void * | , | |
int | ||||
) | [virtual] |
void TCP_NSC::sendEstablishedMsg | ( | TCP_NSC_Connection & | connP | ) | [protected] |
void TCP_NSC::sendToIP | ( | const void * | dataP, | |
int | lenP | |||
) | [protected] |
virtual void TCP_NSC::updateDisplayString | ( | ) | [protected, virtual] |
virtual void TCP_NSC::wakeup | ( | ) | [virtual] |
const char* TCP_NSC::bufferSizeParamNameS [static, protected] |
int TCP_NSC::curAddrCounterM [protected] |
TCP_NSC_Connection* TCP_NSC::curConnM [protected] |
cOutVector* TCP_NSC::dupAcksVector [protected] |
SockPair2ConnIdMap TCP_NSC::inetSockPair2ConnIdMapM [protected] |
bool TCP_NSC::isAliveM [protected] |
const IPvXAddress TCP_NSC::localInnerGwS [static, protected] |
const IPvXAddress TCP_NSC::localInnerIpS [static, protected] |
const IPvXAddress TCP_NSC::localInnerMaskS [static, protected] |
bool TCP_NSC::logverboseS [static] |
Nsc2RemoteMap TCP_NSC::nsc2RemoteMapM [protected] |
SockPair2ConnIdMap TCP_NSC::nscSockPair2ConnIdMapM [protected] |
cOutVector* TCP_NSC::pipeVector [protected] |
cMessage* TCP_NSC::pNsiTimerM [protected] |
INetStack* TCP_NSC::pStackM [protected] |
cOutVector* TCP_NSC::rcvAckVector [protected] |
cOutVector* TCP_NSC::rcvAdvVector [protected] |
cOutVector* TCP_NSC::rcvOooSegVector [protected] |
cOutVector* TCP_NSC::rcvSacksVector [protected] |
cOutVector* TCP_NSC::rcvSeqVector [protected] |
cOutVector* TCP_NSC::rcvWndVector [protected] |
Remote2NscMap TCP_NSC::remote2NscMapM [protected] |
const IPvXAddress TCP_NSC::remoteFirstInnerIpS [static, protected] |
cOutVector* TCP_NSC::sackedBytesVector [protected] |
cOutVector* TCP_NSC::sndAckVector [protected] |
cOutVector* TCP_NSC::sndNxtVector [protected] |
cOutVector* TCP_NSC::sndSacksVector [protected] |
cOutVector* TCP_NSC::sndWndVector [protected] |
const char* TCP_NSC::stackNameParamNameS [static, protected] |
TcpAppConnMap TCP_NSC::tcpAppConnMapM [protected] |
cOutVector* TCP_NSC::tcpRcvQueueBytesVector [protected] |
cOutVector* TCP_NSC::tcpRcvQueueDropsVector [protected] |
bool TCP_NSC::testingS [static] |
cOutVector* TCP_NSC::unackedVector [protected] |