SocketType SocketType SocketType SocketType Enum

Definition

Gibt den Sockettyp an, der von einer Instanz der Socket-Klasse dargestellt wird.Specifies the type of socket that an instance of the Socket class represents.

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

Felder

Dgram Dgram Dgram Dgram 2

Unterstützt Datagramme, die verbindungslose, unzuverlässige Meldungen mit einer festen (i. d. R. kleinen) maximalen Länge sind.Supports datagrams, which are connectionless, unreliable messages of a fixed (typically small) maximum length. Meldungen können verloren gehen, doppelt oder in der falschen Reihenfolge empfangen werden.Messages might be lost or duplicated and might arrive out of order. Ein Socket vom Typ Dgram benötigt vor dem Senden und Empfangen von Daten keine Verbindung und kann mit mehreren Peers kommunizieren.A Socket of type Dgram requires no connection prior to sending and receiving data, and can communicate with multiple peers. Dgram verwendet das Datagram-Protokoll (ProtocolType.Udp) und die AddressFamily.InterNetwork-Dgram uses the Datagram Protocol (ProtocolType.Udp) and the AddressFamily.InterNetwork -Adressenfamilie.address family.

Raw Raw Raw Raw 3

Unterstützt den Zugriff auf das zugrunde liegende Übertragungsprotokoll.Supports access to the underlying transport protocol. Wenn Sie Raw verwenden, können Sie für die Kommunikation Protokolle wie das Internet Control Message Protocol (ProtocolType.Icmp) und das Internet Group Management Protocol (ProtocolType.Igmp) verwenden.Using Raw, you can communicate using protocols like Internet Control Message Protocol (ProtocolType.Icmp) and Internet Group Management Protocol (ProtocolType.Igmp). Die Anwendung muss beim Senden einen vollständigen IP-Header bereitstellen.Your application must provide a complete IP header when sending. Bei der Rückgabe empfangener Datagramme bleiben IP-Header und Optionen erhalten.Received datagrams return with the IP header and options intact.

Rdm Rdm Rdm Rdm 4

Unterstützt verbindungslose, meldungsorientierte, zuverlässig übermittelte Meldungen und behält die Meldungsbegrenzungen innerhalb der Daten bei.Supports connectionless, message-oriented, reliably delivered messages, and preserves message boundaries in data. Rdm (Reliably-Delivered Messages)-Meldungen werden nicht dupliziert und in der richtigen Reihenfolge empfangen.Rdm (Reliably Delivered Messages) messages arrive unduplicated and in order. Darüber hinaus wird der Absender über verloren gegangene Meldungen benachrichtigt.Furthermore, the sender is notified if messages are lost. Wenn Sie einen Socket mit Rdm initialisieren, benötigen Sie vor dem Senden und Empfangen von Daten keine Verbindung mit einem Remotehost.If you initialize a Socket using Rdm, you do not require a remote host connection before sending and receiving data. Mit Rdm können Sie mit mehreren Peers kommunizieren.With Rdm, you can communicate with multiple peers.

Seqpacket Seqpacket Seqpacket Seqpacket 5

Ermöglicht die verbindungsorientierte und zuverlässige bidirektionale Übertragung von geordneten Bytestreams über ein Netzwerk.Provides connection-oriented and reliable two-way transfer of ordered byte streams across a network. Seqpacket dupliziert keine Daten und behält die Begrenzungen innerhalb des Datenstreams bei.Seqpacket does not duplicate data, and it preserves boundaries within the data stream. Ein Socket vom Typ Seqpacket kommuniziert mit einem einzigen Peer und benötigt vor dem Beginn der Kommunikation eine Verbindung mit einem Remotehost.A Socket of type Seqpacket communicates with a single peer and requires a remote host connection before communication can begin.

Stream Stream Stream Stream 1

Unterstützt zuverlässige, bidirektionale, verbindungsbasierte Bytestreams, bei denen keine Daten dupliziert und die Begrenzungen nicht beibehalten werden.Supports reliable, two-way, connection-based byte streams without the duplication of data and without preservation of boundaries. Ein Socket dieses Typs kommuniziert mit einem einzigen Peer und benötigt vor dem Beginn der Kommunikation eine Verbindung mit einem Remotehost.A Socket of this type communicates with a single peer and requires a remote host connection before communication can begin. Stream verwendet das Transmission Control Protocol (ProtocolType.Tcp) und die AddressFamily.InterNetworkStream uses the Transmission Control Protocol (ProtocolType.Tcp) and the AddressFamily.InterNetwork -Adressenfamilie.address family.

