Jeśli mam rację, w węźle źródłowym warstwa sieci przekazuje datagram do warstwy łącza. Następnie warstwa łącza dzieli datagram na ramki i przenosi całe ramki z jednego elementu sieci do sąsiedniego elementu sieci.
Zastanawiałem się nad węzłem docelowym, czy ponowne składanie ramek w datagramy odbywa się w warstwie łącza czy w warstwie sieciowej? Czy warstwa łącza przekazuje ramki lub datagramy do warstwy sieci?
Zasadniczo w węźle źródłowym podczas przejścia z wyższej warstwy do niższej warstwy następuje podział większych jednostek danych na mniejsze jednostki danych w dolnej warstwie.
Czy w węźle docelowym przy przechodzeniu z dolnej warstwy do wyższej warstwy ponowne składanie mniejszych jednostek danych w większe jednostki danych zachodzi w dolnej lub wyższej warstwie?
Dziękuję i pozdrawiam!
źródło
Odpowiedzi:
Warstwa sieciowa potrzebuje jako źródła wejściowego adresu IP źródłowego / docelowego i portu źródłowego / docelowego, tzn. Musi to być seria bajtów w standardowej formie pakietu IP. Dlatego nagłówki i stopki Ethernet muszą zostać usunięte, zanim warstwa sieciowa je otrzyma, w przeciwnym razie, gdy warstwa sieciowa przyjrzy się pewnym przesunięciom potrzebnych danych, takim jak źródłowy adres IP itp., Spowodowałoby to błąd.
Nic nie „etykietuje” pól w pakiecie IP, są one identyfikowane przez pozycję w pakiecie. Dlatego dolna warstwa musi nadać warstwie sieci strumień danych zgodny z IP, a nie strumień danych zgodny z Ethernetem.
Pod względem koncepcyjnym to powinno / powinno się zdarzyć, ale tylko zbadanie kodu źródłowego lub dezasemblacja implementacji TCP / IP dałoby dokładne odpowiedzi lub dokładnie, w jaki sposób „praca” jest podzielona na oprogramowanie. W sytuacji, gdy masz wbudowane urządzenie, które działałoby tylko z jednym możliwym urządzeniem sprzętowym NIC, prawdopodobnie mógłbyś bardzo mocno połączyć sieć, łącze danych i warstwy fizyczne, i jestem pewien, że są to dedykowane routery sprzętowe itp. W sytuacji, gdy masz system operacyjny ogólnego przeznaczenia obsługujący szeroką gamę sprzętu, nie możesz tego zrobić.
W zakresie transmisji obowiązuje to samo. Karta sieciowa wymaga źródłowego i docelowego adresu MAC, który pojawia się w określonych pozycjach w ramce Ethernet. Tak więc warstwa sieciowa bezpośrednio wysyłająca pakiet do karty sieciowej nie powiedzie się, ponieważ nie zostanie do niej dołączony nagłówek Ethernet zawierający źródłowy / docelowy MAC.
źródło
Ramki są ponownie składane w datagramy w warstwie IP w systemach wykorzystujących TCP / IP. Wynika to z tego, że stos TCP / IP powoduje fragmentację w warstwie IP. Warstwa IP wymaga warstwy pod nią, która może przenosić ramki, ale nie wymaga, aby ramka była wystarczająco duża, aby przenosić cały datagram. Zatem warstwa IP wykonuje zarówno fragmentację, jak i ponowny montaż.
źródło