배우는 양도 많고 어려운 네트워크 ..
그래도 알수록 재밌는 것 같다.
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
'[지식창고] > 네트워크' 카테고리의 다른 글
[ 컴퓨터 네트워크 ] 2.1 network of application 원리 (0) | 2023.03.20 |
---|---|
[ 컴퓨터 네트워크 ] 1.5 - 1.7 Protocol Layer개요 및 보안 (0) | 2023.03.19 |
[ 컴퓨터 네트워크 ] 1.3 Network core (0) | 2023.03.11 |
[ 컴퓨터 네트워크 ] Chapter1 - 2 경계 네트워크(Network Edge) (0) | 2023.03.02 |
[ 컴퓨터 네트워크 ] Chapter 1 -1 인터넷이란 ? (0) | 2023.03.02 |