Incident Library

IL-0341 Cloudflare · 2025-08-21networkingaws

Cloudflare 와 AWS us-east-1 사이 링크가 혼잡해져 그 리전에 오리진을 둔 고객이 높은 지연과 패킷 손실을 겪었다

Cloudflare 는 캐시에 있는 콘텐츠로 응답할 때, 응답 트래픽을 내부 Data Center Interconnect 링크와 여러 네트워크 장비를 거쳐 에지 라우터로 보낸다. 2025년 8월 21일 16:27 UTC 쯤 한 고객이 AWS us-east-1 에서 Cloudflare 캐시의 객체를 대량으로 요청했고, 그 응답이 Cloudflare 와 AWS 사이의 직접 피어링 연결을 모두 채웠다. 공격이나 BGP 하이재킹이 아니라 네트워크 혼잡이었다.

16:37 에 AWS 가 혼잡을 덜려고 혼잡한 링크 일부에서 Cloudflare 쪽 BGP 광고를 거둬들였다. 그러자 트래픽이 별도 사이트의 네트워크 상호 연결 스위치를 거쳐 Cloudflare 에 닿는 다른 피어링 링크로 옮겨 갔고, 이 링크도 꽉 차 성능이 크게 떨어졌다. 직접 피어링 링크 하나는 앞서 난 고장으로 용량의 절반으로만 돌고 있었고, 에지 라우터와 그 별도 사이트 스위치를 잇는 DCI 는 용량 증설을 앞두고 있었다. 이 두 가지가 피해를 키웠다.

Cloudflare 장애 대응 팀은 AWS 와 함께 대응했다. 19:05 에 트래픽 급증을 일으킨 고객에 속도 제한을 걸자 혼잡이 줄었고, 19:27 에 네트워크 팀의 추가 트래픽 엔지니어링으로 혼잡이 풀렸다. 영향은 19:38 까지 크게 줄었고, 그 뒤에도 지연이 간헐적으로 늘었다. 19:45 부터 Cloudflare 의 요청으로 AWS 가 BGP 광고 철회를 되돌려 20:07 에 마쳤고, 영향은 20:18 에 끝났다.

심각도
–
영향 범위
traffic between Cloudflare and AWS us-east-1, including requests to customer origins hosted there
영향 사용자
customers with origins in AWS us-east-1 and users connecting to or from Cloudflare via servers in AWS us-east-1
지역
AWS us-east-1 and Cloudflare's Ashburn (IAD) location
감지까지
17m
복구까지
3h 51m

증상

2025년 8월 21일 16:27 UTC 부터 AWS us-east-1 에 오리진을 둔 고객과, us-east-1 의 서버를 거쳐 Cloudflare 와 트래픽을 주고받는 사용자에게 높은 지연, 패킷 손실, 오리진 연결 실패가 났다. 16:44 에 Cloudflare 네트워크 팀이 애시번 IAD 의 내부 혼잡 알림을 받았다.

혼잡 때문에 라우터의 네트워크 큐가 크게 불어나 패킷을 버리기 시작했다. 애시번 에지 라우터는 장애 내내 우선순위가 높은 패킷까지 꾸준히 버렸다. 고객이 겪은 것은 주로 지연, 손실에 따른 타임아웃, 낮은 처리량이었다.

Cloudflare 는 고객 요청을 흉내 내 오리진까지 가용성과 지연을 재는 지연 SLO 를 두고 있다. 장애 동안 이 지연 SLO 지표는 패킷 손실과 같은 흐름으로 허용 수준을 벗어났다.

16:37 부터 AWS 가 혼잡한 PNI, 곧 Private Network Interconnect 의 BGP 세션에서 Cloudflare 쪽으로 광고하던 프리픽스를 거둬들였다. 세션별 광고 프리픽스 수 그래프에 움푹 꺼진 곳이 보였다. 그 때문에 혼잡하지 않은 경로에서도 AWS 프리픽스가 보이지 않아 Cloudflare 가 쓸 대응 수단이 줄었다. 17:22 에는 프리픽스 철회로 버려지는 트래픽이 더 늘었다.

19:27 에 혼잡이 풀린 뒤에도, AWS 와 Cloudflare 가 바꿔 둔 프리픽스 광고를 되돌리는 동안 지연은 길게 이어졌다. 패킷 손실이 먼저 끝나고 고객 지연은 20:18 에야 돌아왔다. Cloudflare 의 전 세계 서비스는 영향을 받지 않았고, 성능 저하는 Cloudflare 와 AWS us-east-1 사이 트래픽에 그쳤다.

증상 패킷 손실지연 시간 증가간헐적 타임아웃

원인

촉발
16:27 UTC 쯤 한 고객이 AWS us-east-1 에서 Cloudflare 캐시에 있는 객체를 대량으로 요청하기 시작했다. 그 응답 트래픽이 Cloudflare 에서 AWS 로 가는 전체 트래픽을 두 배로 늘렸다.

감지

장애가 시작되고 17분 뒤인 16:44 UTC 에 Cloudflare 네트워크 팀이 애시번 IAD 의 내부 혼잡 알림을 받았다. 17:45 에는 애시번 IAD 의 고객 영향을 이유로 장애가 선언됐다.

조치

후속 조치

교훈

Cloudflare 는 이 사고로 한 고객의 사용 방식이 나머지 생태계를 해치지 못하게 막는 안전장치가 더 필요하다는 것이 드러났다고 했다. 어느 한 고객이 공유 자원을 독차지해 다른 고객의 안정성을 해치지 못하도록 고객 격리를 더 잘 설계해야 하고, 수요를 감당할 만큼 네트워크 인프라 용량을 늘려야 한다는 것을 핵심 교훈으로 꼽았다. 결론에서는 드물게 트래픽이 몰린 상황에서 네트워크 혼잡 관리가 모자라 장애가 났다고 했다.

출처

관련 사례

내 클러스터에도 있는지 확인하기

kubegap 은 Claude Code 나 Codex 에서 쿠버네티스 클러스터를 읽기만 하며 이 사례와 같은 상태를 점검합니다. 이 사례의 구성 요소: 트랜짓 게이트웨이와 네트워크 연결 장비, BGP 라우팅, CDN 과 엣지 네트워크. 점검 항목의 근거는 이 사례 같은 공개 보고서입니다.

AI 도구와 스크립트용

API 는 키가 필요 없습니다. MCP 서버는 search_incidents, get_incident, list_incidents, get_topic, vocab 도구를 내놓습니다. 사용법은 API 와 MCP.