[지식창고]/네트워크

[ 컴퓨터 네트워크 ] 1.4 Delay, Loss, Throughput

개발새발주발 2023. 3. 18. 17:50
728x90
더보기

배우는 양도 많고 어려운 네트워크 .. 

그래도 알수록 재밌는 것 같다. 

 

1.4에서는 delay, loss등의 패킷 전송 시 발생할 수 있는 문제점의 원인들에 대해서 다루어보고 Throuput이라는 처리량에 대한 부분을 다룬다. 전체적인 성능 측정에 대한 부분을 다루는 장이었다. 이 부분에 집중하며 포스팅을 작성해보겠다. 

- 개요

1. Delay 와 Loss가 발생하는 과정 

패킷 큐가 라우터 버퍼에 보관된다. 

  • 패킷이 링크에 도달하는 속도 > 패킷이 링크에서 나가는 속도
    -> 패킷 큐가 자신의 차례를 기다림 
    • 딜레이 발생
    • 버퍼에 패킷을 받을 자리가 없으면 손실(Loss)가 발생

** 버퍼 : 데이터를 한 곳에서 다른 곳으로 전송하는 동안 일시적으로 그 데이터를 보관하는 메모리의 영역

** 버퍼링 ( = 큐) : 버퍼를 활용하는 방식 or 버퍼를 채우는 동작 


- Delay 

2. Packet Delay의 4가지 원인 

프로세싱, 큐, 전송, 전파 지연 ! 

1) Dproc : nodal processing( = processing delay) 

  • 패킷 전송 전에 프로세싱 하는 Delay 
    • bit 에러 체크 
    • outlink 결정
  • 보통 1msec미만으로 굉장히 작은 delay

2) Dqueue : queueing delay 

  • 전송을 위해 outputlink를 기다리는 시간 -> 즉, queue에서 나가는 시간 
  • 라우터에서의 혼잡도(congestion level)에 따라 변함

3) Dtrans : transmission delay = L/R

  • 패킷에 모든 비트(bit)들을 내보내는 데 걸리는 시간, 즉 queue에서 link로 모든 비트들을 내보내는 데 걸리는 시간이다 ! 

* L : packet Length (bits) , 패킷의 길이(크기) → 비례 

* R : link bandwidth (bps) → 반비례

** bandwidth(대역폭) : 주어진 시간 동안 네트워크 연결을 통해 흐를 수 있는 최대 비트 수

4) Dprop : propagaion delay (전파지연) = d/s

  • 한 비트가 목적지까지 '회선'을 따라 이동하는데 걸리는 시간 

* d = length of physical link 

* s = propacation speed in medium → 매체의 전파 속도 (~2x10^8 m/sec)

 

더보기

예시 - Caravan analogy

교수님께서 수업시간에 오히려 학생들이 헷갈려할 수 있는 부분이라고 설명하고 빠르게 넘어가셔서 개인적으로 이해를 한 게 맞는지 모르겠다 ! 추후에 개인적인 공부를 해보려는데 급하신 분들은 두번째 참고자료에서 자세히 설명되어있다. 참고하시길 .. 

 

3. Queueing Delay 

'일정하지 않다.'는 것이 delay의 원인이 될 수도 있다. 

또 다시 적겠지만 R과 L은 네트워크 과목에서 자주 나오는 항목들이다. 

* R : Link Bandwidth (bps) → 회선의 전송 속도, 단위 시간동안 보낼 수 있는 data의 양(bps)

* L : packet length(bits) → 패킷의 길이(크기) 

* a : 평균 packet arrival rate 

 

트래픽 밀도(traffic indensity) = La/R

들어오는 속도와 나가는 속도의 비율 

 

  • La/R ~ 0 : queueing delay가 작다(small)
  • La/R = 1 : La:R = 1: 1 → 들어오는 비율과 나가는 비율이 같다 !
    하지만 딜레이가 생기지 않을 수 있는가?에 대한 정답은 no다 ..
    평균값으로 하기 때문에 La>R이거나 La<R인 구간이 존재한다.
    La>R인 경우는 트래픽이 몰리게 되면서 delay가 발생할 수 있다 ! 
  • La/R >1 : 들어오는 속도가 더 큼 !  → queue는 끝없이 증가하고 drop을 하거나 drop이 없으면 delay가 계속 발생한다. 

 

 

"Real" Internet delay and routes

 

실제 인터넷 delay는 어떻게 보일까

traceroute 프로그램을 활용할 수 있다 !

 

1. 라우터 i 경로에 도달하는 세개의 패킷을 대상으로 전송

2. 라우터 i는 보낸 사람에게 패킷을 반환

3. 전송과 응답 사이의 보낸 사람 시간 간격임


- Loss

4. Packet Loss

  • 큐(buffer)는 유한한 용량을 가지고 있다! 
  • 큐가 모두 찬 상태에서 패킷이 도착하면 큐는 이 패킷을 drop한다 → Loss 발생 
  • lost packet 은 이전 노드에 의해 재전송될 수도 있고 end system에 의해 재전송되지 않을 수도 있다 

- Throughput

5. Throughput

작업 처리량 : sender와 reciever 사이 bits가 전송되는 속도(bits/time)

 

* instantaneous (순간점) : 한 지점에서의 속도

* average : 오랜기간동안의 속도 → 평균 속도

Rs < Rc : Rc가 Rs에 비해 더 빠르지만 라우터에 도달하는 Rs에서 오는 만큼만의 data를 전송할 수 있다. 즉 속도는 Rs에 따라 결정된다. 

 

Rs > Rc: Rs가 더 빠르지만 라우터에 패킷이 도달하더라도 Rc속도로 패킷이 전달된다. 즉, 속도는 Rc에 따라 결정된다. 

 

병목현상 발생 : bottleneck link 

시스템의 성능이나 용량이 하나의 구성요소로 인해 제한을 받는 현상 

 

 

Internet Scenario 

→ 목적지와 출발지가 각각 10개씩 있고 파이프 R 하나를 통해서 보낼 때의 상황 

  • 연결 당 end-end 처리량 : 최소 ( Rc, Rs, R / 10 : 공유 네트워크를 여러명이 나누어서 사용) 
  • 실제 : Rc 또는 Rs bottleneck이 된다! 

 

 


[ 출처 및 참고 ]

https://velog.io/@cse05091/%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC%EC%9D%98-%EA%B8%B0%EC%B4%88

https://velog.io/@kms9887/%EC%BB%B4%ED%93%A8%ED%84%B0-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-1.-Computer-Networks-and-Internet3