TcpState Sabit listesi

Tanım

İletim Denetimi Protokolü (TCP) bağlantısının durumlarını belirtir.

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

Alanlar

Closed 1

TCP bağlantısı kapatıldı.

CloseWait 8

TCP bağlantısının yerel uç noktası, yerel kullanıcıdan gelen bağlantı sonlandırma isteğini bekliyor.

Closing 9

TCP bağlantısının yerel uç noktası, daha önce gönderilen bağlantı sonlandırma isteğinin onaylanmasını bekliyor.

DeleteTcb 12

TCP bağlantısı için iletim denetimi arabelleği (TCB) siliniyor.

Established 5

TCP el sıkışması tamamlandı. Bağlantı kuruldu ve veriler gönderilebilir.

FinWait1 6

TCP bağlantısının yerel uç noktası, uzak uç noktadan bir bağlantı sonlandırma isteği veya daha önce gönderilen bağlantı sonlandırma isteğinin onaylanmasını bekliyor.

FinWait2 7

TCP bağlantısının yerel uç noktası, uzak uç noktadan bir bağlantı sonlandırma isteği bekliyor.

LastAck 10

TCP bağlantısının yerel uç noktası, daha önce gönderilen bağlantı sonlandırma isteğinin son onayını bekliyor.

Listen 2

TCP bağlantısının yerel uç noktası, herhangi bir uzak uç noktadan gelen bir bağlantı isteğini dinliyor.

SynReceived 4

TCP bağlantısının yerel uç noktası bir bağlantı isteği gönderip aldı ve onay bekliyor.

SynSent 3

TCP bağlantısının yerel uç noktası, uzak uç noktaya eşitleme (SYN) denetim biti ayarlanmış bir kesim üst bilgisi gönderdi ve eşleşen bir bağlantı isteği bekliyor.

TimeWait 11

TCP bağlantısının yerel uç noktası, uzak uç noktanın bağlantı sonlandırma isteğinin onayını aldığından emin olmak için yeterli sürenin geçmesini bekliyor.

Unknown 0

TCP bağlantı durumu bilinmiyor.

Örnekler

Aşağıdaki kod örneği, kurulan TCP bağlantılarını sayar.

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

Açıklamalar

Bu numaralandırma özelliği için State geçerli değerleri tanımlar. TCP, veri paketlerini güvenilir bir şekilde göndermek ve almaktan sorumlu bir aktarım katmanı protokolüdür. Bu numaralandırmadaki TCP durumları, konumunda bulunan IETF RFC 793'te https://www.ietf.orgtanımlanır.

Şunlara uygulanır