[네트워킹] Unicast, Broadcast, Multicast, AnycastCS/네트워킹2022. 3. 5. 21:38
Table of Contents
728x90
들어가기 앞서 ..!
네트워크 통신을 위해서는 MAC 주소를 알아야 한다. IP 주소로 MAC 주소를 알기 위해서는 IP 주소를 MAC으로 바꾸는 ARP (Address Resolution Protocol) 과정이 필요하다.
일단 들어가기 앞서 개괄적으로 통신 방식에 대한 다이어그램을 눈에 찍고 가자 ~
✅ Unicast란 ?
- one-to-one - 출발지와 목적지가 정확해야 하는 일대일 통신이다.
- 대상의 MAC address가 아닐 시 drop하기 때문에 다른 PC들의 성능을 저하하지 않는다.
✅ Broadcast란 ?
- one-to-all - 같은 네트워크에 있는 모든 장비들에게 보내는 통신이다.
- 해당 네트워크의 모든 PC들이 신호를 받으므로 수신 PC들이 수신 내용이 필요한 정보인지 확인하는 과정에서 CPU를 사용하게 되어 오버헤드가 발생한다. 따라서 과도한 브로드캐스트는 네트워크 및 PC 성능을 떨어뜨릴 수 있다.
- Unicast로 통신하기 전 주로 상대방의 정확한 위치를 알기 위해 사용된다.
- 로컬 네트워크 내에서 모든 호스트에 패킷을 전달해야 할 때 사용한다.
✅ Multicast란 ?
- one-to-many - 그룹에 속한 다수의 호스트로 패킷을 전송하기 위한 통신이다.
- 여러명에게 보내야 할 경우에 사용하는 방식으로 유니캐스트와 브로드캐스트를 합쳐놓은 듯한 개념이다.
유니캐스트는 수신 PC가 많을수록 네트워크 부하가 커지며, 브로드캐스트는 해당 네트워크 전체에 보내므로 관련없는 PC에서는 CPU 사용률이 증가하는 문제점이 있다. - 사내 방송이나 증권 시세 전송과 같이 단방향으로 다수에게 동시에 같은 내용을 전달해야 할 때 사용한다.
- 라우터나 스위치에서 기능을 지원해야만 사용할 수 있다.
✅ Anycast란 ?
- one-to-any - 가장 가까운 Node와 통신하는 방식이다.
- 유니캐스트와 비슷하지만 다른 네트워크에 연결된 수신 가능한 장비 중에서 가장 가까운 한 노드에만 전송한다.
동일한 애니캐스트 address가 서로 다른 node들의 Interface에 할당되어 있을 때, 해당 애니캐스트 address로 IPv6 Packet을 전송하면 Routing Protocol의 알고리즘에 따라 가장 가까이에 있다고 판단되는 node의 Interface로 전달된다. - 가장 가까운 게이트웨이를 찾는 애니캐스트 게이트웨이 기능에 사용하며 애니캐스트 게이트웨이의 성질을 이용해 가장 가까운 DNS 서버를 찾을 때 사용한다.
- IPv4에서 일부 기능 구현, IPv6 모두 구현이 가능하다.
- 애니캐스트의 목적
- 트래픽 분산
- 네트워크 이중화
- DDos 공격이 발생했을 때 서버가 받는 피해 최소화
- Client와 Server 간의 물리적인 거리를
✅ 통신 방식 비교
타입 | 통신 대상 | 범위 | IPv4 | IPv6 | 예 | TCP, UDP 지원 여부 |
유니캐스트 | 1:1 | 전체 네트워크 | O | O | HTTP | TCP, UDP 모두 지원 |
브로드캐스트 | 1:전체 | 서브넷(로컬 네트워크) | O | X | ARP | UDP 지원 |
멀티캐스트 | 1:그룹 | 정의된 구간 | O | O | 방송 | UDP 지원 |
애니캐스트 | 1:1 | 전체 네트워크 | △ | O | 6 to 4 DNS |
📌참고
728x90
'CS > 네트워킹' 카테고리의 다른 글
[네트워킹] DNS(Domain Name System) (0) | 2022.03.08 |
---|---|
[네트워킹] 대칭키(비밀키) & 공개키(비대칭키) (0) | 2022.03.07 |
[네트워킹] DHCP (Dynamic Host Configration Protocol) (0) | 2022.03.05 |
[네트워킹] MAC 주소 (0) | 2022.02.11 |
[네트워킹] 라우터, 스위치, 브릿지, 허브, 게이트웨이 (0) | 2022.02.11 |
@TTOII :: 뭉게뭉게 클라우드
영차영차 성장 블로그
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!