Certificate/정보처리기사

[4과목 프로그래밍 언어 활용] 응용 SW 기초 기술 활용 - 164. 프로토콜의 개념 ~ 165. ⭐ TCP/IP

S_sun 2025. 11. 27. 13:46

164. 프로토콜의 개념

  • 서로 다른 기기들 간의 데이터 교환을 원활하게 수행할 수 있도록 표준화시켜 높은 통신 규약
  • 통신을 제어하기 위한 표준 규칙과 절차의 집합으로 하드웨어와 소프트웨어, 문서를 모두 규정

⭐ 프로토콜 기본 요소

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

⭐ 프로토콜 기능

  • 단편화와 재결합(Fragmentation & Reassembly)
    • 단편화 : 송신 측에서 전송할 데이터를 전송에 알맞은 크기의 작은 블록으로 자르는 작업
    • 재결합 : 수신 측에서 단편화된 블록을 원래의 데이터로 모으는 것
    • 프로토콜 데이터 단위(PDU; Protocol Data Unit) : 단편화를 통해 세분화된 데이터 블록
    • 단편화 시 전송시간 빠르고, 통신 중의 오류를 효과적으로 제어 가능
    • 너무 작은 블록으로 단편화할 경우, 재결합 시 처리 시간이 길어지고, 실제 데이터 외의 부수적인 데이터가 많아지므로 비 효율적
  • 캡슐화(Encapsulation) - 요약화
    • 단편화된 데이터에 송 · 수신지 주소, 오류 검출 코드, 프로토콜 기능을 구현하기 위한 프로토콜 제어 정보 등의 정보를 부가하는 것
    • 데이터 링크 제어 프로토콜의 HDLC 프레임
    • 정보 데이터를 오류 없이 정확하게 전송하기 위해 캡슐화 수행
  • 흐름 제어(Flow Control)
    • 수신 측의 처리 능력에 따라 송신 측에서 손신하는 데이터 전송량이나 전송 속도를 조절하는 기능
    • 정지-대기(Stop-and-Wait), 슬라이딩 윈도우(Sliding Window) 방식 이용
  • 오류 제어(Error Control)
    • 전송 중에 발생하는 오류를 검출, 정정하여 데이터나 제어 정보의 파손에 대비하는 기능
  • 동기화(Synchronization)
    • 송 · 수신 측이 같은 상태를 유지하도록 타이밍(Timing)을 맞추는 기능
  • 순서 제어(Sequencing)
    • 전송되는 데이터 블록(PDU)에 전송 순서를 부여하는 기능
    • 연결 위주의 데이터 전송 방식에만 사용 → 가상 회선 방식
    • 송신 데이터들이 순서적으로 전송되도록 함으로써 흐름 제어 및 오류 제어를 용이하게 하는 기능
  • 주소 지정(Addressing)
    • 데이터가 목적지까지 정확하게 전송될 수 있도록 목적지 이름, 주소, 경로를 부여하는 기능
    • 목적지 이름 : 전송할 데이터가 가리키는 곳
    • 주소 : 목적지의 위치
    • 경로 : 목적지에 도착할 수 있는 방법
  • 다중화(Multiplexing)
    • 한 개의 통신 회선을 여러 가입자들이 동시에 사용하도록 하는 기능
  • 경로 제어(Rounting)
    • 송 · 수신 측 간의 송신 경로 중에서 최적의 패킷 교환 경로를 설정
  • 전송 서비스
    • 전송하려는 데이터가 사용하도록 하는 별도의 부가 서비스
    • 우선순위 : 특정 메시지를 최대한 빠른 시간 안에 목적지로 전송하기 위해 메시지 단위에 우선순위를 부여하여 우선순위가 높은 메시지가 먼저 도착하도록 함
    • 서비스 등급 : 데이터의 요구에 따라 서비스 등급을 부여하여 서비스
    • 보안성 : 액세스 제한과 같은 보안체제를 구현

 

165. ⭐ TCP/IP (Transmission Control Protocol/Internet Protocol)

  • 인터넷에 연결된 서로 다른 기종의 컴퓨터들이 데이터를 주고받을 수 있도록 하는 표준 프로토콜
  • 1960년 말 ARPA에서 개발 → ARPANET(1972)에서 사용하기 시작
  • UNIX의 기본 프로토콜로 사용
  • 현재 인터넷 범용 프로토콜로 사용
  • TCP 프로토콜과 IP 프로토콜 결합

⭐ 1) TCP 프로토콜 - OSI 전송 계층

  • 신뢰성 있는 연결형 서비스 제공
  • 패킷의 다중화, 순서 제어, 오류 제어, 흐름 제어 기능 제공
  • 스트림(Stream) 전송 기능 제공
  • TCP 헤더에는 Source/Destination Port Number, Sequence Number, Acknowledgment Number, Checksum 포함

💡 연결형(접속 통신)

  • 송 · 수신 측 간을 논리적으로 연결한 후 데이터를 전송하는 방식
  • 가상 회선 방식
  • 데이터 전송의 안정성과 신뢰성이 보장되지만, 연결 설정 지연이 일어나며, 회선 이용률이 낮아질 수 있음

⭐ 2) IP 프로토콜 - OSI 네트워크 계층

  • 데이터그램을 기반으로 하는 비연결형 서비스 제공
  • Best Effort 원칙에 따른 전송 기능 제공
  • 패킷의 분해/조립, 주소 지정, 경로 선택 기능 제공
  • 헤어 길이는 최소 20Byte, 최대 60Byte
  • IP 헤더에는 Version, Header Length, Total Packet Length, Header Checksum, Source IP Address, Destination IP Address 포함

