Back to Blog

인터넷이 또다시 주춤했던 날…

오늘 오전 6시 27분(동부 표준시)에 인터넷의 20%가 마비되었습니다.

클라우드플레어(Cloudflare) 서버에서 위협 트래픽을 관리하기 위해 설계된 구성 파일 하나가 예상 용량을 초과해 부풀어 올랐습니다.

이 단 하나의 파일이 연쇄 반응을 일으켜, 클라우드플레어의 최고기술책임자(CTO) 데인 크네흐트(Dane Knecht)가 다음과 같이 직설적으로 표현한 사태로 이어졌습니다.

“우리는 고객과 더 넓은 인터넷을 실망시켰습니다.”

그게 전부입니다. 정교한 공격도, 하드웨어 고장도, 자연재해도 아니었습니다.

그 후 3시간 동안 전 세계 웹사이트의 약 5분의 1이 접속 불가 상태가 되었다. X는 로드되지 않았고, ChatGPT는 응답을 멈췄으며, Spotify는 소리가 나지 않았다. Discord, 리그 오브 레전드, Zerodha 및 수천 개의 다른 서비스들은 알 수 없는 500 오류 메시지만 표시했다.

오늘 아침 사용자들이 온라인 서비스에 접속하려다 마주친 오류 화면의 스크린샷

인터넷이 끊어지면 수백만 명이 반사적으로 확인하는 사이트인 ‘다운디텍터(Downdetector)’조차 자체 장애 보고서를 제공하지 못했습니다. 서비스가 복구되자 이 아이러니한 상황은 소셜 미디어에서 큰 화제가 되었습니다.

하지만 그 3시간 동안 아고라(Agora)의 기술을 기반으로 한 실시간 영상 통화, 라이브 스트리밍, 양방향 방송은 중단 없이 계속되었습니다. 인터넷 최대 규모의 인프라 제공업체 중 하나가 연쇄적인 장애를 겪으며 전 세계 웹사이트의 약 20%에 영향을 미쳤음에도, 아고라(Agora)의 소프트웨어 정의 실시간 네트워크(Software Defined Real-Time Network)를 기반으로 구축된 애플리케이션들은 통신사급 품질을 유지했습니다.

지연이 '잃어버린 시간'이 될 때

여기에는 매우 중요한 범주적 구분이 존재하는데, 이는 종종 '가동 시간'과 '서비스 가용성'에 대한 논의 속에서 간과되곤 합니다.

웹페이지 로딩에 몇 초가 더 걸리거나 이메일이 지연되더라도, 콘텐츠는 결국 온전한 상태로 도착합니다. 하지만 실시간 통신은 근본적으로 다른 원칙에 따라 작동합니다.

라이브 영상 통화가 끊기면, 그 프레임들은 영원히 사라집니다. 오디오 스트림에서 패킷이 손실되면, 그 말들은 다시 재구성할 수 없습니다. 통화가 다시 연결되기를 기다리거나, 왜곡된 오디오를 알아듣기 위해 애쓰는 그 몇 분은 모든 참여자의 주의력과 시간을 돌이킬 수 없이 소모하는 것입니다. 이는 서비스 품질 저하가 아닙니다. 기술 시스템이 결국 복구되든 말든, 이는 서비스 장애입니다.

이것이 바로 통신 사업자들이 “캐리어급 품질”이라는 개념을 개발한 이유입니다. 이는 단순한 마케팅 용어가 아닙니다. 이는 비상 통신, 금융 거래장, 의료 상담과 같은 특정 서비스들이, 재전송과 버퍼링으로 네트워크 결함을 덮어씌울 수 있는 서비스들과는 질적으로 다른 신뢰성 접근 방식을 필요로 한다는 사실을 인정하는 것입니다.

아고라(Agora)는 실시간 참여 서비스가 캐리어급 품질을 단순한 목표가 아닌, 필수적인 기초 요건으로 삼아 설계되어야 한다고 확신합니다. 모든 아키텍처 결정은 이 전제에서 비롯됩니다.

단일 공급업체 문제

클라우드플레어(Cloudflare) 사고와 그 이전의 사례들은 현대 인터넷 인프라가 진화해 온 방식에 내재된 구조적 취약점을 드러냅니다.

클라우드플레어는 전 세계 웹사이트의 약 20%에 서비스를 제공합니다. 아마존 웹 서비스(AWS)는 인터넷 애플리케이션과 데이터의 막대한 부분을 호스팅합니다. 마이크로소프트 애저(Azure)는 다양한 산업 분야의 핵심 기업 시스템을 뒷받침합니다. 이들은 유능한 팀이 설계한 훌륭한 서비스이며, 중요한 기능을 수행하고 있습니다.

또한 넷블록스(NetBlocks)의 알프 토커(Alp Toker)가 오늘의 서비스 중단 사태 이후 BBC와의 인터뷰에서 언급했듯이, 이들은 “인터넷의 가장 큰 단일 장애 지점 중 하나”이기도 합니다.

