📁 인터넷과 프로토콜
인터넷이란?
전 세계의 컴퓨터와 네트워크 장비들이 서로 연결된 거대한 네트워크로, 인터넷에서 데이터를 주고받기 위해서는 프로토콜이라는 규칙이 필요하다.
프로토콜(Protocol)이란?
네트워크에서 데이터가 어떻게 송수신 될지 정의하는 규칙 및 절차
| 특징 | 종류 |
|---|
| 네트워크 계층 프로토콜 | IPsec, ICMP, IGMP |
| 인터넷에서 사용되는 다른 프로토콜 | TCP, HTTP, HTTPS, TLS/SSL, UDP |
| 라우터 프로토콜 | BGP, EIGRP, OSPF, RIP |
🔍 네트워크 계층 프로토콜
1️⃣ IPsec(Internet Protocol Security) = 인터넷 프로토콜 보안
- 가상 사설망(VPN)을 통해 암호화되고 인증된 IP 연결 설정
- IPsec은 하나의 프로토콜이 아니라 캡슐화 보안 프로토콜(ESP), 인증 헤더(AH), 보안 연결(SA)를 포함하는 프로토콜의 모음
2️⃣ ICMP(Internet Control Message Protocol) = 인터넷 제어 메시지 프로토콜
- 오류를 보고하고 상태 업데이트 제공
- 라우터가 패킷을 전달할 수 없는 경우 이 프로토콜은 ICMP 메시지를 패킷의 출처로 다시 보냄
💡 패킷(Packet)이란?
데이터의 작은 부분으로, 네트워크를 통해 전송되는 모든 데이터는 패킷으로 나뉜다.
3️⃣ IGMP(Internet Group Management Protocol) = 인터넷 그룹 관리 프로토콜
- 일대다 네트워크 연결 설정
- 멀티캐스팅을 설정하는 데 도움이 되므로, 여러 컴퓨터에서 하나의 IP 주소로 전달되는 데이터 패킷을 수신할 수 있음
🔍 인터넷에서 사용되는 다른 프로토콜
1️⃣ TCP(Transmission Control Protocol)
- 안정적인 데이터 전달을 보장하는 전송 계층 프로토콜
- IP와 함께 사용하기 위한 것으로 종종 TCP/IP로 함께 참조됨
2️⃣ HTTP(Hypertext Transfer Protocol)
- www(월드와이드웹)의 기초로 장치 간 데이터를 전송하는 데 사용됨
- 애플리케이션(브라우저)이 추가 해석 없이 직접 사용할 수 있는 형식으로 데이터를 저장하므로 애플리케이션 계층(7계층)에 해당함
3️⃣ HTTPS(Hypertext Transfer Protocol Secure)
- HTTP의 문제점은 암호화되지 않아 HTTP 메시지를 가로채면 모든 공격자가 읽을 수 있기 때문에, HTTPS는 HTTP 메시지를 암호화하여 이 문제를 해결함
4️⃣ TLS/SSL(Transport Layer Security/Secure Sockets Layer) = 전송 계층 보안/보안 소켓 계층
- HTTPS에서 암호화에 사용하는 프로토콜
- TLS은 이전에는 SSL로 불림
5️⃣ UDP(User Datagram Protocol) = 사용자 데이터그램 프로토콜
- 전송 계층에서 TCP보다는 더 빠르지만 안정성이 떨어짐
- 빠른 데이터 전달이 가장 중요한 비디오 스트리밍 및 게임과 같은 서비스에서 자주 사용됨
🔍 라우터 프로토콜
1️⃣ BGP(Border Gateway Protocol) = 경계 게이트웨이 프로토콜
- 네트워크에서 제어하는 IP 주소를 브로드캐스트하는 데 사용하는 애플리케이션 계층 프로토콜
- 이 정보를 통해 라우터는 목적지로 가는 도중 통과해야 하는 네트워크 데이터 패킷을 결정할 수 있음
2️⃣ EIGRP(Enhanced Interior Gateway Routing Protocol) = 향상된 내부 게이트웨이 라우팅 프로토콜
- 라우터 간의 거리 식별
- 각 라우터의 최상의 경로 레코드를 자동으로 업데이트하고 해당 업데이트를 네트워크 내의 다른 라우터에 브로드캐스트
3️⃣ OSPF(Open Shortest Path First) = 최단 경로 우선 프로토콜
- 거리, 대역폭 등의 다양한 요소를 기반으로 가장 효율적인 네트워크 경로 계산
4️⃣ RIP(Routing Information Protocol) = 라우팅 정보 프로토콜
- 라우터 간의 거리를 식별하는 구형의 라우팅 프로토콜로 애플리케이션 계층
데이터 전송 방식
1️⃣ 회선 교환 (Circuit Switching)
- 데이터를 송수신하기 전에 고정된 통신 경로(회선)를 설정한 후, 데이터를 연속적으로 전송하는 방식 (예 : 전화 통신)
- (장점) 안정적이며 지연이 적지만, (단점) 회선이 점유되면 다른 사용자는 이용할 수 없다.
2️⃣ 패킷 교환 (Packet Switching)
- 데이터를 작은 패킷 단위로 나누어, 최적의 경로를 통해 전송하는 방식 (예 : 인터넷, IP 네트워크)
- (장점) 네트워크 자원을 효율적으로 사용할 수 있지만, (단점) 패킷 손실이 발생할 수 있으며 일부 지연이 발생할 가능성이 있다.
📁 네트워크 계층
네트워크는 계층화된 구조를 가지며, 대표적으로 OSI 7계층과 TCP/IP 4계층 모델이 있다.
OSI 7계층
국제표준화기구(ISO)에서 정의한 네트워크 통신 모델

