유니캐스트/브로드캐스트/멀티캐스트 & 단방향/양방향 통신 & 패킷교환

728x90

유니캐스트, 브로드캐스트, 멀티캐스트 대해서 알아보기 전에 MAC 주소에 대해 살펴보자

MAC(Media Access Control Address) 주소는 주민등록번호처럼 고유의 식별코드이다. 물리적 주소라고 부르며 총 48비트로 이루어져 있고 앞의 24비트는 제조사를 의미하는 고유 코드고, 뒤의 24비트는 제품의 일련번호와 같이 부여되는 것으로 전 세계에서 유일한 고유 번호이다.

실제로 네트워크 통신을 할 때 하드웨어가 사용하는 주소는 LAN 카드에 할당된 MAC 주소를 사용한다.

 

유니 캐스트

  • 네트워크에서 가장 많이 사용되는 유니캐스트(Unicast) 는 서버와 클라이언트 간의 일대일 통신 방식을 말한다.
  • 데이터를 송신하려는 컴퓨터의 MAC 주소를 90-2B-35-91-E0-3F, 수신하려는 컴퓨터의 MAC 주소를 90-2B-34-92-C0-5F 라고 가정한다.
  • 통신하기 위해서는 전송되는 프레임안에 항상 송신지(90-2B-35-91-E0-3F)와 수신지(90-2B-34-92-C0-5F) 주소, MAC 주소가 있어야 한다.
  • 자신의 MAC 주소와 수신지 MAC 주소가 동일하다면 전송된 데이터를 수신하고, 자신의 LAN 카드 MAC 주소가 수신지 주소가 아니라고 판단되면 해당 프레임은 버린다. 주소에 대한 정보는 헤더에 들어있다.

정리하자면 1대 1 통신하는 방법을 유니캐스트라고 한다.


브로드 캐스트

  • 브로드 캐스트(Broadcast) 는 로컬 LAN 에 있는 모든 네트워크 단말기에 데이터를 보내는 방식으로, 서버와 클라이언트 간에 1:All 로 통신하는 데이터 전송 서비스이며, 브로드 캐스트의 주소는 FF-FF-FF-FF-FF-FF 로 미리 정해져 있다.
  • 브로드캐스트는 다른 라우터를 찾거나, 라우터끼리 데이터를 교환하거나, 서버가 서비스를 제공하려고 모든 클라이언트에게 알릴 때 등 여러 상황에서 사용할 수 있다.
  • 불특정 다수에게 전송되는 서비스라 수신을 원치 않는 클라이언트도 수신하게 되므로 네트워크 성능 저하를 가져올 수 있다.
  • 내가 아무리 데이터를 받기 싫어도 브로드 캐스트일 경우에는 데이터를 받을 수 밖에 없다.

정리하자면 1대 All 통신하는 방식을 브로드 캐스트라고 하며 수신을 원치 않는 클라이언트도 데이터를 수신하게 되고, 모든 곳에 패킷을 날리기 때문에 네트워크 트래픽이 발생하여 속도가 저하된다.

또한, 브로드 캐스트는 데이터를 무조건 CPU 로 전송하기 때문에 컴퓨터 자체의 성능을 떨어뜨린다.

 


멀티 캐스트

  • 멀티캐스트는 전송하려는 특정 그룹에게만 한 번에 전송할 수 있기 때문에 유니 캐스트처럼 반복해서 보낼 필요가 없고, 브로드 캐스트처럼 전송 받을 필요가 없는 컴퓨터에 보내지 않아도 된다.
  • 유니 캐스트와, 브로드 캐스트 방식을 개선시킨 방식이다.

정리하자면 특정 그룹에게만 한 번에 전송할 수 있는 아주 좋은 통신 방법이다.


통신 방식으로는 전송 방향에 따른 통신 방식이 존재한다.

위 그림 처럼 단방향 통신 방식과 양방향 통신 방식이 존재한다.


단방향(Simplex) 통신

  • 송신 측과 수신 측이 미리 고정되어 있고, 통신 채널을 통해 접속된 단말기 두 대 사이에서 데이터가 한쪽 방향으로만 전송되는 통신 방식이다.
  • 단방향 통신에서 전기적으로 신호를 보내려면 송신 측과 수신 측을 연결하는 회로를 구성해야 하므로, 단방향 전송일지라도 전송로는 두 개가 필요하다.
  • 대표적인 단방향 통신은 다리오, 모니터, 키보드 가 있다.


