CS/정보통신공학

[정보통신공학] Ch02. Protocol Architecture, TCP/IP and Internet-Based Applications

rngPwns 2025. 4. 11. 14:38

Chapter 2. 프로토콜 아키텍처, TCP/IP, 그리고 인터넷 기반 애플리케이션


📌 학습 목표

  • **Protocol architecture(프로토콜 아키텍처)**의 정의와 필요성, 이점 설명
  • TCP/IP 구조와 각 계층의 동작 방식 설명
  • 표준화된 아키텍처 개발 동기, 표준 기반 제품의 장점 설명
  • **Internetworking(인터네트워킹)**의 필요성 설명

"통신을 완전히 파괴하려면 송신자와 수신자 사이에 공통된 규칙이 전혀 없어야 한다 — 문자나 구문조차도."
— Colin Cherry, 『On Human Communication』


프로토콜이란?

  • 프로토콜이란 같은 계층에 있는 두 기능이 통신할 수 있도록 해주는 규칙 또는 관례의 집합
  • 즉, 프로토콜은 메시지의 형식(format)과 순서(order), 그리고 **행동(action)**을 정의함

프로토콜의 핵심 요소

  • Syntax(구문): 데이터 블록의 형식
  • Semantics(의미): 오류 처리나 제어 정보를 위한 의미
  • Timing(타이밍): 속도 조절과 순서 제어

왜 프로토콜 아키텍처가 필요한가?

데이터를 전송하려면 다음과 같은 여러 작업이 필요하다:

  1. 송신자가 통신 경로를 활성화하거나 목적지 정보를 네트워크에 알림
  2. 목적지가 데이터 수신 준비가 되었는지 확인
  3. 송신측 파일 전송 애플리케이션이 수신측 파일 저장 프로그램 상태 확인
  4. 시스템 간 데이터 형식이 다르면 포맷 변환 수행 필요

Protocol Architecture(프로토콜 아키텍처)의 구조

  • 하드웨어와 소프트웨어의 계층 구조
    • 데이터 교환 지원
    • 각 기능을 서브태스크 모듈로 분리하여 독립적으로 구현
  • 수직 스택 구조
    • 각 계층은 일부 기능 수행
    • 아래 계층에 의존하고, 위 계층에 서비스 제공
    • 하나의 계층 변경이 다른 계층에 영향 X

예: TCP/IP 프로토콜 스위트, OSI 모델


OSI vs TCP/IP 비교 모델

해당 슬라이드는 도식이므로 생략 없이 구성 시 PPT로 재정리 가능


물리 계층 (Physical Layer)

  • 데이터 전송 장치와 전송 매체 간의 물리적 인터페이스
  • 다음과 같은 요소들과 관련됨:
    • 전송 매체 특성
    • 신호의 형태
    • 데이터 전송 속도

데이터 링크 계층 (Data Link Layer)

  • 종단 시스템과 네트워크 간 데이터 교환 담당
  • 다음과 같은 요소 포함:
    • Next-hop 주소 제공
    • 우선순위 등 특정 서비스 호출
    • 동일 네트워크에 연결된 두 엔터티 간 데이터 교환
  • 네트워크 종류에 따라 사용되는 소프트웨어가 다름
  • 상위 계층은 네트워크 종류에 영향받지 않음

네트워크 계층 (Network Layer, 호스트 간 통신)

  • 여러 개의 상호 연결된 네트워크를 통해 데이터가 이동할 수 있도록 절차 구현
  • **IP(Internet Protocol)**를 이용한 라우팅 기능 제공
  • 종단 시스템과 라우터에서 구현됨
  • 라우터는 두 네트워크를 연결하고 데이터 중계

전송 계층 (Transport Layer, 프로세스 간 통신)

  • 모든 애플리케이션이 공통적으로 사용하는 계층
  • TCP(Transmission Control Protocol):
    • 상위 프로세스 탐색
    • 신뢰성 있는 end-to-end 데이터 전달
    • 전송 순서 보장
  • UDP(User Datagram Protocol):
    • 상위 프로세스 탐색
    • 오류 검출 (정정은 없음)

