IP 4계층 모델은 인터넷 프로토콜 스위트(TCP/IP)의 통신 과정을 네 개의 추상화된 계층으로 구분하여 설명하는 개념적 모델이다. 이 모델은 네트워크 통신을 설계하고 이해하는 데 사용되는 핵심적인 프레임워크를 제공한다.
이 모델은 미국 국방부(DoD)의 연구 프로젝트에서 발전했으며, 이후 전 세계 인터넷의 표준 구조로 자리 잡았다. 각 계층은 특정한 기능을 담당하며, 하위 계층이 상위 계층에 서비스를 제공하는 계층적 구조를 가진다. 이는 복잡한 통신 과정을 모듈화하여 설계의 유연성과 문제 해결의 용이성을 높인다.
IP 4계층 모델은 보다 이론적인 OSI 7계층 모델과 자주 비교되지만, 실제 인터넷 구현의 기반이 되는 실용적인 모델이다. 네트워크 장비, 운영체제, 응용 프로그램의 개발과 운영에 있어 이 계층 구조에 대한 이해는 필수적이다.
IP 4계층 모델은 네트워크 통신을 네 개의 논리적 계층으로 구분하여 각 계층이 특정한 역할과 기능을 담당하도록 설계되었다. 각 계층은 하위 계층의 서비스를 이용하며, 상위 계층에 서비스를 제공하는 계층화된 구조를 가진다.
최상위인 응용 계층은 사용자나 응용 프로그램이 네트워크 서비스에 접근할 수 있는 인터페이스를 제공한다. 이 계층에서 동작하는 프로토콜은 데이터의 의미나 표현 방식에 초점을 맞춘다. 대표적인 프로토콜로는 웹 서비스를 위한 HTTP, 파일 전송을 위한 FTP, 이메일 전송을 위한 SMTP, 도메인 이름 변환을 위한 DNS 등이 있다.
전송 계층은 호스트 간의 논리적 통신을 담당하며, 데이터의 신뢰성 있는 전송을 보장하는 역할을 한다. 이 계층의 대표적인 프로토콜은 TCP와 UDP이다. TCP는 연결 지향적이고 신뢰성 있는 데이터 전송을 제공하며, 흐름 제어와 혼잡 제어를 수행한다. 반면, UDP는 비연결형 서비스를 제공하여 오버헤드가 적고 속도가 빠르지만, 신뢰성은 낮다.
계층 | 주요 역할 | 대표 프로토콜/기술 |
|---|---|---|
응용 계층 | 응용 프로그램 간 데이터 교환 규칙 정의 | HTTP, FTP, SMTP, DNS |
전송 계층 | 호스트 간 종단 간(end-to-end) 통신, 신뢰성/흐름 제어 | TCP, UDP |
인터넷 계층 | 논리적 주소(IP) 기반 패킷 경로 설정(라우팅) | IP, ICMP, ARP |
네트워크 접속 계층 | 물리적 매체를 통한 실제 데이터 프레임 전송 | 이더넷, Wi-Fi, PPP |
인터넷 계층은 패킷을 목적지까지 전달하는 경로를 결정하는 라우팅 기능을 수행한다. 이 계층의 핵심 프로토콜인 IP는 논리적 주소(IP 주소)를 부여하고, 이를 기반으로 패킷을 최종 목적지까지 전달하는 책임을 진다. 이 과정에서 라우터가 중요한 역할을 하며, ICMP와 ARP 같은 보조 프로토콜들이 오류 보고나 주소 변환을 지원한다.
가장 하위의 네트워크 접속 계층은 물리적인 네트워크 매체를 통해 실제 데이터 비트를 전송하는 기능을 담당한다. 이 계층은 네트워크 인터페이스 카드(NIC), 케이블, 허브, 스위치 등의 하드웨어와 이더넷이나 Wi-Fi 같은 프로토콜을 포함한다. 주된 역할은 MAC 주소를 사용하여 동일한 물리적 네트워크 세그먼트 내에서 장치 간의 프레임 전송을 관리하는 것이다.
응용 계층은 IP 4계층 모델의 최상위 계층으로, 사용자나 응용 프로그램이 네트워크 서비스를 직접 이용할 수 있도록 인터페이스를 제공한다. 이 계층은 전송 계층에서 제공하는 신뢰적 또는 비신뢰적 데이터 전송 서비스를 기반으로, 구체적인 애플리케이션 기능을 수행하는 프로토콜들이 포함된다. 사용자가 인식하는 대부분의 네트워크 서비스는 이 계층에서 구현된다.
주요 프로토콜로는 HTTP와 HTTPS[1], FTP, SMTP, DNS 등이 있다. 각 프로토콜은 특정 목적을 위해 설계되었으며, 예를 들어 HTTP는 웹 페이지를 요청하고 전송하는 데 사용되고, SMTP는 이메일을 보내는 데 사용된다. 이러한 프로토콜들은 클라이언트와 서버 간의 통신 규칙을 정의하며, 데이터의 형식과 교환 절차를 규정한다.
응용 계층의 데이터 단위는 일반적으로 "메시지" 또는 "데이터 스트림"으로 불린다. 이 계층에서 생성된 데이터는 하위 전송 계층으로 전달되어 TCP 또는 UDP 세그먼트로 캡슐화되는 과정을 거친다. 응용 계층 프로토콜은 주로 특정 포트 번호를 사용하여 동작하며, 이를 통해 여러 서비스가 동시에 네트워크를 통해 통신할 수 있다.
전송 계층은 IP 4계층 모델의 두 번째 계층으로, 응용 계층과 인터넷 계층 사이에서 중개 역할을 한다. 이 계층의 주요 목적은 호스트 간의 논리적 통신을 제공하고, 응용 프로그램 프로세스 간의 종단 간 통신(End-to-End Communication)을 가능하게 하는 것이다. 즉, 네트워크를 통해 전달된 데이터가 최종적으로 올바른 응용 프로그램에 도달하도록 주소 지정(포트 번호)하고, 데이터의 신뢰성 있는 전송을 보장하는 책임을 진다.
전송 계층의 핵심 기능은 연결 지향성과 신뢰성에 따라 두 가지 주요 프로토콜로 구분된다. 첫 번째는 TCP(Transmission Control Protocol)이다. TCP는 연결 설정, 데이터 전송의 신뢰성 보장, 흐름 제어, 혼잡 제어 등의 기능을 제공하는 연결 지향적 프로토콜이다. 데이터를 세그먼트로 나누어 전송하며, 수신 측의 확인 응답을 통해 패킷 손실을 감지하고 재전송한다. 이메일, 웹 브라우징, 파일 전송과 같이 데이터의 완전한 전달이 중요한 서비스에 사용된다. 두 번째는 UDP(User Datagram Protocol)이다. UDP는 비연결형 프로토콜로, 신뢰성보다는 속도와 실시간성이 중요한 서비스에 적합하다. 데이터그램을 전송하기 전에 연결을 설정하지 않으며, 오류 검사와 재전송 기능이 기본적으로 없다. DNS 조회, VoIP, 실시간 스트리밍, 온라인 게임 등에서 널리 사용된다.
이 계층은 포트 번호를 사용하여 동일한 호스트 내에서 실행되는 여러 응용 프로그램을 구분한다. 잘 알려진 포트(Well-Known Port, 0-1023)는 HTTP(80), HTTPS(443), FTP(21) 등 주요 서비스에 할당되어 있다. 이를 통해 하나의 IP 주소를 공유하는 여러 네트워크 서비스가 독립적으로 통신할 수 있다. 전송 계층의 서비스는 최종적으로 인터넷 계층에 의해 전달되는 패킷의 페이로드에 캡슐화된다.
인터넷 계층은 IP 4계층 모델의 세 번째 계층에 해당하며, 네트워크 계층의 핵심 기능을 담당한다. 이 계층의 주요 목적은 패킷이 출발지에서 목적지까지 최적의 경로를 통해 전달되도록 라우팅하는 것이다. 이를 위해 논리적 주소인 IP 주소를 사용하여 호스트와 네트워크를 식별한다.
이 계층의 핵심 프로토콜은 인터넷 프로토콜이다. IP는 비연결형 및 비신뢰성 서비스를 제공하는데, 이는 각 패킷이 독립적으로 전송되며 전송의 성공 여부를 보장하지 않음을 의미한다. 패킷 전송 경로 결정은 라우터가 수행하며, 라우터는 내부의 라우팅 테이블을 참조하여 다음 홉으로 패킷을 전달한다.
인터넷 계층의 주요 기능은 다음과 같다.
기능 | 설명 |
|---|---|
패킷이 목적지까지 가는 경로를 결정하고 선택한다. | |
패킷이 전송 매체의 최대 전송 단위를 초과할 경우, 더 작은 조각으로 나눈다. |
또한 인터넷 제어 메시지 프로토콜은 IP 패킷 전송 과정에서 발생하는 오류 보고나 진단 메시지를 전달하는 보조 프로토콜로 동작한다. 예를 들어, 목적지에 도달할 수 없는 경우 ICMP 메시지가 발신지로 반환된다.
네트워크 접속 계층은 IP 4계층 모델의 최하위 계층으로, 물리적인 네트워크 매체를 통해 실제 데이터 프레임을 송수신하는 역할을 담당한다. 이 계층은 하드웨어와 가장 밀접하게 연관되어 있으며, 네트워크 카드의 MAC 주소와 같은 물리적 주소를 사용하여 같은 네트워크 세그먼트 내에서의 직접 통신을 가능하게 한다. 주요 기능은 이더넷, Wi-Fi, PPP와 같은 특정 네트워크 기술에 맞춰 데이터를 프레임으로 구성하고, 물리적 매체(구리선, 광섬유, 무선 전파 등)를 통해 전기 신호나 광신호로 변환하여 전송하는 것이다.
이 계층에서 사용되는 주요 프로토콜과 기술은 다음과 같다.
프로토콜/기술 | 설명 |
|---|---|
Wi-Fi (IEEE 802.11) | 무선 LAN 기술을 위한 표준이다. |
ARP (Address Resolution Protocol) | |
PPP (Point-to-Point Protocol) | 두 노드 간의 직접적인 연결(예: 전화선 모뎀 연결)에 사용된다. |
네트워크 접속 계층은 상위 인터넷 계층으로부터 전달받은 IP 패킷을 캡슐화하여 특정 네트워크 기술의 프레임 형식으로 감싼다. 이 과정에는 목적지의 MAC 주소를 헤더에 추가하는 작업이 포함된다. 반대로, 물리적 매체로부터 수신된 신호는 프레임으로 재조립되고, 오류 검사를 거친 후 MAC 주소를 확인하여 해당 시스템으로 전달되거나 폐기된다. 그 후 프레임의 페이로드에서 IP 패킷이 추출되어 상위 계층으로 전달된다.
이 계층에서 동작하는 대표적인 네트워크 장비는 허브와 스위치이다. 허브는 들어오는 신호를 모든 포트에 단순히 복제하는 더미 장비인 반면, 스위치는 MAC 주소 테이블을 학습하고 프레임의 목적지 MAC 주소를 확인하여 해당 포트로만 전송하는 지능적인 장비이다.
TCP/IP 프로토콜 스택은 IP 4계층 모델을 구현하는 데 사용되는 구체적인 프로토콜들의 집합을 가리킨다. 이 스택은 네트워크 통신을 가능하게 하는 핵심 프로토콜과 이를 보조하는 다양한 프로토콜들로 구성된다.
IP 4계층의 핵심은 전송 계층의 TCP와 UDP, 그리고 인터넷 계층의 IP 프로토콜이다. IP는 패킷의 논리적 주소 지정과 경로 설정을 담당하여 데이터가 목적지까지 전달될 수 있는 기반을 제공한다. IP는 비연결형, 비신뢰성 서비스를 특징으로 한다. 전송 계층에서는 TCP와 UDP가 이 역할을 분담한다. TCP는 연결 지향적이며, 신뢰성 있는 데이터 전송을 보장하기 위해 3방향 핸드셰이크, 흐름 제어, 오류 복구 등의 메커니즘을 사용한다. 반면, UDP는 비연결형 프로토콜로, 헤더가 간단하고 오버헤드가 적어 실시간 스트리밍이나 DNS 질의와 같이 속도가 중요한 서비스에 주로 사용된다.
프로토콜 | 계층 | 주요 특징 | 주요 사용 예 |
|---|---|---|---|
인터넷 계층 | 비연결형, 주소 지정, 경로 설정 | 모든 인터넷 통신의 기반 | |
전송 계층 | 연결 지향적, 신뢰성 보장, 흐름 제어 | 웹(HTTP), 이메일(SMTP), 파일 전송(FTP) | |
전송 계층 | 비연결형, 빠른 전송, 간단한 헤더 | DNS, VoIP, 실시간 동영상 스트리밍 |
핵심 프로토콜들이 데이터 전송의 본연의 기능을 수행한다면, 보조 프로토콜들은 네트워크의 상태 진단, 주소 변환 등을 통해 통신을 원활하게 지원한다. 인터넷 계층의 ICMP는 네트워크 장비 간에 오류 메시지나 제어 메시지를 전달하는 데 사용된다. 예를 들어, 목적지에 도달할 수 없는 경우 'Destination Unreachable' 메시지를 보내거나, ping 명령어를 통해 네트워크 연결 상태를 확인할 때 활용된다. 네트워크 접속 계층에서는 ARP가 중요한 역할을 한다. ARP는 IP 주소를 해당 장비의 물리적 주소인 MAC 주소로 변환하는 프로토콜이다. 이를 통해 같은 로컬 네트워크 내에서 데이터 프레임이 정확한 목적지 하드웨어로 전달될 수 있다.
TCP/IP 프로토콜 스택의 핵심은 전송 계층의 TCP와 UDP, 그리고 인터넷 계층의 IP 프로토콜로 구성된다. 이 세 프로토콜은 데이터 통신의 근간을 이루며, 각각 고유한 역할과 특성을 가진다.
프로토콜 | 계층 | 주요 특징 | 주요 용도 |
|---|---|---|---|
인터넷 계층 | 논리적 주소(IP 주소) 지정, 비연결형, 비신뢰성, 최선형 전송 | 패킷의 논리적 주소 지정과 경로 설정(라우팅) | |
전송 계층 | 연결 지향적, 신뢰성 보장(순서, 재전송), 흐름 제어, 혼잡 제어 | 웹(HTTP), 이메일(SMTP), 파일 전송(FTP) 등 신뢰성 필요한 통신 | |
전송 계층 | 비연결형, 신뢰성 없음, 헤더가 간단하고 오버헤드 적음, 빠른 전송 | DNS 조회, 실시간 스트리밍, VoIP, 온라인 게임 등 속도 중요한 통신 |
IP는 네트워크 상에서 데이터 패킷을 발신지에서 목적지까지 전달하는 책임을 진다. IP 주소를 통해 호스트를 식별하고, 패킷의 분할과 재조립을 수행한다. 그러나 IP 자체는 패킷이 올바르게 도착하는 것을 보장하지 않는 비신뢰성 서비스를 제공한다[2].
전송 계층의 두 프로토콜은 IP가 제공하는 비신뢰성 서비스를 보완하는 방식에서 차이를 보인다. TCP는 통신을 시작하기 전에 3방향 핸드셰이크를 통해 연결을 설정하는 연결 지향적 프로토콜이다. 데이터의 순차적 전달, 손실된 데이터의 재전송, 흐름 제어 및 혼잡 제어를 통해 높은 신뢰성을 보장한다. 반면, UDP는 연결 설정 과정 없이 데이터를 전송하는 비연결형 프로토콜이다. 헤더 구조가 단순하고 검증 절차가 최소화되어 지연 시간이 짧고 오버헤드가 적다. 따라서 신뢰성보다는 전송 속도와 실시간성이 중요한 응용 프로그램에서 선호된다.
TCP/IP 프로토콜 스택에서 핵심적인 TCP, UDP, IP 프로토콜 외에도 네트워크의 정상적인 운영과 문제 해결을 지원하는 보조 프로토콜들이 존재한다. 대표적인 보조 프로토콜로는 ICMP와 ARP가 있다. 이 프로토콜들은 데이터 전송 자체보다는 네트워크 상태 진단, 오류 보고, 주소 변환과 같은 지원 기능을 담당한다.
ICMP는 인터넷 제어 메시지 프로토콜의 약자로, 인터넷 계층에서 동작한다. 이 프로토콜의 주요 역할은 네트워크 장비 간에 오류 메시지나 운영 정보를 전달하는 것이다. 예를 들어, 특정 목적지로의 IP 패킷 전송이 실패했을 때 "목적지 도달 불가" 메시지를 보내는 것이 ICMP의 기능이다. 또한, ping 명령어는 ICMP 에코 요청과 응답을 이용하여 특정 호스트의 연결 상태와 응답 시간을 확인하는 데 사용된다[3]. ICMP는 데이터 전송을 직접 수행하지 않으므로 전송 계층 프로토콜 위에서 동작하지 않는다.
ARP는 주소 결정 프로토콜의 약자로, 네트워크 접속 계층에서 동작한다. ARP의 핵심 기능은 동일한 로컬 네트워크(LAN) 내에서 알려진 IP 주소에 대응하는 MAC 주소를 찾는 것이다. 네트워크 상의 장치는 실제 데이터 프레임을 전송하기 위해 목적지의 물리적 주소인 MAC 주소를 필요로 한다. ARP는 네트워크에 브로드캐스트 방식으로 "이 IP 주소를 가진 장비의 MAC 주소가 무엇인가?"라는 질의를 보내고, 해당 IP를 가진 장비가 자신의 MAC 주소를 응답으로 회신하는 과정을 통해 주소를 매핑한다. 이렇게 얻은 정보는 ARP 캐시에 일정 시간 동안 저장되어 재사용된다.
데이터 캡슐화는 IP 4계층 모델에서 상위 계층의 데이터가 하위 계층으로 전달될 때마다 해당 계층의 제어 정보(헤더, 때로는 트레일러)로 감싸지는 과정을 말한다. 이 과정은 송신 호스트에서 데이터가 네트워크를 통해 수신 호스트에 도달하기 위해 거치는 필수적인 절차이다. 반대로 수신 측에서는 하위 계층부터 상위 계층으로 올라가면서 각 계층의 헤더를 하나씩 제거하는 역캡슐화 과정을 거쳐 최종 응용 프로그램 데이터를 복원한다.
전송 과정은 다음과 같은 단계로 진행된다. 먼저, 응용 계층에서 생성된 데이터(예: HTTP 요청 메시지)는 전송 계층으로 내려간다. 전송 계층에서는 데이터에 TCP 또는 UDP 헤더를 추가하여 세그먼트(TCP) 또는 데이터그램(UDP)을 생성한다. 이 헤더에는 출발지와 목적지 포트 번호, 오류 제어, 흐름 제어 정보 등이 포함된다.
다음으로, 이 세그먼트는 인터넷 계층으로 전달된다. 인터넷 계층에서는 IP 헤더를 추가하여 패킷을 만든다. IP 헤더에는 출발지와 목적지의 IP 주소, 패킷 생존 시간(TTL), 프로토콜 식별자 등 라우팅에 필요한 핵심 정보가 담긴다. 마지막으로, 패킷은 네트워크 접속 계층에 도달한다. 이 계층에서는 최종적으로 프레임 헤더와 트레일러(예: FCS)를 추가하여 물리적 네트워크(예: 이더넷)를 통해 전송할 수 있는 형태로 만든다. 프레임 헤더에는 출발지와 목적지의 MAC 주소가 포함된다.
계층 | 전송 단위 | 추가되는 제어 정보 (예) |
|---|---|---|
응용 계층 | 데이터/메시지 | 애플리케이션 프로토콜에 따른 데이터 |
전송 계층 | 세그먼트/데이터그램 | TCP/UDP 헤더 (포트 번호 등) |
인터넷 계층 | 패킷 | IP 헤더 (IP 주소 등) |
네트워크 접속 계층 | 프레임 | 프레임 헤더/트레일러 (MAC 주소, FCS 등) |
이렇게 캡슐화된 프레임은 수신 호스트에 도착하면 역순으로 각 계층의 헤더를 분석하고 제거하며 올라간다. 네트워크 접속 계층에서 FCS를 이용한 오류 검출 후 프레임 헤더를 벗기고, 인터넷 계층에서는 IP 헤더를 확인하여 라우팅이 정상적으로 이루어졌는지 판단한다. 전송 계층에서는 포트 번호를 확인하여 해당하는 응용 프로그램에 데이터를 전달하며, 최종적으로 응용 계층에서 원본 메시지를 수신하게 된다. 이 계층적 분리는 네트워크 통신의 모듈화와 유연성을 가능하게 하는 핵심 원리이다.
OSI 모델은 국제표준화기구(ISO)가 제정한 추상적인 참조 모델이며, TCP/IP 모델은 실제 인터넷에서 사용되는 실용적인 프로토콜 스택이다. 두 모델 모두 네트워크 통신을 계층적으로 분할하여 설계한다는 기본 개념을 공유하지만, 계층 수와 범위에서 차이를 보인다.
OSI 7계층은 응용 계층, 표현 계층, 세션 계층, 전송 계층, 네트워크 계층, 데이터 링크 계층, 물리 계층으로 구성된다. 반면, TCP/IP 4계층은 응용 계층, 전송 계층, 인터넷 계층, 네트워크 접속 계층으로 구성된다. 두 모델의 주요 대응 관계는 다음과 같다.
TCP/IP 4계층 | OSI 7계층 | 설명 |
|---|---|---|
응용 계층 | 응용 계층, 표현 계층, 세션 계층 | TCP/IP 모델은 세 가지 상위 계층의 기능을 하나의 응용 계층에 통합했다. HTTP, FTP, SMTP 등이 이에 해당한다. |
전송 계층 | 전송 계층 | 두 모델 모두 정확한 종단 간(end-to-end) 통신을 담당한다. TCP와 UDP가 이 계층에 속한다. |
인터넷 계층 | 네트워크 계층 | 논리적 주소 지정과 패킷 교환 네트워크를 통한 경로 설정(라우팅) 기능을 수행한다. IP 프로토콜이 핵심이다. |
네트워크 접속 계층 | 데이터 링크 계층, 물리 계층 | TCP/IP 모델은 하드웨어 관련 두 계층을 하나로 묶어 정의한다. 이더넷, 와이파이(Wi-Fi) 등 실제 매체에 데이터를 전송하는 기능을 포함한다. |
OSI 모델은 통신 과정을 세밀하게 구분하여 교육이나 개념 설명에 유리한 표준 모델이다. 그러나 TCP/IP 모델은 인터넷의 실질적 표준으로, 프로토콜 개발과 구현의 실제 기준이 된다. 현대 네트워크 교육과 문서에서는 두 모델을 혼용하여 설명하는 경우가 많으며, 특히 OSI 모델의 계층 번호(예: L3 스위치, L7 방화벽)가 계층을 지칭하는 관용어로 널리 사용된다.
IP 4계층 모델에서 각 계층은 특정한 네트워크 장비와 밀접하게 연관되어 있다. 이러한 장비들은 각자의 계층에서 데이터 처리와 전달의 핵심적인 역할을 수행한다.
라우터는 인터넷 계층을 대표하는 장비이다. 라우터의 주요 기능은 서로 다른 네트워크 간의 데이터 패킷 전송 경로를 결정하는 라우팅이다. 라우터는 패킷의 IP 헤더를 분석하여 목적지 IP 주소를 확인하고, 내부의 라우팅 테이블을 참조하여 패킷을 다음 목적지(넥스트 홉)로 전달할 최적의 경로를 선택한다. 이 과정은 인터넷 계층의 핵심 프로토콜인 IP에 기반하여 이루어진다. 따라서 라우터는 네트워크의 경계에 위치하여 WAN을 연결하거나 내부 네트워크를 서브넷으로 분할하는 데 사용된다.
네트워크 접속 계층에서는 스위치와 허브가 주로 활동한다. 허브는 가장 기본적인 장비로, 한 포트로 수신된 데이터를 연결된 모든 다른 포트로 무차별적으로 전송(브로드캐스트)한다. 이는 충돌 도메인을 넓히고 네트워크 효율을 저하시킬 수 있다. 반면, 스위치는 더 지능적인 장비로, 데이터 프레임의 MAC 주소를 학습하고 저장하여 특정 목적지 장치가 연결된 포트로만 데이터를 전송한다. 이는 충돌 도메인을 분리하고 네트워크 대역폭을 효율적으로 사용하게 한다. 스위치는 이더넷과 같은 LAN 기술을 기반으로 동작하며, 네트워크 접속 계층의 물리적 주소인 MAC 주소를 처리한다.
한편, 방화벽이나 게이트웨이와 같은 장비는 여러 계층에 걸쳐 동작할 수 있다. 예를 들어, 패킷 필터링 방화벽은 주로 인터넷 계층에서 IP 주소와 포트 번호를 기준으로 트래픽을 제어하지만, 애플리케이션 레벨 게이트웨이는 응용 계층까지 데이터를 분석하여 더 정교한 보안 정책을 적용한다.
라우터는 IP 4계층 모델의 인터넷 계층에서 동작하는 핵심 네트워크 장비이다. 라우터의 주요 기능은 서로 다른 네트워크 간에 IP 패킷을 전달하는 라우팅을 수행하는 것이다. 이를 위해 라우터는 라우팅 테이블을 유지 관리하며, 패킷의 목적지 IP 주소를 확인하여 최적의 경로를 결정하고 다음 홉으로 패킷을 전송한다.
라우터는 네트워크 접속 계층에서 수신한 프레임의 헤더와 트레일러를 제거하여 인터넷 계층의 IP 패킷을 추출한다. 추출된 패킷의 헤더를 검사한 후, 라우터는 자신의 라우팅 테이블을 조회하여 패킷을 어느 인터페이스로 포워딩할지 결정한다. 결정된 경로에 따라 패킷은 다시 네트워크 접속 계층으로 전달되어 새로운 프레임으로 캡슐화된 후 다음 목적지로 전송된다.
라우터는 서로 다른 네트워크 세그먼트를 연결함으로써 브로드캐스트 도메인을 분리하는 역할도 한다. 이는 불필요한 브로드캐스트 트래픽이 전체 네트워크로 확산되는 것을 방지하여 네트워크 효율성을 높인다. 라우팅 프로토콜은 크게 정적 라우팅과 동적 라우팅으로 구분되며, OSPF, BGP와 같은 동적 라우팅 프로토콜을 사용하는 라우터는 네트워크 토폴로지 변화에 자동으로 적응할 수 있다.
라우터는 일반적으로 WAN과 LAN을 연결하는 게이트웨이 역할을 하며, NAT나 패킷 필터링과 같은 기본적인 보안 기능을 제공하기도 한다.
스위치와 허브는 네트워크 접속 계층에서 동작하는 대표적인 네트워크 장비로, LAN 내에서 데이터 프레임의 전달을 담당한다. 두 장비 모두 물리적인 네트워크를 구성하는 데 사용되지만, 데이터를 처리하는 방식에 근본적인 차이가 있다.
허브는 가장 기본적인 연결 장치로, 한 포트로 수신된 데이터 프레임을 연결된 모든 포트로 무차별적으로 복제하여 전송한다. 이 방식을 브로드캐스트 또는 플러딩이라고 한다. 이는 네트워크에 불필요한 트래픽을 증가시키고, 여러 장치가 동시에 데이터를 보내려 할 때 충돌이 발생할 수 있다는 단점이 있다. 반면, 스위치는 MAC 주소 학습 기능을 가진 지능적인 장비이다. 스위치는 각 포트에 연결된 장치의 MAC 주소를 내부 MAC 주소 테이블에 기록하고, 수신된 데이터 프레임의 목적지 MAC 주소를 확인하여 해당 주소가 연결된 특정 포트로만 프레임을 전달한다. 이는 네트워크 효율성을 높이고 충돌 도메인을 분리한다.
아래 표는 허브와 스위치의 주요 차이점을 요약한다.
특성 | 허브 | 스위치 |
|---|---|---|
동작 계층 | 네트워크 접속 계층 (물리 계층) | 네트워크 접속 계층 (데이터 링크 계층) |
데이터 전달 방식 | 모든 포트로 브로드캐스트 | 목적지 포트로만 유니캐스트 |
주소 식별 | MAC 주소를 식별하지 않음 | MAC 주소를 기반으로 프레임 전송 |
충돌 도메인 | 모든 포트가 하나의 충돌 도메인을 공유 | 포트별로 충돌 도메인이 분리됨 |
성능 | 상대적으로 낮음, 네트워크 정체 유발 가능성 높음 | 상대적으로 높음, 네트워크 대역폭 효율적 사용 |
현대의 유선 LAN 환경에서는 네트워크 성능과 보안을 위해 허브보다 스위치가 표준적으로 사용된다. 스위치는 각 장치 간의 독립적인 통신 경로를 제공하여 전체 네트워크 처리량을 향상시킨다. 또한, 가상 LAN 기능을 지원하는 스위치는 논리적으로 네트워크를 분할하여 브로드캐스트 트래픽의 범위를 제한하고 보안성을 강화할 수 있다.
IPv4는 1981년에 정의된 인터넷 프로토콜의 네 번째 버전이다. 32비트 주소 체계를 사용하여 약 43억 개의 고유 주소를 제공한다. 주소는 점으로 구분된 십진수 네 개(예: 192.168.0.1)로 표현된다. 인터넷의 초기 성장을 지탱했으나, 스마트폰과 사물인터넷 기기의 폭발적 증가로 주소 고갈 문제가 심각해졌다. 이를 완화하기 위해 NAT와 사설 IP 주소 같은 기술이 널리 사용되었다.
IPv6는 주소 고갈 문제를 근본적으로 해결하기 위해 1998년에 표준화된 차세대 프로토콜이다. 128비트 주소 체계를 채택하여 거의 무한에 가까운 수의 주소(약 3.4×10^38개)를 제공한다. 주소는 콜론으로 구분된 16진수 여덟 개(예: 2001:0db8:85a3:0000:0000:8a2e:0370:7334)로 표현되며, 연속된 0은 '::'로 생략할 수 있다. IPv4에 비해 패킷 헤더 구조가 단순화되고, IPsec 지원이 기본 사양에 포함되는 등 보안과 성능이 향상되었다.
두 프로토콜의 주요 차이점을 비교하면 다음과 같다.
특성 | IPv4 | IPv6 |
|---|---|---|
주소 길이 | 32비트 | 128비트 |
주소 표현 | 점으로 구분된 십진수 (예: 192.168.1.1) | 콜론으로 구분된 16진수 (예: 2001:db8::1) |
주소 공간 | 약 43억 개 | 약 3.4×10^38개 |
헤더 구조 | 복잡함 (20바이트 이상, 옵션 포함) | 단순화됨 (고정 40바이트) |
주소 구성 방식 | DHCP 또는 수동 구성 | SLAAC, DHCPv6 |
기본 보안 | 옵션 (IPsec) | 기본 사양에 포함 (IPsec) |
현재 인터넷은 이중 스택, 터널링, 프로토콜 변환 등의 전환 기술을 통해 IPv4와 IPv6가 공존하는 상태이다. 장기적으로 모든 네트워크 장비와 서비스가 IPv6로 전환될 것으로 예상되지만, 아직까지 상당수의 인프라는 IPv4에 의존하고 있다.
방화벽은 네트워크 트래픽을 모니터링하고 미리 정의된 보안 규칙에 따라 허용 또는 차단하는 장치 또는 소프트웨어이다. 방화벽은 주로 인터넷 계층과 전송 계층에서 동작하여 IP 주소와 포트 번호를 기반으로 패킷을 필터링한다. 상태 기반(stateful) 방화벽은 TCP 연결 상태를 추적하여 더 정교한 제어를 가능하게 한다. 일부 방화벽은 응용 계층까지 검사할 수 있어, 특정 애플리케이션 프로토콜의 내용을 분석하고 악성 코드를 탐지한다.
TLS/SSL과 같은 암호화 프로토콜은 주로 응용 계층과 전송 계층 사이에서 동작하여 데이터의 기밀성과 무결성을 보장한다. TLS는 TCP 위에서 동작하여 HTTP, SMTP, FTP와 같은 응용 계층 프로토콜의 통신을 암호화한다. 이는 네트워크 접속 계층이나 인터넷 계층에서 발생할 수 있는 도청이나 패킷 스니핑으로부터 데이터를 보호한다. VPN은 여러 계층에 걸쳐 암호화 터널을 구축하여 전체 통신 세션을 보호하는 기술이다.
각 계층에서의 보안 조치는 상호 보완적으로 작동한다. 예를 들어, 인터넷 계층의 IPsec은 IP 패킷 자체를 암호화하고 인증하는 반면, 전송 계층의 TLS는 애플리케이션 데이터를 암호화한다. 따라서 다계층 방어(Defense in Depth) 전략이 중요시된다.
방화벽은 네트워크 트래픽을 모니터링하고 미리 정의된 보안 규칙에 따라 허용하거나 차단하는 장치 또는 소프트웨어이다. 이는 IP 4계층의 특정 계층에서 동작하며, 그 동작 계층에 따라 패킷 필터링 방화벽, 상태 기반 방화벽, 애플리케이션 계층 방화벽 등으로 분류된다.
가장 기본적인 형태인 패킷 필터링 방화벽은 주로 인터넷 계층과 전송 계층에서 동작한다. 이는 패킷의 헤더 정보, 예를 들어 출발지 및 목적지 IP 주소, 포트 번호, 프로토콜(TCP/UDP) 등을 검사하여 규칙에 따라 통과 여부를 결정한다. 상태 기반 방화벽은 이보다 한 단계 발전하여, 단순한 패킷 정보뿐만 아니라 연결의 상태(예: 연결 설정, 데이터 전송, 연결 종료)를 추적하고 이를 기준으로 더 정교한 필터링을 수행한다.
애플리케이션 계층 방화벽(또는 프록시 방화벽)은 응용 계층에서 동작한다. 이는 실제 애플리케이션 데이터의 내용(페이로드)까지 검사할 수 있어, 웹 요청의 URL, 이메일의 첨부 파일, 특정 애플리케이션 명령어 등에 기반한 고급 보안 정책을 적용할 수 있다. 이는 웹 애플리케이션 방화벽(WAF)과 같은 형태로 구체화되기도 한다.
방화벽 유형 | 주요 동작 계층 | 필터링 기준 |
|---|---|---|
패킷 필터링 | 인터넷 계층, 전송 계층 | IP 주소, 포트 번호, 프로토콜 |
상태 기반 | 전송 계층 | 연결 상태 테이블(State Table) |
애플리케이션 계층 (프록시) | 응용 계층 | 애플리케이션 데이터 내용 |
현대의 차세대 방화벽(NGFW)은 이러한 여러 계층의 기능을 통합하여, 심층 패킷 검사(DPI), 침입 방지 시스템(IPS), 애플리케이션 인식 및 제어 등을 하나의 장비에서 제공한다. 따라서 방화벽은 네트워크 보안의 핵심 요소로서, 계층별로 다른 위협에 대응하는 다중 방어 체계를 구성하는 데 기여한다.
TLS와 SSL은 IP 4계층 모델의 응용 계층에서 동작하는 암호화 프로토콜이다. 이들은 주로 HTTP와 같은 상위 계층 프로토콜의 통신을 보호하기 위해 사용되며, HTTPS는 TLS/SSL로 암호화된 HTTP 연결을 의미한다. 이 프로토콜들은 전송 계층 위에 위치하여, 응용 프로그램 데이터의 기밀성, 무결성, 인증을 제공하는 역할을 한다.
TLS/SSL의 핵심 기능은 핸드셰이크 과정을 통해 안전한 연결을 수립하는 것이다. 이 과정에서 클라이언트와 서버는 암호화 알고리즘을 협상하고, 서버의 신원을 디지털 인증서를 통해 확인하며, 대칭 키 암호화에 사용될 세션 키를 안전하게 교환한다. 이후의 실제 데이터 통신은 이 세션 키를 사용해 빠르게 암호화 및 복호화된다. 주요 보안 서비스는 다음과 같다.
서비스 | 설명 |
|---|---|
기밀성 | 대칭키 암호화를 통해 도청으로부터 데이터를 보호한다. |
무결성 | 메시지 인증 코드(MAC)를 사용하여 데이터가 전송 중 변조되지 않았음을 보장한다. |
인증 | 서버(및 선택적으로 클라이언트)의 신원을 공개키 암호화 기반의 인증서로 확인한다. |
현재 SSL은 여러 보안 취약점으로 인해 더 이상 사용되지 않으며, 그 후속 버전인 TLS가 표준으로 자리 잡았다. TLS는 IP 4계층 구조에서 전송 계층의 안정적인 연결(TCP)을 기반으로 구축되지만, 그 기능 자체는 응용 프로그램 데이터를 보호하는 데 초점을 맞춘다. 따라서 방화벽이나 침입 탐지 시스템과 같은 네트워크 보안 장비는 주로 낮은 계층(인터넷 계층, 전송 계층)에서 패킷을 필터링하는 반면, TLS/SSL은 응용 계층의 데이터 내용을 보호하여 상호 보완적인 역할을 수행한다.