네트워크 프로토콜

Teru·2025년 7월 14일
0

OSI 7계층은 네트워크 통신이 일어나는 과정을 7단계로 나눈 것을 말한다.

WHY?
-> 흐름을 한눈에 알아보기 쉽고 7 단계 중 특정한 곳에 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건들이지 않고도 이상이 생긴 단계만 고칠 수 있다!

(응표세전네데물) (아파쓸땐엔돌핀)

1. 물리 계층 (Physical layer)

-> 네트워크 통신의 가장 하위 계층으로, 데이터를 비트 단위의 전기적 신호로 변환하여 물리적인 매체를 통해 전송하는 역할을 한다.

  • 전기적 신호가 나가는 물리적인 장비
  • 데이터 단위: 비트(bit)
  • 이 계층에서는 단지 데이터를 전달할 뿐, 전송하려는(or 받으려는) 데이터가 무엇인지, 어떤 에러가 있는지 등에 대해서는 신경쓰지 않는다.
  • 데이터를 전기적인 신호로 변환해서 주고받는 기능만 있을 뿐이다.
    ex) 허브, 리피터, 케이블

2. 데이터 링크 계층 (Data link layer)

-> 프레임 단위로 데이터를 주고받고, MAC 주소로 장치를 식별하며, 오류 검출과 흐름제어를 통해 신뢰성 있는 링크 기반 전송을 담당한다.

  • 물리계층을 통해 송수신되는 정보의 오류와 흐름을 관리하여 안전한 정보의 전달을 수행할 수 있도록 도와주는 역할. 통신에서의 오류도 찾아주고 재전송하는 기능을 가지고 있다.
  • 데이터 단위: 프레임(Frame)
  • 이 계층에서는 맥 주소를 가지고 통신하게 된다.
    ex) 스위치, 브리지, 이더넷, 와이파이

MAC 주소?

  • Media Access Control Address
  • 네트워크 카드(NIC)에 고유하게 부여된 48비트(6바이트) 주소
  • 16진수 형태
  • 계층2에서 프레임의 목적지와 출발지 식별에 사용

3. 네트워크 계층 (Network layer)

-> IP 주소 기반으로 장치를 식별하고, 패킷을 목적지까지 전달하기 위한 경로 설정과 중계(라우팅)을 담당하는 계층이다.

  • 경로(Route)와 주소(IP)를 정하고 패킷을 전달해준다.
  • 목적지까지 가장 안전하고 빠르게 데이터를 보내는 기능을 말한다. (최적의 경로 설정)
  • 라우팅 기능!
  • 전송단위: 패킷
  • 논리적 주소 지정, 라우팅, 패킷 전달, 패킷 분할 및 재조립, 혼잡 제어
  • 주요 프로토콜: IP, ICMP, ARP, RARP, IGMP
    ICMP(Internet Control Message Protocol): 네트워크 진단, 오류 메시지
    ARP(Address Resolution Protocol): IP <-> MAC 주소 매핑
    RARP(Reverse ARP): MAC <-> IP 주소 매핑 (현재는 거의 사용 X)
    IGMP(Internet Group Management Protocol): 멀티캐스트 그룹 관리
    ex) 라우터, L3 스위치

Key word: IP주소, 라우터, 패킷 전송, 경로 설정

프로토콜

ARP

: IP주소를 물리적 네트워크 주소(MAC 주소)로 변환하는 데 사용된다. 이는 동일한 네트워크 내의 장치들이 서로 통신할 수 있도록 도와준다.

RARP

: MAC 주소를 IP 주소로 변환하는 데 사용된다. 주로 디스크 없는 워크스테이션이 부팅 시 자신의 IP 주소를 알기 위해 사용된다.

ICMP

: 네트워크 장치들 간의 진단 및 오류 메시지를 전달하는 데 사용된다. 이는 IP 네트워크의 상태를 모니터링하고, 문제를 감지하는 데 도움을 준다.

IGMP

: 멀티캐스트 그룹 멤버십을 관리하는 데 사용된다. 이를 통해 멀티캐스트 라우터는 네트워크 상의 호스트가 어떤 멀티캐스트 그룹에 가입 or 탈퇴했는지를 알 수 있다.

  • 내부 라우팅 프로토콜(IGP)
    -RIP: 거리벡터 알고리즘 (Hop count)
    -OSPF: 링크 상태 변화시에만 라우팅 정보를 전송, 흡수/대역폭/지연시간 등을 고려하며 다익스트라 알고리즘을 기반으로 한다.
  • 외부 라우팅 프로토콜(EGP)
    -EGP: 초기 인터넷 라우트 프로토콜. 다른 그룹과 라우팅 정보를 교환하는 프로토콜
    -BGP: EGP의 후속 프로토콜로, AS(Autonomous System)라는 집단끼리 상호작용하는 프로토콜 (경로 벡터 라우팅 프로토콜 형태)

4. 전송 계층 (Transport layer)

-> 송신자와 수신자 간의 종단 간 연결을 설정하고, 데이터를 분할, 재조립 하며 신뢰성 있는 데이터 전송을 담당한다.

  • 양 끝단의 사용자들 간의 신뢰성있는 데이터를 주고 받게 해준다.
  • 송신자와 수신자 간의 신뢰성있고 효율적인 데이터를 전송하기 위하여 오류검출 및 복구, 흐름제어와 중복검사 등을 수행한다.
  • 데이터 전송을 위해서 Port 번호가 사용되며 TCP, UDP 프로토콜이 사용
  • 전송단위: 세그먼트(TCP), 데이터그램(UDP)
  • 연결 설정 및 종료, 신뢰성, 흐름 제어, 혼잡 제어, 포트 번호 사용

포트 번호란?
: 하나의 장비에서 여러 애플리케이션이 동시에 통신할 수 있도록 구분하는 논리적인 채널

key word: 포트, TCP/UDP, 연결, 신뢰, 재조립, 제어


5. 세션 계층 (Session layer)

-> 응용 간의 통신을 위한 세션을 생성하고, 그 상태를 유지 및 종료하며, 동기화와 대화 제어를 통해 안정적인 관리

  • 응용 프로세스가 통신을 관리하기 위한 방법을 정의한다.
  • TCP/IP 세션을 만들고 없애는 역할
    ex) NetBIOS, PPTP, RTP

6. 표현 계층 (Presentation layer)

-> 표현 계층은 서로 다른 시스템 간 데이터 형식의 차이를 조정하고, 암호화/복호화 및 압축/해제 기능을 제공하며 데이터를 이해 가능한 형태로 변환하는 역할을 한다.

  • 전송하는 데이터의 표현방식을 결정한다.
  • 데이터 형식 변환, 문자 인코딩 변환, 데이터 압축 / 해제 등
    ex) SSL/TLS, JPEG, MPEG, ASCII <-> Unicode, XML/JSON..

7. 응용 계층 (Application layer)

-> 사용자와 네트워크 간의 접점을 담당하며, 웹, 이메일, 파일 전송 등 다양한 네트워크 서비스를 제공한다.

  • 네트워크 서비스 제공, 사용자 인터페이스 연결
  • 애플리케이션 간 데이터 교환, 요청/응답 관리
  • HTTP, HTTPS, SMTP, POP3, IMAP, FTP, SFTP, DNS 등

0개의 댓글