Guest

Cisco IOS Software Releases 12.4 T

TCP Applications Flags Enhancement

  • Viewing Options

  • PDF (262.8 KB)
  • Feedback
TCP Applications Flags Enhancement

Table Of Contents

TCP Applications Flags Enhancement

Contents

How to Display the TCP Applications Flags Enhancement

Displaying the TCP Applications Flags Enhancement

Examples

Additional References

Related Documents

Standards

MIBs

RFCs

Technical Assistance

Command Reference

show tcp


TCP Applications Flags Enhancement


The TCP Applications Flags Enhancement feature enables the user to display additional flags with reference to TCP applications. There are two types of flags: status and option. The status flags indicate the status of TCP connections; for example, retransmission timeouts, application closed, and synchronized (SYNC) handshakes for listen. The additional flags indicate the state of set options; for example, whether or not a virtual private network (VPN) routing and forwarding (VRF) identification is set, whether or not a user is idle, and whether or not a keepalive timer is running.

History for the TCP Applications Flags Enhancement Feature

Release
Modification

12.4(2)T

This feature was introduced.


Finding Support Information for Platforms and Cisco IOS Software Images

Use Cisco Feature Navigator to find information about platform support and Cisco IOS software image support. Access Cisco Feature Navigator at http://www.cisco.com/go/fn. You must have an account on Cisco.com. If you do not have an account or have forgotten your username or password, click Cancel at the login dialog box and follow the instructions that appear.

Contents

How to Display the TCP Applications Flags Enhancement

Additional References

Command Reference

How to Display the TCP Applications Flags Enhancement

This section contains the following task:

Displaying the TCP Applications Flags Enhancement

Displaying the TCP Applications Flags Enhancement

Perform this task to display the flags by using the show tcp command.

SUMMARY STEPS

1. enable

2. show tcp [line-number] [tcb address]

3. end

DETAILED STEPS

 
Command or Action
Purpose

Step 1 

enable

Example:

Router> enable

Enables privileged EXEC mode.

Enter your password if prompted.

Step 2 

show tcp [line-number] [tcb address]

Example:

Router# show tcp

Displays the status of TCP connections. The arguments and keyword are as follows:

line-number—(Optional) Absolute line number of the Telnet connection status.

tcb—(Optional) Transmission control block (TCB) of the ECN-enabled connection.

address—(Optional) TCB hexadecimal address. The valid range is from 0x0 to 0xFFFFFFFF.

Step 3 

end

Example:

Router# end

Exits to privileged EXEC mode.

Examples

The following output shows the flags (status and option) displayed using the show tcp command.

Router# show tcp
.
.
.
Status Flags: passive open, active open, retransmission timeout
 App closed

Option Flags: vrf id set
IP Precedence value: 6
.
.
.
SRTT: 273 ms, RTTO: 490 ms, RTV: 217 ms, KRTT: 0 ms
minRTT: 0 ms, maxRTT: 300 ms, ACK hold: 200 ms
 Status Flags: active open, retransmission timeout
 Option Flags: vrf id set
 IP Precedence value: 6

Additional References

The following sections provide references related to the TCP Applications Flags Enhancement feature.

Related Documents

Related Topic
Document Title

IP addressing and services configuration tasks

Cisco IOS IP Configuration Guide, Part 1: Addressing and Services, Release 12.3

IP application services commands: complete command syntax, command mode, command history, defaults, usage guidelines, and examples

Cisco IOS IP Application Services Command Reference, Release 12.4T


Standards

Standards
Title

No new or modified standards are supported by this feature, and support for existing standards has not been modified by this feature.


MIBs

MIBs
MIBs Link

No new or modified MIBs are supported by this feature, and support for existing MIBs has not been modified by this feature.

To locate and download MIBs for selected platforms, Cisco IOS releases, and feature sets, use Cisco MIB Locator found at the following URL:

http://www.cisco.com/go/mibs


RFCs

RFCs
Title

No new or modified RFCs are supported by this feature, and support for existing RFCs has not been modified by this feature.


Technical Assistance

Description
Link

The Cisco Technical Support website contains thousands of pages of searchable technical content, including links to products, technologies, solutions, technical tips, and tools. Registered Cisco.com users can log in from this page to access even more content.

http://www.cisco.com/techsupport


Command Reference

This section documents one modified command only.

show tcp

show tcp

To display the status of TCP connections, use the show tcp command in user EXEC or privileged EXEC mode.

show tcp [line-number] [tcb address]

Syntax Description

line-number

(Optional) Absolute line number of the line for which you want to display Telnet connection status.

