Công nghệ cho phép phân phối quy mô YouTube?


34

Youtube như chúng ta biết, là rất lớn. Nó có hàng ngàn người dùng đồng thời phát trực tuyến ít nhất 2 megabyte mỗi video. Rõ ràng, điều đó nhận được rất nhiều lưu lượng ... quá nhiều cho bất kỳ một máy chủ nào.

Những công nghệ mạng nào cho phép đẩy 4 tỷ video mỗi ngày?

Câu trả lời:


51

Thu nhỏ trên phần cuối

Trong một thiết lập rất đơn giản, một mục nhập DNS sẽ chuyển đến một IP thuộc về một máy chủ. Mọi người trên thế giới đều đi đến cái máy đơn lẻ đó. Với đủ lưu lượng truy cập, đó chỉ là quá nhiều để xử lý lâu trước khi bạn có kích thước của YouTube. Trong một kịch bản đơn giản, chúng tôi thêm một bộ cân bằng tải. Công việc của bộ cân bằng tải là chuyển hướng lưu lượng đến các máy chủ phụ khác nhau trong khi xuất hiện dưới dạng một máy chủ.

Với nhiều dữ liệu như YouTube có, sẽ là quá nhiều để hy vọng tất cả các máy chủ có thể phục vụ tất cả các video, vì vậy chúng tôi có một lớp bổ sung khác để thêm vào: shending . Trong một ví dụ giả định, một máy chủ chịu trách nhiệm cho mọi thứ bắt đầu bằng "A", một máy chủ khác sở hữu "B", v.v.

Di chuyển cạnh gần hơn

Cuối cùng, mặc dù, băng thông trở nên dữ dội và bạn đang di chuyển RẤT NHIỀU dữ liệu vào một phòng. Vì vậy, bây giờ chúng tôi rất nổi tiếng, chúng tôi chuyển nó ra khỏi căn phòng đó. Hai công nghệ quan trọng ở đây là Mạng phân phối nội dung và Anycasting .

Khi tôi nhận được các tệp tĩnh lớn này được yêu cầu trên toàn thế giới, tôi ngừng trỏ các liên kết trực tiếp đến các máy chủ lưu trữ của mình. Thay vào đó, những gì tôi làm là đưa ra một liên kết đến máy chủ CDN của tôi. Khi ai đó yêu cầu xem video, họ yêu cầu máy chủ CDN của tôi cho nó. CDN chịu trách nhiệm đã có video, yêu cầu một bản sao từ máy chủ lưu trữ hoặc chuyển hướng cho tôi. Điều đó sẽ thay đổi dựa trên kiến ​​trúc của mạng.

CDN đó hữu ích như thế nào? Chà, một IP thực sự có thể thuộc về nhiều máy chủ ở nhiều nơi trên thế giới. Khi yêu cầu của bạn rời khỏi máy tính của bạn và đến ISP của bạn, bộ định tuyến của họ sẽ ánh xạ đường dẫn tốt nhất (ngắn nhất, nhanh nhất, chi phí thấp nhất ... bất kỳ số liệu nào) đến IP đó. Thông thường đối với CDN, nó sẽ ở trên hoặc bên cạnh mạng Cấp 1 gần nhất của bạn .

Vì vậy, tôi đã yêu cầu một video từ YouTube. Máy thực tế nó được lưu trữ ít nhất là iad09s12.v12.lscache8.c.youtube.comtc.v19.cache5.c.youtube.com. Những thứ đó hiển thị trong nguồn của trang web của tôi mà tôi đang xem và được cung cấp bởi một số dạng máy chủ lập chỉ mục. Bây giờ, từ Maine tôi đã tìm thấy máy chủ tc19 ở Miama, Florida. Từ Washington, tôi tìm thấy máy chủ tc19 ở San Jose, California.


4
Ví dụ giả định của bạn về shending là tốt nhất tôi đã thấy. Mọi người dường như tạo ra một sự phức tạp lớn từ khái niệm đơn giản này vì một số lý do.
kizzx2

@Jeff, Sẽ thật tuyệt nếu bạn thêm vào một số trích dẫn hoặc làm rõ rằng đây là suy đoán của người dùng cuối.
Pacerier

23

Một số kỹ thuật được sử dụng cho các trang web lớn.

www.youtube.com -> bất kỳ số lượng địa chỉ IP

Hãy xem DNS:

