这个问题我大概回答一下,由于我不太清楚字节跳动真正的网络是如何组网的,所以我只能告诉你大概的原理。参考其他大型互联网企业的组网,应该解决的方案是类似的



抖音并不是全国所有刷视频用户都在同一个地方的数据中心接入我们看视频的流量,如果是这样的话,那么这个数据数据中心所需的带宽就是过于巨大。一般来说,抖音在全国各地会建设几个比较大的数据中心,我们刷视频的请求是就近接入的。


比如张三在北京,那么他接入抖音APP,上传和浏览视频,就是在北京数据中心完成;李四在上海,那么他的上传视频和浏览视频就是在上海的数据中心完成。如果所有用户都接入同一个地方数据中心,毫无疑问对于这个数据中心的负载太大,这是不可能的。



各个数据中心的视频数据,通过专有的高速互联网络进行同步。也就是你上传的视频虽然是上传到上海的数据中心,北京的用户依然可以看到,就是可能要晚一点刷才看到。抖音需要把你在上海上传的视频数据通过高速网络传递到北京后,北京的用户才能看到。


一个数据中心包括多个运营商的出口,一般是会和三大运营商网络在本地对接,同时会和一些中小型运营商对接,例如广电。和运营商网络对接的目的为了接入运营商的用户,这也就意味着你是北京移动用户,那么刷出来抖音的视频将会从北京移动的网络接入抖音



如果发现某个区域的数据中心业务负载太重怎么办?例如湖南春节大量用户返乡,导致位于武汉的数据中心突然接入不了这么多湖南的用户了,这个时候抖音内部就会调整用户的接入路径,把一部分本来接到武汉的抖音用户接入到北京去(因为春节北京的人少了很多)


所以,这就是互联网公司网络的基本架构。全国存在多个数据中心,不同地方的用户刷视频其实是接入不同的数据中心,每个数据中心都会和三大运营商网络对接。



这种分布式的网络保证了抖音的业务不会都积压在一个数据中心,由全国各地抖音数据中心和运营商互联的带宽来保证用户刷视频可以正常浏览


那么位于不同位置的抖音的数据中心和三大运营商的互联带宽多大?只能讲肯定是T级别的,1T等于1000G,现在大型互联网公司和运营商对接的带宽普遍是1T、2T起步了,而且一般如果发展互联带宽负载超过了30%到50%,就需要扩容



很多人提到了CDN,CDN不能从根本上解决这个带宽问题,CDN只能从运营商网络路由层面上解决一定的拥塞问题。不论是腾讯、百度还是抖音、YY,解决游戏、视频大带宽的问题都是从数据中心网络基础架构解决,都是采用类似的技术,也就是DCN和DCI相关的技术