tcb

(Optional) Specifies the transmission control block (TCB) of the ECN-enabled connection that you want to display.

address

(Optional) TCB hexadecimal address. The valid range is from 0x0 to 0xFFFFFFFF.


Command Modes

User EXEC
Privileged EXEC

Command History

Release
Modification

10.0

This command was introduced.

12.3(7)T

The tcb keyword and address argument were added.

12.4(2)T

The output is enhanced to display status and option flags.


Examples

The following is sample output that displays the status and option flags:

Router# show tcp
.
.
.
Status Flags: passive open, active open, retransmission timeout, app closed

Option Flags: vrf id set

IP Precedence value: 6
.
.
.
SRTT: 273 ms, RTTO: 490 ms, RTV: 217 ms, KRTT: 0 ms
minRTT: 0 ms, maxRTT: 300 ms, ACK hold: 200 ms
 Status Flags: active open, retransmission timeout
 Option Flags: vrf id set
 IP Precedence value: 6

Table 1 contains the types of flags, all possible command output enhancements, and descriptions. See Table 2 through Table 6 for descriptions of the other fields in the sample output.

Table 1 Type of Flags, All Possible Output Enhancements, and Descriptions 

Type of Flag
Output Enhancement
Description
Status
 

Passive open

Set if passive open was done.

 

Active open

Set if active open was done.

 

Retransmission timeout

Set if retransmission timeout aborts.

 

Net output pending

Output to network is pending.

 

Wait for FIN

Wait for FIN to be acknowledged.

 

App closed

Application has closed the TCB.

 

Sync listen

Listen and establish a handshake.

 

Gen tcbs

TCBs are generated as passive listener.

 

Path mtu discovery

Path maximum transmission unit (MTU) discovery is enabled.

 

Half closed

TCB is half closed.

 

Timestamp echo present

Echo segment is present.

 

Stopped reading

Read half is shut down.

Option
 

VRF id set

Set if connection has a VRF table identifier.

 

Idle user

Set if the connection is idle.

 

Sending urgent data

Set if urgent data is being sent.

 

Keepalive running

Set if keepalive timer is running, if an Explicit Congestion Notification (ECN)-enabled connection, or a TCB address bind is in effect.

 

Nagle

Set if performing the Nagle algorithm.

 

Always push

All packets and full-sized segments (internal use) are pushed.

 

Path mtu capable

Path MTU discovery is configured.

 

MD5

Message digest 5 (MD) messages are generated.

 

Urgent data removed

Urgent data is removed.

 

SACK option permitted

Peer permits a selective acknowledgment (SACK) option.

 

Timestamp option used

Time-stamp option is in use.

 

Reuse local address

Local address can be reused.

 

Non-blocking reads

Nonblocking TCP is read.

 

Non-blocking writes

Nonblocking TCP is written.

 

No delayed ACK

No TCP delayed acknowledgment is sent.

 

Win-scale

Peer permits window scaling.

 

Linger option set

The linger-on close option is set.


The following is sample output from the show tcp command:

Router# show tcp

tty0, connection 1 to host cider
Connection state is ESTAB, I/O status: 1, unread input bytes: 0
Local host: 172.31.232.17, Local port: 11184
Foreign host: 172.31.1.137, Foreign port: 23

Enqueued packets for retransmit: 0, input: 0, saved: 0

Event Timers (current time is 67341276):
Timer:       Retrans   TimeWait    AckHold    SendWnd  KeepAlive
Starts:           30          0         32          0          0 
Wakeups:           1          0         14          0          0 
Next:              0          0          0          0          0 

iss:   67317172  snduna:   67317228  sndnxt:   67317228     sndwnd:   4096
irs: 1064896000  rcvnxt: 1064897597  rcvwnd:       2144  delrcvwnd:      0

SRTT: 317 ms, RTTO: 900 ms, RTV: 133 ms, KRTT: 0 ms
minRTT: 4 ms, maxRTT: 300 ms, ACK hold: 300 ms
Flags: higher precedence, idle user, retransmission timeout
Datagrams (max data segment is 536 bytes):
Rcvd: 41 (out of order: 0), with data: 34, total data bytes: 1596
Sent: 57 (retransmit: 1), with data: 35, total data bytes: 55

Table 2 describes the first five lines of output shown in the above display.

Table 2 show tcp Field Descriptions—First Section of Output 

Field
Description

tty

Identifying number of the line.

connection

Identifying number of the TCP connection.

to host

Name of the remote host to which the connection has been made.

Connection state is

A connection progresses through a series of states during its lifetime. The states that follow are shown in the order in which a connection progresses through them.

