专利名称:对等网络服务原语系统的制作方法
技术领域:
本发明涉及的是一种网络通信技术领域的系统,具体是一种对等网络服务原语系 统。
背景技术:
对等网络(Peer-to-Peer network,简称P2P网络)是一种新的通信网络模式,网 上各台计算机有相同的功能,无主从之分,任一台计算机都是即可作为服务器,设定共享资 源供网络中其他计算机所使用,又可以作为工作站,享受其他计算机提供的海量资源共享 下载等服务;对等网络是分布式系统和计算机网络相结合的产物,它让所有网络成员享有 “自由、平等、互联”的功能。P2P是英文Peer-to-Peer (对等)的简称,又被称为“点对点”。 P2P通信技术,是一种新的通信模式。以P2P技术为基础组成的通信网络,就是P2P网络,即 对等网络。P2P网络快速发展,已经占据了当前互联网超过一半的带宽资源,被称为“改变 互联网的新一代网络技术”。近年来,Bittorrent,PPLive以及eMule等P2P系统获得了巨大的成功。但是,由 于P2P 本身并没有规范性要求,大量的这些P2P应用功能相互叠加,导致了对有限的网络资 源和开发资源的恶性竞争和浪费。此外,开发一个P2P系统也是相对复杂的工作,而且新的 系统应用也缺乏推广的平台。因此,只有减少P2P应用系统的开发和布署的复杂性,提供一 致性的P2P服务体系和简化的编程接口,才能解决上述问题。同时,最为关键的是,对等网 络服务体系必须重视目前由P2P应用引起的两大问题网络效率和内容安全。经过对现有技术的文献检索发现,国外有Sean Rhea等人在Proceedings of ACMSIGC0MM 2005,August 2005 (美国计算机协会通信特别兴趣组会议,2005年8月)发表 的《OpenDHT :A Public DHT Service and Its Uses))(《OpenDHT —种开放式分布哈希表 服务和它的使用》)提出了一个开放性的DHT(Distributed Hash Table,即分布式哈希表) 服务体系,通过几个简单的用户接口服务命令发送、接收、删除等,可方便实现一个基于DHT 的P2P分布式应用,但是它的缺点是仅限制于DHT协议,对于非DHT协议的对等网络不适 用,并且它仅提供了简单的接口服务,使得它不能够支持复杂的应用服务。针对网络效率和 内容安全问题,一些限制措施已经为ISP(互联网服务提供商)所采用。但是问题在于采 用限制的方式,会使ISP有失去用户的危险,而且也面临法律的问题;采用Cache (缓存)方 式,设备投入跟不上P2P流量的迅猛上升,而且这种额外投入也影响了 ISP的利益。另一方 面,P2P的节点加入是随意的,以致P2P网络成为恶意代码、黄色淫秽内容、反动信息、盗版 资源等传播的沃土,内容安全问题非常值得忧虑。这也是目前P2P系统受到批评的一个重 要原因。
发明内容
本发明的目的在于克服现有技术存在的上述不足,提供一种对等网络服务原语系 统。本发明通过内在的服务原语和扩展的服务原语,能够简化P2P应用系统的开发和部署,具有灵活的扩展性,且可用于DHT协议和非DHT协议的P2P系统,使应用范围扩大了很多。 本发明通过提供一个一致性的应用接口模块,使得多个P2P应用可以在同一个Overlay (覆 盖层)得到支撑,提高了系统资源的重用性和优化了资源配置效率。通过采取主动的布署 安全监控服务和安全审核策略,能够净化P2P网络环境,提供健康的P2P应用。 本发明是通过以下技术方案实现的本发明包括应用服务模块、对等通信模块、传输网络模块、用户接口模块和应用 接口模块,其中应用服务模块与用户接口模块相连传输应用服务通信信息,用户接口模块 与对等通信模块相连传输应用服务通信信息,对等通信模块与应用接口模块相连传输应用 服务的API (应用程序接口)信息,应用接口模块与传输网络模块相连传输应用服务的API fn息ο所述的应用服务模块包括通用服务子模块、注册服务子模块和扩展服务子模块, 其中通用服务子模块、注册服务子模块和扩展服务子模块分别与用户接口模块相连传输 通用服务信息、注册服务信息和扩展服务信息。所述的通用服务子模块包括文件共享单元、流媒体分发单元和IP语音单元,其 中文件共享单元与用户接口模块相连传输文件共享信息,流媒体分发单元与用户接口模 块相连传输流媒体分发信息,IP语音单元与用户接口模块相连传输IP语音信息。所述的用户接口模块包括通用服务接口子模块、注册服务接口子模块和扩展服 务接口子模块,其中通用服务接口子模块与应用服务模块相连传输通用服务信息,通用服 务接口子模块与对等通信模块相连传输通用服务的API信息,注册服务接口子模块与应用 服务模块相连传输注册服务消息,注册服务接口子模块与对等通信模块相连传输注册服务 的API消息,扩展服务接口子模块与应用服务模块相连传输扩展服务信息,扩展服务接口 子模块与对等通信模块相连传输扩展服务的API信息。 所述的传输网络模块是基于OSI (开放式系统互联)的传输网络模块,或者是基于 TCP/IP (传输控制协议/因特网互联协议)的传输网络模块。所述的应用接口模块包括节点适配器子模块、ISP子模块、存储子模块、接收缓 存子模块和发送缓存子模块,其中节点适配器子模块与ISP子模块相连传输服务的适配 信息,存储模块与ISP子模块相连传输ISP的服务信息,接收缓存子模块与节点适配器子模 块相连传输接收的服务信息,发送缓存子模块与节点适配器子模块相连传输发送的服务信 肩、O本发明的工作过程当两个对等节点间交换消息时,消息先由第一个节点的应用 服务模块发出,再通过对等通信模块传递。两个对等节点之间的应用服务模块通过对等通 信模块进行对等节点间的原语协作,通过用户接口模块和应用接口模块与原语体系进行沟 通。用户接口模块实现用户以及服务的注册、注销,应用接口模块提供给用户利用本服务原 语体系基础设施实现新的应用服务,并可进一步通过用户界面接口注册到体系中。由传输 网络模块交付到第二个对等节点的传输网络模块,并向上提交给此节点的对等通信模块。 对等通信模块通过传输网络模块的原语实现通信。由第二个对等节点对等通信模块最终提 交给应用服务模块。至此,两个对等节点的应用服务通信完成,全部的通信过程由通信原语 实现。与现有技术相比,本发明的有益效果为
1、提供开放的API接口给P2P应用开发调用,封装了 Overlay层通信的复杂性,较 大地简化了 P2P应用开发。P2P应用开发只需要关注应用服务原语实现,而Overlay层的监 控和维护由0penP2P进行管理;2、提供在Overlay层按需布署特定功能服务节点,以改善P2P网络性能,并具有动 态可扩展性;3、提供文件共享、流媒体分发以及VoIP的集成服务,并支持用户利用开放API开 发自己的P2P应用服务和服务分发;4、提供P2P内容的安全性审核机制,防止恶意信息的发布和访问。
具体实施例方式以下对本发明的实施例进一步 描述本实施例在以本发明技术方案为前提下进行 实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施 例。实施例本实施例包括应用服务模块、对等通信模块、传输网络模块、用户接口模块和应 用接口模块,其中应用服务模块与用户接口模块相连传输应用服务通信信息,用户接口模 块与对等通信模块相连传输应用服务通信信息,对等通信模块与应用接口模块相连传输应 用服务的API信息,应用接口模块与传输网络模块相连传输应用服务的API信息。所述的应用服务模块包括通用服务子模块、注册服务子模块和扩展服务子模块, 其中通用服务子模块、注册服务子模块和扩展服务子模块分别与用户接口模块相连传输 通用服务信息、注册服务信息和扩展服务信息。所述的通用服务子模块包括文件共享单元、流媒体分发单元和IP语音单元,其 中文件共享单元与用户接口模块相连传输文件共享信息,流媒体分发单元与用户接口模 块相连传输流媒体分发信息,IP语音单元与用户接口模块相连传输IP语音信息。所述的注册服务子模块对用户提供的服务进行注册。所述的扩展服务子模块是用户提供的服务。所述的用户接口模块包括通用服务接口子模块、注册服务接口子模块和扩展服 务接口子模块,其中通用服务接口子模块与通用服务子模块相连传输通用服务信息,通用 服务接口子模块与对等通信模块相连传输通用服务的API信息,注册服务接口子模块与注 册服务子模块相连传输注册服务消息,注册服务接口子模块与对等通信模块相连传输注册 服务的API消息,扩展服务接口子模块与扩展服务子模块相连传输扩展服务信息,扩展服 务接口子模块与对等通信模块相连传输扩展服务的API信息。所述的传输网络模块是基于OSI的传输网络模块。所述的应用接口模块包括节点适配器子模块、ISP子模块、存储子模块、接收缓 存子模块和发送缓存子模块,其中节点适配器子模块与ISP子模块相连传输服务的适配 信息,存储模块与ISP子模块相连传输ISP的服务信息,接收缓存子模块与节点适配器子模块 相连传输接收的服务信息,发送缓存子模块与节点适配器子模块相连传输发送的服务信息。所述的节点适配器子模块维护overlay拓扑以及传递消息。所述的ISP子模块通过ISP提供的各项支撑服务,维护覆盖层拓扑以及加速消息传递和网络下载。所述的存储子模块保存ISP提供的服务信息。所述的接收缓存子模块在信道拥塞或竞争时缓存接收的信息,等候处理。所述的发送缓存子模块在信道拥塞或竞争时缓存待发送的信息,等候处理。所述的传输网络层是对等网络服务原语体系的底层接口层,此层进行网络消息的 传输,通过节点适配器子模块实现三种类型的传输(即传输控制协议、用户数据包协议单 播和用户数据包协议多播)。本实施例中把P2P的实现细节封装到对等通信模块,对等通信模块向上通过消息 与具体应用交互,向下通过消息与传输网络模块交互,在内部通过消息与ISP交互。本实施例所述的API信息的格式如下1)、用户发送应用消息格式如下 KeyOverlayID 资源 IDRouteType 0代表单播;1代表多播AppID 应用唯一标识,需要利用注册服务获得全局唯一 IDApplication 应用命令及参数2)、Overlay消息格式如下 MsgType 0代表拓扑维护;1代表应用消息SrcOverlayID 源 IDDstOverlayID 目标 ID Data 命令及参数 对于MsgType = 0时拓扑维护消息的命令集有 HelloNeighbour 探测邻居集 Join:加入覆盖层 Leave 离开覆盖层 GetNeibours 获得邻居集 ElectSuperNode 选择超级节点对于MsgType = 1时的应用消息,通过发送和分发实现回拨。如果目标地址是本节 点,则分发应用请求在本地执行;否则,视应用消息的路由类型而定,如果为多播时,需要分 发在本地执行,同时发送消息到其它多播成员;如果为单播,则只需要发送消息到下一跳。3)、ISP消息格式如下 MsgType 0代表请求;1代表响应
MsgCode O代表GetTopInfo (获得拓扑信息)
1代表GetS印Service (特殊服务)2代表GetSuperNodeInfo (获得超级节点描述信息信息)3 代表 PutNodeInfo (将节点信息上传到 ISP Facilities)4 代表 RegisterNode (注册节点)5 代表 DestoryNode (注销节点)6代表CheckSecurity (检测信息是否安全)本实施例中应用服务模块并不直接将ISP服务提供给开发者使用,而是通过封装的API给开发者使用,这样可以保护ISP资源以及安全性,并通过一致性接口实现可控可 管理性。P2P服务原语系统通过开放的API添加扩展服务子模块,并以插件的形式扩展进 入P2P服务原语体系的开放系统。系统采用消息驱动的事件处理模型。目前提供四种基 本API JoinOverlay (加入覆盖层),,LeaveOverlay (离开覆盖层),SendMsg (发送消息), ReceiveMsg(接收消息)。当一个对等节点在加入到0penP2P时,将首先连接聚合服务器, 由聚合的信息判断出此对等节点所在的地理位置,确定出此对等节点由哪个负责点进行监 控以及辅助其通信。本实施例的具体优点1、通过下载基于0penP2P的服务系统,可以在同一 Overlay结构下,支持流媒体分 发、文件共享、VoIP等。提供文件共享、流分发以及VoIP的集成服务,并支持用户利用开放 API开发自己的P2P应用服务和服务分发。使得P2P用户可以发布自己的兴趣频道,形成自 己的圈子;此外还从P2P服务原语体系提供的优质网络服务获益。2、可以根据通用的应用API接口,开发自己的基于0penP2P的应用服务,并将之发 布到Overlay网络,凝聚自己的兴趣圈。3、Overlay网络与ISP协作,由ISP布署可靠监管服务,引导流量分发匹配 Overlay与物理层,给参与的Peer节点提供比通常P2P系统更优化和有保障的网络性能。 提供开放的API接口给P2P应用开发调用,封装了 Overlay层通信的复杂性,较大地简化了 P2P应用开发。P2P应用开发只需要关注应用服务原语实现,而Overlay层的监控和维护由 P2P服务原语体系进行管理。当前流行的P2P系统商如PPLive,可以利用P2P服务原语体 系的接口服务以改进其流媒体分发的质量以及与ISP的紧张关系。4、通过ISP提供的多种可扩展的特殊服务器集群,如抗Churn服务器、NAT穿透 辅助服务器等,保障应用服务性能有保障,并可根据应用地需求,不断进行扩展。提供在 Overlay层按需布署特定功能服务节点,以改善P2P网络性能,并具有动态可扩展性。使得 ISP可以通过此P2P服务原语体系架构进行监管策略的布署,这种监管策略主要目标是引 导流量或者分享收益。5、通过各ISP监测点以及OpenP2P自身提供的安全策略服务器,允许不同层次地 使用安全策略,保障P2P的安全应用。提供P2P内容的安全性审核机制,防止恶意信息的发 布和访问。
权利要求
一种对等网络服务原语系统,其特征在于,包括应用服务模块、对等通信模块、传输网络模块、用户接口模块和应用接口模块,其中应用服务模块与用户接口模块相连传输应用服务通信信息,用户接口模块与对等通信模块相连传输应用服务通信信息,对等通信模块与应用接口模块相连传输应用服务的API信息,应用接口模块与传输网络模块相连传输应用服务的API信息。
2.根据权利要求1所述的对等网络服务原语系统,其特征是,所述的应用服务模块包 括通用服务子模块、注册服务子模块和扩展服务子模块,其中通用服务子模块、注册服 务子模块和扩展服务子模块分别与用户接口模块相连传输通用服务信息、注册服务信息和 扩展服务信息。
3.根据权利要求2所述的对等网络服务原语系统,其特征是,所述的通用服务子模块 包括文件共享单元、流媒体分发单元和IP语音单元,其中文件共享单元与用户接口模块 相连传输文件共享信息,流媒体分发单元与用户接口模块相连传输流媒体分发信息,IP语 音单元与用户接口模块相连传输IP语音信息。
4.根据权利要求1所述的对等网络服务原语系统,其特征是,所述的用户接口模块包 括通用服务接口子模块、注册服务接口子模块和扩展服务接口子模块,其中通用服务接 口子模块与应用服务模块相连传输通用服务信息,通用服务接口子模块与对等通信模块相 连传输通用服务的API信息,注册服务接口子模块与应用服务模块相连传输注册服务消 息,注册服务接口子模块与对等通信模块相连传输注册服务的API消息,扩展服务接口子 模块与应用服务模块相连传输扩展服务信息,扩展服务接口子模块与对等通信模块相连传 输扩展服务的API信息。
5.根据权利要求1所述的对等网络服务原语系统,其特征是,所述的传输网络模块是 基于0SI的传输网络模块,或者是基于TCP/IP的传输网络模块。
6.根据权利要求1所述的对等网络服务原语系统,其特征是,所述的应用接口模块包 括节点适配器子模块、ISP子模块、存储子模块、接收缓存子模块和发送缓存子模块,其 中节点适配器子模块与ISP子模块相连传输服务的适配信息,存储模块与ISP子模块相连 传输ISP的服务信息,接收缓存子模块与节点适配器子模块相连传输接收的服务信息,发 送缓存子模块与节点适配器子模块相连传输发送的服务信息。
全文摘要
一种网络通信技术领域的对等网络服务原语系统,包括应用服务模块、对等通信模块、传输网络模块、用户接口模块和应用接口模块,其中应用服务模块与用户接口模块相连传输应用服务通信信息,用户接口模块与对等通信模块相连传输应用服务通信信息,对等通信模块与应用接口模块相连传输应用服务的API信息,应用接口模块与传输网络模块相连传输应用服务的API信息。本发明能够简化P2P应用系统的开发和部署,具有灵活的扩展性,且可用于DHT协议和非DHT协议的P2P系统;使得多个P2P应用可以在同一个覆盖层得到支撑,提高了系统资源的重用性和优化了资源配置效率;能够净化P2P网络环境,提供健康的P2P应用。
文档编号H04L29/06GK101867623SQ201010225980
公开日2010年10月20日 申请日期2010年7月15日 优先权日2010年7月15日
发明者何高辉, 张亮, 李建华, 王明政, 邹福泰 申请人:上海交通大学