개인 공부/네트워크

[Chapter 06-3] UDP의 데이터 송수신 특성과 UDP에서의 connect 함수 호출

Koalitsiya 2023. 8. 28. 14:55

UDP는 데이터의 경계가 존재하는 프로토콜

→입력함수의 호출 횟수와 출력함수의 호출 횟수가 완벽히 일치해야 송신된 데이터 전부를 수신 가능

→데이터 수신에 딜레이를 주더라도 TCP와 달리 한 번에 하나씩 읽어들임

 

Connected UDP 소켓

  • UDP 소켓은 TCP와 달리 연결이 없음

데이터 전송(sendto)의 단계

  • UDP 소켓에 목적지의 IP와 PORT 번호 등록
  • 데이터 전송
  • UDP 소켓에 등록된 목적지 정보 삭제

 

위와 같이 목적지의 정보가 등록되어 있지 않은 소켓을 unconnected 소켓이라 함

→같은 목적지로 데이터를 3번 여러 번 보낼 때 목적지 정보의 등록과 삭제를 3번 반복하니 비효율적

→Connected 소켓으로 만들면 성능 향상을 기대할 수 있음

 

UDP에서 connect는 TCP와 같이 상대방과의 연결은 아니지만 소켓에 목적지 정보를 등록

→송수신의 대상이 정해졌기 때문에 sendto, recvfrom이 아닌 write, read를 통해 데이터 송수신 가능