LISTEN—Waiting for a connection request from any remote TCP and port.

SYNSENT—Waiting for a matching connection request after having sent a connection request.

SYNRCVD—Waiting for a confirming connection request acknowledgment after having both received and sent a connection request.

ESTAB—Indicates an open connection; data received can be delivered to the user. This is the normal state for the data transfer phase of the connection.

FINWAIT1—Waiting for a connection termination request from the remote TCP or an acknowledgment of the connection termination request previously sent.

 

FINWAIT2—Waiting for a connection termination request from the remote TCP host.

CLOSEWAIT—Waiting for a connection termination request from the local user.

CLOSING—Waiting for a connection termination request acknowledgment from the remote TCP host.

LASTACK—Waiting for an acknowledgment of the connection termination request previously sent to the remote TCP host.

TIMEWAIT—Waiting for enough time to pass to be sure that the remote TCP host has received the acknowledgment of its connection termination request.

CLOSED—Indicates no connection state at all.

For more information about TCBs, refer to RFC 793, Transmission Control Protocol Functional Specification.

I/O status

Number that describes the current internal status of the connection.

unread input bytes

Number of bytes that the lower-level TCP processes have read but that the higher-level TCP processes have not yet processed.

Local host

IP address of the network server.

Local port

Local port number, as derived from the following equation: line-number + (512 * random-number). (The line number uses the lower nine bits; the other bits are random.)

Foreign host

IP address of the remote host to which the TCP connection has been made.

Foreign port

Destination port for the remote host.

Enqueued packets for retransmit

Number of packets that are waiting on the retransmit queue. These are packets on this TCP connection that have been sent but that have not yet been acknowledged by the remote TCP host.

input

Number of packets that are waiting on the input queue to be read by the user.

saved

Number of received out-of-order packets that are waiting for all packets in the datagram to be received before they enter the input queue. For example, if packets 1, 2, 4, 5, and 6 have been received, packets 1 and 2 would enter the input queue, and packets 4, 5, and 6 would enter the saved queue.



Note Use the show tcp brief command to display information about the ECN-enabled connections.


The following line of output shows the current elapsed time according to the system clock of the local host. The time shown is the number of milliseconds since the system started.

Event Timers (current time is 67341276):

The following lines of output display the number of times that various local TCP timeout values were reached during this connection. In this example, the local host re-sent data 30 times because it received no response from the remote host, and it sent an acknowledgment many more times because there was no data.

Timer:       Retrans   TimeWait    AckHold    SendWnd     Keepalive    GiveUp    PmtuAger 
Starts:           30          0         32          0          0         0           0 
Wakeups:           1          0         14          0          0         0           0 
Next:              0          0          0          0          0         0           0

Table 3 describes the fields in the above lines of output.

Table 3 show tcp Field Descriptions—Second Section of Output 

Field
Description

Timer

Names of the timer types in the output.

Starts

Number of times that the timer has been triggered during this connection.

Wakeups

Number of keepalives sent without receiving any response. (This field is reset to zero when a response is received.)

Next

System clock setting that triggers a timer for the next time an event (TimeWait, AckHold, SendWnd, etc.) occurs.

Retrans

Retransmission timer is used to time TCP packets that have not been acknowledged and that are waiting for retransmission.

TimeWait

A time-wait timer ensures that the remote system receives a request to disconnect a session.

AckHold

An acknowledgment timer delays the sending of acknowledgments to the remote TCP in an attempt to reduce network use.

SendWnd

A send-window timer ensures that there is no closed window due to a lost TCP acknowledgment.

KeepAlive

A keepalive timer controls the transmission of test messages to the remote device to ensure that the link has not been broken without the knowledge of the local device.

GiveUp

A give-up timer determines the amount of time a local host will wait for an acknowledgment (or other appropriate reply) of a transmitted message after the the maximum number of retransmissions has been reached. If the timer expires, the local host gives up retransmission attempts and declares the connection dead.

PmtuAger

A path MTU (PMTU) age timer is an interval that displays how often TCP estimates the PMTU with a larger maximum segment size (MSS). When the age timer is used, TCP path MTU becomes a dynamic process. If the MSS is smaller than what the peer connection can manage, a larger MSS is tried every time the age timer expires. The discovery process stops when the send MSS is as large as the peer negotiated or the timer has been manually disabled by being set to infinite.


The following lines of output display the sequence numbers that TCP uses to ensure sequenced, reliable transport of data. The local host and remote host each use these sequence numbers for flow control and to acknowledge receipt of datagrams.

