🎯 개요
네트워크 실무에서 OSI 7계층보다 더 많이 사용하는 모델이 바로 TCP/IP 4계층 모델이다.
TCP/IP는 인터넷 프로토콜 스택(Internet Protocol Stack) 이라고도 불리며, 오늘날 인터넷 통신의 핵심 구조이다.
이번 글에서는
TCP/IP 모델이 무엇인지, 계층별 역할은 무엇인지, OSI 7계층과 어떤 차이가 있는지를 쉽고 현실적인 예시와 함께 정리한다.
🧠 TCP/IP란?
- TCP/IP: Transmission Control Protocol / Internet Protocol
- 1970년대 초 미국 국방성(DARPA) 주도로 개발된 통신 규약
- 여러 컴퓨터들이 네트워크를 통해 안정적으로 통신할 수 있도록 만든 표준
- 현대 인터넷 통신의 기본 뼈대를 이룬다
📚 TCP/IP 4계층 구조
계층 번호 | 계층 이름 | 주요 역할 |
4 | 응옹 계층 (Application) | 사용자 서비스 제공 (HTTP, FTP, SMTP) |
3 | 전송 계층 (Transport) | 데이터 전달 보장 (TCP, UDP) |
2 | 인터넷 계층 (Internet) | IP 주소, 라우팅 처리 (IP, ICMP) |
1 | 네트워크 인터페이스 계층 (Network Access) | 실제 데이터 전송 (Ethernet, Wifi 등) |
🧩 쉽게 이해하는 TCP/IP 4계층
인터넷으로 메신저 메시지를 보낸다고 생각해보자.
- 응용 계층: 메시지 내용을 작성하고 보낸다 (HTTP, SMTP 등)
- 전송 계층: 데이터가 빠짐없이, 순서대로 도착하게 관리한다 (TCP) 또는 빠르게 전송만 한다 (UDP)
- 인터넷 계층: 목적지 IP 주소를 붙여 어디로 보낼지 정한다 (IP)
- 네트워크 인터페이스 계층: 실제 물리적인 네트워크(이더넷, 와이파이)를 통해 전송한다
📌 TCP/IP vs OSI 7계층 비교
구분 | OSI 7계층 | TCP/IP 4계층 |
구조 | 세밀하게 7단계로 분리 | 실용적으로 4단계로 통합 |
사용도 | 학문적/개념적 | 실무/인터넷 실제 통신 |
초점 | 표준화된 설계도 | 실제 구현과 효율성 |
- 현실 세계에서는 TCP/IP 모델을 기반으로 네트워크 통신이 이루어진다.
- OSI 모델은 학습용 모델로 개념을 명확히 이해하는 데 도움을 준다.
🚀 Java로 TCP 통신 간단 실습 예제
✅ 서버(Server) 코드
package os;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.ServerSocket;
import java.net.Socket;
public class SimpleServer {
public static void main(String[] args) throws IOException {
ServerSocket serverSocket = new ServerSocket(9999); // 9999번 포트로 서버 열기
System.out.println("서버 대기 중...");
Socket clientSocket = serverSocket.accept(); // 클라이언트 접속 대기
System.out.println("클라이언트 연결 완료!");
BufferedReader in = new BufferedReader(new InputStreamReader(clientSocket.getInputStream()));
String inputLine;
while ((inputLine = in.readLine()) != null) {
System.out.println("받은 메시지: " + inputLine);
}
in.close();
clientSocket.close();
serverSocket.close();
}
}
✅ 클라이언트(Client) 코드
package os;
import java.io.IOException;
import java.io.PrintWriter;
import java.net.Socket;
public class SimpleClient {
public static void main(String[] args) throws IOException {
Socket socket = new Socket("localhost", 9999); // 서버에 접속 (localhost 기준)
PrintWriter out = new PrintWriter(socket.getOutputStream(), true);
out.println("안녕하세요 서버님!");
out.close();
socket.close();
}
}
✨ 마무리 요약
- TCP/IP 4계층 모델은 현대 인터넷 통신의 기본 골격이다.
- 각 계층은 역할이 명확히 나뉘어 있으며, 서로 유기적으로 작동한다.
- OSI 모델과 비교해 실용적이고 현실적인 구조다.
- Java 소켓 프로그래밍을 통해 TCP 통신 흐름을 간단히 체험할 수 있다.
📚 추가 자료
📚 전체 예제 및 추가 자료는
👉 GitHub - daily-cs-study에서 확인 가능합니다. 함께 성장해요!
'컴퓨터 과학 > 네트워크' 카테고리의 다른 글
💻 [네트워크] TCP vs UDP 차이점 + 3-Way Handshake (1) | 2025.04.26 |
---|---|
💻 [네트워크] OSI 7계층 개요 (1) | 2025.04.26 |