인터넷의 End System을 연결하는 부분이다.

위 그림에서 굵은 선은 네트워크 코어를 나타내고 있다.
Network Core에서 데이터를 이동시키는 방식
- Packet Switch
- Circuit Switching
A) Packet Switch
데이터를 packet이라는 작은 단위로 쪼개서 전송하는 방법
-
송신 시스템은 메시지를 패킷(packet)이라고 하는 작은 데이터 덩어리로 분할한다.
-
각 패킷은 통신 링크(communication link)와 패킷 스위치(packet switch)를 거치게 된다.
-
패킷 스위치에는 라우터(router)와 링크 계층 스위치(link-layer switch)의 두 가지 유형이 존재한다.
-
패킷은 링크의 최대 전송률과 같은 속도로 각각의 통신 링크에서 전송된다.
- 출발지 종단 시스템 혹은 패킷 스위치가 R bps(bits per second)의 속도로 링크에서 L 비트의 패킷을 송신한다면, 그 패킷을 전송하는 데 걸리는 시간은 L/R 초이다.
Store-and-Transmission (저장 후 전달) 방식
스위치가 출력 링크로 패킷의 첫 비트를 전송하기 전에 전체 패킷을 받아야하는 방식으로 대부분의 패킷 스위치가 이 방식을 이용한다.

1. 출발지는 목적지로 전송할 3개의 패킷을 갖고 있으며 각각은 L비트로 구성된다.
2. 패킷1의 일부분은 Router에 이미 도착했고 Router는 패킷1의 앞부분을 저장하고 있다.
3. Store-and-Transmission 방식에서는 Router가 모든 비트를 저장한(Buffer/Store) 후 출력 링크로 그 패킷을 전송할(Transmit/Forward) 수 있기 때문에 우선 기다린다.
4. 패킷1의 모든 비트를 Router가 수신하였다면 출력 링크로 패킷을 전송한다.
Propagation Delay를 무시하고 패킷 1개의 경과 시간(Delay) 계산
- 출발지에서 Router: L/R
- Router에서 출력 링크: L/R
전체 Delay: 2L/R
저장 후 전달 방식이 아니라면?
Router에서 시간을 지연할 이유가 없기 때문에 전체 Delay는 L/R이 된다.
패킷 3개의 전체 경과 시간 계산
- L/R: 첫 번째 패킷이 출발지로부터 Router로 전달.
- 2L/R: 첫 번째 패킷이 Router로부터 도착지로 전달, 두 번째 패킷이 출발지로부터 Router로 전달.
- 3L/R: 두 번째 패킷이 Router로부터 도착지로 전달, 세 번째 패킷이 출발지로부터 Router로 전달.
- 4L/R: 세 번째 패킷이 Router로부터 도착지로 전달되고 모든 패킷이 전달됨.
일반화: Dend-to-End Delay
출발지로부터 목적지 노드까지 N개의 링크와 N-1개의 Router로 구성되고, 각각은 전송률이 R인 경로를 통해 하나의 패킷을 전송하는 일반적인 경우

Queuing Delay(큐잉 지연) and Packet Loss(패킷 손실)
각 패킷 스위치는 접속된 여러 개의 링크 각각에 대해 Output Buffer/Queue (출력 버퍼/큐) 를 갖고 있으며 그 링크로 송신하려고 하는 패킷을 저장하고 있다.
Queuing Delay
패킷 스위치에서 전송하려는 패킷이 이미 출력 링크가 다른 패킷을 전송 중일 때 출력 버퍼에서 대기하면서 발생하는 지연.
Packet Loss
Buffer의 크기가 유한하기 때문에 전송 대기 중인 다른 패킷들로 인하여 Buffer가 꽉 차 있는 경우 도착하는 패킷 또는 이미 Queue에 대기 중인 패킷을 Drop함에 따라 발생한다.

