[Network] OSI 7계층

jiny·2026년 2월 10일

Computer Science

목록 보기
7/16

1. OSI 모델이란?

OSI(Open Systems Interconnection) 모델은 국제표준화기구(ISO)에서 1984년에 제정한 네트워크 통신의 표준 모델이다.

✨ 핵심 개념

  • 서로 다른 시스템 간의 통신을 위한 표준 프레임워크
  • 네트워크 통신을 7개의 논리적 계층으로 분리했다.
  • 각 계층은 독립적이며 특정 기능만 담당한다.
  • 참고: OSI는 개념/참조 모델이라서, 실제 프로토콜은 계층 경계가 섞여 보일 때가 많다.

✨ OSI 7계층이 필요한 이유

  1. 문제 해결의 용이성: 특정 계층에서 문제가 발생하면 해당 계층만 집중적으로 수정 가능하다.
    • 예: 네트워크 연결 문제 ➡️ 1-3계층 점검
    • 예: 애플리케이션 오류 ➡️ 5-7계층 점검
  2. 표준화: 각 계층의 인터페이스가 표준화되어 있어 서로 다른 제조사의 장비도 호환 가능하다.
  3. 모듈화: 각 계층은 독립적으로 개발/업그레이드 가능하여 유지보수가 쉽다.
  4. 교육 및 이해: 복잡한 네트워크를 단계별로 이해할 수 있어 학습이 효율적이다.

2. 계층 1: 물리 계층 (Physical Layer)

✨ 역할

  • 0과 1의 비트 데이터를 전기 신호, 광신호, 전파로 변환하여 물리적으로 전송한다.

✨ 주요 장비

  • 케이블: UTP(Unshielded Twisted Pair, 비차폐 연선), 광케이블, 동축 케이블
  • 허브(Hub): 모든 포트로 데이터 브로드캐스트
  • 리피터(Repeater): 신호 증폭 및 재생

    🔎 케이블, 허브, 리피터의 역할

    케이블, 허브, 리피터는 네트워크의 가장 기초가 되는 OSI 1계층(물리 계층, Physical Layer)에 속하는 장비들이다.
    이 계층은 데이터를 전기적인 신호로 변환하여 실제로 전송하는 역할을 담당한다.

    1. 케이블 (Cable)
      데이터가 실제로 흘러가는 전송 매체이다. 컴퓨터와 컴퓨터, 또는 컴퓨터와 네트워크 장비를 물리적으로 연결하여 전기 신호나 광신호를 전달하는 통로 역할을 한다.
    2. 허브 (Hub)
      여러 대의 컴퓨터를 연결하여 네트워크를 형성하는 장치로, 일종의 '포트가 여러 개 달린 리피터'라고 이해하면 쉽다. 한 포트로 들어온 데이터를 연결된 모든 포트로 그대로 복사해서 전달하기 때문에 '더미 허브(Dummy Hub)'라고도 불린다.
    3. 리피터 (Repeater)
      신호는 거리가 멀어질수록 약해지거나 왜곡되는데, 리피터는 이렇게 약해진 신호를 수신하여 증폭하고 다시 깨끗하게 재생성해주는 장치이다. 덕분에 데이터를 더 먼 거리까지 보낼 수 있게 해준다.

    이 장비들은 단순히 데이터를 전달할 뿐, 어디로 보낼지 판단하는 지능적인 기능은 없다.

✨ 주요 특징

  • 단순히 신호만 전송한다. (데이터 내용은 모름)
  • 에러 검출 기능이 없다.
  • 전송 속도, 전압, 핀 배치 등 물리적 사양을 정의한다.

✨ 예시

  • 비트 스트림 (01001101): 컴퓨터가 이해하는 논리적인 데이터 단위
  • 전기 신호 변환
    • 1 (High): 전압이 높은 상태(예: +5V)를 유지하여 신호를 보낸다.
    • 0 (Low): 전압이 낮은 상태(예: 0V)를 유지하여 신호를 보낸다.
  • 전송 매체: 이렇게 변환된 신호는 케이블을 통해 전달되며, 거리가 멀어져 신호가 약해지면 리피터허브가 이를 다시 증폭하거나 전달한다.

