네트워크 하향식 접근 - 2
1.3 네트워크 코어
패킷 스위치와 링크의 그물망(mesh)으로 이루어져 있음
1.3.1 패킷 교환
- 종단 시스템들은 서로 메시지(message)를 교환한다.
- 메시지는 패킷(packet)이라는 작은 데이터 덩어리로 분할된다.
- 패킷은 통신 링크와 패킷 스위치(라우터와 링크 계층 스위치)를 거치게 된다.
저장 후 전달
대부분 패킷 스위치는 저장 후 전달 전송(store-and-forward transmission) 방식을 이용.
저장 후 전달 : 스위치가 출력 링크로 패킷의 첫 비트를 전송하기 전에 전체 패킷을 저장하고 있어야 함(한 패킷의 전체 비트가 스위치에 도착해야만 해당 패킷을 출력 링크로 보낼 수 있음)
출발지 → 라우터 → 목적지
2개의 종단 시스템으로 이루어져 있고 하나의 라우터만을 가질때 R비트/초의 속도로 L비트를 송신한다고 치면 목적지까지 걸리는 시간(지연)은?
→ 2L/R (전파 지연 무시)
만약 3개의 라우터가 있었다면? → 4L/R
따라서 종단 간 지연이 다음과 같음을 알 수 있다.
D(종단 간 지연) = N * L / R N : 링크 L : 패킷 크기 R : 전송률
큐잉 지연과 패킷 손실
각 링크에 대해 패킷 스위치는 출력 버퍼(출력 큐)를 가지고 있음
도착한 패킷이 전송될 링크가 다른 패킷을 전송하고 있으면 출력 버퍼에서 대기해야 한다. → 패킷은 출력 버퍼에서 큐잉 지연(queuing delay)을 겪게 된다
도착하는 패킷이 있는데 버퍼가 전송을 위해 대기 중인 다른 패킷들로 꽉 차 있는다면? → 패킷 손실(packet loss)이 발생.
포워딩 테이블과 라우팅 프로토콜
출발지는 패킷의 헤더에 목적지의 IP 주소(계층적 구조를 가짐)를 포함한다. 패킷이 라우터에 도착하면 라우터는 패킷의 목적지 주소의 일부를 조사하고 그 패킷을 이웃 라우터로 전달한다.
→ 각 라우터는 목적지 주소(혹은 목적지 주소의 일부)를 라우터의 출력 링크로 매핑하는 포워딩 테이블(FORWARDING TABLE)을 갖고 있다.
그러므로 라우터는 올바른 출력 링크를 결정하기 위해 패킷의 목적지 주소를 이용한다. 이 목적지 주소와 매핑되는 출력 링크를 찾기 위해 포워딩 테이블을 참조하는 것이다.
인터넷은 자동으로 포워딩 테이블을 설정하는데 이용되는 여러 특별한 라우팅 프로토콜(routing protocol)을 갖고 있다
1.3.2 회선 교환
링크와 스위치의 네트워크를 통해 데이터를 이동시키는 방식중 하나이다. (다른 방식으로는 패킷 교환이 있음)
회선 교환 네트워크는 경로상에 필요한 자원은 통신 세션 동안에 확보 또는 예약(reserve)된다.
회선 연결이 이루어지면 송신자는 수신자에게 보장된(guaranteed) 일정 전송률로 데이터를 보낼 수 있음.
회선 교환 네트워크에서의 다중화
링크 내 한 회선은 주파수 분할 다중화(FDM) 혹은 시분할 다중화(TDM)으로 구현된다.
FDM은 각 회선을 지속적으로 대역폭의 일부를 얻음.
TDB은 각 회선을 짧은 시간 동안(슬롯 동안) 주기적으로 전체 대역폭을 얻음.
패킷 교환 VS 회선 교환
사용자가 1Mbps 링크를 공유하고, 각 사용자가 100kbps의 일정 속도로 데이터를 생산하면서 비활동 시간을 반복할 때, 회선 교환의 경우 100kbps가 항상 각각의 사용자에게 예약되어야 한다. = 동시에 10명만 지원 가능.
패킷 교환일 경우, 한 명이 활동하고 있을 확률은 0.1%이고, 총 사용자가 많아질수록 11명 이상이 동시에 활동할 확률(지연이 일어날 확률)은 매우매우매우 낮다! = 회선 교환과 대등한 지연 성능을 가지면서도 훨씬 많은 사용자 수를 허용한다.
- 패킷 교환은 요구할 때만 링크의 사용을 할당한다.
현재 추세는 패킷 교환이다. 오늘날의 많은 회선 교환 전화망이 패킷 교환으로 적용되고 있다.
1.4 패킷 교환 네트워크에서의 지연, 손실과 처리율
1.4.1 패킷 교환 네트워크에서의 지연 개요
패킷이 경로를 거칠 때마다 각 노드(호스트 혹은 라우터)에서 다양한 지연을 겪게 된다.
- 노드 처리 지연(nodal processing delay)
- 큐잉 지연(queuing delay)
- 전송 지연(transmission delay)
- 전파 지연(propagation delay)
각종 지연이 쌓여서 노드 처리 지연을 일으킨다.
지연 유형
노드 처리 → 큐잉(전송 대기) → 전송 → 전파
- 링크가 이미 이용되고 있거나 그 링크를 이용하기 위해 큐에서 대기하는 패킷이 있다면 새로 도착하는 채킷은 큐에 들어간다.
처리 지연
패킷 헤더를 조사하고 그 패킷을 어디로 보낼지를 결정하는 시간
큐잉 지연
큐에서 링크로 전송되기를 기다리면서 얻는 지연
- 앞선 대기중인 패킷의 수에 의해 결정됨
- 큐가 비어있고 다른 패킷이 전송중인 상태가 아니면 큐잉 지연은 0이 됨.
전송 지연
L/R, 앞서 도착한 패킷이 모두 전송되고 자기 차례가 올때까지의 시간
전파 지연
링크의 처음부터 목표 라우터까지 전파에 필요한 시간
- 링크의 물리 매체(광섬유, 꼬임쌍선 등)에 따라 다르지만 범위는 다음과 같다.
$2 * 10^8미터/초 ~에서~ 3 * 10^8미터$
- 전파 지연은 두 라우터 사이의 거리를 전파 속도로 나눈 것
- 전파 지연은 d/s(d는 라우터 a와 b사이의 거리, s는 링크의 전파 속도)
전체 노드 지연 d = 처리 지연 d + 큐잉 지연 d + 전송 지연 d + 전파 지연 d
1.4.2 큐잉 지연과 패킷 손실
큐잉 지연은 패킷마다 다르다. ex) 첫 번째 패킷은 큐잉 지연을 겪지 않지만 마지막으로 전송되는 패킷은 상당히 많은 큐잉 지연을 겪을 수 있다.
Leave a comment