앞선 글에서는 라우터가 패킷에 기록된 목적지 IP 주소를 확인하고 다음 네트워크를 선택하는 과정을 살펴보았다. 라우터는 거대한 인터넷망의 갈림길마다 놓여 패킷이 이동할 방향을 판단하였다. 그런데 여기에서 한 가지 의문이 생긴다. 우리가 보내는 사진과 문서, 영상은 왜 처음 모습 그대로 이동하지 않고 작은 패킷으로 나뉘어 전송되는 것일까?
인터넷에서 데이터는 대체로 하나의 거대한 덩어리로 이동하지 않는다. 이메일 한 통도, 웹페이지 한 화면도, 동영상 한 편도 여러 개의 작은 전송 단위로 나뉘어 네트워크를 통과한다. 이렇게 일정한 크기로 나뉜 데이터 조각을 패킷(Packet)이라고 한다. 패킷에는 실제로 보내려는 데이터뿐 아니라 출발지와 목적지, 통신 과정에 필요한 여러 정보가 함께 담긴다.
겉으로 보면 데이터를 굳이 잘게 나누는 과정은 번거롭게 느껴질 수 있다. 하나로 보내면 나누고 다시 합치는 작업이 필요하지 않기 때문이다. 그러나 수많은 사람이 동시에 이용하는 인터넷에서는 데이터를 작은 단위로 나누는 방식이 오히려 통신망을 효율적으로 사용할 수 있게 하였다. 패킷은 단순히 잘린 데이터가 아니라 오늘날 인터넷의 유연성과 확장성을 가능하게 한 핵심 구조였다.
하나의 통신로를 독점하던 회선 교환
패킷 교환의 의미를 이해하려면 먼저 과거 전화망에서 널리 사용되었던 회선 교환(Circuit Switching) 방식을 살펴볼 필요가 있다. 회선 교환에서는 통신이 시작되기 전에 두 지점을 연결하는 전용 통신 경로를 먼저 확보하였다. 전화 통화가 이루어지는 동안에는 발신자와 수신자 사이에 하나의 통신 회선이 계속 유지되었다.
이 방식의 장점은 통신을 시작한 뒤에는 비교적 일정한 품질을 유지할 수 있다는 점이었다. 다른 사용자가 갑자기 끼어들어 같은 회선을 사용할 수 없었기 때문에 통화가 이어지는 동안에는 확보된 자원을 안정적으로 사용할 수 있었다. 그러나 통신 중에 아무 말도 하지 않는 순간에도 회선은 계속 두 사람에게 배정되어 있었다. 실제 데이터가 흐르지 않는 시간에도 통신 자원이 점유되는 구조였다.
여러 사람이 동시에 통신하려면 사용자 수만큼 많은 회선과 교환 능력이 필요하였다. 통신량이 늘어날수록 새로운 회선과 장비를 계속 확충해야 했고, 연결된 경로 가운데 일부가 끊어지면 통신 전체가 중단될 가능성도 있었다. 음성 통화처럼 지속적으로 정보가 흐르는 환경에서는 적합하였지만, 짧은 요청과 응답이 불규칙하게 반복되는 컴퓨터 통신에는 비효율적인 부분이 많았다.
웹페이지를 이용하는 상황을 생각해 보면 차이를 쉽게 이해할 수 있다. 사용자가 화면을 읽는 동안에는 새로운 데이터가 거의 전송되지 않는다. 회선 교환 방식이라면 데이터가 흐르지 않는 시간에도 전용 경로가 계속 유지된다. 반면 패킷 교환 방식에서는 필요한 순간에만 데이터를 패킷으로 만들어 보내고, 사용하지 않는 통신 자원은 다른 이용자의 패킷이 활용할 수 있다.

