멀티클라우드를 위한 네트워킹에서의 AI: 하나의 이름으로 불리는 두 가지 문제
요약
멀티클라우드 네트워킹에서 'AI'라는 용어가 갖는 두 가지 상이한 의미를 분석합니다. 네트워크 인프라를 최적화하는 AI와 AI 에이전트 시스템을 위해 구축된 네트워킹의 차이점을 명확히 구분합니다.
핵심 포인트
- 네트워크 관리용 AI: 의도 기반 라우팅, 이상 탐지, 트래픽 분류 등 인프라 최적화 목적
- AI 에이전트용 네트워킹: 클라우드 간 AI 워크로드를 연결하기 위한 아키텍처 설계
- 멀티클라우드 환경의 파편화된 보안 및 네트워크 모델 이해 필요
“멀티클라우드를 위한 네트워킹에서의 AI(AI in networking for multicloud)”를 검색하면 두 가지 종류의 결과가 나옵니다. 의도 기반 라우팅(intent-based routing)에 관한 벤더 페이지와 클라우드 간 AI 워크로드를 연결하는 것에 관한 블로그 게시물입니다. 이들은 서로 다른 문제를 다루고 있으며, 이 둘을 혼동하는 것은 실제 시간을 낭비하게 만듭니다.
저는 지난 몇 달 동안 AWS, GCP 및 몇몇 소규모 제공업체 간에 서로 통신해야 하는 에이전트 시스템(agent systems)을 구축하며 시간을 보냈습니다. 그 과정에서 저는 "멀티클라우드를 위한 네트워킹에서의 AI"라는 문구가 이중적인 역할을 하고 있다는 것을 깨달았습니다. 이 문구는 네트워크를 관리하는 데 사용되는 AI를 설명하기도 하고, AI 에이전트를 위해 구축된 네트워킹을 설명하기도 합니다. 이들은 서로 다른 아키텍처(architecture), 다른 도구, 그리고 다른 기대치를 필요로 합니다.
이 포스트는 두 번째 의미에 대한 설명이며, 대부분의 사람들이 혼동하는 부분이 바로 이 지점이기 때문입니다. 하지만 먼저, 이 둘을 분리해 봅시다.
"멀티클라우드를 위한 네트워킹에서의 AI"가 의미하는 것 (측면 1: AI가 네트워크를 관리함)
"네트워킹에서의 AI"에 대한 첫 번째 해석은 네트워크 운영에 머신러닝(machine learning)을 적용하는 것에 관한 것입니다. 이는 성숙하고 정당한 분야입니다:
- 의도 기반 라우팅 (Intent-based routing) — 컨트롤러(controllers)가 고수준 정책("데이터 집약적 전송을 위해 가장 저렴한 경로를 선호함")을 구체적인 라우팅 결정으로 변환합니다.
- 이상 탐지 (Anomaly detection) — 모델이 임계값 기반 모니터링(threshold-based monitoring)이 놓치는 BGP 하이재킹(BGP hijacks), 지연 시간 급증(latency spikes), 그리고 조용한 패킷 손실(silent packet loss)을 감시합니다.
- 트래픽 분류 (Traffic classification) — 분류기(classifiers)가 추론 요청(inference requests) 대 학습 전송(training transfers) 대 제어 평면 하트비트(control-plane heartbeats)를 인식하고 그에 따라 큐(queue)를 구성합니다.
- 용량 계획 (Capacity planning) — 예측 모델(predictive models)이 병목 현상이 형성되기 전에 대역폭(bandwidth) 요구 사항을 예측합니다.
이 모든 것은 실제이며, 멀티클라우드는 여러 백본(backbones), 상호 연결 가격(interconnect pricing), 그리고 일관되지 않은 텔레메트리(telemetry)를 다루어야 하기 때문에 이를 더욱 가치 있게 만듭니다. 만약 당신의 문제가 "기존 네트워크 인프라를 더 똑똑하게 만드는 것"이라면, 이것이 당신의 영역입니다.
핵심 문구는 _기존 인프라(existing infrastructure)_입니다. 측면 1은 네트워크를 AI의 대상으로 취급합니다. 엔드포인트(endpoints)는 이미 IP로 도달 가능한 VM, 컨테이너, 그리고 서비스들입니다.
멀티클라우드가 네트워킹에 실제로 미치는 영향
두 번째 측면을 이해하기 전에 기준점을 알아야 합니다. 멀티클라우드 네트워킹은 설계 단계부터 파편화되어 있습니다.
각 제공업체는 자신만의 모델을 가지고 있습니다. 보안 그룹(security groups)을 사용하는 AWS VPC, NSG를 사용하는 Azure VNet, 글로벌 방화벽 규칙(global firewall rules)을 사용하는 GCP VPC가 그것입니다. 각 모델은 고유한 NAT 게이트웨이 동작, VPN 엔드포인트(endpoint) 유형, 피어링(peering) 제한 사항을 가집니다. 세 개의 클라우드에서 동일한 서비스를 실행한다는 것은 서로 호환되지 않는 세 개의 네트워킹 스택을 관리해야 함을 의미합니다.
표준적인 우회 방법들이 작동은 하지만, 다음과 같은 부담을 수반합니다:
- 클라우드 인터커넥트 (Cloud interconnects) (Direct Connect, ExpressRoute, Dedicated Interconnect)는 임의의 엔드포인트가 아닌 네트워크를 연결하며, 그에 따른 비용이 책정됩니다.
- **사이트 간 VPN (Site-to-site VPNs)**은 도달 가능성(reachability) 문제를 해결하지만, 트래픽이 게이트웨이를 통과하도록 강제하며, 이 과정에서 지연 시간(latency)과 정책 파편화(policy fragmentation)가 발생합니다.
- **IP 중첩 (IP overlap)**은 지속적인 위험 요소입니다. 동일한 사설 대역(private range)을 사용하는 두 클라우드가 통신하려면 NAT 또는 재주소 지정(re-addressing)이 필요합니다.
- 휘발성 엔드포인트 (Ephemeral endpoints) — 컨테이너(containers), 서버리스 함수(serverless functions), 스팟 인스턴스(spot instances) — 는 재시작할 때마다 IP가 변경되므로, 특정 주소에 고정된 모든 설정을 무너뜨립니다.
이것이 첫 번째 측면의 AI 도구들이 관리 가능하게 만들려고 노력하는 세상입니다. 서비스에는 효과적입니다. 하지만 엔드포인트가 AI 에이전트(AI agents)가 되면 문제가 발생하기 시작합니다.
두 번째 측면: AI 에이전트를 위한 네트워킹
- 안정적인 주소 (A stable address). 에이전트(Agents)는 재시작, 마이그레이션(migration), 확장(scale)을 반복합니다. IP 기반의 주소는 취약점이 됩니다. 에이전트에게는 재시작이나 클라우드 이동 시에도 유지되는 주소가 필요합니다. 그렇지 않으면 모든 재스케줄링(rescheduling) 시 피어(peers)와의 연결이 끊어지게 됩니다.
- 탐색 (Discovery). VM은 다른 VM을 탐색할 필요가 없습니다. 운영자가 피어링(peering)을 설정하기 때문입니다. 반면 에이전트는 런타임(runtime)에 "어떤 에이전트가 이 웹 검색을 수행할 수 있는가?"와 같이 extit{기능(capability)}을 기준으로 피어를 찾아낼 수 있어야 합니다.
- 네트워크 멤버십에 의존하지 않는 신뢰 (Trust that isn't network membership). VPN은 "접속됨"을 곧 "신뢰함"과 동일시합니다. 에이전트에게는 피어별 신뢰(per-peer trust)가 필요합니다. 즉, 관계당 명시적인 핸드셰이크(handshake)가 필요하며, 네트워크에 있다고 해서 기본적으로 권한을 부여받아서는 안 됩니다.
- NAT 뒤에서의 도달 가능성 (Reachability behind NAT). 대부분의 에이전트는 퍼블릭 IP(public IPs)에서 실행되지 않습니다. 이들은 홈 NAT, 클라우드 NAT 게이트웨이(cloud NAT gateways), 또는 기업 방화벽 뒤에 위치하지만, 여전히 도달 가능해야 합니다.
전통적인 멀티클라우드 네트워킹은 이 중 어느 것도 직접적으로 해결하지 못합니다. 이는 IP를 통해 네트워크를 연결할 뿐, extit{프로세스(processes)}에 정체성(identities), 탐색(discovery), 또는 피어별 신뢰(per-peer trust)를 부여하지 않습니다.
에이전트 오버레이(agent overlay)가 적합한 위치
이 지점에서 Pilot Protocol이 등장하며, 이는 매우 적절한 해결책이 됩니다. Pilot Protocol은 VM이 아닌 에이전트를 위해 특별히 구축된 오픈 소스 오버레이 네트워크(open-source overlay network)입니다. 엔드포인트가 클라우드 경계를 넘어 서로를 찾아내고 신뢰해야 하는 자율 프로세스(autonomous processes)일 때, 이것이 바로 정답의 형태입니다.
그 작동 방식은 VPN과의 차이점을 보여주므로 알아둘 가치가 있습니다:
- 영구 가상 주소 (Permanent virtual addresses). 모든 에이전트(agent)는 재시작, IP 변경, 클라우드 간 이동 시에도 유지되는 주소를 할당받습니다. 이 주소는 IP보다 더 오래 지속됩니다.
- 암호화된 UDP 터널 (Encrypted UDP tunnels) (X25519 키 교환, AES-GCM)을 사용하며, 신뢰성(reliability)은 사용자 공간(userspace)에서 처리됩니다.
- NAT 트래버설 (NAT traversal): STUN 및 홀 펀칭(hole-punching)을 통해 수행되며, 릴레이(relay) 폴백(fallback) 기능을 갖추고 있습니다. NAT 뒤에 있는 에이전트도 포트 포워딩 없이 도달 가능합니다.
- 피어별 명시적 신뢰 (Explicit per-peer trust). 핸드셰이크(handshake)는 상호적입니다. 데이터가 흐르기 전에 피어를 승인해야 합니다. 멤버십(membership)과 신뢰(trust)는 분리되어 있습니다.
- 만남 등록소 (A rendezvous registry): 탐색(discovery)을 위한 용도로, 에이전트와 기능(capabilities)을 IP를 기억하는 대신 이름이나 태그로 찾을 수 있습니다.
실질적인 효과: CGNAT 뒤에 있는 노트북의 에이전트와 GCP VM의 에이전트는 어느 클라우드의 네트워킹 설정도 건드리지 않고 직접적이고 암호화된 연결을 설정할 수 있습니다. VPC 피어링(VPC peering), VPN 게이트웨이(VPN gateway), 퍼블릭 IP(public IP)가 필요 없습니다.
시작하는 방법은 명령어 하나면 충분합니다:
curl -fsSL https://pilotprotocol.network/install.sh | sh
그러면 당신의 데몬(daemon)은 네트워크의 노드(node)가 됩니다. 탐색은 단 한 번의 호출로 이루어집니다:
pilotctl send-message list-agents --data '/data {"search":"weather"}' --wait
또한 네트워크에는 에이전트 네이티브 기능(agent-native capabilities)을 위한 앱 스토어가 있습니다. 이는 타입화된 JSON-in/JSON-out 서비스로서 로컬에서 실행되는 설치 가능한 앱들입니다. 루프는 탐색, 설치, 호출 순으로 진행됩니다:
pilotctl appstore catalogue
pilotctl appstore install io.pilot.cosift
pilotctl appstore call io.pilot.cosift cosift.search '{"q":"multicloud networking","k":"5"}'
이 모든 것은 오픈 소스(AGPL-3.0)이며, 외부 의존성 없이 Go 언어로 작성되었고, 243k개 이상의 에이전트와 사용자로 구성된 오버레이 네트워크(overlay network) 위에 구축되어 있습니다. Pilot Protocol의 문서는 신뢰 모델과 앱 스토어를 포함한 세부 사항을 설명합니다.
대안들에 대해 공정하게 말하자면, 만약 당신의 목표가 _네트워크(networks)_를 연결하는 것 — 즉, 서브넷(subnet) 간의 연결이나 사이트(site) 간의 연결 — 이라면, VPN 또는 SD-WAN 제품이 적절한 도구이며 그들은 그 역할을 잘 수행합니다. 에이전트(agent)를 위한 오버레이(overlay)는 다른 문제를 해결하는 별개의 계층입니다. 만약 당신의 엔드포인트(endpoint)가 식별 정보(identity)를 가진 에이전트라면, VPN 형태는 대개 잘못된 추상화(abstraction)이며, 이는 제가 이전에 다루었던 주제이기도 합니다.
어떤 문제에 직면했는지 결정하는 방법
누군가 "멀티클라우드를 위한 네트워킹에서의 AI"라고 말할 때, 다음의 빠른 체크리스트를 실행해 보세요:
- 네트워크를 더 똑똑하게 만들고 있습니까? 당신은 첫 번째 측면에 있습니다: 의도 기반 라우팅 (intent-based routing), 이상 탐지 (anomaly detection), AIOps. 당신의 도구는 네트워크 컨트롤러 (network controllers)와 ML 관측성 (ML observability)입니다.
- 클라우드 전반에 걸쳐 AI 에이전트를 연결하고 있습니까? 당신은 두 번째 측면에 있습니다: 안정적인 주소 (stable addresses), 디스커버리 (discovery), NAT 트래버설 (NAT traversal), 피어별 신뢰 (per-peer trust). 당신의 도구는 VPN이 아니라 오버레이 (overlay) 또는 P2P 계층입니다.
- 둘 다입니까? 흔한 일이며 괜찮습니다. 다만, 하나의 제품이 두 가지를 모두 해낼 것이라 기대하며 구매하지는 마십시오. 첫 번째 측면의 컨트롤러는 에이전트에게 식별 정보(identity)를 제공하지 않을 것이며, 두 번째 측면의 오버레이는 당신의 백본 (backbone)을 최적화하지 않을 것입니다.
제가 가장 자주 보는 실수는 두 번째 측면에 있는 팀이 첫 번째 측면의 도구를 구매하거나, 에이전트 식별 정보를 처리하기 위해 VPN을 무리하게 확장하는 것입니다. 두 경우 모두 결과는 같습니다: 에이전트가 무엇인지 알지 못하는 네트워킹 계층과, 이를 보완하기 위한 수많은 글루 코드 (glue code)뿐입니다.
요약
"멀티클라우드를 위한 네트워킹에서의 AI"는 하나의 이름을 가진 두 가지 문제입니다. 하나는 네트워크를 운영하기 위해 AI를 사용하는 것에 관한 것이고, 다른 하나는 AI 에이전트가 클라우드 전반에서 작동할 수 있도록 네트워크를 구축하는 것에 관한 것입니다. 둘 다 정당한 영역이며 서로 다른 도구가 필요하지만, 두 번째 영역은 기존의 멀티클라우드 네트워킹에 의해 제대로 지원받지 못하고 있습니다.
만약 당신이 두 번째 진영 — 즉, 서로를 찾아야 하고, 서로를 신뢰해야 하며, 클라우드 경계를 넘어 통신해야 하는 에이전트들 — 에 속해 있다면, 그것이 바로 Pilot Protocol과 같은 에이전트 네이티브 오버레이 (agent-native overlay)가 만들어진 목적입니다. 단 한 번의 설치 명령, IP보다 오래 지속되는 주소, 그리고 NAT를 우회하는 대신 NAT를 통해 당신에게 도달하는 피어(peer)들을 경험해 보십시오.
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기