浅谈P2P内容分发网络
名词介绍
P2P CDN(简称PCDN)是一种基于P2P技术的内容分发网络。与传统的CDN不同,PCDN通过挖掘和利用边缘网络中的海量碎片化闲置资源,构建出一个低成本、高品质的内容分发网络服务。
在PCDN中,用户既是内容的消费者,也是内容的分发者。当一个用户下载某个内容时,他可以从其他用户的节点中获取数据,同时自己也作为节点为其他用户提供数据传输服务。这种点对点的传输方式使得PCDN具有极高的扩展性和容错性,能够在用户量激增的情况下仍保持稳定的性能。
相关技术
对等式网络
对等式网络(英语:peer-to-peer, 简称P2P),又称点对点技术,是去中心化、依靠用户群(peers)交换信息的互联网体系,它的作用在于,减低以往网路传输中的节点,以降低资料遗失的风险。与有中心服务器的中央网络系统不同,对等网络的每个用户端既是一个节点,也有服务器的功能,任何一个节点无法直接找到其他节点,必须依靠其户群进行信息交流。
P2P节点能遍布整个互联网,也给包括开发者在内的任何人、组织或政府带来监控难题。P2P在网络隐私要求高和文件共享领域中,得到了广泛的应用。使用一般型P2P技术的网络系统有比特币、Gnutella或自由网等。
传统下载,都是一个服务器,N个客户端。所有客户端,都去服务器下载数据。而P2P的话,A用户下载一部分,B用户也下载了一部分。然后,A用户和B用户之间,互相分享对方已有的数据。这样的话,减轻了服务器的压力。甚至说,服务器关掉,也不影响剩下用户之间完成全部数据的下载。
大名鼎鼎的BT(BitTorrent)下载,就是P2P下载。它所体现的,就是“人人为我,我为人人”的互联网精神。
内容分发网络
內容分发网络(英语:Content Delivery Network或Content Distribution Network,缩写:CDN)是指一种透过互联网互相连接的电脑网络系统,利用最靠近每位用户的服务器,更快、更可靠地将音乐、图片、影片、应用程序及其他文件发送给用户,来提供高性能、可扩展性及低成本的网络内容传递给用户。
内容分发网络的总承载量可以比单一骨干最大的带宽还要大。这使得内容分发网络可以承载的用户数量比起传统单一服务器多。内容分发网络另外一个好处在于有异地备援。当某个服务器故障时,系统将会调用其他邻近地区的服务器服务,进而提供接近100%的可靠度。除此之外,内容分发网络提供给服务提供者更多的控制权。提供服务的人可以针对客户、地区,或是其他因子调整。
传统方式,数据放在主服务器,大家都来取,服务器负担很大,带宽有瓶颈。CDN把数据放在离用户更近的区域服务器上。这样,就实现了“内容的分发”。主服务器的压力小了,用户看电影也不容易卡顿。
PCDN=P2P+CDN
PCDN,是P2P和CDN技术的结合,是基于P2P技术的CDN。PCDN直接把内容放在了用户的家里,例如手机终端上,或者路由器上,变成了规模更大的“内容源”。
举例来说,你使用某视频App,观看了一个连续剧。附近的其他用户,如果也观看这个连续剧,就会从你的手机里,取用一部分数据。再例如,你使用某网盘App,下载了一份电子书。附近的其他用户,如果也要下载这份电子书,就可以从你的手机里,取用数据。
客户端上的PCDN,不仅可以通过手机App来实现,也可以直接部署在无线路由器上。
被封杀的PCDN
为什么要封杀PCDN?
首先,海量的PCDN流量,对运营商骨干传输网络,形成了巨大压力。用户的宽带都是包月的,不是按流量计费。用的越多,运营商网络压力越大,关键还收不到更多钱。其次,视频服务商们,搭建常规CDN服务节点,需要租用运营商的高价机房和带宽。现在服务商都用PCDN了,资源租用大幅减少,影响了运营商的盈利。触碰了核心利益,运营商当然要封杀。
封杀PCDN的难度
封杀PCDN,并不是一件容易的事情。PCDN传输的数据,同样是视频等业务数据。想要区别用户的数据究竟是不是PCDN业务,存在不小挑战。如果区分不准确,或者采用“一刀切”,肯定会影响用户的正常上行需求(例如摄像头数据、直播数据、游戏数据等),进而引发大规模投诉,甚至用户流失。
这些年,运营商们普遍开始采用DPI(深度数据包检测)流量识别和QoS限制,对PCDN进行甄别和打压。例如,对PCDN业务进行精准识别,正常上行流量不受影响,PCDN流量安排上15%~20%的packet loss(丢包),就能实现PCDN业务的有效扼制。