Google Cloud에 접속하는 안전한 피어링 방법: 피어링 이중화
Dave Schwartz
Senior Product Manager, Google Global Networking
* 본 아티클의 원문은 2022년 10월 18일 Google Cloud 블로그(영문)에 게재되었습니다.
피어링은 일부 클라우드 고객에게 특히 복잡하고 미묘한 주제로 여겨지는 경우가 많습니다. 이번 블로그 포스팅은 피어링의 내부 작동 원리를 설명하고 전 세계 각지 피어링 접속점의 이중화(redundancy)를 요건으로 하는 피어링 정책 업데이트가 이용자와 고객의 안정성을 개선하는 데 어떻게 도움이 되는지 공유하고자 합니다. 이중화는 안정성을 향상시키는 방법으로 익히 잘 알려진 입증된 개념입니다. Google은 최근 인프라 및 피어링에 대한 상당한 투자를 통해 인터넷 콘텐츠가 이용자에게 도달할 수 있도록 지원하고 피어링을 보다 안전하게 만드는 방법에 대해 소개한 바 있습니다.
인터넷 상의 Google Cloud
Google Cloud 고객은 매일 Workspace를 사용해 동료와 협업하고 Google Cloud CDN을 활용해 전 세계 이용자에게 콘텐츠를 제공하며, Global Cloud Load Balancer를 배포해 Anycast IP를 활용하기도 합니다. 각 사례에는 공통점이 있습니다. 다양한 Google 제품이 피어링 방식으로 Google의 글로벌 네트워크를 전 세계 ISP에 연결해 이용자에게 도달한다는 점입니다.
인터넷 트래픽을 전달하는 피어링
피어링은 네트워크 간 물리적 광섬유 기반의 상호접속을 의미하며 전 세계 다양한 시설에서 이뤄지고 있습니다. Google과 인터넷서비스제공사업자(ISP) 간 네트워크 연결, 또는 Google과 클라우드 고객 간 네트워크 연결 등이 피어링에 해당합니다. 피어링을 하는 목적은 네트워크 간 퍼블릭 인터넷 트래픽을 교환해 비용과 성능을 최적화하는 것입니다. Google은 크고 작은 네트워크와 피어링할 수 있도록 전 세계 100개 이상의 시설에 네트워크를 구축했습니다. 이것은 Google이 모든 이용자에게 훌륭한 경험을 제공하고 ISP가 비용을 절감할 수 있도록 하며, 클라우드 고객이 Google 네트워크에 접속할 수 있는 여러 방법 중 하나입니다. 기업이 구글 클라우드에 접속하는 다른 여러 방법 중 피어링과 자주 혼동되는 방식이 있는데, 바로 온프레미스 환경과 구글 클라우드 간 프라이빗 접속을 제공하는 Dedicated Interconnect입니다.
전화, 컴퓨터, 데이터센터 등으로 유입되는 데이터를 ‘물’이라고 가정해보면 광섬유 케이블은 파이프라고 볼 수 있고, 피어링은 일종의 도시 상하수도 시스템으로 볼 수 있습니다. 수도 시스템이 집 배관까지 연결돼 있어야 하는 것처럼, Google의 글로벌 네트워크가 모든 유형의 Google 트래픽을 제공하기 위해서는 이용자 근처에 있는 ISP와 서로 연결되어야 합니다. 싱크대 수도꼭지에서 물이 나오는 것은 가정의 Wi-Fi에서 Google 서비스를 사용할 수 있는 것과 비슷한 개념입니다.
피어링 인프라
구글을 포함한 수천 개의 네트워크가 매일 전 세계에서 서로 피어링하고 있습니다. 피어링하는 네트워크 사이에는 트래픽 수요와 비용, 성능을 처리할 수 있는 위치 및 용량에 대해 상호 동의가 필요합니다. 그런데 전 세계에 굉장히 많은 네트워크가 존재하기 때문에 모든 네트워크가 서로 피어링하는 것은 실용적이지 않습니다. 따라서 대부분의 네트워크는 이용자가 인터넷 전체에 도달할 수 있도록 지원하는 IP 전송(IP transit) 방식을 유지하고 있습니다. IP 전송은 네트워크에 제공되는 유료 서비스로, 인터넷 전체에 도달하기 위해 잘 구축된 다른 네트워크를 중계해 트래픽을 ‘전송’하는 방식입니다. 이러한 전송은 피어링 연결을 사용할 수 없는 경우 장애 극복 기능(failover path) 역할을 겸하며, 인터넷 상의 모든 엔드포인트에 대한 보편적 연결 가능성을 보장하는 데 중요한 역할을 합니다. 전송 방식의 한 가지 잠재적 단점은 트래픽이 최종 이용자에게 도달하기 위해 간접적이고 비용이 많이 발생하는 경로를 통과할 수 있어, 피어링에 비해 성능이 저하될 수 있다는 것입니다. Google은 성능을 극대화할 수 있도록 모든 트래픽을 최적의 피어링 경로로 전달하는 것을 선호합니다.
피어링이 중단되었을 때
모든 유형의 물리적 인프라는 구성 요소가 오작동하거나 유지 관리를 위해 서비스를 중단해야 하는 경우가 발생할 수 있습니다. 피어링을 지원하는 인프라 역시 마찬가지입니다. 가동 중단 시간은 원인 및 수리에 소요되는 시간에 따라 며칠 또는 몇 주가 걸릴 수 있습니다. 이 기간 동안 Google에서 주고 받는 인터넷 트래픽은 장애 극복 기능 경로로 다시 라우팅됩니다. 때때로 이러한 경로는 같은 도시 안에 있는 다른 피어링 지점이 되기도 하고, 수백 또는 수천 마일 떨어진 다른 도시나 국가의 피어링으로 변경될 수도 있으며, 다른 피어링 연결이 아예 불가능한 경우 IP 전송 연결 방식으로 변경되는 경우도 있습니다. 대부분은 네트워크가 Google과 피어링되는 방법과 위치에 따라 결정됩니다. 트래픽이 의도한 피어링 연결에서 물리적으로 더 멀리 라우팅되고 IP 전송 연결이 트래픽 경로에 있는 경우 데이터 통신 지연 및 패킷 손실(packet loss) 등 지터(jitter) 현상이 증가할 가능성이 높아지며, 이는 곧 이용자 경험의 문제로 이어질 수 있습니다.
깊고 다양한 피어링 범위
수년에 걸쳐 우리는 모든 Google 서비스에서 최적의 이용자 경험을 보장하기 위해 물리적 이중화와 지리적 다원화 방식을 통해 ISP 및 클라우드 고객과의 피어링을 구축해 왔습니다. 이는 곧 전 세계 네트워크 및 고객과의 깊고 다양한 피어링 상호접속 범위를 의미합니다. Premium Network Tier, Cloud VPN, Workspace 등의 구글 클라우드 서비스는 피어링을 사용해 최종 이용자에게 도달하기 때문에 이러한 계획은 앞서 언급한 이용자 경험 문제를 방지하는 데 도움이 됩니다.
보다 안정적이고 예측 가능한 피어링 상호접속
모든 Google 이용자에게 안정적인 환경을 제공한다는 목표를 달성하기 위해 최근 피어링 정책을 업데이트하고 Google의 모든 프라이빗 피어링 연결 지점에 관해 동일한 대도시 지역 내 물리적 이중화를 갖추도록 했습니다. 이 업데이트로 Google과 ISP는 대부분의 상황에서 피어링 인프라 중단 및 유지보수 중에도 로컬에서 트래픽 교환을 지속할 수 있습니다. 이는 고객과 이용자에게 보다 예측 가능한 트래픽 흐름, 일관되고 안정적인 지연 시간, Google 서비스에 대해 전반적으로 보다 예측 가능한 경험을 제공하는 동시에 ISP의 비용을 절감해주는 보다 효과적인 피어링 가용성을 제공합니다. 애플리케이션 성능에 영향을 줄 수 있는 여러 가지 요소가 인터넷 상에 존재하지만, 이번 정책 업데이트는 피어링 인프라의 중단 및 유지 보수가 이용자 경험에 미치는 영향을 최소화하도록 설계되었습니다. 변경 사항에 대한 자세한 내용은 피어링 페이지에서 확인할 수 있습니다.
피어링 파트너 및 고객과의 협력
우리는 로컬에서 이중화된 피어링 상호접속을 구축할 수 있도록 기존 및 신규 Google Cloud 고객, ISP 파트너와 긴밀하게 협력하고 있습니다. 또한 많은 네트워크가 이 구성을 구축하는 데 어려움이 있다는 것을 알고 있으므로 이러한 구성을 하는 방법을 파악하고 있습니다. Google Cloud 고객 및 Google과 함께 이중화 토폴로지(topology)를 검토하는 데 관심있는 ISP는 Google에 문의 가능하며, Google의 피어링 모범 사례도 함께 참고해 주시기 바랍니다. 피어링 웹사이트에서 피어링에 대해 더 자세히 알아보고 Google에 피어링을 요청할 수 있습니다.