Frage

Kann jemand mir sagen, den Unterschied zwischen einem INET Sockel und einer anderen Steckdose?

Gibt es einen C # -Bibliothek, die man zur Arbeit mit INET-Sockets erlauben?

Ich habe versucht, zu finden, was es ist, aber ich habe nichts sehr nützlich erwiesen. Ich bin es ist etwas aus der UNIX-Welt zu ahnen.

War es hilfreich?

Lösung

Ein Socket ist nur eine Abstraktion eines Kommunikationsendpunkts. Original Kommunikation zwischen den Einheiten können verschiedene Methoden zur Kommunikation verwenden. INET-Sockets in Linux sind Internet Sockets d.h IP-Protokoll basiert Buchsen, aber es gibt viele andere Arten. Eines, dass ich vor kurzem mit zu tun habe ist Netlink Sockets, die als IPC-Mechanismus zwischen einem Benutzerprozess und Linux-Kernel verwendet werden. Im Gegensatz zu INET-Sockets, die IP-Adressen und Ports verwenden, Netlink-Sockets-IDs verwendet Linux-Prozess zu identifizieren Parteien kommunizieren. Auf jedem Standard-Linux-Rechner können Sie die Datei /usr/include/linux/socket.h und sucht AF_MAX öffnen. Es ist ein Makro die Anzahl der Protokollfamilien unterstützt von Strombuchse api geben. Auf meinem Rechner seines 37.

Ich weiß nicht, ob es etwas gibt, genannt INET-Buchse in Windows-API oder nicht. Havent getan viel Entwicklung für Windows.

Andere Tipps

Es gibt zwei weit verbreitete Adressdomänen, die Unix-Domäne, in der zwei Prozesse, die ein gemeinsames Dateisystem teilen kommunizieren, und die Internet-Domäne, in der zwei Prozesse im Internet auf zwei beliebigen Hosts laufen kommunizieren. Jeder von ihnen hat sein eigenes Adressformat.

Die Adresse einer Buchse in der Unix-Domäne ist eine Zeichenfolge, die im Grunde ein Eintrag in dem Dateisystem ist.

Die Adresse einer Steckdose in der Internet-Domäne besteht aus der Internet-Adresse der Host-Maschine (jeder Computer im Internet hat eine eindeutige 32-Bit-Adresse, die oft als seine IP-Adresse).

Von: Linux Howtos

Sie die Art der Socket angeben, wenn das Objekt Sockel Instanziierung:

var socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream,  ProtocolType.Tcp);

Ich weiß nicht, was eine INET Steckdose ist (nächste, was ich finden konnte, war Wie ich einen lokalen Unix-Socket an eine inet Buchse ) abbilden kann, aber das .NET Framework bietet Unterstützung für Steckdosen in dem System.Net.Sockets Namensraum, insbesondere die Sockel Klasse.

Soweit ich verstehe, bezieht sich INET auf die Internetwork „für IP-Version Adresse 4“ steht für wie zu InterNetworkV6 gegenüber, die für „für IP-Version 6-Adresse“ steht. Es ist ähnlich wie Python, wo AF-INET ist IPv4 und AF-INET6, die IPv6 ist.

Ich verlasse mich auf die MSDN Address Enumeration Seite und die Python-Buchsen Dokumentation .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top