Khung Ethernet thô


10

Gần đây tôi đã bị bối rối bởi các bài viết sau về khung Raw-Ethernet:

RAW ethernet so với tin nhắn UDP truyền
qua khung Ethernet thô

Tóm lại, cả hai đều thảo luận rằng có thể thiết lập giao tiếp điểm-điểm chỉ sử dụng lớp Ethernet. Trong trường hợp đó, sẽ tránh được chi phí hoạt động của các lớp IP và TCP và thông lượng sẽ tăng (khoảng 50% theo một số điểm chuẩn).

Tôi muốn làm một bài kiểm tra tương tự nhưng trong môi trường không dây. Tuy nhiên, tôi có một số vấn đề:

Vấn đề thứ nhất
Có bất kỳ ràng buộc phần cứng nào (ví dụ: thẻ Wi-Fi) có thể làm suy yếu nỗ lực đó không?

Vấn đề thứ 2
Cả hai bài viết đều chọn định dạng khung sau:

Lời mở đầu | Dấu phân cách | Tiêu đề Mac | Tải trọng | Pad | CRC

Theo như tôi biết, phần mở đầu, dấu phân cách, phần đệm và CRC được thiết bị Ethernet thêm vào mọi khung và không thể thay đổi qua phần mềm. Tôi đoán với các thiết bị Wi-Fi là tương tự. Do đó, có bất kỳ ràng buộc phần cứng nào (ví dụ: thẻ Wi-Fi) sẽ làm suy yếu việc xóa Tiêu đề Mac không?

ps: xem xét rằng giao tiếp sẽ trên cơ sở điểm-điểm, nghĩa là, sẽ không có bộ định tuyến, chuyển mạch, cầu nối, ... không có kết nối internet.


2
Lưu lượng truy cập không phải IP qua Ethernet là một phần của mạng trong nhiều thập kỷ, vì vậy tôi không thực sự rõ ràng về những gì bạn đang thực sự cố gắng để được trả lời và có lẽ bạn cần tìm hiểu thêm một chút về những điều cơ bản của mạng. Không có thứ gọi là "Thẻ không dây Ethernet" vì Ethernet không dây 802.3 và 802.11 là hai tiêu chuẩn hoàn toàn khác nhau. Do đó, định dạng khung của bạn trong vấn đề thứ 2 hoàn toàn không áp dụng cho mạng 802.11, nhưng các khung có một số yêu cầu nhất định theo tiêu chuẩn, đó là lý do tại sao nhiều thành phần của khung bạn liệt kê không thể định cấu hình.
YLearn

1
@YLearn Lưu lượng truy cập không phải IP qua Ethernet đã là một phần của mạng trong nhiều thập kỷ , nhưng tại thời điểm đó, các thiết bị Ethernet không 'thông minh' như ngày nay và rất nhiều công việc đã được CPU thực hiện. Tôi đã tự hỏi liệu chi phí của việc 'thông minh' có bị mất tính linh hoạt hay không.
Đánh dấu Messa

@YLearn hoàn toàn không áp dụng cho mạng 802.11 Ok, tôi biết rằng các máy tính khác được kết nối trong mạng 802.11 tiêu chuẩn sẽ không nhận ra các khung như vậy là hợp lệ. Tuy nhiên, có thể gửi / nhận các khung như vậy? Hoặc phần cứng sẽ không cho phép?
Đánh dấu Messa

@MarkMessa, các khung hình từ máy chủ này đến máy chủ khác trên cùng mạng LAN sẽ được máy chủ thứ hai nhận được. Câu hỏi là liệu chúng có được chuyển đến các lớp trên trong ngăn xếp mạng bên trong máy chủ hay không. Nếu máy chủ nhận chỉ có ngăn xếp IP và tải trọng khung không phải là IP, thì dữ liệu sẽ bị bỏ qua. Bạn cần tìm hiểu về mô hình OSI để có được ý tưởng chung về cách dữ liệu được truyền từ máy chủ này sang máy chủ khác.
Ron Maupin

@MarkMessa, liên quan đến nhận xét đầu tiên của bạn, mặc dù các thiết bị Ethernet "thông minh hơn", Ethernet vẫn hoạt động như Ethernet. 802.3 không bao giờ có hoặc không bao giờ sẽ yêu cầu sử dụng IP. Ví dụ, mặc dù hiếm, Ethernet ngày nay vẫn sẽ hỗ trợ Appletalk hoặc IPX / SPX một cách vui vẻ hơn bao giờ hết hoặc không có bất kỳ giao thức lớp cao hơn nào (nhiều thứ vẫn chỉ sử dụng L2 để liên lạc). Đối với bình luận thứ hai của bạn, tôi không chắc ý của bạn là "có thể gửi / nhận các khung như vậy không." Bạn không thể gửi các khung hình 802.3 qua 802.11, nhưng chỉ có các giao tiếp 802.11 không liên quan đến IP.
YLearn

Câu trả lời:


8

