Ostatnio byłem zaskoczony następującymi artykułami na temat ramek Raw-Ethernet:
Przesyłanie wiadomości RAW ethernet vs. UDP
przy użyciu surowych ramek Ethernet
W skrócie, oba omawiają, że możliwe jest ustanowienie komunikacji punkt-punkt przy użyciu tylko warstwy Ethernet. W takim przypadku uniknięto by narzutu warstw IP i TCP, a przepustowość wzrosła (w przybliżeniu 50% według niektórych testów porównawczych).
Chciałbym zrobić podobny test, ale w środowisku bezprzewodowym. Mam jednak pewne problemy:
1. problem
Czy są jakieś ograniczenia sprzętowe (np. Karta Wi-Fi), które mogą podważyć taki wysiłek?
Drugi numer W
obu artykułach wybrano następujący format ramki:
Preambuła | Separator | Nagłówki Maca Ładowność | Pad | CRC
O ile mi wiadomo, preambuła, separator, pad i CRC są dodawane przez urządzenie Ethernet do każdej ramki i nie można ich zmienić za pomocą oprogramowania. Myślę, że z urządzeniami Wi-Fi jest podobnie. Czy w związku z tym istnieje jakieś ograniczenie sprzętowe (np. Karta Wi-Fi), które zagroziłoby usunięciu nagłówków Mac?
ps: należy wziąć pod uwagę, że komunikacja będzie odbywać się w trybie punkt-punkt, tj. nie będzie routerów, przełączników, mostów, ... żadnych połączeń internetowych.
źródło
Odpowiedzi:
Po pierwsze, Wi-Fi (IEEE 802.11) nie jest Ethernetem (IEEE 802.3), podobnie jak Token Ring (IEEE 802.5), ani żaden inny standard IEEE LAN inny niż 802.3 to Ethernet. Nagłówki ramek są różne dla Wi-Fi i Ethernet.
Wi-Fi, Ethernet, Token Ring, FDDI itp. To wszystkie standardy LAN dla OSI warstwa-1 i warstwa2, które hermetyzują datagramy dla protokołów wyższych warstw. Każdy może przenosić protokoły warstwy 3, z których IP to tylko jeden.
Możesz dowolnie tworzyć własne lub używać jednego z istniejących protokołów warstwy 3 dla jednego z protokołów IEEE LAN, ale musisz mieć ramkę dla wybranego protokołu LAN. Nie oczekuj, że będziesz w stanie współpracować z dowolnym urządzeniem, które nie obsługuje stosu protokołów, ani nie możesz oczekiwać, że będzie ono działać na routerach, które nie mają stosu protokołów (oznacza to brak Internetu korzystającego z protokołu IP). Mosty, takie jak przełączniki Ethernet lub WAP, będą transportować protokoły wyższej warstwy, ponieważ działają one w warstwie 2, dzięki czemu można utworzyć sieć LAN.
Musisz mieć nagłówek ramki dla typu sieci LAN, w której się znajdujesz. Po pierwsze, w jaki sposób jeden host faktycznie wysyła do innego hosta bez adresu warstwy 2 w ramce. Myślę, że w zasadzie powracasz do komunikacji szeregowej, takiej jak RS-232, która nie ma ramki ani nagłówka, ale do kontroli danych wykorzystuje dodatkowe przewody.
źródło
Na podstawie twoich pytań i komentarzy, myślę, że brakuje ci sensu dwóch artykułów, do których się odwołujesz.
Kiedy mówią o „Raw Ethernet”, mówią o ramkach danych, które nie zawierają żadnych nagłówków IP (L3) ani TCP / UDP (L4). Nie mówią o używaniu ramek L2 bez nagłówków L2.
Bez nagłówków L2 ramka nie byłaby ramką 802.3 (Ethernet) ani 802.11. Byłoby to coś zupełnie innego. Oddzielny protokół L2.
Nie uwzględniając nagłówków L2? Absolutnie. Aby uzyskać konkretną odpowiedź, musisz określić konkretny adapter, ale wątpię, czy mógłbyś nawet napisać sterowniki, które działałyby z większością adapterów 802.3 lub 802.11, które nie zawierały nagłówków L2. Domyślam się, że większość kart odrzuca / upuszcza ramkę jako zniekształconą przed wysłaniem lub po otrzymaniu.
Wysyłania tylko ramki 802.3 lub 802.11, która nie zawiera nagłówków IP ani TCP / UDP? Nie. Dzieje się tak przez cały czas w ramach normalnych operacji sieciowych i ma miejsce od dziesięcioleci (przynajmniej dla 802.3; 802.11 nie było tak długo, ale przynajmniej dekadę).
Patrz wyżej.
źródło
Spójrz na Wifibroadcast (Linux, niektóre wsparcie Androida), który właśnie to robi. Krótkie podsumowanie: wykorzystuje parę adapterów Wi-Fi, jeden w trybie wstrzykiwania, drugi w trybie monitorowania i przesyła dane przy użyciu surowych ramek WiFi. Jest to połączenie jednokierunkowe. Choć pierwotnie pomyślany jako metoda przesyłania obrazu wideo o niskim opóźnieniu, może oczywiście być wykorzystywany do wszelkiego rodzaju danych.
Tak. Są adaptery, które działają lepiej i adaptery, które działają gorzej, jeśli w ogóle. Niektóre karty w trybie surowym nie mogą zawierać dużej przepustowości, niektóre karty wymagają modyfikacji oprogramowania układowego. Niektóre adaptery działają w paśmie 2,4 GHz, a niektóre w 5 GHz, a niektóre w obu.
źródło
Tak. Teoretycznie można uruchamiać Ethernet typu punkt-punkt. Oba punkty końcowe musiałyby znajdować się w trybie rozwiązawczym, aby usunąć nagłówki MAC MAC Ethernet 802.3 (w przeciwnym razie ramki nie należą do żadnej karty sieciowej i zostaną zignorowane). Oczywiście oznacza to, że nie uruchamiasz „ethernet”.
źródło