유니캐스트, 브로드캐스트, 멀티캐스트는 한마디로 네트워크에서 통신을 하는 방식에 따른 구분이라고 생각하면 된다.
즉, 1대 1로 하는 통신 방식이냐, 어떤 그룹을 대상으로 하는 통신 방식이냐, 아니면 전부를 대상으로 하는 통신 방식이냐 하는 겁니다.
유니캐스트
현재, 네트워크상에서 가장 많이 사용되는 트래픽이다. (물론 브로드 캐스트가 더 많이 사용되는 네트워크도 있겠지만....)
우리가 랜에서 통신을 한다고 할 때 데이터를 보내고자 하는 PC의 맥 어드레스가 (00 - 60 - 80 - AA - BB - CC)라고 가정, 받는 PC의 맥 어드레스가 (00 - 60 - 80 - DD - EE - FF) 라고 가정해보자.
일단 통신을 위해서는 전송되는 프레임 안에 항상 출발지와 목적지의 주소, 즉 맥 어드레스가 들어 있어야 한다.
위의 경우 프레임 안에 출발지는 00 - 60 - 80 - AA - BB - CC로, 그리고 목적지는 00 - 60 - 80 - DD - EE - FF 라고 한다.
이러한 방식이 바로 유니캐스트 통신 방식이다.
즉, 정확하게 받는 PC의 주소를 프레임 안에 써넣는데, 이때 PC가 하나이어야 한다는 것이다.
봉투에 받는 사람 주소를 적고, 보내는 사람 주소를 적은 다음에 우체통에 넣는 방식이다.
유니캐스트는 왜 사용할까?
특정 목적지의 주소 하나만을 가지고 통신하는 방식이다.
그 목적지 주소가 아닌 다른 PC들의 CPU 성능을 저하시키지 않는다, (자신의 맥 어드레스가 아니라고 판단되면 렌카드가 이 프레임을 버리기 때문이다)
브로드캐스트
로컬 랜에 붙어 있는 모든 네트워크 장비들에게 보내는 통신이다.
로컬 랜이란, 라우터에 의해서 구분된 공간, 즉 브로드캐스트 도메인이라고 하는 공간이다.
통신의 대상이 특정한 어떤 한 네트워크 장비가 아니고, 내가 살고 있는 네트워크 안의 모든 네트워크 장비들에 통신할 때 쓰기 위한 방식이라고 생각하면 된다.
동네 이장님이 마이크로 방송하는 것과 똑같다고 보면 된다. ( "동네 사람들! 반상회가 있으니까 다 모이세요!")
방송을 듣는 영역, 즉 여기서는 그 동네가 되겠는데, 그것을 우리는 브로드캐스트 도메인이라고 한다.
브로드캐스트의 문제점
네트워크 상의 전체 노드로 전송되기 때문에, 전체적인 트래픽도 증가하지만, 이 패킷을 받은 모든 랜카드가 이 패킷을 CPU로 전송하기 때문에 CPU는 하던 일을 멈추고 또 다른 일을 해야 하고, 이에 따라 전체 PC의 성능도 떨어지게 된다.
유니캐스트와 브로드캐스트에 대한 비교 실행
멀티캐스트
200명의 사용자가 있는 네트워크에서 150명에게만 같은 정보를 동시에 보내야 하는 상황이라고 가정해보자.
이해가 잘 안되면, 증권시황 제공 서버라는 것이 있는데, 이 서버에 가입한 150명의 사용자에게 같은 증권시황을 시간별로 동시에 뿌려야 한다고 가정해보자.
그렇다면 서버는 어떻게 해야 이 정보를 동시에 150명의 사용자에게 뿌려줄 수 있을까?
첫 번째, 유니 캐스트를 이용하는 방법이다.
- 즉 150명의 주소로 하나씩 전부 보낸다.
두 번째, 브로드캐스트를 이용하는 방법이다.
- 한 번에 모든 사용자에게 보내는 것이다.
- 하지만 데이터를 받을 필요도 없는 나머지 50명 조차도 이 데이터를 받아야만 한다는 문제가 발생한다.
세 번째, 멀티캐스트를 이용하는 방법이다.
- 보내고자 하는 그룹 멤버들에게만 한 번에 보낼 수 있기 때문에 유니 캐스트처럼 여러 번 보낼 필요도 없고, 브로드 캐스트처럼 받기 싫어하는 사람에게까지 보낼 필요도 없다.