Web Protocol이란 웹에서 쓰이는 통신규약으로 컴퓨터나 원거리 통신 장비 사이에서 메시지를 주고 받는 양식과 규칙의 체계
를 의미한다. 즉, 통신을 할때 내가 이렇게 할게 너는 이렇게 해줘 라고 약속하는 것이라고 생각하면 된다.
웹에서 웹 페이지를 정의하고 접근하기 위해 URL 을 사용한다. URL의 일반적인 형식은 아래의 예시를 살펴보자.
protocol://computer_name:port/document_name?parameters
이 예시를 뜯어보면 5가지로 나눠볼 수 있다.
위에서 본 예시를 토대로 아래의 주소를 해석해보면,
와 같은 해석이 가능하다. 그렇다면 Web Protocol 종류에는 무엇이 있는지 알아보자.
Hypertext Transfer Protocol
HTTP는 서버와 클라이언트가 인터넷상에서 데이터를 주고 받기 위한 주요 프로토콜
HTTP는 웹 서버와 브라우저가 파일 등의 정보를 송수신하는데 사용하는 클라이언트와 서버 프로토콜이다.
HTML 문서
를 주고 받는데 사용한다.
- GET : 정보를 요청하기 위해 사용한다.(SELECT)
- POST : 정보를 밀어넣기 위해서 사용한다.(INSERT)
- PUT : 정보를 업데이트하기 위해서 사용한다.(UPDATE)
- DELETE : 정보를 삭제하기 위해서 사용한다.(DELETE)
- HEAD : (HTTP)헤더 정보만 요청한다. 해당 자원이 존재하는지 혹은 서버에 문제가 없는 지를 확인하기 위해서 사용한다.
- OPTIONS : 웹서버가 지웒나느 메서드의 종류를 요청한다.
- TRACE : 클라이언트의 요청을 그대로 반환한다. 예컨데 echo서비스로 서버상태를 확인한기 위한 목적으로 주로 사용한다.
장점
불특정 다수를 대상으로 하는 서비스에 적합. 계속 서버와 클라이언트의 연결상태를 유지하는 게 아니기때문에 클라이언트와 서버간의 최대 연결수보다 훨씬 많은 요청과 응답을 처리 가능
단점
연결을 끊어버리기 때문에 클라이언트의 이전상황을 알 수 없음
⇒ Stateless상태
이런 Stateless특징 때문에 정보를 유지하기위해 Cookie와 같은 기술이 등장
Transmission Control Protocol
인터넷상에서 데이터를 메세지의 형태로 보내기 위해 IP와 함께 사용하는 프로토콜
User Datagram Protocol
데이터를 데이터그램 단위로 처리하는 프로토콜
File Transfer Protocol
TCP/IP 프로토콜을 가지고 서버와 클라이언트 사이의 파일 전송을 하기 위한 프로토콜
Simple Mail Transfer Protocol
메일 전송 프로그램이 서버로 메일을 보낼 때 사용하는 프로토콜이다. 오직 텍스트만 전송이 가능한 것이 특징이고, 스트림 방식을 이용하여 전송
Multi-purpose Internet Mail Extensions
SMTP 로 전송시 이메일에 텍스트 밖에 포함하지 못하는 단점을 보완하여, 메시지 안에 텍스트 이외의 데이터를 전송할 수 있는 프로토콜