TcpServerApp

Package: inet.applications.tcpapp

TcpServerApp

compound module

This module is a generic TCP server application with a TCP server listener that creates TCP server connections.

See also: TcpClientApp, TcpServerListener, TcpServerConnection

listener : like IApp

TcpServerListener: This module accepts/rejects TCP connections and creates TCP server connections as part of a generic...

IApp: Generic application interface.

Source:
listener: <default("TcpServerListener")> like IApp {
    parameters:
        @display("p=100,100");
} connection[0] : like IApp

IApp: Generic application interface.

Source:
connection[0]: <default(listener.serverConnectionModuleType)> like IApp {
    parameters:
        @display("p=200,100,row,50");
} ta : MessageDispatcher

This module connects multiple applications, protocols and interfaces with each other and...

Source:
ta: MessageDispatcher {
    parameters:
        @display("p=100,200");
}

Usage diagram

The following diagram shows usage relationships between types. Unresolved types are missing from the diagram.

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Known subclasses

Name Type Description
TelnetServerApp compound module

This server application accepts and creates telnet server connections.

Properties

Name Value Description
display i=block/app

Gates

Name Direction Size Description
socketIn input
socketOut output

Unassigned submodule parameters

Name Type Default value Description
ta.displayStringTextFormat string "processed %p pk (%l)"

determines the text that is written on top of the submodule

ta.forwardServiceRegistration bool true
ta.forwardProtocolRegistration bool true

Source code

//
// This module is a generic TCP server application with a TCP server listener
// that creates TCP server connections.
//
// @see ~TcpClientApp, ~TcpServerListener, ~TcpServerConnection
//
module TcpServerApp like IApp
{
    parameters:
        @display("i=block/app");
    gates:
        input socketIn;
        output socketOut;
    submodules:
        listener: <default("TcpServerListener")> like IApp {
            parameters:
                @display("p=100,100");
        }
        connection[0]: <default(listener.serverConnectionModuleType)> like IApp {
            parameters:
                @display("p=200,100,row,50");
        }
        ta: MessageDispatcher {
            parameters:
                @display("p=100,200");
        }
    connections:
        ta.out++ --> listener.socketIn;
        listener.socketOut --> ta.in++;
        ta.out++ --> { @display("m=s"); } --> socketOut;
        socketIn --> { @display("m=s"); } --> ta.in++;
}
File: src/inet/applications/tcpapp/TcpServerApp.ned