TCP란
- 서버와 클라이언트간에 데이터를 신뢰성 있게 전달하기 위해 만들어진 프로토콜이다
- 데이터를 네트워크통신때 노드를 찾아가는 과정에서 손실되거나 순서가 바뀌어서 전달될 수 있는데 TCP는 손실을
검색해서 교정하고 순서를 재조합 할수 있도록 도와준다
- TCP는 앞서 봤던 ip통신의 문제점을 해결해 준다
TCP특징
- TCP 3 way handshake (가상연결)
일단 연결을 한 다음에 데이터를 전송한다 - 데이터 전달 보증
데이터의 전달의 성공여부를 알수 있다 - 순서 보장
여러 데이터의 전달 순서를 보장받을 수 있다
TCP/IP 패킷 정보
실제로 TCP통신의 데이터이다
IP패킷은 출발지 목적지의ip주소 등을 받고 , 클라이언트와 서버의 컨넥션이 일어나면
보내지는 데이터(TCP세그먼트) 포트, 순서 , 데이터 등의 정보의 송수신이 발생이된다
3 way handshake
TCP의 통신방식은 클라이언트와 서버가 연결되야하는데 이 과정을 connection이라고 한다
클라이언트에서 SYN를 통해 접속요청을 보내고 서버에서는 접속요청(SYN)과 ACK요청수락을 보낸다
그리고 클라이언트에서는 서버에서부터 받은 ACK의 응답을 보고 수락(ACK)와 함께 데이터를 전송한다
그 후로는 connection이 유지되어 있으면 데이터를 전송하는 형식이 된다
데이터전달 보증
3way handshake이후에 데이터 전송시 서버에서 데이터를 잘 받았는지 상태코드로 보내준다
순서보장
서버에서 데이터를 받았을 때 전달받은 데이터의 순서가 다르다면 올바른 순서 이외의 데이터는 버리고 순서가 이상한 데이터부터
클라이언트한테 데이터를 재수신 요청을 한다
UDP란
- 비연결형 신뢰성이 없는 전송 프로토콜이다
- ip프로토콜 형식과 비슷하다
UDP특징
- 기능의 거의 없음
- 연결지향적 ≠ TCP 3 way handshake
- 데이터전달 보증하지 않음
- 순서보장 안함
- TCP에비해 빠름(3way handshake, 데이터전달보증, 순서보장 의 처리를 하지 않아서 데이터정보량, 순서가 단축)
'it > httpCommunication' 카테고리의 다른 글
웹브라우저(URI) (0) | 2022.06.29 |
---|---|
인터넷통신(DNS) (0) | 2022.06.29 |
인터넷통신(PORT) (0) | 2022.06.29 |
인터넷 통신(IP Protocol) (0) | 2022.06.29 |
인터넷 네트워크 (0) | 2022.06.29 |