HTTP(4)
-
HTTP 메시지 구조
HTTP 구조 HTTP 요청 메시지 HTTP 응답 메시지 1. 시작라인 요청 메시지일 경우 request-line 응답 메시지일 경우 status-line request-line method SP(공백) request-target SP HTTP-version CRLF(엔터) status-line HTTP-version SP status-code SP reason-phrase CRLF 2. 헤더 field-name “:” OWS field-value OWS (OWS:띄어쓰기 허용) HTTP 전송에 필요한 모든 부가정보 예) 메시지 바디의 내용, 메시지 바디의 크기, 압축, 인증, 요청 클라이언트(브라우저) 정보, 서버 애플리케이션 정보, 캐시 관리 정보… 3. 공백 헤더와 바디 사이에 공백이 필수 4. 바..
2021.01.12 -
HTTP 지속연결
1. 비지속 연결 자원 하나 하나 요청건에 대해서 연결을 시도(3 way handshake)하여 요청함. 예를 들어 HTML파일을 하나 요청하여 서버에서 자원을 받았을때, 해당 HTML이 필요로 하는 JS를 다시 요청하기 위해 새로운 연결을 시도하여 JS를 받고, 또 해당 JS가 필요로 하는 이미지를 받기 위해 새로운 연결을 시도하여 이미지를 받고………..계속 자원을 요청할때마다 새로운 연결을 시도하는 방식. 연결시도 횟수가 많아 비효율적. 2. 지속 연결 자원 하나를 요청했을때 이와 묶여있는 모든 자원을 요청하기 위해 연결을 유지한 상태. 클라이언트는 서버에서 응답이 오기전에 자원을 연속적으로 요청할 수 있고 서버는 연속적으로 응답할 수 있다.(파이프라이닝) 연결시도 횟수가 줄어들어 효율적. HTTP ..
2021.01.12 -
STATELESS, STATEFUL
HTTP의 특징중 하나는 STATELESS(무상태)이다. STATELESS — 서버는 클라이언트의 상태를 보존하지 않는다. 장점: 서버 확작성이 높다(스케일 아웃) 단점: 클라이언트의 추가 데이터 전송 STATEFUL 고객(클라이언트) — 아메리카노 주세요. 알바1(서버1) — 아이스로 드릴까요? 따뜻한걸로 드릴까요? 고객(클라이언트) — 아이스로 주세요. 알바1(서버1) — 네 여기 있습니다. 알바1이 고객이 아메리카노를 주문한 사실을 알고 있다. STATEFUL 문제점 — 중간에 서버가 변경되면? 고객(클라이언트) — 아메리카노 주세요. 알바1(서버1) — 아이스로 드릴까요? 따뜻한걸로 드릴까요? 고객(클라이언트) — 아이스로 주세요. 알바2(서버2) — 어떤 음료를 아이스로 드릴까요? 알바2는 고객..
2021.01.12 -
IP, TCP, UDP 간단 정리
TCP/IP 4계층 애플리케이션 계층 — HTTP, FTP 전송 계층 — TCP, UDP 인터넷 계층 — IP 네트워크 엑세스 계층 — Ehternet(이더넷) 1. IP — 인터넷 프로토콜 지정한 IP 주소(IP Address)에 데이터 전달 패킷(Packet)이라는 통신 단위로 데이터 전달 하지만 IP 프로토콜은 패킷의 순서 보장도 할 수 없고 패킷이 중간에 유실되도 이에대한 방안이 없다. 2. TCP — 전송 제어 프로토콜(Transmission Control Protocol) 연결지향 — TCP 3 way handshake (가상 연결) 데이터 전달 보증 순서 보장 신뢰할 수 있는 프로토콜 현재는 대부분 TCP 사용 3. UDP — 사용자 데이터그램 프로토콜(User Datagram Protoco..
2021.01.12