본문 바로가기
  • 꾸준히 앞으로
정리 log/용어 · 개념

[네트워크] 프로토콜

by lijly 2020. 5. 25.

프로토콜

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

 

컴퓨터-컴퓨터 통신이나 원거리 통신 장비들끼리 통신 할 때
"데이터 구조는 이런 식으로 해서 주고 이건 이런 의미고, 속도는 이 정도로 보내줘" 라고 약속하는 것을 말합니다.

  • 통신을 제어하기 위한 표준 규칙과 절차의 집합으로 하드웨어와 소프트웨어, 문서를 모두 규정

 

기본 요소

구문(Syntax) 의미(Semantics) 시간(Timing)
전송하고자 하는 데이터의 형식, 부조화, 신호 레벨 등을 규정 두 기기 간의 효율적이고 정확한 정보 전송을 위한 협조 사항과 오류 관리를 위한 제어 정보를 규정 두 기기 간의 통신 속도, 메시지 순서 제어 등을 규정

 

  • 기능
    1. 단편화(Fragmentation)와 재결합(Reassembly)
      🤖
      단편화란?
      송신 측에서 전송할 데이터를 전송에 알맞는 일정 크기의 작은 블록으로 자르는 작업

      재결합이란?
      수신 측에서 단편화된 블록을 원래의 데이터로 모으는 것

      데이터를 단편화하여 전송하면 👍

      • 전송 시간이 빠르고,
      • 통신중의 오류를 효과적으로 제어할 수 있다.

      너무 작은 블록으로 단편화할 경우 😅

      • 재결합 시 처리 시간이 길어지고,
      • 실제 데이터 외에 부수적인 데이터가 많아지므로 비효율적
      💡
      단편화를 통해 세분화된 데이터 블록을
      프로토콜 데이터 단위(PDU, Protocol Data Unit)라고 한다.

       

    1. 캡슐화(Encapsulation)
      🤖
      단편화된 데이터에 송·수신지 주소, 오류 검출 코드,
      프로토콜 기능을 구현하기 위한 프로토콜 제어 정보 등의 정보를 부가하는 것

      = 요약화라고도 한다.
      • 정보 데이터를 오류 없이 정확하게 전송하기 위해 캡슐화 수행
      • 대표적인 예 : 데이터 링크 제어 프로토콜의 HDLC 프레임

       

    1. 흐름 제어(Flow Control)
      🤖
      수신 측의 처리 능력에 따라 송신 측에서 송신하는 데이터의 전송량이나 전송 속도를 조절하는 기능
      • 정지-대기(Stop-and-Wait), 슬라이딩 윈도우(Sliding Window) 방식 이용

       

    1. 오류 제어(Error Control)
      🤖
      전송중에 발생하는 오류를 검출하고 정정하여 데이터나 제어 정보의 파손에 대비하는 기능

       

    1. 동기화(Synchronization)
      🤖
      송·수신 측이 같은 상태를 유지하도록 타이밍을 맞추는 기능

       

    1. 순서 제어(Sequencing)
      🤖
      전송되는 데이터 블록(PDU)에 전송 순서를 부여하는 기능
      • 연결 위주의 데이터 전송 방식에만 사용
      • 순서 제어로 인해 → 흐름 제어 및 오류 제어가 용이하게 됨

       

    1. 주소 지정(Addressing)
      🤖
      데이터가 목적지까지 정확하게 전송될 수 있도록 목적지 이름, 주소, 경로를 부여하는 기능
      • 목적지 이름 = 전송할 데이터가 가리키는 곳
      • 주소 = 목적지 위치
      • 경로 = 목적지에 도착할 수 있는 방법

       

    1. 다중화(Multiplexing)
      🤖
      한 개의 통신 회선을 여러 가입자들이 동시에 사용하도록 하는 기능

       

    1. 경로 제어(Routing)
      🤖
      송·수신 측 간의 송신 경로 중에서 최적의 패킷 교환 경로를 설정하는 기능

       

    1. 전송 서비스
      🤖
      전송하려는 데이터가 사용하도록 하는 별도의 부가 서비스
      • 우선순위 : 특정 메시지를 최대한 빠른 시간 안에 목적지로 전송하기 위하여 메시지 단위에 우선순위를 부여하여 우선 순위가 높은 메시지가 먼저 도착하도록 한다.
      • 서비스 등급 : 데이터의 요구에 따라 서비스 등급을 부여하여 서비스
      • 보안성 : 엑세스 제한과 같은 보안 체계를 구현

 

네트워킹 프로토콜을 구현하기 위해 프로토콜 소프트웨어 모듈은 기계의 운영 체제에 구현 된 프레임워크와 인터페이스됩니다. 가장 잘 알려진 프레임워크는 TCP / IP 모델과 OSI 모델입니다.

시스템은 일반적으로 단일 프로토콜을 사용하여 전송을 처리하지 않습니다. 대신 프로토콜 스위트(protocol suite)라 불리는 일련의 협력 프로토콜을 사용합니다. 가장 잘 알려진 프로토콜 제품군은 TCP / IP, IPX / SPX, X.25, AX.25 및 AppleTalk입니다.

프로토콜은 그룹의 기능성을 기반으로 정렬될 수 있습니다.

예를 들어 전송 프로토콜 그룹이 있습니다. 기능은 레이어에 매핑되며 각 레이어는 응용 프로그램, 전송, 인터넷 및 네트워크 인터페이스 기능과 관련된 별개의 문제 클래스를 해결합니다. 메시지를 전송하려면 각 계층에서 프로토콜을 선택해야 합니다.

 

프로토콜의 예시

  • HTTP : Hyper Text Transfer Protocol
  • HTTPS : Hyper Text Transfer Protocol Secure
  • FTP : File Transfer Protocol
  • SFTP : Secure File Transfer Protocol
  • POP3 : Post Office Protocol version 3
  • SMTP : Simple Mail Transfer Protocol
  • SSH : Secure Shell
  • SSL : Secure Socket Layer
  • SOAP : Simple Object Access Protocol
  • ARP : Adress Resolution Protocol

 

 


⍞ Reference

  • 도서 : 2020 시나공 정보처리기사 필기, 길벗

 

 

댓글