| 계층 | 이름 | 주요 역할 |
|---|
| 7 | 응용(Application) 계층 | 사용자 인터페이스 제공 (HTTP, FTP, SMTP) |
| 6 | 표현(Presentation) 계층 | 데이터 변환, 압축, 암호화 |
| 5 | 세션(Session) 계층 | 세션 관리 (연결 설정, 유지, 종료) |
| 4 | 전송(Transport) 계층 | 신뢰성 있는 데이터 전송 (TCP, UDP) |
| 3 | 네트워크(Network) 계층 | IP 주소 지정 및 경로 설정 (IP, ICMP, ARP) |
| 2 | 데이터 링크(Data Link) 계층 | MAC 주소를 통한 데이터 프레임 전송 (Ethernet, Wi-Fi) |
| 1 | 물리(Physical) 계층 | 전기적, 물리적 신호 전송 (케이블, 무선 신호) |
7. 응용 계층

- 사용자의 데이터와 직접 상호 작용하는 유일한 계층
- 소프트웨어가 사용자에게 의미 있는 데이터를 제공하기 위해 의존하는 프로토콜과 데이터를 조작하는 역할을 함
- HTTP와 SMTP(이메일 통신을 가능하게 하는 프로토콜)도 포함됨
6. 표현 계층

- 주로 데이터를 준비하는 역할을 하여 애플리케이션 계층이 이를 사용할 수 있게 함
- 데이터의 변환, 암호화, 압축을 담당
- 변환 : 서로 통신하는 장치가 다른 인코딩 방법을 사용하고 있을 수 있기 때문에, 수신 장치의 애플리케이션 계층이 이해할 수 있는 구문으로 수신 데이터를 변환
- 암호화 : 장치가 암호화된 연결을 통해 통신하는 경우, 최종 송신자에게 암호화를 추가할 뿐 아니라 최종 수신자에게 암호화를 디코딩하여 암호화되지 않은 읽기 쉬운 데이터로 애플리케이션 계층을 제시
- 압축 : 애플리케이션 계층에서 수신한 데이터를 계층 5로 전송하기 전 압축, 전송할 데이터의 양을 최소화함으로써 통신의 속도와 효율을 높임
5. 세션 계층

