728x90
TCP : 전화와 유사 UDP : 라디오와 유사
일대일 연결만 가능 일대다 연결도 가능
손실되면 재전송 요청을 하므로 신뢰도가 높음 정보를 받았는지 확인치 않고 일방적으로 보냄
데어터의 순서와 무결성이 보장됨 데이터의 순서와 무결성을 보장하지 않음
속도가 상대적으로 느림 속도가 상대적으로 빠름
높은 신뢰도를 요하는 서비스에 적합 IPTV, 스트리밍 서비스에 적합

 

TCP Handshake

3 way handshake

3 way handshaking

연결할때는 3 way handshake를 이용해서 클라이언트와 서버가 총 3번 악수해서 연결이 잘되었다는 것을 확인한다.

 

4 way handshake

4 way handshaking

끊을 때는 4way handshake를 이용해서 끊겠습니다 -> 알겠습니다 -> 저도 끊겠습니다 -> 저도 알겠습니다 순서로  연결을 끊게 된다

 

HTTP (Hyper Text Transfer Protocol)

TCP/IP 위에서 전송하는 데이터의 규격에 대한 약속

 

HTTP의 특징

  • 단방향성 : 클라이언트가 서버에 요청을 보내고 이에 대한 응답을 받는 단방향적 통신 (서버가 클라이언트로 먼저 요청을 보낼 수 없다)
  • 비연결성 : 연결이 계속 유지되지 않고 요청에대한 응답이 끝나면 소켓을 끊는다 (소켓 통신과 반대되는 특징)
  • 무상태성 : 클라이언트가 서버와 연결된 상태가 아니기 때문에 기본적으로 상태를 가지지 않음. 이를 보완하기 위해 쿠키, 세션, 토큰을 사용함

 

HTTP Header의 구조

  • URL
  • HTTP 메소드
  • 응답 코드
  • IP 주소
  • 응답 헤더
    • contenth-length
    • date
    • server
  • 요청 헤더

https://velog.io/@sanspareilsmyn/6.-HTTP-Header

 

HTTP 캐시

응답의 헤더를 통해 컨텐츠 길이, 캐시의 유효시간, ETag를 전송한다.

 

캐시의 유효시간이 지나면 서버로부터 다시 읽어들이는데, 이 때 서버의 응답과 캐시로 가지고 있던 컨텐츠의 ETag가 같다면 업데이트하지 않는다.

 

'HTTP' 카테고리의 다른 글

HTTP 1.0 / 1.1 / 2  (0) 2021.07.23
AJAX  (0) 2021.03.07
CSR vs SSR  (0) 2021.02.10
RESTful API 란?  (0) 2021.01.16

+ Recent posts