Network

[Network] 프로토콜《Protocol》

|--------3cm--------| 2021. 1. 5. 11:42

Protocol 이란?

서로 다른 기기들간의 데이터 교환을 원활하게 수행할 수 있도록 표준화시켜 놓은 통신 규약입니다.

 

프로토콜의 구성 요소

구문(Syntax)

전송학소자 하는 데이터의 형식, 부호화, 신호 레벨 등을 규정합니다.

 

의미(Semanfics)

두 기기 간의 효율적이고 정확한 정보 전송을 위한 협조 사항과 오류 관리를 위한 제어 정보를
규정합니다.

 

시간(Timing)

두 기기 간의 통신 속도, 메시지의 순서 제어 등을 규정합니다.

 

Protocol

 

주소 지정(Addressing)

통신을 하기 위해서는 통신의 대상이 누구인지를 알아야 데이터를 전송할 수 있으며, 프로토콜에는 각 전송 계층에 맞는 주소를 지정하는 기능이 있습니다.

 

순서 제어(sequence Control)

프로토콜 데이터 단위(Protocol Data Unit, PDU)가 전송될 때 순서를 명시하는 기능이며

연결 지향형(e.g., TCP Protocol)에만 사용합니다.

순서를 지정하는 이유는 흐름 제어, 혼잡 제어, 오류 제어를 위해 사용되며 순서 제어에 의해서

정해진 PDU를 수신 측에 보내면 순서에 맞게 데이터를 재구성합니다.

※ PDU란 데이터가 전송될 일정 크기의 데이터 블록을 말합니다.

 

단편화 및 재조합(Fragmentation & Reassembly)

큰 데이터를 한 번에 전달하는 것은 통신에 있어서 비효율 적이기 때문에 하나의 데이터를

작은 단위로 분할하여 전송 효율을 높여 전송하고 수신 측에서는 해당 데이터를 사용하기

위해 재조립하는 과정을 거칩니다.

 

캡슐화(Encapsulation)

PDU는 PCI(protocol Contorl Unit)와 SDU(Service Data Unit)으로 구성됩니다.

PCI는 각종 헤더 정보(발신지 주소, 수신지 주소, 순서 번호, FCS 등)를 담고 있고 SDU에는

실제 서비스 데이터 정보를 담고 있습니다. 통신을 구성하는 각각의 계층을 통과하기 위해서는

캡슐화를 과정을 거치며, 데이터를 사용하기 위해서는 캡슐화된 데이터는 수신 측에서

역캡슐화 과정을 통해 각각의 계층을 통과합니다.

 

연결 제어(Connection Control)

연결 제어에는 연결 지향형 데이터 전송과 비연결 지향형 데이터 전송이 있습니다.

  가. 연결 지향형 데이터 전송(Connection oriented data transfer)

        두 시스템이 서로 데이터를 교환할 때 연결을 설정하며 연결 설정, 데이터 전송, 연결 해제             3단계(3-Way Handshaking)로 구성되어 있습니다. 연결 제어 패킷을 이용하여

        네트워크 연결을 끊을 수도, 해당 세션을 빼앗을 수도 있습니다. (e.g., TCP)

  나. 비연결 지향형 데이터 전송(Connectionless data transfer)

        데이터 전송 전에 연결을 설정하지 않으며 이렇게 전송되는 데이터를 데이터그램                       (Datagram) 이라고 합니다.  (e.g., UDP)

 

흐름 제어(Flow Control)

흐름 제어는 송신 측에서 오는 데이터의 양이나 속도를 조절하는 기능을 수행합니다.

송신과 수신에 있어서 속도 차이로 인한 데이터의 유실을 방지합니다.

 

오류 제어(Error Control)

PDU로 데이터를 교환할 때 SDU나 PCI가 잘못되었는지 발견하는 기법을 오류 제어라 합니다.

오류 제어는 순서를 검사하거나 특정 시간 안에 데이터를 받지 못하면 재전송을 요구하는 방식으로 구성되어 있습니다.

 

동기화(Synchronization)

송·수신 측 간의 데이터를 주고받는 시점을 정확하게 일치 시키기 위한 기법입니다.

 

다중화(Multiplexing)

하나의 통신 선로에서 시스템이 동시에 통신할 수 있는 기법입니다.

 

전송 서비스

우선순위 결정, 서비스 등급과 같은 보안 요구 등을 제어하는 서비스를 말합니다.

 

 

 

참고 1.
TCP/UDP

참고 2.
OSI 7 계층(OSI 7 Layer)

참고 3.
TCP/UDP 대표 프로토콜