TCP/UDP Socket Protocol 흐름
Socket Interface 를 통해 TCP, UDP 통신 프로토콜을 사용할 수 있다.
Socket Interface 는 특정 OS 및 프로그램 언어에 종속돼서 제공된다.
TCP Socket Programming 흐름
서버는 Socket을 생성하고 주소를 할당(Bind)한다. 그 후 연결 요청을 기다리고(Listen) 연결을 허용(Accept)한다. 연결은 유지되며 통신하다가 로직에 따라 연결을 해제한다.
UDP Socket Programming 흐름
TCP와 다르게 Listen(), Accept() 가 없다.
UDP는 연결된 채로 sendto() 를 실행하지 않기에 하나의 sendto()에 하나의 recvfrom()이 호출된다.
예시로 Server의 recvfrom()이 동작하기 전에 3개의 sendto()가 쌓였다면 TCP의 경우 1번의 recvfrom()으로 데이터를 처리하지만 UDP는 3번의 recvfrom()이 동작한다.
UDP 소켓이 전송하는 패킷을 가리켜 데이터 그램이라 하는데 TCP 패킷과 달리 데이터의 일부가 아닌 하나의 데이터로 의미를 가질 때 데이터 그램이라 표현한다.
참고 자료
https://andjjip.tistory.com/281
https://andjjip.tistory.com/283
http://www.ktword.co.kr/test/view/view.php?m_temp1=5829
'CS,네트워크' 카테고리의 다른 글
Stomp protocol (0) | 2024.01.02 |
---|---|
교착상태 Deadlock (0) | 2023.09.18 |
stack/heap memory (0) | 2023.09.16 |