네트워킹에서, 프로토콜은 데이터 형식 지정 및 처리를 위한 표준화된 규칙 세트입니다. 프로토콜을 사용하면 컴퓨터가 서로 통신할 수 있습니다.
이 글을 읽은 후에 다음을 할 수 있습니다:
관련 콘텐츠
인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!
글 링크 복사
네트워킹에서 프로토콜은 데이터 서식 지정 및 처리를 위한 규칙 세트입니다. 네트워크 프로토콜은 컴퓨터의 공통 언어와 같습니다. 네트워크 내의 컴퓨터는 아주 상이한 소프트웨어와 하드웨어를 사용할 수 있습니다. 그렇지만 프로토콜을 사용하면 서로 통신할 수 있습니다.
표준화된 프로토콜은 컴퓨터가 사용할 수 있는 공통 언어와 같습니다. 세계의 다른 지역에서 온 두 사람이 서로의 모국어를 이해하지 못하지만, 공유하는 제 3 언어를 사용하여 소통할 수 있는 것과 유사합니다. 한 컴퓨터에서 인터넷 프로토콜(IP)을 사용하고 두 번째 컴퓨터에서도 그 포로토콜을 사용하는 경우, 유엔에서 전 세계의 대표자들이 서로 의사 소통하기 위해 6개의 공식 언어에 의존하는 것처럼 통신할 수 있습니다. 그러나 한 컴퓨터에서 IP를 사용하고 다른 컴퓨터에서 이 프로토콜을 모르면 통신할 수 없습니다.
인터넷에는 프로세스 유형에 따라 상이한 프로토콜이 있습니다. 프로토콜은 어떤 OSI 모델 계층에 속하는지 논의되는 경우가 많습니다.
개방형 시스템 상호 연결(OSI) 모델은 인터넷 작동 방식을 추상적으로 표현한 것입니다. 여기에는 7개의 계층이 포함되어 있으며 각 계층은 네트워킹 기능의 다른 범주를 나타냅니다.
프로토콜은 이러한 네트워킹 기능을 가능하게 합니다. 예를 들어, 인터넷 프로토콜(IP)은 데이터 패킷*의 출처와 목적지를 표시하여 데이터 라우팅을 담당합니다. IP 덕분에 네트워크 간 통신이 가능합니다. 따라서 IP는 네트워크 계층(계층 3) 프로토콜로 간주됩니다.
또 다른 예로, 전송 제어 프로토콜(TCP)은 네트워크를 통한 데이터 패킷의 전송이 원활하게 진행되도록 보장합니다. 따라서 TCP는 전송 계층(계층 4) 프로토콜로 간주됩니다.
*패킷은 데이터의 작은 부분입니다. 네트워크를 통해 전송되는 모든 데이터는 패킷으로 나뉩니다.
앞서 설명한 바와 같이, IP는 라우팅을 담당하는 네트워크 계층 프로토콜입니다. 그러나 이것이 유일한 네트워크 계층 프로토콜은 아닙니다.
IPsec: 인터넷 프로토콜 보안(IPsec)은 가상 사설망(VPN)을 통해 암호화되고 인증된 IP 연결을 설정합니다. 기술적으로, IPsec은 하나의 프로토콜이 아니라 캡슐화 보안 프로토콜(ESP), 인증 헤더(AH), 보안 연결(SA)을 포함하는 프로토콜 모음입니다.
ICMP: 인터넷 제어 메시지 프로토콜(ICMP)은 오류를 보고하고 상태 업데이트를 제공합니다. 예를 들어 라우터가 패킷을 전달할 수 없는 경우 이 프로토콜은 ICMP 메시지를 패킷의 출처로 다시 보냅니다.
IGMP: 인터넷 그룹 관리 프로토콜(IGMP)은 일대다 네트워크 연결을 설정합니다. IGMP는 멀티캐스팅을 설정하는 데 도움이 되므로 여러 컴퓨터에서 하나의 IP 주소로 전달되는 데이터 패킷을 수신할 수 있습니다.
알아야 할 가장 중요한 프로토콜은 다음과 같습니다.
TCP: 앞서 설명한 것처럼 TCP는 안정적인 데이터 전달을 보장하는 전송 계층 프로토콜입니다. TCP는 IP와 함께 사용하기위한 것이며 두 프로토콜은 종종 TCP/IP로 함께 참조됩니다.
HTTP: 하이퍼텍스트 전송 프로토콜(HTTP)은 대부분의 사용자가 상호 작용하는 인터넷인 월드와이드웹의 기초입니다. 장치간에 데이터를 전송하는 데 사용됩니다. HTTP는 애플리케이션(예: 브라우저)이 추가 해석 없이 직접 사용할 수 있는 형식으로 데이터를 저장하므로 애플리케이션 계층(계층 7)에 해당합니다. OSI 모델의 하위 계층은 애플리케이션이 아닌 컴퓨터의 운영 체제에서 처리됩니다.
HTTPS: HTTP의 문제점은 암호화되지 않아서 HTTP 메시지를 가로채면 모든 공격자가 읽을 수 있다는 것입니다. HTTPS(HTTP Secure)는 HTTP 메시지를 암호화하여 이 문제를 해결합니다.
TLS/SSL: 전송 계층 보안(TLS)은 HTTPS에서 암호화에 사용하는 프로토콜입니다. TLS는 이전에는 보안 소켓 계층(SSL)이라고 불렸습니다.
UDP: UDP(사용자 데이터그램 프로토콜)는 전송 계층에서 TCP보다는 더 빠르지만 안정성이 떨어지는 대안입니다. UDP는 빠른 데이터 전달이 가장 중요한 비디오 스트리밍 및 게임과 같은 서비스에서 자주 사용됩니다.
네트워크 라우터는 특정 프로토콜을 사용하여 다른 라우터에 대한 가장 효율적인 네트워크 경로를 검색합니다. 이러한 프로토콜은 사용자 데이터 전송에는 사용되지 않습니다. 중요한 네트워크 라우팅 프로토콜에는 다음이 포함됩니다.
BGP: 경계 게이트웨이 프로토콜(BGP)은 네트워크에서 제어하는 IP 주소를 브로드캐스트하는 데 사용하는 애플리케이션 계층 프로토콜입니다. 이 정보를 통해 라우터는 목적지로 가는 도중에 통과해야 하는 네트워크 데이터 패킷을 결정할 수 있습니다.
EIGRP: 향상된 내부 게이트웨이 라우팅 프로토콜(EIGRP)은 라우터 간의 거리를 식별합니다. EIGRP는 각 라우터의 최상의 경로 레코드(라우팅 테이블이라고 함)를 자동으로 업데이트하고 해당 업데이트를 네트워크 내의 다른 라우터에 브로드캐스트합니다.
OSPF: 최단 경로 우선(OSPF) 프로토콜은 거리, 대역폭 등의 다양한 요소를 기반으로 가장 효율적인 네트워크 경로를 계산합니다.
RIP: 라우팅 정보 프로토콜(RIP)은 라우터 간의 거리를 식별하는 구형의 라우팅 프로토콜입니다. RIP는 애플리케이션 계층 프로토콜입니다.
컴퓨팅의 모든 측면과 마찬가지로 공격자는 네트워킹 프로토콜이 작동하는 방식을 악용하여 시스템을 손상시키거나 압도할 수 있습니다. 이러한 프로토콜은 대부분 분산 서비스 거부(DDoS) 공격에 사용됩니다. 예를 들어 SYN 폭주 공격에서 공격자는 TCP 프로토콜의 작동 방식을 이용합니다. 공격자는 SYN 패킷을 보내 서버와 TCP 핸드셰이크를 반복적으로 시작하여 서버에서 합법적인 사용자에게 서비스를 제공할 수 없도록 만듭니다. 서버의 리소스가 모든 가짜 TCP 연결에 묶이게 되기 때문입니다.
Cloudflare에서는 다양한 솔루션을 제공하여 이러한 공격 및 기타 사이버 공격을 차단합니다. Cloudflare Magic Transit은 OSI 모델의 계층 3, 4, 7에서 공격을 완화할 수 있습니다. SYN 폭주 공격의 예에서, Cloudflare에서 서버를 대신하여 TCP 핸드셰이크 프로세스를 처리하므로 서버의 리소스가 열려있는 TCP 연결로 인해 과부하가 걸리지 않습니다.