数据网络用户进行数据交换的方法及其网络系统的制作方法

文档序号:7948752阅读:332来源:国知局
专利名称:数据网络用户进行数据交换的方法及其网络系统的制作方法
技术领域
本发明涉及数据通信技术领域,具体涉及数据网络用户特别是私网用户之间以及私网用户与现有公网之间进行互通的数据交换方法及实现该方法的数据网络系统。
背景技术
通信系统的目标,是为了在一条缆线上传输尽量多的信息。通信系统关键功能包括将所有通信源进行集中,并统一传输;在目的地将特定信息分离,传递给单独的接收者。通信系统最终发展目标是“任何时间、任何地点、和任何人”进行通信。
在数据网络出现以前的电话网络中,通信通常被认为是个人对个人的通信。数据网络出现之后,变成通常是人和计算机完成通信,经典的数据网络应用如网页浏览、资料检索、收发邮件等,都是和服务器通信。
随着宽带接入网和宽带骨干网的建成,数据网络发生了非常大的变化。采用高端路由器和核心路由器后,单个接口带宽就可达到2.5Gbps或10Gbps。网络结构变得简单,用户间报文传递经历的节点数减少。在骨干带宽接近或大于所有用户使用带宽后,可以认为数据网络的带宽是能够得到保障的。这种情况下,用户之间在物理上能够很好地连接,用户间交互式应用能顺利开展。如果用户直接与公网连接,并具有固定的IP地址,用户与用户之间的交互式自由交流就能实现。但IP地址资源有限,不可能为所有上网用户提供固定的IP地址,而且企业、网吧、小区用户等诸多私网存在,这些私网中的用户都是使用代理服务器,没有固定的IP地址,使得用户之间交互应用必须借助另外的服务器才能完成。
企业网是一个典型的私网,是使用私网地址网段、采用网络地址转换(NAT)技术连接公用数据网络的私有TCP/IP网络。图1为企业网接入公网的原理图,如图所示,企业网包括用户、DNS服务器、DHCP服务器和私网网络等,用户和服务器都有私网IP地址,他们与公网连接必须通过代理服务器和路由器。其中,上网如访问公网上的Web服务器必须通过代理服务器,访问公网上的E-mail(电子邮件)服务器收发E-mail需要通过路由器。
私网地址是指内部网络(企业网、私网)的主机地址,而公网地址是局域网连接到外部的地址(在因特网上全球唯一的IP地址)。IP地址分配组织规定以下的三个范围网络地址保留用做私网地址10.0.0.0~10.255.255.255172.16.0.0~172.31.255.255192.168.0.0~192.168.255.255也就是说这三个范围网络的地址不会在因特网上被分配,但可以在一个企业(局域网)内部使用,不同企业的内部网络地址可以相同。如果一个公司选择上述三个范围之外的其他网段作为内部网络地址,则有可能引起路由表的混乱。
当内部网络的主机访问因特网或与外部网络的主机通信时,需要用到NAT。例如局域网内部网络的地址在10.0.0.0网段,而对外的正式IP地址是203.196.3.23。内部主机10.1.1.48以WWW方式访问网外的服务器202.18.245.251。主机10.1.1.48发出一个数据报文,选择一个源端口6084,目的端口为80。在通过代理服务器后,该报文的源地址和源端口可能被改变为203.196.3.2332814,目的地址与端口不做改变。
在代理服务器中维护着一张地址端口对应表(对应的两者分别为内部私有IP地址,和发往外部的IP报文的源端口号,后者也是从外部收到IP报文的目的端口号)。当外部网络的WWW服务器返回结果时,代理服务器检测到IP报文中由它生成的目的端口号32814后,便会根据地址端口映射表,将结果数据报文中的目的IP地址及端口转化为10.1.1.486084,并将转换后的IP报文发送到内部网络,这样内部主机10.1.1.48就可以访问外部的服务器了。同理,所有内部网上的用户都可以借代理服务器的一个公网地址访问外部。
简单来说,地址转换技术(NAT)是将内部IP地址和端口替换为外部网络IP地址和端口,以及反向的转换,也就是(私网地址+端口)<-->(公网地址+端口)NAT技术的优点在于1、能将内部网络的主机访问网外资源;2、为内部主机提供了“隐私(Privacy)”保护,提高安全性;3、解决IP地址资源问题。
但使用NAT后,由于内部用户发向外部的所有IP报文源端口都被改变、并且内部用户收到的所有来自外部的IP报文目的端口号都被改变,所以在NAT内部用户只能作为客户,而不能做服务器。在作为客户的情况下,能发起连接,却不能接受连接。NAT内部用户可以从服务器接收文件,也可以向服务器传送文件,但必须借助于外部服务器才能完成这种文件传输功能。也即用户必须先连接到服务器,在用户与服务器建立连接以前,服务器无法找到该用户,无法进一步实现上层应用;比如用户在私网使用VoIP应用时,由于NAT使用动态IP地址池,很多私网用户共用一个公网IP地址,与VoIP需要把用户会话映射到一致的IP地址不兼容。所以NAT技术不能同时实现上层应用,如网络电话(VoIP)和网络会议(Netmeeting)视频等应用。