✨ PDU (Protocol Data Unit)

비트(Bit)

PDU(Protocol Data Unit): 각 OSI 계층에서 데이터를 처리하는 단위


✨ 역할

  • 같은 네트워크 내에서 신뢰성 있는 데이터 전송을 보장한다.

✨ 주요 장비

  • 브릿지(Bridge): 네트워크 세그먼트 연결
  • 스위치(Switch): MAC 주소 기반 데이터 전송

    🔎 브릿지, 스위치의 특징

    브릿지와 스위치는 OSI 2계층(데이터 링크 계층, Data Link Layer)에 속하는 장비들이다. 1계층 장비(허브)가 단순히 모든 곳에 신호를 뿌렸다면, 2계층 장비는 MAC 주소를 보고 데이터를 어디로 보낼지 판단하는 '지능'이 생기기 시작하는 단계이다.

    1. 브릿지 (Bridge)
      브릿지는 두 개의 네트워크 세그먼트(부분)를 연결해주는 다리 역할을 한다.
      • 트래픽 관리: 모든 데이터를 통과시키는 게 아니라, MAC 주소를 확인해서 반대편 세그먼트에 있는 장비로 가는 데이터만 통과시킨다. 덕분에 네트워크의 혼잡을 줄여준다.
      • 소프트웨어 방식: 주로 소프트웨어적으로 처리되기 때문에 스위치보다는 속도가 느린 편이다.
    2. 스위치 (Switch)
      브릿지의 기능을 더 발전시킨 장비로, 오늘날 가장 많이 쓰인다.
      • 멀티포트 브릿지: 브릿지는 보통 포트가 2개지만, 스위치는 수십 개의 포트를 가질 수 있다.
      • 정확한 전달: 각 포트에 연결된 장비의 MAC 주소를 표(MAC Address Table)로 기억하고 있다가, 데이터를 목적지 장비가 연결된 포트로만 보내준다.
      • 하드웨어 방식: 전용 칩(ASIC)을 사용해 하드웨어 방식으로 처리하므로 브릿지보다 훨씬 빠르다.

✨ 주요 기능

  1. 프레이밍(Framing): 데이터에 헤더와 트레일러 추가
  2. MAC 주소 지정: 48비트 물리 주소로 기기 식별
  3. 오류 검출: CRC(Cyclic Redundancy Check, 순환 중복 검사), 체크섬을 통한 에러 감지
  4. 흐름 제어: 송신자와 수신자 간 속도 조절

✨ 프레임 구조

필드명설명
목적지 MAC데이터를 받는(수신할) 장비의 물리적 주소
출발지 MAC데이터를 보내는(송신할) 장비의 물리적 주소
데이터3계층(네트워크 계층)에서 내려온 IP 패킷 등이 포함된 실제 내용
CRC전송 중 데이터에 오류가 발생했는지 확인하기 위한 에러 검출 코드

✨ 하위 계층

  • LLC (Logical Link Control): 상위 계층과의 인터페이스
  • MAC (Media Access Control): 물리적 전송 제어

    🔎 LLC, MAC의 역할

    데이터 링크 계층(2계층)은 사실 더 효율적인 통신을 위해 두 개의 세부 계층인 LLCMAC으로 나뉘어 있다.

    1. MAC (Media Access Control, 매체 접근 제어)
      물리적인 하드웨어와 가장 가까운 아래쪽 세부 계층이다.
      • 물리적 주소 지정: 우리가 흔히 말하는 MAC 주소를 사용하여 데이터를 어디로 보낼지 결정한다.
      • 매체 접근 제어: 여러 장치가 동시에 데이터를 보내려고 할 때 충돌이 나지 않도록 순서를 정하거나 제어한다. (예: CSMA/CD 방식 등)
      • 프레이밍: 데이터를 '프레임'이라는 단위로 묶고, 에러 검출을 위한 코드(CRC)를 덧붙인다.
    2. LLC (Logical Link Control, 논리 링크 제어)
      네트워크 계층(3계층)과 연결되는 위쪽 세부 계층이다.
      • 상위 프로토콜 식별: IP나 IPX 같은 다양한 상위 계층 프로토콜들이 데이터 링크 계층을 공유할 수 있게 해준다. (멀티플렉싱)
      • 흐름 및 에러 제어: 데이터를 받는 쪽이 처리할 수 있을 만큼만 보내도록 조절(흐름 제어)하고, 전송 중 깨진 데이터가 있다면 재전송을 요청(에러 제어)하는 논리적인 작업을 수행한다.

    결국 MAC'어떤 길(매체)을 통해 누구(주소)에게 갈 것인가'를 고민하고, LLC'데이터를 어떤 규칙(프로토콜)으로 안전하게 주고받을 것인가'를 담당한다고 보면 된다.