Đầu tiên, Wi-Fi (IEEE 802.11) không phải là ethernet (IEEE 802.3) không khác gì vòng mã thông báo (IEEE 802.5) hoặc bất kỳ tiêu chuẩn nào khác của IEEE LAN ngoài 802.3 là ethernet. Các tiêu đề khung là khác nhau cho Wi-Fi và ethernet.

Wi-Fi, ethernet, vòng mã thông báo, FDDI, v.v ... là tất cả các tiêu chuẩn LAN cho OSI layer-1 và layer2, đóng gói các datagram cho các giao thức lớp trên. Mỗi giao thức có thể vận chuyển các giao thức lớp 3, trong đó IP chỉ là một.

Bạn có thể tự tạo hoặc sử dụng một trong các giao thức lớp 3 hiện có cho một trong các giao thức LAN LAN, nhưng bạn sẽ cần phải có khung cho giao thức LAN mà bạn chọn. Đừng mong đợi có thể tương tác với bất kỳ thiết bị nào không chạy ngăn xếp giao thức của bạn, bạn cũng không thể mong đợi nó chạy trên bất kỳ bộ định tuyến nào không có ngăn xếp giao thức của bạn (điều này có nghĩa là không có Internet sử dụng IP). Các cầu nối như chuyển mạch ethernet hoặc WAP sẽ vận chuyển các giao thức lớp trên của bạn vì chúng hoạt động ở lớp 2, do đó bạn có thể tạo mạng LAN.

Bạn sẽ cần phải có tiêu đề khung cho loại LAN bạn đang bật. Đối với một điều, làm thế nào một máy chủ thực sự gửi đến một máy chủ khác mà không có địa chỉ lớp 2 trong khung. Tôi nghĩ rằng về cơ bản bạn đang quay trở lại giao tiếp nối tiếp như RS-232 không có khung hoặc tiêu đề, nhưng nó phụ thuộc vào các dây bổ sung để kiểm soát dữ liệu.


Wi-Fi (IEEE 802.11) không phải là ethernet (IEEE 802.3) Ok, tôi vừa thay đổi một phần câu hỏi để tránh sự nhầm lẫn này. Bây giờ, hoàn toàn lạc đề, chỉ cần nghĩ về nó: một số sản phẩm được quảng cáo là 'LAN ethernet không dây'.
Đánh dấu Messa

Tôi đã thấy những điều như vậy, nhưng điều đó không có nghĩa là nó đúng. Khung Wi-Fi và ethernet là khác nhau và ethernet sử dụng phát hiện va chạm, nhưng Wi-Fi sử dụng tránh va chạm. Các mạng LAN khác sử dụng những thứ như mã thông báo để ngăn chặn va chạm hoàn toàn. Chúng đều là các mạng LAN khác nhau và một số quảng cáo không làm cho chúng giống nhau.
Ron Maupin

điều đó không có nghĩa là nó đúng Ok tôi đồng ý với bạn. Nhờ sửa cho tôi. Tôi biết về sự khác biệt như CSMA / CD, CSMA / CA và mã thông báo. Tuy nhiên, tôi đã bị mù bởi các quảng cáo như 'Wi-Fi là mạng LAN ethernet không dây'.
Đánh dấu Messa

Bạn cũng không thể mong đợi nó chạy trên bất kỳ bộ định tuyến nào. Sẽ không có bộ định tuyến, bộ chuyển mạch hoặc cầu nối, chỉ có giao tiếp điểm-điểm. Tôi vừa mới chỉnh sửa câu hỏi để tránh nhầm lẫn này.
Đánh dấu Messa

1
@MarkMessa Tôi không muốn tránh sử dụng khung, tôi chỉ xem xét để tránh sử dụng tiêu đề MAC. Đó là lý do tại sao yêu cầu của bạn là khó hiểu. Bạn dường như không hiểu rằng nếu không có các tiêu đề L2 thì chúng không còn là khung Ethernet hoặc 802.11. Bạn sẽ cần phải viết giao thức L2 của riêng bạn để hoạt động mà không cần các tiêu đề L2 có trong 802.3 hoặc 802.11.
YLearn

7

Dựa trên câu hỏi và nhận xét của bạn, tôi nghĩ rằng bạn đang thiếu điểm của hai bài viết mà bạn đang tham khảo.

Khi họ nói về "Ethernet thô", họ đang nói về các khung dữ liệu không chứa bất kỳ tiêu đề IP (L3) hoặc TCP / UDP (L4) nào. Họ không nói về việc sử dụng các khung L2 mà không có các tiêu đề L2.

Nếu không có các tiêu đề L2, một khung sẽ không phải là một khung 802.11.3 (Ethernet) cũng như khung 802.11. Nó sẽ là một cái gì đó khác hoàn toàn. Một giao thức L2 riêng.

Có bất kỳ ràng buộc phần cứng nào (ví dụ: thẻ Wi-Fi) có thể làm suy yếu nỗ lực đó không?

