From 65e645e3a3523da37b5461726df4425a97ba825e Mon Sep 17 00:00:00 2001 From: xf0r3m Date: Fri, 1 Sep 2023 12:04:03 +0200 Subject: [PATCH] =?utf8?q?Tworzenie=20rodzia=C5=82u=2010.=20Zako=C5=84czen?= =?utf8?q?ie=20pisania=20podrozdzia=C5=82u=2010.8?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- articles/terminallog/Linux.Podstawy.html | 42 ++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/articles/terminallog/Linux.Podstawy.html b/articles/terminallog/Linux.Podstawy.html index 5fe4c80..b2bc1a8 100644 --- a/articles/terminallog/Linux.Podstawy.html +++ b/articles/terminallog/Linux.Podstawy.html @@ -9305,6 +9305,48 @@ xf0r3m@vm-76925c3:~$ rpcinfo -p localhost komputer jest zarażony złośliwym oprogramowanie i możesz połączyć się z konsulatantem, który je usunie za darmo.

+

10.8. Gniazda sieciowe

+

+ Omawiając warstwę aplikacji trzeba również wspomnieć o tym w jaki + sposób procesy są wstanie brać udział w komunikacji sieciowej. W + zależności od tego czy połączenie jest już zestawione to sprowadza + się to skorzystania z dwóch wywołań systemowych recv + oraz send. Proces chcąc skorzystać z tych wywołań + musi odwołać się do połączenia za pomocą takie tworu jak + gniazdo. Gniazda są wykorzystywane do uzyskania + dostępu do sieci przy użyciu jądra. Proces wykorzystuje do określenia + tego jak i kiedy komunikuje się on z siecią. Gniazda również biorą + udział w komunikacji międzyprocesowej (IPC). +

+

+ W zależności od tego w jaki sposób proces chce uzyskac dostęp do + sieci wówczas musi skorzystać z określonego rodzaju gniazda. + Dla protokołu TCP używane jest gniazdo strumienia + (SOCK_STREAM) a dla UDP wykorzystywane jest gniazdo + datagramu (SOCK_DGRAM). Konfigracja gniazda wymaga ustalenia + rodzaju gniazda, adresów IP, portów i protokoły warstwy transportowej. + Gniazda zazwyczaj są konfigurowane przez procesów serwerów. Po + ustaleniu tych informacji proces wykorzystuje standardowe metody + obsługi sieci. +

+

+ Typowy serwer podczas swojego działania wykorzystuje dwa gniazda a + nie jedno. Jeśli tak by było to wówczas serwery mogły świadczyć + usługi tylko punktowo. Jedne klient się podłączył to drugi musi + czekać na zakończenie połączenia. Na szczęście jedno z gniazd + służy do nasłuchiwania, jeśli proces nadrzędny wykryje na nim ruch + to za pomocą wywołania systemowego accept akceptuje + to połączenie i tworzy dla tego połączenia dedykowane gniazdo + zapisu i odczytu. Po tej czynności za pomocą wywołania systemowego + fork tworzy proces podrzędny do obsługi tego + połączenia. Gniazdo nasłuchujące dalej będzie prowadzić nasłuch dla + procesu nadrzędnego. +

+

+ Po skonfigurowaniu gniazda proces może prowadzić z nim interakcje + zgodnie z rodzajem użytego gniazda. +

+

2022; COPYLEFT; ALL RIGHTS REVERSED; -- 2.39.5