Witam
Mam pytanko odnośnie gniazd, a dokładniej odnośnie tego skąd OS lub JVM wie do którego gniazda przesyłać dane po stronie server. Już tłumaczę o co chodzi. Mam sobie gniazdo serwera które metodą accept() przyjmuje połączenia od klientów. SUPER. Metoda accept() zawsze tworzy nowe gniazdo. Powiedzmy że podłączyło się do mnie dwóch klientów. Czyli po stronie serwera otrzymałem dwa nowe gniazda. Okazuje się że te gniazda mają ten sam port lokalny (powiedzmy że mój serwer nasłuchuje na porcie 4444). Czyli oba gniazda port lokalny mają ustawiony na 4444, oczywiście oba gniazda połączone są z różnymi klientami. Moje pytanie jest proste. Skąd OS lub JVM wie do którego gniazda przesłać dane pochodzące od któregoś z klientów ? Klient wysyłając dane wysyła je pod adres ip i port (powiedzmy że ip serwera to 127.0.0.1 port 4444). Czyli jeden i drugi klient wysyła w to samo miejsce , a jednak jedno gniazdo dostaje informacje zawsze od tego samego klienta a drugie zawsze od drugiego. Czy dodatkowo wysyłane są dane rozróżniające gniazda ?
Bardzo proszę o odpowiedz.
Pozdrawiam