Winsock
Winsock oder Windows Sockets ist eine Windows-Programmierschnittstelle (API) zum Zugriff auf Rechnernetze über Sockets.
Winsock ergänzt das Betriebssystem Windows um die Internetprotokollfamilie und ist für die Verbindung des Computers mit dem Internet zuständig. Es wird von Programmen verwendet, um über das Internetprotokoll (IP) auf das Netzwerk zuzugreifen.[1] Das Betriebssystem stellt dafür diverse Funktionen in Programmbibliotheken bereit.[2] Standardbibliotheken von Programmiersprachen stellen Funktionen und Methoden zum Zugriff auf die einzelnen Socket-Funktionen des Betriebssystems bereit.
Funktionsweise
[Bearbeiten | Quelltext bearbeiten]Wenn ein Programm (z. B. ein Webbrowser) über das Netzwerk kommunizieren will (z. B. mit einem Webserver), gibt es die Anforderung an Winsock weiter, welches dann versucht, die Verbindung aufzubauen. Winsock meldet an das aufrufende Programm zurück, ob der Verbindungsaufbau gelungen oder fehlgeschlagen ist. Konnte eine Verbindung hergestellt werden, können mit weiteren Winsock-Funktionsaufrufen über diese Verbindung Daten über das Netzwerk ausgetauscht werden (z. B. einzelne Webseiten).[3]
Durch die Verwendung der Winsock-API ist es prinzipiell möglich, IP-benutzende Programme zu schreiben, die quellcodekompatibel zwischen Windows und POSIX-Betriebssystemen sind, wobei seit Winsock 2.0 auch andere Protokolle als die der Internetprotokollfamilie möglich sind, wie z. B. IrDA oder Bluetooth. In älteren Versionen des Betriebssystems Windows wurden u. a. auch die Protokolle IPX und AppleTalk nativ unterstützt.[4][5]
Die Kommunikation über Sockets kann via SSL/TLS verschlüsselt erfolgen.[6][7]
Geschichte
[Bearbeiten | Quelltext bearbeiten]Winsock wurde ab 1991 (damals in der Eigenschreibweise „WinSock“) von zahlreichen interessierten Firmen – jedoch ohne Microsoft – entwickelt[8] und war ab 1992 für Windows 3.x verfügbar.[9] Dazu wurde praktisch die Funktion der Netzwerk-Sockets von BSD-Unix 1:1 übernommen. 1994 stellte auch Microsoft einen mit Winsock kompatiblen TCP/IP-Treiber für Windows für Workgroups 3.11 frei zur Verfügung, der später für Windows 95 weiterentwickelt und ins Betriebssystem integriert wurde. Davor war man auf Implementationen von Drittanbietern angewiesen, wie z. B. der verbreiteten Shareware „Trumpet Winsock“ von Peter Tattam.[10]
Weblinks
[Bearbeiten | Quelltext bearbeiten]- Windows Sockets-Dokumentation. In: learn.microsoft.com.
- Winsock Tutorial. In: c-worker.ch. Archiviert vom am 12. Januar 2022.
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ Steven White et al.: Windows Sockets 2. In: learn.microsoft.com. Microsoft, 7. Januar 2021, abgerufen am 29. September 2023 (englisch).
- ↑ Steven White et al.: Winsock functions. In: learn.microsoft.com. Microsoft, 7. Januar 2021, abgerufen am 29. September 2023 (englisch).
- ↑ William Johnston Buchanan: The Handbook of Data Communications and Networks. 2. Auflage. Band 1 & 2. Springer, New York 2013, ISBN 978-1-4757-1067-0, Socket Programming, S. 1073–1120, doi:10.1007/978-1-4020-7870-5 (englisch).
- ↑ Steven White et al.: Winsock Network Protocol Support in Windows. In: learn.microsoft.com. Microsoft, 7. Januar 2021, abgerufen am 29. September 2023 (englisch).
- ↑ Viktor Toth, Dirk Louis: Visual C++ 6. Markt und Technik, München 1999, ISBN 3-8272-5467-1, TCP/IP-Programmierung mit WinSock, S. 867–890 (eingeschränkte Vorschau in der Google-Buchsuche).
- ↑ Steven White et al.: Secure Winsock Programming. In: learn.microsoft.com. Microsoft, 7. Januar 2021, abgerufen am 29. September 2023 (englisch).
- ↑ Steven White et al.: Winsock Secure Socket Extensions. In: learn.microsoft.com. Microsoft, 7. Januar 2021, abgerufen am 29. September 2023 (englisch).
- ↑ Andrew Mulholland, Teijo Hakala: Programming Multiplayer Games. Wordware Publishing, Inc., 2004, ISBN 1-55622-076-6, 4 Introduction to TCP/IP, S. 113, History of WinSock (englisch, eingeschränkte Vorschau in der Google-Buchsuche): “The Windows sockets API was born October 10, 1991, at Interop ’91 in San Jose, California. A committee was established to design a specification for a sockets library for the Windows operating system from a proposal by Martin Hall of JSB Corporation. There have been over 40 companies involved in the design of WinSock. WinSock is not the property of Microsoft, although it is an important part of Windows nowadays. It was developed by independent sources who were interested in taking part of this project. On January 20, 1993, the specification for WinSock 1.1 was published. This version had support for TCP/IP only.”
- ↑ Kevin R. Fall, W. Richard Stevens: TCP/IP Illustrated, Volume 1: The Protocols. 2. Auflage. Pearson Education, Inc., 2012, ISBN 978-0-321-33631-6, 1.7 Implementations and Software Distributions, S. 25, Figure 1-7 (englisch, eingeschränkte Vorschau in der Google-Buchsuche): “Winsock (1992): TCP/IP from Third Parties → Windows for Workgroups 3.11 (1994): Initial Version of TCP/IP Supplied by Microsoft (Wolverine) as Add-on → Windows 95 (1995): Initial Integrated Version of TCP/IP Supplied by Microsoft”
- ↑ Trumpet Winsock v5.0. In: tattsoft.com. Tattam Software Enterprises Pty. Ltd., abgerufen am 26. Januar 2010 (englisch).