UDP는 데이터의 경계가 존재하는 프로토콜
→입력함수의 호출 횟수와 출력함수의 호출 횟수가 완벽히 일치해야 송신된 데이터 전부를 수신 가능
→데이터 수신에 딜레이를 주더라도 TCP와 달리 한 번에 하나씩 읽어들임
Connected UDP 소켓
- UDP 소켓은 TCP와 달리 연결이 없음
데이터 전송(sendto)의 단계
- UDP 소켓에 목적지의 IP와 PORT 번호 등록
- 데이터 전송
- UDP 소켓에 등록된 목적지 정보 삭제
위와 같이 목적지의 정보가 등록되어 있지 않은 소켓을 unconnected 소켓이라 함
→같은 목적지로 데이터를 3번 여러 번 보낼 때 목적지 정보의 등록과 삭제를 3번 반복하니 비효율적
→Connected 소켓으로 만들면 성능 향상을 기대할 수 있음
UDP에서 connect는 TCP와 같이 상대방과의 연결은 아니지만 소켓에 목적지 정보를 등록
→송수신의 대상이 정해졌기 때문에 sendto, recvfrom이 아닌 write, read를 통해 데이터 송수신 가능
'개인 공부 > 네트워크' 카테고리의 다른 글
[Chapter 06-2] UDP 기반 서버/클라이언트 구현 (0) | 2023.08.28 |
---|---|
[Chapter 06-1] UDP에 대한 이해 (0) | 2023.08.28 |
[Chapter 05-2] TCP의 이론적인 이야기 (0) | 2023.08.28 |
[Chapter 05-1] 에코 클라이언트의 구현 (0) | 2023.08.21 |
[Chapter 04-3] Iterative 기반의 서버, 클라이언트 (0) | 2023.08.07 |