유니캐스트, 멀티캐스트, 브로드캐스트란?
- 네트워크에서 통신하는 방법을 구분짓는 방법입니다.
유니캐스트란?
- 1:1 전송 방식입니다.
- 데이터를 받고자하는 MAC Address를 프레임에 포함시켜 보내는 방식입니다.
- 그래서 MAC Address를 찾아 통신하게되고 네트워크에 있는 노드들 중 자신의 MAC Address인 경우에만 패킷이 CPU에 전송됩니다.
- 해당 안되는 다른 노드들에겐 CPU에 영향을 미치지않고 원하는 노드랑 통신하는 방법입니다.
브로드캐스트란?
- TCP/IP의 IPv4에서 같은 대역의 네트워크 주소를 가진 모든 호스트들에게 패킷을 전송하는 방식으로 하나의 네트워크와 전체의 통신 방법입니다.
- 같은 네트워크에 포함되는 장비들에게 거부권은 없고 무조건 수신하는 통신방법입니다.
- 유니캐스트와 다르게 무조건 받아들여야하기 때문에 CPU까지 패킷이 올라오게되고 컴퓨터 자체에 부담이 증가하게됩니다.
- 실질적인 통신은 IP Address가 아닌 MAC Address로 이루어지는데 IP 주소는 알고있지만 MAC Address를 모를 때 사용하는 방법입니다.
- 대표적인 예로 ARP(자신과 데이터 통신을 하기 위한 다른 노드의 MAC Address를 알아내기위한 프로토콜)
멀티캐스트란?
- 1:N 전송 방식입니다.
- 자신의 데이터를 받기 원하는 특정 호스트들에게 보내는 것이 가능하지만, 스위치나 라우터가 이 기능을 지원해 주어야 합니다.
- 유니캐스트로 일일이 보내거나 브로드캐스팅하기에 부담되는 경우 사용
- 전송을 위한 그룹 주소는 D Class IP 주소 (224.0.0.0 ~ 239.255.255.255)로 전세계 개개인의 인터넷 호스트를 나타내는 A, B, C Class IP 주소와는 달리 실제의 호스트를 나타내는 주소가 아니며, 그룹 주소를 갖는 멀티캐스트 패킷을 전송받은 수신자는 자신이 패킷의 그룹에 속해있는가를 판단해 패킷의 수용여부를 결정하게 됩니다
- 현재 인터넷상의 라우터들은 대부분 유니캐스트만을 지원하기 때문에 멀티캐스트 패킷을 전송하기 위해서 멀티캐스트 라우터 사이에 터널링이라는 개념을 사용하여 캡슐화된 패킷을 전송합니다.
- 즉 멀티캐스트 주소를 가진 데이터 패킷 헤더 앞에 멀티캐스트를 지원하지 않는 일반 라우터들을 거칠 경우, 기존의 유니캐스트 패킷과 같은 방법으로 라우팅되어 최종적으로 터널의 종착지 노드로 전송될 수 있게 하는 것 입니다.
'Network' 카테고리의 다른 글
[Network] 소켓 및 Spring Socket Programming (0) | 2021.10.28 |
---|---|
[Network] OAuth (0) | 2021.10.27 |
[Network] DNS 동작원리 (0) | 2021.10.25 |
[Network] REST와 RESTful (0) | 2021.10.22 |
[Network] 쿠키와 세션 (0) | 2021.10.21 |