P4P首次提出依靠ISP和P2P应用的合作,由最了解网络状态的ISP提供底层网络信息,供上层应用有效选择“临近” 节点、拥塞程度低和开销小的链路传输内容。其实,将节点数据内容交换限制在某一个区域附近的思想其实由来已久,并不是P4P所独有的技术。在P4P之前,就有很多应用采用p2p自身的机制来限制流量跨域过多,将数据交换最大本地化,称之为交换数据的locality特性。但是纯粹依靠P2P应用本身限制内容交换在本地的方式存在一定问题。比如,纯基于locality的节点选择方式的会给骨干网带来拥塞。比如北京到天津的链路link是最为流量集中的热点,基于位置信息在选择 节点过程中,不考虑实际流量的拥塞限制,仍选择该段链路作为最邻近的通路,从而造成链接负荷过重。另外,基于locality的方式没有考虑不同运营商之间的差异所带来的开销。比如仅依靠时延或者跳数方式选择结点,即使交换数据的节点在同一个city中,但分属不同ISP(比如教育网、电信网运营商等),可以达到时延较小的目的,但会导致ISP域间传输,造成不必要的费用开销。在ISP域间传递不可避免的情况下,纯基于locality的应用选择节点也可能会不经选择的通过开销较高的ISP的链路,同样造成不必要的费用开销。另外,P2P应用还可以采用自身的探测技术和机制调整选择流量走向,这种方式也存在一定弱点:P2P应用自身需要采用逆向流量工程推测(probe)底层网络状态,比如发出探测消息以推测目前拓扑信息、拥塞程度、链接开销等,它依赖网络测量技术,而目前的测量技术本身就耗费网络带宽资源,且不能完全反映网络真实状态。一些新技术比如MPLS交换对于probe探测消息不做回应,使得纯网络测量某些场合难以应用。而ISP运营商的策略信息(哪些link昂贵不适合用p2p应用,那些ISP之间的link开销便宜等) 逆向工程无法推测。总而言之,单靠P2P应用来解决流量问题是不现实和可靠的。