- 두 기기 사이의 통신을 시작하고 종료하는 일을 담당하는 계층
- 통신이 시작될 때부터 종료될 때까지의 시간을 세션이라고 함
- 교환되고 있는 모든 데이터를 전송할 수 있도록 충분히 오랫동안 세션을 개방한 다음 리소스를 낭비하지 않기 위해 세션을 즉시 닫을 수 있도록 보장
- 데이터 전송을 체크포인트와 동기화 : 100MB의 파일 전송 시 5MB마다 체크포인트를 설정하여 연결이 끊어질 경우에도 세션 재개 가능
4. 전송 계층

- 두 기기 간의 종단 간 통신을 담당 : 세션 계층에서 데이터를 가져와서 계층 3으로 보내기 전에 세그먼트로 분할하는 일도 포함
- 수신 기기의 전송 계층은 세그먼트를 세션 계층이 이용할 수 있는 데이터로 재조립해야 함
- 네트워크 간 통신에 대해서만 흐름 제어 및 오류 제어 담당
- 흐름 제어 : 연결 속도가 빠른 송신자가 연결 속도가 느린 수신자를 압도하지 않도록 최적의 전송 속도 결정
- 오류 제어 : 수신된 데이터가 완료되었는지 확인하고 수신되지 않은 경우 재전송을 요청하여 최종 수신자에 대해 오류 제어 수행
- TCP(전송 제어 프로토콜), UDP(사용자 데이터그램 프로토콜)
3. 네트워크 계층

- 서로 다른 두 네트워크 간 데이터 전송을 용이하게 하는 역할
- 서로 통신하는 두 장치가 동일한 네트워크에 있는 경우 네트워크 계층이 불필요
- 전송 계층의 세그먼트를 송신자의 장치에서 더 작은 단위인 패킷으로 세분화하여 수신 장치에서 패킷을 다시 조립
- 데이터가 표적에 도달하기 위한 최상의 물리적 경로인 라우팅을 찾음
- IP, ICMP(인터넷 제어 메시지 프로토콜), IGMP(인터넷 그룹 메시지 프로토콜), IPsec
2. 데이터 링크 계층

- 네트워크 계층과 매우 비슷하지만, 동일한 네트워크에 있는 두 개의 장치 간 데이터 전송을 용이하게 함
- 네트워크 계층에서 패킷을 가져와서 더 작은 조각인 프레임으로 세분화
- 인트라 네트워크 통신에서 흐름 제어 및 오류 제어 담당
1. 물리 계층

