728x90
HTTP란?
💡 하이퍼텍스트 전송 프로토콜(HTTP)
HTML 문서와 같은 리소스들을 가져올 수 있도록 해주는 프로토콜입니다. 클라이언트-서버 기반 프로토콜이며, 웹에서 이루어지는 모든 데이터 교환의 기초입니다.
- 처음에는, WWW(World Wide Web) 상의 하이퍼텍스트 형태의 문서를 전달하는데 주로 이용
- 현재에는, 이미지,비디오,음성 등 거의 모든 형식의 데이터 전송 가능
클라이언트(Client) 시스템에서 서버에 요청(Request)한 다음 서버(Server)에서 응답(Response) 메시지를 보내는 작업의 흐름에서 HTTP가 작용
HTTP로 캐시 혹은 인증 메서드, origin 제약 사항 완화, 프록시와 터널링 등의 기능을 추가로 사용할 수 있습니다.
- 캐시
- HTTP로 문서가 캐시되는 방식을 제어할 수 있습니다. 서버는 캐시 대상과 기간을 프록시와 클라이언트에 지시할 수 있고 클라이언트는 저장된 문서를 무시하라고 중간 캐시 프록시에게 지시할 수 있습니다.
- origin 제약사항을 완화하기
- 스누핑과 다른 프라이버시 침해를 막기 위해, 브라우저는 웹 사이트 간의 엄격한 분리를 강제합니다. 동일한 origin으로부터 온 페이지만이 웹 페이지의 전체 정보에 접근할 수 있죠. 그런 제약 사항은 서버에 부담이 되지만, HTTP 헤더를 통해 그것을 완화시킬 수 있습니다. 그런 덕분에 문서는 다른 도메인으로부터 전달된 정보를 패치워크할 수 있습니다(그렇게 하려면 어떤 경우에 보안과 관련된 사항이 있을 수도 있습니다).
- 인증
- 어떤 페이지들은 보호되어 오로지 특정 사용자만이 그것에 접근할 수도 있습니다. 기본 인증은 HTTP를 통해 [WWW-Authenticate (en-US)](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/WWW-Authenticate) 또는 유사한 헤더를 사용해 제공되거나, HTTP 쿠키를 사용해 특정 세션을 설정하여 이루어질 수도 있습니다.
- 프록시와 터널링 (en-US)
- 서버 혹은 클라이언트 혹은 그 둘 모두는 종종 인트라넷에 위치하며 다른 개체들에게 그들의 실제 주소를 숨기기도 합니다. HTTP 요청은 네트워크 장벽을 가로지르기 위해 프록시를 통해 나가게 되죠. 모든 프록시가 HTTP 프록시는 아닙니다. 예를 들면 SOCKS 프로토콜은 좀 더 저수준에서 동작합니다. FTP와 같은 다른 프로토콜도 이 프록시를 통해 처리될 수 있습니다.
- 세션
- 쿠키 사용은 서버 상태를 요청과 연결하도록 해줍니다. 이것은 HTTP가 기본적으로 상태없는 프로토콜임에도 세션을 만들어주는 계기가 됩니다. 이것은 e-커머스 쇼핑 바구니를 위해서 유용할 뿐만 아니라 사용자 구성을 허용하는 모든 사이트에 대해서 유용합니다.
'Computer Science > 네트워크' 카테고리의 다른 글
OSI 7계층과 TCP/IP 4계층 비교 (0) | 2023.12.21 |
---|---|
HTTP request method (0) | 2023.09.27 |
CORS란 무엇인가? (0) | 2023.09.23 |
TCP/IP 계층에서 데이터 송수신 과정 (0) | 2023.08.29 |
TCP/IP 4계층 (0) | 2023.08.29 |