Tôi nghĩ mức tối thiểu là 64 byte. Tại sao điều đó là tối thiểu cần thiết?
Tôi nghĩ mức tối thiểu là 64 byte. Tại sao điều đó là tối thiểu cần thiết?
Câu trả lời:
Đọc nhanh, có vẻ như nó có liên quan đến phần Phát hiện va chạm của CSMA / CD. Nếu các khung hình quá nhỏ trên phương tiện phát sóng cũ, thì một số va chạm sẽ không thể phát hiện được. Tiếp tục chủ đề tương tự ô tô của tôi ngày hôm nay, đó là lý do tương tự mà chúng tôi không cho phép xe đạp trên đường cao tốc tốc độ cao - nó không an toàn cho họ.
Ngoài câu trả lời (hoàn toàn chính xác) của mfinni, việc đặt kích thước khung tối thiểu cho phép bạn dành nhiều chu kỳ nhận để xác minh tổng kiểm tra khung của bạn. Trong Ye Olde Days, người ta có thể dễ dàng tưởng tượng một con chip xử lý một bit trên mỗi chu kỳ, nhưng phải mất nhiều chu kỳ để tính toán tổng kiểm tra trên một con đường chuyên dụng chạy song song với con đường nhận. Nhận được nhiều tin nhắn ngắn có thể khiến logic tổng kiểm tra này bị cắt xén do có nhiều hoạt động đồng thời được kích hoạt trong đó. Loại bỏ bất cứ thứ gì dưới ngưỡng kích thước nhất định cho phép bạn tránh vấn đề này một cách đơn giản.
Ethernet được thiết kế để hoạt động trên một phương tiện được chia sẻ (ether!). Người gửi có khả năng cảm nhận khi tín hiệu họ đang lái ether khác với tín hiệu trên ether.
Thật không may, tất cả các phương tiện truyền thông đều có độ trễ lan truyền (không may là ngay cả ánh sáng truyền đi với tốc độ hữu hạn).
Giả sử bạn gửi một khung rất ngắn. Để phát hiện xem người nhận có truyền đúng lúc họ nhận được khung của bạn hay không, bạn phải đợi tín hiệu họ gửi đến bạn, do đó bạn phải đợi / nghe hai lần độ trễ lan truyền của phương tiện trước khi bạn biết nếu có một vụ va chạm ở cuối nhận.
Bây giờ, thay vì chỉ lắng nghe (gửi im lặng) trong thời gian đó, bạn cũng có thể tiếp tục và gửi một số thông tin hữu ích trong thời gian đó.
Do đó, tiêu chuẩn đặt kích thước khung tối thiểu là lượng dữ liệu bạn có thể gửi trong TWICE độ trễ lan truyền trong trường hợp xấu nhất trong phương tiện được chia sẻ.
Vì vậy, nếu bạn không hài lòng vì các khung lớn cảm thấy "không được tối ưu hóa" cho tin nhắn nhỏ của bạn, hãy nghĩ rằng không gian thừa đó trong gói là cơ hội để tìm thứ khác để gửi, dù sao bạn cũng phải gửi số không.
Tất nhiên, có nhiều cách khác để xử lý va chạm và trì hoãn lan truyền trong một tiêu chuẩn mạng cục bộ, nhưng sau đó sẽ không phải là ethernet và tôi nghĩ tất cả chúng ta đều có thể đồng ý rằng ethernet khá ngọt ngào.
2 x PD
64 byte đến từ đâu? Nó không nên phụ thuộc vào chiều dài / loại cáp? 64 byte có vẻ tùy ý
Để CSMA / CD hoạt động chính xác, bạn muốn phát hiện va chạm nhất quán.
Nếu người nhận thấy xung đột và người gửi không thì gói tin sẽ bị mất. Tương tự nếu người gửi thấy xung đột nhưng người nhận không nhận được gói trùng lặp sau khi người gửi truyền lại. Không phải là mong muốn.
Vì dữ liệu di chuyển với tốc độ hữu hạn, kích thước gói tối thiểu được yêu cầu để đảm bảo rằng nếu xảy ra va chạm, nó sẽ xảy ra ở mọi nơi. Bạn càng lớn thì kích thước gói tối thiểu càng lớn và / hoặc nhanh hơn bạn có thể tạo mạng trước khi CSMA / CD bị hỏng.
Về lý do tại sao 64 byte tôi không biết chắc chắn nhưng tôi hy vọng nó chỉ là một số tròn "có vẻ đúng vào thời điểm đó", với tốc độ mà chúng đang hoạt động, kích thước dự kiến của mạng Ethernet và kích thước dự kiến của các gói cấp cao hơn.
Độ dài gói tối thiểu 64 byte không phải là một số tùy ý. Trong lớp vật lý 10Base5 (đồng trục "Fat Ethernet", một trong những lớp vật lý được chỉ định ban đầu, có cáp dài nhất cho phép), kết quả là chiều dài gói tối thiểu, tính bằng micrô giây, gấp đôi thời gian khứ hồi của chiều dài tối đa cáp, là 2500 mét, bao gồm năm đoạn 500 mét với bốn bộ lặp. Điều này là để đảm bảo rằng các gói được truyền từ các phía đối diện của cáp va chạm hoàn toàn tại mỗi điểm trong cáp, để phát hiện va chạm đáng tin cậy trong tất cả các nút.
Câu đố: