Spisu treści:
Definicja - Co oznacza Socket?
Gniazdo to obiekt programowy, który działa jako punkt końcowy ustanawiający dwukierunkowe połączenie sieciowe pomiędzy programem po stronie serwera a programem po stronie klienta.
W systemie UNIX gniazdo może być również określane jako punkt końcowy komunikacji międzyprocesowej (IPC) w systemie operacyjnym (OS).
W Javie klasy gniazd reprezentują komunikację między programami klienta i serwera. Klasy gniazd obsługują komunikację po stronie klienta, a klasy gniazd serwera obsługują komunikację po stronie serwera.
Techopedia wyjaśnia Socket
Do uzyskania dostępu do Internetu wykorzystywane są głównie adresy URL i ich połączenia, ale czasami programy wymagają prostego łącza komunikacyjnego między klientem programu a serwerem. Ta rola byłaby powiązana z gniazdem, które wiązałoby strony klienta i serwera programu.
Gdy klient nawiązuje komunikację z serwerem, na przykład poprzez zapytanie do bazy danych, nawiązane zostaje niezawodne połączenie serwera i klienta za pośrednictwem kanału komunikacyjnego TCP. W tego rodzaju komunikacji klient i serwer mogą odczytywać lub zapisywać na gniazdach powiązanych z określonym kanałem komunikacji.
Gniazda dzielą się głównie na dwa typy: aktywne i pasywne. Aktywne gniazda są połączone ze zdalnymi aktywnymi gniazdami poprzez otwarte połączenie danych. Jeśli to połączenie zostanie zamknięte, aktywne gniazda w każdym punkcie końcowym zostaną zniszczone. Gniazda pasywne nie są połączone; zamiast tego czekają na połączenie przychodzące, które odrodzi nowe aktywne gniazdo.
Mimo że istnieje ścisły związek między gniazdem a portem, gniazdo nie jest tak naprawdę portem. Każdy port może mieć pojedyncze pasywne gniazdo oczekujące na połączenia przychodzące i kilka aktywnych gniazd, każde odpowiadające otwartemu połączeniu w porcie.
