커피 주문 시에 카운터 주문, 키오스크, 모바일 앱 이용 등 여러가지 방법으로 주문을 할 수 있다.
이처럼 같은일을 하기 위해 여러가지 방법이 존재하는데 이를 프로토콜이라고 부른다.
하지만 주문 시에 외계어로 주문을 하면 주문이 되지 않는 것처럼 프로토콜 또한 제대로 된 통신을 위해서는 지켜야하는 규약(약속)이 있다.
주요 프로토콜
OSI 7 Layers는 컴퓨터공학과 네트워크에서 자주 등장하는 개념이다.
아래는 주요 프로토콜 중 어떤 계층에 속해있는지 나타내고 있다.
프로토콜 이름 | 설명 |
---|---|
TCP | HTTP, FTP 통신의 등의 근간이 되는 인터넷 프로토콜 |
UDP | (양방향의 TCP와는 다르게) 단방향으로 작동하는 훨씬 더 단순하고 빠르지만, 신뢰성이 낮은 인터넷 프로토콜 |
프로토콜 이름 | 설명 |
---|---|
HTTP | 웹에서 HTML, JSON 등의 정보를 주고받는 프로토콜 |
HTTPS | HTTP에서 보안이 강화된 프로토콜 |
FTP | 파일 전송 프로토콜 |
SMTP | 메일을 전송하기 위한 프로토콜 |
SSH | CLI 환경의 원격 컴퓨터에 접속하기 위한 프로토콜 |
RDP | Window 계열의 원격 컴퓨터에 접속하기 위한 프로토콜 |
WebSocket | 실시간 통신, Push 등을 지원하는 프로토콜 |
API는 Application Programming Interface의 약자로,
보통 인터넷에 있는 데이터 요청 시에 HTTP 프로토콜을 사용한다.
HTTP 프로토콜은 웹 개발에서 사용하는 대표적인 프로토콜이며 기본 포트로 80을 사용한다.
HTTP 요청 메서드
GET
메서드는 특정 리소스의 표시를 요청. 오직 데이터 받는 용으로 사용
HEAD
GET 메서드의 요청과 동일한 응답을 요구하지만, 응답 본문을 포함하지 않음
POST
특정 리소스에 엔티티를 제출. 이는 종종 서버의 상태의 변화나 부작용을 일으킴
PUT
목적 리소스 모든 현재 표시를 요청 payload로 변경
DELETE
특정 리소스 삭제
CONNECT
목적 리소스로 식별되는 서버로의 터널을 맺음
OPTIONS
목적 리소스의 통신 설정
TRACE
목적 리소스의 경로를 따라 메시지 loop-back 테스트
PATCH
리소스의 부분 수정
참조 : https://developer.mozilla.org/ko/docs/Web/HTTP/Methods
URL
은 Uniform Resource Locator의 줄임말로, 네트워크 상에서 웹 페이지, 이미지, 동영상 등의 파일이 위치한 정보
URI
는 Uniform Resource Identifier의 줄임말로, 일반적으로 URL의 기본 요소인 scheme, hosts, url-path에 더해 query, fragment를 포함
부분 | 명칭 | 설명 |
---|---|---|
file://, http://, https:// | scheme | 통신 프로토콜 |
127.0.0.1(로컬PC), www.google.com | hosts | 웹 페이지, 이미지, 동영상 등의 파일이 위치한 웹 서버, 도메인 또는 IP |
:80, :443, :3000 | port (서버 진입 통로) | 웹 서버에 접속하기 위한 통로 |
/search, /Users/username/Desktop | url-path | 웹 서버의 루트 디렉토리로부터 웹 페이지, 이미지, 동영상 등의 파일이 위치까지의 경로 |
q=JavaScript | query | 웹 서버에 전달하는 추가 질문 |