Network··4 min read·

네트워크 토폴로지 — 컴퓨터를 어떤 모양으로 잇는가

별 모양, 줄 모양, 고리 모양, 그물 모양. 네트워크를 잇는 대표적인 방식들을 집 공유기 같은 익숙한 예로 풀고, 도커·쿠버네티스의 가상 네트워크까지 연결한다.

네트워크 토폴로지

난이도 — 입문

앞 글에서 토폴로지를 지하철 노선도에 비유했다. 실제 거리나 모양은 버리고 "무엇이 무엇과 이어졌나"만 보는 관점이다.

그 관점을 컴퓨터 네트워크에 적용한 것이 네트워크 토폴로지다. 한 문장으로 하면 이렇다.

컴퓨터와 장비들을 어떤 모양으로 연결했는가.

먼저 용어 하나만 정리하고 가자. 앞으로 노드(node)라는 말이 계속 나오는데, 어려운 뜻이 아니다. 네트워크에 연결된 것 하나를 가리킨다. 내 노트북, 회사 서버, 공유기 전부 노드다.

연결 모양은 왜 중요할까. 이 선택 하나가 속도·안정성·비용을 전부 바꾸기 때문이다. 대표적인 네 가지를 먼저 눈으로 보자.

SABCD

별 모양 (성형)

좋은 점 — 기기 하나가 고장 나도 나머지는 멀쩡하다.

나쁜 점 — 가운데가 죽으면 전부 끊긴다. 집 공유기와 같다.

위 그림에서 탭을 옮겨 가며, 아래 설명과 나란히 보면 좋다.


별 모양 (성형, Star)

모든 노드가 가운데 장비 하나에 연결된다.

가장 익숙한 형태다. 집을 떠올려 보자. 노트북, 휴대폰, TV가 전부 공유기 하나에 연결돼 있다. 기기끼리 직접 이어져 있지는 않다. 이게 별 모양이다.

  • 좋은 점 — 노트북 하나가 고장 나도 나머지는 멀쩡하다. 기기를 새로 붙이기도 쉽다.
  • 나쁜 점 — 가운데 장비가 죽으면 전부 끊긴다. 공유기 전원을 뽑으면 집 안 인터넷이 전부 멈추는 것과 같다.

이렇게 "여기 하나가 무너지면 전체가 무너지는 지점"을 단일 장애점(SPOF, Single Point of Failure)이라고 부른다. 네트워크 이야기에서 자주 나오는 말이니 기억해 두면 좋다.


줄 모양 (버스형, Bus)

긴 케이블 하나에 모든 노드가 매달린다.

복도 하나에 방들이 쭉 늘어선 모습을 떠올리면 된다. 모두가 같은 복도를 쓴다.

  • 좋은 점 — 케이블이 적게 들어 싸고 단순하다.
  • 나쁜 점 — 모두가 같은 길을 쓰니 한 번에 하나만 말할 수 있다. 여럿이 동시에 보내면 부딪힌다. 게다가 케이블이 한 군데만 끊겨도 전체가 멈춘다.

초기 인터넷(이더넷)이 이 방식이었지만 지금은 거의 쓰지 않는다. 다만 "하나의 통로를 모두가 나눠 쓴다"는 발상 자체는 지금도 소프트웨어 곳곳에 남아 있다.


고리 모양 (링형, Ring)

각 노드가 양옆하고만 이어져 동그란 고리를 이룬다.

원탁에 둘러앉아 옆 사람에게 쪽지를 넘기는 장면을 떠올리면 된다. 쪽지는 한 방향으로 돌다가 주인에게 도착한다.

  • 좋은 점 — 순서대로 도니 부딪힐 일이 적다.
  • 나쁜 점 — 한 군데만 끊겨도 고리가 깨진다. 그래서 실제로는 고리를 두 겹으로 만들어 보완한다.

그물 모양 (메시형, Mesh)

노드들이 서로 직접 이어진다.

친구 넷이 서로 모두의 연락처를 알고 있어서, 누구든 바로 연락할 수 있는 상태다.

  • 좋은 점 — 길이 여러 개다. 하나가 끊겨도 돌아가면 된다. 그래서 아주 튼튼하다.
  • 나쁜 점 — 연결이 너무 많이 필요하다. 노드가 늘어날수록 선이 폭발적으로 늘어난다. 4대면 6개면 되지만, 10대가 되면 45개가 필요하다.

인터넷의 중심 뼈대나 대규모 분산 시스템이 이 모양에 가깝다. 비싸지만 잘 끊기지 않아야 하는 곳에 쓴다.


네 가지 비교

모양튼튼함비용약점
별(Star)보통낮음가운데 장비가 죽으면 전멸
줄(Bus)낮음가장 낮음케이블 끊기면 전멸, 충돌 잦음
고리(Ring)보통보통한 군데 끊기면 고리 깨짐
그물(Mesh)높음높음선이 너무 많이 필요

현실의 큰 네트워크는 하나만 쓰지 않는다. 별 모양을 여러 층으로 쌓거나(트리 모양), 여러 방식을 섞어서 쓴다.


눈에 보이는 연결과 실제 흐름은 다를 수 있다

조금 헷갈리는 이야기를 하나 덧붙인다. 토폴로지에는 두 가지 층이 있다.

  • 물리 토폴로지(physical topology) — 케이블이 실제로 어떻게 꽂혀 있나
  • 논리 토폴로지(logical topology) — 데이터가 실제로 어떤 길로 흐르나

이 둘은 다를 수 있다. 겉보기에는 모두가 공유기 하나에 꽂혀 있는 별 모양인데(물리), 데이터가 도는 규칙은 고리 모양일 수 있다(논리).

지하철로 비유하면, 물리는 실제로 깔린 선로이고 논리는 열차 운행 방식이다. 선로가 같아도 급행과 완행은 다른 길을 간다.


소프트웨어에도 토폴로지가 있다

케이블만의 이야기가 아니다. 요즘은 소프트웨어로 만든 가상 네트워크가 더 흔한데, 여기에도 똑같은 모양이 나타난다.

  • 도커(Docker) — 컨테이너들이 가상의 공유기 하나에 붙는다. 사실상 별 모양이다. 집 공유기와 구조가 같고, 다만 소프트웨어로 만들었을 뿐이다.
  • 쿠버네티스(Kubernetes) — 모든 컨테이너가 서로 직접 통신할 수 있어야 한다는 원칙을 둔다. 즉 그물 모양을 지향한다. 실제로는 소프트웨어가 그렇게 보이도록 만들어 준다.
  • 서비스 메시(Service Mesh) — 이름부터 메시, 곧 그물이다.
이 블로그의 도커 네트워크나 쿠버네티스 서비스 글을 "이건 무슨 모양이지?"라는 눈으로 다시 읽으면 훨씬 잘 들어온다.

정리

  • 네트워크 토폴로지는 장비들을 어떤 모양으로 잇느냐의 선택이다.
  • 별 모양은 관리하기 쉽지만 가운데가 약하고, 그물 모양은 튼튼하지만 비싸다. 정답은 없고 트레이드오프다.
  • 케이블이 꽂힌 모양(물리)과 데이터가 흐르는 길(논리)은 다를 수 있다.
  • 도커·쿠버네티스 같은 소프트웨어 네트워크도 결국 이 익숙한 모양들을 다시 만든 것이다.

Related Posts

같이 읽으면 좋은 글