네트워크 딜레이 관련 용어 정리
네트워크를 공부하며 만난 다양한 딜레이 관련 용어들을 정리해보았다.
Propagation Delay
하나의 비트가 전송매체를 통과하는데 걸리는 시간이다.
송신자와 수신자 사이의 거리가 48,000km이고, 속도가 0.24 * 10 giga m/s라고 한다면, Propagation Delay는 아래와 같다.
Transmission Delay
모든 패킷의 비트가 전송매체에 들어가는데 걸리는 시간이다. 수식은 다음과 같다.
Packet Length가 L이고, 전송매체의 Bandwidth를 R이라고 했을 때, L이 12000bits고 R이 100Mbps라고 한다면, Transmission Delay는 아래와 같다.
(nodal) Processing Delay
Router가 Packet Header를 ‘처리’하는데 걸리는 시간으로, Network Delay에서 매우 중요한 요소이다. 여기서 ‘처리’라함은, 패킷의 다음 도착지 결정뿐만 아니라, 전송 과정에서 비트 수준의 에러가 발생했는지 검사하는 것까지 포함한다.
Queueing Delay
이 딜레이는 Router와 관련하여 많이 등장한다. Router는 패킷을 받으면 처리하여 전송한다. 패킷은 한번에 하나씩 처리할 수 있고, 만약 패킷이 Router가 처리할 수 있는 속도보다 빨리 도착하면 Queue(=Buffer, 일종의 메모리)에 대기시킨다. 그리고 이 대기시간을 Queueing Delay라고 부른다. 여기서 만약 Queue가 꽉 차게되면, 초과되는 패킷은 버리게 된다.
Round Trip Time (RTT) vs Ping
RTT는 데이터 패킷이 전달되는 시간과 ACK가 돌아오는 시간을 더한 값으로, 여기에는 Propagation Delay(전파 딜레이)까지 포함된다.
Ping은 RTT와 유사하고 RTT 측정, 네트워크 상태 파악에 대한 좋은 지표가 되지만, ICMP 패킷을 이용하는 Transport 계층에서 측정된다는 점과 RTT는 Application 계층에서 측정되기 때문에 HTTPS 난독화와 같이 Transport보다 상위 계층에서 발생하는 딜레이가 포함될 수 있다는 차이점이 존재한다.
※ ICMP (Internet Control Message Protocol)
Network 계층의 프로토콜로, Ping 측정뿐만 아니라, 에러 보고를 위해서도 사용된다. 예를들면, Router가 다룰 수 없는 엄청나게 큰 데이터 패킷을 전달하게 되면, Router는 이 패킷을 버리고, ICMP 메시지를 송신자에게 보낸다.
Round Trip Time (RTT) vs Latency
Latency는 송신지부터 도착지까지 데이터 패킷이 이동하는데 걸리는 시간을 의미한다. A point에서 B point로 이동하는데 걸리는 시간이 B point에서 A point로 이동하는데 걸리는 시간과 같지 않기 때문에, RTT 시간의 절반이 Latency라고 말할 수는 없다.
Throughput vs Bandwidth
Bandwidth는 Pipe와 같고, Throughput은 Water와 같다. Pipe (Bandwidth)가 클수록, 더 많은 Water (data)가 한번에 흐를 수 있다.
네트워크 관점에서 보면 Bandwidth는 한번에 얼마나 많은 패킷을 보내고 받을 수 있는지를 결정하고, Throughput은 실제로 얼마나 많은 패킷을 성공적으로 보냈는지 나타낸다. Throughput이 낮다면 Packet Loss 문제가 있음을 예상할 수 있다.
또한 Bandwidth는 보통 속도를 측정하기 위해서가 아닌, 네트워크의 Capacity를 측정하기 위해서 사용된다. "Bandwidth가 높으면 속도가 빠르다"라는 말은 틀린 말이다. Bandwidth는 속도에 어떠한 영향도 주지 않는다.
위 내용을 보았을 때, 네트워크의 성능을 평가하기에는 Throughput이 Bandwidth보다 낫다. 하지만 이것이 Bandwidth가 네트워크 성능에 어떠한 영향도 주지 않는다는 말은 아니다. 예를들면, Bandwidth는 웹 페이지 load와 관련한 중대한 영향을 끼치기 때문에, 웹 호스팅 업체를 선택하는 경우 이를 중요하게 고려해야 한다.
참고 문헌
What is RTT (Round-Trip Time) and How to Reduce it? | StormIT
Throughput vs Bandwidth: Understanding the Difference + Tools for 2024
What's the difference between Latency and Round Trip Time? - Network Engineering Stack Exchange
Definition of nodal processing delay | PCMag
Throughput vs Bandwidth: Understanding the Difference + Tools for 2024
Propagation Delay vs Transmission Delay | Baeldung on Computer Science