브라우저-서버가 통신할 수 있도록 만들어주는 여러 프로토콜 가운데 한 종류.
** Protocol : 통신규약, 즉 약속이다.
손님이 주문을 받는 사람에게 대뜸 찾아가 외계어로 주문을 할 수 없듯이, 주문을 하기 위해서는 꼭 지켜야 하는 약속이 존재.
** 웹 애플리케이션 아키텍쳐에서는, 클라이언트와 서버가 서로 HTTP라는 프로토콜을 이용하여 대화를 나눈다.
[ Client --> Server ]
< HTTP messages - request >
GET /americano HTTP/1.1
Host: starbucks.com
[ Server --> Client ]
< HTTP messages - response >
HTTP/1.1 200 OK
{"data": "americano"}
HTTP를 이용해 주고받는 메시지 : HTTP message
1> 방법 측면
[ Case Study: 커피주문 ]
커피를 주문할 수 있는 여러가지 방법 --> 서버와 통신할 수 있는 다양한 방법(다양한 프로토콜)이 존재
- 프로토콜1 : 직접 카운터로 찾아감
- 프로토콜2 : 모바일 앱 이용
- 프로토콜3 : 키오스크
방법 하나하나가 전부 프로토콜.
같은 일을 하기위해 '다양한 방법'이 존재.
클라이언트-서버 통신을 하기위해 HTTP, HTTPS 등 방법이 다양한 것 처럼.
2> 규약 측면
제대로 된 통신을 위해서는 규약(약속)을 지켜야만 한다.
우편 발송 시, 수신자에 대한 아무런 표기가 없다면 전송 요청은 갈길을 읽는다. 또한, 수신자를 적어도 우표를 붙이지 않으면 반송이된다.
프로토콜 : 각자의 프로토콜마다 지켜야 하는 규약 존재.
HTTP Message : HTTP만의 규칙 존재.
[주요 프로토콜]
1. 2. .... 7. 응용 계층
- HTTP : 웹에서 HTML, JSON 등의 정보를 주고받는 프로토콜
- HTTPS : HTTP에서 보안이 강화된 프로토콜
- FTP : 파일 전송 프로토콜
- ...
'Network' 카테고리의 다른 글
HTTPS 통신과정 (0) | 2021.11.04 |
---|---|
[얄팍한 코딩사전] HTTP는 뭘까? (0) | 2021.11.04 |
HTTP Messages (0) | 2021.09.23 |
브라우저의 작동 원리 (보이지 않는 곳) 1. URL & URI (0) | 2021.09.23 |
API & REST API 개념 (0) | 2021.09.22 |