TcpClientSocketIo

Package: inet.applications.tcpapp

TcpClientSocketIo

simple module

This module provides TCP client socket handling for generic TCP applications.

See also: TcpServerSocketIo

Used in compound modules

Name Type Description
TcpClientApp compound module

This module is a generic TCP client application. The traffic source and traffic sink modules can be built from queueing model elements.

TelnetClientApp compound module

This client application contains a configurable pre-composed telnet traffic source and traffic sink.

Parameters

Name Type Default value Description
localAddress string ""
localPort int -1
connectAddress string
connectPort int

Properties

Name Value Description
display i=block/socket

Gates

Name Direction Size Description
trafficIn input
trafficOut output
socketIn input
socketOut output

Direct method calls (observed)

call tofunctioninfo
MessageDispatcherinet::MessageDispatcher::arrivedarrived

Incoming messages (observed)

gatemsgkindctrlsrcModuletags
socketInIndication4 (TcpStatusInd::TCP_I_ESTABLISHED)TcpConnectInfoTcpSocketInd
socketInPacket1 (TcpStatusInd::TCP_I_DATA)TcpSocketInd
trafficInPacket0ActivePacketSourceDirectionTag, PacketProtocolTag

Outgoing messages (observed)

gatemsgkindctrldestModuletags
socketOutPacket4 (TcpCommandCode::TCP_C_SEND)TcpDirectionTag, DispatchProtocolReq, PacketProtocolTag, SocketReq
socketOutRequest1 (TcpCommandCode::TCP_C_OPEN_ACTIVE)TcpOpenCommandTcpDispatchProtocolReq, SocketReq
trafficOutPacket1PassivePacketSink

Shared Tagging operations (observed)

tagTypetagAction
DispatchProtocolReqaddTagIfAbsent
SocketIndfindTag, removeTag
SocketReqaddTagIfAbsent

Tagging operations (observed)

tagTypetagAction
inet::Ipv4InterfaceDatafindTag

Source code

//
// This module provides TCP client socket handling for generic TCP applications.
//
// @see ~TcpServerSocketIo
//
simple TcpClientSocketIo
{
    parameters:
        string localAddress = default("");
        int localPort = default(-1);
        string connectAddress;
        int connectPort;
        @display("i=block/socket");
    gates:
        input trafficIn;
        output trafficOut;
        input socketIn;
        output socketOut;
}
File: src/inet/applications/tcpapp/TcpClientSocketIo.ned