Trong thời đại “Big Data” thì các kho dữ liệu (Data Warehouse) truyền thống gặp…
Tốc độ, quy mô và độ tin cậy: 25 năm phát triển mạng lưới trung tâm dữ liệu của Google
Rome không được xây dựng trong một ngày, và mạng lưới của Google cũng vậy. Tuy nhiên, chỉ sau 25 năm, Google đã xây dựng cơ sở hạ tầng mạng với quy mô và sự tinh vi về mặt kỹ thuật thật đáng kinh ngạc.
Điều ấn tượng hơn nữa là ban đầu, cơ sở hạ tầng mạng của Google tương đối đơn giản. Nhưng khi cơ sở người dùng và nhu cầu đối với dịch vụ của Google tăng trưởng theo cấp số nhân, Google nhận ra rằng mình cần một mạng lưới có thể xử lý quy mô dữ liệu và lưu lượng truy cập chưa từng có, và có thể thích ứng với các mô hình lưu lượng truy cập động khi khối lượng công việc của Google thay đổi theo thời gian. Điều này đã thắp lên một hành trình 25 năm được đánh dấu bằng vô số đổi mới kỹ thuật và cột mốc, cuối cùng dẫn đến kiến trúc mạng trung tâm dữ liệu Jupiter thế hệ thứ năm hiện tại của Google, hiện đang mở rộng quy mô lên 13 Petabit / giây băng thông lưỡng phân. Để đặt tốc độ dữ liệu này vào viễn cảnh, mạng này có thể hỗ trợ cuộc gọi video (@1,5 Mb / giây) cho tất cả 8 tỷ người trên Trái đất!
Ngày nay, Google có hàng trăm mô-đun Jupiter được triển khai trên toàn thế giới, đồng thời hỗ trợ hàng trăm dịch vụ, hàng tỷ người dùng hoạt động hàng ngày, tất cả khách hàng của Google Cloud và một số cơ sở hạ tầng đào tạo và phục vụ ML lớn nhất thế giới. Tôi muốn chia sẻ thêm về hành trình của Google khi Google hướng tới thế hệ tiếp theo của cơ sở hạ tầng mạng trung tâm dữ liệu.
Nguyên tắc
Sự phát triển mạng lưới của Google được hướng dẫn bởi một vài nguyên tắc chính:
- Mọi thứ, mọi nơi: Mạng lưới trung tâm dữ liệu của Google hỗ trợ hiệu quả và đơn giản hóa bằng cách cho phép các công việc quy mô lớn được đặt ở bất kỳ đâu trong số hơn 100.000 máy chủ trong cùng một cấu trúc mạng, với quyền truy cập tốc độ cao vào bộ nhớ cần thiết và các dịch vụ hỗ trợ. Quy mô này cải thiện hiệu suất ứng dụng cho các khối lượng công việc nội bộ và bên ngoài, đồng thời loại bỏ sự phân mảnh nội bộ.
- Độ trễ thấp, có thể dự đoán: Google ưu tiên hiệu suất nhất quán và giảm thiểu độ trễ đuôi bằng cách cung cấp băng thông dư thừa, duy trì khả năng sẵn sàng mạng 99,999% và chủ động quản lý tắc nghẽn thông qua sự hợp tác giữa đầu cuối và cấu trúc.
- Định nghĩa phần mềm và tập trung vào hệ thống: Tận dụng mạng định nghĩa phần mềm (software-defined networking) để tăng tính linh hoạt và nhanh nhẹn, Google xác định và phát hành toàn cầu hàng chục tính năng mới mỗi hai tuần trên toàn bộ mạng lưới toàn cầu của Google.
- Tiến hóa từng bước và cấu trúc động: Tiến hóa từng bước giúp Google làm mới mạng lưới từng phần (thay vì ngừng hoạt động hoàn toàn), trong khi cấu trúc động giúp Google liên tục thích ứng với nhu cầu khối lượng công việc thay đổi. Sự kết hợp giữa chuyển mạch mạch quang và SDN hỗ trợ nâng cấp vật lý tại chỗ và mạng dị nhất không ngừng phát triển, hỗ trợ nhiều thế hệ phần cứng trong một cấu trúc duy nhất.
- Kỹ thuật lưu lượng truy cập và QoS tập trung vào ứng dụng: Tối ưu hóa luồng lưu lượng truy cập và đảm bảo Chất lượng Dịch vụ giúp Google điều chỉnh mạng lưới theo nhu cầu của từng ứng dụng.
Tích hợp các nguyên tắc trên là nền tảng cho công việc của Google. Mạng lưới là nền tảng của độ tin cậy cho tất cả các dịch vụ tính toán khác, từ lưu trữ đến AI. Do đó, mạng phải là yếu tố cuối cùng bị lỗi và lỗi ít nhất. Để hỗ trợ trách nhiệm cơ bản này, Google xác định và theo dõi nghiêm ngặt mọi phút xấu trên hàng trăm cụm và hàng triệu cổng trên toàn bộ mạng lưới toàn cầu của Google. Tiến trình của Google về độ tin cậy là mạng Jupiter được định nghĩa bằng phần mềm nội bộ của Google cung cấp độ tin cậy gấp 50 lần so với các phiên bản trước đó của mạng trung tâm dữ liệu của Google.
2015 – Jupiter, mạng Petabit đầu tiên
Trong một bài báo mang tính bước ngoặt, Google đã chứng minh rằng mạng trung tâm dữ liệu Jupiter có thể mở rộng quy mô lên 1,3 Pb/s băng thông tổng hợp bằng cách tận dụng silicon chuyển mạch thương mại, cấu trúc Clos và Mạng được định nghĩa bằng phần mềm (software-defined networking). Thế hệ Jupiter này là kết quả của năm thế hệ mạng trung tâm dữ liệu được phát triển nội bộ bởi nhóm mạng của Google. Vào thời điểm đó, tốc độ dữ liệu này – trong một trung tâm dữ liệu của Google – lớn hơn tốc độ dữ liệu IP tổng hợp ước tính cho toàn bộ internet toàn cầu.
2022 – Kích hoạt 6 Petabit mỗi giây
Vào năm 2022, Google đã công bố rằng mạng lưới Jupiter của Google đã mở rộng quy mô lên hơn 6 Pb/s, với sự tích hợp sâu của chuyển mạch mạch quang (optical circuit switching), đa kênh phân chia sóng (wave division multiplexing) và bộ điều khiển định nghĩa bằng phần mềm Orion có khả năng mở rộng cao. Những công nghệ này đã mở ra một loạt các tiến bộ, bao gồm xây dựng mạng lưới từng bước, hiệu suất nâng cao, giảm chi phí, giảm tiêu thụ điện năng, quản lý lưu lượng truy cập động và nâng cấp liền mạch.
2023 – Mạng 13 Petabit mỗi giây
Google đã tiếp tục nâng cấp Jupiter để hỗ trợ tốc độ liên kết 400 Gb/s gốc trong lõi mạng. Khối xây dựng cơ bản của mạng Jupiter (gọi là khối tổng hợp) hiện bao gồm 512 cổng 400 Gb/s kết nối cả với các máy chủ cuối và với phần còn lại của trung tâm dữ liệu, tổng cộng 204,8 Tb/s băng thông không chặn hai chiều mỗi khối. Google hỗ trợ 64 khối như vậy cho tổng băng thông lưỡng phân là 64*204,8 Tb/s = 13,1 Pb/s. Công nghệ này đã cung cấp năng lượng cho các trung tâm dữ liệu sản xuất của Google trong hơn một năm, thúc đẩy sự tiến bộ nhanh chóng của trí tuệ nhân tạo, học máy, tìm kiếm web và các ứng dụng dữ liệu lớn khác.
2024 và hơn thế nữa – Mạng cực hạn trong kỷ nguyên AI
Trong khi kỷ niệm hơn hai thập kỷ đổi mới trong mạng lưới trung tâm dữ liệu, Google đã vạch ra hướng đi cho thế hệ cơ sở hạ tầng mạng tiếp theo để hỗ trợ kỷ nguyên AI. Ví dụ: các nhóm của Google đang tích cực làm việc về nhu cầu cơ sở hạ tầng mạng cho VM A3 Ultra sắp tới của Google, với mạng NVIDIA ConnectX-7, hỗ trợ 3,2 Tbps không chặn mỗi máy chủ lưu lượng GPU-to-GPU qua RoCE (RDMA qua Ethernet hội tụ) và các dịch vụ tương lai của Google dựa trên NVIDIA GB200 NVL72.
Trong vài năm tới, Google sẽ mang lại những tiến bộ đáng kể về quy mô và băng thông mạng, cả trên mỗi cổng và toàn mạng. Google sẽ tiếp tục đẩy mạnh tích hợp đầu cuối, bao gồm cả ngăn xếp điều khiển tải và tắc nghẽn, và sắp xếp hợp lý các giai đoạn mạng để đạt được độ trễ thấp hơn với đuôi chặt hơn. Kỹ thuật topo thời gian thực, tích hợp sâu hơn với các ngăn xếp tính toán và lưu trữ, và tiếp tục tinh chỉnh các kỹ thuật cân bằng tải dựa trên máy chủ sẽ tiếp tục nâng cao độ tin cậy và độ trễ của mạng. Với những đổi mới này, mạng của Google sẽ tiếp tục là nền tảng cho các ứng dụng và dịch vụ chuyển đổi làm phong phú cuộc sống của người dùng trên toàn thế giới đồng thời hỗ trợ các khả năng AI đột phá cung cấp năng lượng cho cả dịch vụ nội bộ và sản phẩm Google Cloud của Google.
Google rất vui mừng được giải quyết những thách thức và cơ hội này để thấy những gì 25 năm tới sẽ mang lại cho mạng lưới của Google!
Tài liệu tham khảo
- Jupiter Rising: Một thập kỷ cấu trúc Clos và Kiểm soát tập trung trong Mạng trung tâm dữ liệu của Google (SIGCOMM ‘15) [link]
- Hành trình của mạng trung tâm dữ liệu Jupiter đầu tiên tận dụng silicon chuyển mạch thương mại, cấu trúc Clos và Mạng được định nghĩa bằng phần mềm (software-defined networking).
- Triển khai sản xuất đầu tiên vào năm 2012.
- Nhiệm vụ Apollo: Chuyển mạch mạch quang quy mô Trung tâm dữ liệu (arxiv.org, 2022) [link]
- Triển khai sản xuất đầu tiên vào năm 2013.
- Orion: Mặt phẳng điều khiển Mạng được định nghĩa bằng phần mềm của Google (NSDI ‘21) [link]
- Nền tảng SDN phân tán dựa trên ý định, có khả năng mở rộng, hiệu suất cao của Google được sử dụng trong cả mạng trung tâm dữ liệu và mạng diện rộng.
- Triển khai sản xuất đầu tiên vào năm 2016.
- Jupiter Evolving: Chuyển đổi Mạng Trung tâm dữ liệu của Google thông qua Chuyển mạch mạch quang và Mạng được định nghĩa bằng phần mềm (SIGCOMM ’22) [link]
- Các công nghệ hỗ trợ: OCS (2013), Orion SDN (2016), Mạng 200Gbps (2020), Cấu trúc kết nối trực tiếp (2017), Quản lý lưu lượng truy cập động (2018), Kỹ thuật cấu trúc động (2021).
- Swift: Độ trễ đơn giản và hiệu quả cho Kiểm soát tắc nghẽn trong Trung tâm dữ liệu (SIGCOMM ‘20) [link]
- Swift, một giao thức kiểm soát tắc nghẽn sử dụng dấu thời gian phần cứng và điều khiển AIMD với mục tiêu độ trễ, mang lại hiệu suất tuyệt vời trong các trung tâm dữ liệu của Google với thời gian hoàn thành luồng thấp cho các RPC ngắn và thông lượng cao cho các RPC dài.
- Triển khai sản xuất đầu tiên vào năm 2017.
- PLB: Tín hiệu tắc nghẽn đơn giản và hiệu quả cho Cân bằng tải mạng (SIGCOMM ‘22) [link]
- Cân bằng tải bảo vệ (Protective Load Balancing) là một thiết kế cân bằng tải dựa trên máy chủ đơn giản, hiệu quả, giúp giảm tắc nghẽn mạng và cải thiện hiệu suất bằng cách thay đổi ngẫu nhiên các đường dẫn cho các kết nối bị tắc nghẽn, ưu tiên định tuyến lại sau các khoảng thời gian không hoạt động để giảm thiểu việc sắp xếp lại các gói tin.
- Triển khai sản xuất đầu tiên vào năm 2020.