처음부터 차근차근

네트워크 통신 종류 본문

CS/Network

네트워크 통신 종류

HangJu_95 2023. 10. 21. 00:35
728x90

네트워크에서 출발지부터 목적지로 데이터를 전송할 때 사용하는 통신 방식의 종류는 다음과 같다.

유니캐스트

출발지와 목적지가 정확히 하나로 정해져 있는 1:1 통식 방식이다.

실제로 사용하는 대부분의 통신(Ex : HTTP)은 유니캐스트 방식이며, 가장 일반적인 네트워크 전송 형태이다.

[출처]https://chaelin1211.github.io/study/2021/05/28/network-communication.html

브로드캐스트

  • 1:N (전체 통신)
  • 동일 네트워크에 존재하는 모든 호스트가 목적지이다.

목적지 주소가 모든으로 표기되어 있는 통신 방식으로, 유니캐스트로 통신하기 전, 주로 상대방의 정확한 위치를 알기 위해 사용된다.

예시르논 ARP가 있다.

주소 체계에 따라 브로드캐스트를 다양하게 분류할 수 있지만 기본 동작은 로컬 네트워크 내에서 모든 호스트에 패킷을 전달해야 할 때 사용합니다.

[출처] https://chaelin1211.github.io/study/2021/05/28/network-communication.html

멀티캐스트

  • 1:그룹(멀티캐스트 구독 호스트) 통신
  • 하나의 출발지에서 다수의 특정 목적지로 데이터 전송

멀티캐스트 그룹 주소를 이용해 해당 그룹에 속한 다수의 호스트로 패킷을 전송하기 위한 통신 방식입니다.

  • IPTV와 같은 실시간 방송을 볼 때 이 통신 방식을 사용합니다.
  • 사내 방송이나 증권 시세 전송과 같이 단방향으로 다수에게 동시에 같은 내용을 전달해야 할 때 사용합니다.

[출처] https://chaelin1211.github.io/study/2021/05/28/network-communication.html

멀티캐스트를 해본 예시를 생각해보니, Pub/Sub 구조가 생각난다.

Pub/Sub도 구독한 Consumer에게만 Event나 Message가 날라가기 때문이다.

애니캐스트

  • 1:1 통신
  • 동일 그룹 내의 1개의 호스트를 목적지로 함
  • 동일 그룹 중 가장 가까운 호스트에서 응답
  • IPv4에서 일부 기능 구현, IPv6은 모두 구현 가능

애니캐스트 주소가 같은 호스트들 중에서 가장 가깝거나 효율적으로 서비스할 수 있는 호스트와 통신하는 방식입니다.

  • 가장 가까운 게이트웨이를 찾는 애니캐스트 게이트웨이 기능에 사용합니다.
  • 애니캐스트 게이트웨이의 성질을 이용해서 가장 가까운 DNS 서버를 찾을 때 사용합니다.

최종 통신 방식은 1:1로 유니캐스트와 동일하지만 통신할 수 있는 후보자가 서로 다릅니다.

  • 유니캐스트는 출발지와 목적지가 모두 한 대씩입니다.
  • 애니캐스트는 같은 목적지 주소를 가진 서버가 여러대여서 통신 가능한 다수의 후보군이 있습니다.

[출처] https://chaelin1211.github.io/study/2021/05/28/network-communication.html

통신 방식을 각각 IPv4, IPv6 별로 비교하여 정리하면 다음과 같습니다.

타입통신 대상 범위 IPv4 IPv6 예시
유니캐스트 1:1 전체 네트워크 O O HTTP
브로드캐스트 1:전체 서브넷(로컬 네트워크) O X ARP
멀티캐스트 1:그룹 정의된 구간 O O 방송, Pub/Sub
애니캐스트 1:1 전체 네트워크 O 6 to 4 DNS

통신 방식을 구분할 때 중요한 것은 출발지 주소가 아닌 목적지 주소 기준이라는 것이다.

참조

https://chaelin1211.github.io/study/2021/05/28/network-communication.html

 

[네트워크] 네트워크 통신하기 - Chaelin's Blog

3장 네트워크 통신하기 3.1 유니캐스트, 멀티캐스트, 브로드캐스트, 애니캐스트 네트워크에서 출발지에서 목적지로 데이터를 전송할 때 사용하는 통신 방식의 종류는 다음과 같습니다. 유니캐스

chaelin1211.github.io

 

'CS > Network' 카테고리의 다른 글

Network Topology  (0) 2023.10.20
[Network 기초] Traffic, Throughput, bandwidth, RTT  (1) 2023.10.20
Network  (0) 2023.10.20