패킷의 너비는 패킷의 비트 수를 나타내고, Host A와 B가 Host E로 패킷을 전달하는 상황을 가정하자.
Host A와 B는 100 Mbps의 속도로 패킷을 전송하고 Router는 15 Mbps의 속도로 패킷을 전송하기 때문에 A와 B가 각각 동시에 여러 개의 패킷을 송신하면 패킷의 대부분은 큐에서 대기하는 데 시간을 보낼 것이다. 이러한 상황을 Queuing Delay라고 한다.
Forwarding Table(포워딩 테이블) and Routing Protocol(라우팅 프로토콜)
인터넷에서 모든 End System은 IP 주소를 갖는다. 송신 End System은 패킷의 헤더의 목적지의 IP 주소를 담는다. 각 Router는 패킷의 목적지 주소의 일부를 조사하고 알맞는 링크로 전달한다. Router가 주소를 보고 알맞는 링크로 전달하기 위해 사용하는 것이 Forwarding Talbe과 Routing Protocol 이다.
Forwarding Table
패킷의 목적지 주소와 router의 출력 링크로 매핑하는 테이블
Routing Protocol
인터넷이 자동으로 Forwarding Table을 설정하기 위해 사용하는 프로토콜
B) Circuit Switching
데이터를 전송하기 전, 하나의 회로를(citcuit) 할당받아 전송하는 방법
circuit: 송신자와 수신자 간의 경로에 있는 스위치들이 해당 연결 상태를 유지해야 하는 연결
- Circuit Switching Network에서 End System 간에 통신을 제공하기 위해 경로상 필요한 자원(Buffer, Transmission rate)은 통신 세션 동안에 예약(reserve)된다.
- Dedicated Resources: No sharing
- Circuit segment idle if not used by call
- 자원 예약: 세션이 시작될 때 경로 상의 모든 자원이 예약되므로, 통신 중에는 항상 동일한 대역폭과 링크 자원이 보장됩니다. 우선 전송이 시작되면 이후 Delay는 발생하지 않는다.
- on-demand(온디맨드 자원 요청): 통신 세션 시작 전 세션을 설정할 때, 필요한 자원이 온디맨드 방식으로 요청되고 사용됩니다.
- 큐 대기 가능성: 만약 필요한 자원이 사용 중이거나 가용하지 않다면, 통신 링크를 사용하기 위해 큐에서 대기해야 할 수도 있습니다. 이 경우, 통신 세션 자체가 시작되지 않는다.

4개의 회선 스위치. 4개의 링크, 각 링크는 4개의 회선을 가진다.
호스트는 스위치 중 하나의 직접 연결되어있다.
- 각 링크가 4개의 물리적 회선을 가지기 때문에 각 링크는 4개의 동시 연결을 지원할 수 있다.
- 위 그림에서 호스트1과 호스트3이 통신하고자 할 때, 네트워크는 두 호스트 사이에 지정된 End-to-end Connection을설정한다.
- 네트워크는 2개의 링크 각각에 한 회선씩을 예약한다.
- (2)의 과정에서 각 링크는 4개 중 하나의 회선만을 사용하므로 링크 전체 전송 용량 중 1/4을 할당받는다.
- (3)의 과정을 예시로 설명하면 각 링크가 1 Mbps의 전송률을 갖는다면, 각 종단 간 회선 교환 연결은 지정된 전송률의 250 Kbps를 얻게 된다.
회선 교환 네트워크에서의 다중화 (논리적 회선)
회선 다중화는 하나의 회선을 여러 통신 세션이 동시에 공유할 수 있도록 하여, 자원 낭비를 방지하고 대역폭을 효율적으로 활용하기 위한 방법이다.
Frequency-Division-Multiplexing (FDM, 주파수 분할 다중화)
각 사용자가 서로 다른 주파수 대역을 사용하여 동시에 통신할 수 있도록 하는 방법
- 링크를 통해 설정된 연결은 그 링크의 주파수 스펙트럼을 공유한다.
- 그 링크는 연결되는 동안 각 연결에 대해 주파수 대역을 고정 제공한다 = 대역폭(bandwidth)
Time-Division-Multiplexing (TDM, 시분할 다중화)
한 사용자가 사용하지 않는 시간 동안 다른 사용자가 그 회선을 사용할 수 있도록 하는 방법
- TDM 링크는 시간을 일정 주기의 프레임으로 구분하고, 각 프레임은 고정된 수의 시간 슬롯으로 나뉜다.
- 네트워크가 링크를 통해 하나의 연결을 설정할 때, 네트워크는 모든 프레임에서 시간 슬롯 1개를 그 연결에 할당한다.
- allocated periodic slot 안에서, 해당 사용자는 링크의 전체 대역폭을 (bandwidth) 사용할 수 있다.
- 전송률 : 한 슬롯 안의 비트 수 × 프레임 전송률