패킷 교환은 통신망을 여러 사람이 나누어 사용하게 하였다
패킷 교환(Packet Switching)에서는 데이터를 작은 패킷으로 나누어 보낸다. 각각의 패킷은 네트워크에 들어간 뒤 라우터를 거치며 목적지로 이동한다. 하나의 전용 회선을 처음부터 끝까지 확보하지 않기 때문에 여러 사용자의 패킷이 같은 통신 회선과 네트워크 장비를 번갈아 사용할 수 있다.
고속도로에 여러 차량이 함께 진입하는 모습과 비슷하다. 도로 전체를 한 차량이 목적지에 도착할 때까지 독점하지 않는다. 승용차와 버스, 화물차가 각자의 목적지를 향해 같은 도로를 나누어 이용한다. 인터넷에서도 이메일 패킷과 영상 패킷, 웹페이지 패킷이 하나의 통신망 안에서 서로 섞여 이동한다. 라우터는 패킷이 도착할 때마다 목적지를 확인하고 다음 방향으로 전달한다.
패킷 교환의 장점은 통신 자원을 실제로 필요할 때만 사용한다는 데 있다. 어떤 사용자가 잠시 데이터를 보내지 않으면 그동안 비어 있는 네트워크 자원을 다른 사용자가 활용할 수 있다. 인터넷 이용자가 많아지더라도 모든 사람에게 별도의 통신로를 하나씩 제공할 필요가 없다. 제한된 회선과 장비를 여러 사용자가 공유함으로써 전체 통신망의 활용도를 높일 수 있었다.
물론 여러 패킷이 같은 경로에 몰리면 대기 시간이 길어질 수 있다. 라우터가 처리할 수 있는 양보다 많은 패킷이 한꺼번에 들어오면 일부 패킷은 잠시 저장되거나 폐기될 수도 있다. 따라서 패킷 교환은 언제나 동일한 전송 시간을 보장하는 방식은 아니다. 대신 통신망을 유연하게 공유하고 상황에 따라 다른 경로를 사용할 수 있다는 장점을 얻었다.
큰 데이터를 잘게 나누면 무엇이 달라질까?
데이터를 패킷으로 나누는 첫 번째 이유는 하나의 사용자가 통신망을 오랫동안 차지하는 것을 막기 위해서이다. 크기가 매우 큰 파일이 하나의 덩어리로 전송된다면, 그 파일이 지나가는 동안 다른 사용자의 작은 데이터는 계속 기다려야 할 수 있다. 그러나 큰 파일을 여러 패킷으로 나누면 그 사이에 다른 사용자의 패킷도 함께 전송될 수 있다.
택배 회사가 한 사람의 거대한 화물을 처리하느라 모든 차량과 분류 시설을 멈추지 않는 것과 비슷하다. 화물을 관리 가능한 단위로 나누면 여러 고객의 물품을 함께 분류하고 운송할 수 있다. 네트워크에서도 적절한 크기의 패킷을 사용하면 다양한 데이터가 같은 통신망을 보다 공평하게 이용할 수 있다.
두 번째 이유는 오류가 발생하였을 때 다시 보내야 하는 데이터의 양을 줄일 수 있기 때문이다. 수백 메가바이트의 파일을 하나로 보냈는데 마지막 부분에서 오류가 발생하였다면 전체 데이터를 다시 보내야 할 수 있다. 반면 데이터를 작은 패킷으로 나누어 전송하면 손실되거나 손상된 일부 패킷만 다시 전송할 수 있다. 전송 거리가 멀거나 통신 품질이 일정하지 않은 환경에서는 이러한 차이가 크게 나타난다.
세 번째 이유는 서로 다른 네트워크를 통과하기 쉽도록 만들기 위해서이다. 인터넷은 하나의 동일한 장비와 회선으로 구성되어 있지 않다. 전송할 수 있는 데이터 크기와 처리 능력이 서로 다른 네트워크가 연결되어 있다. 데이터를 일정한 단위로 나누면 다양한 장비가 패킷을 순서대로 받아 처리할 수 있으며, 전체 데이터를 한꺼번에 저장하고 전달해야 하는 부담도 줄어든다.
다만 패킷을 지나치게 작게 나누면 효율이 무조건 높아지는 것은 아니다. 각 패킷에는 실제 데이터 외에도 주소와 제어 정보가 포함되기 때문이다. 패킷이 너무 작아지면 보내려는 내용보다 부가 정보의 비율이 커질 수 있다. 따라서 네트워크는 전송 효율과 처리 편의성을 고려하여 적절한 패킷 크기를 사용한다.

