1. OSI 7계층

📌 개념

네트워크 통신을 7개 계층으로 표준화한 모델


🔢 7계층 구조

┌─────────────────────────┐
│ 7. 응용 계층 (Application) │ ← 사용자 인터페이스
├─────────────────────────┤
│ 6. 표현 계층 (Presentation)│ ← 데이터 형식 변환
├─────────────────────────┤
│ 5. 세션 계층 (Session)     │ ← 연결 관리
├─────────────────────────┤
│ 4. 전송 계층 (Transport)   │ ← 신뢰성 보장
├─────────────────────────┤
│ 3. 네트워크 계층 (Network)  │ ← 경로 설정
├─────────────────────────┤
│ 2. 데이터링크 계층 (Data Link)│ ← 프레임 전송
├─────────────────────────┤
│ 1. 물리 계층 (Physical)    │ ← 비트 전송
└─────────────────────────┘

📝 각 계층 상세

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

역할:
- 사용자와 직접 상호작용
- 네트워크 서비스 제공
- 응용 프로그램 간 데이터 교환

프로토콜:
- HTTP/HTTPS (웹)
- FTP (파일 전송)
- SMTP (이메일 전송)
- POP3/IMAP (이메일 수신)
- DNS (도메인 이름 변환)
- Telnet (원격 접속)

예시:
- 웹 브라우저 (Chrome, Firefox)
- 이메일 클라이언트 (Outlook)
- FTP 클라이언트 (FileZilla)

데이터 단위: 데이터(Data), 메시지(Message)

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

역할:
- 데이터 형식 변환
- 암호화/복호화
- 압축/해제
- 코드 변환 (ASCII ↔ EBCDIC)

기능:
- 인코딩/디코딩
- 데이터 압축 (JPEG, MPEG)
- 암호화 (SSL/TLS)

예시:
- JPEG, GIF, PNG (이미지 형식)
- MPEG, AVI (비디오 형식)
- ASCII, Unicode (문자 인코딩)
- SSL/TLS (암호화)

데이터 단위: 데이터(Data)

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

역할:
- 통신 세션 연결/관리/종료
- 동기화
- 대화 제어 (반이중, 전이중)

기능:
- 세션 설정, 유지, 종료
- 체크포인트 설정
- 재연결 관리

프로토콜:
- NetBIOS
- RPC (Remote Procedure Call)
- SSH (Secure Shell)

예시:
- 화상 회의 (연결 유지)
- 온라인 게임 (세션 관리)
- 로그인 세션

데이터 단위: 데이터(Data)

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

역할:
- 종단 간(End-to-End) 신뢰성 보장
- 흐름 제어 (Flow Control)
- 오류 제어 (Error Control)
- 포트 번호로 프로세스 구분

프로토콜:
- TCP (신뢰성)
- UDP (빠른 속도)

기능:
- 세그먼테이션 (데이터 분할)
- 재조립
- 오류 검출 및 재전송
- 순서 제어

포트 번호:
- HTTP: 80
- HTTPS: 443
- FTP: 21
- SSH: 22
- SMTP: 25
- DNS: 53

데이터 단위: 세그먼트(Segment)

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

역할:
- 라우팅 (경로 설정)
- 논리 주소 지정 (IP 주소)
- 패킷 포워딩

프로토콜:
- IP (Internet Protocol)
- ICMP (ping)
- IGMP (멀티캐스트)
- ARP (주소 변환)

장비:
- 라우터 (Router)
- L3 스위치

기능:
- 패킷 라우팅
- 혼잡 제어
- 주소 변환

데이터 단위: 패킷(Packet)
역할:
- 물리 주소 지정 (MAC 주소)
- 프레임 전송
- 오류 검출 (CRC)
- 흐름 제어

프로토콜:
- Ethernet
- PPP (Point-to-Point Protocol)
- HDLC

장비:
- 스위치 (Switch)
- 브리지 (Bridge)

기능:
- 프레이밍
- 물리 주소 지정
- 오류 검출 (재전송은 안 함)
- 접근 제어 (MAC)

MAC 주소:
- 48비트 (6바이트)
- 예: 00:1A:2B:3C:4D:5E
- 제조사가 할당 (고유)

데이터 단위: 프레임(Frame)

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

