
두 대 이상의 컴퓨터나 장치들이 연결되어 자원이나 정보를 공유할 수 있도록 구축된 시스템
네트워크의 목적은 자원 공유, 데이터 통신, 분산 처리이다.
(Open Systems Interconnection 7 Layer)
네트워크 통신 과정을 7단계로 나누어 설명하는 개념적 모델. 각 계층은 독립적인 기능을 수행하며, 통신 과정을 표준화하고 이해하기 쉽게 만든다.
| 계층 | 이름 | 주요 기능 | 데이터 단위 | 주요 프로토콜/장비 |
|---|---|---|---|---|
| 7계층 | 응용 (Application) | 사용자에게 네트워크 서비스 제공 (예: HTTP, FTP) | 데이터(Data) | HTTP, FTP, SMTP, DNS |
| 6계층 | 표현 (Presentation) | 데이터 형식 설정, 암호화/복호화, 압축 | 데이터(Data) | JPEG, MPEG, SSL/TLS, ASCII |
| 5계층 | 세션 (Session) | 통신 세션 수립, 관리, 종료 | 데이터(Data) | NetBIOS, SSH, API, 세션 관리 |
| 4계층 | 전송 (Transport) | 신뢰성 있는/없는 데이터 전송 및 흐름 제어, 혼잡 제어, 포트 주소 지정 | 세그먼트(Segment) | TCP, UDP |
| 3계층 | 네트워크 (Network) | 경로 설정(라우팅) 및 논리적 주소(IP 주소) 지정 | 패킷(Packet) | IP, ICMP, 라우터(Router), ARP |
| 2계층 | 데이터 링크 (Data Link) | 물리적 주소(MAC 주소) 지정, 오류 감지 및 흐름 제어, 프레임 구성 | 프레임(Frame) | 이더넷(Ethernet), 스위치(Switch), PPP |
| 1계층 | 물리 (Physical) | 전기적/기계적 신호를 통한 비트 전송 | 비트(Bit) | 케이블, 허브(Hub), 리피터(Repeater) |
1~7 순서로: "물데네전세표응"
(Transmission Control Protocol/Internet Protocol 4 Layer)

실제 인터넷 통신에 사용되는 프로토콜 스택을 기반으로 단순화한 모델. OSI 7계층보다 실제 구현에 더 가깝다.
| 계층 | 이름 | OSI 7 계층 대응 | 주요 기능 |
|---|---|---|---|
| 4계층 | 응용 (Application) | 5, 6, 7계층 (세션 + 표현 + 응용) | 사용자에게 서비스 제공 (OSI의 세션, 표현, 응용 계층 역할 포함) |
| 3계층 | 전송 (Transport) | 4계층 (전송) | 통신 노드 간 연결 제어 및 신뢰성 있는 전송(TCP) 또는 빠른 전송(UDP) |
| 2계층 | 인터넷 (Internet) | 3계층 (네트워크) | IP를 통한 패킷의 경로 설정(라우팅) 및 전달 |
| 1계층 | 네트워크 액세스 (Network Access) | 1, 2계층 (물리 + 데이터 링크) | 물리적 네트워크를 통해 데이터 전송(OSI의 물리, 데이터 링크 계층 역할 포함) |
전송 계층(Transport Layer)에서 사용되는 두 가지 핵심 프로토콜로 데이터 전송 방식에 큰 차이가 있다.
| 구분 | TCP (Transmission Control Protocol) | UDP (User Datagram Protocol) |
|---|---|---|
| 연결 방식 | 연결 지향(Connection-Oriented): 3-way handshake를 통해 연결 설정 후 통신 | 비연결 지향(Connectionless): 연결 설정 없이 데이터그램 전송 |
| 신뢰성 | 높음 (데이터 손실, 순서 뒤바뀜, 중복 방지) | 낮음 (데이터 도착 여부, 순서 보장 안 함) |
| 속도 | 느림 (신뢰성 보장을 위한 오버헤드 존재) | 빠름 |
| 오버헤드 | 큼 (제어 정보 많음) | 작음 (단순한 구조) |
| 흐름/혼잡 제어 | 제공 | 제공 안 함 |
| 용도 | 웹 통신(HTTP), 이메일(SMTP), 파일 전송(FTP) 등 신뢰성이 중요한 통신 | 스트리밍, DNS, 온라인 게임 등 속도가 중요한 통신 |
TCP → 신뢰성, UDP → 속도
TCP는 신뢰성 있는 통신을 위해 데이터를 주고받기 전 3-way Handshake로 연결을 설정하고, 통신이 끝난 후 4-way Handshake로 연결을 해제한다.

| 단계 | 송신자(Client) | 수신자(Server) | 설명 |
|---|---|---|---|
| ① | SYN (Synchronize Sequence Numbers) | 클라이언트가 연결 요청 (SYN) | |
| ② | SYN + ACK | 서버가 요청 수락 (SYN-ACK) | |
| ③ | ACK (Acknowledge) | 클라이언트가 확인 응답 (ACK) → 연결 성립 |
요약 흐름:
Client: SYN → Server: SYN+ACK → Client: ACK연결이 성립되면 양쪽이 데이터 전송 가능
TCP는 전이중(Full Duplex) 통신이므로, 양방향의 연결을 각각 종료해야 한다.

| 단계 | 송신자(Client) | 수신자(Server) | 설명 |
|---|---|---|---|
| ① | FIN (Finish) | 클라이언트가 연결 종료 요청 | |
| ② | ACK | 서버가 종료 요청 수신 확인 | |
| ③ | FIN | 서버도 종료 요청 | |
| ④ | ACK | 클라이언트가 종료 확인 후 연결 완전 종료 |
요약 흐름:
Client: FIN → Server: ACK → Server: FIN → Client: ACK
전송 계층(Layer 4)에서 사용되며 하나의 장치(IP 주소) 내에서 어떤 특정 애플리케이션(프로세스)이 통신할 것인지 구분하는 번호
상세한 이미지와 비교할 수 있는 표가 있어서 이해하기 좋았어요!