✨ 예시

같은 네트워크(사무실) 안에서는 IP 주소보다 MAC 주소가 실질적인 배달원 역할을 한다.

  1. 프레임 포장 (Encapsulation)
    컴퓨터 A는 보낼 파일(데이터)을 '프레임'이라는 봉투에 담는다. 이때 봉투 겉면에 목적지 MAC 주소(AA:BB:CC:DD:EE:FF)를 적고, 데이터가 깨지지 않았는지 확인할 수 있는 CRC 도장을 찍는다.
  2. 스위치의 지능적인 배달
    사무실의 모든 컴퓨터가 연결된 스위치는 이 프레임을 받는다. 스위치는 자신의 'MAC 주소 테이블'을 보고, AA:BB:CC:DD:EE:FF 주소를 가진 컴퓨터 B가 몇 번 구멍(포트)에 연결되어 있는지 찾아내어 그곳으로만 쏙 보내준다.
  3. 최종 수신 및 검사
    컴퓨터 B는 도착한 프레임의 목적지 주소가 자신의 MAC 주소와 일치하는지 확인한다. 주소가 맞다면 CRC를 체크해 배달 중에 내용물이 손상되지 않았는지 확인한 후, 봉투를 열어 파일을 꺼낸다.

✨ PDU (Protocol Data Unit)

프레임(Frame)


4. 계층 3: 네트워크 계층 (Network Layer)

✨ 역할

  • 서로 다른 네트워크 간 데이터 전송 경로를 결정한다.

✨ 주요 장비

  • 라우터(Router): 최적 경로 선택 및 패킷 전달
  • L3 스위치: 스위칭 + 라우팅 기능

    🔎 라우터, L3 스위치의 역할

    라우터와 L3 스위치는 모두 OSI 3계층(네트워크 계층)에서 작동하며, IP 주소를 기반으로 데이터를 목적지까지 가장 빠르고 안전하게 전달하는 역할을 한다.
    하지만 두 장비는 태생과 주된 용도에서 차이가 있다.

    1. 라우터 (Router)
      네트워크의 '길잡이' 역할을 하는 장비이다.
      • 경로 선택(Routing): 라우팅 알고리즘을 통해 목적지까지 가는 최적의 경로를 결정한다.
      • 서로 다른 네트워크 연결: 예를 들어, 우리 집의 내부 네트워크(LAN)와 외부 인터넷(WAN)을 연결해주는 핵심 장비이다.
      • 다양한 기능: 보안(방화벽), 주소 변환(NAT), 복잡한 경로 설정 등 지능적인 처리를 많이 수행한다.
    2. L3 스위치 (Layer 3 Switch)
      2계층 장비인 '스위치'에 '라우팅 기능'을 합친 장비이다.
      • 하드웨어 기반 라우팅: 라우터는 소프트웨어적으로 경로를 계산하는 경우가 많지만, L3 스위치는 전용 칩(ASIC)을 사용해 하드웨어 방식으로 아주 빠르게 데이터를 전달한다.
      • 내부 네트워크 최적화: 주로 대규모 회사 내부에서 여러 개의 부서(VLAN) 간에 데이터를 빠르게 주고받을 때 사용한다.
      • 포트 밀도: 라우터보다 훨씬 많은 포트를 가지고 있어 여러 장비를 직접 연결하기 좋다.

    즉, 라우터"인터넷 세상으로 나가는 대문"과 같고, L3 스위치"건물 내부의 층간 이동을 아주 빠르게 도와주는 고속 엘리베이터"와 같다.