양방향(Duplex) 통신 - 반이중 통신

 통신 채널을 통해 접속된 두 대의 단말기 사이에서 데이터의 송수신이 모두 가능한 방식으로, 데이터의 송수신을 한 번씩 번갈아 가면서 할 수 있는 반이중 통신에 대해 살펴보자

  • 통신 채널에 접속된 두 대의 단말기 중 어느 한쪽이 데이터를 송신하면 상대방은 수신만 할 수 있는 통신 방식이다. 송신 측과 수신 측이 정해져 있지 않으며, 양쪽 단말기의 상호 협력에 따라 송수신 방향이 바뀐다.
  • 대표적인 예로, 휴대용 무전기와 모뎀을 이용한 데이터 통신을 들 수 있다.


양방향(Duplex) 통신 - 전이중 방식

 통신 채널에 접속된 단말기 두 대가 동시에 데이터를 송수신할 수 있는 통신 방식을 말하며, 통신 채널 두개를 이용하여 한 번에 데이터를 송수신할 수 있다.


교환 시스템이란? 네트워크 양단에 연결된 호스트들이 전송하는 패킷은 전송과정에서 전송 경로 중간에 위치한 교환 시스템을 거친다. 교환 시스템은 데이터를 최종 목적지까지 올바르게 전달하도록 데이터를 중개하는 교환 기능을 제공해준다.

이 중 컴퓨터 네트워크에서 발전하였고, 전송 데이터를 패킷 단위로 나누어 전송해주는 패킷 교환에 대해 알아보자

 

패킷 교환

  • 네트워크로 전송되는 모든 데이터는 송수신지 정보를 포함하는 패킷들로 구성되는데, 이 패킷들은 표준과 프로토콜을 사용하여 생성한다.
  • 데이터는 네트워크를 사용하여 전송되기 전에 패킷이라는 작은 조각들로 나누는데, 각 패킷들은 고유의 번호가 있어 수신지에 전송되었을 때 원래의 데이터로 재결합하여 구성할 수 있다.

기본적인 패킷의 구조

  • 헤더 : 패킷의 송신지와 수신지, 패킷 번호 등이 있다. 플래그 정보, 패킷 길이 등의 정보도 함께 들어있다.
  • 데이터 : 미리 정의 된 최대의 데이터 크기를 가지며, 데이터가 최대 길이보다 크면 작은 조각들로 쪼개져 여러 개의 패킷으로 나뉘어 전송된다.
  • 순환 잉여도 검사 : 수신된 정보 내에 오류가 포함되어 있는지 검사하려고 송신 측에서 보내는 원래의 데이터에 별도로 데이터를 추가하여 보내는데, 이를 순환 잉여도 검사라고 한다.

 

패킷 교환 방식으로는 가상 회선 방식과 데이터 그램 방식이 존재한다.

 

가상 회선 방식은 아래와 같은 특징을 가진다.

  • 연결형 서비스(TCP) 를 지원하기 위한 기능
  • 하나의 연결을 통해 전송되는 패킷의 경로는 동일

송신 호스트에서 수신 호스트까지 보이지 않는 가상의 선을 만들어 선입선출의 형태로 수신 호스트까지 패킷을 전달한다. 수신 호스트에서는 헤더에 존재하는 체크섬을 이용하여 패킷들이 변형 됐는지 확인한다.

 

데이터 그램 방식은 아래와 같은 특징을 가진다.

  • 비연결형 서비스(UDP) 를 이용해 패킷을 독립적으로 전송
  • 패킷이 전달되기 전에 연결을 설정하는 과정이 없으므로 경로를 미리 할당하지 않음
  • 전송되는 패킷들이 독립 경로로 전달
  • 전송할 정보의 양이 적거나 상대적으로 신뢰성이 중요하지 않은 환경에서 사용

가상 회선 방식과는 다르게 경로가 존재하지 않고 각각의 패킷들은 독립적인 경로로 수신 호스트까지 도달한다. 패킷의 헤더에 오류를 검출하는 코드가 따로 존재하지 않아 이 패킷들이 제대로 온 것인지 확인할 방법이 없다. 하지만 매우 빠르다는 장점을 갖고 있다.

728x90