이더넷에 최소 프레임 크기가 지정된 이유는 무엇입니까?


12

최소값은 64 바이트라고 생각합니다. 왜 최소가 필요한가요?

답변:


16

빠른 읽기를 수행하면 CSMA / CD의 충돌 감지 부분과 관련이있는 것 같습니다. 오래된 방송 미디어에서 프레임이 너무 작 으면 일부 충돌을 감지 할 수 없습니다. 오늘날 자동차 유사성에 대한 주제를 계속 유지하면서, 우리가 고속 고속도로에서 자전거를 허용하지 않는 것과 같은 이유로 안전하지 않습니다.


3
+1, 나는 자전거에 대해 몰랐습니다 ...
Kyle Brandt

6
+1 충돌 감지가 이유입니다. 64 바이트는 10Mb 이더넷 속도에서 0.04ms입니다. 더 작고 충돌은 감지되지 않습니다 (1982 년).
sysadmin1138

내가 당신을 이해하고 있다면, 최소 64 바이트의 이유는 다른 방송국이 그것을 알 수 있도록 충분한 시간을 주어야하기 때문입니까?
CodyBugstein

1
충돌을 감지 할 수없는 이유를 자세히 설명해 주시겠습니까?
problemofficer

1
고속 고속도로에서 자전거 충돌이 감지 될 것이라고 확신합니다. 어쨌든 자전거는 미국 서부 대부분의 주간 고속도로에서 허용되므로 그 비유가 얼마나 적절한 지 잘 모르겠습니다. :)
Michael Hampton

4

mfinni의 (정확한) 답변 외에도 최소 프레임 크기를 설정하면 프레임의 체크섬을 확인하는 여러 수신주기를 소비 할 수 있습니다. Ye Olde Days에서는 사이클 당 1 비트를 처리하는 칩을 쉽게 상상할 수 있지만 수신 경로와 병렬로 실행되는 전용 경로에서 체크섬을 계산하려면 많은주기가 필요합니다. 많은 짧은 메시지를 수신하면 여러 개의 동시 작업이 트리거되어이 체크섬 논리가 깨질 수 있습니다. 특정 크기 임계 값 미만의 항목을 폐기하면 간단한 방법으로이 문제를 피할 수 있습니다.


나는이 대답이 틀렸다고 믿는다. 매체 및 전파 감지에서의 전파 지연과 관련이 있습니다.
앤드류 바그너

@AndrewWagner, 내가 이미 대답했듯이 충돌 감지에 관한 위의 mfinni의 대답은 정확합니다. 필자의 요점은이 사양의 "특별한 (quik)"은 하드웨어 설계자들이 그들 자신의 몇 가지 지름길을 취할 수있게한다는 것이다.
BMDan

2

이더넷은 공유 매체 (이더!)를 통해 작동하도록 설계되었습니다. 발신자는 에테르를 구동하는 신호가 에테르에있는 신호와 다른 경우이를 감지 할 수 있습니다.

불행히도 모든 매체에는 전파 지연이 있습니다 (불행히도 가벼운 속도는 유한 속도로 이동합니다).

매우 짧은 프레임을 전송한다고 가정하십시오. 수신기가 프레임을 수신하는 동시에 수신기가 올바르게 전송하는지 감지하려면 전송하는 신호가 사용자에게 도달 할 때까지 기다려야하므로 매체의 전파 지연이 두 배가 될 때까지 기다려야합니다. 수신단에서의 충돌.

이제는 그 동안 듣는 것 (무음 보내기) 대신 그 시간 동안 유용한 정보를 보낼 수도 있습니다.

따라서 표준은 최소 프레임 크기를 공유 매체에서 최악의 전파 지연을 TWICE로 전송할 수있는 데이터의 양으로 설정합니다.

따라서 큰 프레임이 작은 메시지에 대해 "최적화되지 않은"느낌이 들기 때문에 불행한 경우 패킷에있는 여분의 공간은 다른 방법으로 0을 보내야 할 때 보낼 다른 것을 찾을 수있는 기회로 생각하십시오.

물론 로컬 네트워킹 표준에서 충돌 및 전파 지연을 처리하는 다른 많은 방법이 있지만 이더넷이 아니므로 이더넷이 매우 달콤하다는 데 모두 동의 할 수 있습니다.


질문 : 왜 최소값이 필요한지 또는 2 x PD64 바이트의 출처는 무엇입니까? 케이블의 길이 / 유형에 의존해서는 안됩니까? 64 바이트는 임의의 것으로 보인다
CodyBugstein

이전 효율성 vs 복잡성 트레이드 오프로 돌아갑니다. 네트워크를 자동으로 측정하고 적절한 최소 패킷 크기를 선택하는 시스템을 구축 할 수 있지만 상대적으로 적은 이득을 위해 사소한 복잡성을 추가합니다.
피터 그린

0

CSMA / CD가 올바르게 작동하려면 일관된 충돌 감지가 필요합니다.

수신자가 충돌을보고 발신자가 그렇지 않으면 패킷이 손실됩니다. 마찬가지로 발신자가 충돌을 보았지만 수신자가 재전송 한 후에 중복 패킷을받지 못한 경우. 어느 것도 바람직하지 않습니다.

데이터가 유한 속도로 이동하기 때문에 충돌이 발생하면 어디에서나 발생할 수 있도록 최소 패킷 크기가 필요했습니다. 최소 패킷 크기가 클수록 CSMA / CD가 고장 나기 전에 네트워크를 더 크고 빠르게 만들 수 있습니다.

왜 64 바이트인지는 잘 모르겠지만, 작동 속도, 이더넷 네트워크의 예상 크기 및 예상 크기를 고려할 때 "당시 적절한 것으로 보인"숫자 일 것으로 예상됩니다. 더 높은 수준의 패킷.


0

64 바이트의 최소 패킷 길이는 임의의 숫자가 아닙니다. 10Base5 물리 계층 ( "Fat Ethernet"동축에서 원래 지정된 물리 계층 중 가장 긴 케이블을 허용하는 것 중 하나)은 최소 길이 (마이크로 초)로 최대 길이의 왕복 시간의 두 배입니다. 케이블은 2500 미터이며 4 개의 중계기가있는 5 개의 500 미터 세그먼트로 구성됩니다. 이는 모든 노드에서 안정적인 충돌 감지를 위해 케이블의 반대쪽에서 전송 된 패킷이 케이블의 각 지점에서 완전히 충돌하도록합니다.

하찮은 일:

  • 안전 오버 헤드를위한 최소량의 두 배
  • 동축 케이블의 충돌 감지는 아날로그 전압 비교기로 수행 할 수 있습니다 (충돌 된 패킷은 정상 신호 전압의 두 배가되므로)
  • 구리 케이블의 전기 속도는 초당 약 200000km입니다.
  • 10Base5 이더넷의 각 비트는 케이블에서 길이가 20 미터입니다.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.