✨ 주요 기능

  1. 라우팅(Routing): 최적 경로 선택 ➡️ RIP, OSPF, BGP 등의 라우팅 프로토콜 사용
  2. 논리적 주소 지정: IP 주소 할당
  3. 패킷 분할/재조립: 큰 데이터를 작은 패킷으로 분할
  4. 혼잡 제어: 네트워크 트래픽 관리

✨ IP 주소 체계

  1. IPv4 (Internet Protocol version 4)
    현재 가장 널리 사용되지만, 주소가 거의 고갈된 상태인 32비트 주소 체계이다.
    • 구조: 32비트를 8비트씩 4부분으로 나눈다.
    • 표기: 각 부분을 10진수로 쓰고 점(.)으로 구분한다. (예: 192.168.0.1)
    • 범위: 각 부분은 0~255까지 가능하며, 약 43억 개의 주소를 만들 수 있다.
    • 구성: 주소는 다시 네트워크 부분호스트 부분으로 나뉘며, 이를 구분하기 위해 '서브넷 마스크'를 함께 사용한다.
  1. IPv6 (Internet Protocol version 6)
    IPv4의 주소 부족 문제를 해결하기 위해 등장한 차세대 128비트 주소 체계이다.
    • 구조: 128비트를 16비트씩 8부분으로 나눈다.
    • 표기: 각 부분을 16진수로 쓰고 콜론(:)으로 구분한다. (예: 2001:0db8:85a3:0000:0000:8a2e:0370:7334)
    • 특징
      • 무한에 가까운 주소: 약 3.4×10^38개로, 지구상의 모든 모래알에 IP를 부여해도 남을 만큼 방대하다.
      • 보안 및 속도: 설계 단계부터 보안(IPsec) 기능이 포함되었고, 헤더 구조가 단순해져 라우터의 처리 속도가 빠르다.
      • 생략 규칙: 00000으로 줄이거나, 연속된 0의 묶음은 : :으로 한 번 생략할 수 있어 표기가 간편해진다.

✨ 패킷 구조

패킷은 IP 헤더 + TCP 헤더 + 데이터로 이루어져 있다.

  1. IP 헤더
    IP 헤더는 라우터가 길을 찾을 때(Routing) 참조하는 가장 중요한 정보들을 담고 있다.
    • 출발지/목적지 IP 주소
      • 가장 핵심적인 정보이다. 편지의 '보내는 사람'과 '받는 사람' 주소와 같으며, 라우터는 이 목적지 IP를 보고 다음 경로를 결정한다.
    • 프로토콜 (Protocol)
      • IP 패킷 안에 담긴 상위 계층의 프로토콜 종류를 알려준다. (예: 6이면 TCP, 17이면 UDP)
      • 받는 쪽 컴퓨터가 "아, 이 상자 안에는 TCP라는 편지가 들어있구나!"라고 알 수 있게 해준다.
    • TTL (Time To Live, 생존 시간)
      • 패킷의 '유효 기간'이다. 라우터를 하나 거칠 때마다 이 숫자가 1씩 줄어든다.
      • 만약 경로 설정 오류로 패킷이 네트워크를 무한해 뱅뱅 도는 것을 방지하기 위해, 0이 되면 패킷을 자동으로 폐기한다.
    • 버전 (Version)
      • 이 패킷이 IPv4인지 IPv6인지 구분한다.
    • 헤더 길이 및 전체 길이
      • 운송장(헤더)이 어디까지인지, 그리고 상자 전체의 크기가 얼마인지를 나타내어 데이터를 정확히 읽을 수 있게 한다.
  1. TCP 헤더
    IP 헤더가 "어느 집(IP)으로 갈까?"를 결정한다면, TCP 헤더는 "그 집의 몇 번 방(Port)으로 가서, 어떻게 안전하게 전달할까?"를 담당한다.
    • 포트(Port) 번호: 데이터를 받을 구체적인 프로그램 주소 (예: 웹 브라우저는 80/443번 방)
    • 순서 번호 (Sequence Number): 큰 데이터를 쪼개서 보낼 때, 나중에 다시 합칠 수 있도록 붙이는 번호표
    • 확인 응답 번호 (Acknowledgment Number): "데이터 잘 받았어! 다음 거 보내줘"라고 상대방에게 알려주는 신호
    • 윈도우 크기 (Window Size): 한 번에 얼마나 많은 데이터를 보낼지 조절하여 네트워크가 막히지 않게 한다.
    • 체크섬 (Checksum): TCP 헤더와 데이터가 전송 중에 깨지지 않았는지 최종 확인한다.
  1. 데이터 (Payload)
    사용자가 실제로 보내려고 하는 진짜 내용물이다.
    웹사이트 주소를 입력했다면 HTTP 요청 메시지가 들어있을 것이고, 파일을 보내는 중이라면 파일의 일부분이 들어있을 것이다.

