제가 협력하는 소프트웨어 공급업체에서는 기존 클라이언트-서버 소프트웨어 설정을 위해 기가비트 이더넷 연결이 필요합니다. 왜 클라이언트와 서버 사이에 그렇게 많은 양의 데이터를 전송해야 하는지 놀란 질문에 벤더는 큰 패킷은 전송하지 않고 작은 패킷을 많이 전송한다고 대답했습니다. 그는 경험상 10메가비트 또는 100메가비트 연결보다 기가비트에서 훨씬 더 빠르게 작동한다고 말했습니다.
이더넷을 직렬 연결로 이해하고 전송 속도는 주로 매체(파이버, 구리 등)에 의해 제한된다는 사실에 당황했습니다. 내가 누락되었을 수 있다는 공급업체의 설명과 같은 현상에 대한 이론적 설명이 있습니까? 내 배경이 정확히 하드웨어에 있는 것은 아니므로 이 특별한 경우에 맞게 어떻게든 최적화하는 기가비트 표준의 최적화 조치가 있을 수 있습니다.
따라서 각각 몇 바이트의 1,000,000개 패킷을 전송해야 한다고 가정할 때 이것이 10/100메가비트 이더넷보다 기가비트 이더넷에서 더 빠를 수 있는 이유가 있습니까?
답변1
패킷 속도(pps)는 회선 속도를 패킷 크기로 나눈 직접적인 결과입니다. 따라서 확장됩니다.선형적으로회선 속도로.
최소 이더넷 프레임 크기는 84바이트이고 최대 크기(점보 프레임 무시)는 1,538바이트입니다. 따라서 다음과 같은 프레임 속도가 가능합니다.
- 100Mbit/s: 8,127f/s ~ 148,809f/s
- 1GBit/s: 81,274f/s ~ 1,488,096f/s
처리량 측면에서 더 많은 대역폭이 항상 더 좋습니다. 대기 시간 측면에서 더 나쁠 수 있으며 아마도 더 많은 전력을 사용하게 될 것입니다.
답변2
5kb의 패킷이 있는 경우 회선이 10, 100 또는 1000mbit를 전송할 수 있는지 여부가 왜 중요합니까?
라인그렇지 않다"메가비트"로 측정됩니다. 메가비트로 측정됩니다.초당. 이는 "시간당 킬로미터"가 모든 거리에 동일하게 적용되는 것처럼 모든 데이터 크기에 동일하게 적용되는 속도 단위입니다. (예를 들어 20km/h로 10m를 이동하는 것은 2km/h로 이동하는 것보다 여전히 10배 빠릅니다.)
원하는 경우 단위를 축소할 수 있습니다. 예를 들어 1km/h를 ~0.27m/s로 변환할 수 있습니다. 마찬가지로 1Gb/s는 1kb/μs로 변환될 수 있습니다. 이는 여전히 동일한 값이지만 1kb/μs(1Gb/s)에서 5킬로비트를 전송하는 데 5마이크로초가 소요되는 것을 볼 수 있습니다. 이는 50μs보다 10배 빠른 것입니다.
[내가 수학을 제대로 했으면 좋겠어]
따라서 각각 몇 바이트의 패키지 1,000,000개를 보내야 한다고 가정할 때 이것이 메가비트 이더넷보다 기가비트 이더넷에서 더 빠를 수 있는 이유가 있습니까?
데이터 전송 속도가 1Gbps(초당 기가비트)이기 때문에 "기가비트 이더넷"이라고 합니다. 실제로는 용량은 아니지만고정 클럭 속도.예를 들어 1기가비트를 보내면 1Gbps로 1초 만에 전송됩니다. 하지만 10메가비트를 보내면 0.01초만에 전송됩니다.아직 1Gbps인데,나머지 0.99초 동안 링크는 유휴 상태로 유지됩니다.
즉, 패킷 크기에 따라 기어가 변경되지 않습니다. 큰 패킷으로 구성된 X Gb를 보내든, 작은 패킷으로 구성된 X Gb를 보내든,언제나동일한 1Gbps 속도로 전송되며 이는 항상 100Mbps보다 10배 빠릅니다.
이더넷을 직렬 연결로 이해하고 소형 패킷의 전송 속도는 주로 매체(파이버, 구리 등)에 의해 제한된다는 점을 이해했습니다.
모든 직렬 연결이 동일하게 작동하는 것은 아닙니다. 동일한 매체에서 달성할 수 있는 비트 전송률은 매체에 따라 달라질 수 있습니다.코딩그리고조정이 비트를 와이어에 연결하는 데 사용하는 것입니다. (내가 모르는 몇 가지 다른 것들도 있습니다.) 그 외에도 기가비트 이더넷(및 유사하게 USB 3.2, PCI-e, SATA 및 기타 여러 직렬 링크)은 여러 레인을 사용하여 여러 데이터 청크를 동시에 전송합니다.