Czy warstwa łącza przekazuje ramki lub datagramy do warstwy sieci?


1

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!


„warstwa łącza” dzwoni ze mną z jakiegoś powodu, ale szybkie wyszukiwanie pokazuje, że nazywa się to „warstwą łącza danych” w modelu ISO OSI. nie „warstwa łącza”. a „warstwa łącza danych” ma łącze logiczne podzielone na 2 podwarstwy - kontrola łącza logicznego i kontrola dostępu do mediów microsoft.com/mspress/books/sampchap/5507a.aspx microsoft.com/mspress/books/sampchap/5507/ 0735614563-06.gif
barlop

także i mogę się mylić, ale myślę, że kiedy schodzę z warstw, dane stają się coraz większe. to montaż (używając twojego terminu). a po warstwach robi się coraz mniejszy, demontaż. (to przeciwieństwo tego, co napisałeś), myślę, że mam rację, ponieważ z niektórych komentarzy wynika, że ​​sam wyraziłeś wątpliwości (co jest dobre), a twoja terminologia jest zdecydowanie błędna, jak „element sieci” składa się z tego terminu.
barlop

Odpowiedzi:


1

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.


Dzięki! +1. (1) Gdzie mogę zobaczyć taki kod / implementację? (2) Czy masz na myśli, gdy dane są przekazywane z jednej warstwy do drugiej w modelu OSI, bieżąca warstwa musi przekonwertować dane do formularza dla następnej warstwy przed przekazaniem jej do następnej warstwy? (3) Czy karta NIC jest w warstwie linkera?
Tim

(4) Czy jednostka danych rośnie, czy maleje wraz z przejściem do niższej warstwy?
Tim

(1) Kod źródłowy FreeBSD jest świetnym początkiem, podobnie jak kod źródłowy Linuksa. (2) Tak, ponieważ każda warstwa ma określone oczekiwania co do tego, co oznaczają dane w określonych pozycjach w danym strumieniu. (3) Karta sieciowa ogólnie obejmuje warstwy 1 i 2, a nawet do warstwy 4, jeśli karta sieciowa ma „silnik odciążający TCP”.
LawrenceC,

(4) Będzie się powiększać, gdy coraz więcej nagłówków będzie „poprawianych” - technicznym terminem jest „enkapsulacja” google.com/…
LawrenceC

1

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ż.


Dzięki! +1. Czy w modelu OSI jednostki danych stają się coraz mniejsze, gdy przechodzą z wyższej warstwy do niższej?
Tim

Może to być jedno i drugie. Mogą stać się większe, ponieważ każda warstwa może dodawać nowy nagłówek i informacje pomocnicze. Mogą się zmniejszyć, ponieważ warstwa może dokonać fragmentacji.
David Schwartz

Dzięki! Czy każda warstwa ulega fragmentacji?
Tim

Nie zwykle nie.
David Schwartz
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.