학습 기간: 2025.01.06 ~ 2025.01.10
01. OSI 7계층 (Open Systems Interconnection Model)
- OSI 7계층은 네트워크 통신을 7단계로 나눈 모델
- 각 계층은 특정 역할과 책임을 가지고 있음
1계층: 물리 계층 (Physical Layer)
- 역할: 실제 하드웨어적인 전송 매체와 전송 방식에 대한 규정을 다룸.
- 기능: 물리적 회선을 통한 데이터 스트림의 송수신 기능 제공
- 예: UTP 케이블, 광섬유, IEEE 802.11(Wi-Fi).
- 정보 단위: 비트(Bit)
2계층: 데이터 링크 계층 (Data Link Layer)
- 역할: 물리 계층에서 받은 데이터를 프레임 단위로 나눠 신뢰성 있는 전송을 보장.
- 기능: 인접한 스테이션 간의 신뢰성 있는 통신을 보장
- 오류 감지 및 수정 (CRC).
- MAC(Media Access Control) 주소를 기반으로 데이터 전송.
- 검사해서 데이터가 깨졌으면 재요청
- 동시에 보내지 않게 데이터 송수신 1:1 보장
- 프로토콜/장비: Ethernet, PPP(Point-to-Point Protocol), 스위치.
- 정보 단위: 프레임
- 이더넷 프레임
- 헤더에 MAC 주소를 포함하여 src와 dest를 식별
- 참고: MAC 플러딩(Flooding)
3계층: 네트워크 계층 (Network Layer)
- 역할: 데이터의 목적지 주소(IP)를 기반으로 라우팅과 전달 경로 결정.
- 기능: 네트워크를 거쳐 원하는 목적지까지의 연결성 제공
- 라우팅: 데이터가 여러 네트워크를 거쳐 목적지까지 도달하도록 경로를 설정.
- 논리 주소(IP 주소) 관리.
- 원하는 목적지
- 타겟 IP 주소
- 헤더에 추가
- 수신 패킷 dest IP가 본인인지 확인
- 어느 router로 갈 지 정해줌
- 프로토콜/장비: IP(IPv4/IPv6), ICMP, RIP, OSPF, 라우터.
- 단점
- Best Effort
- 최선을 다하지만 결과를 보장하지는 못함
- 4계층의 TCP가 보장
- Best Effort
- 정보 단위: 패킷
- 헤더에 IP 주소를 포함하여 타겟 식별
4계층: 전송 계층 (Transport Layer)
- 역할: 데이터의 신뢰성과 정확성을 보장하며, 데이터의 송수신 상태를 제어.
- 기능: 통신 양단 간에 신뢰성 있는 통신을 보장
- end to end 간 신뢰성
- 데이터 분할 및 재조합.
- 흐름 제어 및 오류 복구.
- 헤더에 포트 번호를 기반으로 애플리케이션 식별.
- Port로 서비스 지정
- 프로토콜: TCP(연결 지향), UDP(비연결 지향).
- TCP
- 전송 단위: segemt
- 안정성 중요
- socket이 1:1 응답이 가능한 지 물어보고 응답하면 주고받음
- http
- UDP
- 전송 단위: datagram
- 속도 중요
- 여러 개의 소켓과 주고받음
- 스트리밍, 라이브 방송
- 4계층 장치: 로드 밸런서
- TCP
5계층: 세션 계층 (Session Layer)
- 역할: 통신 세션(연결)의 생성, 유지, 종료를 관리.
- 기능:
- 데이터 교환 시작/중단 제어.
- 동기화 및 체크포인트 설정.
- 예: NetBIOS, RPC(Remote Procedure Call).
6계층: 표현 계층 (Presentation Layer)
- 역할: 데이터 형식의 변환 및 표현 방식 설정.
- 기능:
- 데이터 암호화 및 복호화.
- 데이터 압축.
- 문자 인코딩(예: ASCII, EBCDIC).
- 예: SSL/TLS, JPEG, GIF, MPEG.
7계층: 응용 계층 (Application Layer)
- 역할: 사용자와 네트워크 간의 상호작용을 지원.
- 기능:
- 애플리케이션이 네트워크 서비스를 사용할 수 있도록 인터페이스 제공.
- HTTP, FTP, SMTP 등과 같은 응용 계층 프로토콜 사용.
- 예: 웹 브라우저(HTTP/HTTPS), 이메일 클라이언트(SMTP, IMAP).
요약
- 하위 계층(1~4계층): 데이터 전송 및 신뢰성 보장.
- 상위 계층(5~7계층): 데이터의 표현 및 사용자 인터페이스 제공.
각 계층은 특정 기능에 집중하며, 계층 간 상호작용으로 복잡한 통신 작업을 효율적으로 수행할 수 있음
02. TCP/IP 계층
- TCP/IP 계층은 OSI 7계층 모델을 실질적으로 구현한 인터넷 기반의 네트워크 모델임
- OSI 7계층보다 간단하게 구성되어 있으며, 4계층으로 나뉨
1. 네트워크 인터페이스 계층 (Network Interface Layer)
- 역할: 데이터가 실제 네트워크 하드웨어를 통해 물리적으로 전송되는 계층.
- 기능:
- 물리적 전송 매체(케이블, 무선 등)를 사용한 데이터 전송.
- 하드웨어 주소(MAC)를 기반으로 데이터 프레임 전달.
- 장치 간 데이터 흐름 관리.
- OSI 계층 대응: 물리 계층 + 데이터 링크 계층(1, 2계층).
- 예: Ethernet, Wi-Fi(IEEE 802.11), ARP(Address Resolution Protocol).
2. 인터넷 계층 (Internet Layer)
- 역할: 네트워크 간 데이터를 라우팅하고 최적의 경로로 전달.
- 기능:
- IP 주소를 사용하여 데이터 패킷의 출발지와 목적지 식별.
- 데이터 패킷의 분할(Fragmentation) 및 재조합.
- 데이터 전송 중 경로를 선택(라우팅).
- OSI 계층 대응: 네트워크 계층(3계층).
- 프로토콜:
- IP (Internet Protocol): IPv4, IPv6.
- ICMP (Internet Control Message Protocol): 네트워크 상태 점검.
- IGMP (Internet Group Management Protocol): 멀티캐스트 관리.
3. 전송 계층 (Transport Layer)
- 역할: 데이터의 신뢰성 있는 전송과 송신/수신 간의 연결 관리.
- 기능:
- 데이터 분할 및 재조합.
- 데이터의 전송 오류 복구.
- 포트 번호를 사용하여 애플리케이션 식별.
- OSI 계층 대응: 전송 계층(4계층).
- 프로토콜:
- TCP (Transmission Control Protocol): 연결 지향, 신뢰성 보장.
- UDP (User Datagram Protocol): 비연결 지향, 속도 우선.
4. 응용 계층 (Application Layer)
- 역할: 네트워크 서비스를 애플리케이션이 사용할 수 있도록 지원.
- 기능:
- 사용자와 네트워크 간의 상호작용 인터페이스 제공.
- 데이터 형식 변환 및 암호화 등 응용 프로그램의 데이터 처리.
- OSI 계층 대응: 세션, 표현, 응용 계층(5, 6, 7계층).
- 프로토콜:
- HTTP/HTTPS: 웹 서비스.
- SMTP/POP3/IMAP: 이메일.
- FTP/SFTP: 파일 전송.
- DNS: 도메인 이름 해석.
- Telnet/SSH: 원격 접속.
03. OSI 7계층과 TCP/IP 계층의 비교
OSI 계층TCP/IP 계층주요 프로토콜 예시7. 응용 계층 | 응용 계층 | HTTP, FTP, DNS, SMTP |
6. 표현 계층 | ||
5. 세션 계층 | ||
4. 전송 계층 | 전송 계층 | TCP, UDP |
3. 네트워크 계층 | 인터넷 계층 | IP, ICMP, ARP, IGMP |
2. 데이터 링크 계층 | 네트워크 인터페이스 계층 | Ethernet, Wi-Fi, ARP |
1. 물리 계층 |
04. 주요 특징
- TCP/IP는 실용적이고 단순화된 계층 구조:
- OSI 모델은 이론적이고 정교하지만, TCP/IP는 인터넷에서 실제 구현과 사용에 초점.
- 인터넷 중심 설계:
- TCP/IP는 전 세계적으로 사용되는 인터넷의 핵심 프로토콜 집합.
- 유연성과 확장성:
- 다양한 네트워크 기술과 하드웨어에서 작동 가능.
05. 송신 측: 데이터 포장(Encapsulation) 과정
각 계층은 데이터를 처리하고, 해당 계층의 **헤더(header)**를 추가하여 데이터를 포장합니다.
(1) 7계층: 응용 계층 (Application Layer)
- 데이터: 사용자가 요청한 데이터 생성(예: 파일, 텍스트 등).
- 헤더 추가: 없음(사용자 데이터를 생성하는 계층).
- 결과물: 응용 데이터(Payload).
(2) 6계층: 표현 계층 (Presentation Layer)
- 역할: 데이터의 형식 변환(예: 암호화, 압축).
- 헤더 추가: 데이터 형식 변환과 관련된 정보 추가.
- 결과물: 표현된 데이터 + 표현 헤더.
(3) 5계층: 세션 계층 (Session Layer)
- 역할: 세션(연결)을 설정, 유지, 종료.
- 헤더 추가: 세션 ID, 제어 정보.
- 결과물: 세션 데이터 + 세션 헤더.
(4) 4계층: 전송 계층 (Transport Layer)
- 역할: 데이터의 신뢰성 있는 전송, 데이터 분할 및 재조립, 포트 번호 추가.
- 헤더 추가:
- TCP: 시퀀스 번호, 확인 응답 번호, 포트 번호 등.
- UDP: 포트 번호, 길이, 체크섬.
- 결과물: 세그먼트(Segment, TCP) 또는 데이터그램(Datagram, UDP).
(5) 3계층: 네트워크 계층 (Network Layer)
- 역할: 데이터를 목적지 IP 주소로 라우팅.
- 헤더 추가: IP 주소(출발지와 목적지), TTL(Time to Live), 프로토콜 번호.
- 결과물: 패킷(Packet).
(6) 2계층: 데이터 링크 계층 (Data Link Layer)
- 역할: 데이터를 물리적 네트워크로 전송, 오류 감지 및 수정.
- 헤더 추가: MAC 주소(출발지와 목적지), 오류 제어 정보(FCS).
- 결과물: 프레임(Frame).
(7) 1계층: 물리 계층 (Physical Layer)
- 역할: 데이터를 비트(Bit) 신호로 변환하여 물리 매체를 통해 전송.
- 헤더 추가: 없음(데이터는 전기적 신호로 변환).
- 결과물: 비트 스트림.
06. 수신 측: 데이터 해포장(Decapsulation) 과정
- 물리 계층에서 수신된 비트 신호는 데이터 링크 계층으로 전달됩니다.
- 각 계층은 헤더를 제거하며, 데이터를 상위 계층으로 전달합니다.
- 데이터 링크 계층: 프레임 → 패킷.
- 네트워크 계층: 패킷 → 세그먼트.
- 전송 계층: 세그먼트 → 세션 데이터.
- 응용 계층까지 전달된 최종 데이터는 사용자에게 전달됩니다.
07. OSI 7계층 데이터 흐름
송신 측
- 응용 계층: 데이터 생성 →
- 표현 계층: 데이터 변환(압축, 암호화) →
- 세션 계층: 세션 설정 →
- 전송 계층: 데이터 분할, 포트 추가 →
- 네트워크 계층: IP 주소 추가 →
- 데이터 링크 계층: MAC 주소 추가 →
- 물리 계층: 비트 신호로 변환 및 전송.
수신 측
- 물리 계층: 비트 신호 수신 →
- 데이터 링크 계층: 프레임 해석 →
- 네트워크 계층: 패킷 해석 →
- 전송 계층: 데이터 조립 및 확인 →
- 세션 계층: 세션 관리 →
- 표현 계층: 데이터 복원(압축 해제, 복호화) →
- 응용 계층: 사용자에게 데이터 전달.
08. 헤더와 페이로드의 관계
- 각 계층은 데이터를 처리할 때, **헤더(Header)**를 추가하여 데이터의 전달 정보를 포함시
- 데이터(payload)는 하위 계층으로 내려가며, 최종적으로 **프레임(Frame)**이 되어 물리 계층으로 전달됨
- 수신 측에서는 반대로 헤더를 제거하여 최종 데이터를 복원함
'CS 상식 - 네트워크' 카테고리의 다른 글
[CS 상식 - 네트워크] 서브넷 (Subnet) (0) | 2025.01.15 |
---|---|
[CS 상식 - 네트워크] 기본 게이트웨이 (Default Gateway) (0) | 2025.01.15 |
[CS 상식 - 네트워크] 라우팅 (Routing) (1) | 2025.01.10 |
[CS 상식 - 네트워크] NAT/NAPT (2) | 2025.01.10 |
[CS 상식 - 네트워크] DHCP (0) | 2025.01.10 |