Không bao gồm các tiêu đề L2? Chắc chắn rồi. Bạn sẽ phải chỉ định một bộ điều hợp cụ thể để có câu trả lời cụ thể, nhưng tôi nghi ngờ bạn thậm chí có thể viết trình điều khiển hoạt động với hầu hết các bộ điều hợp 802.3 hoặc 802.11 không bao gồm các tiêu đề L2. Tôi đoán là hầu hết các bộ điều hợp sẽ từ chối / thả khung hình không đúng định dạng trước khi gửi hoặc khi nhận được nó.

Gửi chỉ một khung 802.3 hoặc 802.11 không bao gồm các tiêu đề IP hoặc TCP / UDP? Không. Điều này xảy ra mọi lúc như là một phần của hoạt động mạng thông thường và trong nhiều thập kỷ (ít nhất là đối với 802.3; 802.11 đã không tồn tại lâu nhưng ít nhất là một thập kỷ).

Do đó, có bất kỳ ràng buộc phần cứng nào (ví dụ: thẻ Wi-Fi) sẽ làm suy yếu việc xóa Tiêu đề Mac không?

Xem ở trên.


hầu hết các bộ điều hợp sẽ từ chối / thả khung tôi đoán câu trả lời này cho câu hỏi của tôi. Sau đó tôi sẽ gửi câu trả lời của riêng mình để không mất tất cả các bình luận 'phù du' thú vị.
Đánh dấu Messa

từ chối / thả khung hình không đúng định dạng trước khi gửi hoặc khi nhận được. Theo tôi biết, ở chế độ màn hình, bạn có thể nghe thấy bất kỳ loại khung hình nào, ngay cả những khung hình không đúng định dạng (ví dụ: sai CRC). Tuy nhiên, thật kỳ lạ, phần cứng không cho phép bạn phát các khung hình mà không có tiêu đề MAC.
Đánh dấu Messa

chỉnh sửa nhỏ: Tuy nhiên, thật kỳ lạ, bộ điều hợp không cho phép bạn phát các khung mà không có tiêu đề MAC.
Đánh dấu Messa

2
@MarkMessa "Theo như tôi biết, ở chế độ màn hình, bạn có thể nghe thấy bất kỳ loại khung hình nào, ngay cả những khung hình không đúng định dạng (ví dụ: sai CRC)" Điều này hoàn toàn phụ thuộc vào thiết bị được đề cập. Nhiều bộ điều hợp (bao gồm các công tắc) sẽ xử lý và loại bỏ chúng ngay cả trước khi gửi chúng để được chụp / nhân đôi / kéo dài. Thường thì bạn thậm chí sẽ không xem đoạn giới thiệu Ethernet với CRC được chụp.
YLearn

1

Tôi muốn làm một bài kiểm tra tương tự nhưng trong môi trường không dây.

Hãy xem Wifibroadcast (Linux, một số hỗ trợ Android) thực hiện chính xác điều đó. Tóm tắt ngắn gọn: nó sử dụng một cặp bộ điều hợp wifi, một ở chế độ tiêm, một ở chế độ màn hình và truyền dữ liệu bằng các khung wifi thô. Đây là một kết nối đơn hướng. Mặc dù ban đầu được hình thành như một phương pháp để truyền nguồn cấp dữ liệu video có độ trễ thấp, tất nhiên nó có thể được sử dụng cho tất cả các loại dữ liệu.

Có bất kỳ ràng buộc phần cứng nào (ví dụ: thẻ Wi-Fi) có thể làm suy yếu nỗ lực đó không?

Đúng. Có những bộ điều hợp hoạt động tốt hơn, và bộ điều hợp hoạt động kém hơn, nếu có. Một số bộ điều hợp ở chế độ thô không thể chứa thông lượng cao, một số bộ điều hợp cần phải sửa đổi phần sụn. Một số bộ điều hợp hoạt động ở băng tần 2.4GHz và một số ở tốc độ 5GHz và một số ở cả hai.


0

Đúng. Về lý thuyết , bạn có thể chạy ethernet điểm-điểm như thế. Cả hai điểm cuối sẽ phải ở chế độ bừa bãi để loại bỏ các tiêu đề MAC Ethernet 802.3 (nếu không các khung không thuộc về một trong hai NIC và sẽ bị bỏ qua.) Tất nhiên, làm điều này có nghĩa là bạn không chạy "ethernet".


Chế độ lăng nhăng Đây là một vấn đề rất quan trọng mà tôi đã hy vọng được nêu ra. Trong các khung chế độ bừa bãi được gửi đến một địa chỉ MAC khác với địa chỉ của bạn sẽ không bị loại bỏ bởi thẻ Wi-Fi. Tuy nhiên, điều tương tự không đúng với BSSID (sửa tôi nếu tôi sai). Nếu khung không được gửi đến BSSID của bạn, thẻ Wi-Fi sẽ loại bỏ nó. Có thể tránh điều đó và nhận TẤT CẢ các khung đến thẻ của bạn không? (chế độ màn hình?)
Đánh dấu Messa

Chế độ bừa bãi để loại bỏ các tiêu đề MAC Ethernet 802.3 Dựa trên câu trả lời @YLearn, có vẻ như phần cứng sẽ không chấp nhận các khung mà không có các tiêu đề L2.
Đánh dấu Messa
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.