TcpStatusInfo

TcpStatusInfo

class

Sent with message kind TCP_I_STATUS, in response to command TCP_C_STATUS. For explanation of variables, see RFC 793 or TcpStateVariables in TcpConnection.h.

See also: TcpStatusInd, TcpCommandCode, ITcp

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.

Extends

Name Type Description
TcpCommand class

Control info for TCP connections. This class is to be set as control info (see cMessage::setControlInfo()) on all messages exchanged between TCP and application, in both directions. Some commands and indications (TCP_C_OPEN_xxx, TCP_I_STATUS) use subclasses.

Fields

Name Type Description
state int
stateName string
localAddr L3Address
remoteAddr L3Address
localPort int
remotePort int
snd_mss unsigned int
snd_una unsigned int
snd_nxt unsigned int
snd_max unsigned int
snd_wnd unsigned int
snd_up unsigned int
snd_wl1 unsigned int
snd_wl2 unsigned int
iss unsigned int
rcv_nxt unsigned int
rcv_wnd unsigned int
rcv_up unsigned int
irs unsigned int
fin_ack_rcvd bool
userId int

id than can be freely used by the app

Source code

//
// Sent with message kind TCP_I_STATUS, in response to command TCP_C_STATUS.
// For explanation of variables, see RFC 793 or TcpStateVariables in
// TcpConnection.h.
//
// @see ~TcpStatusInd, ~TcpCommandCode, ~ITcp
//
class TcpStatusInfo extends TcpCommand
{
    int state;
    string stateName;

    L3Address localAddr;
    L3Address remoteAddr;
    int localPort;
    int remotePort;

    unsigned int snd_mss;

    unsigned int snd_una;
    unsigned int snd_nxt;
    unsigned int snd_max;
    unsigned int snd_wnd;
    unsigned int snd_up;
    unsigned int snd_wl1;
    unsigned int snd_wl2;
    unsigned int iss;

    unsigned int rcv_nxt;
    unsigned int rcv_wnd;
    unsigned int rcv_up;
    unsigned int irs;

    bool fin_ack_rcvd;
}

File: src/inet/transportlayer/contract/tcp/TcpCommand.msg