Network core: 두 판 사이의 차이
편집 요약 없음 |
|||
| 55번째 줄: | 55번째 줄: | ||
===Circuit Switching=== | ===Circuit Switching=== | ||
Circuit Switching Network에서는 source와 destination간의 통신을 위한 경로의 resource<ref>버퍼, 링크 전송 속도 등</ref>를 통신 전에 미리 reserve한다. 이러한 특성은 예약된 자원이 오로지 예약된 통신만을 위해 사용되기 때문에 항상 빠르고 안정적인 통신이 가능하다. | [[파일:CircuitSiwtching.png|테두리|프레임없음|300x300픽셀]] | ||
Circuit Switching Network에서는 source와 destination간의 통신을 위한 경로의 resource<ref>버퍼, 링크 전송 속도 등</ref>를 통신 전에 미리 reserve한다. 이러한 특성은 예약된 자원이 오로지 예약된 통신만을 위해 사용되기 때문에 항상 빠르고 안정적인 통신이 가능하다. 예를 들어서 위 그림에서 host간의 통신을 위해서는 2개의 링크에서 각각 1개의 circuit(회선)을 예약해야 한다. 이 경우에서는 첫 번째 링크에서는 2번째 회선이, 두 번째 링크에서는 네번째 회선이 사용되었다.<ref>각 링크에는 총 4개의 회선이 있기 때문에 각 링크에서 전체 전송 용량의 1/4이 해당 회선에 할당된다.</ref> | |||
====Multiplexing==== | |||
Circuit Switching Network에서 하나의 링크를 여러 회선이 공유할 수 있도록 하는 방식에는 Frequency-Division Multiplexing(FDM), Time-Division Multiplexing(TDM)이 있다. | |||
* FDM: link의 주파수 스펙트럼을 여러개의 대역으로 나누어 각 연결에 할당하는 방식이다. | |||
** 이를 통해서 각 연결은 회선이 유지되는 동안 일정한 주파수 대역을 독점적으로 사용한다. | |||
* 링크의 시간을 일정한 길이의 frame으로 나누고, 각 프레임을 다시 여러 개의 time slot으로 분할하고, 각 연결은 회선이 유지되는 동안 정해진 time slot 동안 패킷을 전송한다. | |||
** 이러한 연결은 time slot 동안 해당 회선에 대해 독점적으로 할당되어 매 프레임마다 하나의 time slot에서 유저가 해당 link를 독점적으로 사용할 수 있다. | |||
===packet switch VS circuit switch=== | |||
==각주== | ==각주== | ||
2025년 3월 13일 (목) 16:04 판
상위 문서: 컴퓨터 네트워크

개요
network core란 상호연결된 라우터들의 집합이며 네트워크들의 네트워크 그자체이다. 일반적인 유저에게는 드러나지 않은채 host들 사이의 연결이 이루어진다.
packet switching과 circuit switching
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가 다른 패킷을 전송하느라 사용 중일 경우[5]에는 해당 link의 output buffer에 저장되어 전송될 때까지 대기하여야 한다. 이러한 이유로 생기는 대기 시간을 queueing delay라고 한다. 또한 패킷이 output buffer에 저장되고자 할 때 해당 버퍼가 가득 차있다면 packet loss가 발생할 수 있다. 즉, 도착한 패킷이나 이미 대기 중인 패킷들 중 하나가 drop(삭제)될 수 있다. 삭제된 패킷은 다시 재전송 되어야한다.
Forwarding Tables and Routing Protocols

인터넷의 모든 end system에는 IP Address라는 고유한 주소가 할당된다. source end system에서 destination end system으로 패킷을 전송하고자 할 때 해당 패킷에는 destination의 IP 주소가 포함된다. IP 주소는 계층적 주소를 지니고 있어 라우터는 패킷의 주소를 일부만 확인하고도 어떤 output link로 패킷을 전송할지 결정할 수 있다. 이를 가능케 하는 것이 바로 forwarding table이다.
각 라우터에는 forwarding table이 존재한다. 라우터는 forwarding table을 이용해 destination의 주소(혹은 일부)와 해당 패킷을 전송할 outbound link를 매핑한다. 매핑된 input link로 들어온 패킷을 outbound link로 송신하여 다음 라우터로 보내고, 해당 과정을 반복하여 destination에 패킷이 도달한다. 이렇게 forwarding table을 활용해 input link로 들어온 패킷을 outbound link로 송신하는 것을 forwarding이라고 하며, 이러한 작업은 switch와 라우터에 의해서 수행된다.
routing이란 source에서 destination까지 패킷이 도달할 수 있도록 shorteset path를 찾고 결정하는 과정이다. routing은 오직 라우터에 의해서만 실행된다. 추후 과정을 상세히 설명
https://chatgpt.com/c/67d25576-2144-8012-b28b-448a47cf7201
https://aws.amazon.com/ko/what-is/routing/
Circuit Switching
Circuit Switching Network에서는 source와 destination간의 통신을 위한 경로의 resource[6]를 통신 전에 미리 reserve한다. 이러한 특성은 예약된 자원이 오로지 예약된 통신만을 위해 사용되기 때문에 항상 빠르고 안정적인 통신이 가능하다. 예를 들어서 위 그림에서 host간의 통신을 위해서는 2개의 링크에서 각각 1개의 circuit(회선)을 예약해야 한다. 이 경우에서는 첫 번째 링크에서는 2번째 회선이, 두 번째 링크에서는 네번째 회선이 사용되었다.[7]
Multiplexing
Circuit Switching Network에서 하나의 링크를 여러 회선이 공유할 수 있도록 하는 방식에는 Frequency-Division Multiplexing(FDM), Time-Division Multiplexing(TDM)이 있다.
- FDM: link의 주파수 스펙트럼을 여러개의 대역으로 나누어 각 연결에 할당하는 방식이다.
- 이를 통해서 각 연결은 회선이 유지되는 동안 일정한 주파수 대역을 독점적으로 사용한다.
- 링크의 시간을 일정한 길이의 frame으로 나누고, 각 프레임을 다시 여러 개의 time slot으로 분할하고, 각 연결은 회선이 유지되는 동안 정해진 time slot 동안 패킷을 전송한다.
- 이러한 연결은 time slot 동안 해당 회선에 대해 독점적으로 할당되어 매 프레임마다 하나의 time slot에서 유저가 해당 link를 독점적으로 사용할 수 있다.