OverSim
SimpleTCP.cc File Reference

Modification of the TCP module for using in SimpleUnderlay. Modification of the original TCP module to send data directly to the destination gate. The main modifications were made in both sendToIP() methods of the SimpleTCPConnection class. They are similar to the modifications of the SimpleUDP module. All additional changes were made to let the SimpleTCP module create SimpleTCPConnection. More...

#include <omnetpp.h>
#include <CommonMessages_m.h>
#include <GlobalNodeListAccess.h>
#include <GlobalStatisticsAccess.h>
#include <SimpleInfo.h>
#include <SimpleUDP.h>
#include "IPDatagram_m.h"
#include "TCPSegment.h"
#include "SimpleTCP.h"
#include "TCPCommand_m.h"
#include "IPControlInfo.h"
#include "IPv6ControlInfo.h"
#include "ICMPMessage_m.h"
#include "ICMPv6Message_m.h"
#include "IPAddressResolver.h"
#include "TCPSendQueue.h"
#include "TCPSACKRexmitQueue.h"
#include "TCPReceiveQueue.h"
#include "TCPAlgorithm.h"

Go to the source code of this file.

Macros

#define EPHEMERAL_PORTRANGE_START   1024
#define EPHEMERAL_PORTRANGE_END   5000

Functions

 Define_Module (SimpleTCP)
static std::ostream & operator<< (std::ostream &os, const TCP::SockPair &sp)
static std::ostream & operator<< (std::ostream &os, const TCP::AppConnKey &app)
static std::ostream & operator<< (std::ostream &os, const TCPConnection &conn)

Detailed Description

Modification of the TCP module for using in SimpleUnderlay. Modification of the original TCP module to send data directly to the destination gate. The main modifications were made in both sendToIP() methods of the SimpleTCPConnection class. They are similar to the modifications of the SimpleUDP module. All additional changes were made to let the SimpleTCP module create SimpleTCPConnection.

Author
Bernhard Mueller

Definition in file SimpleTCP.cc.

Macro Definition Documentation

#define EPHEMERAL_PORTRANGE_END   5000

Definition at line 54 of file SimpleTCP.cc.

#define EPHEMERAL_PORTRANGE_START   1024

Definition at line 53 of file SimpleTCP.cc.

Referenced by SimpleTCP::initialize().

Function Documentation

Define_Module ( SimpleTCP  )
static std::ostream& operator<< ( std::ostream &  os,
const TCP::SockPair &  sp 
)
static

Definition at line 60 of file SimpleTCP.cc.

{
os << "loc=" << IPvXAddress(sp.localAddr) << ":" << sp.localPort << " "
<< "rem=" << IPvXAddress(sp.remoteAddr) << ":" << sp.remotePort;
return os;
}
static std::ostream& operator<< ( std::ostream &  os,
const TCP::AppConnKey &  app 
)
static

Definition at line 67 of file SimpleTCP.cc.

{
os << "connId=" << app.connId << " appGateIndex=" << app.appGateIndex;
return os;
}
static std::ostream& operator<< ( std::ostream &  os,
const TCPConnection &  conn 
)
static

Definition at line 73 of file SimpleTCP.cc.

{
os << "connId=" << conn.connId << " " << TCPConnection::stateName(conn.getFsmState())
<< " state={" << const_cast<TCPConnection&>(conn).getState()->info() << "}";
return os;
}