애플리케이션 계층 (Application Layer)

전통적인 인터넷 애플리케이션

  • SMTP(Simple Mail Transfer Protocol): 메시지 전송
  • FTP(File Transfer Protocol): 텍스트/바이너리 파일 전송
  • SSH(Secure Shell): 보안 원격 접속

멀티미디어 기술

  • 압축: JPG(정지 이미지), MPG(비디오)
  • 네트워킹 기술: 고용량 멀티미디어 전송 지원
  • 프로토콜: RTP, SIP
  • QoS(Quality of Service): 지연, 우선순위 제어

2단계 주소 지정

  1. 네트워크 계층(L3): 각 호스트 → 고유한 IP 주소 필요
  2. 전송 계층(L4): 호스트 내 각 프로세스 → 고유한 포트(port) 필요

TCP/UDP는 포트 기반으로 프로세스를 식별하여 데이터를 정확히 전달


TCP/IP 프로토콜 아키텍처

  • ARPANET 개발 과정에서 탄생
  • 인터넷 표준 프로토콜 집합
  • 다양한 프로토콜 모음으로 구성됨

TCP/IP의 계층 및 예시 프로토콜

계층예시

 

Application SMTP, FTP, SSH, HTTP
Transport TCP, UDP
Network IP(v4/v6), ICMP, OSPF, RIP
Data Link Ethernet, WiFi, Frame Relay
Physical Twisted pair(트위스티드 페어), Optical fiber(광섬유), 위성, 마이크로파

PDU(Protocol Data Unit, 프로토콜 데이터 단위)

  • PDU = 상위 계층의 데이터 + 현재 계층의 제어 헤더
  • 피어 프로토콜과의 통신에 사용됨

TCP 동작 원리 (L4)

  • 연결 지향 프로토콜, 신뢰성 있는 전송
  • 3-way handshake로 연결 수립: SYN → SYN-ACK → ACK
  • TCP 세그먼트에는 송수신 포트 번호 포함 → 연결 식별

TCP 연결 중 기능

  1. 손실/손상된 세그먼트 복구 → 순서 유지 & 무손실 전송
  2. 흐름 제어 → 수신 버퍼 오버플로 방지
  3. 혼잡 제어 → 라우터 오버플로 방지

UDP (User Datagram Protocol)

  • 비신뢰성 전송, 순서/중복 보장 없음
  • 오버헤드 최소, 포트 기반 주소 지정 추가
  • 사용 예: SNMP, DNS, HTTP 스트리밍
  • 오류 검출은 있지만 정정 기능 없음

IPv4 vs IPv6

 

항목

 IPv4 

IPv6

주소 길이 32비트 128비트
체크섬 있음 없음
분할(Fragmentation) 있음 없음
QoS 지원 제한적 Flow label 기반 시도했으나 실패
설계 동기 주소 고갈로 인한 대응 필요  

표준화된 프로토콜 아키텍처 구성 요소

  • 프로토콜 사양: 서로 다른 시스템 간의 동일 계층 통신을 위한 규칙
  • 서비스 정의: 어떤 기능을 제공하는지 설명
  • 주소 지정: 상위 계층 엔터티에 서비스 제공 → SAP(Service Access Point) 사용

서비스 원시어(Service Primitives)와 파라미터

  • 인접 계층 간 서비스는 **원시어(Primitives)**와 **파라미터(Parameters)**로 표현됨
    • Primitives: 수행할 함수 명시
    • Parameters: 데이터와 제어 정보 전달

이 과정을 도식화한 것이 Time Sequence Diagram


요약 Summary

  • 프로토콜 아키텍처의 필요성과 개념 설명
  • 단순 프로토콜 구조
  • TCP/IP 아키텍처 및 동작 방식
  • 표준화된 프로토콜 아키텍처의 중요성