💡 비연결형(비접속) 통신

  • 송 · 수신 측 간에 논리적 연결 없이 데이터를 독립적으로 전송하는 방식
  • 데이터그램 방식

⭐ TCP/IP 구조

 

⭐ 응용 계층의 주요 프로토콜

  • FTP(File Transfer Protocol)
    • 컴퓨터와 컴퓨터, 컴퓨터와 인터넷 사이에서 파일을 주고받을 수 있도록 하는 원격 파일 전송 프로토콜
  • SMTP(Simple Mail Transfer Protocol)
    • 전자 우편을 전송하는 프로토콜
  • TELNET
    • 멀리 떨어져 있는 컴퓨터에 접속하여 자신의 컴퓨터처럼 사용할 수 있도록 해주는 서비스
    • 프로그램을 실행하는 등 시스템 관리 작업을 할 수 있는 가상의 터미널 기능 수행
  • SNMP(Simple Network Management Protocol)
    • TCP/IP의 네트워크 관리 프로토콜
    • 라우터나 허브 등 네트워크 기기의 네트워크 정보를 네트워크 관리 시스템에 보내는 데 사용되는 표준 통신 규약
  • DNS(Domain Name System)
    • 도메인 네임을 IP 주소로 매핑하는 시스템
  • HTTP(Hyper Text Transfer Protocol)
    • 월드 와이드 웹(WWW)에서 HTML 문서를 송수신하기 위한 표준 프로토콜
  • MQTT(Message Queuing Telemetry Transport)
    • 발행-구독 기반의 메시징 프로토콜
    • IoT 환경에서 자주 사용

 

⭐ 전송 계층의 주요 프로토콜

  • TCP(Transmission Control Protocol)
    • 양방향 연결(Full Duplex Connextion)형 서비스 제공
    • 가상 회선 연결(Virtual Circuit Connection) 현태의 서비스 제공
    • 스트림 위주의 전달(패킷 단위)
    • 신뢰성 있는 경로를 확립하고 메시지 전송을 감동
    • 순서 제어, 오류 제어, 흐름 제어 기능
    • 패킷 분실, 손상, 지연이나 순서가 틀린 것 등이 발생할 때 투명성이 보장되는 통신 제공
    • TCP 프로토콜의 헤더는 기본적을 20Byte ~ 60Byte까지 사용
    • 선택적으로 40Byte를 더 추가할 수 있으므로 최대 100Byte까지 크기 확장 가능
  • UDP(User Datagram Protocol)
    • 데이터 전송 전에 연결을 설정하지 않는 비연결형 서비스 제공
    • TCP에 비해 상대적으로 단순한 헤더 구조
    • 오버헤드가 적음
    • 흐름 제어나 순서 제어가 없어 전송속도 빠름
    • 고속의 안정성 있는 전송 매체를 사용해 빠른 속도를 필요로 하는 경우
    • 동시에 여러 사용자에게 데이터를 전달할 경우
    • 정기적으로 반복해서 전송할 경우
    • 실시간 전송에 유리
    • 신뢰성보다는 속도가 중요시되는 네트워크에서 사용
    • UDP 헤더에는 Source Port Number, Destination Port Number, Length, Checksum 포함
  • RTCP(Real-Time Control Protocol)
    • RTP(Real-Time Protocol) 패킷의 전송 품질을 제어하기 위한 제어 프로토콜
    • 세션에 참여한 각 참여자들에게 주기적으로 제어 정보 전송
    • 하위 프로토콜은 데이터 패킷과 제어 패킷의 다중화를 제공
    • 데이터 전송을 모니터링하고 최소한의 제어와 인증 기능만 제공
    • 항상 32비트의 경계로 끝남

 

⭐ 인터넷 계층의 주요 프로토콜

  • IP(Internet Protocol)
    • 전송할 데이터에 주소를 지정하고, 경로를 설정하는 기능
    • 비연결형인 데이터그램 방식을 사용하는 것으로 신뢰성 보장 안됨
  • ICMP(Internet Control Message Protocol, 인터넷 제어 메시지 프로토콜)
    • IP와 조합하여 통신 중에 발생하는 오류의 처리와 전송 경로 변경 등을 위한 제어 메시지를 관리하는 역할
    • 헤더는 8Byte로 구성
  • IGMP(Internet Group Management Protocol, 인터넷 그룹 관리 프로토콜)
    • 멀티 캐스트를 지원하는 호스트나 라우터 사이에서 멀티 캐스트 그룹 유지를 위해 사용
  • ARP(Address Resolution Protocol, 주소 분석 프로토콜)  
    • 호스트의 IP 주소를 호스트와 연결된 네트워크 접속 장치의 물리적 주소(MAX Address)로 바꿈
  • RARP(Reverse Address Resoultion Protocol)
    • ARP와 반대로 물리적 주소를 IP주소로 변환하는 기능

⭐ 네트워크 액세스 계층의 주요 프로토콜

  • Ethernet(IEEE 802.3)
    • CSMA/CD 방식의 LAN
  • IEEE 802
    • LAN을 위한 표준 프로토콜
  • HDLC
    • 비트 위주의 데이터 링크 제어 프로토콜
  • X.25
    • 패킷 교환망을 통한 DTE와 DCE 간의 인터페이스를 제공하는 프로토콜
  • RS-232C
    • 공중전화 교환망(PSTN)을 통한 DTE와 DCE 간의 인터페이스를 제공하는 프로토콜

 

 

 

📖 Reference
 

2023 시나공 정보처리기사 필기 : 네이버 도서

네이버 도서 상세정보를 제공합니다.

search.shopping.naver.com

 

728x90
반응형