Unicast and Multicast Routing: Routing Protocol
| 개념 | 방식 |
|---|
| Unicasting | 1 : 1 |
| Multicasting | 1 : N |
| Broadcasting | 1 : ALL |
| Anycasting | 1 : anyone of them |

Overlay Network
: 응용 프로그램 입장에서 각 서버끼리 연결된 가상의 논리적 망
- 새로운 인터넷 서비스를 제공할 때마다 새로운 Overley network 구성을 고려해볼 수 있음
Overlay Network 활용 방법
- 서비스 하고자 하는 지역의 data center에 서버 설치해놓고 서비스
- Data Streaming에 접속할 수 있는 API를 제공하고 이 API 값을 활용해 Steaming 서비스를 제공
- 이를 전세계에 구성해놓고 돈을 받는 것 클라우드 서비스
- 1처럼 직접 인프라를 구축할 수 없는 경우 클라우드 서비스를 통해 트래픽만 API를 통해 전달하면 클라우드 서비스가 미리 구축해놓은 인프라를 통해 Data Stream이 전세계적으로 전달 가능
위 방법은 응용 계층에서 제공하는 것!
이번 챕터는 Router가 직접 제공하는 Multicast 방식에 대해 알아볼 것
Multicast Routing

- 라우터가 Receiver의 패킷을 여러개의 Port로 보낼 수 있음
IGMP
: 단말과 라우터들간에 가입 요청/해제 프로토콜
- 그룹을 만들어주는 프로토콜
- 라우터가 못 받을 수도 있으니까 두 번 연달아서 보내줌
Multicast tree
: 단말과 라우터들이 함께 멀티캐스트 데이터 전송을 위한 라우팅 경로 설정
-
Host가 Router에게 G1 그룹에 join하겠다고 보냄 (IGMP Join 요청)
-
Router가 G1 그룹 수신자(Host)가 있음을 인지
-
라우터가 상위 라우터(또는 멀티캐스트 라우팅 프로토콜 경로 상의 이웃 라우터)에게 Join을 알림
→ Multicast Tree 형성
-
Host가 목적지 G1을 포함하여 데이터 전송
-
라우터가 형성된 Multicast Tree를 따라 그룹에 가입한 단말들에게 데이터 전송 (패킷을 복사하여 보냄)
- 그룹 참여 의사는 Host가 함
- 그룹 관리는 라우터가 함
- IGMP 프로토콜을 인지하여 관리
- 옛날 라우터는 안 됨, Multicast를 지원하는 라우터들만 가능
멀티 캐스트를 지원 하지 않는 라우터들은 어떻게 멀티 캐스팅을 할까?
→ Logical Tunneling을 통해서!
MBONE (Multicast Back Bone)

- 멀티 캐스트 패킷을 받으면 해당 패킷에 멀티 캐스트를 지원하는 라우터의 주소를 포함한 Header를 붙여서 Multicast를 지원하는 라우터끼리 Unicast 하는 것처럼 보이게 함
- 이 패킷을 받은 라우터는 Header를 제거하고 데이터를 제공
- 기존 망에 논리적으로 구성되어 있는 망
한계
- 버그 때문에 그룹 해제가 제대로 안 되어 아무도 없는 그룹에도 트래픽이 발생 → 네트워크 느려짐