HTTP(Hypertext Transfer Protocol)
- 웹브라우저, 서버, 웹 애플리케이션 등의 인터넷 공용어
- JPEG 이미지, HTML 페이지, 텍스트 파일, MPEG 동영상, WAV 음성 파일 등 전 세계의 웹서버로부터 이 대량의 정보를 처리하기 위해 사용되는 프로토콜
- HTTP 기저의 통신 특성은 TCP 네트워크 전송 특성이 Base이다.
MIME(Multipurpose Internet Mail)
- 웹에서 사용되는 객체의 다양성을 MIME을 사용하여 구분지을 수 있는 데이터 포맷 라벨.
- MIME은 본래 멀티미디어 이메일을 위해 개발되었지만, 데이터 객체의 구분이 필요한 HTTP 등의 여러 프로토콜에서 재사용된다.
- MIME 타입은 주 타입과 부 타입으로 구분되어지며, '/'을 사용하여 구분한다.
eg) text/html(HTML로 작성된 텍스트 문서), image/jpeg(JPEG 이미지)
멀티 파트형 MIME 타입 구조
- MIME multipart 메시지는 'Content-type' 헤더에 boundary 파라미터를 포함한다.
- Boundary는 다음과 같이 각 메시지 파트를 구분하는 역할을 한다.
URI와 URL에 대한 소개
URI(Uniform Resource Identifier)
- 웹 서버 리소스 대한 고유 식별자.
eg) https://www.naver.com/temp/special.gif
URL(Uniform Resource Locator)
- 웹 서버의 리소스에 대한 구체적인 위치를 나타낸다.
https://news.naver.com/main/main.naver?mode=LSD&mid=shm&sid1=103
- 현재 사용하고 있는 대부분의 URI는 URL이다.
HTTP 버전별 간략 소개
HTTP/1.0
- 1991년 프로토타입 HTTP/0.9 이후 WWW(World Wide Web)이 활성화 되면서 널리 퍼지게 되었다.
- 멀티미디어 컨텐츠에 대한 MIME, HTTP 헤더, 버전 번호, 추가 메서드 등이 추가됨
HTTP/1.1
- 더욱 복잡해진 웹 환경을 지원하기 위해 개발되었다.
- HTTP 설계의 성능 최적화, HTTP 1.0에서 가진 버그 수정/제거
- HTTP/1.0+ 의 Keep-alive 커넥션에 대한 개선 등
HTTP/2.0
- HTTP/1.1이 가진 성능 문제를 개선하기 위해 설계됨
- 구글에서 개발한 SPDY 프로토콜을 기반으로 설계됨
- 구글의 SPDY는 웹 페이지의 로딩 시간을 줄이기 위한 목적으로 설계됨.
: 헤더를 압축하여 대역폭을 절약
: 하나의 TCP 커넥션에 여러 요청을 동시에 전송
: 서버가 클라이언트의 요청을 기다리지 않고 능동적으로 푸쉬
다음 포스팅에서는 TCP 커넥션 관리와 성능 최적화와 관련된 내용으로 이어집니다.
https://kuveminton.tistory.com/49
'💾 공대 라이프 > L4_L7 네트워크' 카테고리의 다른 글
HTTPS 의 등장 배경과 특징(SSL/TLS/암호화/복호화/대칭키/공개키) (0) | 2023.01.23 |
---|---|
HTTP/2.0 의 특징과 등장 배경 (0) | 2023.01.21 |
HTTP 커넥션 관리(HTTP Parallel connection/Persistent Connection/Pipelined Connection) (0) | 2023.01.21 |
HTTP 특징 알아보기 / HTTP TCP 커넥션 관리 / HTTP TCP 성능 지연 및 최적화 (0) | 2023.01.20 |
Ubuntu 20.x.x 버전에 구버전 secureCRT로 SSH 접속하는 방법 (0) | 2023.01.18 |
댓글