고정된 네트워크 처리량으로 단일 파일을 보내는 데 걸리는 시간을 추정하시겠습니까?

고정된 네트워크 처리량으로 단일 파일을 보내는 데 걸리는 시간을 추정하시겠습니까?

다양한 크기(10KB, 100KB, 1MB, 10MB, 100MB)의 여러 파일이 있다고 가정해 보겠습니다. 이러한 파일을 초당 2MB로 개별적으로 전송하기 시작하는 네트워크는 해당 특정 파일을 다운로드하거나 업로드하는 시작 및 중지 타임스탬프에 따라 다른 최종 처리량을 반환합니다. 물론 더 큰 파일의 최종 처리량은 2MB에 매우 가깝지만 10KB, 100KB 및 1MB는 ​​아마도 훨씬 적을 것입니다.

따라서 최종 처리량은 0.2MB/s 0.5MB/s 1.2MB/s 1.95MB/s와 같습니다.

초기 연결 지연이 있는 것으로 알고 있습니다. 예 scp를 들어 . 총 시간에서 초기 대기 시간을 빼서 처리량을 계산하면 모든 파일에 대해 동일한 처리량이 산출되지 않습니다(모든 파일에 대해 2.0MB/s와 같은 대기 시간 없는 처리량을 얻을 수는 없습니다).

이에 영향을 미칠 수 있는 다른 요인이 있나요? 네트워크 속도가 점진적으로 2MB로 증가하여 더 작은 파일(10KB, 100KB, 1MB)의 최종 처리량이 더 작아진 것처럼 보입니까(가장 빠른 속도가 제공되기 전에 데이터가 전송되기 때문입니다)?

답변1

이는 연결 대기 시간을 빼는 것보다 더 복잡합니다. TCP 창 크기 조정 및 버퍼링 기능이 표시되고 동적으로 조정되며 큰 파일의 경우 매우 낮은 속도에서 네트워크 처리량 제한까지 속도가 증가하는 것을 볼 수 있습니다.

자세한 내용은 여기에서 확인할 수 있습니다.

https://en.wikipedia.org/wiki/TCP_tuning#Window_size

또는 1,000개 이상의 단어로 그림을 설명하세요.

http://www.linuxfoundation.org/collaborate/workgroups/networking/tcp_testing

관련 정보