Protocol Architecture

2025. 3. 28.·데이터통신

프로토콜(Protocol)

서로 다른 시스템(혹은 계층) 간 통신을 위해 지켜야 할 규칙(rule)이나 관례(convention)의 집합

피어 계층(peer layer)끼리 통신을 위해선 같은 프로토콜을 사용해야 됨

주요 특징

  • Syntax(구문)

데이터 블록의 형식(format) 정의

예) header, trailer, headlen

  • Semantics(의미)

조정(coordination) 및 오류 처리(error handling)를 위한 제어 정보

예) 패킷 속 제어 비트, 시퀀스 번호, ACK

  • Timing

속도 조절 및 순서 제어(sequencing)

예) 데이터 전송 속도, 간격, 순서 등


Protocol Architecture

프로토콜(약속)을 layer로 나누고, 각각의 계층이 특정 역할을 수행하도록 만든 구조

logic(전체 통신 과정)을 하위 작업(subtask) 모듈로 분할

쌓여 있는 구조, 즉 stack에서 각 계층은 고유의 기능을 수행

상위 계층은 하위 계층이 제공하는 기능(primitive functions)을 사용

하위 계층은 상위 계층에 서비스 제공

한 계층의 변화가 다른 계층의 변경을 요구하지 않음

관련 agent: application, computer(device), network

✨ 데이터 전송 전 수행해야 하는 과제

1. src가 직접 통신 경로를 활성화하거나, 네트워크에 원하는 dst system의 identity 알리기

2. 송신 측(src)은 dst system이 데이터를 받을 준비가 되어 있는지 확인

3. 송신 측 파일 전송 애플리케이션이 수신 측에 있는 파일 관리 프로그램이 해당 사용자 파일을 받아서 저장할 준비가 되어 있는지 확인

4. 파일 형식 변환(Format Translation) 필요(두 시스템 간 파일 형식 다를 경우)


Communication Layers

통신 작업은 크게 세 개의 독립적인 계층으로 구분

  • Application Layer

애플리케이션을 지원하기 위한 로직 포함

예) HTTP, SMTP 등 상위 프로토콜

  • Transport Layer

모든 애플리케이션이 공통으로 사용할 수 있는 전송 메커니즘 제공

예) TCP, UDP

  • Network Access Layer

컴퓨터와 그 컴퓨터가 연결된 네트워크 간 데이터 교환 담당

예) Ethernet, Wi-Fi 등


프로토콜 아키텍처와 네트워크

데이터를 보내기 전 port #, IP address를 지정

필드 내용을 프로토콜을 통해 해석

헤더: control info / 데이터와는 관계 X / 반드시 필요(어디로 보낼지)


TCP/IP Protocol Architecture

TCP/IP 프로토콜 스위트(suite)라고도 불림

인터넷 표준 프로토콜들의 집합

OSI 7계층과 달리 일반적으로 5계층으로 표현

# Internet 계층을 Network 계층, Network Access 계층을 data link 계층으로 부르기도 함

 

Physical Layer

컴퓨터와 네트워크 간 물리적 인터페이스를 다룸

  • 전송 매체(Transmission Medium)
  • Signal의 형태(아날로그/디지털, 전기적/광학적)
  • Data rate(데이터 전송 속도) 

 

Network Access/Data Link Layer

end system과 네트워크 간 데이터 교환 담당

로컬 네트워크 상 데이터 프레임 전송

에러 검출 및 수정

같은 네트워크에 연결된 두 end system(host) 간에 네트워크 액세스 및 데이터 라우팅을 담당

핵심 키워드: Multiplexing / Channel; 데이터를 전송하기 위한 논리적 or 물리적 경로

 

Internet Layer(= Network Layer)

서로 다른 네트워크들이 연결(interconnect)되어 있는 환경에서 데이터가 목적지까지 이동하기 위한 절차를 구현하는 계층

IP 프로토콜을 사용해 라우팅 기능 제공, 주소 지정(addressing)

네트워크 간 데이터 전송 경로 결정, 데이터그램(패킷) 전달

end system 및 router에 의해 구현

🔥라우터는 3계층 장비: physical/network access/internet 계층 모두 포함

 

Transport Layer

End-to-End 데이터 전송 담당, 세그먼트 전송

신뢰성, 흐름 제어, 오류 제어 등을 수행

TCP: 연결 지향(connection oriented) / 신뢰성 보장

UDP: best effort, 비연결 지향, 빠른 전송 가능, 단순 구조

 

Application Layer

사용자 애플리케이션이 네트워크 서비스를 이용할 수 있도록 logic 제공

실제로 우리가 사용하는 프로그램들이 위치

애플리케이션마다 해당 애플리케이션에 특화된 별도의 모듈(프로토콜) 필요

SMTP, FTP, SSH(Secure Shell), HTTP 등

# SMTP, FTP, SSH은 TCP 위에 정의되는 app 계층


