Netstat를 사용하여 오버헤드 계산
브로드캐스트 또는 멀티캐스트 트래픽과 같은 다른 네트워크 트래픽이 데이터를 왜곡하지 않도록 조용한 네트워크에서 Netstat를 사용하여 오버헤드를 계산해야 합니다.
Netstat를 사용하여 애플리케이션의 네트워크 오버헤드를 계산하려면
- Netstat를 사용하여 현재 인터페이스 통계를 검색합니다.
- 애플리케이션을 실행합니다.
- Netstat를 사용하여 인터페이스 통계를 다시 가져옵니다.
- 두 Netstat 측정값 간에 수신된 바이트 수를 계산합니다.
예제
다음 예제에서는 TTCP를 사용하여 한 번에 1바이트씩 10바이트의 데이터를 보내는 이러한 단계를 보여 줍니다.
먼저 애플리케이션에 대한 이론적 오버헤드가 계산됩니다. 이 테스트의 경우 모든 패킷은 60바이트(이더넷 최소)입니다. 이 전송을 수행하려면 연결을 설정하려면 3개의 패킷, 10개의 데이터 패킷, 10개의 승인 패킷(지연된 ACK는 거의 매번 트리거됨) 및 연결을 정상적으로 닫는 4개의 패킷이 필요합니다.
이는 각각 60바이트 또는 1620바이트(3+4+10+10)*60=1620)의 27개 패킷과 같습니다. 10바이트의 데이터만 전송되므로 오버헤드는 1610바이트이며 프로토콜 오버헤드의 99%를 초과합니다.
명령
netstat -e
Interface Statistics
Received Sent
Bytes 392291400 444684566
Unicast packets 487627 570086
Non-unicast packets 1159163 11300
Discards 0 0
Errors 0 0
Unknown protocols 52812
ttcp -t -h0 -D -l1 -n10 -p9 172.31.71.99
ttcp-t: 10 bytes in 2168 real milliseconds = 0 KB/sec
ttcp-t: 10 I/O calls, msec/call = 216, calls/sec = 4, bytes/call = 1
netstat -e
Interface Statistics
Received Sent
Bytes 39229207 444685382
Unicast packets 487641 570100
Non-unicast packets 1159164 11301
Discards 0 0
Errors 0 0
Unknown protocols 52812
계산
보낸 사람: 816바이트
수신: 674바이트
총 바이트 수: 1490
사용자 바이트: 10
오버헤드: 1480/1490 = 99.3%
**Goodput: **= 5바이트/초(또는 40비트/초)
참고
전송된 실제 바이트는 Netstat 값에서 패딩 바이트가 차지되지 않아 이론적 값과 일치하지 않습니다.
관련 항목