Winsock
Winsock to API, które umożliwia twórcom oprogramowania dla systemu Windows łączenie ich aplikacji z internetem. Udostępnia podstawowy zestaw funkcji, które twórcy mogą wywoływać, aby ułatwić swoim aplikacjom komunikowanie się ze zdalnymi komputerami oraz wysyłanie i odbieranie danych bez konieczności pisania własnego interfejsu protokołu.
Pierwotnie noszący nazwę „Windows Socket API”, Winsock steruje tworzeniem sieciowych gniazd, które kierują dane do określonych aplikacji uruchomionych na określonych komputerach. Składa się z biblioteki funkcji sieciowych, których twórcy oprogramowania mogą używać do uzyskiwania dostępu do podstawowych protokołów sieciowych, takich jak TCP, UDP, IP i ICMP (między innymi). Ukrywa większość szczegółów związanych z nawiązywaniem połączeń i przesyłaniem danych, pozwalając twórcy skupić się na innych funkcjach aplikacji. W razie potrzeby twórca może utworzyć surowe gniazda, które pozwalają aplikacji uzyskiwać bezpośredni dostęp do innych protokołów.
Interfejs API Winsock został opracowany w 1992 roku przez twórców z kilku firm programistycznych (w tym Microsoft, Novell, 3Com i Sun Microsystems), aby zapewnić jeden standardowy interfejs API dla sieci w systemie Windows. Przed powstaniem Winsock system Windows nie miał własnego stosu oprogramowania sieciowego, lecz korzystał z oprogramowania sieciowego kilku dostawców, z których każdy udostępniał własne API. To rozdrobnienie utrudniało twórcom tworzenie programów działających w wielu systemach. Po wydaniu Winsock jako dodatku do systemu Windows 3.1 twórcy mogli tworzyć aplikacje połączone z siecią, które działały na wszystkich komputerach z systemem Windows. Każda wersja systemu Windows od Windows 95 zawiera bibliotekę Winsock.
Sprawdź swoją wiedzę