TCP/IP 주소 지정

TCP/IP는 두 단계의 주소 지정이 필요

1. 서브네트워크에 있는 각 호스트는 고유한 전역 인터넷(IP) 주소를 가져야 함

2. 호스트 내에서 각 프로세스는 호스트 내에서 고유한 주소를 가져야 (예: port #)

IP 주소만으로는 어떤 호스트인지는 알 수 있지만, 그 호스트 내부에서 어떤 애플리케이션과 통신해야 하는지는 알 수 없으므로 


TCP/UDP

TCP

대부분의 애플리케이션을 위한 transport 계층 프로토콜

애플리케이션 간 데이터 전송을 위한 신뢰할 수 있는 연결을 제공

segment는 기본 프로토콜 단위

연결되어 있는 동안 엔티티 간 세그먼트 추적

오버헤드 크고 느릴 수 있음

UDP

TCP의 대안

전달 보장, 순서 유지, 중복 방지 등을 보장 X (신뢰성 X)

SNMP(Simple Network Management Protocol) 등 간단한 메시지 전송에 사용

IP에 포트 주소 지정 기능을 추가하여, 여러 프로세스와 통신 가능

데이터 무결성 확인을 위해 Checksum 포함

오버헤드 작고 빠름


Standardization; 표준화

세 가지 핵심 요소

  • 프로토콜 명세(Protocol specification)

교환되는 프로토콜 데이터 단위(PDU)의 형식(syntax, format), 모든 필드의 의미(semantic), 그리고 허용 가능한 PDU의 순서(timing)가 포함

  • 서비스 정의(Service definition)

제공되는 서비스가 무엇인지에 대한 기능적 설명

어떻게 제공되는지에 대한 설명은 포함 X

  • 주소 지정(Addressing)

각 계층이 통신하는 상대를 구분하기 위한 주소 체계 필요

각 계층은 상위 계층의 엔티티에게 서비스 제공

이러한 엔티티들은 포트 또는 SAP(Service Access Point)를 통해 참조됨


Service Primitives and Parameters

  • Primitive

수행해야 할 기능 저장

요청, 응답, 알림 등 기능 명령어, 즉 함수 정의

  • Parameter

데이터와 control information을 전달하는 데 사용

즉 함수(명령어)에 전달되는 실제 데이터


Media / Multimedia

  • Media

정보의 형태(form)

text, (still) image, video, audio를 포함

  • Multimedia

컴퓨터를 매개로 하여 텍스트, 그래픽, 음성, 비디오를 포함하는 인간-컴퓨터 상호작용


Multimedia Technologies

Compression(압축)

  • Still image(정지 이미지) 용 JPG

이미지 파일(computation 정보)을 손실 압축 방식으로 줄여, Storage(저장 공간)과 자원(bandwidth 등)을 절약

  •  video(streaming video) 용 MPG

프레임 간의 중복 정보를 줄여 높은 압축률로 Storage, computation 부담 낮춤

Communications/Networking

대용량 멀티미디어 트래픽을 지원할 수 있는 전송 및 네트워킹 기술 필요

bandwidth, source 등이 고려 대상 / multiplexing

# 많은 유저들에게 똑같은 시간에 똑같은 대역폭으로 통신할 수 있다면 효율적이라 볼 수 있고, 아니면 자원 낭비

Protocol

  • RTP(Real-time Transport Protocol)

오디오, 비디오 같은 실시간 데이터 전송 위한 프로토콜

  • SIP(Session Initiation Protocol)

멀티미디어 세션(영상 통화, 화상 회의 등)을 설정, 변경, 종료하기 위한 신호 프로토콜

QoS(Quality of Service)

멀티미디어 서비스는 실시간성이 중심(real-time service)

Priority(우선순위), Delay constraints(지연 제약), Delay variability(Jitter) constraints, latency, bandwidth 등을 고려

저작자표시 비영리 변경금지 (새창열림)

'데이터통신' 카테고리의 다른 글

Modulation  (0) 2025.04.11
Signal Encoding Techniques  (0) 2025.04.09
Transmission Media  (0) 2025.04.04
Data Transmission  (0) 2025.04.02
데이터 네트워크와 인터넷  (0) 2025.03.24
'데이터통신' 카테고리의 다른 글
  • Signal Encoding Techniques
  • Transmission Media
  • Data Transmission
  • 데이터 네트워크와 인터넷
우는거북이
우는거북이
  • 우는거북이
    거북이는 울고 있다
    우는거북이
  • 전체
    오늘
    어제
    • 알아보기 (74) N
      • AI (4)
      • 언어 (16)
        • Python (15)
        • C언어 (1)
      • 알고리즘 (7)
      • 백준 (22)
      • 자료구조 (10)
      • 컴퓨터네트워크 (6)
      • 운영체제 (1)
      • 데이터통신 (8) N
  • 인기 글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.0
우는거북이
Protocol Architecture
상단으로

티스토리툴바