Computer Science/Computer Networks

[Computer Networks] 프로토콜(Protocol)이란?

HelloMinchan 2022. 12. 20. 18:53

네트워크 공부를 시작하며, 계속 사용되는 단어인 프로토콜을 알아보자!

 

먼저 위키피디아를 보자,

A communication protocol is a system of rules that allows two or more entities of a communications system to transmit information via any kind of variation of a physical quantity. The protocol defines the rules, syntax, semantics and synchronization of communication and possible error recovery methods. Protocols may be implemented by hardware, software, or a combination of both.

통신 프로토콜이란 둘 이상의 통신 시스템에서 정보를 주고받는 규칙, 규약이라는 것이 핵심이다.

위 그림을 보고 좀 더 쉽게 이해를 해보자,

 

왼쪽을 보면 어떤 두 사람이 시간을 물어보는 대화를 하고 있다.

놀랍게도 이 프로토콜을 공부하며 깨닫게 된 사실인데.. 보통 사람 간의 대화가 시작될 때 본론을 먼저 말하기보다 인사 혹은 안부로 대화의 시작이 진행되는 걸 알 수 있다.

 

1. A가 B에게 안녕?이라고 함.

2. B가 A에게 안녕.이라고 함.

3. 몇 시냐고 물어봄.

4. 2시라고 대답함.

(이 대화의 과정을 규칙이라고 해보자.)

 

만약 A가 B에게 "안녕?"이라고 물어봤는데 B에게 대답이 돌아오지 않는다면 본론은커녕 대화를 시작할 수 조차 없다...

 

오른쪽을 보면 네트워크 통신 사이에서도 이러한 규칙이 적용되는데,

먼저, 클라이언트가 호스트인 서버에게 TCP 연결 요청을 보내고("안녕?"과 같은 행위) 서버가 TCP 연결 응답("안녕.")을 보내줘야 클라이언트가 GET 요청을 보낼 수 있는 것이다.

 

바로 이와 같은 대화의 과정 즉, 통신 규칙프로토콜이라 하는 것이다.