본문 바로가기

ComputerScience/Network

유니캐스트, 브로드캐스트, 멀티캐스트


몇일전에 면접 보았을 때 받았던 질문이었는데,
다시 한번 정리해보고자 하는 의미에서 포스트 해봅니다.

유니캐스트는 특정 목적지의 주소 하나만을 가지고 통신하는 방식으로,
출발 호스트와 목적 호스트 사이 1:1 통신을 하는 통신 방식이다.
인터넷 상에서 가장 많이 사용되는 통신방식이기도 하다.(일반적인 사용은 다 유니캐스트)

브로드캐스트는 단순하게 말하면 로컬 랜 상에 있는 모든 네트워크 장비에게 보내는 통신을 말한다.
여기서 로컬 랜 상에 있다는 것은 라우터에 의해서 구분지어진 공간,
즉 브로드캐스트 도메인이라고 하는 공간을 말한다.

멀티캐스트는 특정 그룹에게 데이터를 보내는 통신방법입니다.
이 경우 같은 네트워크 상에 있다고 하더라도 특정 그룹에 속하지 않은 
장비들에게는 패킷을 보내지 않는 브로드캐스트와 유니캐스트의 장점을 
취합하여 만들어진 통신 방법입니다.

다만 멀티캐스트는 스위치나 라우터가 멀티캐스트 기능을 지원해야 사용가능하다는 점이 있군요.

일반적으로 우리가 인터넷에서 하는 대부분의 통신은 유니캐스트 방식으로 이뤄지고,
우리가 ISP(인터넷 공급업체)에 인터넷 연결시도를 할때 (즉 IP를 받아올 떄)
브로드캐스트를 통해서 IP를 발급 받습니다. 

유니캐스트의 경우, 랜카드에서 자신의 맥주소와 패킷의 받는 주소란에 맥주소가
서로 일치하지 않을 경우 랜카드에서 버려버리기 때문에 호스트에 미치는 영향이 크지 않지만,

브로드캐스트의 경우, 일단 CPU까지 전달되어 CPU에게 인터럽트를 걸어 호스트의
부담을 가중시킨다는 점 때문에 네트워크에서 브로드캐스트가 많으면 네트워크 전체적으로
악순환이 연속될 수 밖에 없습니다.