- protocol 이란 무엇일까? -
'프로토콜 - protocol'이란 무엇일까요?
직역과 의역으로 나눠 봤습니다.
먼저 직역입니다.
사전을 찾아보면 프로토콜은 다음과 같습니다.
"의례, 협약, 규약, 조약"
한마디로 '약속' 정도로 정리할 수 있겠네요.
다음은 의역입니다.
통신 프로토콜을 쉽게 풀어보면 “나는 이렇게 줄 테니 넌 이렇게 받고 난 네가 준 거 그렇게 받을게” 정도가 되겠네요.
(인용 출처 - https://joshua1988.github.io/web-development/http-part1/)
데이터를 주고받는 방식을 미리 정해 놓은 약속 정도로 정리할 수 있겠네요.
그렇다면 많이 쓰는 프로토콜은
어떤 종류가 있는지 알아봅시다.
- TCP/IP -
TCP/IP는 TCP와 IP를 합쳐서 부르는 말입니다.
IP는 Internet Protocol의 줄임말입니다.
IP는 컴퓨터가 갖는 주소 같은 개념입니다.
한 컴퓨터가 다른 컴퓨터를 찾아가는 방식입니다.
컴퓨터들끼리 묶고, 그 묶음들을 다시 묶는 방식으로 계층을 만들었습니다.
그 중에 내가 찾고 싶은 컴퓨터는 어떤 묶음에 있는지 잘 찾아갈 수 있도록 만들어줍니다.
IP에 대해서는 제가 이전에 쓴 글이 있으므로 찾아보시면 도움이 될 겁니다!
TCP는 아래 영어를 줄인 말입니다.
"Transmission Control Protocol"
이집트 신전을 예로 들어보겠습니다.
이집트에 있던 신전 하나가 물에 잠기게 생겼습니다.
이 신전을 더 높은 곳으로 옮기기로 했습니다.
그런데 문제는 크기입니다.
이 신전을 그대로 옮기기에는 너무 거대한 것이죠.
엄청나게 많은 사람과 엄청나게 큰 운송 수단을 한번에 들여야 합니다.
당연히 이 작업을 하는 동안에는 다른 일을 할 수 없고,
모든 사람이 동시에 스케줄을 맞춰야 합니다.
이런 문제를 해결하려면 신전을 조각조각 나누어서 옮기면 됩니다.
세 대가 놀고 있으면 트럭 세 대만 오면 되고,
열 대가 놀고 있으면 트럭 열 대만 오면 됩니다.
그때 그때 여유 있는 만큼만 투입할 수 있고,
작업 인원도 무리해서 맞출 필요가 없습니다.
대신 조각조각 나누거나 나중에 다시 합칠 때에는
어떤 약속이나 규칙이 있어야겠죠.
데이터도 마찬가지입니다.
크고 거대한 데이터를 한 컴퓨터에서 다른 컴퓨터로 주거나 받으려면
이런저런 부담이 생깁니다.
데이터의 흐름을 독점하게 되고, 도중에 끊기면 안 되고, 등등.
그래서 데이터를 조각조각 나눕니다.
여기서 말하는 데이터 조각을,
한 번쯤 들어 보셨을 법한,
'패킷'이라고 합니다.
이 데이터 조각들, 즉 패킷들을
어떻게 보내거나 받을지 그 방식을 미리 약속해 두었습니다.
이러한 통신 프로토콜을 TCP라고 합니다.
다른 여러 프로토콜이 TCP/IP 위에서 동작합니다.
/참고
IPv4 = Internet Protocol version 4
IPv6 = Internet Protocol version 6
- http -
> 의미
html = Hyper-Text Markup Language
웹 페이지를 만들 때 쓰는 언어
http = Hyper-Text Transfer Protocol
html 데이터를 주고받을 때 쓰는 프로토콜
https = Hyper-Text Transfer Protocol Secure
http에서 보안이 더욱 강화된 프로토콜
URL = Uniform Resource Locators
> html이란?
데이터는 여러 방식으로 해석할 수 있습니다.
어떤 식으로 해석할지 컴퓨터에 알려줘야 합니다.
txt 파일, jpg 파일, mp3 파일 등 확장자도 그 방식 중 하나입니다.
html도 데이터를 쓰고 해석하는 방식입니다.
주로 웹 페이지를 쓰거나 읽을 때 쓰는 언어입니다.
> http는?
앞에서 html이 언어라고 했습니다.
한 컴퓨터와 다른 컴퓨터가 말하고 듣는 언어입니다.
내가 이 컴퓨터에서 html 언어로 웹 페이지를 만들어 두었다면,
완성한 html 언어를 다른 컴퓨터에게 전달해 줘야 합니다.
미국에서 어떤 컴퓨터가 html로 웹 페이지를 완성해 두었다면,
한국에 있는 우리집까지 그 html 언어를 가져와야만
내 컴퓨터에서도 그 웹 페이지를 볼 수 있는 거겠죠.
이렇게 html 언어를 주고받을 때
미리 정해 놓은 방식을 따르자는 약속이 http입니다.
(http도 앞에서 말한 TCP/IP를 바탕에 두고 동작합니다.)
- ftp -
FTP 는 아래 영어를 줄인 말입니다.
"File Transfer Protocol"
FTP는 파일을 주고받을 때 쓰는 프로토콜입니다.
불필요한 단계는 빼 버리고
파일을 주고받는 데에 꼭 필요한 절차만으로 구성하여
파일 교환에 최적화된 프로토콜입니다.
- SMTP+ POP-
> 의미
SMTP = Simple Mail Transfer Protocol
POP = Post Office Protocol
> 참고
통신으로 메일을 주고받을 때 쓰는 프로토콜입니다.
네이버,구글 등에서 메일을 보내고 받을 때도 모두 이 프로토콜을 사용합니다.
다만 겉으로 드러나지도 않고 굳이 알 필요도 없습니다.
각 포털의 메일 서버에 미리 설정돼 있기 때문입니다.
(SMTP와 POP 설정 정보는 보통 각 포털에 공개돼 있습니다).
다만 메일 송수신 전용 프로그램(윈도10 '메일' 앱 등)을 사용하거나,
자체 메일 서버를 구축하여 운영 중인 사용자라면 알아 두어야 합니다.
- DHCP -
DHCP는 아래 영어의 줄임말입니다.
"Dynamic Host Configuration Protocol"
DHCP는 인터넷 주소를 자동으로 할당 받아 설정하는 프로토콜입니다.
인터넷에 접속하려면 일단 나부터가 고유한 주소를 가지고 있어야 합니다.
내 컴퓨터도, 상대방 컴퓨터도 고유한 주소를 가지고 있어야만
서로가 상대방을 알아볼 수 있겠죠.
이러한 주소는 보통 인터넷 통시사들이 할당해줍니다.
그런데 인터넷을 쓰는 사람이 한두 명도 아니고,
또 할당만으로 끝나는 게 아니라 관리도 해줘야 하기 때문에,
일일이 수동으로 처리하기란 굉장히 힘겨운 일입니다.
따라서 인터넷 주소를 자동으로 할당 받아 설정하는
DHCP 프로토콜을 이용합니다.
윈도우를 비롯해 PC용 운영체제는 기본적으로 DHCP 서비스가 자동 실행됩니다.
PC든 스마트폰이든 어떤 기기든, 인터넷에 연결된 채로 통신하려면,
해당 기기에 '인터넷 주소 3종 세트', 즉 IP주소, 게이트웨이 주소, DNS서버 주소가 올바르게 설정돼 있어야 합니다.
참고 자료 : https://it.donga.com/31810/
'통신 네트워크' 카테고리의 다른 글
ssl / tls 란? 뜻과 차이. https 에서 보안 원리 (0) | 2022.03.17 |
---|---|
subnet mask 뜻과 의미 / 서브넷 마스크 란? (0) | 2022.03.17 |
MAC address / ip 주소 차이 (0) | 2022.03.17 |
맥 어드레스 란? (MAC address) - 사과 맥북 그런 거 아닙니다 (0) | 2022.03.17 |