패킷에는 데이터만 들어 있지 않다
패킷은 단순히 원본 데이터를 일정한 크기로 자른 조각만을 의미하지 않는다. 패킷이 목적지까지 이동하려면 어디에서 출발하였고 어디로 가야 하는지, 어떤 방식으로 처리되어야 하는지에 관한 정보가 필요하다. 이러한 정보를 담는 부분을 일반적으로 헤더(Header)라고 부른다.
편지를 보낼 때 봉투 안에는 실제 전달하려는 내용이 들어가고, 봉투 겉면에는 보내는 사람과 받는 사람의 주소가 적힌다. 패킷도 이와 비슷하다. 실제 데이터는 패킷의 내용에 해당하고, 헤더에는 출발지와 목적지 IP 주소, 사용되는 통신 규칙, 데이터의 길이와 같은 정보가 포함될 수 있다.
네트워크 통신에서는 계층마다 데이터에 필요한 정보가 추가된다. 예를 들어 응용프로그램이 만든 데이터에 TCP가 자신의 헤더를 붙이면 TCP 세그먼트가 되고, 여기에 IP 헤더가 추가되면 IP 패킷 또는 IP 데이터그램이 된다. 이후 실제 네트워크 구간을 통과하기 위해 이더넷과 같은 기술의 헤더와 제어 정보가 더해질 수 있다.
이 과정은 상자를 여러 겹으로 포장하는 모습과 닮아 있다. 가장 안쪽에는 사용자가 보내려는 내용이 있고, 그 바깥에는 신뢰성 있는 전송을 위한 정보가 붙는다. 다시 그 바깥에는 인터넷에서 목적지를 찾기 위한 주소 정보가 붙으며, 실제 통신 회선을 지날 때 필요한 정보도 추가된다. 목적지에서는 이 포장을 바깥쪽부터 차례대로 풀어 원래 데이터를 확인한다.
패킷의 각 부분이 모두 같은 역할을 하는 것은 아니다. 라우터는 주로 IP 헤더에 있는 목적지 주소를 확인하여 다음 경로를 선택한다. 반면 데이터의 순서와 손실 여부를 확인하는 작업은 TCP와 같은 전송 계층의 프로토콜이 담당할 수 있다. 인터넷은 하나의 장치가 모든 일을 처리하는 대신 여러 계층과 장비가 역할을 나누어 통신을 완성하였다.
나뉜 패킷은 목적지에서 어떻게 다시 합쳐질까?
패킷은 네트워크 상황에 따라 서로 다른 시간에 목적지에 도착할 수 있다. 먼저 출발한 패킷이 늦게 도착하고, 나중에 출발한 패킷이 먼저 도착하는 일도 가능하다. 일부 패킷은 이동 중에 손실될 수 있으며, 같은 패킷이 중복되어 도착할 수도 있다. 따라서 목적지에서는 단순히 도착한 순서대로 데이터를 붙여서는 원래의 정보를 정확하게 복원하기 어렵다.
신뢰성이 필요한 통신에서는 TCP(Transmission Control Protocol)가 중요한 역할을 한다. TCP는 데이터를 여러 단위로 나누고 각 부분의 순서를 관리한다. 목적지에서는 도착한 데이터를 올바른 순서로 배열하고 빠진 부분이 있는지 확인한다. 누락된 데이터가 발견되면 송신 측에 다시 전송하도록 요청할 수 있다.
예를 들어 열 개의 데이터 조각 가운데 여섯 번째 조각만 도착하지 않았다면 전체 데이터를 처음부터 다시 받을 필요는 없다. 통신 상태와 처리 방식에 따라 누락된 부분을 다시 전송받고, 모든 데이터가 준비되면 원래의 흐름으로 재조립한다. 사용자는 이 과정을 직접 볼 수 없지만 파일을 내려받거나 웹페이지를 여는 동안 이러한 확인과 재전송이 빠르게 반복될 수 있다.
모든 인터넷 통신이 TCP를 사용하는 것은 아니다. 실시간 음성이나 영상처럼 약간의 데이터가 빠지더라도 지연을 줄이는 것이 더 중요한 환경에서는 UDP와 같은 다른 방식이 사용되기도 한다. 한두 개의 음성 데이터가 늦게 도착하였다고 해서 이전 시점의 소리를 다시 재생하면 통화 흐름이 어색해질 수 있기 때문이다. 통신의 목적에 따라 정확성을 우선할지, 속도와 실시간성을 우선할지가 달라진다.