✨ 라우팅 예시

예: 서울 → 부산 데이터 라우팅 여정데이터가 각 도시의 라우터를 거칠 때마다, 라우터는 자신의 '라우팅 테이블(지도)'을 확인하여 다음 행선지를 결정한다.

  1. 서울 (출발지)
    • 컴퓨터가 "부산(203.252.1.20)으로 보내줘!"라고 요청하면, 서울 라우터는 목적지 IP를 확인한다.
    • 지도(라우팅 테이블)를 보니 지금은 대전을 거쳐가는 것이 가장 빠르다고 판단하여 대전으로 패킷을 던진다.
  1. 대전 & 대구 (중간 경유지)
    • 대전 라우터: "부산행이네? 우리 지도를 보니 다음은 대구로 보내는 게 최선이야."
    • 대구 라우터: "거의 다 왔어! 부산 라우터에게 전달할게."
    • 이 과정에서 패킷의 TTL(생존 시간) 값이 하나씩 줄어들며 무한 루프를 방지한다.
  1. 부산 (목적지)
    • 부산 라우터는 패킷을 받아 "오, 우리 동네 주소(203.252.1.20)네!"라고 확인한다.
    • 이제 2계층의 도움을 받아 해당 IP를 가진 컴퓨터의 MAC 주소를 찾아 최종 배달을 완료한다.

라우팅의 핵심 포인트

  • 최적 경로 선택: 단순히 거리만 보는 게 아니라, 현재 네트워크가 얼마나 막히는지(트래픽) 등을 고려한다.
  • IP 주소 유지: 서울에서 부산까지 가는 동안, 패킷 겉면에 적힌 출발지/목적지 IP는 변하지 않는다.
  • MAC 주소 변경: 하지만 각 라우터를 건너갈 때마다, 바로 다음 장비로 가기 위한 물리적 주소(MAC)는 계속 갈아 끼워진다.

✨ PDU (Protocol Data Unit)

패킷(Packet)


5. 계층 4: 전송 계층 (Transport Layer)

✨ 역할

  • 종단 간(End-to-End) 신뢰성 있는 데이터 전송을 보장한다.

✨ 주요 프로토콜

  1. TCP (Transmission Control Protocol)
    "느려도 좋으니 단 하나의 데이터도 놓칠 수 없다!"는 완벽주의자 스타일이다.
    • 특징
      • 연결 지향적 (3-way handshake)
      • 신뢰성 보장 (재전송, 순서 보장)
      • 흐름 제어 & 혼잡 제어
      • 느리지만 정확함
    • 사용 예시: 웹 브라우징 (HTTP/HTTPS), 이메일 (SMTP, POP3),파일 전송 (FTP) 등 데이터의 정확성이 중요한 서비스
  1. UDP (User Datagram Protocol)
    • 특징
      • 비연결성
      • 신뢰성 미보장
      • 빠른 전송 속도
      • 실시간 애플리케이션에 적합
    • 사용 예시: 실시간 영상 스트리밍, 온라인 게임, DNS 조회, 보이스톡(VolP) 등 조금 끊기더라도 실시간성이 중요한 서비스

✨ 주요 포트 번호

  • 웹 서버: 포트 80(HTTP), 443(HTTPS)
  • 메일: 포트 25(SMTP), 110(POP3)
  • SSH: 포트 22
  • FTP: 포트 21

