[Network] 통신 프로토콜이란 무엇인가?
- Web/Web Programming
- 2019. 4. 17.
통신 프로토콜의 개념
통신 프로토콜(Communication Protocol)은 서로 다른 기기들 간의 데이터 교환을 원활하게 수행할 수 있도록 표준화시켜 놓은 통신 규약입니다. 통신 프로토콜은 통신을 제어하기 위한 표준 규칙과 절차의 집합으로 하드웨어와 소프트웨어, 문서를 모두 규정하는 말입니다.
※ 통신 프로토콜의 기본 요소
구문(Syntax) : 전송하고자 하는 데이터의 형식, 부호화, 신호 레벨등을 규정
의미(Semantics) : 두 기기 간의 효율적이고 정확한 정보 전송을 위한 협조 사항과 오류 관리를 위한 제어 정보를 규정
시간(Timing) : 두 기기 간의 통신 속도, 메시지의 순서 제어 등을 규정
통신프로토콜의 기능
단편화와 재결합
송신 측에서 전송할 데이터를 전송에 알맞은 일정 크기의 작은 블록으로 자르는 작업을 단편화(Fragmentation)이라 하고, 수신 측에서 단편화된 블록을 원래의 데이터로 모으는것을 재결합(Reassembly)이라고 합니다.
- 단편화를 통해 세분화된 데이터 블록을 프로토콜 데이터 단위라고 합니다.
- 데이터를 단편화하여 전송하면 전송 시간이 빠르고, 통신중의 오류를 효과적으로 제어할 수 있습니다.
- 너무 작은 블록으로 단편화할 경우 재결합 시 처리 시간이 길어지고, 데이터외에 부수적인 데이터가 많아지므로 비효율적입니다.
캡슐화
캡슐화(Encapsulation)는 단편화된 데이터에 송,수신지 주소, 오류 검출 코드, 프로토콜 기능을 구현하기 위한 프로토콜 제어 정보 등의 정보를 부가하는 것으로, 요약화라고도 합니다.
- 대표적인 예가 데이터 링크 제어 프로토콜의 HDLC프레임입니다.
- 정보 데이터를 오류 없이 정확하게 전송하기 위해 캡슐화를 수행합니다.
흐름제어
흐름제어(Flow Control)는 수신 측의 처리 능력에 따라 송신 측에서 송신하는 데이터의 전송량이나 전송 속도를 조절하는 기능입니다. 정지-대기방식, 슬라이딩 윈도우 방식을 이용합니다.
오류제어
오류제어(error Control)는 전송중에 발생하는 오류를 검출하고 정정하여 데이터나 제어 정보의 파손에 대비하는 기능입니다.
동기화
동기화(Synchroniztion)는 송, 수신 측이 같은 상태를 유지하도록 타이밍(Timing)을 맞추는 기능입니다.
순서제어
순서제어(sequencing)는 전송되는 데이터 블록(PDU)에 전송 순서를 부여하는 기능으로, 연결 위주의 데이터 전송 방식에만 사용됩니다. 송신 데이터들이 순서적으로 전송되도록 함으로써 흐름 제어 및 오류 제어를 용이하게 하는 기능을 합니다.
주소지정
주소지정(Addressing)은 데이터가 목적지까지 정확하게 전송될 수 있도록 목적지 이름, 주소, 경로를 부여하는 기능입니다. 목적지 이름은 전송할 데이터가 가리키는곳, 주소는 목적지의 위치, 경로는 목적지에 도착할 수 있는 방법을 의미합니다.
다중화
다중화(Multiplexing)는 한개의 통신 회선을 여러 가입자들이 동시에 사용하도록 하는 기능입니다.
경로제어
경로제어(Routing)는 송, 수신 측 간의 송신 경로 중에서 최적의 패킷 교환 경로를 설정하는 기능입니다.
전송 서비스
전송하려는 데이터가 사용하도록 하는 별도의 부가 서비스입니다.
- 우선순위 : 특정 메시지를 최대한 빠른 시간 안에 목적지로 전송하기 위하여 메시지 단위에 우선순위를 부여하여 우선순위가 높은 메시지가 먼저 도착하도록 합니다.
- 서비스 등급 : 데이터의 요구에 따라 서비스 등급을 부여하여 서비스합니다.
- 보안성 : 액세스 제한과 같은 보안체제를 구현합니다.
프로토콜의 전송방식
프로토콜은 전송하고자 하는 데이터 프레임의 구성에 따라 문자방식, 바이트 방식, 비트 방식으로 구분할 수 있습니다.
- 문자 전송 방식 : 전송 제어 문자를 사용하여 데이터 프레임의 시작과 끝을 나타내는 방식으로 대표적인 프로토콜로 BSC가 있습니다.
- 바이트 방식 : 데이터 프레임의 헤더(Header)에 전송 데이터 프레임의 문자 개수, 메시지 수신상태등의 제어 정보를 삽입하여 전송하는 방식으로, 대표적인 프로토콜로 DDCM이 있습니다.
- 비트 방식 : 데이터 프레임의 시작과 끝을 나타내는 고유한 비트 패턴(플래그)을 삽입해서 전송하는 방식으로 대표적인 프로토콜로 HDLC와 SDLC, LAPB가 있습니다.
'Web > Web Programming' 카테고리의 다른 글
[Network] X.25란 무엇인가? (0) | 2019.04.19 |
---|---|
[Network] OSI의 7계층 총 정리 (2) | 2019.04.18 |
[Network] 여러가지 네트워크 장비종류 (0) | 2019.04.16 |
[Network] 인터넷(Internet)이란 무엇인가? (0) | 2019.04.15 |