[Network] 6. 통신의 종류
통신의 종류
-
통신에는 유니캐스트, 브로드캐스트, 멀티캐스트, 애니캐스트가 있다.
유니캐스트
- 송신 노드 하나가 수신 노드 하나에 데이터를 전송하는 일대일 방식
- 출발지와 목적지가 정확해야 하는 일대일 통신
- 유니캐스트 방식은 가장 많이 사용되며 한 개 목적지 MAC 주소를 사용하고 CPI 성능에 문제를 주지 않는 방식이다.
- CPI(clock cycles per instruction) 는 평균적으로 명령어를 하나 처리하는데 필요한 클럭 사이클 수를 의미한다. 이 때 클럭 사이클이란 CPU 의 클럭(Hz)이 한 사이클에 걸리는 시간을 의미한다. 클럭 속도는 1초당 클럭 사이클 수를 뜻하며 클럭 주기의 역수이다.
- 과정
- 전송하는 프레임에 출발지 MAC 주소와 목적지 MAC 주소를 담는다.
- 출발지에서 유니캐스트 방식으로 프레임을 전송한다.
- 같은 네트워크에 있는 모든 호스트들은 자신의 MAC 주소와 프레임에 담긴 목적지 MAC 주소를 비교한다.
- 비교 결과가 같으면 프레임을 받아서 처리하고 같지 않으면 해당 프레임을 버린다.
브로드캐스트
- 같은 네트워크에 있는 모든 장비들에게 보내는 통신이다.
- 유니캐스트로 통신하기 전에 상대방의 정확한 위치를 알기 위해 사용된다. 송신지가 수신지의 MAC 주소를 알지 못하는 경우 브로드캐스트 방식으로 알아내기도 한다.
- 라우터끼리 정보를 교환하거나 새로운 라우터를 찾는 경우에도 이용된다.
- 송신 노드 하나가 네트워크에 연결된 수신 가능한 모든 노드에 데이터를 전송한다.
- 허브와 같이 연결된 모든 부분에 전달하는 통신이며, 과도한 브로드캐스트는 네트워크 및 PC 성능을 떨어트린다.
- 주로 IP 는 알지만 MAC 주소를 모르는 경우 사용한다.
- 과정
- 브로드캐스트용 주소가 미리 정해져있다.
- 브로드캐스트 방식으로 프레임을 전송하면 같은 네트워크방에 존재하는 모든 호스트가 목적지가 된다.
- 모든 호스트에게 패킷이 전송되면서 트래픽이 증가한다.
- 수신한 호스트는 CPU 로 전송하여 처리한다.
멀티캐스트
- 유니캐스트 + 브로드캐스트
- 송신 노드 하나가 네트워크에 연결된 하나 이상의 수신 노드에 데이터를 전송
- 스위치와 같이 원하는 부분들에만 전달하는 통신 이며, 멀티캐스트가 지원되는 라우터를 사용해야 한다.
- 해더에는 수신자의 주소 대신 수신자들이 참여하고 잇는 그룹 주소를 담는다.
- 과정
- UDP 전송을 사용한다.
- Client 에서 멀티캐스트를 사용하는 Application 을 시작하면 멀터캐스트 IP 주소와 MAC 주소를 라우터에 등록한다. (멀티캐스트 그룹 등록)
- 하나의 Client 에서 여러 그룹 주소를 사용할 수 있다.
- 만약 멀티캐스트 통신 중간에 새로운 Client 가 그룹에 들어온다면 해당 Client 는 데이터를 중간부터 받게 된다.
애니캐스트
- 가장 가까운 노드와 통신하는 방식이다. 즉 애니캐스트는 애니캐스트 주소가 같은 호스트들 중에서 가장 가깝거나 가장 효율적으로 서비스할 수 있는 호스트와 통신하는 방식이다.
- 송신 노드가 네트워크에 연결된 수신 가능한 노드 중에서 한 노드에만 데이터를 전송한다.
- 사용 목적으로는 트래픽 분산, DDOS 공격에서 서버가 받는 피해 최소화, Client 와 Response Time 최소화가 있다.
- 가장 가까운 DNS 서버를 찾을 때 사용하기도 한다.
- 가장 가까운 게이트웨이를 찾는 애니캐스트 게이트웨이 기능에 사용하기도 한다.
댓글 남기기