Computer Science
[네트워크] 프로토콜이란 무엇인가?
jhkang-dev
2018. 9. 14. 18:18
[프로토콜의 정의]
정의 : 데이터를 성공적으로 주고 받기 위한 일련의 필요한 요소들의 세트.
예제: 전화를 할 때
- 대화의 주제
- 대화를 어떤 수단으로 할 것인지?
- 언제 대화를 할 것인지?
※이렇게 3가지 조건이 맞아야 두 사람간의 대화를 할 수 있다. 프로토콜도 이와 마찬가지로 데이터를 주고 받기 위한 조건 혹은 규약을 뜻한다.
[프로토콜의 필수 요소 3가지]
- Syntax : 데이터 포맷을 말한다. 즉 메시지의 형식과 관련이 있다.
- 데이터 포멧
- 인코딩, 디코딩에 관한 정보
- 시그널 레벨
- Semantic : Response 메시지에 대한 Action.
- Timing : 메시지의 순서
- Speed matching
- Sequencing : 메시지가 만들어진 시퀀스 번호
[프로토콜 모델의 계층구조]
왜 프로토콜에는 계층구조가 필요할까?
[2단계 - 언어 Protocol] : 한국, 중국 철학자는 언어가 맞지 않기 때문에 영어로 번역하여 대화를 한다.
[3단계 - 전화 Protocol] : 먼 거리에서 서로 대화를 주고 받을 수 있는 전화를 사 용하여 대화를 한다.
이렇게 각 Layer마다 독립적인 프로토콜이 있다. 3가지 프로토콜이 모두 있어야 두 철학자는 대화를 할 수 있다.
[계층 프로토콜 모델]
1. Layer는 같은 위치에서 수평적으로 Protocol이 적용된다.
2. 계층과 계층 사이 수직적으로는 Interface가 맺어진다.