Network 2

UDP (User Datagram Protocol)

TCP는 스트림 방식으로 전송되는 데이터의 경계가 없지만 UDP는 패킷 단위로 전송되어 경계가 분명하다. UDP에서 서버와 클라이언트는 연결되어 있지 않다. UDP에서는 서버 건 클라이언트 건 하나의 소켓만 있으면 된다. 신뢰성을 보장할 수 없다. 대신 상황에 따라 TCP보다 좋은 성능을 발휘한다. (데이터가 클수록 차이는 좁혀진다.) 호스트로 수신된 패킷을 PORT 정보를 참조하여 최종 목적지인 UDP 소켓에 전달한다. 멀티미디어 데이터 전송처럼 일부 패킷이 손실돼도 문제없을 경우 좋은 선택이 될 수 있다. TCP가 UDP보다 느린 이유 1. 데이터 송수신 이전, 이후에 거치는 연결설정 및 해제 과정 2. 데이터 송수신 과정에서 거치는 신뢰성 보장을 위한 흐름 제어 /* UDP 기반 에코 서버 */ #..

Network 2020.05.16

TCP (Transmission Control Protocol)

인터넷 프로토콜 기반 소켓에서 데이터 전송방법에 따라 TCP 소켓과 UDP 소켓으로 나뉘는데, TCP 소켓은 연결을 지향하기 때문에 '스트림 기반 소켓'이라고도 한다. TCP와 UPD의 계층은 전송(Transport) 계층이다. TCP 계층은 IP 계층에서 알려준 경로정보를 바탕으로 데이터를 송수신하는데, IP 계층의 경우 하나의 데이터 패킷이 전송되는 과정에만 중심을 두고 설계되었기 때문에 데이터의 주고받음을 확인하고 분실된 데이터에 대한 재전송을 보장하여 데이터 전송에 신뢰성을 부여한 프로토콜이다. TCP 통신에서 신뢰성있는 데이터 송수신을 위해 두 장치 간에 동기를 맞추는 과정이 필요하다. 통신을 시작할 때 -> 3 way handshake 통신을 종료할 때 -> 4 way handshake TCP..

Network 2020.05.15