Export (0) Print
Expand All
Expand Minimize

TcpState Enumeration

Specifies the states of a Transmission Control Protocol (TCP) connection.

Namespace:  System.Net.NetworkInformation
Assembly:  System (in System.dll)

'Declaration
Public Enumeration TcpState

Member nameDescription
ClosedThe TCP connection is closed.
CloseWaitThe local endpoint of the TCP connection is waiting for a connection termination request from the local user.
ClosingThe local endpoint of the TCP connection is waiting for an acknowledgement of the connection termination request sent previously.
DeleteTcbThe transmission control buffer (TCB) for the TCP connection is being deleted.
EstablishedThe TCP handshake is complete. The connection has been established and data can be sent.
FinWait1The local endpoint of the TCP connection is waiting for a connection termination request from the remote endpoint or for an acknowledgement of the connection termination request sent previously.
FinWait2The local endpoint of the TCP connection is waiting for a connection termination request from the remote endpoint.
LastAckThe local endpoint of the TCP connection is waiting for the final acknowledgement of the connection termination request sent previously.
ListenThe local endpoint of the TCP connection is listening for a connection request from any remote endpoint.
SynReceivedThe local endpoint of the TCP connection has sent and received a connection request and is waiting for an acknowledgment.
SynSentThe local endpoint of the TCP connection has sent the remote endpoint a segment header with the synchronize (SYN) control bit set and is waiting for a matching connection request.
TimeWaitThe local endpoint of the TCP connection is waiting for enough time to pass to ensure that the remote endpoint received the acknowledgement of its connection termination request.
UnknownThe TCP connection state is unknown.

This enumeration defines valid values for the State property. TCP is a transport layer protocol responsible for reliably sending and receiving data packets. The TCP states in this enumeration are defined in IETF RFC 793 available at http://www.ietf.org.

The following code example counts the established TCP connections.

Public Shared Sub CountTcpConnections() 
    Dim properties As IPGlobalProperties = IPGlobalProperties.GetIPGlobalProperties()
    Dim connections As TcpConnectionInformation() = properties.GetActiveTcpConnections()
    Dim establishedConnections As Integer = 0

    Dim t As TcpConnectionInformation
    For Each t In  connections
        If t.State = TcpState.Established Then
            establishedConnections += 1
        End If
        Console.Write("Local endpoint: {0} ", t.LocalEndPoint.Address)
        Console.WriteLine("Remote endpoint: {0} ", t.RemoteEndPoint.Address)
    Next t 
    Console.WriteLine("There are {0} established TCP connections.", establishedConnections)

End Sub 'CountTcpConnections

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft