🔵 인터넷 프로토콜
인터넷은 전 세계의 컴퓨터가 데이터를 주고받는 네트워크로
공통된 규칙이 없으면 통신이 불가능합니다.
이런 규칙들을 모아 놓은 것이 인터넷 프로토콜 스위트이고,
TCP/IP는 그중에서도 가장 널리 사용되는 표준 프로토콜 집합입니다.
🔵 TCP와 IP
TCP/IP는 패킷 통신 방식의 인터넷 프토토콜인 IP (인터넷 프로토콜)와
전송 조절 프로토콜인 TCP로 이루어져 있습니다.
TCP는 IP 통신을 기반으로 작동하기 때문에
따로 생각하기 보단 하나의 흐름으로 보는 것이 좋습니다.
🔵 IP
IP는 데이터를 패킷(데이터그램) 단위로 나누어 전송하는데
이 과정에서 데이터가 제대로 전달되었는지나 순서가 올바른지는 보장하지 않는다는 특징이 있습니다.
- 비신뢰성(unreliability) / 비연결성(connectionlessness)
현재 인터넷에서 표준으로 사용되는 프로토콜은 IPv4(xxx.xxx.xxx.xxx 형태의 주소)이지만
주소 고갈 문제로 인해 앞으로는 IPv6가 더 널리 사용될 것으로 예상되고 있습니다.
🔵 TCP
TCP는 IP의 한계를 보완하기 위해 만들어진 프로토콜로, TCP/IP의 핵심이라고 할 수 있습니다.
데이터가 제대로 전송되었는지와 순서가 맞는지를 보장하기 위해
정보를 통제하는 방식으로 동작하며
이를 전송 제어 프로토콜(Transmission Control Protocol)이라고 부릅니다.
TCP는 신뢰성 있는 연결을 맺기 위해 3-Way Handshake라는 과정을 거칩니다.
- SYN : 통신을 시작하고 싶다는 요청을 보낸다
- SYN-ACK : 상대가 요청을 확인하고 통신 준비가 되었음을 알린다
- ACK : 상대의 응답을 확인했다는 메시지를 보낸다
이 과정을 통해 양측이 통신 준비가 완료되었음을 확인하고 안정적인 연결을 유지할 수 있습니다.
네트워크에서는 한 번에 보낼 수 있는 데이터 양이 제한되어 있어
데이터를 패킷 단위로 나누어 보내게 됩니다.
TCP는 각 패킷에 번호를 붙여 관리합니다.
책의 페이지를 친구에게 순서대로 보내는 상황을 떠올리면 이해하기 쉽습니다.
중간 페이지가 누락되면 친구가 알려주고, 저는 그 페이지부터 다시 보냅니다.
또 친구가 한 번에 받을 수 있는 양이 적다면 그에 맞춰 필요한 페이지만 보내 부담을 줄여줄 수 있습니다.
이처럼 패킷의 순서와 전송량을 조절하여 안정적인 통신을 유지하는 것을
흐름 제어(Flow Control)라고 합니다.
🔵 TCP/IP 모델 4계층

TCP/IP는 4개의 계층으로 나뉩니다.
1. Application Layer
사용자가 실제로 사용하는 서비스가 동작하는 층입니다.
웹(HTTP), 이메일(SMTP), 파일 전송(FTP) 등
어플리케이션끼리 데이터를 주고받는 역할을 합니다
2. Transport Layer
데이터가 어떤 프로그램(포트 번호)으로 가야 하는지 결정하고
정확하게 전달되도록 관리하는 층입니다.
TCP(신뢰성 보장), UDP(빠른 전송) 같은 프로토콜이 여기에 속합니다.
3. Internet Layer
데이터가 어디로 가야 하는지(IP 주소) 를 보고 목적지까지 전달 경로를 결정하는 층입니다.
라우팅을 담당하며 IP, ARP, ICMP 같은 프로토콜이 사용됩니다.
4. Network Access Layer
LAN 케이블, Wi-Fi 같은 물리적인 네트워크 장비 사이의 실제 전송을 담당하는 층입니다.
이곳에서는 MAC 주소가 사용되며, 랜카드가 이 계층에서 동작합니다.
🔵 대략적인 TCP/IP의 흐름
브라우저 주소창에 **www.naver.com**을 입력하면
내부적으로 다음과 같은 과정이 일어납니다.
1. 먼저 웹 서버에 HTTP 요청을 보내기 위해
패킷은 상위 계층부터 필요한 정보를 채워 넣으며 내려갑니다.
- Application Layer에서는
HTTP 요청 라인과 헤더(method, path 등)를 만든 뒤 Transport Layer로 전달합니다.
- Transport Layer에서는 TCP 헤더가 붙는데
여기서 출발지 포트(SP)와 목적지 포트(DP)를 설정합니다.
- Internet Layer로 내려가면 IP 헤더가 추가되며
도메인 이름을 IP 주소로 변환하기 위해 DNS 조회를 수행해
네이버 웹 서버의 IP를 알아냅니다.
- Network Access Layer에서는 Ethernet 헤더가 더해지고
목적지 MAC 주소를 얻기 위해 ARP 프로토콜이 사용됩니다.
2. 패킷을 보낼 준비가 되면 TCP는 연결지향형 프로토콜이므로
먼저 3-Way Handshake를 통해 서버와 연결을 설정합니다.
3. 그 후 IP 주소 기반 라우팅과 MAC 주소 기반 전달을 반복하면서
패킷은 여러 라우터를 거쳐 네이버 웹 서버까지 도달합니다.
4. 서버는 요청을 처리한 뒤 HTML 데이터를 응답으로 보내고
브라우저는 이 HTML을 렌더링하여 화면에 웹페이지를 보여줍니다.
5. 모든 데이터 송수신을 마치면
TCP는 4-Way Handshake 과정을 통해 네이버 웹 서버와의 연결을 정상적으로 종료합니다.

🟢 OSI 7 Layer
OSI 7계층은 “데이터가 어떻게 이동하는지”를
물리 계층부터 애플리케이션 계층까지 7단계로 구분한 모델입니다.
👉 복잡한 네트워크 구조를 계층별로 분리하여 이해·관리·디버깅을 쉽게 하기 위함입니다.
👉 각 계층은 자신의 역할만 수행하며, 다른 계층의 동작 방식은 알 필요가 없습니다.
👉 서로 다른 회사의 장비나 시스템이라도 이 공통 기준(표준)을 따르면 정상적으로 통신할 수 있기 때문입니다.
🟢 OSI 7 Layer - 1️⃣ Physical Layer (물리계층)
✓ 핵심 역할: 0과 1을 전기 신호로 바꿔서 실제로 전선을 타고 보내는 층
✓ 키워드: 케이블, 전압, 무선 신호, NIC, 리피터
✓ 중요한 이유
네트워크가 “물리적으로” 연결이 안 되면 아래 모든 게 안 됨.
🟢 OSI 7 Layer - 2️⃣ Data Link Layer (데이터 링크)
✓ 핵심 역할: 같은 네트워크 안에서 통신 + 오류 검출
✓ 키워드: 스위치, MAC 주소, 프레임, 오류검출
✓ 중요한 이유
LAN 안에서 컴퓨터끼리 통신 가능케 함.
IP보다 낮은 계층 → 같은 스위치 아래에서는 MAC 기반으로 통신.
🟢 OSI 7 Layer - 3️⃣ Network Layer (네트워크 계층)
✓ 핵심 역할: 목적지까지 가는 최적 경로(라우팅)
✓ 키워드: IP 주소, 라우터, 경로 선택, 패킷
✓ 중요한 이유
인터넷은 라우터의 집합 → 이 레이어가 없으면 “다른 네트워크”로 못 감.
🟢 OSI 7 Layer - 4️⃣ Transport Layer (전송 계층)
✓ 핵심 역할: 프로그램(포트) 단위로 전달 + 전송 신뢰성 관리
✓ 키워드: TCP / UDP, 포트 번호, 세그먼트, 흐름 제어
✓ 중요한 이유
2개의 Chrome 창 중 “어떤” 창으로 가야 하는지 결정하는 층.
🟢 OSI 7 Layer - 5️⃣ Session Layer (세션 계층)
✓ 핵심 역할: 세션 연결·유지·종료 관리
✓ 키워드: 세션 관리, 대화 유지
✓ 실무 예:
현대 웹에서는 이 계층 기능 대부분 TCP/HTTP가 가져감
🟢 OSI 7 Layer - 6️⃣ Presentation Layer (표현 계층)
✓ 핵심 역할: 데이터 형식 통일·변환·암호화·압축
✓ 키워드: 암호화(SSL), 인코딩, JSON, JPEG
✓ 실무 예:
HTTPS → TLS 암호화 (이 층 기능에 해당)
UTF-8 변환, 이미지 압축 등도 여기 포함
🟢 OSI 7 Layer - 7️⃣ Application Layer (응용 계층)
✓ 핵심 역할: 사용자가 직접 쓰는 프로토콜이 동작하는 층
✓ 키워드: HTTP, DNS, FTP, SMTP
✓ 실무에서 가장 많이 접하는 층
백엔드 개발자가 매일 만나는 Request/Response
'Programming > 컴퓨터 네트워크' 카테고리의 다른 글
| 🔵 네트워크 레이어, IP 프로토콜 (0) | 2025.12.17 |
|---|---|
| 🔵 UDP & TCP (1) | 2025.12.11 |
| 🔵 애플리케이션 레이어 (0) | 2025.12.02 |
| 🔵 HTTP/1.1 vs HTTP/2 vs HTTP3 차이 (0) | 2025.11.25 |
| 🔵 HTTP 🟢 HTTPS 🔴 DNS (0) | 2025.11.25 |