www.youtube.com is an alias for youtube-ui.l.google.com.
youtube-ui.l.google.com has address 74.125.226.14
youtube-ui.l.google.com has address 74.125.226.0
youtube-ui.l.google.com has address 74.125.226.1
youtube-ui.l.google.com has address 74.125.226.2
youtube-ui.l.google.com has address 74.125.226.3
youtube-ui.l.google.com has address 74.125.226.4
youtube-ui.l.google.com has address 74.125.226.5
youtube-ui.l.google.com has address 74.125.226.6
youtube-ui.l.google.com has address 74.125.226.7
youtube-ui.l.google.com has address 74.125.226.8
youtube-ui.l.google.com has address 74.125.226.9
youtube-ui.l.google.com has IPv6 address 2001:4860:800f::88

Vì vậy, www.youtube.com thực sự có thể đi đến một số địa chỉ IP.

địa chỉ IP bị bỏ qua

Một IP duy nhất có thể được xử lý bởi bất kỳ số lượng Hệ thống tự trị nào (Mạng trên internet) cùng một lúc. Chẳng hạn, nhiều máy chủ DNS gốc cũng như 8.8.8.8máy chủ DNS của Google được phát sóng tại nhiều điểm trên toàn cầu. Ý tưởng là nếu bạn ở Mỹ, bạn truy cập mạng Hoa Kỳ và nếu bạn ở Vương quốc Anh, bạn sẽ truy cập mạng Vương quốc Anh.

phương tiện truyền thông đến từ máy chủ khác nhau

Chỉ vì bạn đang ở trên www.youtube.com, điều đó không có nghĩa là tất cả nội dung phải đến từ cùng một máy chủ. Ngay trên trang web này, tài nguyên tĩnh được phục vụ từ sstatic.netthay vì serverfault.com.

Chẳng hạn, nếu chúng ta xem Slave Leia PSA của Kaley Cuoco, chúng ta thấy rằng các phương tiện truyền thông được phục vụ bởi v10.lscache5.c.youtube.com.

nhiều kết nối internet

Tôi đảm bảo với bạn, Youtube có nhiều hơn một kết nối internet. Mặc dù tất cả các kỹ thuật khác, ngay cả khi Youtube thực sự là một trang web và một máy chủ duy nhất, về mặt lý thuyết, nó có thể có kết nối với mọi mạng khác mà nó đang phục vụ video. Trong thế giới thực, điều đó là không thể, nhưng hãy xem xét ý tưởng.

Bất kỳ hoặc tất cả các ý tưởng này (và hơn thế nữa!) Có thể được sử dụng để hỗ trợ Mạng phân phối nội dung . Đọc bài viết đó nếu bạn muốn biết thêm.


"về mặt lý thuyết, nó có thể có kết nối với mọi mạng khác mà nó đang phục vụ video. Trong thế giới thực, điều đó là không thể, nhưng hãy xem xét ý tưởng." Tại sao nó không thể trong thế giới thực? Bạn có thể đăng ký nhiều nhà cung cấp internet
user1034912

Bạn thực sự muốn có kết nối độc lập với hơn ba mươi lăm ngàn mạng riêng biệt? Nó không thực tế.
MikeyB

12

Bạn đã sai khi tưởng tượng rằng YouTube (còn gọi là Google) chỉ có một máy chủ; inforgecraft này có thể giúp minh họa quy mô của hệ thống hỗ trợ dịch vụ đó.

Ngay cả khi bạn chỉ có một điểm hiện diện, bạn hoàn toàn có thể có nhiều hơn một máy chủ đằng sau một tên và thậm chí IP, sử dụng các công cụ như cân bằng tải và tất cả.

Mặc dù vậy, Google có rất nhiều điểm hiện diện và sử dụng các công cụ như AnyCast - một kỹ thuật để xuất bản cùng một IP tại nhiều nơi trên Internet và mọi người đã chuyển đến nhóm máy chủ gần nhất sở hữu nó - để sao lưu cơ sở hạ tầng.


1
Làm thế nào để google đặt một triệu máy chủ trên toàn thế giới? Họ có thuê máy chủ không? Họ sẽ không khó để duy trì bảo mật dữ liệu quản lý tất cả các máy chủ bên thứ ba đó chứ?
dùng1034912

2
Họ sở hữu mỗi một trong số họ. Nghiêm túc, họ mua - tốt, làm, những ngày này - họ. Điều này chi phí nhiều như bạn tưởng tượng, trong một số cách, nhưng ít hơn ở những người khác.
Daniel Pittman

1
Investors.google.com/fin finance / tests.html có thể giúp đỡ; Q4, 2011, 10.000 triệu đô la đã xuất hiện. Nghiêm túc mà nói, chúng ở một quy mô mà bạn không thể tưởng tượng được.
Daniel Pittman

