Sdílet prostřednictvím


TcpState Výčet

Definice

Určuje stavy připojení TCP (Transmission Control Protocol).

public enum class TcpState
public enum TcpState
type TcpState = 
Public Enum TcpState
Dědičnost
TcpState

Pole

Name Hodnota Description
Unknown 0

Stav připojení TCP je neznámý.

Closed 1

Připojení TCP je uzavřeno.

Listen 2

Místní koncový bod připojení TCP naslouchá požadavku na připojení z libovolného vzdáleného koncového bodu.

SynSent 3

Místní koncový bod připojení TCP odeslal vzdálenému koncovému bodu hlavičku segmentu se sadou bitů ovládacího prvku synchronizace (SYN) a čeká na odpovídající žádost o připojení.

SynReceived 4

Místní koncový bod připojení TCP odeslal a přijal žádost o připojení a čeká na potvrzení.

Established 5

Handshake protokolu TCP je dokončený. Připojení bylo vytvořeno a lze odeslat data.

FinWait1 6

Místní koncový bod připojení TCP čeká na žádost o ukončení připojení ze vzdáleného koncového bodu nebo na potvrzení žádosti o ukončení připojení odeslané dříve.

FinWait2 7

Místní koncový bod připojení TCP čeká na žádost o ukončení připojení ze vzdáleného koncového bodu.

CloseWait 8

Místní koncový bod připojení TCP čeká na žádost o ukončení připojení od místního uživatele.

Closing 9

Místní koncový bod připojení TCP čeká na potvrzení žádosti o ukončení připojení odeslané dříve.

LastAck 10

Místní koncový bod připojení TCP čeká na konečné potvrzení žádosti o ukončení připojení odeslané dříve.

TimeWait 11

Místní koncový bod připojení TCP čeká na dostatek času, aby se zajistilo, že vzdálený koncový bod přijal potvrzení žádosti o ukončení připojení.

DeleteTcb 12

Vyrovnávací paměť řízení přenosu (TCB) pro připojení TCP se odstraňuje.

Příklady

Následující příklad kódu spočítá zavedená připojení TCP.

public static void CountTcpConnections()
{
    IPGlobalProperties properties = IPGlobalProperties.GetIPGlobalProperties();
    TcpConnectionInformation[] connections = properties.GetActiveTcpConnections();
    int establishedConnections = 0;

    foreach (TcpConnectionInformation t in connections)
    {
        if (t.State == TcpState.Established)
        {
             establishedConnections++;
        }
        Console.Write("Local endpoint: {0} ",t.LocalEndPoint.Address);
        Console.WriteLine("Remote endpoint: {0} ",t.RemoteEndPoint.Address);
    }
     Console.WriteLine("There are {0} established TCP connections.",
        establishedConnections);
}
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

Poznámky

Tento výčet definuje platné hodnoty pro State vlastnost. TCP je protokol přenosové vrstvy zodpovědný za spolehlivé odesílání a přijímání datových paketů. Stavy TCP v tomto výčtu jsou definovány v IETF RFC 793 k dispozici na adrese https://www.ietf.org.

Platí pro