1장 [HTTP 완벽 가이드] HTTP 개관

Summer·2022년 8월 23일
0
post-thumbnail

HTTP 완벽 가이드 라는 책을 보면서 어떤 내용을 공부했는지, 요약 겸 챕터별로 정리해보려한다.

I. HTTP: 웹의 기초

1장 HTTP 개관2장 URL과 리소스3장 HTTP 메시지4장 커넥션 관리
1.1 HTTP: 인터넷의 멀티미디어 배달부2.1 인터넷의 리소스 탐색하기3.1 메시지의 흐름4.1 TCP 커넥션
1.2 웹 클라이언트와 서버2.2 URL 문법3.2 메시지의 각 부분 4.2 TCP의 성능에 대한 고려
1.3 리소스2.3 단축 URL3.3 메서드4.3 HTTP 커넥션 관리
1.4 트랜잭션2.4 안전하지 않은 문자3.4 상태 코드4.4 병렬 커넥션
1.5 메시지2.5 스킴의 바다3.5 헤더4.5 지속 커넥션
1.6 TCP 커넥션2.6 미래3.6 추가 정보4.6 파이프라인 커넥션
1.7 프로토콜 버전2.7 추가 정보4.7 커넥션 끊기에 대한 미스터리
1.8 웹의 구성요소4.8 추가 정보
1.9 시작의 끝
1.10 추가 정보

중요한 내용

웹 Client와 웹 서버는 HTTP 프로토콜로 의사소통을 한다.

HTTP는 웹에서 전송되는 객체 각각에 MIME 타입 이라는 데이터 포맷 라벨을 붙인다
당장 어떠한 사이트에 접속해도 MIME형식인 Content-type을 볼 수 있다.

URI / URL / URN

URI(uniform resource identifier)은 통합 자원 식별자라고 하며, 리소스를 고유하게 식별하는 역할
URI에는 URL과 URN이 속한다.

URL(uniform resource locator)은 통합 자원 지시자라고 하며, 특정 서버의 한 리소스에 대한 구체적인 위치를 서술
Ex) https://velog.io/@yl9517를 예시로 들어보자.

  • https://는 리소스에 접근하기 위해 사용되는 프로토콜 (https 프로토콜 사용)
  • velog.io는 서버의 인터넷 주소
  • /@yl9517은 리소스의 위치

URN(uniform resource name)은 위치에 관계없이 유일무이한 이름 역할

HTTP 메세지

  • 시작줄 : 무엇을 해야하는지, 무슨일이 일어났는지
  • 헤더
  • 본문

프로토콜 계층

HTTP는 애플리케이션 계층 프로토콜

HTTP 통신과정 요약

웹의 구성요소

인터넷과 상호작용하는 웹 애플리케이션

프락시(proxy) : 클라이언트와 서버 사이에 위치한 HTTP 중개자

클라이언트의 모든 HTTP 요청을 받아서 (본인의 할일 후) 서버에 전달
주로 보안을 위해 사용 됨. 중간에서 요청과 응답 필터링을 한다.

일반적으로 크게 포워드 프록시(forward proxy)와 리버스 프록시(reverse proxy)로 나뉘는데, 자세한 내용은 추후에 따로 다루겠다.

캐시 : 많이 찾는 웹페이지를 클라이언트 가까이에 보관하는 HTTP 창고

특별한 종류의 HTTP 프라시 서버.
클라이언트가 한번 이상 요청한 데이터에 대한 정보를 가지고 있으므로, 다음 요청 시 멀리 있는 디스크보다 먼저 데이터를 제공함

게이트웨이 : 다른 애플리케이션과 연결된 특별한 웹 서버

주로 HTTP 트래픽을 다른 프로토콜로 변환하기 위해 사용됨.
게이트웨이는 자신이 진짜 서버인것처럼 요청을 다룸

터널 : 단순히 HTTP 통신을 전달하기만 하는 특별한 프락시

두 커넥션 사이에서 데이터를 그대로 전달해주는 HTTP 애플리케이션.
SSL 프로토콜을 통과시키기 위해 HTTP커넥션으로 전송

에이전트 : 자동화된 HTTP 요청을 만드는 준지능적 웹클라이언트

사용자를 위해 HTTP 요청을 만들어주는 클라이언트 프로그램
Ex) 스파이더, 웹로봇

0개의 댓글