发明内容
本发明的目的就在于提出一种新的数据网络用户进行数据交换的方法,通过该方法可以克服以上缺点,实现特殊网络如企业网等私网用户、3G(第三代移动通信)网络等新型网络用户连接到现有公网,实现特殊网络用户之间、特殊网络用户与公网用户之间的互通。
本发明的另一目的是提出一种实现上述数据交换方法的数据网络系统,该系统只需在现有网络基础上设置相应的服务器,并在用户计算机上安装客户端软件即可,并不需要对现有网络做改变。
为实现上述目的,本发明提供的一种数据网络用户进行数据交换的方法,为每一用户登记一IP号码(IPN),并确定一归属IP号码(IPN)服务器,用户端的IPN存储在各自的归属IPN服务器中,用户之间通过IPN和IPN服务器进行连接的过程为A、主叫用户登录其归属IPN服务器;B、主叫通过其归属IPN服务器和被叫的IPN查找被叫归属IPN服务器;C、被叫归属IPN服务器判断被叫是否在线,如果在线则将主叫的IPN、主叫归属IPN服务器的IP地址通告被叫,否则结束连接;D、被叫对通告不回应,则由主叫归属IPN服务器对主叫回应拒绝连接,否则继续下一步;E、如果被叫回应接收呼叫,则由被叫归属IPN服务器向主叫回应允许连接,如果被叫回应不接收,则由被叫归属IPN服务器向主叫回应拒绝接收,并结束连接;F、被叫回应允许连接后,主叫和被叫同时向主叫归属IPN服务器申请HTTPex(Hypertext Transfer Protocol and its Extensive part,扩展超文本传输协议)服务标识(ID)和本次呼叫连接所用的HTTPex服务器;G、主叫归属IPN服务器将确定的主叫HTTPex服务ID、被叫HTIPex服务ID分别发送给主叫和被叫,同时将主叫和被叫的身份识别信息发送给确定的HTTPex服务器;H、主叫和被叫分别与HTTPex服务器建立连接,并通过HTTPex服务器进行数据交换;I、断开与HTTPex服务器的连接,结束本次呼叫连接。
在上述数据网络用户进行数据交换的方法中,所述步骤H,主叫和被叫通过与HTTPex服务器的连接进行数据交换包括对上层数据包的交换,上层数据包从本端用户传送到对端用户的过程为1)主叫或被叫用户将上层数据包封装并发送给HTTPex服务器;2)HTTPex服务器将数据包由服务器中的本端接收邮箱转移到服务器中的对端发送邮箱;3)HTTPex服务器检查到对端发送邮箱有数据包后,将数据包的IP地址和端口进行替换;4)在接收到对端用户发过来的POP(弹出)命令后,HTTPex服务器将替换后的数据包发送给对端用户;5)对端用户将数据包进行解析,并传给上层应用。
其中,步骤1)主叫或被叫用户将上层数据包封装后发给HTTPex服务器包括以下步骤a、主叫或被叫用户上层应用连接对端虚拟IP地址(VIP);b、用户的HTTPex客户端截取上层应用数据包进行以下处理(i)将对端VIP目的地址替换为HTIPex服务器的IP地址,非VIP地址数据包不进行替换;(ii)将上层应用目的端口作为数据包中的目的端口字段(Destination Port Segment,简称DPS);(iii)将上层应用源端口作为数据包中的源端口字段(Source PortSegment,简称SPS);(iiii)将数据包的目的端口替换为本端上网端口;
(iiiii)将数据包源端口替换为已建立HTTPex连接的源端口。
c、将处理后的数据包加上一个PUSH(推)命令后进行封装,然后通过代理服务器或网关发送到HTTPex服务器。
其中,步骤3)HTTPex服务器检查到对端发送邮箱有数据包后,将数据包的IP地址和端口进行替换,具体包括以下过程(i)数据包目的IP地址即HTIPex服务器的IP地址替换为本端用户上网使用的源IP地址,即用户连接到HTIPex服务器所使用的IP地址;(ii)数据包目的端口替换为对端用户的源端口;(iii)数据包源端口被替换为HTTP端口;其中,步骤5)对端用户将数据包进行解析是指将数据包解析成上层应用的报文,具体包括以下过程(i)将数据包中的目的端口字段DPS提取出来,替换为该报文的目的端口;(ii)将数据包中的源端口字段SPS提取出来,替换为该报文的源端口;(iii)将数据包源IP地址替换为上层应用设置的VIP地址。
为实现另一发明目的,本发明还提供一种数据网络服务系统,该系统包括用户终端;后台,用于查看网络运行情况、手工或自动预置用户帐号、手工更改用户属性、以及网络出现故障时的诊断排错;
认证数据库,用于存放用户的各种身份信息;连接网络,用于连接上述设备并通信;其特征在于还包括IPN服务器,用于用户登录、申请用户HITPex服务ID;HTTPex服务器,用于在用户之间交换数据。
上述数据网络服务系统,还包括注册服务器,用于新用户的注册。
上述数据网络服务系统,还包括计费模块,用于对用户进行实时计费。
上述数据网络服务系统,还包括应用层网关,用于通过HTTPex上网的用户无缝连接到专用网络,为用户提供多种网络服务。
由于本发明提供的数据网络系统是在现有网络的基础上增加了HTTPex服务器和IPN服务器,并为每个用户确定一归属IPN服务器。在数据网络用户进行数据交换的方法中,用户先通过归属IPN服务器建立用户与用户、用户与HTTPex服务器之间的连接,并通过HTTPex服务器进行数据包的交换,因此可以实现任何上网用户之间上层应用的直接互通,而不受特别网络用户的限制。
下面结合附图和实施例对本发明做详细说明。


