다대다 통신1 (소켓,프로토콜) UDP소켓 데이터의 경계 UDP는 TCP와 다르게 데이터의 경계가 있다. 그래서 하나의 패킷이 하나의 데이터가 되는데, 이때문에 UDP소켓이 전송하는 패킷을 데이터그램이라고 부른다. TCP는 데이터의 경계가 없다. send, recv 함수를 통해 해당 소켓의 입출력 버퍼를 읽고 쓰고 하지만 실제 OS가 보낼때 해당 데이터가 나뉘어서 갈수도 있다. 그래서 받는 입장에선 내가 받을 데이터의 용량 만큼 계속 recv해줘야 한다. 하지만 UDP는 입출력 버퍼에 먼저 저장되는게 아닌 곧 바로 OS단에서 데이터를 전송한다. 물론 그렇다고 함수가 리턴했을때 바로 데이터를 보냈다고 확신되는건 아니다. 다만 보낸 횟수에 따라 데이터가 나뉘어서 상대 호스트에 전달되기 때문에 3번 send하였으면 상대방도 3번 recv해줘야 한다. .. 2020. 9. 22. 이전 1 다음