패킷 교환은 장애가 생겨도 다른 길을 사용할 수 있었다
패킷 교환 구조의 또 다른 특징은 모든 데이터가 반드시 하나의 고정된 경로만을 이용하지 않아도 된다는 점이다. 앞선 글에서 살펴본 것처럼 라우터는 각 패킷의 목적지 주소를 확인하고 다음 경로를 선택한다. 기존 통신 회선에 문제가 생기더라도 다른 연결 경로가 존재한다면 이후의 패킷은 우회하여 전달될 수 있다.
회선 교환에서는 처음 설정한 전용 경로가 끊어질 경우 통신 연결 전체를 다시 구성해야 할 수 있다. 반면 패킷 교환에서는 통신망의 일부가 변경되더라도 라우팅 정보가 갱신되면 새로운 패킷이 다른 경로로 이동할 수 있다. 모든 패킷이 반드시 같은 길을 지나야 하는 것은 아니기 때문에 네트워크의 변화에 보다 유연하게 대응할 수 있었다.
물론 패킷 교환이라고 해서 장애가 항상 자동으로 해결되는 것은 아니다. 대체 경로가 없거나 네트워크 전체가 과부하 상태라면 패킷은 목적지에 도달하지 못할 수 있다. 새로운 경로 정보가 반영되는 동안 일시적으로 통신이 느려지거나 중단될 수도 있다. 패킷 손실과 지연, 순서 변경 역시 패킷 교환 방식에서 고려해야 하는 문제였다.
그럼에도 패킷 교환은 하나의 중앙 통로에 모든 통신을 의존하지 않도록 하였다. 데이터를 작은 단위로 나누고, 여러 네트워크가 이를 나누어 처리하며, 필요하면 다른 경로를 선택할 수 있게 하였다. 이러한 구조는 인터넷이 지역과 국가, 통신 사업자의 경계를 넘어 계속 확장되는 데 적합하였다.
인터넷은 데이터를 나누어 더 많은 연결을 만들었다
우리가 인터넷에서 사진을 보내거나 영상을 시청할 때 데이터는 화면에 보이는 모습 그대로 이동하지 않는다. 정보는 작은 패킷으로 나뉘고, 각 패킷에는 목적지와 통신에 필요한 정보가 붙는다. 패킷은 라우터를 거치며 이동하고 목적지에서는 다시 원래의 데이터 흐름으로 조립된다.
이 과정이 복잡해 보이지만 패킷 교환은 통신망을 훨씬 효율적으로 사용할 수 있게 하였다. 한 사용자가 통신 회선을 계속 점유하지 않았고, 여러 사용자의 데이터가 같은 네트워크를 나누어 이용하였다. 큰 파일 때문에 작은 데이터가 오랫동안 기다리는 문제를 줄였으며, 일부 데이터에 오류가 생겼을 때 필요한 부분만 다시 전송할 수 있게 하였다.
DNS는 사람이 입력한 이름을 IP 주소로 바꾸어 주었고, 라우터는 그 주소를 향해 패킷이 이동할 다음 경로를 선택하였다. 패킷 교환은 실제 데이터를 이동하기 좋은 크기로 나누어 네트워크가 효율적으로 처리할 수 있게 하였다. 인터넷을 구성하는 각 기술은 서로 따로 작동하는 것이 아니라 하나의 통신 과정을 단계별로 나누어 담당하였다.
그러나 패킷을 목적지까지 보냈다고 해서 항상 통신이 성공하는 것은 아니다. 패킷이 중간에서 사라지거나 순서가 바뀌었을 때 이를 확인하고 복구하는 규칙이 필요하다. 반대로 실시간 영상처럼 일부 손실을 감수하더라도 빠른 전달이 더 중요한 통신도 존재한다. 다음 글에서는 인터넷 통신의 성격을 결정하는 두 가지 대표적인 방식인 TCP와 UDP의 차이를 살펴볼 수 있다.
'전쟁과 기술' 카테고리의 다른 글
| 라우터는 왜 인터넷의 내비게이션이 되었을까 (0) | 2026.08.03 |
|---|---|
| DNS는 왜 인터넷의 전화번호부가 되었을까? (0) | 2026.08.02 |
| TCP/IP란? 인터넷은 언제부터 시작되었을까 (1) | 2026.07.31 |
| 아르파넷은 어떻게 인터넷의 시작이 되었을까? ‘LO’ 두 글자가 세상을 바꾼 순간 (0) | 2026.07.30 |
| 인터넷은 왜 군대에서 시작되었을까? 전쟁이 만든 컴퓨터 연결의 혁명 (0) | 2026.07.28 |