966. 멀티캐스트 라우팅 (IGMP, PIM) - 그룹 가입 탈퇴 메시지 제어 스위치 플러딩 억제 스누핑 라우팅 트리 최적화 동적 배포 대역폭 트래픽 통제망 아키텍처
핵심 인사이트: 넷플릭스 킹덤 드라마 생방송을 전 국민 1,000만 명이 동시에 본다고 치자. 중앙 서버(유니캐스트)가 1,000만 명에게 각자 영상 택배를 1개씩 1,000만 번 똑같이 복사해서 쏘면, 서버는 1초 만에 뇌가 터지고 국가 인터넷 백본망이 찢어진다. "야 서버야! 바보같이 1,000만 번 복사하지 마! 원본 택배 딱 '1개'만 고속도로(라우터)에 태워서 쏴버려! 그리고 각 동네 톨게이트(라우터/스위치)에서 그 방송을 '신청한 주민(그룹)'이 있을 때만 거기서 택배를 쓱쓱 복사해서 갈라쳐(멀티캐스트)!" 거대한 트래픽 폭주를 뿌리부터 말살시키는 일대다(1:N) 복제 방송의 마법, 멀티캐스트다.
Ⅰ. 통신 방식의 3대장과 멀티캐스트의 위상
- 유니캐스트 (Unicast, 1:1): 나랑 네이버 1대1 직통. 전 국민 100만 명이 접속하면 네이버는 데이터를 100만 번 복사해서 쏴야 함(서버 멸망).
- 브로드캐스트 (Broadcast, 1:All): 동네방네 다 소리 지름. 원하지 않는 사람 컴퓨터까지 강제로 데이터를 받아서 CPU가 터짐(민폐).
- 멀티캐스트 (Multicast, 1:N) 🌟: IPTV 방송이나 실시간 주식 시세 등, 딱 **'내가 그 방송을 보겠다고 신청(가입)한 사람들 모임(Group)'**에게만 라우터가 똑똑하게 복사해서 뿌려주는 극강의 대역폭 절약 기술입니다. D클래스 IP 주소(
224.0.0.0 ~ 239.255.255.255)를 씁니다.
Ⅱ. 1단계: 동네 반상회 가입 관리 (IGMP 프로토콜) 🌟
사용자(PC)와 동네 라우터 사이의 대화 룰입니다.
- IGMP (Internet Group Management Protocol): PC가 동네 라우터에게 "저 224.1.1.1번 채널(킹덤 방송) 그룹에 가입할게요!"라고 손을 들고 신청서를 내는(Join) 프로토콜입니다.
- Leave (탈퇴): 채널을 돌리면 PC가 "저 이제 탈퇴합니다!"라고 라우터에 알립니다.
- 라우터의 감시 (Query): 동네 라우터는 주기적으로 방송을 때립니다. "야! 224.1.1.1번 채널 아직도 보는 사람 있어?" 한 명이라도 "저 아직 봐요!(Report)"라고 응답하면 라우터는 방송 송출을 유지합니다. 아무도 대답을 안 하면 그 즉시 서울 본사에서 내려오는 영상 파이프를 딱! 끊어버려 대역폭 낭비를 0%로 통제합니다.
Ⅲ. 1.5단계: L2 스위치의 눈치채기 (IGMP 스누핑) 🌟
라우터 밑에 물려있는 동네 스위치의 똑똑한 꼼수입니다.
- 스위치의 무식함: 원래 L2 스위치는 목적지가 멀티캐스트 MAC 주소면 멍청하게 플러딩(동네방네 복사해서 다 쏘기)을 때려버려 네트워크가 지옥이 됩니다.
- IGMP 스누핑 (Snooping, 엿듣기): 똑똑한 최신 스위치는 아까 PC가 라우터에게 보낸 "가입할게요(IGMP Join)" 쪽지를 중간에서 몰래 쓱 엿듣습니다(Snooping). "아하! 3번 포트 PC가 킹덤 방송 본다고 했지?" 장부에 적어두고, 나중에 킹덤 영상이 내려오면 멍청하게 싹 다 뿌리지 않고 오직 장부에 적힌 3번 구멍으로만 쏙 밀어 넣어(필터링) 스위치 과부하를 막아냅니다.
Ⅳ. 2단계: 전국망 택배망 뚫기 (PIM 라우팅 알고리즘) 🌟
동네 라우터가 "우리 동네 1명 봅니다!"라고 외쳤으니, 서울 본사 넷플릭스 서버부터 우리 동네까지 연결되는 핏줄(라우팅 트리)을 엮어야 합니다.
- PIM (Protocol Independent Multicast): 전국의 라우터들끼리 멀티캐스트 길을 뚫어주는 라우팅 프로토콜입니다. PIM은 두 가지 극단적인 성격(모드)이 있습니다.
-
PIM-DM (Dense Mode, 빽빽한 모드):
- 사상: "야, 전 국민 90%가 다 킹덤 방송 보지? 일단 전국 모든 라우터한테 영상을 무식하게 다 쏟아부어(Push/Flooding)!"
- 가지치기 (Pruning): 그러다 저기 산골짜기 빈방 라우터가 "야! 우리 동네는 아무도 안 봐!"라고 소리치면(Prune 메시지), 그때서야 그쪽으로 가는 영상 밸브만 툭 끊어버립니다(가지치기). 시청자가 미친 듯이 빽빽하게 많을 때 씁니다.
-
PIM-SM (Sparse Mode, 듬성듬성 모드) 🌟:
- 사상: "주식 시세 방송인데 보는 사람이 서울에 1명, 제주도에 1명뿐이네(듬성듬성)? 멍청하게 다 뿌리지 마!"
- 랑데부 포인트(RP, 중앙 집결지): 전국 한가운데에 RP라는 거대한 만남의 광장을 세웁니다. 방송국 서버는 무조건 RP로만 영상을 쏩니다. 그리고 시청자가 있는 라우터들은 RP를 향해 "저 방송 좀 주세요!(Pull/Join)"라고 애타게 손을 뻗어 길을 개척해 옵니다. 시청자가 거의 없는 환경에서 트래픽을 극단적으로 아끼는 대기업/글로벌망의 절대 표준 방식입니다.
📢 섹션 요약 비유: 유니캐스트 방식이 전 국민 100만 명에게 각자 개별 오토바이 택배로 조간신문을 100만 부 쏴서 고속도로가 꽉 막혀 터지는 재앙이라면, **멀티캐스트(IGMP/PIM)**는 초효율 '마을 공동 배달 시스템'입니다. 서울 신문사(서버)는 고속도로(백본망)를 타고 딱 '1대'의 대형 트럭만 부산 물류 센터(라우터)로 보냅니다. 부산 센터장(IGMP 라우터)은 마을 방송을 때립니다. "오늘 신문 구독하실 분?" 동네 주민 철수와 영희가 손을 번쩍 듭니다(IGMP Join). 중간에 있던 아파트 경비원 아저씨(IGMP 스누핑 스위치)가 그 손든 걸 몰래 엿듣고 101호와 201호만 장부에 적어둡니다. 대형 트럭이 도착하면, 경비 아저씨가 신문을 딱 2부만 복사해서 정확히 철수와 영희네 문틈으로만 쏙 밀어 넣어줍니다. 고속도로(대역폭)에는 트럭 1대만 다니고, 엉뚱한 집에 신문이 던져져 쓰레기가 쌓이는 일(트래픽 낭비)을 0%로 차단한 궁극의 일대다(1:N) 물류 복제 마법입니다.