Unknown Unknown Unknown Unknown -1

Gibt einen unbekannten Socket-Typ an.Specifies an unknown Socket type.

Beispiele

Im folgenden Beispiel wird SocketType.Stream als Parameter an die Socket Konstruktor.The following example uses SocketType.Stream as a parameter to the Socket constructor.

//Creates the Socket for sending data over TCP.
Socket^ s = gcnew Socket( AddressFamily::InterNetwork, SocketType::Stream,
   ProtocolType::Tcp );

// Connects to host using IPEndPoint.
s->Connect( EPhost );
if ( !s->Connected )
{
   strRetPage = "Unable to connect to host";
}
// Use the SelectWrite enumeration to obtain Socket status.
if ( s->Poll( -1, SelectMode::SelectWrite ) )
{
   Console::WriteLine( "This Socket is writable." );
}
else if ( s->Poll(  -1, SelectMode::SelectRead ) )
{
   Console::WriteLine( "This Socket is readable." );
}
else if ( s->Poll(  -1, SelectMode::SelectError ) )
{
   Console::WriteLine( "This Socket has an error." );
}
//Creates the Socket for sending data over TCP.
Socket s = new Socket(AddressFamily.InterNetwork, SocketType.Stream,
   ProtocolType.Tcp );

// Connects to host using IPEndPoint.
s.Connect(EPhost);
if (!s.Connected)
{
   strRetPage = "Unable to connect to host";
}
// Use the SelectWrite enumeration to obtain Socket status.
 if(s.Poll(-1, SelectMode.SelectWrite)){
      Console.WriteLine("This Socket is writable.");
 }
 else if (s.Poll(-1, SelectMode.SelectRead)){
 	   Console.WriteLine("This Socket is readable." );
 }
 else if (s.Poll(-1, SelectMode.SelectError)){
      Console.WriteLine("This Socket has an error.");
 }

'Creates the Socket for sending data over TCP.
Dim s As New Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp)

' Connects to host using IPEndPoint.
s.Connect(EPhost)
If Not s.Connected Then
   strRetPage = "Unable to connect to host"
End If
' Use the SelectWrite enumeration to obtain Socket status.
If s.Poll(- 1, SelectMode.SelectWrite) Then
   Console.WriteLine("This Socket is writable.")
Else
   If s.Poll(- 1, SelectMode.SelectRead) Then
      Console.WriteLine(("This Socket is readable. "))
   Else
      If s.Poll(- 1, SelectMode.SelectError) Then
         Console.WriteLine("This Socket has an error.")
      End If
   End If 
End If 

Hinweise

Vor dem ein Socket senden und Empfangen von Daten, es muss zuerst erstellt werden mit einer AddressFamily, eine SocketType, und ein ProtocolType.Before a Socket can send and receive data, it must first be created using an AddressFamily, a SocketType, and a ProtocolType. Die SocketType Enumeration bietet mehrere Optionen zum Definieren des Typs der Socket , die Sie öffnen möchten.The SocketType enumeration provides several options for defining the type of Socket that you intend to open.

Hinweis

SocketType Manchmal implizit gibt an, welche ProtocolType wird verwendet, in eine AddressFamily.SocketType sometimes implicitly indicates which ProtocolType is used within an AddressFamily. Z. B., wenn die System.Net.Sockets.SocketType ist SocketType.Dgram, System.Net.Sockets.ProtocolType ist immer ProtocolType.Udp.For example, when the System.Net.Sockets.SocketType is SocketType.Dgram, the System.Net.Sockets.ProtocolType is always ProtocolType.Udp. Wenn die System.Net.Sockets.SocketType ist SocketType.Stream, System.Net.Sockets.ProtocolType ist immer ProtocolType.Tcp.When the System.Net.Sockets.SocketType is SocketType.Stream, the System.Net.Sockets.ProtocolType is always ProtocolType.Tcp. Wenn Sie versuchen, Sie erstellen eine Socket mit einer nicht kompatiblen Kombination, Socket löst eine SocketException.If you try to create a Socket with an incompatible combination, Socket throws a SocketException.

Gilt für:

Siehe auch