一种基于点对点网络的通讯系统及通讯方法
技术领域
本发明涉及Ad Hoc(点对点)网络技术领域,尤其涉及一种利用Ad Hoc网络进行通讯的系统及通讯方法。
背景技术
Ad Hoc网是一种多跳的、无中心的、自组织无线网络,又称为多跳网(Multi-hopNetwork)、无基础设施网或自组织网。整个网络没有固定的基础设施,每个节点都是移动的,并且都能以任意方式动态地保持与其它节点的联系。在这种网络中,由于终端无线覆盖取值范围的有限性,两个无法直接进行通信的用户终端可以借助其它节点进行分组转发。每一个节点同时是一个路由器,它们能完成发现以及维持到其它节点路由的功能。
Ad Hoc网络是一种特殊的无线移动网络。网络中所有结点的地位平等,无需设置任何的中心控制结点。网络中的结点不仅具有普通移动终端所需的功能,而且具有报文转发能力。与普通的移动网络和固定网络相比,它具有以下特点:
1)网络的独立性
Ad Hoc网络相对常规通信网络而言,最大的区别就是可以在任何时刻、任何地点不需要硬件基础网络设施的支持,快速构建起一个移动通信网络。它的建立不依赖于现有的网络通信设施,具有一定的独立性。
2)动态变化的网络拓扑结构
在Ad Hoc网络中,移动主机可以在网中随意移动。主机的移动会导致主机之间的链路增加或消失,主机之间的关系不断发生变化。在自组网中,主机可能同时还是路由器,因此,移动会使网络拓扑结构不断发生变化,而且变化的方式和速度都是不可预测的。
3)网络的分布式特性
在Ad Hoc网络中没有中心控制节点,主机通过分布式协议互联。一旦网络的某个或某些节点发生故障,其余的节点仍然能够正常工作。
Ad Hoc网络一般有两种结构:平面结构和分级结构。在平面结构中,所有结点的地位平等,所以又可以称为对等式结构。分级结构中,网络被划分为簇。每个簇由一个簇头和多个簇节点成员组成,这些簇头形成了高一级的网络。在高一级网络中,又可以分簇,再次形成更高一级的网络,直至最高级。
Ad Hoc网络自身的独特性,使得它在军事领域的应用中保持重要地位,在民用领域中的作用逐步扩大。然而,它作为一种新型网络,还存在很多问题,新的应用也对它的研究和发展不断提出新的挑战。随着研究的深入,AdHoc网络将在无线通信领域中有着更加广阔的前景。
发明内容
本发明所要解决的技术问题是,提供一种基于点对点网络的通讯系统及通讯方法,以降低目前电话业务的高费用。
为了解决上述技术问题,本发明公开了一种基于点对点网络的通讯系统,包括两个以上的分级点对点网络,每个分级点对点网络中至少包括一簇头设备和多个终端设备,其中:
各分级点对点网络中的簇头设备,与其他分级点对点网络中的簇头设备之间进行用户信息交互,并将本簇头设备下的用户信息和交互得到的其他簇头设备下的用户信息广播给本簇头设备下的终端设备,以及接收本分级点对点网络中的终端设备发起的通讯请求,查询该通讯请求的对端终端设备的用户信息,根据该用户信息确定对应的簇头设备,将该通讯请求发送给所确定的簇头设备,并与该簇头设备建立通讯链路,实现本分级点对点网络中的终端设备与对端终端设备之间的通讯;
终端设备,接收本分级点对点网络中的簇头设备广播的所有用户信息,从接收到的用户信息中选择通讯的用户,并向本分级点对点网络中的簇头设备发送与所选择的用户进行的通讯请求,以及按照本分级点对点网络中的簇头设备的指令与所选择的用户进行通讯。
较佳地,上述系统中,所述簇头设备为服务器。
较佳地,上述系统中,所述用户信息至少包括终端设备标识信息。
较佳地,上述系统中,各分级点对点网络中的簇头设备,在本簇头设备下的用户信息发生更新时,将更新后的用户信息实时发送给其他簇头设备,以及在接收到其他簇头设备发送的更新的用户信息时,将更新后的用户信息实时广播给本簇头设备下的终端设备。
较佳地,上述系统中,终端设备与对端终端设备之间的通讯包括分组交换(PS)域和电路交换(CS)域。
本发明还公开了一种基于点对点网络的通讯系统的通讯方法,包括:
基于点对点网络的通讯系统中各分级点对点网络中的簇头设备之间进行用户信息交互,各簇头设备将本簇头设备下的用户信息和交互得到的其他簇头设备下的用户信息广播给本簇头设备下的终端设备;
基于点对点网络的通讯系统中的第一终端设备接收本分级点对点网络中的簇头设备广播的所有用户信息后,从接收到的用户信息中选择通讯的第二终端设备,向本分级点对点网络中的簇头设备发送与所选择的第二终端设备进行的通讯请求;
基于点对点网络的通讯系统中分级点对点网络中的簇头设备收到本分级点对点网络中的终端设备发起的通讯请求,查询该通讯请求的第二终端设备的用户信息,根据该用户信息确定对应的簇头设备,将该通讯请求发送给所确定的簇头设备,与该簇头设备建立通讯链路;
所述第一终端设备与第二终端设备进行通讯。
较佳地,上述方法中,所述簇头设备为服务器。
较佳地,上述方法中,所述用户信息至少包括终端设备标识信息。
较佳地,上述还方法,当某一簇头设备下的用户信息发生更新时,该簇头设备将更新后的用户信息实时发送给其他簇头设备;
其他簇头设备接收到更新的用户信息时,将更新后的用户信息实时广播给本簇头设备下的终端设备。
较佳地,上述方法中,所述第一终端设备与第二终端设备进行的通讯包括分组交换(PS)域和电路交换(CS)域。
本申请技术方案基于Ad Hoc网络提供一种通讯方案,为用户节省了电话业务的费用,且操作简单易行。
附图说明
图1为本发明提供的基于Ad Hoc网络的通讯系统的架构示意图;
图2为本发明的一个代表客户端于服务器交互的具体流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下文将结合附图对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
实施例1
申请人发现目前的电话业务费用很高,如果使用PS业务方面的数据电话,能够节省很多费用。但是目前国内的3G网络很不完善,频繁的2G-3G切换很容易造成数据电话的不稳定性。目前也有手机通过Ad Hoc技术跟电脑服务器进行点对点的通讯。但这种通讯传输的是数据业务,而非通话业务,并且通常是由双方设置一个固定的IP进行通讯,这样设置比较麻烦。特别是当PC的服务器IP经常动态的更新。更重要的是,这种通讯方式无法满足跨服务器之间的点对点通讯。在这种分层结构中,如果同一个PC接入多个手机终端,由于IP地址是预先设定的很容易造成双方冲突。
基于上述发现,申请人提出一种动态IP分配,基于Ad Hoc网络的通讯系统。该系统包括两个以上的分级点对点网络,每个分级点对点网络中至少包括一簇头设备和多个终端设备。
其中,各分级点对点网络中的簇头设备,与其他分级点对点网络中的簇头设备之间进行用户信息交互,并将本簇头设备下的用户信息和交互得到的其他簇头设备下的用户信息广播给本簇头设备下的终端设备,以及接收本分级点对点网络中的终端设备发起的通讯请求,查询该通讯请求的对端终端设备的用户信息,根据该用户信息确定对应的簇头设备,将该通讯请求发送给所确定的簇头设备,并与该簇头设备建立通讯链路,实现本分级点对点网络中的终端设备与对端终端设备之间的通讯;
终端设备,接收本分级点对点网络中的簇头设备广播的所有用户信息,从接收到的用户信息中选择通讯的对端终端设备的用户信息,并向本分级点对点网络中的簇头设备发送与所选择的终端设备进行的通讯请求,以及按照本分级点对点网络中的簇头设备的指令与所选择的用户进行通讯。
上述簇头设备一般可为Ad Hoc服务器。而用户信息则至少包括终端设备标识信息。
另外,实际应用过程中,各分级Ad Hoc网络中的用户是动态更新的,因此上述系统中各分级点对点网络中的簇头设备,在本簇头设备下的用户信息发生更新时,还会将更新后的用户信息实时发送给其他簇头设备,以及在接收到其他簇头设备发送的更新的用户信息时,将更新后的用户信息实时广播给本簇头设备下的终端设备。
还要指出的是,上述系统中终端设备与对端终端设备进行的通讯包括分组交换(PS)域和电路交换(CS)域。
下面以两个分级Ad Hoc网络构成的通讯系统为例,详细说明此通讯系统的工作原理。具体地,本实施例提供的通讯系统架构如图1所示。整个网络架构是一个简略的网络结构,采用分级网络形式。服务器A、服务器B是Ad Hoc网络的2个服务器,这2个服务器地位平等,可作为簇头设备。
比如2家公司之间各架设一台Ad Hoc服务器。实际应用中并不限于两个服务器,可以很多,相互直接根据业务需要都可以建立连接。手机A1(即终端设备A1)、手机A2...手机AN是服务器A下面的对等节点,组成一个分级Ad Hoc网络。手机B1(即终端设备B2)、手机B2...手机BN是服务器B下面的对等节点.组成另一个分级Ad Hoc网络。如果手机A1要跟A2联系可以通过服务器A转发给A2.手机A1要跟B1联系通过服务器A转发给服务器B,再由服务器B转发给手机B1。
其中,服务器A、服务器B作为簇头设备包括以下功能:
广播以及资源分配功能,即发送广播消息,通知本服务器下的终端设备(例如手机)本服务器的存在,分配相关的IP资源,起到DHCP服务器功能。当用户建立成功后,为用户分配通讯的相关资源,以及用户信息(例如终端设备标识信息)。
鉴权功能,是在用户试图接入时,配置用户信息,并对用户进行鉴权,是否允许其接入。
通讯功能,主要指跟终端设备(例如手机)用户交互的信息数据,包括语音数据,信令消息等。
路由功能,主要转发用户信息到其他对等ad hoc服务器,起到一个路由的功能。同时路由到对等的Ad Hoc服务器,以获取对等的Ad Hoc服务器下相关的用户信息。
数据库功能,主要包括两个方面,一鉴权数据库,主要负责鉴权用户的合法性,以及用户权限等。二用户数据库,主要负责存储鉴权通过的用户,该数据可以来自本群组类(即本Ad Hoc服务器)的用户数据和其它群组类(即其他Ad Hoc服务器)的数据,其中,其它群组的数据来自于Ad Hoc服务器之间的路由交互信息。在其他服务器中的用户数据库发生改变时并能及时通知到本Ad Hoc服务器进行更新,同时在本服务器用户数据发生变化后,也会定时通知与他连接的终端设备,这样本Ad Hoc服务和手机就能得到最新的在线手机用户信息,连接的手机用户就可以和其他用户进行通讯。
终端设备主要负责下面几个业务:
一接入处理,主要指Ad Hoc服务器搜寻,Ad Hoc服务器鉴权,Ad Hoc服务器登录功能。
二界面显示,主要是上层APP应用程序的界面显示,显示出Ad Hoc服务器的一些特征信息,例如服务器名称,群组名称,个人信息,QOS,可联系用户群(即Ad Hoc服务器向终端设备广播的所有用户信息)等。
三通讯过程,主要是客户端(即终端设备)经Ad Hoc服务器跟其它客户端(即其他终端设备)进行通话的功能和服务器基本通讯过程。目前市场上面也有其它的IM软件,比如手机上面的米聊,微信,但是都是PS(Packet Switch,分组交换)域的。本申请技术方案的通讯过程则包括了CS(Circuit Switch,电路交换)域。其中,本文所称的通讯过程包括动态接收服务器的广播消息,更新自己的UI状态信息,以及当用户状态更改后,发送相关的消息至服务器。
实施例2
本实施例介绍一种基于点对点网络的通讯系统的通讯方法,包括:
基于点对点网络的通讯系统中各分级点对点网络中的簇头设备之间进行用户信息交互,各簇头设备将本簇头设备下的用户信息和交互得到的其他簇头设备下的用户信息广播给本簇头设备下的终端设备;
基于点对点网络的通讯系统中的第一终端设备接收本分级点对点网络中的簇头设备广播的所有用户信息后,从接收到的用户信息中选择通讯的第二终端设备,向本分级点对点网络中的簇头设备发送与所选择的第二终端设备进行的通讯请求;
基于点对点网络的通讯系统中分级点对点网络中的簇头设备收到本分级点对点网络中的终端设备发起的通讯请求,查询该通讯请求的第二终端设备的用户信息,根据该用户信息确定对应的簇头设备,将该通讯请求发送给所确定的簇头设备,与该簇头设备建立通讯链路;
第一终端设备与第二终端设备进行通讯。
其中,簇头设备为服务器。用户信息至少包括终端设备标识信息。
另外,在某一簇头设备下的用户信息发生更新时,该簇头设备还会将更新后的用户信息实时发送给其他簇头设备;
其他簇头设备接收到更新的用户信息时,将更新后的用户信息实时广播给本簇头设备下的终端设备。
需要说明的是,上述第一终端设备与第二终端设备进行的通讯包括分组交换(PS)域和电路交换(CS)域。
下面结合图2说明实现应用中客户端(即终端设备)和服务器(即簇头设备)交互的主要过程:
步骤1:客户端搜寻Ad Hoc服务器;
客户端按照一定的条件搜索周围可用的Ad Hoc服务器,这些条件可以是距离,跳数,名称等,对于条件的设定可由用户来设定,在终端设备(例如手机终端)界面处理模块来实现。对于搜索到的服务器用列表或其他方式界面显示给用户供用户使用。
步骤2:客户端登陆Ad Hoc服务器;
用户选择搜索到的Ad Hoc服务器中的一个进行登陆,登陆过程中服务器会对手机用户进行鉴权过程。客户端识别服务器是否为可用合法的服务器。服务器鉴别客户端是否为可用合法的客户端。鉴权方式按照手机和服务器实现约定的方式,可以是用户从运营商获得的账户,直接按照账户信息登录,也可以是其它任何鉴权方式。
步骤3:客户端获取在线用户联系人;
此过程手机用户向服务器发出请求获得在线用户联系人,服务器收到请求后会将此时在线的手机用户的信息发给手机,手机接受到后,由界面处理模块处理,显示在界面上,供用户使用。同时服务器会把用户的一些配置信息显示发送给终端设备。
步骤4:客户端与对端客户进行通讯。
手机根据需求选择一个在线的用户进行呼叫,服务器收到呼叫请求后进行转发寻找到被叫,此时如果被叫用户也在同一个Ad Hoc服务器归属的网络下就进行直接转接到被叫进行呼叫被叫,被叫响应后就可以进行正常的通话过程,否则,需要路由到被叫所属的AdHoc服务器,由被叫所属的Ad Hoc服务器对被叫进行寻呼。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。
以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。