Was ist Winsock? Alles was du wissen musst
Inhaltsverzeichnis
Definition
Winsock ist eine Abkürzung für Windows Sockets API (WSA) und ist ein unterstützendes Programm und eine technische Spezifikation, die bestimmt, wie die Windows-Netzwerksoftware auf Netzwerkdienste im Computing, insbesondere TCP/IP, zugreift. Es befasst sich mit Ein- und Ausgabeanforderungen für Internetanwendungen im Windows-Betriebssystem.
Es ist von Windows für die Berkeley-Unix-Socket-Schnittstelle angepasst. Deshalb heißt es Winsock. Der Socket ist eine spezielle Konvention, die zwei Programmprozesse verbindet und Daten über ein Netzwerk oder innerhalb desselben Computers austauscht.
Hintergrund
Das Windows Socket Project entstand auf der Birds Of A Feather-Konferenz am 10. Oktober 1991 auf der Interop '91 in San Jose in San Jose. Es basiert auf Socket-Spezifikationen, die von NetManage erstellt werden. Und es hat diese Spezifikationen bei diesem Treffen der Öffentlichkeit zugänglich gemacht.
Die erste Ausgabe dieser Spezifikation wurde von Martin Hall, Mark Towfiq von Microdyne, Geoff Arnold von Sun Microsystems und Henry Sanders und J Allard von Microsoft mit Unterstützung vieler anderer erstellt.
Es gibt einige Diskussionen darüber, wie geistiges Eigentum, Urheberrecht und potenzielle Kartellprobleme am besten gelöst werden können, und es wird in Erwägung gezogen, über die IETF zu arbeiten oder eine gemeinnützige Stiftung zu gründen. Schließlich wurde entschieden, dass die Spezifikation nur aus fünf Autoren als individuelle Urheberrechte bestehen sollte.
Eine Verkürzung des Namens auf einfaches Winsock lehnten alle beteiligten Entwickler lange Zeit ab. Denn unter den Benutzern gibt es eine Menge Verwirrung zwischen der DLL-Bibliotheksdatei (winsock.dll) und der API, während die DLL-Bibliotheksdatei nur die allgemeine WSA-Schnittstelle für die obige Anwendung verfügbar macht. Benutzer glauben im Allgemeinen, dass die volle TCP/IP-Protokollunterstützung nur bereitgestellt werden kann, wenn sie sicherstellen, dass DLL-Dateien auf dem System vorhanden sind.
Technologie
Die Winsock-Spezifikation definiert zwei Schnittstellen: die API und die SPI. Anwendungsentwickler verwenden erstere, und letztere bietet eine Möglichkeit, dem System neue Protokollmodule für Entwickler von Netzwerksoftware hinzuzufügen. Jede Schnittstelle repräsentiert einen Vertrag.
Die API stellt sicher, dass konforme Anwendungen ordnungsgemäß funktionieren, wie durch ein konsistentes Protokoll von jedem Netzwerksoftwareanbieter implementiert. Der SPI-Vertrag stellt ein protokollkonformes Modul zur Verfügung, das zu Windows hinzugefügt werden kann und somit von API-konformen Anwendungen verwendet wird.
Der Code und das Design von Windows-Sockets basieren auf BSD-Sockets, bieten jedoch zusätzliche Funktionen, die es der API ermöglichen, dem allgemeinen Windows-Programmiermodell zu entsprechen.
Die Windows-Socket-API deckt fast alle Eigenschaften der BSD-Socket-API ab. Einige unvermeidliche Hindernisse ergeben sich jedoch vor allem aus den grundlegenden Unterschieden zwischen Windows und Unix.
Windows-Sockets sind jedoch so konzipiert, dass sie für Entwickler relativ einfach sind, socketbasierte Anwendungen von Unix auf Windows zu portieren. Es reicht nicht aus, eine API zu erstellen, die nur für neu geschriebene Windows-Programme funktioniert. Daher enthalten Windows-Sockets viele Elemente, die portabel sind.
Dies ist in Windows nicht möglich, daher führen Windows-Sockets eine bestimmte Funktion ein, WSAGetLastError(), um Fehlermeldungen abzurufen. Obwohl diese Mechanismen hilfreich sind, ist die Portierung von Anwendungen immer noch zu kompliziert.
Viele der ursprünglichen TCP/IP-Anwendungen wurden unter Verwendung von Unix-spezifischen Systemfunktionen implementiert, deren Reproduktion unter Windows problematisch ist.
Die Portierung macht in relativ kurzer Zeit der Entwicklung dedizierter Windows-Anwendungen Platz.
Implementierungen
Microsoft-Implementierungen
- Microsoft hat keine Implementierung von Winsock 1.0 angeboten.
- Version 1.1 von Winsock war in dem Add-On-Paket namens Wolverine for Windows for Workgroups verfügbar.
- Version 2.1 von Winsock war in einem Add-On-Paket für Windows 95 verfügbar.
- Die neuesten Versionen von Winsock 2.x werden als Teil von Service Packs oder mit neuen Windows-Versionen geliefert.
- Winsock 2 kann über einen Mechanismus namens Layered Service Provider (LSP) erweitert werden.
Andere Implementierungen
- Andere Anbieter, die Winsock-kompatible TCP/IP- und UDP/IP-Stacks anbieten, sind 3Com, DEC, Beame und Whiteside, Distinctive, Frontier, IBM, FTP Software, NetManage, Novell, Sun Microsystems, Microdyne und Trumpet Software International.
- Trumpet Winsock von Peter Tattam ist eine der wenigen Winsock 1.0-Implementierungen, die unter Windows 3.0 installiert werden, und diese Version hat keine integrierte Unterstützung für Winsock.
- Das Wine-Projekt umfasst die Winsock-Quell- und Binärkompatibilität, die auf der BSD-Socket-API neu implementiert wird.
Abschluss
Das Obige enthält grundlegende Informationen zu Winsock, einschließlich Definition, Hintergrund, Technologie und Implementierungen.
Vorheriger Artikel
Wie kann man Laufwerksbuchstaben in Windows anzeigen, ausblenden und zuweisen? Zusammenfassung: Winsock ist eine Programmierschnittstelle, die die Kommunikation zwischen Windows und TCP/IP unterstützt. Lesen Sie diesen Beitrag weiter für alle...Nächster Artikel
Behoben: Es ist nicht genügend Arbeitsspeicher oder Speicherplatz vorhanden, um Word auszuführen Zusammenfassung: Winsock ist eine Programmierschnittstelle, die die Kommunikation zwischen Windows und TCP/IP unterstützt. Lesen Sie diesen Beitrag weiter für alle...Über Bitwar-Datenwiederherstellung
3 Schritte, um mehr als 500 Arten von gelöschten, formatierten oder verlorenen Dokumenten, Fotos, Videos, Audios und Archivdateien aus verschiedenen Datenverlustszenarien zurückzubekommen.
Erfahren Sie mehr