seegongsik
내 단어장
네트워크

패킷이 길을 찾는 법, 라우팅

편지가 중간 우체국들을 거쳐 전달된 거 기억나죠? 그런데 갈림길마다 우체국은 '다음엔 어디로 보낼까'를 어떻게 정할까요? 중앙에서 일일이 지시하는 사람은 없어요. 각 역이 스스로 길을 골라요. 이게 라우팅이에요.

01

갈림길에서 골라요

편지는 중간 역들을 거쳐 갔죠.
그런데 한 역에 도착하면
바로 길이 하나만 있는 게 아니에요.
옆 역이 여럿일 때가 많아요.
그럼 다음에 어느 역으로 넘길까요?
그걸 고르는 게 라우팅의 시작이에요.
인터넷에서 이 역을 라우터라고 불러요.
아래에서 다음 역을 직접 골라봐요.

SABCD
지금 여기: S목적지: D
깜빡이는 옆 역을 눌러 패킷을 넘겨봐요

옆 역 후보 중 하나를 눌러 패킷을 넘겨봐요. (역 = 라우터 · 누름 = 다음 역 선택)

한 번 넘기니 패킷이 옆 역으로 갔죠.
그 역에서 또 갈림길이 나와요.
이렇게 한 역 한 역 넘기다 보면
언젠가 목적지에 닿아요.
그런데 아무 옆 역이나 고르면
엉뚱한 데로 빙빙 돌 수 있어요.
그래서 역마다 기준이 필요해요.
무엇을 보고 고르는지, 다음에서 봐요.

02

길 안내표를 봐요

역마다 작은 표를 한 장 가지고 있어요.
'길 안내표'예요.
표에는 줄마다 이렇게 적혀 있어요.
'저 목적지로 가려면, 이 옆 역에게 넘겨라.'
그래서 패킷이 도착하면
역은 목적지 주소를 보고
표에서 그 줄을 찾아
적힌 대로 다음 역에 넘겨요.

R 역의 길 안내표
목적지다음 역
목적지 줄을 눌러 다음 역을 조회해요

목적지 줄을 눌러 '다음에 누구에게 넘길지'를 조회해봐요. (표 = 길 안내표)

표를 보면 역은 헤매지 않아요.
목적지가 어디든
그 줄만 찾으면 다음 한 걸음이 정해져요.
중요한 건 역이 전체 길을
다 알 필요가 없다는 거예요.
'바로 다음에 누구에게'만 알면 돼요.
나머지는 다음 역이 또 자기 표를 보고 이어가요.
작은 표들이 이어져 긴 길을 만들어요.

03

가장 빠른 길을 골라요

목적지로 가는 길이 하나만 있진 않아요.
돌아가는 길도, 질러가는 길도 있죠.
그럼 표에는 어떤 길을 적어둘까요?
당연히 가장 빠른 길이에요.
이건 앞에서 본 적 있어요.
점과 선 위에서 최단 거리를 찾던 일,
바로 그 가장 빠른 길 찾기를
여기 라우팅에서 그대로 써요.

67324STUVD
두 길을 눌러 거리 합을 견줘봐요

두 길을 눌러 거리를 견줘봐요. 짧은 길이 표에 적힐 길이에요. (최단경로 회수)

짧은 길을 골라 표에 적어두면,
다음부터 그 목적지로 가는 패킷은
자동으로 빠른 길로 흘러가요.
그래서 라우팅은 두 가지 일을 해요.
하나는 가장 빠른 길을 찾아 표를 만드는 일,
또 하나는 패킷이 오면 표대로 넘기는 일.
앞엣것이 algorithms에서 배운 최단경로고,
뒤엣것이 갈림길에서 고르기예요.

04

중앙 관제탑이 없어요

여기서 가장 놀라운 점이 나와요.
이 모든 걸 지휘하는 중앙 관제탑이 없어요.
어디에도 '전체 지도를 쥔 사람'이 없죠.
각 역이 자기 표만 보고
스스로 다음 한 걸음을 정해요.
이런 걸 분산이라고 해요.
중앙 한 곳이 다 정하는 게 아니라
수많은 역이 나눠서 판단하는 거죠.

SMND
M 역을 눌러 멈춰봐요

역 하나를 눌러 멈춰봐요. 중앙 통제면 길이 끊기지만, 분산이면 옆 역이 우회로를 찾아요.

한 역이 멈춰도 길이 끊기지 않았죠?
옆 역들이 자기 표를 고쳐
다른 길로 우회했어요.
만약 중앙 관제탑 하나가
모든 걸 정하고 있었다면,
그 탑이 멈추는 순간 전부 멈췄을 거예요.
분산이라 한 곳이 죽어도
전체는 계속 살아 움직여요.

05

정리해요

라우팅을 한 줄로 모아요.
패킷은 한 역 한 역 넘겨지며 길을 찾아요.
각 역은 길 안내표를 보고
다음에 누구에게 넘길지를 골라요.
표에는 가장 빠른 길이 적혀 있고요.
중앙 관제탑은 없어요.
각 역이 스스로 판단하는 분산 시스템이라
한 역이 멈춰도 편지는 우회로로 계속 가요.

라우팅의 핵심을 차례로 눌러 정리해요

핵심을 차례로 눌러 정리해요. (갈림길에서 고르기 → 길 안내표 → 가장 빠른 길 → 중앙 없는 분산)

인터넷이 좀처럼 끊기지 않는 비밀이 여기 있어요.
중앙 한 곳에 모든 걸 맡기지 않았거든요.
수많은 역이 각자 길 안내표를 보고
빠른 길로 패킷을 넘기죠.
어딘가 막히면 다른 역이 우회로를 찾고요.
작은 판단들이 모여
전 세계를 잇는 거대한 길이 돼요.
그게 패킷이 길을 찾는 법이에요.

한 줄 정리라우팅은 패킷을 목적지까지 한 역 한 역 넘기며 길을 찾는 일이에요. 각 역(라우터)은 '길 안내표'를 봐요. 목적지마다 다음에 누구에게 넘길지가 적혀 있죠. 길이 여럿이면 가장 빠른 길을 골라요. 가장 중요한 건 중앙 관제탑이 없다는 거예요. 각 역이 스스로 판단해요. 그래서 한 역이 멈춰도 다른 역들이 우회로를 찾아 편지는 계속 가요. 이 분산 덕분에 인터넷은 잘 끊기지 않아요.
네트워크
이 페이지가 도움 됐다면 후원하기