next up previous contents
Next: Podstawowe funkcje Up: The Linux Programmer's Guide Previous: Źródło   Contents

Gniazda sieciowe - podstawy

Gniazdka sieciowe (ang. sockets) są chyba najbardziej uniwersalnym spośród mechanizmów IPC (ang. Inter Process Communication - komunikacja międzyprocesowa). Ich implementacja w systemie Linux wzorowana jest na kodzie pochodzącym z systemu BSD (Berkeley System Distribution) w wersji 4.4. Jeśli dwa procesy mają się między sobą komunikować, każdy z nich tworzy po swojej stronie jedno gniazdo. Parę takich gniazd można więc określić mianem końcówek kanału komunikacyjnego. Gniazd używa się głównie do komunikacji z odleglym procesem za pośrednictwem sieci, jednak można je zastosować także w przypadku wymiany informacji między procesami działającymi w obrębie jednej maszyny. Ta uniwersalność zastosowań jest zapewniona dzięki istieniu różnych odmian gniazd. Gniazdo jest opisywane za pomocą kombinacji trzech atrybutów: domeny adresowej, sposobu komunikacji i protokołu sieciowego. Szczególy poznamy już za chwilę.

Najlepszym sposobem na poznanie mechanizmu gniazd będzie napisanie i przeanalizowanie konkretnych programów z niego korzystających. Spróbujemy stworzyć kilka takich przykładowych programów, m.in.:





Paweł Niewiadomski
2000-10-17