[네트워크] 패킷 교환 네트워크에서의 지연(Delay and Loss in Packet Switching)

참고도서: 컴퓨터 네트워킹 : 하향식 접근. 7판. James F. Kurose , Keith W.Ross 지음

지연 유형

패킷 교환에서 발생하는 지연은 단순히 한 요소에만 영향을 받지 않는다. 다양한 지연의 유형들이 있지만 주요한 몇가지 지연 유형들을 먼저 알아보자.

Processing Delay(처리 지연)

  • 처리 지연은 라우터 내부에서 발생한다.
  • 전달받은 패킷에 에러가 있는지 체크하고 어느 목적지로 패킷을 보낼 것인지 결정하는데 걸리는 지연시간이다.
  • 최근에는 라우터의 성능이 좋아지면서 무시할 수 있는 정도의 지연시간이 되었다.

Queing Delay(큐잉 지연)

  • 라우터에 도착한 패킷은 라우터가 다른 패킷을 전송하고 있다면 라우터의 출력 버퍼에 들어가 대기하게 된다.
  • 이때 큐에서 링크로 전송되기를 기다리는 지연시간을 큐잉 지연이라고 한다.
  • 큐잉 지연은 라우터의 출력버퍼 크기나 한번에 라우터에 몰리는 패킷의 개수에 따라 결정된다.(Depends on conjestion level of router)
  • 상황과 환경에 따라 지연시간의 범위가 크게 달라지는데, 이런 Delay VariationJitter
  • 가변 요소가 큰 지연 유형이다.

Transmission Delay(전송 지연)

  • 전송 지연은 패킷의 모든 비트를 라우터에서 링크로 밀어내는데 걸리는 시간을 의미한다.
  • 우리는 주로 R 을 링크의 대역폭(bps)로 사용하고 L 을 패킷의 길이(bits)로 사용한다.
  • 따라서 전송 지연은 L/R을 계산함으로 얻을 수 있다.

Propagation Delay(전파 지연)

  • 링크로 들어온 순간부터 목적지까지 전파가 도달하기에 필요한 시간을 전파 지연이라고 한다.
  • 우리는 d를 링크 매체의 길이로 사용하고 s를 전파 속도로 사용한다.
  • 따라서 전파 지연은 d/s를 계산함으로 얻을 수 있다.

패킷 손실

  • 한 페킷이 라우터에 도착했을 때 라우터의 출력 버퍼가 가득 찬 상태라면, 새로 들어온 패킷이나 기존 큐에 있던 패킷 중 하나를 버려야한다.
  • 이렇게 패킷을 버리는 것을 drop 이라고 하고 패킷을 손실(loss) 했다고 한다.

Traceroute

  • Traceroute 는 네트워크 지연을 진단할 수 있는 프로그램이다.
  • 사용자는 프로그램에 진단할 목적지의 호스트 이름을 입력한다.
  • 출발지와 목적지 사이에 N-1개의 라우터가 있다면, 프로그램은 출발지에서 N개의 번호가 달린 패킷들을 전송한다.
  • 이 번호는 1부터 N까지 순서대로 기록되어 있다.
  • N번째 라우터에 N번 패킷이 도달하면, 라우터는 출발지로 경과시간이 기록된 메세지를 보낸다.
  • 위 과정을 총 세 번 반복해서 세번의 경과시간을 얻는다.

Throughput (처리율)

  • throughput은 파일의 전체 비트가 F라고 하고, 이 파일이 완전히 목적지까지 전달되는데 T 시간이 걸린다면, F/T로 나타낼 수 있다.

    • instantaneous: 어떤 시간 순간에 기록되는 throughput
  • 만약 어떤 전송 경로가 하나의 라우터를 거쳐가는, 2개의 통신링크로 구성된 경우, 서버에서 라우터로 가는 처리율을 Rs 라 하고, 라우터에서 클라이언트 엔드시스템으로 가는 처리율을 Rc 라고 할 때, 처리율은 두 링크의 처리율 중 더 작은 처리율로 계산된다. 그리고 이렇게 더 느린 처리율을 가진 링크를 병목링크 (bottleneck link) 라고 한다.

Written by@전여훈 (Click Me!)
고민이 담긴 코드를 만들자, 고민하기 위해 공부하자.