iss:   67317172  snduna:   67317228  sndnxt:   67317228     sndwnd:   4096
irs: 1064896000  rcvnxt: 1064897597  rcvwnd:       2144  delrcvwnd:      0

Table 4 describes the fields shown in the display above.

Table 4 show tcp Field Descriptions—Sequence Numbers 

Field
Description

iss

Initial send sequence number.

snduna

Last send sequence number that the local host sent but for which it has not received an acknowledgment.

sndnxt

Sequence number that the local host will send next.

sndwnd

TCP window size of the remote host.

irs

Initial receive sequence number.

rcvnxt

Last receive sequence number that the local host has acknowledged.

rcvwnd

TCP window size of the local host.

delrcvwnd

Delayed receive window—data that the local host has read from the connection but has not yet subtracted from the receive window that the host has advertised to the remote host. The value in this field gradually increases until it is larger than a full-sized packet, at which point it is applied to the rcvwnd field.


The following lines of output display values that the local host uses to keep track of transmission times so that TCP can adjust to the network that it is using.

SRTT: 317 ms, RTTO: 900 ms, RTV: 133 ms, KRTT: 0 ms
minRTT: 4 ms, maxRTT: 300 ms, ACK hold: 300 ms
Flags: higher precedence, idle user, retransmission timeout

Table 5 describes the significant fields shown in the output above.

Table 5 show tcp Field Descriptions—Line Beginning with "SRTT" 

Field
Description

SRTT

A calculated smoothed round-trip timeout.

RTTO

Round-trip timeout.

RTV

Variance of the round-trip time.

KRTT

New round-trip timeout (using the Karn algorithm). This field separately tracks the round-trip time of packets that have been re-sent.

minRTT

Smallest recorded round-trip timeout (hard-wire value used for calculation).

maxRTT

Largest recorded round-trip timeout.

ACK hold

Time for which the local host will delay an acknowledgment in order to add data to it.

Flags

Properties of the connection.



Note For more information on the above fields, refer to Round Trip Time Estimation, P. Karn & C. Partridge, ACM SIGCOMM-87, August 1987.


The following lines of output display the number of datagrams that are transported with data.

Datagrams (max data segment is 536 bytes):
Rcvd: 41 (out of order: 0), with data: 34, total data bytes: 1596
Sent: 57 (retransmit: 1), with data: 35, total data bytes: 55

Table 6 describes the significant fields shown in the last lines of the show tcp command output.

Table 6 show tcp Field Descriptions—Last Section of Output 

Field
Description

Rcvd

Number of datagrams that the local host has received during this connection (and the number of these datagrams that were out of order).

with data

Number of these datagrams that contained data.

total data bytes

Total number of bytes of data in these datagrams.

Sent

Number of datagrams that the local host sent during this connection (and the number of these datagrams that needed to be re-sent).

with data

Number of these datagrams that contained data.

total data bytes

Total number of bytes of data in these datagrams.


The following is sample output from the show tcp tcb command that displays detailed information by hexadecimal address about an ECN-enabled connection:

Router# show tcp tcb 62CD2BB8

Connection state is LISTEN, I/O status: 1, unread input bytes: 0
Connection is ECN enabled
Local host: 10.10.10.1, Local port: 179
Foreign host: 10.10.10.2, Foreign port: 12000

Enqueued packets for retransmit: 0, input: 0 mis-ordered: 0 (0 bytes)

Event Timers (current time is 0x4F31940):
Timer          Starts    Wakeups            Next
Retrans             0          0             0x0
TimeWait            0          0             0x0
AckHold             0          0             0x0
SendWnd             0          0             0x0
KeepAlive           0          0             0x0
GiveUp              0          0             0x0
PmtuAger            0          0             0x0
DeadWait            0          0             0x0

iss:          0 snduna:          0 sndnxt:          0     sndwnd:      0
irs:          0 rcvnxt:          0 rcvwnd:       4128  delrcvwnd:      0

SRTT: 0 ms, RTTO: 2000 ms, RTV: 2000 ms, KRTT: 0 ms
minRTT: 60000 ms, maxRTT: 0 ms, ACK hold: 200 ms
Flags: passive open, higher precedence, retransmission timeout

TCB is waiting for TCP Process (67)

Datagrams (max data segment is 516 bytes):
Rcvd: 6 (out of order: 0), with data: 0, total data bytes: 0
Sent: 0 (retransmit: 0, fastretransmit: 0), with data: 0, total data
bytes: 0

Related Commands

Command
Description

show tcp brief

Displays a concise description of TCP connection endpoints.