图1为现有企业私网用户接入公网的示意图;图2为本发明的数据网络系统结构图;图3为本发明用户之间建立连接并进行数据交换的方法流程图;图4为本发明中用户之间通过HTTPex服务器进行上层应用数据包交换的流程图。
具体实施例方式
图1已经在前边描述,因此在此不在赘述。
如图2所示,本发明的数据网络系统至少包括用户终端、连接网络、后台、认证数据库、IPN(IP号码)服务器、HTTPex(Hypertext TransferProtocol and its Extensive part,扩展超文本传输协议)服务器。在本发明中用户终端是安装了HTTPex应用的普通上网用户、企业上网用户、网吧上网用户、3G(第三代移动通信)智能终端等,HTTPex是本发明提出的一种用户上层应用通过连接与对端通信的新协议,该协议的具体内容将在后面详细叙述。后台是用于查看网络运行情况、手工或自动预置用户帐号、手工更改用户属性以及网络出现故障时诊断排错;认证数据库是用于存放用户的各种身份信息,包括用户的怅号、密码、计费金额等信息;连接网络用来连接上述设备并通信,包括接入网、本地骨干网、互联网、PTSN(公众通信服务网)等将各种服务器和用户终端连接在一起的网络设备;在本发明中后台、认证数据库、连接网络都是现有技术,本领域的普通技术人员都可以实现,因此不再详细介绍。IPN服务器,用于用户登录、申请用户HTTPex服务ID,用户可借助IPN服务器对其IPN帐号注入资金,注入资金的方式可以是用户购买智能充值卡,然后登录到归属IPN服务器,通过输入用户IPN和智能卡卡号来实现充值,IPN服务器可以有多台,具体根据用户数量和IPN服务器的处理能力来定,并可以实现多台IPN服务器之间的业务均衡。HTTPex服务器用于在用户之间交换数据,它还能将计费信息传送到相关的计费设备,每台HTTPex服务器都归属于特定的IPN服务器,而每台IPN服务器可以有多台归属HTTPex服务器,主要是根据业务量来分配。
在本发明的具体实施例中,根据图2,所述的数据网络系统还包括注册服务器、计费模块和应用层网关。其中注册服务器用于新用户的注册,是一个免费的WEB服务站点,任何上网用户都可访问。注册服务器连接有数据库,新用户注册后,数据库同时更新,具体是通过注册服务器上的CGI程序实现。如果用户是通过购买预置帐号的智能用户卡使用IPN服务,由于预置帐号已经存在于认证数据库,并有一定的资金,这样就不需要在注册服务器上进行注册了,因此注册服务器不是必要的。计费模块用于对用户进行实时计费,计费时同步修改数据库中的用户属性信息。应用层网关用来将通过HTTPex上网的普通用户无缝连接到专用网络的专门应用,如图2所示的GSM短消息网关、PSTN网络、168声讯视讯服务台、视频游戏中心、3G网络等。任何安装了HTTPex应用的终端用户,都可在经过身份认证后,使用数据网络系统提供的任何网络服务,包括访问同一网络内不同的应用,也包括访问不同的网络,但不管是使用那种网络服务都会按照该种服务的价格进行计费。计费的同时完成收费,收费自动从用户帐号中扣除。
为了描述方便,可以将本发明数据网络系统中除骨干网络、用户接入部分、网络服务以外的其他部分统一叫做IPN系统。在图2中使用粗线代替以太网三层交换机,因为以太网三层交换机透明地连接了网络中的各个元素,各个用户相当于连接在一条线上,这条线的带宽等于以太网三层交换机的交换容量。
如果用传统电信的方法看待本发明数据网络系统,那么小区网、企业网的接入类似于端局和私有小交换机(PABX),而本地骨干网络提供中继传输,本发明中IPN系统的地位和作用类似于中继交换局,或骨干网间接口局,实现业务的交换。单纯从功能上来看,IPN服务器类似于传统电信中的智能网设备,而HTTPex服务器类似于GMSC(Gateway Mobile Switching Center,移动交换中心网间接口局)交换设备。
由于以上的数据网络系统是在现有网络的基础上增加了HTTPex服务器和IPN服务器,并为每个用户确定了一个归属IPN服务器,上网用户可以通过IPN服务器进行登录,并通过HTTPex服务器进行通信,因此实现任何上网用户之间上层应用的直接互通,而不受特别网络用户如企业网络用户、小区网络用户等的限制。
用户之间通过本发明的数据网络系统进行数据交换时先为每一用户登记一IP号码(IPN),并确定一归属IP号码(IPN)服务器,用户端的IPN存储在各自的归属IPN服务器中。然后通过以下步骤实现数据的交换,具体参见附图3,图中每一方框分别对应下面的步骤A、B、...、I步骤A,主叫用户通过用户终端登录到到归属IPN服务器。登录可以是根据主叫用户的IPN和密码进行登录,也可以是根据E-mail地址及其密码进行登录。具体的过程为1)主叫用户通过终端输入IPN和密码或者E-mail地址及其密码;
2)其归属IPN服务器对输入的IPN和密码或者E-mail地址及其密码进行验证;3)验证通过后保持主叫用户终端与其归属IPN服务器之间的连接。
步骤B,主叫登录到其归属IPN服务器后,然后通过其归属IPN服务器和输入的被叫IPN查找被叫归属IPN服务器,查找的过程通常为先由主叫用户通过用户终端输入被叫用户的IPN,主叫用户归属IPN服务器对输入的被叫IPN进行解析,并通过查找数据库获得被叫归属IPN服务器的IP地址,然后根据找到的IP地址向被叫归属IPN服务器进行通告,从而建立两者之间的通信连接。
如果主叫用户不是直接输入被叫的IPN,而是通过对方的E-mail地址来建立连接,则在主叫归属IPN服务器查找被叫被叫归属IPN服务器的过程中,必须先由主叫输入被叫的E-mail地址,再根据输入的E-mail地址在预先存储的数据库中查找被叫的IPN,然后通过IPN查找被叫归属IPN服务器。
步骤C,由于用户上网时必须先登录其归属IPN服务器,所以其归属IPN服务器知道用户的上网情况,因此应该通过被叫归属IPN服务器判断被叫是否在线,如果被叫不在线上,则无法建立与主叫的连接,所以结束所有连接过程;如果在线则将主叫的IPN、主叫归属IPN服务器的IP地址通告被叫。
步骤D,尽管被叫在线,但对其归属IPN服务器通告的主叫信息不回应,则经过一段时间后由被叫归属IPN服务器经主叫归属IPN服务器对主叫回应拒绝连接,如果被叫对通告进行回应,则可以继续连接过程。
步骤E,被叫回应并不等于一定会建立与主叫之间的连接,回应一般有两种,一种是回应愿意与主叫建立连接,另一种是拒绝连接。如果被叫回应接收呼叫,则由被叫归属IPN服务器向主叫回应允许连接,如果被叫回应不接收,则由被叫归属IPN服务器向主叫回应拒绝接收,并结束连接过程。
步骤F,本发明中增加HTIPex服务器是为了通过它来交换用户数据,所以被叫回应允许连接后,就应该确定一个用于交换数据的HTIPex服务器,HTIPex服务器是由主叫归属IPN服务器确定的,每台IPN服务器可以只有一台归属HTTPex服务器,也可以有多台,用于交换数据的HTTPex服务器就从主叫IPN服务器的归属HTTPex服务器中指定。因此主叫和被叫同时向主叫归属IPN服务器申请HTTPex(Hypertext Transfer Protocol and its Extensive part,扩展超文本传输协议)服务标识(ID)和本次呼叫连接所用的HTTPex服务器。
步骤G,主叫归属IPN服务器将确定的主叫HTTPex服务ID、被叫HTTPex服务ID分别发送给主叫和被叫,同时将主叫和被叫的身份识别信息发送给确定的HTTPex服务器。
步骤H,主叫和被叫分别与HTTPex服务器建立连接,并通过HTTPex服务器进行数据交换。数据的交换包括对上层数据包的交换,上层数据包从本端用户(主叫或被叫)发送到对端用户(被叫或主叫)的过程一般包括以下步骤,参见图4首先,见图4步骤S41,作为本端的主叫或被叫将上层数据包封装后发给上述步骤F中确定的HTTPex服务器,具体过程是先由本端上层应用连接对端的虚拟IP地址(VIP),连接过程与普通的在公网上连接其他用户一样,只不过是VIP地址需要在用户端预设;然后,见图4步骤S42,本端用户的HTTPex客户端截取到上层应用数据包后进行以下处理(i)将对端VIP目的地址替换为HTIPex服务器的IP地址,如果不是VIP地址数据包则不进行替换;(ii)将上层应用目的端口作为数据包中的目的端口字段(Destination PortSegment,简称DPS);(iii)将上层应用源端口作为数据包中的源端口字段(Source Port Segment,简称SPS);(iiii)将数据包的目的端口替换为本端或代理服务器的上网端口;(iiiii)将数据包源端口替换为已建立HTTPex连接的源端口;经上述处理后,再将数据包加上一个PUSH(推)命令进行封装,然后通过代理服务器或网关发送到HTTPex服务器。上述的源端口是建立TCP连接时由操作系统自动分配的,每个连接都拥有独立的源端口,使用这个端口就表示使用已经建立的连接。TCP报文中肯定会有“目的端口”,而“目的端口字段DPS”是HTTPex协议特有的,HTTPex是TCP之上的协议,所以DPS的位置是在TCP报文的正文中,而“目的端口”是在TCP报文头中。上述的PUSH命令是用户用来请求HTTPex服务器接收来自用户信息的,包括提供用户的HTTPex服务ID和提供用户身份识别信息。
再后,见图4步骤S43,HTTPex服务器将收到的数据包由服务器中的本端接收邮箱转移到服务器中的对端发送邮箱;HTTPex服务器通过其中心处理单元(CPU)以轮询方式检查到对端发送邮箱有数据包后,将数据包的IP地址和端口进行替换。HTTPex服务器也可以先设置一邮箱门铃,通过它来检测对端发送邮箱是否有数据包,当数据包到达邮箱时,该邮箱门铃会自动通知服务器中心处理单元(CPU)。由于数据包是对端用户发往HTTPex服务器的,所以数据包的目的IP地址和目的端口分别为HTTPex服务器的IP地址和端口,数据包的源端口为本端端口,因此需要进行替换,替换包括i)将数据包目的地址替换成本端用户上网使用的源IP地址,即用户连接到HTTPex服务器所使用的IP地址;ii)数据包目的端口替换为对端用户的源端口;iii)数据包源端口替换为HTTPex服务器的HTTP端口(80)。
见图4步骤S44,在接收到对端用户发过来的POP(弹出)命令后,HTTPex服务器将经上述替换后的数据包发送给对端用户;最后,见图4步骤S45,对端用户将发送过来的数据包解析成上层应用的报文,并传给对端上层应用,从而实现了从本端用户的上层应用将数据包发送到对端用户的上层应用的全过程。解析的具体内容包括(i)将数据包中的目的端口字段DPS提取出来,替换为该报文的目的端口;(ii)将数据包中的源端口字段SPS提取出来,替换为该报文的源端口;(iii)将数据包源IP地址替换为上层应用设置的VIP地址。
步骤I,断开与HTTPex服务器的连接,结束本次呼叫连接。在主叫用户和被叫用户之间进行数据交换期间,一直保持所建立的连接,一旦一方用户挂断,或者是用户长时间不响应,则由HTTPex服务器挂断连接,结束本次呼叫的数据交换。
以上是对本发明的数据网络系统、网络用户连接及数据交换的过程进行了较全面的描述。为了利用上述数据网络系统实现HTTPex用户的数据交换,本发明实质是定义了三种新型协议1、IPN服务器协议ISP(IPN Server′s Protocol);2、扩展的超文本传输协议HTTPex(Hyper-Text Transfer Protocoland its extensive part);3、HTIPex服务器协议HSP(HTTPex Server′s Protocol);由于本发明中每一个用户都需要一个IPN号码才能利用上述IPN数据网络系统进行上网和数据交换,所以在介绍三个协议之前,先对IPN号码进行一个简单说明。
用户使用IPN系统时必须先申请IPN号码。IPN号码是一个拥有一定金额的帐号。用户在使用IPN系统提供的服务之前,必须通过IPN号码进行身份验证。身份验证后,可与需要访问的服务建立连接。连接建立之后,会获取HTTPex服务ID。通过该ID,可以进行业务的真正连接,并通过计费模块进行实时计费和实时收费。
IPN号码是借鉴PSTN编号规划优点的一种综合性编码。为了保证能满足现在和将来的需求,完整的IPN号码可以定义为一个20字节长的字符串,其中包含国家号码3字节,如中国为086,美国001,俄罗斯007,香港地区为852;区号3字节,如北京为010,上海021,深圳755;
归属号码4字节,0~9999,归属IPN服务器的编号,由服务提供商确定。该号码段类似于电话号码中的局号;用户识别号码10字节,用户可以填入自己的名字或其它。本专利建议IPN号码统一使用阿拉伯数字,如果本段不足10字节则补充空格,这样就可以通过小数字键盘(如类似于普通电话机的键盘)使用IPN服务。
用户识别号码由用户登记到特定服务器。登记用户识别号码时可同时登记E-mail地址和其它简单信息,并可提交简单的Web页面。登记完毕后用户将从服务器获得归属号码和登录密码。用户可以自由更改密码,但不能更改归属号码。因为注册用户已经登记了E-mail地址等信息,所以在用户登录,或需要连接另外用户时,除使用IPN号码外,也可以使用E-mail地址或其它用户已注册信息,要求归属IPN服务器进行查找。
用户在注册服务器上注册并获得通过后,必须在一定时间内对其IPN号码注入资金,否则该注册信息会被数据库系统自动删除。用户也可以用购买充值卡的方式为IPN帐号注入资金,具体操作方面的规则类似于无线智能网。
IPN数据网络系统可以拥有类似于电话亭一样的固定终端。固定终端有固定的IPN号码,固定终端使用这个号码自动登录到IPN服务器。被叫号码使用被叫付费方式时,该终端能做主叫;而当被叫号码实行主叫付费时,使用该固定号码只能接受呼入,而不能呼出。用户必须在固定终端上使用自己的IPN号码,并登录到用户归属IPN服务器后,经IPN服务器认证通过后才能呼出。
但是用户通过使用IPN服务可以呼叫被叫付费的IPN号码,或者通过向对端发短消息,要求对端与本端建立连接。用户也可以在固定终端上查看用户注册时提交的简单页面,也能上网浏览IPN系统提供的免费网站。
下面分别对三个新型协议进行详细的阐述。
一、IPN服务器协议ISP(IPN Server′s Protocol)规定每个IPN服务器有一定数量的归属用户、和若干台运行HSP协议的归属HTTPex服务器。IPN服务器负责对归属用户的登录进行认证,并定期测试用户是否在线。IPN服务器还完成主叫和被叫用户的HTTPex连接建立工作。通过IPN服务器之间信息的传递,IPN用户之间可互相发送短消息。
主叫IPN用户与被叫IPN用户建立HTTPex连接经历以下过程(1)主叫利用任何一部能上网的智能终端,使用HTTPex客户端,通过上网端口登录到归属IPN服务器。
登录过程需要用户输入IPN号码和密码,或者输入用户注册时提供的E-mail地址等信息。登录完成后IPN用户将与IPN服务器保持连接,这种连接保持依赖于定时(每5秒或每10秒)互发TCPACK报文。如连接一直存在,则归属IPN服务器认为用户一直在线。如用户连续几次未向IPN服务器发送ACK报文,则认为用户离线,此后用户必须重新登录才能使用IPN服务。
(2)主叫打开客户端呼叫窗口,输入被叫的IPN号码,或要求通过被叫E-mail地址查找被叫。对于使用E-mail地址查找IPN号码,具体是通过访问存储了IPN号码和E-mail地址的特定数据库实现。主叫将呼叫信息发往归属IPN服务器。
(3)主叫归属IPN服务器解析被叫IPN号码各字段信息,通过查找数据库,确定被叫用户所在的归属IPN服务器的IP地址;或者通过将E-mail地址转化为IPN号码,再执行同样的处理。
(4)主叫归属IPN服务器向被叫归属IPN服务器通告。
(5)被叫归属IPN服务器确定被叫是否在线。如果被叫在线,则向被叫用户通告。通告信息中包含主叫信息、主叫所在IPN服务器的IP地址信息、及其它必要信息。
(6)被叫收到呼叫通告。
如果被叫接受呼叫,则被叫通过其归属IPN服务器向主叫回应允许连接;如果被叫不接受呼叫,则向主叫回应拒绝连接;如果被叫不回应,则由主叫所在的归属IPN服务器一段时间后对主叫回应拒绝连接。
(7)被叫允许连接后,主叫被叫同时向主叫归属IPN服务器申请HTTPex服务ID。
(8)主叫归属IPN服务器确定本次呼叫建立连接所在HTTPex服务器,确定主叫的HTTPex服务ID、和被叫的HTTPex服务ID。
(9)主叫归属IPN服务器将两个服务ID、以及HTTPex服务器的IP地址分别传送给主叫和被叫。同时,将主叫和被叫身份识别信息,含主叫和被叫上网使用的公网IP地址、主叫和被叫使用的HTTPex服务ID、两个服务ID之间连接建立信息,传给确定的HTTPex服务器。
(10)主叫被叫分别与HTTPex服务器建立连接。连接建立后将一直保持,直到有一方用户挂断连接,或者用户长时间不响应,由HTIPex服务器挂断连接。
本专利称这个连接为HTTPex连接。此后上层应用收发数据包都采用HTTPex连接。该连接的标识是用户具有固定源端口号。
(11)此后HTTPex服务器交换两个连接的数据,即相当于主叫和被叫之间上层应用连接建立。主叫被叫可通过HTTPex协议交换上层应用数据包。
(12)当用户希望断开连接时,向IPN服务器发请求,要求取消HTTPex服务ID,IPN服务器通知对端用户和HTTPex服务器撤消连接。
(13)当HTTPex服务器侦测到一段时间内用户连接没有流量后,自动删除用户的连接。同时将删除连接信息传送给用户的归属IPN服务器。IPN服务器在这种情况下取消双方用户的HTTPex服务器ID。这是为了防止用户在来不及通知突然掉线情况下,一直占用HTTPex服务ID资源情况发生。
HTTPex客户端设置归属IPN服务器的IP地址,这是一个公网合法IP地址。在用户登录IPN服务器时,也可以用域名代替IPN服务器的IP地址。
在实现与其它用户上层应用建立连接之前,HTTPex用户必须建立与IPN服务器和HTTPex服务器的连接。由于这里所说的用户是指私网如企业网、小区网等,所以这种连接是通过代理服务器实现的,目前,代理服务器通常分为两种,如果用户是向代理服务器的IP地址发TCP SYN报文,与代理服务器建立连接,而不是直接与Web服务器建立连接,则将这种类型的代理服务器称为第一类代理服务器;如果Web浏览器是直接向Web服务器的IP地址发TCP SYN报文,则称这类代理服务器为第二类代理服务器。如果用户是通过第一类代理服务器上网,需要在HTTPex客户端设置代理服务器的IP地址和使用的端口(默认为8080)。如果是通过第二类代理服务器上网,需要将代理服务器的IP地址作为本机的IP缺省网关。同时HTTPex客户还要设置从上层应用截取的目的IP地址,即虚拟IP地址(VIPVirtual Internet Protocol Address),和目的端口(默认截取目的端口为全部)。
二、HTTPex协议规定用户上层应用通过HTTPex连接与对端通信时,上层数据包经历流程如下(1)用户上层应用连接对端的IP地址是VIP,即虚拟IP地址。这个地址是HTTPex客户规定从上层截取的目的IP地址。上层应用所有需要传送给对端报文的目的IP地址均为VIP地址。
(2)HTIPex客户端截取上层应用数据包后进行以下处理(i)将VIP目的地址替换为HTIPex服务器的IP地址,非VIP地址数据包不进行替换;(ii)将上层应用目的端口作为数据包中的目的端口字段DPS(Destination Port Segment);(iii)将上层应用源端口作为数据包中的源端口字段SPS(SourcePort Segment)。
(iiii)将数据包的目的端口替换为上网端口;(iiiii)将数据包源端口替换为已建立的HTTPex连接的源端口。
在通过上网端口发数据包前,需要由HTTPex协议发送PUSH命令,要求HTTPex服务器接收并处理后面的数据包。
(3)HTTPex客户端将重新封装后的数据报文通过代理服务器、或默认网关,传送到HTTPex服务器。即将替换后的数据包通过HTTPex连接发送出去。
(4)HTTPex服务器将数据包由本端的接收邮箱转移到对端发送邮箱。
(5)HTTPex服务器检查到发送邮箱中有数据包后,执行数据包IP地址和端口替换(i)数据包目的IP地址替换为用户上网使用的源IP地址,即用户连接到HTTPex服务器所使用的IP地址;(ii)数据包目的端口替换为对端用户的源端口,即用户连接到HTTPex服务器所使用的源端口,这个源端口在连接建立期间是固定不变的;(iii)数据包源端口被替换为HTTP端口;对报文内容(含报文内容中的目的端口字段DPS和源端口字段SPS)则不作改变。
(6)HTTPex服务器收到来自客户端的POP命令后,将数据包发送给对端用户。主叫和被叫所有数据包都是通过与HTTPex服务器建立的唯一连接,使用PUSH和POP命令进行发送和接收的。所有连接的数据由HTTPex服务器统一交换。
(7)对端HTTPex客户端将从服务器获取的报文进行解析,解析为上层应用的数据报文(i)将数据包中的目的端口字段DPS提取出来,替换为该报文的目的端口;(ii)将数据包中的源端口字段SPS提取出来,替换为该报文的源端口;(iii)将数据包源IP地址替换为上层应用设置的VIP地址。
(8)对端HTTPex客户处理完毕后,将报文传给上层应用。
(9)呼叫双方上层应用通过多次执行数据包交互,完成上层连接建立,及上层应用数据交互。
IPN用户能与多个用户同时建立连接,同样支持HTTPex协议的服务器能够为多个用户同时提供服务。
HTTP协议本身是支持多连接的,用户可以同时打开多个浏览器窗口,甚至不同窗口浏览的内容也可以是一样的,只是不同浏览器窗口使用不同TCP连接。不同连接表现在TCP字段上,就是不同连接拥有不同的源端口。
只要用户上层应用支持多连接,就可以同时使用多个HTTPex连接。上层应用支持多个连接时,必须在HTTPex客户端设定需要截取的多个VIP地址,然后要求上层应用连接这些VIP地址。HTTPex客户端将这些VIP地址分别映射到不同HTTPex服务ID,每个服务ID代表一个与HTTPex服务器的连接,这些连接各自拥有不同的源端口。
可以在IPN服务器上对用户设定级别,限制用户最多能申请到的服务ID个数。一般用户通常只能有一个服务ID。而服务器能够申请到最多服务ID的个数,应根据服务器服务能力确定,以便有效实现服务器的负载均衡,避免服务器超载。
HTTPex服务ID申请是在呼叫双方IPN验证通过后,并且被叫同意主叫的呼叫请求后,双方各自向主叫归属IPN服务器请求得到的。
支持HTTPex的整个服务器组可以作为一个IPN用户。IPN服务器知道服务器组内的各个服务器的IP地址和呼叫数量,所以IPN服务器可将呼叫平均分配到服务器组内各个服务器。当最终用户通过IPN系统呼叫服务器组,并获得通过后,需到服务器组归属IPN服务器上申请服务ID,而不是在其归属IPN服务器上申请服务ID。这样才可以实现服务器组负载均衡和服务器组内所有服务器的集中计费。服务器组提供服务时,对应的HTTPex服务器产生计费信息,并通过IPN服务器将信息传送到主叫用户所在IPN系统的计费模块。
HTTPex服务器为主叫和被叫用户建立接收发送邮箱,并根据HSP协议交换邮箱中数据包。HTTPex服务器定时查询用户收发邮箱中的数据包,如果一端接收邮箱有数据包则立即将数据包交换到呼叫对方发送邮箱。
HTTPex服务器根据用户建立连接时提出的带宽要求确定每秒查询用户邮箱的次数,如用户要求1Mbps带宽,则用户每秒收发的数据包数可能达到1000个以上,要求HTTPex服务器每秒查询收发邮箱的次数不少于1000次。
IPN服务器定期检查数据库上归属用户的变动情况。数据库如有变动,自动按照数据库进行调整。在系统安装完毕后,系统可以自动运行。系统管理员如果要增加或减少用户,只需要更改数据库,而不需要直接操作IPN服务器和HTTPex服务器。数据库文件以类似于脚本文件的格式保存,文件内容可通过文本查看工具直接查看并分析其中的内容,以方便流程出错时的手工排错工作。因为每个IPN服务器只支持有限数量的用户,所以该数据库文件的最大长度也将存在限制。
呼叫双方呼叫连接建立之后,需要向主叫归属IPN服务器申请HTTPex服务ID。用户为了获取ID,必须完成与IPN服务器的交互过程,这个交互过程参照动态主机配置请求协议DHCP,做如下规定1、HTTPex客户向IPN服务器发出ID-DISCOVER包;2、IPN服务器向用户回应ID-OFFER包,该包内包含HTTPex-server的IP地址、用户的ID、以及其它配置信息;3、用户向IPN服务器发出ID-REQUEST数据包,确认已经分配的ID和其它参数;4、IPN服务器向用户回应ID-ACK数据包,确认此次分配有效;DHCP协议规定,各个数据报文都是长度为576字节以内的UDP报文,HTTPex客户对服务ID的申请参照这个规定。
在DHCP协议中存在租约LEASE概念,租约是指DHCP服务器给予DHCP客户所赋IP地址的使用期限。IPN客户也需要定期向IPN服务器请求租约。如果HTTPex客户一段时间内不请求租约,IPN服务器会要求HTIPex服务器删除相应的服务ID,断开HTTPex连接。
服务ID可以是一个两字节的数字,不同的HTTPex服务器可以复用同样的ID号码。使用ID有利于减少开销,提高网络传送效率。ID只对IPN服务器和HTTPex服务器有意义,呼叫双方不需要知道对方的ID。
扩展的超文本传输协议HTTPex(Hyper-Text Transfer Protocoland its extensive part)完成的功能,及在本发明中的地位和作用如下HTTPex协议作为一个应用程序,运行在上网用户的智能终端(通常为计算机)。该协议可完成将多种上层应用端口数据包统一封装为Web上网端口的数据包,并将封装后的数据包传到HTTPex服务器。同样,将从HTTPex服务器接收到的数据包解开,转换成为上层应用的数据包,并转交上层应用处理。
HTTPex协议在承载数据中新定义“上层端口”字段。该字段共四字节,保存源端口号和目的端口号。其中源端口号字段SPS占用两字节,目的端口号字段DPS占用另外两字节。上层应用使用HTTPex连接收发报文时,报文的源目的端口要被替换,所以上层应用的源端口号和目的端口号必须保存到新字段中。
HTTPex协议可将各种上层应用统一到Web上网端口。用户只要能上网浏览,就能使用任何一种PC-to-PC的上层应用。此外如果服务器组支持HTTPex协议(作HTTPex客户端),则HTTPex服务器能根据它为用户提供的数据流量,为其提供计费和收费。HTTPex服务器还可将用户访问服务器组的流量平均分配到服务器组内各台服务器,即能够为服务器组提供软件方式的负载均衡应用。
HTTPex协议与HTTP协议规程一致,并兼容HTTP协议。两者最主要的差别在于HTTPex协议在HTTP协议已有命令之外新增加了PUSH、POP等请求。而HTTP协议常用请求只有GET和POST,其中GET请求用于获取网页。该命令后跟网页位置作参数。服务器接受请求后,返回请求页面。除页面位置作参数之外,该命令还跟随协议版本如HTTP/1.0等作为参数,以发送给服务器更多信息。
POST请求要求服务器接收信息。除了POST后跟参数之外,浏览器还会持续向服务器发送数据,让服务器进行处理。通常,POST方法和服务器CGI程序密不可分,服务器会启动CGI程序处理用户发送来的数据。
另外在HTTP 1.1中定义了很多访问方法类型和一些新的命令,如PUT、DELETE等。PUT请求用于将网页放置到正确位置,DELETE请求用于删除相关文件。但这些命令目前基本不用,大部分Web服务器软件并没有实现这些命令。如果服务器不支持客户发送的请求方法,将向客户返回错误,并立即关闭连接。
而HTTPex协议新规定的PUSH、POP请求,实现以下功能(1)HTTPex PUSH请求PUSH请求在操作上类似于HTTP1.0 POST请求,不同之处是POST请求要求CGI程序进行处理,而PUSH请求要求HTTPex服务器根据HSP协议的规定进行处理。
本专利的本意并不是要刻意设置一个在以往HTTP协议中从未出现的PUSH命令。因为Web服务器有虚拟域的概念,完全可以用POST请求,将数据包发送到服务器上特定的虚拟域。这种方法的处理效果与PUSH命令相同。只是,如果采用这种方法,需要在虚拟域设置方面进行较多考虑。
本专利是为了表达方便,才引入PUSH命令。
HTTPex PUSH请求要求服务器接收来自客户的信息。该请求跟随参数包括a、客户HTTPex服务ID;
b、客户身份识别信息;客户身份识别信息是类似于E-tag和Cookie的用户标识,是为了让HTTPex服务器对用户进行识别而设置的。为保证安全性,HTTPex服务器会自动定时更新该信息。
HTTPex客户发送完PUSH请求,并得到HTTPex服务器回应之后,将会发送数据包给HTTPex服务器,让服务器处理。接收到PUSH请求后HTTPex服务器的处理流程是a、对PUSH请求进行回应;b、将随后从客户接收到的数据包放到客户的接收邮箱;c、在服务器对接收邮箱查询时,这些数据包转到对端用户的发送邮箱;d、数据包进入对端用户发送邮箱时,执行IP地址和端口号的替换。具体是(i)将目的IP地址替换为对端用户上网使用的IP地址;(ii)将目的端口号替换为对端用户上网(所建立HTTPex连接)使用的源端口号;(iii)将源端口号替换为HTTP端口号(80);经替换后,该数据包如果直接放在网络上传送,可到达对端用户。
e、HTTPex服务器收到对端用户POP命令之后,对用户进行回应,并将数据包通过对端连接发送给对端用户。
用户在PUSH请求之后发送的数据包可以是各种上层应用的数据包。
HTIPex客户需设置一个VIP地址,HTTPex应用根据VIP地址对上层数据包进行截取。上层应用发送的,目的IP地址为VIP地址的所有数据包,均会被HTTPex应用截取。截取之后将进行IP地址和端口号的替换,重新形成Web上网端口数据包。之后数据包通过上网端口发送到HTTPex服务器。
HTTPex客户支持“针对HTTPex连接的防火墙”。即对于具体截取那些上层应用,用户还可根据端口号进行设置。如果用户发送报文的目的端口号在这些端口号之外、或者用户从对端收到的不是这些端口的源端口号报文,需向用户告警,并对该报文进行适当处理。
实现中需注意当对端作为客户端时,源端口号在某范围内随机分配(在Win98中则是在某范围内端口号持续增长),这时对对端源端口号的判断需考虑更多因素。
“针对HTTPex连接的防火墙”功能默认为关闭。即默认情况下,HTTPex应用截取上层数据包的依据是只要判断上层报文目的IP地址为VIP地址,就进行截取,并通过HTTPex连接进行传送。不对端口号做进一步判断。
从上层应用端口上截取报文并封装为Web上网端口报文时,上层源目的端口号保存到承载数据中新定义的“上层端口”字段。该字段共四字节,其中又包括源端口号字段SPS和目的端口号字段DPS,SPS占两字节,DPS占另外两字节。
(2)HTTPex POP请求该请求与HTTP1.0标准请求GET类似。不同之处在于GET请求要求从Web服务器获取网页,而POP命令要求从HTTPex服务器上客户的发送邮箱中接收数据包。
本专利的本意并不是要刻意设置一个在以往HTTP协议中从未出现的POP命令。因为Web服务器有虚拟域概念,完全可以用GET请求从特定虚拟域获取数据包。处理效果与POP命令相同,只是需要在虚拟域设置方面进行更多考虑。
本专利是为了表达方便,才引入POP命令。
POP命令跟随参数包括a、客户HTTPex服务ID;b、客户身份识别信息;HTiPex服务器接受POP请求后的处理是a、针对POP请求对用户进行回应;b、在回应中,可进行更改用户身份识别信息的处理;c、查询客户发送邮箱。如果发送邮箱中有数据包,则将这些数据包传送给用户。如果发送邮箱中没有数据包,则向用户返回发送邮箱无报文的说明;HTTPex应用从底层收到报文后,执行以下处理a、判断源目的IP地址、源目的端口号,确定该报文是不是由HTTPex服务器经过已建立的HTTPex连接发送来的报文。如果是,则截获该数据包并进行进一步处理。如果不是,则按照规则,将报文透传给上层,或将报文丢弃;b、进一步对该报文进行处理。将报文承载数据中四字节“上层端口”字段恢复为报文的源端口和目的端口,并删除该字段;c、根据用户设置的“针对HTTPex连接的防火墙”,判断源端口号,如果不是用户设定范围以内的端口号,向用户告警。
d、将报文的源IP地址替换为VIP地址;e、这时数据包已成为标准上层应用数据包,将该数据包传递给上层应用处理。
这样,便可以实现HTTPex客户之间各种上层应用的无缝互通。
除了PUSH、POP请求之外,HTTPex协议还规定了SAVE、SEEK、以及其它请求。这些请求可完成将数据包执行特定的转换、和将数据包存储到存储域网络(SANStorage Area Network)。
HTTPex客户端将不可避免地运行在Windows操作系统下。
在Windows 9x下,应用程序和Win32API不能直接访问网络底层。要想进行底层操作,就必须编制相应的客户虚拟驱动程序(VirtualDevice Driver),由虚拟驱动程序(VxD)充当底层的网络接口控制器(网卡NIC)和上层Win32应用程序之间的接口。工作于Ring3层的Win32应用程序虽然不能直接访问底层的硬件资源,但可以通过调用VxD来驱动和控制NDIS,达到同NIC通讯的目的。
为了使操作系统具有良好的兼容性,Win32应用程序调用的虚拟驱动程序(VxD)也并不直接同NIC打交道,而是在VxD和网络硬件之间定义了一个接口抽象层NDIS3.10。NDIS的主要作用是把软件从网络适配器具体细节中解放出来,使驱动程序能同计算机上任意NIC通信。当然前提是NIC必须与NDIS兼容。这样可以简化VxD设计,缩短开发周期。
应用程序调用VxD时,是通过虚拟机管理器(VMM)查询VxD的设备描述符块DDB(Device Descriptor Block),来获得VxD的主入口点。VMM利用这个主入口点将VM及Windows的状态通知VxD,然后VxD通过相应工作响应这些事件。Win32API提供了动态加载/卸载VxD的接口函数CreateFile()/CloseHandle()。
利用VxD驱动,Ring3层应用程序可直接截获MAC数据包。这样就可以撇开Windows内嵌的TCP/IP处理过程,开发HTTPex应用。HTTPex应用核心部分就是一个VxD驱动程序。
HTTPex客户程序的关键点在于和上层应用程序的接口要完备,在接收情况下,需要将处理后的数据包传递给VoIP和Netmeeting上层应用。在发送情况下,需要从上层应用获取数据包,处理后传递给底层发送。
HTTPex服务器上用户数据包交换功能需要考虑的方面与HTTPex客户有较大差异。
这是因为HTTPex功能与路由器功能类似,都是实现报文交换。只是其交换功能是在应用层实现,而路由器的交换(转发)功能是在IP层实现。
在硬件上,HTTPex服务器可采用普通的计算机,安装Windows或Unix、Linux操作系统,编写上层应用实现。HTTPex服务器也可使用路由器的软硬件平台,如CPX8216 CPCI硬件平台插以太网卡,作为HTTPex服务器硬件平台。此时操作系统为VxWorks实时操作系统。
HTTPex服务器使用嵌入式系统的好处是硬件集成度、稳定程度大大提高,软件规模减小,安全性提高,没有通用操作系统的安全漏洞。可以考虑在路由器VOS和VRP(Versatile Routing Platform)平台实现HTTPex服务器功能。
三、HTTPex服务器协议HSP(HTTPex Server′s Protocol)完成的功能,及在数据网络系统中的作用是运行该协议的HTTPex服务器根据从IPN服务器传来的用户信息,同用户建立连接,并交换连接双方的数据报文。具体是根据用户HTTPex服务ID,把一端用户接收邮箱中的数据包发送到另一端的发送邮箱、并把另一端接收邮箱中数据收到本端的发送邮箱。用户收发信箱可缓存的报文数、以及对每个信箱每秒查询的次数,应根据服务器内存空间大小、服务器处理能力、用户级别、以及网络实际情况确定。
HSP协议根据HTTPex服务ID,将两个连接用户接收发送信箱内的缓存报文互相交换。这种交换是一种数据区交换,在HTTPex服务器内部进行,外部不可见。这个过程进行IP地址和端口的替换,但不进行其它处理。
一种高效的HSP服务器处理方法是HSP收到用户报文时,设置针对该接收邮箱的门铃,通知CPU该用户的接收邮箱有新数据包。这样CPU就不必每次查询所有用户的接收邮箱,可提高效率。这种设置门铃的方式类似于计算机原理中的中断原理。
HSP协议可实现私网用户如企业网用户等、IPv6网络用户、其他新型网络用户之间,和他们与现有公网用户之间,各种PC-to-PC的上层应用。只要用户运行HTTPex应用,即可与任何运行HTTPex的用户直接建立连接,实现各种上层应用无缝互通。
HSP交换用户数据的同时,可记录用户的流量和连接时长信息,这些信息和呼叫双方的IPN号码、HTTPex服务ID号码统一传送到计费模块,作为计费和收费的依据。计费功能具体由计费模块完成。关键计费信息包括呼叫双方的IPN号码、输入字节数、输出字节数、输入包数、输出包数、及该次连接的会话时长等。
同样,HTTPex服务器可以实现针对网站信息流量的计费。
特定网站的服务器组支持HTTPex协议,并作为被叫与主叫用户建立连接时,可实现针对这些网站信息访问流量的计费。这不同于传统的,按照用户端口总流量和带宽进行的计费。这种计费方法应当说是最合理的计费方法。
以上是对三种协议的详细说明。
根据以上对本发明内容及实施例的说明可以知道,由于本发明提供的数据网络系统是在现有网络的基础上增加了HTTPex服务器和IPN服务器,并为每个用户确定一归属IPN服务器,同时相应增加了三种新型协议,用户先通过归属IPN服务器建立用户与用户、用户与HTTPex服务器之间的连接,并通过HTTPex服务器进行数据包的交换,因此可以实现任何上网用户之间上层应用的直接互通,而不受特别网络用户的限制。在3G(第三代移动通信)手机获得应用后,该系统和方法还可以让计算机与3G手机之间直接进行图象通信。
由此可见本发明具有以下优点(1)该系统可以实现任何上网用户之间任何上层应用的直接互通;(2)该系统是叠加在现有网络基础之上的,并不需要对现有网络做改变,只需要在网络上设置相应的服务器,并在用户计算机上安装客户端软件即可,可实现统一的互连网络应用平台;(3)可以对服务器提供负载均衡,为内容提供商提供计费和收费服务。
上面已结合附图详细描述了本发明的内容及具体实施例。应该指出,给出实施例只是为了举例说明的需要,而并非为了限制本发明。对于本领域技术人员而言,根据本发明的原理,无需进行创造性的思维即可作出不偏离本发明的精神和范围的种种修改和变更。所有这些修改和变更都应落在本发明权利要求书所限定的保护范围内。
权利要求
1.一种数据网络用户进行数据交换的方法,其特征在于为每一用户登记一IP号码,并确定一归属IP号码服务器,用户端的IP号码存储在各自的归属IP号码服务器中,用户之间通过IP号码和IP号码服务器进行连接的过程为A、主叫用户登录其归属IP号码服务器;B、主叫通过其归属IP号码服务器和被叫的IP号码查找被叫归属IP号码服务器;C、被叫归属IP号码服务器判断被叫是否在线,如果在线则将主叫的IP号码、主叫归属IP号码服务器的IP地址通告被叫,否则结束连接;D、被叫对通告不回应,则由主叫归属IP号码服务器对主叫回应拒绝连接,否则继续下一步;E、如果被叫回应接收呼叫,则由被叫归属IP号码服务器向主叫回应允许连接,如果被叫回应不接收,则由被叫归属IP号码服务器向主叫回应拒绝接收,并结束连接;F、被叫回应允许连接后,主叫和被叫同时向主叫归属IP号码服务器申请HTIPex(Hypertext Transfer Protocol and its Extensive part,扩展超文本传输协议)服务标识和本次呼叫连接所用的HTTPex服务器;G、主叫归属IP号码服务器将确定的主叫HTTPex服务标识、被叫HTIPex服务标识分别发送给主叫和被叫,同时将主叫和被叫的身份识别信息发送给确定的HTIPex服务器;H、主叫和被叫分别与HTTPex服务器建立连接,并通过HTIPex服务器进行数据交换;I、断开与HITPex服务器的连接,结束本次呼叫连接。
2.如权利要求1所述的数据网络用户进行数据交换的方法,其特征在于所述的步骤A主叫用户登录其归属IP号码服务器是根据输入的主叫IP号码和密码登录的,具体过程为1)主叫用户通过终端输入IP号码和密码;2)其归属IP号码服务器对输入的IP号码和密码进行验证;3)验证通过后保持主叫用户终端与其归属IP号码服务器之间的连接。
3.如权利要求1所述的数据网络用户进行数据交换的方法,其特征在于所述的步骤A主叫用户登录其归属IP号码服务器是根据主叫客户的E-mail地址和密码登录,具体过程为1)主叫用户通过终端输入E-mail地址和特定密码;2)其归属IP号码服务器对输入的E-mail地址和密码进行验证;3)验证通过后保持主叫用户终端与其归属IP号码服务器之间的连接。
4.如权利要求1、2或3所述的数据网络用户进行数据交换的方法,其特征在于所述的步骤B主叫通过其归属IP号码服务器和被叫IP号码查找被叫归属IP号码服务器的过程为1)主叫用户输入被叫IP号码;2)主叫归属IP号码服务器对输入的被叫IP号码进行解析并查找数据库获得被叫归属IP号码服务器的IP地址;3)主叫归属IP号码服务器根据查找到的IP地址向被叫归属IP号码服务器进行通告,建立两者之间的连接。
5.如权利要求1、2或3所述的数据网络用户进行数据交换的方法,其特征在于所述步骤B主叫通过其归属IP号码服务器和被叫IP号码查找被叫归属IP号码服务器的过程也可以为1)主叫用户输入被叫的E-mail地址;2)根据被叫E-mail地址查找数据库,获得对应的被叫IP号码;3)主叫归属IP号码服务器对输入的被叫IP号码进行解析并查找数据库获得被叫归属IP号码服务器的IP地址;4)主叫归属IP号码服务器根据查找到的IP地址向被叫归属IP号码服务器进行通告,建立两者之间的连接。
6.如权利要求1、2或3所述的数据网络用户进行数据交换的方法,其特征在于所述步骤H主叫和被叫通过与HTTPex服务器的连接进行数据交换包括对上层数据包的交换,上层数据包从本端用户传送到对端用户的过程为1)主叫或被叫用户将上层数据包封装并发送给HTTPex服务器;2)HTTPex服务器将数据包由服务器中的本端接收邮箱转移到服务器中的对端发送邮箱;3)HTTPex服务器检查到对端发送邮箱有数据包后,将数据包的IP地址和端口进行替换;4)在接收到对端用户发过来的POP命令后,HTTPex服务器将替换后的数据包发送给对端用户;5)对端用户将数据包进行解析,并传给上层应用。
7.如权利要求6所述的数据交换的方法,其特征在于所述步骤1)主叫或被叫用户将上层数据包封装后发给HTTPex服务器包括以下步骤a、主叫或被叫用户上层应用连接对端虚拟IP地址;b、用户的HTTPex客户端截取上层应用数据包进行以下处理(i)将对端VIP目的地址替换为HTTPex服务器的IP地址,非VIP地址数据包不进行替换;(ii)将上层应用目的端口作为数据包中的目的端口字段;(iii)将上层应用源端口作为数据包中的源端口字段;(iiii)将数据包的目的端口替换为本端上网端口;(iiiii)将数据包源端口替换为已建立HTTPex连接的源端口。c、将处理后的数据包加上一个PUSH命令后进行封装,然后通过代理服务器或网关发送到HTTPex服务器。
8.如权利要求7所述的数据交换方法,其特征在于所述的PUSH命令是用户用来请求HTTPex服务器接收来自用户的信息的,包括(i)提供用户的HTTPex服务标识;(ii)提供用户身份识别信息。
9.如权利要求6所述的数据交换的方法,其特征在于POP命令是用户用来请求从HTTPex服务器发送邮箱接收数据包的,包括(i)提供用户的HTTPex服务ID;(ii)提供用户身份识别信息。
10.如权利要求6所述的数据交换方法,其特征在于所述步骤3中HTTPex服务器检查对端发送邮箱有无新数据包是通过服务器中心处理单元以轮询方式进行的。
11.如权利要求6所述的数据交换方法,其特征在于所述步骤3中HTTPex服务器检查对端发送邮箱有无新数据包是通过邮箱门铃来实现的,具体是先设置一邮箱门铃,新的数据包到达邮箱时,该邮箱门铃就自动通知服务器中心处理单元。
12.如权利要求6所述的数据交换方法,其特征在于所述步骤3)HTTPex服务器检查到对端发送邮箱有数据包后,将数据包的IP地址和端口进行替换,具体包括以下过程(i)数据包目的IP地址即HTTPex务器的IP地址替换为本端用户上网使用的源IP地址,即用户连接到HTTPex服务器所使用的IP地址;(ii)数据包目的端口替换为对端用户的源端口;(iii)数据包源端口被替换为HTTP端口。
13.如权利要求6所述的数据交换方法,其特征在于所述步骤5)对端用户将数据包进行解析是指将数据包解析成上层应用的报文,具体包括以下过程(i)将数据包中的目的端口字段提取出来,替换为该报文的目的端口;(ii)将数据包中的源端口字段提取出来,替换为该报文的源端口;(iii)将数据包源IP地址替换为上层应用设置的虚拟IP地址。
14.一种实现如权利要求1所述的数据交换方法的数据网络服务系统,该系统包括用户终端;后台,用于查看网络运行情况、手工或自动预置用户帐号、手工更改用户属性、以及网络出现故障时的诊断排错;认证数据库,用于存放用户的各种身份信息;连接网络,用于连接上述设备并通信;其特征在于还包括IP号码服务器,用于用户登录、申请用户HTTPex服务标识;HTTPex服务器,用于在用户之间交换数据。
15.如权利要求14所述的数据网络服务系统,其特征在于还包括注册服务器,用于新用户的注册。
16.如权利要求14或15所述的数据网络服务系统,其特征在于还包括计费模块,用于对用户进行实时计费。
17.如权利要求14或15所述的数据网络服务系统,其特征在于还包括应用层网关,用于通过HTTPex上网的用户无缝连接到专用网络,为用户提供多种网络服务。
全文摘要
一种数据网络系统在现有数据网络系统基础上增加IPN服务器和HTTPex服务器,并为每个网络用户确定一个归属IPN服务器,每个IPN服务器又确定一个或多个归属HTTPex服务器。IPN服务器,用于用户登录、申请用户HTTPex服务ID,IPN服务器可以有多台,具体根据用户数量和IPN服务器的处理能力来定。HTTPex服务器用于在用户之间交换数据,还能将计费信息传送到相关计费设备。利用上述系统进行数据交换的方法中先为每一用户登记一IPN,然后通过IPN服务器进行登录,并通过HTTPex服务器实现用户上层应用数据包的交换。由于本发明是利用统一的IPN服务器和HTTPex服务器进行数据交换,因此任何上网用户之间都可以实现上层应用的直接互通,而不受特别网络用户如企业网络用户、小区网络用户等的限制。
文档编号H04L29/06GK1400788SQ0112467
公开日2003年3月5日 申请日期2001年8月3日 优先权日2001年8月3日
发明者毛晓磊 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1