2
@ user1034912 - vâng, thật đáng kinh ngạc. Nhưng đây là Google , vậy tại sao địa ngục không? Có hàng ngàn trung tâm dữ liệu trên toàn thế giới, Google tình cờ vận hành một phần nhỏ trong số đó.
Tombull89

1
@Tomtom - Tại sao không khó tin cho người dùng không quen thuộc với công nghệ máy chủ? Thật thô lỗ và cực kỳ xúc phạm khi nói rằng ai đó không biết Google có hàng trăm máy chủ đang sống dưới một tảng đá. Đi ra ngoài và hỏi một số ít người không chuyên về công nghệ và tôi đảm bảo họ không biết quy mô của các máy chủ của Google hoặc thậm chí họ là gì. Ngoài ra, những người thường xuyên duyệt bảng cân đối? Bạn luôn phải đọc tất cả các tin tức về trung tâm dữ liệu? Thành thật mà nói, tôi không quan tâm bạn có bao nhiêu đại diện nhưng lại thô lỗ, thiếu tôn trọng và hạ thấp bạn trong cuộc sống.
DMan

3

Tôi sẽ chạm vào khía cạnh mạng một chút: Google có Điểm hiện diện (PoP) trong 73 trung tâm dữ liệu duy nhất trên toàn thế giới (không bao gồm chính họ). Họ là thành viên của 69 trao đổi Internet độc đáo . Google ở ​​nhiều trung tâm dữ liệu và điểm trao đổi Internet hơn so với mạng khác được liệt kê trên pangudb.

Tổng dung lượng trao đổi internet của Google là> 1,5Tb / giây và 1,5Tb / giây được dành riêng cho các mạng có lưu lượng truy cập> 100Mb / giây với Google, nhưng ít hơn tôi đoán khoảng 2-3Gb / giây. Sau khi bạn có 'đủ âm lượng' , bạn được chuyển sang chế độ tiên phong riêng tư (PNI).

Ngoài Internet tiên phong và tiên phong riêng tư (với AS15169), YouTube cũng vận hành một mạng chuyển tiếp: AS43515 và một mạng khác mà tôi cho là dành cho tính năng tiên phong / tràn trả phí, AS36040. Google cũng vận hành các máy chủ Google Global Cache , để các ISP triển khai thậm chí nhiều hơn cục bộ trong mạng của họ. (Dữ liệu từ pangudb, bgp.he.net).

Dựa trên kinh nghiệm của tôi, tôi tin rằng YouTube sử dụng nhiều hơn là chỉ định vị địa lý IP hoặc Anycast để chọn một vị trí để phân phát video.

Google điều hành một mạng lưới xương sống toàn cầu khổng lồ, họ sở hữu sợi tối , họ có dây cáp ngầm dưới biển . Lưu lượng truy cập YouTube tạo ra là rất lớn! Tôi đoán YouTube có lưu lượng truy cập cao nhất> 12Tbps. Google đại diện cho ít nhất 7% (và có thể> 10%) tất cả lưu lượng truy cập internet giữa các miền.

Vì vậy, để thực sự trả lời câu hỏi của bạn, từ góc độ mạng, để mở rộng quy mô như YouTube, bạn phải đầu tư lớn vào mạng của mình - từ sợi quang trên mặt đất đến thiết bị WDM và bộ định tuyến. Bạn phải có được nội dung và mạng càng gần với người dùng của bạn. Điều này thường có nghĩa là tiên phong, IX, và có thể một chút quá cảnh. Bạn phải có khả năng thông báo cho người dùng biết nơi lấy nội dung một cách thông minh để giữ cho lưu lượng truy cập được phân bổ đều và rẻ nhất có thể. Và tất nhiên, bạn phải có cơ sở hạ tầng máy chủ khổng lồ để lưu trữ, xử lý, chuyển đổi và cung cấp 4 tỷ lượt xem mỗi ngày!

Nếu bạn tò mò về phía máy chủ, tôi đã viết một bài đăng trên blog để chia nhỏ một số hình ảnh trung tâm dữ liệu được phát hành gần đây.


Btw bạn có làm việc cho Google không?
Pacerier

2

Nếu bạn muốn biết thêm về các hệ thống quy mô lớn và các công nghệ mà các công ty này sử dụng, nguồn tốt nhất hiện nay là http://highscalability.com

Các công ty lớn nhất như Google hay Akamai, họ luôn có các thành phần do họ tự viết / tạo. (ví dụ Akamai đã phát triển một máy chủ web cho các dịch vụ của họ)


Tuy nhiên, một số dữ liệu đã lỗi thời ....
Pacerier
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.