클라우드, CDN, 데이터센터
교재 여기까지 오면서 우리는 패킷이 어떻게 만들어지고, 어떻게 전달되며, 어떻게 암호화되는지를 배웠습니다. 이번 절은 그 패킷들이 실제로 달리는 무대, 즉 현대 인터넷 인프라의 큰 그림을 그립니다.
데이터센터 내부 네트워크
클라우드 서비스는 수천, 수만 대의 서버가 모인 데이터센터에서 운영됩니다. 이 서버들이 서로 통신하는 방식은 일반 인터넷과 다릅니다. 데이터센터는 팻 트리(Fat-Tree) 또는 클로스(Clos) 토폴로지를 씁니다. 상단의 코어 스위치, 중간의 애그리게이션 스위치, 하단의 탑-오브-랙(ToR) 스위치로 계층을 이루되, 각 계층 사이에 여러 경로를 두어 특정 링크가 실패해도 트래픽이 우회할 수 있게 합니다.
이 네트워크에서는 SDN이 핵심 역할을 합니다. 수만 개의 가상 머신이 수시로 생성되고 삭제되므로, 네트워크 경로를 자동으로 프로비저닝하는 소프트웨어 없이는 운영이 불가능합니다.
CDN — 콘텐츠를 사용자 가까이에
영상 스트리밍을 예로 들겠습니다. 서울 사용자가 미국 서버에서 4K 영상을 받으면 태평양을 건너는 왕복 지연이 수십 ms씩 쌓입니다. CDN(Content Delivery Network)은 이 문제를 전 세계 곳곳에 엣지 서버를 두는 방식으로 해결합니다. 사용자의 요청은 지리적으로 가장 가까운 엣지 서버로 안내됩니다. 엣지 서버가 콘텐츠를 갖고 있으면 원본 서버까지 가지 않고 바로 응답합니다.
Cloudflare, Akamai, AWS CloudFront가 대표적인 CDN입니다. DNS 기반 또는 Anycast IP 기반으로 가장 가까운 엣지 서버를 찾습니다. 사용자 입장에서는 동일한 URL로 요청하지만, 실제로 응답하는 서버는 수천 킬로미터 가까이에 있습니다.
클라우드 네이티브와 오버레이 네트워크
클라우드 환경에서 가상 머신과 컨테이너는 물리 서버와 무관하게 자신만의 사설 IP를 갖습니다. 이것을 가능하게 하는 것이 오버레이 네트워크입니다. VXLAN 같은 기술은 물리 네트워크 위에 가상의 L2 네트워크를 겹쳐 씁니다. 가상 머신은 같은 랙에 있지 않아도 같은 서브넷에 있는 것처럼 통신합니다.
쿠버네티스(Kubernetes) 클러스터가 Pod에 IP를 할당하고 서비스 간 통신을 조율하는 방식도 이 오버레이 네트워크를 기반으로 합니다. SDN의 원리가 컨테이너 오케스트레이션까지 연결됩니다.
이 교재가 시작할 때 물리 계층의 전기 신호부터 배웠습니다. 이제 그 신호들이 모여 데이터센터와 클라우드를 이루고, CDN을 통해 전 세계로 뻗어나가는 그림을 볼 수 있습니다. 다음 PART에서는 이 모든 지식을 실제 문제 해결에 연결하는 실전 디버깅을 다룹니다.