이는 이들 기업의 엔지니어링 능력을 비판하는 것이 아닙니다. 이는 인터넷이 소수의 하이퍼스케일 제공업체를 중심으로 통합되면서 자연스럽게 형성된 아키텍처 패턴을 인정하는 것입니다. 경제적인 측면에서는 타당합니다. 편의성은 부인할 수 없습니다. 이러한 제공업체들이 제공하는 보안 기능은 종종 개별 조직이 독자적으로 개발할 수 있는 수준을 뛰어넘습니다.

하지만 이러한 패턴은 특정한 종류의 위험을 초래합니다. 바로 인터넷의 방대한 영역에 걸쳐 동시에 연쇄적으로 발생하는 상호 연관된 장애입니다. 이러한 제공업체 중 한 곳에서 구성 파일의 크기가 예상치를 초과하면, 그 결과는 단 한 명의 고객이나 소수의 고객에게만 영향을 미치는 것이 아닙니다. 수천 개의 기업과 수백만 명의 사용자에게 동시에 영향을 미칩니다.

지연 허용 오차가 수백 밀리초 단위로 측정되고, 모든 중단이 인간의 주의력과 시간을 직접적으로 낭비하게 만드는 서비스의 경우, 이러한 집중 위험은 용납될 수 없습니다.

복원력을 고려한 설계: SD-RTN 아키텍처

클라우드플레어에 의존하는 서비스들이 중단된 반면 아고라 서비스가 계속 운영될 수 있었던 이유는 근본적인 아키텍처 철학에 있습니다: 단일 공급업체의 서비스 안정성에 절대 의존하지 않는다. 이는 파트너에 대한 불신이 아닙니다. 실시간 서비스에 필요한 캐리어급 품질을 달성하려면, 아무리 뛰어난 엔지니어링 역량을 갖춘 개별 공급업체라도 단독으로는 제공할 수 없는 아키텍처적 결정이 필요하다는 점을 인식한 결과입니다.

아고라 소프트웨어 정의 실시간 네트워크(SD-RTN)는 기반 인터넷 인프라의 일부가 저하되거나 장애가 발생하더라도 통신사급 품질을 제공하기 위해 기본 원리부터 구축되었습니다. 이 접근 방식은 오늘 이론이 아닌 실제 상황에서 그 가치를 입증했습니다.

이 아키텍처는 다음 세 가지 핵심 설계 원칙을 통해 이를 달성합니다:

1. 단일 장애 지점(SPOF)이 없는 지리적 중복성

SD-RTN은 상호 연결된 메시 형태로 작동하는 전 세계적으로 분산된 접속 지점(POP)을 유지합니다. 각 POP는 주기적으로가 아니라 실시간으로 다른 모든 POP와의 성능을 지속적으로 측정합니다. 이를 통해 지연 시간이나 안정성보다는 비용 최적화에 중점을 둔 표준 인터넷 라우팅 프로토콜에 의존하는 대신, 실제 네트워크 상황이 발생할 때마다 이에 대응하는 지능형 라우팅이 구현됩니다.

오늘 아침 Cloudflare의 구성 오류가 글로벌 네트워크 전반으로 확산되었을 때, SD-RTN은 성능이 저하된 경로를 우회하여 라우팅했습니다. 이는 아키텍처가 인터넷의 일부 구간에서는 항상 문제가 발생할 수 있다고 가정하기 때문입니다.

2. 다중 경로를 통한 중복 전송

SD-RTN은 여러 개의 별도 최적화 경로를 통해 패킷을 동시에 전송합니다. 가장 먼저 도착한 패킷이 사용되며, 늦게 도착하거나 실패한 패킷은 무시됩니다. 이미 대체 경로를 통해 그 역할이 수행되었기 때문입니다.

이는 신뢰성 특성을 근본적으로 변화시킵니다. 시스템은 특정 경로나 공급업체의 정상적인 작동에 의존하기보다, 언제든 일부 경로가 실패할 수 있음을 전제로 하여 전송 전략 자체에 복원력을 구축합니다.

3. 종단 간 품질 관리

네트워크 백본을 넘어, 아고라(Agora)의 SDK는 최종 사용자에게 도달하는 라스트 마일(last-mile) 구간에서 패킷 손실 방지 조치를 처리합니다. 백본에서 에지(edge)에 이르는 이러한 계층적 접근 방식은 기반 인터넷 인프라의 일부가 저하된 상황에서도 일관된 품질을 보장합니다.

실제 환경에서의 성능

아키텍처에 대한 주장은 쉽습니다. 중요한 것은 실제 환경에서 측정된 성능입니다. 다음 데이터는 다양한 지리적 시나리오에서 공용 인터넷 라우팅과 SD-RTN 라우팅을 비교하며, 백분위수별 지연 시간을 분석합니다. 분포의 꼬리 부분에서야 비로소 신뢰성이 드러나기 때문입니다.

고가치 사용 사례에 있어 이것이 중요한 이유

오늘 아침 발생한 Cloudflare 사고는 3시간 동안 지속되었습니다. 소셜 미디어 플랫폼이나 음악 스트리밍 서비스의 경우, 이는 사용자의 불만과 참여도 저하를 의미했습니다. 불편하고 브랜드 인지도에 타격을 주지만, 근본적으로는 복구 가능한 문제였습니다.