FDM: 주파수 영역이 4개 대역으로 분할되었고 각각은 3 KhZ 대역폭을 갖는다.
TDM: 시간 영역이 시간 프레임으로 분할되고 각 프레임은 4개의 시간 슬롯을 갖는다.
회선 교환 네트워크의 단점
silent period(비활용 기간)에 할당된 회선이 놀게 되므로 낭비가 된다.
C) Packet Switch vs Circuit Switching
| 특징 |
패킷 교환 |
회선 교환 |
| 자원 할당 방식 |
요구 시에만 링크 사용을 할당 |
요구하지 않아도 미리 전송 링크 사용을 할당 |
| 효율성 |
여러 사용자가 동시에 링크를 공유하여 자원 이용률이 높음 |
비활용 기간 동안 자원이 점유되어 자원 이용률이 낮음 |
| 지연 |
사용자 수에 따라 지연이 발생할 수 있음 (큐잉 지연 등) |
전송 중에 지연이 발생하지 않음 (사전 예약된 경로 사용) |
| 적합성 |
비실시간 데이터 전송에 적합 (예: 웹, 이메일 등) |
실시간 데이터 전송에 적합 (예: 전화 통화) |
| 성능 예시 |
10명 사용자가 있을 때 회선 교환보다 우수한 지연 성능 |
지연이 발생하지 않지만 비활용 슬롯이 존재 |
Packet Switching 옹호자
- 패킷 교환이 회선 교환보다 전송 용량의 공유에서 더 효율적이다.
- 패킷 교환이 더 간단하고 효율적이며 구현 비용이 적다.
패킷 교환이 더 효율적인 이유
-
사용자가 1 Mbps 링크를 공유한다. 각 사용자는 활동 시간과(100 Kbps의 일정 속도로 데이터 생산) 비활동 시간을(데이터 생성 X) 반복한다. 사용자는 전체의 10%만 활동한다고 가정하자.
a. Circuit Switching (TDM)
- 1 Mbps / 100 kbps = 10(명), 1초내에 동시에 최대 10명까지 지원 가능
- 1초를 10명에게 분할하기 위해서는 TDM의 한 슬롯이 100ms이다.
- 각 사용자는 1초에 한 번 자신의 차례가 오게 된다.
- 만약 10명 중 한 명이라도 비활동 시간이라면 자원을 낭비하는 꼴이 된다.
b. Packet Switch
- 반면 패킷 교환 방식에서는 비활동 시간인 경우 자원이 할당되지 않기 때문에 활동 시간인 사람만 자원을 할당받게 되어 자원이 낭비되지 않는다.
- 11명 이상이 동시에 활동 시간일 확률은 0.04%이므로 delay가 발생할 확률도 적다.
따라서 이 경우 Packet Switch가 효율적이다.
-
10명의 사용자가 있을 때, 한 사용자가 한 번에 1000비트 패킷을 1000개 생성하고 다른 사용자는 패킷을 생성하지 않는다고 가정하자.
a. Circuit Switching (TDM)
- 한 프레임은 10개의 슬롯으로 구성되고, 각 슬롯은 1000 비트로 구성된 TDM 회선 교환을 가정하자.
- 한 사용자는 총 1,000,000 비트를 전송해야한다.
- 10명의 사용자가 있기 때문에 모두 전송하려면 10초를 기다려야한다.
b. Packet Switch
- 한 사용자만이 패킷을 생성하고 전송하면 된다.
- 사용자는 링크의 전체 대역폭을(1 Mbps) 사용할 수 있다.
- 따라서 1초만에 데이터를 모두 전송할 수 있다.
따라서 이 경우에도 Packet Switch가 효율적이다.
D) Network of Network
접속 ISP
패킷 스위치와 통신 링크로 이루어진 네트워크로 End System에 인터넷 접속을 제공한다.
- CP와 End System을 연결하기 위해서는 접속 ISP들이 서로 연결되어야만 한다.
- Access ISP in turn must be interconnected so that any two hosts can send packets to each other.
- Host connect to Internet via access ISP
목표: 접속 ISP를 연결하자!
다른 것 없이 모든 접속 ISP끼리 연결되어야 한다면 어떻게 될까?
O(N^2) (N: Number of access ISP)
네트워크 구조 1
모든 접속 ISP를 하나의 글로벌 통과(transit) ISP와 연결한다.
대규모 네트워크를 운영하며, 인터넷의 주요 교차점에서 다른 ISP와 연결되어 데이터 트래픽을 전송하는 역할을 수행하는 인터넷 서비스 제공업체
- 글로벌 통과 ISP : 라우터 + 전 세계에 이르고, 적어도 수십만 개의 접속 ISP와 가까운 곳에 있는 라우터를 갖는 통신 링크의 네트워크
- 글로벌 ISP는 이익을 얻기 위해 각각의 접속 ISP에 연결을 위한 과금을 부과한다.
- 접속 ISP는 고객(customer)
- 글로벌 ISP는 제공자(provider)
- 많은 비용이 든다.
네트워크 구조 2
다양한 글로벌 통과 ISP가 경쟁하는 과정에서 나타난 네트워크 구조
수십만 개의 접속 ISP와 다중의 글로벌 ISP로 구성된 네트워크 구조
Regional(지역) ISP와 1계층 ISP
현실적으로 전 세계의 모든 도시에 존재하는 ISP는 불가능하다는 가정에서 나온 ISP
- 대신, 어느 주어진 지역에서 그 지역에 있는 접속 ISP들이 연결하는 지역(regional) ISP가 존재하며, 각 지역 ISP는 1계층(tier-1) ISP들과 연결된다.
- 접속 ISP는 지역 ISP에 직접 연결이 가능하다.
- 지역 ISP는 1계층 ISP에 연결되며, 1계층 ISP는 최상위 계층에 존재하고 현실적인 글로벌 통과 ISP라고 생각할 수 있다.
네트워크 구조 3
접속 ISP > 지역 ISP > 국가 ISP > 1계층 ISP 형태의 다중 계층 구조
- 각각의 접속 ISP는 자신이 연결하는 지역 ISP에게 요금을 지불한다.
- 각 지역 ISP는 자신이 연결하는 1계층 ISP에게 요금을 지불한다.
- 1계층 ISP는 계층구조의 최상위에 있기 때문에 아무에게도 요금을 지불하지 않는다.
네트워크 구조 4
오늘날의 인터넷과 더 유사한 네트워크를 구축 하기 위해 네트워크 구조 3에 추가적인 것을 추가한 것
다중계층구조 + PoP + 멀티홈 + 피어링 + IXP
PoP (Points of Presence)
PoP는 단순히 제공자의 네트워크 내에서 하나 이상의 라우터 그룹을 의미한다. 이들은 고객 ISP가 제공자 ISP에 연결될 수 있도록 도와주는 역할을 합니다.
- 모든 계층에서 존재하지만 최하위(접속 ISP) 계층을 제외합니다.
- 고객 네트워크가 제공자의 PoP에 연결되기 위해서는, 고객이 자신의 라우터 중 하나를 PoP에 있는 라우터에 직접 연결해야 하며, 이때 고속 링크를 제3자 통신 서비스 제공자로부터 임대할 수 있다.
Multi-homing
멀티홈은 두 개 이상의 제공자 ISP에 연결하는 것을 의미.
한 접속 ISP가 두 개의 지역 ISP에 연결하거나, 두 개의 지역 ISP와 함께 하나의 1계층 ISP에 연결하는 경우이다.
- 1계층 ISP를 제외한 모든 ISP는 멀티홈을 선택할 수 있다.
- 하나의 ISP와 연결이 끊어져도 다른 ISP를 통해 인터넷으로 패킷을 계속 송수신할 수 있다.
Peering
피어링은 고객 ISP가 서비스 제공 ISP에게 지불하는 요금을 줄이기 위해 인터넷 계층 구조의 같은 계층에 있는 가까운 ISP들 간의 직접 연결을 의미합니다.
- 두 ISP가 피어링을 맺으면 일반적으로 서로 요금을 지불하지 않는다.
- 송수신되는 모든 트래픽이 상위 계층 ISP를 통하지 않고 직접 송수신할 수 있도록 네트워크를 연결하는 것이다.
- 1계층 ISP들도 서로 피어링할 수 있다.
- Peering Link는 두 개의 ISP 또는 네트워크가 서로 데이터를 직접 전송할 수 있도록 합니다.
IXP (Internet Exchange Point)
IXP는 다수의 ISP들이 서로 피어링할 수 있는 장소입니다.
- 일반적으로 교환기를 갖춘 독립적인 빌딩 내에 존재합니다.
- IXP는 ISP들이 서로 직접 연결하여 데이터를 교환할 수 있도록 한다.
네트워크 구조 5
네트워크 구조 4 위에 contetnt-provider network (콘텐츠 제공자 네트워크)를 추가
이는 2012년의 인터넷을 기술하며, 구글이 이러한 콘텐츠 제공자 네트워크 주도하는 한 예이다.
- 구글 데이터 센터는 모두 구글의 사설 TCP/IP 네트워크를 통해 연결되어 있으며, 이 네트워크는 전 세계를 연결하며 공중 인터넷과는 분리되어 있다.
- 구글 사설 네트워크는 구글 서버로 오가는 트래픽만 전달한다.
- 하위 계층 ISP들과 피어링을 함으로써(그들과 직접 연결하거나 IXP에서 그들과 연결함으로써) 인터넷의 상위 계층(tier 1, regional)을 ‘우회(bypass)’하고 있다.
- content provider network: run their own network, to bring services, content close to users

