Network core: 두 판 사이의 차이
편집 요약 없음 |
|||
| 36번째 줄: | 36번째 줄: | ||
===Queueing delay, loss=== | ===Queueing delay, loss=== | ||
[[파일:Queueing delay.png|테두리|프레임없음|450x450픽셀]] | |||
각각의 패킷 스위치는 여러개의 link에 연결되어 있다. 이 때문에 패킷 스위치는 각각의 link에 대한 output buffer<ref>output queue라고도 한다.</ref>를 가지고 있다. 패킷 스위치에 도착한 패킷은 특정한 output link로 전송되어야 하지만 해당 link가 다른 패킷을 전송하느라 사용 중일 경우에는 해당 link의 output buffer에 저장되어 전송될 때까지 대기하여야 한다. 이러한 이유로 생기는 대기 시간을 queueing delay라고 한다. 또한 패킷이 output buffer에 저장되고자 할 때 해당 버퍼가 가득 차있다면 packet loss가 발생할 수 있다. 즉, 도착한 패킷이나 이미 대기 중인 패킷들 중 하나가 drop(삭제)될 수 있다. 삭제된 패킷은 다시 재전송 되어야한다. | 각각의 패킷 스위치는 여러개의 link에 연결되어 있다. 이 때문에 패킷 스위치는 각각의 link에 대한 output buffer<ref>output queue라고도 한다.</ref>를 가지고 있다. 패킷 스위치에 도착한 패킷은 특정한 output link로 전송되어야 하지만 해당 link가 다른 패킷을 전송하느라 사용 중일 경우에는 해당 link의 output buffer에 저장되어 전송될 때까지 대기하여야 한다. 이러한 이유로 생기는 대기 시간을 queueing delay라고 한다. 또한 패킷이 output buffer에 저장되고자 할 때 해당 버퍼가 가득 차있다면 packet loss가 발생할 수 있다. 즉, 도착한 패킷이나 이미 대기 중인 패킷들 중 하나가 drop(삭제)될 수 있다. 삭제된 패킷은 다시 재전송 되어야한다. | ||
==각주== | ==각주== | ||
2025년 3월 13일 (목) 05:23 판
상위 문서: 컴퓨터 네트워크

개요
network core란 상호연결된 라우터들의 집합이며 네트워크들의 네트워크 그자체이다. 일반적인 유저에게는 드러나지 않은채 host들 사이의 연결이 이루어진다.
packet-switching
host에서 destination으로 data를 보내기 위해, 출발 host는 data를 더 작은 data 조각들로 나누는데, 이를 packet(패킷)이라고 한다. packet은 도착점으로 삼은 host까지 각 패킷은 communication link와 packet switch[1]를 통해 이동한다.
이때 각 패킷은 링크의 최대 link capacity[2]으로 전송된다. 즉, 패킷이 링크를 통해 전송될 때, 해당 링크의 Transmission Rate(R)로 보낸다는 뜻이다. 예를 들어, 링크의 전송 속도가 10 Mbps(메가비트/초) 라면, 패킷이 이 링크를 통과할 때 10 Mbps의 속도로 전송된다는 의미이다. 따라서, 링크가 병목이 되거나 대역폭이 제한되지 않는 한, 패킷은 항상 링크가 허용하는 최대 속도로 전송된다.
또한 packet switcing은 store-and-forward 방식으로 동작한다. store-and-forward란 전체의 패킷이 라우터에서 output link로 전송되기 위해서는 전체 패킷이 모두 라우터에 수신되어야 함을 의미한다. 위 그림에서 첫번째 패킷의 일부가 라우터로 전송되었으나, 아직 첫 패킷 전체가 라우터에 전달되지 않아 이를 destination으로 전송할 수 없다. 그 대신의 라우터는 패킷의 bit를 버퍼에 저장해야 한다. 라우터가 패킷의 모든 bit를 수신한 후에는 비로소 패킷을 출력 링크로 전송할 수 있다. 이를 통해서 하나의 패킷과 전체(3개)의 패킷이 destination까지 전송되는 시간을 계산할 수 있다.[3]
- 하나의 패킷의 전송 시간: 2L/R
- host는 시간이 0일때 전송을 시작하며, 시간이 L/R이 되었을 때까지 라우터는 첫번째 패킷을 수신하고 저장한다.
- 라우터는 첫번째 패킷을 저장하였으므로 이를 destination으로 송신하고, 이는 L/R초가 소요된다.
- 시간 2L/R초가 되면 라우터는 전체 패킷을 전송 완료하였고 목적지는 전체 패킷을 수신 완료한다.
- 전체 패킷의 전송 시간: 4L/R
- 앞선 경우와 마찬가지로 host는 시간이 0일때 전송을 시작하며, 시간이 L/R이 될 때까지 라우터는 첫번째 패킷을 수신하고 저장한다.
- 시간이 L/R초가 되었을 때 라우터는 첫번째 패킷의 전송을 시작하고 host는 두번째 패킷의 전송을 시작한다.
- 시간이 2L/R초가 되었을 때 라우터는 두번째 패킷의 전송을 시작하고 host는 세번째 패킷의 전송을 시작한다.
- 시간이 3L/R초가 되었을 때 라우터는 세번째 패킷의 전송을 시작하고 host는 네번째 패킷의 전송을 시작한다.
- 시간이 4L/R초가 되면 destination은 마지막 세번째 패킷의 수신까지 완료한다.
또한 host에서부터 N개의 link를 걸쳐 destination까지 패킷을 전송 완료할 때까지의 시간은 다음과 같다.
이를 응용하여 N 개의 링크를 따라 PP 개의 패킷을 전송할 때의 지연 시간을 구하면 다음과 같다.
첫번째 패킷이 destination 까지 도착하는 데에는 의 시간이 걸린다. 또한 그 이후로 P-1개의 패킷이 destination의 직전 라우터에서 destination까지 전송되는데 추가로 의 시간이 걸리므로 위 공식이 성립한다.
Queueing delay, loss
각각의 패킷 스위치는 여러개의 link에 연결되어 있다. 이 때문에 패킷 스위치는 각각의 link에 대한 output buffer[4]를 가지고 있다. 패킷 스위치에 도착한 패킷은 특정한 output link로 전송되어야 하지만 해당 link가 다른 패킷을 전송하느라 사용 중일 경우에는 해당 link의 output buffer에 저장되어 전송될 때까지 대기하여야 한다. 이러한 이유로 생기는 대기 시간을 queueing delay라고 한다. 또한 패킷이 output buffer에 저장되고자 할 때 해당 버퍼가 가득 차있다면 packet loss가 발생할 수 있다. 즉, 도착한 패킷이나 이미 대기 중인 패킷들 중 하나가 drop(삭제)될 수 있다. 삭제된 패킷은 다시 재전송 되어야한다.