실시간 서비스의 경우 상황은 다릅니다. 같은 3시간 동안:

  • Agora에서는 전문의와 현장 의사 간의 실시간 의료 상담이 중단 없이 계속되었습니다
  • 실시간 금융 통신은 마이크로초 단위의 정밀도를 유지했습니다
  • 기관 간 협력을 통해 운영되는 긴급 대응 시스템은 정상 가동 상태를 유지했습니다
  • 유료 시청자에게 방송되는 라이브 이벤트는 단 한 번도 중단되지 않았습니다

이 차이는 운이 아니었습니다. 바로 아키텍처 덕분이었습니다. 인터넷의 일부가 중단되었을 때, 벤더 의존형 인프라 위에 구축된 시스템들은 다운되었습니다. 탄력적인 다중 경로 아키텍처로 구축된 시스템은 계속 가동되었습니다.

3시간의 다운타임이 시술 실패, 거래 누락, 비상 대응 차질, 또는 방송 수익 손실을 의미하는 서비스의 경우, 그 시간은 되돌릴 수 없습니다. 이는 단순한 서비스 품질 저하가 아니라, 서비스 실패 그 자체입니다.

이것이 바로 아고라가 고부가가치 비즈니스와 사회적 요구를 충족시키기 위해서는 통신사급 서비스 품질만이 유일한 해결책이라고 주장하는 이유입니다. 문제는 제공업체가 “우수한 가동 시간”을 갖췄는지 여부가 아닙니다. 핵심은 아키텍처가 중단되는 매 순간이 회복 불가능한 가치를 파괴한다는 전제 하에 근본적으로 설계되었는지 여부입니다.

가동 시간을 넘어: 복원력의 철학

최근 잇따른 인프라 사고들 — 오늘 아침의 Cloudflare, 지난 10월의 AWS와 Azure — 는 엔지니어링의 부실함을 보여주는 증거가 아닙니다. 이는 인터넷이 대규모의 상호 연관된 위험을 초래하는 아키텍처 패턴으로 진화했음을 보여주는 증거입니다. EMARKETER의 애널리스트 제이콥 본(Jacob Bourne)이 비즈니스 인사이더(Business Insider)에 밝힌 바와 같이: “중단 사태가 더 빈번하게 발생하고 있으며, 복구하는 데 더 오랜 시간이 걸리고 있습니다.”

실시간 통신 서비스의 경우, 대응책은 인프라 제공업체가 신뢰성을 개선하기를 바라는 것에 그쳐서는 안 됩니다. 대응책은 애초에 단일 벤더의 서비스 신뢰성에 절대 의존하지 않는 아키텍처를 설계하는 것이어야 합니다.

오늘은 이것이 실제로 무엇을 의미하는지 보여주었습니다. 단일 인프라 제공업체에 의존하는 서비스들이 중단된 반면, 아고라의 서비스는 계속 운영되었습니다. 이는 운영상의 기적 때문이 아니라, SD-RTN 아키텍처가 근본적으로 인프라의 일부가 어딘가에서 항상 성능 저하를 겪을 것이라고 가정하고 이를 자동으로 우회하기 때문입니다.

단일 사이트 의존성을 제거하는 전 세계적으로 분산된 접속 지점(PoP). 실제 네트워크 상황에 대응하는 실시간 라우팅 인텔리전스. 여러 최적화된 경로를 통한 중복 전송. 이는 기존 아키텍처에 덧씌워진 기능이 아닙니다. 실시간 상호작용에는 실시간 복원력이 필요하다는 신념을 바탕으로, 제1원리부터 구축된 아키텍처 그 자체입니다.

다음 인프라 사고가 발생할 때 — 그리고 반드시 발생할 것입니다 — 모든 실시간 서비스가 직면하게 될 질문은 이렇습니다. 귀사의 아키텍처는 모든 구성 요소가 항상 완벽하게 작동할 것이라고 가정하고 있습니까? 아니면 어딘가에서는 항상 성능 저하가 발생할 수 있다는 점을 전제로 하면서도, 그럼에도 불구하고 일관된 품질을 제공할 수 있도록 설계되어 있습니까?

통신사급 복원력이란 결코 실패하지 않는 시스템을 구축하는 것이 아닙니다. 이는 기반 인프라의 일부가 고장 나더라도 통신사급 품질을 제공하는 시스템을 구축하는 것입니다.

실시간 통신에 있어서는 그 이하의 수준은 용납될 수 없습니다.

RTE Telehealth 2023
Join us for RTE Telehealth - a virtual webinar where we’ll explore how AI and AR/VR technologies are shaping the future of healthcare delivery.

Learn more about Agora's video and voice solutions

Ready to chat through your real-time video and voice needs? We're here to help! Current Twilio customers get up to 2 months FREE.

Complete the form, and one of our experts will be in touch.

Try Agora for Free

Sign up and start building! You don’t pay until you scale.
Try for Free