- 케이블, 스위치 등 데이터 전송과 관련된 물리적 장비 포함
- 1과 0의 문자열인 비트 스트림으로 변환되는 계층
- 두 장치의 물리적 계층은 신호 규칙에 동의해서 두 장치의 1이 0과 구별될 수 있어야 함
TCP/IP 4계층
인터넷에서 사용되는 실질적인 네트워크 모델로, OSI 모델을 4계층으로 단순화한 구조
| 계층 | OSI 대응 계층 | 주요 역할 |
|---|
| 4 | 응용(Application) | 사용자 서비스 제공 (HTTP, FTP, DNS) |
| 3 | 전송(Transport) | 신뢰성 있는 데이터 전송 (TCP, UDP) |
| 2 | 인터넷(Internet) | 패킷 전달 및 경로 설정 (IP, ICMP, ARP) |
| 1 | 네트워크 인터페이스(Network Access) | 물리적 데이터 전송 (Ethernet, Wi-Fi) |
캡슐화(Encapsulation)란?
데이터를 전송하기 위해 계층별로 헤더(Header)를 추가하는 과정
예) 응용 계층에서 메시지가 생성되면, 전송 계층에서는 TCP/UDP 헤더를 추가하고, 네트워크 계층에서는 IP 헤더를 추가하는 방식
비캡슐화(Decapsulation)란?
수신 측에서 데이터의 헤더를 제거하고 원본 데이터를 추출하는 과정
📁 네트워크 장비
1️⃣ L1 스위치 (허브, 더미 허브)
- 물리 계층 = 1계층에서 작동
- 허브 혹은 더미 허브를 뜻함
- 자신에게 꽂혀있는 모든 장비에게 데이터를 전부 전달
2️⃣ L2 스위치 (스위칭 허브)
- 데이터 링크 계층 = 2계층에서 작동
- 스위칭 기능이 있는 스위칭 허브 사용
- MAC 주소 기반의 데이터 전송
- 장비 간 직접 연결을 통해 LAN 환경에서 데이터 전달
- (장점) 저렴하면서 성능이 높고 간단한 구조와 신뢰성이 높지만, (단점) 패킷에 의해 성능 저하가 발생하며 라우팅이 불가능함
예시) 기업 사내망에서 장치 간 통신
3️⃣ L3 스위치 (라우터, 공유기)
💡 라우터란 네트워크 패킷을 연결해주는 통로 역할이며 대역폭 확장이 주 기능
- MAC 주소 뿐 아니라 IP 주소를 기반으로 라우팅 기능 수행
- VLAN 간의 데이터 전달 및 트래픽 최적화
4️⃣ L4 스위치
- 전송 계층 = 4계층에서 작동
- 외부에서 들어오는 모든 요청을 먼저 받아들여 내부의 서버들에게 분산시켜줌 = 여러 대의 서버를 한 대처럼 묶을 수 있는 부하 분산(로드 밸런싱) 기능 제공
- IP 주소 뿐 아니라 Port 정보 참고
- (장점) 보안성이 좋으며 다른 서버로 대체하는 ACTIVE-ACTIVE / ACTIVE-STANDBY 기능도 가능하지만, (단점) 설정이 많이 복잡함
5️⃣ L7 스위치 (보안 스위치 / L5, L6 스위치)
- 응용 계층 = 7계층에서 작동
- 4계층처럼 스위치로 들어온 패킷을 적절한 서버로 전송해주는 로드 밸런싱을 위해 스위치를 사용하지만 차이점이 있음
🔍 L4 스위치와 L7 스위치의 차이
| L4 스위치 | L7 스위치 |
|---|
| 3~4계층에 속하는 IP 주소 및 TCP/UDP Port 정보를 보고 스위칭 | 3~7계층에 속하는 IP 주소 및 TCP/UDP Port 정보, 패킷 내용까지 모두 보고 스위칭 |
| TCP/UDP Port를 이용하여 로드 밸런싱(트래픽 분산처리) | 7계층 HTTP의 URL, FTP 쿠키 정보 및 바이러스 패턴을 분석하여 보안에 더 유리하고 정교한 로드 밸런싱 가능 |
📁 네트워크 분류
범위에 따라 LAN(Local Area Network), MAN(Metropolitan Area Network), WAN(Wide Area Network)으로 구분됨
1️⃣ LAN (근거리 통신망)
좁은 지역(사무실, 학교, 가정)에서 사용되는 네트워크로 전송 속도가 빠르고 혼잡하지 않다. 사내 네트워크나 가정용 WiFi에서 주로 사용된다.
2️⃣ MAN (도시 지역 통신망)
도시 규모의 네트워크로 전송 속도는 보통이며 여러 LAN을 연결한다. LAN보다는 혼잡하다는 특징이 있으며, 대학 캠퍼스망이나 대형 공공 네트워크에서 주로 사용된다.
3️⃣ WAN (광역 통신망)
국가나 대륙 간의 광범위한 지역을 연결하는 네트워크로, 전송 속도는 낮으며 MAN보다 혼잡하다. 인터넷이나 기업 간 VPN에 사용된다.
📌 참고