✨ TCP 세그먼트 구조

TCP 세그먼트는 데이터를 단순히 보내는 것에 그치지 않고, "상대방이 잘 받았는지, 순서는 맞는지"를 끝까지 책임지는 아주 꼼꼼한 배달부와 같다.

  1. 출발지/목적지 포트 (Port Number)
    • 역할: 컴퓨터 내의 수많은 프로그램 중 어떤 프로그램에 데이터를 전달할지 결정한다.
    • 비유: 아파트(IP 주소)에 도착한 택배가 몇 호(Port)로 가야 하는지 적혀 있는 것과 같다.
  1. 순서 번호 (Sequence Number)
    • 역할: 커다란 데이터를 여러 개의 세그먼트로 쪼개서 보낼 때, 각 조각에 붙이는 번호표이다.
    • 중요성: 인터넷 망을 통과하다 보면 조각들의 순서가 뒤바뀔 수 있는데, 받는 쪽에서 이 번호를 보고 다시 올바른 순서로 조립한다.
  1. 확인 응답 번호 (Acknowledgment Number, ACK)
    • 역할: 데이터를 받은 쪽에서 보낸 쪽으로 "방금 보낸 거 잘 받았어! 다음은 몇 번 줄 차례야"라고 알려주는 신호이다.
    • 신뢰성의 핵심: 만약 일정 시간 동안 이 ACK 신호가 오지 않으면, 보낸 쪽은 데이터가 유실되었다고 판단하여 다시 전송(재전송)한다.
  1. 데이터 (Payload)
    • 역할: 상위 계층(세션, 표현, 응용 계층)에서 내려온 실제 정보이다.
    • 내용: 웹페이지의 텍스트, 이미지 파일의 조각, 채팅 메시지 등이 여기에 담긴다.

✨ PDU (Protocol Data Unit)

  • 세그먼트 (Segment) - TCP
  • 데이터그램 (Datagram) - UDP

6. 계층 5: 세션 계층 (Session Layer)

✨ 역할

  • 응용 프로그램 간 논리적 연결을 수립, 유지, 종료한다.

✨ 주요 기능

  1. 세션 설정/해제: 통신 시작과 종료 관리
  2. 동기화: 체크포인트 설정으로 데이터 동기화
  3. 대화 제어: 반이중/전이중 통신 관리

✨ 프로토콜

  • NetBIOS: Windows 네트워크 세션
  • RPC (Remote Prodcedure Call): 원격 프로시저 호출
  • PPTP: VPN 터널링

✨ 실생활 예시

예: 화상 회의로 보는 세션 관리

화상 회의 시스템에서 세션 계층은 단순히 연결만 하는 게 아니라, 회의가 원활하게 진행되도록 '대화의 흐름'을 제어한다.

  • 세션 수립: 사용자가 로그인을 하고 회의실에 들어오는 논리적인 연결을 만든다.
  • 대화 제어: 여러 명이 동시에 말하지 않도록 순서를 정하거나, 발표자 화면을 띄워주는 등의 제어를 담당한다.
  • 동기화 및 복구: 회의 도중 잠깐 인터넷이 끊겨도 아예 튕기지 않고 다시 연결해주는 역할을 한다.

✨ 체크포인트 개념

"처음부터 다시"는 없다! (Synchronization)

파일 다운로드 예시에서 세션 계층의 핵심 기능인 '체크포인트(동기화 점)'가 등장한다.

  • 원리: 데이터를 전송하는 중간중간에 "여기까지는 안전하게 받았어"라는 표시(체크포인트)를 남긴다.
  • 장점: 1GB 파일을 받다가 900MB에서 끊겼을 때, 세션 계층이 없다면 처음부터 다시 받아야 하지만, 세션 계층은 마지막 체크포인트를 기억하고 있어 그 부분부터 이어받기를 가능하게 한다.

✨ PDU (Protocol Data Unit)

데이터 (Data)


7. 계층 6: 표현 계층 (Presentation Layer)

✨ 역할

  • 데이터의 형식 변환, 암호화, 압축을 담당한다.

✨ 주요 기능

  1. 데이터 변환
    • 인코딩/디코딩: ASCII, EBCDIC, Unicode
    • 직렬화: 데이터 구조 → 바이트 스트림
  2. 암호화/복호화
    • SSL/TLS: HTTPS 통신 보안
    • 암호화 알고리즘: AES, RSA
  3. 압축/해제
    • 손실 압축: JPEG, MP3
    • 무손실 압축: ZIP, PNG

✨ 파일 형식

  • 이미지: JPEG, PNG, GIF, BMP
  • 비디오: MPEG, MP4, AVI
  • 문서: PDF, DOCX

✨ 예시

  • 송신 측: 텍스트 ➡️ UTF-8 인코딩 ➡️ AES 암호화 ➡️ GZIP 압축
  • 수신 측: GZIP 해제 ➡️ AES 복호화 ➡️ UTF-8 인코딩 ➡️ 텍스트
  1. 인코딩 & 디코딩: 번역
    • 역할: 컴퓨터마다 문자를 처리하는 방식이 다를 수 있기 때문에, 전 세계 공통 표준인 UTF-8 등으로 번역한다.
    • 비유: 한국어 편지를 전 세계 사람이 읽을 수 있도록 영어(공통어)로 번역하는 것과 같다.
  1. 암호화 & 복호화: 보안
    • 역할: 전송 중에 누군가 데이터를 훔쳐봐도 내용을 알 수 없도록 AES 같은 알고리즘으로 자물쇠를 채운다.
    • 비유: 편지 내용을 암호문으로 바꾸고, 오직 열쇠(Key)를 가진 사람만 읽을 수 있게 하는 것이다.
  1. 압축 & 해제: 효율
    • 역할: 데이터의 크기를 줄여서 더 빠르게 보내기 위해 GZIP 등으로 꽉꽉 눌러 담는다.
    • 비유: 부피가 큰 옷을 진축 팩에 넣어 부피를 줄여 배송비를 아끼는 것과 같다.

✨ PDU (Protocol Data Unit)

데이터 (Data)


8. 계층 7: 응용 계층 (Application Layer)

✨ 역할

  • 사용자와 가장 가까운 계층으로, 최종 서비스를 제공한다.

✨ 주요 프로토콜

  1. HTTP/HTTPS (웹)
    • HTTP: 포트 80, 평문 통신
    • HTTPS: 포트 443, TLS/SSL 암호화
  1. FTP (파일 전송)
    • 파일 업로드/다운로드
    • 포트 20(데이터), 21(제어)
  1. SMTP/POP3/IMAP (이메일)
    • SMTP: 메일 전송 (포트 25)
    • POP3: 메일 수신 (포트 110)
    • IMAP: 메일 동기화 (포트 143)
  1. DNS (도메인 이름 시스템)
    • 도메인 ➡️ IP 주소 변환
    • 예: www.google.com ➡️ 172.217.31.142
  1. SSH (원격 접속)
    • 안전한 원격 터미널 (포트 22)

✨ 실생활 예시

예: 웹 브라우저 접속 과정

  1. DNS로 IP 주소 조회 (전화번호부 찾기)
    컴퓨터는 www.example.com이라는 문자를 이해하지 못하고 93.184.216.32 같은 IP 주소가 필요하다.
    그래서 가장 먼저 DNS(Domain Name System) 서버에 물어봐서 주소를 알아낸다.
  1. HTTP 요청 전송 (주문하기)
    IP 주소를 알게 된 브라우저는 해당 서버에 HTTP(HyperText Transfer Protocol)라는 약속된 언어로 "메인 페이지 정보를 보내줘!"라고 요청을 보낸다.
  1. 서버에서 HTML 응답 (택배 발송)
    요청을 받은 웹 서버는 사이트의 뼈대가 되는 HTML 문서와 이미지, 스타일 시트 등을 패킷에 담아 브라우저에게 보내준다.
  1. 브라우저가 화면에 렌더링 (조립 및 전시)
    브라우저는 받은 복잡한 코드(HTML/CSS/JS)를 해석해서 우리가 눈으로 보는 예쁜 웹페이지 화면으로 만들어준다. 이것을 렌더링이라고 한다.

✨ PDU (Protocol Data Unit)

메시지(Message) 또는 데이터(Data)


9. 데이터 전송 과정

📤 송신 측 (캡슐화)

데이터에 각 계층의 '헤더(운송장)'를 붙여나가는 과정이다.

  • 7~5계층에서 만들어진 순수한 데이터는 4계층에서 TCP 헤더를 만나 '누구에게(포트)' 갈지 정해진다.
  • 3계층에서는 IP 헤더가 붙어 '어느 집(IP)'으로 갈지 정해지고, 2계층에서는 MAC 헤더가 붙어 '다음 길목'을 결정한다.
  • 마지막으로 1계층에서 이 모든 정보가 전기 신호로 바뀌어 선을 타고 나간다.

📥 수신 측 (역캡슐화)

받은 신호에서 포장지를 하나씩 벗겨내어 실제 데이터를 확인하는 과정이다.

  • 신호를 받으면 2계층에서 MAC 주소를 보고 "내 거 맞나?" 확인하고 에러를 체크한다.
  • 3계층에서는 IP 주소를 보고 최종 목적지가 맞는지 확인하며, 4계층에서는 포트 번호를 보고 어떤 프로그램(카톡, 메일 등)에 줄지 결정한다.
  • 마지막으로 6~7계층에서 암호를 풀고 번역해서 우리 눈에 보이는 화면으로 띄워준다.

📧 실제 예시: 이메일 전송

  • 7계층 (응용): SMTP 프로토콜을 사용하여 메일의 본문과 수신자 정보를 작성한다.
  • 6계층 (표현): 메일 내용을 UTF-8로 인코딩하고, 안전하게 TLS로 암호화한다.
  • 5계층 (세션): 메일 서버와 통신하기 위한 논리적인 연결(세션)을 맺는다.
  • 4계층 (전송): 메일 전송 표준 포트인 25번(또는 587번)을 지정하고, 데이터가 유실되지 않도록 TCP 헤더를 붙인다.
  • 3계층 (네트워크): 메일 서버의 IP 주소를 목적지로 설정한다.
  • 2계층 (데이터 링크): 다음 목적지(라우터 등)로 가기 위한 MAC 주소를 입힌다.
  • 1계층 (물리): 이 모든 정보가 담긴 거대한 덩어리를 전기 신호로 바꿔 전선 밖으로 던진다.

10. 7계층 핵심 한눈에 보기

계층핵심 역할데이터 단위(PDU)주소/식별자 포인트
7계층: 응용(Application)사용자/앱이 쓰는 네트워크 기능 제공 (HTTP 등)DataURL, 도메인 등 (상위 개념)
6계층: 표현(Presentation)데이터 형식 변환/압축/암복호화DataTLS를 표현 계층으로 보기도 함
5계층: 세션(Session)통신 세션의 설정/유지/종료 (논리적 연결)Data실무에선 4/7과 경계가 흐릿한 편 (개념적으로 이해)
4계층: 전송(Transportation)프로세스-프로세스 전달, 신뢰성/흐름/혼잡(TCP/UDP)SegmentPort
3계층: 네트워크(Network)호스트-호스트 경로 선택(라우팅), IP 기반 전달PacketIP
2계층: 데이터 링크(Data Link)같은 링크 내 전달, MAC, 오류 검출 등FrameMAC
1계층: 물리(Physical)비트를 신호로 실어 나름 (전기/광/무선)Bit케이블/허브 등 물리 매체

11. TCP/IP 모델과의 비교

OSI 7계층TCP/IP 4계층주요 프로토콜
응용 계층응용 계층HTTP, FTP, SMTP, DNS
표현 계층(응용 계층에 포함)SSL/TLS, JPEG
세션 계층(응용 계층에 포함)NetBIOS, RPC
전송 계층전송 계층TCP, UDP
네트워크 계층인터넷 계층IP, ICMP, ARP
데이터 링크 계층네트워크 액세스 계층Ethernet, Wi-Fi
물리 계층(네트워크 액세스 계층에 포함)Cable, Hub

0개의 댓글