HTTP란?

hyoJeong·2021년 9월 15일
0

네트워크

목록 보기
2/2

HTTP란?

  • HTML문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜이다.
  • 웹상에서 클라이언트와 서버 간 통신을 위한 프로토콜이다.

->웹에서 이루어지는 모든 데이터 교환의 기초
-> 클라이언트-서버 프로토콜이기도 하다.
(클라이언트-서버 프로토콜이란? 클라이언트에 의해 요청이 시작되는 것)

->클라이언트에 의해 전송되는 메시지를 요청(request), 서버에서 응답으로 전송되는 메시지를 응답(response)라 한다.
->HTTP는 애플리케이션 계층의 프로토콜이며 확장가능한 프로토콜이다.
->신뢰가능한 전송 프로토콜이라면 무엇이든 사용할 수 있으나 TCP 혹은 암호화된 TCP연결인 TSL를 통해 전송된다.
->클라이언트의 요청은 서버로 보내지고 서버는 이를 처리하고 응답이라는것을 제공한다.
->클라이언트와 서버 사이에는 게이트웨이 또는 캐시 역할을 수행하는 프록시라고 하는 여러 개체들이 있다.

HTTP의 특징

1.HTTP는 간단하다.
->HTTP는 HTTP메시지를 프레임에 캡슐화함으로써 단순하고 사람이 읽을수 있도록 설계되어있다.
2.HTTP 는 확장가능하다.
->HTTP/1.0에 도입된 HTTP헤더는 HTTP프로토콜을 쉽게 확장할 수 있도록 만들었다
3.HTTP는 Stateless이지만 sessionless는 아니다.

HTTP메시지

1.HTTP Request 예시

  • Method: 보통 클라이언트가 수행하고자 하는 동작을 정의한 GET,POST같은 동사나 OPTIONS나 HEAD와 같은 명사가 쓰여있다.
  • PATH: 가져오려는 리소스 경로, 프로토콜(http://),도메인,TCP포트의 요소를 제거한 리소스 URL이 쓰여있다.
  • Version of the protocol: HTTP프로토콜 버전
    *Headers: 서버에 대한 추가 정보를 전달
  1. 응답의 예시
  • Version of the protocol: HTTP프로토콜의 버전
  • Status code: 요청의 성공여부를 나타냄
    (100~199 정보응답, 200~299 성공적인 응답,300~399 Redirects,400~499클라이언트 오류,
    서버 오류 500~599)
  • Status message: 상태 코드에 대한 간단 메시지
  • Headers: 추가 정보
  • 위의 사진에는 없지만 선택사항으로 가져온 리소스가 포함된 본문

Reference

0개의 댓글