역할:
- 비트 스트림 전송
- 물리적 연결
- 전기 신호 변환

장비:
- 허브 (Hub)
- 리피터 (Repeater)
- 케이블 (UTP, 광케이블)

기능:
- 비트를 전기 신호로 변환
- 전송 매체 정의
- 토폴로지 정의

전송 매체:
- 유선: UTP, 동축케이블, 광케이블
- 무선: WiFi, Bluetooth, 5G

데이터 단위: 비트(Bit)

📊 계층별 요약표

계층 이름 데이터 단위 주요 프로토콜 장비
7 응용 데이터 HTTP, FTP, SMTP, DNS -
6 표현 데이터 SSL/TLS, JPEG, MPEG -
5 세션 데이터 NetBIOS, SSH -
4 전송 세그먼트 TCP, UDP -
3 네트워크 패킷 IP, ICMP, ARP 라우터
2 데이터링크 프레임 Ethernet, PPP 스위치
1 물리 비트 - 허브, 케이블

🔄 데이터 전송 과정

송신 측 (캡슐화)

[응용 계층] "Hello"
     ↓ (Application Header 추가)
[표현 계층] [AH|Hello]
     ↓ (Presentation Header 추가)
[세션 계층] [SH|AH|Hello]
     ↓ (TCP/UDP Header 추가)
[전송 계층] [TH|SH|AH|Hello] ← 세그먼트
     ↓ (IP Header 추가)
[네트워크 계층] [IH|TH|SH|AH|Hello] ← 패킷
     ↓ (Ethernet Header, Trailer 추가)
[데이터링크 계층] [EH|IH|TH|SH|AH|Hello|ET] ← 프레임
     ↓ (전기 신호 변환)
[물리 계층] 01001000... ← 비트

수신 측 (역캡슐화)

[물리 계층] 01001000... (비트 수신)
     ↓ (프레임 변환)
[데이터링크 계층] [EH|IH|TH|SH|AH|Hello|ET]
     ↓ (EH, ET 제거)
[네트워크 계층] [IH|TH|SH|AH|Hello]
     ↓ (IH 제거)
[전송 계층] [TH|SH|AH|Hello]
     ↓ (TH 제거)
[세션 계층] [SH|AH|Hello]
     ↓ (SH 제거)
[표현 계층] [AH|Hello]
     ↓ (AH 제거)
[응용 계층] "Hello" ✔

💬 면접 답변 예시

짧은 답변

OSI 7계층은 네트워크 통신을 7개 계층으로 
표준화한 모델입니다.

하위 계층 (1~3): 데이터 전달
- 물리: 비트 전송
- 데이터링크: 프레임 전송 (MAC 주소)
- 네트워크: 패킷 라우팅 (IP 주소)

상위 계층 (4~7): 데이터 처리
- 전송: 신뢰성 보장 (TCP/UDP)
- 세션: 연결 관리
- 표현: 데이터 변환
- 응용: 사용자 인터페이스

장점:
- 계층별 독립성
- 문제 발생 시 해당 계층만 수정
- 표준화로 호환성 보장

상세 답변

OSI 7계층은 ISO에서 제정한 네트워크 통신 
표준 모델입니다.

각 계층의 역할:

1. 물리 계층:
   - 비트를 전기 신호로 변환
   - 케이블, 허브 등 물리적 매체

2. 데이터링크 계층:
   - MAC 주소로 노드 간 전송
   - 프레임 단위
   - 스위치, 브리지

3. 네트워크 계층:
   - IP 주소로 경로 설정
   - 패킷 라우팅
   - 라우터

4. 전송 계층:
   - 종단 간 신뢰성 보장
   - TCP(신뢰성) / UDP(속도)
   - 포트 번호로 프로세스 구분

5. 세션 계층:
   - 통신 세션 관리
   - 연결 설정, 유지, 종료

6. 표현 계층:
   - 데이터 형식 변환
   - 암호화, 압축

7. 응용 계층:
   - 사용자 인터페이스
   - HTTP, FTP, SMTP 등

데이터 전송:
- 송신: 캡슐화 (헤더 추가)
- 수신: 역캡슐화 (헤더 제거)

실무에서는 TCP/IP 4계층을 주로 사용하며,
OSI 7계층은 이론적 참조 모델로 활용됩니다.