개요
이번 게시글에서는 L2 레이어 단계에서 멀티캐스트와 브로드캐스트의 트래픽 처리 방식이 어떻게 이루어지는지 알아보는 시간을 가져보겠습니다.
멀티캐스트
멀티캐스트는 특정한 그룹에 속한 호스트들에게만 데이터를 전송하는 방식입니다.
이는 유니캐스트(1:1)와 브로드캐스트(1:전체) 사이의 효율적인 통신 방식이죠.
L2 스위치의 멀티캐스트 처리 방식
L2 스위치는 MAC 주소 기반의 트래픽 전달 을 수행합니다.
멀티캐스트 트래픽은 특정 장비의 MAC 주소가 아닌 멀티캐스트 그룹 주소를 목적지로 가지므로 이 트래픽을 어느 포트로 보내야할지 알지 못합니다!
따라서 알 수 없는 유니캐스트나 브로드캐스트 트래픽과 마찬가지로 수신한 포트를 제외한 동일 VLAN 내의 모든 포트로 트래픽을 뿌리게 됩니다!
이를 플러딩(Flooding) 이라고 합니다.
스위치에 IGMP Snooping이 비활성화된 경우
🖥️ 구성
- VLAN 10에 있는 장비들
- Host A:
192.168.10.10
(멀티캐스트 송신자) - Host B:
192.168.10.20
(수신자 아님) - Host C:
192.168.10.30
(수신자 아님)
- Host A:
🔄 동작
- Host A가 멀티캐스트 주소 239.1.1.1로 데이터를 전송합니다.
- 스위치는 멀티캐스트 MAC 주소를 알 수 없기 때문에,
- VLAN 10의 **모든 포트(B, C)**로 멀티캐스트 패킷을 전달합니다. (Flooding)
- 실제로 수신자가 없더라도 불필요한 트래픽이 B, C에게 전송됩니다.
IGMP Snooping 이란?
멀티캐스트의 비효율적인 Flooding을 해결하기 위한 기술이 IGMP Snooping 입니다.
L2 스위치가 IGMP 패킷을 감시하여, 누가 어떤 멀티캐스트 그룹에 가입했는지 를 인식한 후, 해당 포트에만 트래픽을 전달해요!
브로드캐스트
브로드캐스트는 네트워크 상의 모든 호스트에게 메시지를 전달 하는 방식입니다.
말 그대로, 한 호스트가 보낸 데이터를 같은 네트워크(또는 VLAN) 에 속한 모든 장비에게 전달하는 것이죠.
그런 브로드캐스트를 위해 예약된 특별한 MAC 주소가 있는데, 바로 FF:FF:FF:FF:FF:FF
입니다.
✅ IPv4 브로드캐스트 주소: 255.255.255.255
또는 네트워크 브로드캐스트 주소 (예: 192.168.1.255
)
✅ 브로드캐스트 MAC 주소: ff:ff:ff:ff:ff:ff
L2 스위치의 브로드캐스트 처리 방식
L2 스위치는 MAC 주소 기반으로 프레임을 전달하는걸 위에서 확인헀었죠?
브로드캐스트 MAC 주소는 ff:ff:ff:ff:ff:ff
로 모든 장비를 대상으로 하므로,
스위치는 이 프레임을 수신한 포트를 제외한 해당 VLAN에 속한 모든 포트로 트래픽을 전달(Flooding
)하게 됩니다.
중요한 것은 브로드캐스는 멀티캐스트와 달리, IGMP 스누핑 같은 기술로 제어가 불가능합니다.
말 그대로 '무조건 모두에게' 전달되는 강력한 신호인거죠.
브로드캐스트는 어떤 상황에서 발생하나요?
브로드캐스트가 가장 흔하게 사용되는 대표적인 예는 바로 ARP(Address Resolution Protocol) 입니다.
아래와 같은 상황이 발생했다고 가정해볼게요!
상황: 내 PC(A
)가 같은 네트워크에 있는 아무개(B
)에게 파일을 보내려고 합니다.
- 내가 아는 것: 아무개(
B
)의 IP 주소 (192.168.0.100
) - 내가 모르는 것: 아무개(
B
)의 MAC 주소 (실제 통신에 필요한 물리 주소)
ARP 동작 과정
"누구세요?" 질문 준비
- 내 PC(A)는 파일을 보내기 전, 먼저 "IP 주소가 192.168.0.100인 사람, MAC 주소 좀 알려줘!" 라는 내용의 ARP 요청(Request) 메시지를 만듭니다.
브로드캐스트로 질문 전송
- 이 ARP 요청 메시지는 특정 한 명에게 보내는 것이 아니므로, 목적지 MAC 주소를 FF:FF:FF:FF:FF:FF로 설정하여 스위치에 전달합니다.
스위치의 전체 전파
- 스위치는 이 브로드캐스트 메시지를 받자마자, PC(A)가 연결된 포트를 제외한 모든 포트로 뿌려줍니다. 이제 네트워크상의 모든 장비가 이 질문을 받게 됩니다.
"나야 나!" 응답
- 질문과 관련 없는 다른 PC들은 "내 IP 주소가 아니네" 하고 메시지를 조용히 버립니다.
- IP 주소의 주인인 친구 PC(B)는 "어? 나를 찾네!" 하고 "내 IP 주소는 192.168.0.100이고, 내 MAC 주소는 BB-BB-BB-BB-BB-BB야" 라는 ARP 응답(Reply) 메시지를 보냅니다. 이 응답은 브로드캐스트가 아닌, 나에게만 보내는 유니캐스트(Unicast) 통신입니다.
통신 시작
- 이제 내 PC(A)는 친구 PC(B)의 MAC 주소를 알게 되었으니, 비로소 파일 전송을 시작할 수 있습니다.
이처럼 브로드캐스트는 통신을 시작하기 위해 상대방의 실제 주소를 알아내는 '길 찾기' 과정에서 필수적인 역할을 합니다.
DHCP를 통해 IP 주소를 할당받는 과정에서도 역시 브로드캐스트가 사용됩니다.
브로드캐스트는 이처럼 필수적이지만, 너무 많아지면 네트워크 전체를 마비시키는 브로드캐스트 스톰 을 일으킬 수 있어요!
모든 PC가 계속해서 들어오는 트래픽을 처리하느라 다른 중요한 일을 하지 못하게 되는거죠!
이 '외침'이 퍼져나가는 범위를 브로드캐스트 범위(Broadcast domain) 이라고 한답니다.
이 범위를 적절하게 나누어주지 않으면, 작은 사무실에서 발생한 문제가 회사 전체 네트워크를 마비시킬 수도 있는거에요!
그럼 브로드캐스트는 막지 못하는가?
아니요! 브로드캐스트 범위를 제한할 수 있어요.
그걸 막을 수 있는 존재는 바로 라우터 와 VLAN 입니다!
L3 장비인 라우터는 브로드캐스트 프레임을 다른 네트워크로 넘기지 않는 '문지기' 역할을 합니다.
또한, 하나의 스위치에서 VLAN 을 나누면, 각 VLAN이 별개의 브로드캐스트 도메인이 되어 서로의 브로드캐스트에 영향을 받지 않게 됩니다.