본문 바로가기
컴퓨터네트워크

network core

by goblin- 2023. 9. 3.

network core 란 상호 연결된 라우터들의 집합체이다.

파란색으로 칠해진 영역이 network core이다.

 

packet-switching

 

송신 시스템은 메시지를 패킷(packet)이라고 하는 작은 데이터 덩어리로 분할한다.

각 패킷은 통신링크(communication link)와 패킷 스위치(packet switch)를 거치게 된다. 패킷 스위치에는 라우터(router)와 링크 계층 스위치(link-layer switch)의 두 가지 유형이 존재한다.  패킷은 링크의 최대 전송률과 같은 속도로 각각의 통신 링크에서 전송된다. 출발지 종단 시스템 혹은 패킷 스위치가 R bps(bits per second)의 속도로 링크에서 L 비트의 패킷을 송신한다면, 그 패킷을 전송하는 데 걸리는 시간은 L/R 초이다.

 

store and forward(저장 후 전달)

위 그림에는 3개의 패킷(1,2,3)을 가지고 있으며, 각각의 패킷은 L 비트로 구성되어 있다.

출발지는 링크에서 L 비트의 패킷을 R bps(bits per second)의 속도로 송신하고 있다.

그림과 같이 Source에서 패킷 1의 일부분을 전송했고, 그 부분이 라우터에 도착해 있는 상황을 생각해 보자 이때 라우터는 store and forward 방식을 사용하고 있기 때문에 수신한 비트를 전송할 수 없다. 그 대신, 아래의 과정이 진행된다.

1. 패킷의 비트를 먼저 저장(buffer)한다.

2. 라우터가 패킷의 모든 비트를 수신하였다면 그제야 출력 링크로 그 패킷을 전송(transmit, 즉 'forward')하기 시작한다.

 

 출발지에서 패킷 1을 송신하기 시작해서 패킷 1의 전체를 목적지에서 수신할 때까지의 경과 시간을 계산해 보자. 여기서 전파 지연(propagation delay)은 무시하도록 하자. 이는 비트가 빛의 속도에 가까운 속도로 통신선을 거쳐가는 데에 걸리는 시간을 말한다.

0초 : 출발지가 패킷 1을 전송하기 시작

L/R초 : 출발지는 패킷 1의 전체 데이터를 전송 완료했으며, 전체가 라우터에 수신되고 저장되었다.(전파 지연이 없기 때문)

라운터가 전체 패킷을 수신했기 때문에 라우터는 목적지를 향해 그 패킷을 출력 링크로 전송하기 시작한다.

2L/R초 : 라우터는 전체패킷을 전송했으며, 목적지는 패킷1 전체를 수신 완료한다. (전파 지연이 없기 때문)

 

따라서 store-and-forward 방식을 사용하면 전체 지연은 2L/R이며, 이 방식 없이 스위치에 비트가 도착하자마자 곧바로 전달하게 된다면 전체 지연은 L/R이 된다.

 

출발지가 패킷 1을 송신하기 시작한 순간부터 목적지 노드가 3개의 모든 패킷(1, 2, 3)을 수신할 때까지 경과된 전체 시간을 계산해 보자.

 

0초 : 출발지가 패킷 1을 전송하기 시작

L/R초 : 라우터는 패킷 1을 수신완료, 이를 전송하기 시작, 출발지는 패킷2를 전송하기 시작

2L/R초 : 라우터는 패킷2를 수신완료, 이를 전송하기 시작, 목적지는 패킷1 전체를 수신 완료, 출발지는 패킷 3을 전송하기 시작

3L/R초 : 라우터는 패킷 3를 수신완료, 이를 전송하기 시작, 목적지는 패킷2 전체를 수신완료

4L/R초 : 목적지는 패킷3 전체를 수신완료

 

queueing delay, loss

 

일정 기간 동안 링크에 대한 도달 속도(비트)가 링크 전송 속도를 초과하는 경우 패킷이 대기열에 있으며 링크에서 전송될 때까지 기다린다. 메모리(패킷)가 가득 차면 패킷이 손실될 수 있다. 대기열에서 기다리는 것을 queueing, 패킷이 손실되는 것을 loss라고 한다.

(packet Switching에서만 발생, Circuit Switching에서는 발생하지 않는다.)

속도 차이로인해 패킷이 대기열에 queueing 되는 것을 볼 수 있다.

 

 

Two key network-core functions

 

routing: 패킷이 사용하는 소스-대상 경로를 결정한다.
forwarding : 라우터의 입력에서 적절한 라우터 출력으로 패킷 이동

 

packetSwitcing은 서비스가 유지되는 동안 더 좋은 경로(길)를 찾기 위해 path를 바꿀 수 있다.(서킷은 안바뀜) 따라서 좋은 길을 찾기위해 routing알고리즘을 사용한다. (패킷은 path의 변동이 있기 때문에 데이터뿐만 아니라 address도 가지고 있어야 한다.)

 

Circuit Switching

회선 교환 네트워크에서는 종단 시스템 간에 통신을 제공하기 위해 경로상에서 필요한 자원(버퍼, 링크 전송률)은 통신 세션(session) 동안에 확보 또는 예약(reserve)된다. (한 사람이 한 경로만 쓰게 된다.)

따라서 통신 링크에 대한 접속을 위해 큐에서 대기해야 할 수도 있다.(5개의 경로에 6명이 있다면 나머지 1명은 대기해야 한다)

1. 송신자가 정보를 보내기 전, 네트워크는 송신자와 수신자 간의 연결을 설정해야 한다.

2. 네트워크가 회선을 설정할 때, 그 연결이 이루어지는 동안 네트워크 링크에 일정한 전송률을 예약한다.

3. 주어진 전송률이 송신자-수신자 연결을 위해 예약되기 때문에, 송신자는 수신자에게 보장된(guaranteed) 일정 전송률로 데이터를 보낼 수 있다.

 

Circuit switching : FDM versus TDM

FDM 은 주파수를 기준으로 나누었고 TDM은 시간을 기준으로 나누었다.

 

Packet switching versus circuit switching

 

예시를 통해 circuit-switching과 packet-switching 차이를 살펴보겠다.

 

먼저 1 Mb/s 속도의 link가 있고 user는 활성화 상태일 경우 100 kb/s 상태이고 활성화 상태일 확률은 10%인 경우이다

 

circuit-switching일 경우는 활성화된 속도 100k b/s 가 10배가 되면 1 M b/s이기 때문에 10명의 users을 받을 수 있다.

 

pakcet switching일 경우 만약 35명의 users를 받는다고 가정하자. 활성화될 확률은 10%이고 35명 중 10명 이상이 활성화될 확률은 이 시스템에 less가 발생할 확률이다 위 그림에는 그 확률이 0.004%라고 하고 있다. 이것을 계산하는 방법은 다음과 같다.

 

'컴퓨터네트워크' 카테고리의 다른 글

[Network] Web and HTTP  (0) 2023.09.14
[Network]principles of network  (0) 2023.09.07
[Network]protocol layer, service models  (0) 2023.09.06
[Network] delay, loss, throughput in networks  (0) 2023.09.05
인터넷이란  (1) 2023.08.30