많은 접속 ISP는 여전히 1계층 네트워크를 통해서만 도달할 수 있기 때문에
구글 네트워크도 1계층 ISP들과 연결하고 그들과 교환하는 트래픽에 대해 이 ISP들에게 요금을 지불한다.
콘텐츠 제공자들이 자신의 네트워크를 구축함으로써 얻는 이점
- 상위 계층 ISP들에게 지불하는 요금을 줄일 수 있다.
- 최종 사용자들에게 자신들의 서비스가 궁극적으로 어떻게 전달되는지에 대한 더 많은 통제권을 가질 수 있다.
네트워크 구조 정리
오늘날의 인터넷(네트워크의 네트워크)는 12개 정도의 1계층 ISP들과 수십만 개의 하위 계층 ISP들로 구성되어 있다.
- 하위 계층 ISP들은 상위 계층 ISP들과 연결하고, 상위 계층 ISP들은 서로 연결한다.
- 사용자와 콘텐츠 제공자는 하위 계층 ISP 고객이고, 하위 계층 ISP들은 상위 계층 ISP들이 고객이다.
- 최근에 주요 콘텐츠 제공자도 자신의 네트워크를 구축했고 가능한 곳에서 하위 계층 ISP들과 직접 연결한다.
네트워크와 ISP 구조