애플리케이션에 데이터를 배분하기만 한다

Sunhee·2024년 2월 23일

네트워크

목록 보기
21/40
post-thumbnail

해당 포스트는 영진닷컴,『그림으로 배우는 네트워크 NetWork 원리』, Gene 저·김성훈 역을 참고하여 작성하였습니다.


UDP

UDP는 PC나 서버 등에 도달한 데이터를 적절한 애플리케이션에 배분하는 기능만 있는 프로토콜입니다. TCP와 같은 확인은 전혀 하지 않습니다.

UDP로 애플리케이션의 데이터를 송수신하기 위해서는 UDP 헤더를 추가합니다.
UDP 헤더와 애플리케이션의 데이터를 합쳐 UDP 데이터그램이라고 부르는 경우가 있습니다.

UDP 헤더 형식은 TCP 헤더 형식과 배교하면 지극히 단순합니다.

UDP 이용 사례

UDP는 상대방의 애플리케이션이 동작하는지 등을 확인하지 않은 채 무조건 UDP 데이터그램으로 애플리케이션의 데이터를 송신합니다. 이러한 특성 상, TCP 만큼 여분의 처리를 하지 않으므로, 데이터 전송 효율이 좋다는 장점이 있습니다. 그 반면에 신뢰성이 높지 않다는 단점이 있습니다. UDP의 경우는 보내고 싶은 UDP 데이터그램이 상대방 애플리케이션까지 제대로 도달했는지 알 수가 없습니다. 만약, 데이터가 도달했는지 확인할 필요가 있다면, 애플리케이션에서 그런 기능을 만들어 넣어야 합니다.

또한, UDP에는 크기가 큰 데이터를 분할하는 기능도 없스비낟. 그러므로 전송해야 할 애플리케이션의 데이터 크기가 클 때는 애플리케이션 쪽에서 적절한 크기로 쪼개야만 합니다.

UDP를 이요하는 전형적인 애플리케이션은 IP 전화입니다. IP 전화의 음성 데이터는 IP 전화에서 작게 쪼갭니다. IP 전화의 설정에 따라 달라지지만, 음성 데이터가 1초 동안 50개로 분할되게 설정하는 것이 일반적입니다. 요컨대, 음성 데이터 1개당 20밀리 초 분량입니다. IP 전화에서 작게 쪼갠 음성 데이터에 UDP 헤더를 추가해서 전송합니다.


Point

  • UDP는 애플리케이션에 데이터를 배분하기 위해 이용하는 프로토콜
  • IP 전화의 음성 데이터와 같은 실시간 데이터 전송을 할 때 UDP를 이용한다.

[참고자료] https://velog.io/@amercurl27/TCPUDP

0개의 댓글