Freigeben über


TcpState Enumeration

Definition

Gibt die Zustände einer TCP (Transmission Control Protocol)-Verbindung an.

public enum class TcpState
public enum TcpState
type TcpState = 
Public Enum TcpState
Vererbung
TcpState

Felder

Closed 1

Die TCP-Verbindung ist geschlossen.

CloseWait 8

Der lokale Endpunkt der TCP-Verbindung wartet auf eine Anforderung zum Beenden der Verbindung vom lokalen Benutzer.

Closing 9

Der lokale Endpunkt der TCP-Verbindung wartet auf eine Bestätigung der zuvor gesendeten Anforderung zum Beenden der Verbindung.

DeleteTcb 12

Der TCB (Transmission Control Buffer) für die TCP-Verbindung wird gelöscht.

Established 5

Der TCP-Handshake wurde abgeschlossen. Die Verbindung wurde hergestellt, und Daten können gesendet werden.

FinWait1 6

Der lokale Endpunkt der TCP-Verbindung wartet auf eine Anforderung zum Beenden der Verbindung vom Remoteendpunkt oder auf eine Bestätigung der zuvor gesendeten Anforderung zum Beenden der Verbindung.

FinWait2 7

Der lokale Endpunkt der TCP-Verbindung wartet auf eine Anforderung zum Beenden der Verbindung vom Remoteendpunkt.

LastAck 10

Der lokale Endpunkt der TCP-Verbindung wartet auf die endgültige Bestätigung der zuvor gesendeten Anforderung zum Beenden der Verbindung.

Listen 2

Der lokale Endpunkt der TCP-Verbindung überwacht eine Verbindungsanforderung von einem beliebigen Remoteendpunkt.

SynReceived 4

Der lokale Endpunkt der TCP-Verbindung hat eine Verbindungsanforderung gesendet und empfangen und wartet auf eine Bestätigung.

SynSent 3

Der lokale Endpunkt der TCP-Verbindung hat an den Remoteendpunkt einen Segmentheader mit festgelegtem SYN-Steuerbit (Synchronisierungssteuerbit) gesendet und wartet auf eine entsprechende Verbindungsanforderung.

TimeWait 11

Der lokale Endpunkt der TCP-Verbindung wartet für eine ausreichende Zeitspanne, um sicherzustellen, dass der Remoteendpunkt die Bestätigung seiner Anforderung zum Beenden der Verbindung empfangen hat.

Unknown 0

Der Zustand der TCP-Verbindung ist unbekannt.

Beispiele

Im folgenden Codebeispiel werden die eingerichteten TCP-Verbindungen zählungen.

void CountTcpConnections()
{
   IPGlobalProperties ^ properties = IPGlobalProperties::GetIPGlobalProperties();
   array<TcpConnectionInformation^>^connections = properties->GetActiveTcpConnections();
   int establishedConnections = 0;
   System::Collections::IEnumerator^ myEnum1 = connections->GetEnumerator();
   while ( myEnum1->MoveNext() )
   {
      TcpConnectionInformation ^ t = safe_cast<TcpConnectionInformation ^>(myEnum1->Current);
      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 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

Hinweise

Diese Enumeration definiert gültige Werte für die State Eigenschaft. TCP ist ein Transportschichtprotokoll, das für das zuverlässige Senden und Empfangen von Datenpaketen zuständig ist. Die TCP-Zustände in dieser Enumeration sind in IETF RFC 793 definiert, die unter https://www.ietf.orgverfügbar sind.

Gilt für: