OSI 모델과 TCP/IP 모델

OSI 모델과 TCP/IP 모델

OSI 모델과 TCP/IP 모델

1. OSI 모델이란?

배경

  • 1980년대 초, 각 제조사마다 독자적인 네트워크 규격 사용
  • 서로 다른 제조사 장비 간 통신 불가능
  • **ISO (국제표준화기구)**가 통신 표준 규격 제정 필요성 인식
  • OSI (Open Systems Interconnection) 모델 탄생

OSI 7계층 구조

┌─────────────────────────────────────────────────────────────┐
│  7계층  │  응용 계층 (Application Layer)                     │
│        │  사용자와 직접 상호작용하는 애플리케이션 서비스          │
├─────────────────────────────────────────────────────────────┤
│  6계층  │  표현 계층 (Presentation Layer)                    │
│        │  데이터 형식 변환, 암호화, 압축                       │
├─────────────────────────────────────────────────────────────┤
│  5계층  │  세션 계층 (Session Layer)                         │
│        │  통신 세션 관리, 연결 설정/유지/종료                   │
├─────────────────────────────────────────────────────────────┤
│  4계층  │  전송 계층 (Transport Layer)                       │
│        │  신뢰성 있는 데이터 전송, 포트 번호                    │
├─────────────────────────────────────────────────────────────┤
│  3계층  │  네트워크 계층 (Network Layer)                      │
│        │  논리 주소(IP), 라우팅, 경로 결정                     │
├─────────────────────────────────────────────────────────────┤
│  2계층  │  데이터 링크 계층 (Data Link Layer)                 │
│        │  물리 주소(MAC), 프레임 전송, 오류 검출                │
├─────────────────────────────────────────────────────────────┤
│  1계층  │  물리 계층 (Physical Layer)                        │
│        │  비트 전송, 전기/광 신호, 케이블 규격                  │
└─────────────────────────────────────────────────────────────┘

계층 암기법

영어: "All People Seem To Need Data Processing"
      Application - Presentation - Session - Transport - Network - Data Link - Physical

한글: "응표세전네데물" (응용-표현-세션-전송-네트워크-데이터링크-물리)

2. OSI 각 계층 상세 설명

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

역할

  • 사용자가 네트워크에 접근하는 창구
  • 애플리케이션 서비스 제공 (이메일, 웹 브라우저, 파일 전송)

프로토콜 및 예시

프로토콜용도
HTTP/HTTPS웹 브라우징
FTP파일 전송
SMTP/POP3/IMAP이메일
DNS도메인 이름 해석
SSH보안 원격 접속
Telnet원격 접속
사용자 ←→ [웹 브라우저] ←→ [HTTP 프로토콜] ←→ 웹 서버

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

역할

  • 데이터 형식 변환 (인코딩/디코딩)
  • 데이터 암호화/복호화
  • 데이터 압축/해제

예시

데이터 변환 예시:

[송신측]                                    [수신측]
텍스트 데이터                                텍스트 데이터
    ↓                                           ↑
JPEG 인코딩 ─────────────────────────→ JPEG 디코딩
SSL 암호화  ─────────────────────────→ SSL 복호화
GZIP 압축   ─────────────────────────→ GZIP 해제

관련 형식/기술

  • 이미지: JPEG, PNG, GIF
  • 비디오: MPEG, AVI
  • 암호화: SSL/TLS
  • 문자 인코딩: ASCII, UTF-8

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

역할

  • 통신 세션 설정, 유지, 종료
  • 동기화 지점 관리
  • 전이중/반이중 통신 방식 결정

세션이란?

세션 = 통신을 위한 논리적 연결

예: 온라인 쇼핑
┌─────────────────────────────────────────────────┐
│  1. 로그인 (세션 시작)                            │
│  2. 상품 검색, 장바구니 담기 (세션 유지)            │
│  3. 결제 완료                                    │
│  4. 로그아웃 (세션 종료)                          │
└─────────────────────────────────────────────────┘

통신 방식

방식설명예시
단방향 (Simplex)한 방향으로만 통신라디오, TV
반이중 (Half-Duplex)양방향, 동시 불가무전기
전이중 (Full-Duplex)양방향, 동시 가능전화

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

역할

  • 신뢰성 있는 데이터 전송 (TCP)
  • 빠른 데이터 전송 (UDP)
  • 포트 번호로 애플리케이션 식별
  • 세그먼트 단위로 데이터 분할

데이터 단위

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

TCP vs UDP

┌─────────────────────────┬─────────────────────────┐
│          TCP            │          UDP            │
├─────────────────────────┼─────────────────────────┤
│ 연결 지향 (Connection)   │ 비연결형 (Connectionless)│
│ 신뢰성 보장              │ 신뢰성 없음              │
│ 순서 보장                │ 순서 보장 안됨           │
│ 흐름/혼잡 제어           │ 제어 없음               │
│ 느림                    │ 빠름                    │
├─────────────────────────┼─────────────────────────┤
│ 웹, 이메일, FTP         │ 스트리밍, 게임, DNS      │
└─────────────────────────┴─────────────────────────┘

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

역할

  • 논리 주소 (IP 주소) 지정
  • 라우팅: 목적지까지 최적 경로 결정
  • 다른 네트워크 간 통신 담당

데이터 단위

  • 패킷 (Packet)

주요 장비

  • 라우터 (Router)
라우팅 예시:

PC (192.168.1.10) ─→ [라우터A] ─→ [라우터B] ─→ [라우터C] ─→ 서버 (10.0.0.5)
                        │
                   라우팅 테이블로
                   최적 경로 결정

주요 프로토콜

  • IP (Internet Protocol)
  • ICMP (Internet Control Message Protocol)
  • ARP (Address Resolution Protocol)
  • 라우팅 프로토콜: RIP, OSPF, BGP

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

역할

  • 물리 주소 (MAC 주소) 사용
  • 프레임 단위로 데이터 전송
  • 오류 검출 (CRC)
  • 같은 네트워크 내 통신

데이터 단위

  • 프레임 (Frame)

주요 장비

  • 스위치 (Switch)
  • 브리지 (Bridge)
프레임 구조:
┌───────────┬───────────┬───────────┬─────────┬─────────┐
│ 목적지 MAC │ 출발지 MAC │   타입    │  데이터  │   FCS   │
│  (6bytes) │  (6bytes) │ (2bytes)  │         │(4bytes) │
└───────────┴───────────┴───────────┴─────────┴─────────┘
                                               오류 검출용

하위 계층

하위 계층역할
LLC (Logical Link Control)오류 제어, 흐름 제어
MAC (Media Access Control)물리적 주소 지정, 매체 접근 제어

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

역할

  • 비트(0, 1)를 전기 신호로 변환
  • 물리적 연결 (케이블, 커넥터)
  • 전송 매체 규격 정의

데이터 단위

  • 비트 (Bit)

주요 장비

  • 허브 (Hub)
  • 리피터 (Repeater)
  • 케이블, 커넥터
비트 → 전기 신호 변환:

디지털 데이터:  1   0   1   1   0   0   1   0
               ↓
전기 신호:    ┌─┐ ┌─┐ ┌─┐     ┌─┐
              │ │ │ │ │ │     │ │
            ──┘ └─┘ └─┘ └─────┘ └──────

전송 매체

매체특징
UTP 케이블구리선, 가장 일반적
광케이블빛 사용, 고속/장거리
동축 케이블케이블 TV
무선전파 사용

3. TCP/IP 모델

OSI 모델 vs TCP/IP 모델

        OSI 7계층                    TCP/IP 4계층
┌─────────────────────┐        ┌─────────────────────┐
│    응용 계층 (7)     │        │                     │
├─────────────────────┤        │                     │
│    표현 계층 (6)     │───────→│    응용 계층 (4)     │
├─────────────────────┤        │                     │
│    세션 계층 (5)     │        │                     │
├─────────────────────┤        ├─────────────────────┤
│    전송 계층 (4)     │───────→│    전송 계층 (3)     │
├─────────────────────┤        ├─────────────────────┤
│   네트워크 계층 (3)   │───────→│   인터넷 계층 (2)    │
├─────────────────────┤        ├─────────────────────┤
│  데이터 링크 계층 (2) │        │                     │
├─────────────────────┤───────→│  네트워크 접속 계층 (1)│
│    물리 계층 (1)     │        │                     │
└─────────────────────┘        └─────────────────────┘

TCP/IP 모델 상세

4계층: 응용 계층 (Application Layer)

  • OSI 5, 6, 7계층 통합
  • 사용자 애플리케이션과 직접 상호작용
  • 프로토콜: HTTP, FTP, SMTP, DNS, SSH, Telnet

3계층: 전송 계층 (Transport Layer)

  • OSI 4계층과 동일
  • 종단 간 신뢰성 있는 데이터 전송
  • 프로토콜: TCP, UDP

2계층: 인터넷 계층 (Internet Layer)

  • OSI 3계층과 동일
  • IP 주소 기반 라우팅
  • 프로토콜: IP, ICMP, ARP

1계층: 네트워크 접속 계층 (Network Access Layer)

  • OSI 1, 2계층 통합
  • 물리적 네트워크 연결
  • 프로토콜: Ethernet, Wi-Fi, PPP

TCP/IP 프로토콜 스위트

┌────────────────────────────────────────────────────────────┐
│                      응용 계층                              │
│   HTTP  HTTPS  FTP  SMTP  POP3  IMAP  DNS  SSH  Telnet    │
├────────────────────────────────────────────────────────────┤
│                      전송 계층                              │
│              TCP                    UDP                    │
├────────────────────────────────────────────────────────────┤
│                     인터넷 계층                             │
│         IP          ICMP          ARP         RARP         │
├────────────────────────────────────────────────────────────┤
│                   네트워크 접속 계층                         │
│       Ethernet         Wi-Fi          PPP        ...       │
└────────────────────────────────────────────────────────────┘

4. OSI 모델 vs TCP/IP 모델 비교

항목OSI 모델TCP/IP 모델
계층 수7계층4계층
개발 시기1984년1970년대
개발 주체ISODARPA (미 국방부)
특징이론적, 참조 모델실용적, 실제 구현
현재 사용교육/참조용인터넷 표준
장점세분화, 명확한 역할단순, 효율적
단점복잡, 구현 어려움계층 구분 모호

왜 TCP/IP 모델이 표준이 되었나?

  1. 실용성: 이미 구현되어 동작하고 있었음
  2. 유연성: 하드웨어에 독립적
  3. 인터넷의 성공: ARPANET에서 시작, 전 세계로 확산
  4. 단순성: 4계층으로 구현이 용이

5. 계층별 데이터 단위 (PDU)

PDU (Protocol Data Unit)

각 계층에서 처리하는 데이터의 단위

┌────────────┬──────────────────┬─────────────────┐
│   계층     │      PDU         │     구성        │
├────────────┼──────────────────┼─────────────────┤
│ 응용 계층   │ 데이터 (Data)    │ 순수 데이터      │
├────────────┼──────────────────┼─────────────────┤
│ 전송 계층   │ 세그먼트/데이터그램│ TCP/UDP 헤더+데이터│
├────────────┼──────────────────┼─────────────────┤
│ 네트워크 계층│ 패킷 (Packet)   │ IP 헤더+세그먼트  │
├────────────┼──────────────────┼─────────────────┤
│ 데이터링크  │ 프레임 (Frame)   │ MAC 헤더+패킷+FCS│
├────────────┼──────────────────┼─────────────────┤
│ 물리 계층   │ 비트 (Bit)      │ 0과 1의 나열     │
└────────────┴──────────────────┴─────────────────┘

캡슐화 과정

송신 측 (위에서 아래로):

[데이터] ─────────────────────────────────────────→ 응용 계층
    ↓
[TCP 헤더][데이터] ───────────────────────────────→ 전송 계층 (세그먼트)
    ↓
[IP 헤더][TCP 헤더][데이터] ──────────────────────→ 네트워크 계층 (패킷)
    ↓
[ETH 헤더][IP 헤더][TCP 헤더][데이터][FCS] ───────→ 데이터링크 (프레임)
    ↓
101010101010101010101010... ─────────────────────→ 물리 계층 (비트)

역캡슐화 과정

수신 측 (아래에서 위로):

101010101010101010101010... ←───────────────────── 물리 계층
    ↓
[ETH 헤더][IP 헤더][TCP 헤더][데이터][FCS] ←─────── 데이터링크
    ↓ (ETH 헤더 제거)
[IP 헤더][TCP 헤더][데이터] ←────────────────────── 네트워크 계층
    ↓ (IP 헤더 제거)
[TCP 헤더][데이터] ←─────────────────────────────── 전송 계층
    ↓ (TCP 헤더 제거)
[데이터] ←───────────────────────────────────────── 응용 계층

6. 계층화의 장점

1. 독립성

  • 각 계층은 독립적으로 동작
  • 한 계층의 변경이 다른 계층에 영향 없음
예: 유선 → 무선으로 변경
물리 계층만 변경하면 됨 (1계층)
상위 계층 (2~7계층)은 변경 불필요

2. 표준화

  • 각 계층별로 표준 프로토콜 정의
  • 다른 제조사 장비 간 호환성 보장

3. 모듈화

  • 문제 발생 시 해당 계층만 점검
  • 유지보수 용이
문제 발생 시 진단:
- 물리 연결 문제? → 1계층 (케이블 확인)
- IP 주소 문제? → 3계층 (IP 설정 확인)
- 웹 접속 문제? → 7계층 (브라우저/서버 확인)

4. 역할 분담

  • 계층별 명확한 역할 정의
  • 복잡한 통신 과정을 단순화

7. 실무에서의 활용

네트워크 문제 해결 (Troubleshooting)

계층별 점검 순서 (Bottom-Up):

1계층: 케이블 연결됐나? LED 점등?
       → ping 127.0.0.1 (루프백 테스트)

2계층: MAC 주소 확인, 스위치 포트 상태
       → arp -a

3계층: IP 주소 설정 올바른가? 라우팅?
       → ipconfig (Windows) / ifconfig (Linux)
       → ping 게이트웨이

4계층: 포트 열려있나? 방화벽?
       → netstat -an
       → telnet [IP] [Port]

7계층: 애플리케이션 동작하나?
       → 브라우저, 서비스 상태 확인

계층별 주요 장비

계층장비역할
1계층허브, 리피터신호 증폭, 물리 연결
2계층스위치, 브리지MAC 기반 프레임 전달
3계층라우터IP 기반 패킷 라우팅
4~7계층방화벽, 로드밸런서상위 계층 처리

핵심 정리

개념설명
OSI 모델ISO가 제정한 7계층 네트워크 참조 모델
TCP/IP 모델실제 인터넷에서 사용하는 4계층 모델
계층화통신 과정을 단계별로 분리하여 독립성 확보
캡슐화상위 계층 데이터에 헤더를 추가하는 과정
역캡슐화헤더를 제거하고 원본 데이터를 추출하는 과정
PDU각 계층에서 처리하는 데이터 단위

OSI 7계층 요약

계층이름역할PDU장비
7응용사용자 서비스데이터-
6표현데이터 변환/암호화데이터-
5세션세션 관리데이터-
4전송신뢰성 전송세그먼트-
3네트워크라우팅, IP패킷라우터
2데이터링크MAC, 프레임프레임스위치
1물리전기신호비트허브

용어 정리

  • 규격: 기술적인 사항에 대해 제정한 기준 (기술적 표준)
  • ISO: International Organization for Standardization (국제표준화기구)
  • OSI: Open Systems Interconnection (개방형 시스템 상호연결)
  • TCP/IP: Transmission Control Protocol / Internet Protocol