-
HTTP는 하이퍼텍스트 전송 프로토콜이다.
-
HTTP는 1989년부터 1991년에 발명되었다.
-
HTTP는 월드 와이드 웹(www)에 내제된 프로토콜이다.
-
HTTP는 인터넷에서 데이터를 주고 받을 수 있는 프로토콜이다.
-
웹 페이지를 방문할 때마다 컴퓨터는 HTTP를 사용하여 인터넷 어딘가에 있는 다른 컴퓨터에서 해당 페이지를 다운로드한다.
http:// ......
- 프로토콜은 규칙(약속)이란 의미이다.
- 컴퓨터 네트워크(관계망)에서 데이터를 주고받을 때, 이러한 규칙에 맞춰 개발함으로써 서로 정보를 교환할 수 있게 된 것이다.
- 컴퓨터 네트워크에서 데이터를 보내고 받는 성격에 따라 프로토콜이 만들어졌다.
- 웹 문서를 주고 받을 때는 HTTP를 사용해야하고 파일을 주고 받을 때는 FTP, 메일은 SMTP , POP 등 전송 계층과 유형에 따라 다양하게 만들어져있다.
- 클라이언트, 서버 모두 HTTP를 이용해 통신 하므로 웹 개발자라면 HTTP를 잘 알아야한다.
- 에러를 해결하는데도 HTTP 지식이 중요하다.
- www 란 웹 페이지를 네트워크 상에서 이용하기 위한 구조를 말한다.
- www 는 실험실에서 파일을 교환하기 위해 1989년부터 1991년에 발명되었다.
- www에서는 http라는 통신방식(프로토콜)에 기초하여 주고받기가 실행된다.
- www는 네 개로 구성되어있다.
- 하이퍼텍스트 문서를 표한하기 위한 텍스트 형식의 언어 및 파일인 HTML
- 인터넷 상에서 문서 등을 교환하기 위한 프로토콜 HTTP
- 문서에 접근하도록 해주는 HTTPD의 초기 버전, 즉 HTTP를 지원하는 서버(웹 서버를 구축하다는 말은 HTTPD를 수행시킨다는 말과 같다.)
- 클라이언트 서버 구조
- 무상태 프로토콜
- 비 연결성
- http 메세지
- 단순함, 확장가능
- TCP/IP의 경우 기본적으로 연결을 유지한다
- 연결을 유지하는 모델에서는 클라이언트가 요청을 보내지 않더라도 계속 연결을 유지해야 한다.
- 이러한 경우 연결을 유지하는 서버의 자원이 계속 소모된다.
- 비 연결성을 가지는 http에서는 실제로 요청을 주고 받을 때만 연결을 유지하고 응답을 주고나면 TCP/IP 연결을 끊는다.
- 이럴 통해 최소한의 자원으로 서버 유지를 가능하게 한다.
-
비 연결성은 다음과 같은 한계를 가진다.
- TCP/IP 연결을 새로 맺어야함.
- 웹 브라우저로 사이트를 요청하면 HTML 뿐만 아니라 JavaScript, CSS, 추가 이미지 등 수많은 자원이 함께 다운로드 된다.
-
해당 자원들을 각각 보낼때마다 연결끊고 다시 연결하고를 반복하는 것은 비효율적이기 때문에 지금은 http 지속 연결로 문제를 해결한다.
-
HTTP/2,HTTP/3 에서 더 많은 최적화
-
http 초기 - 연결, 종료 낭비
- http 초기에는 각각의 자원을 다운로드하기 위해 연결과 종료를 반복해야 했다.
-
http 지속 연결
- http 지속 연결에서는 연결이 이루어지고 난 뒤 각각의 자원들을 요청하고 모든 자원에 대한 응답이 돌아온 후에 연결을 종료한다.