一种接入点设备与服务器交互的接口通信方法

文档序号:7819609阅读:253来源:国知局
一种接入点设备与服务器交互的接口通信方法
【专利摘要】一种接入点设备与服务器交互的接口通信方法,基于SOAP协议和长连接机制实现,接入点设备启动后主动连接服务器,与服务器之间建立起长连接,接入点设备向服务器发送周期性状态报文,并接收服务器发送的数据报文,接入点设备向服务器发送心跳包,保持和服务器之间的长连接,只有在服务器主动断开连接或者接入点设备的广域网口断开时,长连接才会断开,接入点设备会重新与服务器建立长连接。本发明的扩展性好,灵活性高,减少了网络堵塞和响应时间,提高了通信质量,减少了资源消耗。
【专利说明】一种接入点设备与服务器交互的接口通信方法

【技术领域】
[0001]本发明涉及一种接入点设备与服务器交互的接口通信方法。

【背景技术】
[0002]目前AP(Access Point接入点设备)与服务器接口协议主要分两大类:基于TR069等规范的公共协议接口和大量的私有协议接口。TR069协议是基于SOAP协议(简单对象访问协议Simple Object Access Protocol)的,具有非常好的扩展性,可维护性,并且在管理大量网络设备中有很好的表现,但是基于短连接,每次交互结束都会断开连接,因为基于短连接的机制对服务器负担相对较小,相对于长连接能够支持并管理更多的设备,但是当网络设备较少,并发数不大的情况下,经常性的TCP (传输控制协议Transmiss1n ControlProtocol)请求和握手过程会降低通信质量,加大网络资源和设备资源的开销,这种情况下使用基于长连接的通信接口就显得非常必要。私有协议有的支持长连接,但是扩展性,灵活性不足,新增功能比较繁琐,有的则支持SOAP但是不支持长连接。


【发明内容】

[0003]本发明提供一种接入点设备与服务器交互的接口通信方法,基于SOAP协议和长连接机制实现,扩展性好,灵活性高,减少了网络堵塞和响应时间,提高了通信质量,减少了资源消耗。
[0004]为了达到上述目的,本发明提供一种接入点设备与服务器交互的接口通信方法,该方法基于SOAP协议和长连接机制实现,该方法包含以下内容:
连接机制:接入点设备启动后主动连接服务器,向服务器发送连接报文,服务器收到连接报文后,向接入点设备发送回应报文,接入点设备接收到服务器发送的回应报文后,设置长连接参数,接入点设备与服务器之间建立起长连接;所述的长连接参数包含:信道空闲时间、心跳包间隔时间和心跳包未回应数;所述的信道空闲时间规定了信道上无报文交互多长时间后开始发送心跳包;所述的心跳包间隔时间规定了两个心跳包之间间隔的时间;所述的心跳包未回应数规定了累计多少个心跳包未收到回复,会认为是服务器主动断开长连接;
报文交互机制:接入点设备向服务器发送周期性状态报文,服务器收到周期性状态报文后,向接入点设备发送状态回应报文,并向接入点设备发送数据报文,接入点设备收到数据报文后,向服务器发送收到数据回应报文;
保持连接机制:如果接入点设备和服务器之间没有报文交互的时间超过信道空闲时间,则接入点设备会按照心跳包间隔时间向服务器发送心跳包,服务器接收到心跳包后,向接入点设备发送心跳包确认包,以此来保持接入点设备和服务器之间的长连接。
[0005]该方法还包含重新连接机制:如果接入点设备检测到和服务器之间的长连接断开,则接入点设备会根据不同的长连接断开情况,重新与服务器建立长连接。
[0006]在所述的重新连接机制中,长连接断开情况包含:服务器主动断开长连接或接入点设备的广域网接口断开导致长连接断开。
[0007]在所述的重新连接机制中,当服务器主动断开长连接时,接入点设备停止向服务器发送周期性状态报文和心跳包,并保存接入点设备的当前设置;然后接入点设备向服务器发送连接报文以重新连接服务器,如果接入点设备接收到服务器发送的回应报文,则设置长连接参数,所述接入点设备与服务器之间重新建立起长连接,根据报文交互机制和保持连接机制,恢复向服务器发送周期性状态报文和心跳包。
[0008]在所述的重新连接机制中,当接入点设备的广域网接口断开导致长连接断开时,接入点设备停止向服务器发送周期性状态报文和心跳包,并保存接入点设备的当前设置,当接入点设备检测到广域网接口重新连接上时,接入点设备向服务器发送重新连接报文,通知服务器本设备已重新连上,如果接入点设备接收到服务器发送的回应报文,则设置长连接参数,所述接入点设备与服务器之间重新建立起长连接,根据报文交互机制和保持连接机制,恢复向服务器发送周期性状态报文和心跳包。
[0009]接入点设备和服务器之间所有的交互报文都是基于SOAP协议。
[0010]在所述的报文交互机制中,若接入点设备接收数据报文出错,接入点设备与服务器保持长连接,所述接入点设备丢弃错误报文且不向服务器发送收到数据回应报文,服务器未接收到接入点设备发送的收到数据回应报文时,主动重发数据报文;若服务器接收周期性状态报文出错时,接入点设备与服务器保持长连接,服务器丢弃错误报文且不向接入点设备发送状态回应报文,当接入点设备未接收到服务器发送的发送状态回应报文时,主动重发周期性状态报文。
[0011]所述的服务器向接入点设备发送的数据报文包含多种RPC远程过程调用协议方法。
[0012]在所述的报文交互机制中,接入点设备按照间隔周期向服务器发送周期性状态报文。
[0013]本发明基于SOAP协议和长连接机制实现,扩展性好,灵活性高,减少了网络堵塞和响应时间,提高了通信质量,减少了资源消耗。

【专利附图】

【附图说明】
[0014]图1是本发明的一个实施例中,接入点设备和服务器之间交互报文的示意图。

【具体实施方式】
[0015]以下根据图1具体说明本发明的较佳实施例。
[0016]本发明提供一种接入点设备与服务器交互的接口通信方法,该方法基于SOAP协议和长连接机制实现,该方法包含以下内容:
连接机制:接入点设备(AP)启动后主动连接服务器(Server),向服务器发送连接报文,服务器收到连接报文后,向接入点设备发送回应报文,接入点设备接收到服务器发送的回应报文后,设置长连接参数,接入点设备与服务器之间建立起长连接。
[0017]所述的长连接参数包含:信道空闲时间、心跳包间隔时间和心跳包未回应数。
[0018]所述的信道空闲时间规定了信道上无报文交互多长时间后开始发送心跳包;
所述的心跳包间隔时间规定了两个心跳包之间间隔的时间; 所述的心跳包未回应数规定了累计多少个心跳包未收到回复,会认为是服务器主动断开长连接。
[0019]如图1所示,本实施例中,接入点设备向服务器发送的连接报文为O BOOTSTRAP和I BOOT报文,服务器发送给接入点设备的回应报文为InformResponse报文。
[0020]报文交互机制:接入点设备向服务器发送周期性状态报文,服务器收到周期性状态报文后,向接入点设备发送状态回应报文,并向接入点设备发送数据报文,接入点设备收到数据报文后,向服务器发送收到数据回应报文。
[0021]接入点设备按照间隔周期向服务器发送周期性状态报文,所述的间隔周期周期时间可配置,本实施例中,间隔周期默认为30分种。
[0022]所述的服务器向接入点设备发送的数据报文包含多种RPC (远程过程调用协议Remote Procedure Call)方法,例如恢复出厂设置、重新启动、获取参数、修改参数、添加参数、删除参数等等。
[0023]若接入点设备接收数据报文出错,接入点设备与服务器保持长连接,所述接入点设备丢弃错误报文且不向服务器发送收到数据回应报文,服务器未接收到接入点设备发送的收到数据回应报文时,主动重发数据报文;若服务器接收周期性状态报文出错时,接入点设备与服务器保持长连接,服务器丢弃错误报文且不向接入点设备发送状态回应报文,当接入点设备未接收到服务器发送的发送状态回应报文时,主动重发周期性状态报文。
[0024]如图1所示,本实施例中,接入点设备向服务器发送的周期性状态报文为2PER1DIC报文,服务器向接入点设备发送的状态回应报文为InformResponse报文,服务器向接入点设备发送的数据报文为设置参数报文,即,SetParameterValues报文,接入点设备向服务器发送的数据回应报文为SetParameterValuesResponse报文。
[0025]保持连接机制:如果接入点设备和服务器之间没有报文交互的时间超过信道空闲时间,则接入点设备会按照心跳包间隔时间向服务器发送心跳包,服务器接收到心跳包后,向接入点设备发送心跳包确认包,以此来保持接入点设备和服务器之间的长连接。
[0026]如图1所示,在本实施例中,接入点设备向服务器发送的心跳包为KeepAlive报文,服务器向接入点设备发送的心跳包确认包为Ke印AliveACK报文。
[0027]重新连接机制:如果接入点设备检测到和服务器之间的长连接断开,则接入点设备会根据不同的长连接断开情况,重新与服务器建立长连接。
[0028]长连接断开情况包含:服务器主动断开长连接;接入点设备的广域网(WAN)接口断开导致长连接断开。
[0029]当服务器主动断开长连接时,接入点设备停止向服务器发送周期性状态报文和心跳包,并保存接入点设备的当前设置,然后接入点设备向服务器发送连接报文,重新连接服务器,如果接入点设备接收到服务器发送的回应报文,则设置长连接参数(信道空闲时间、心跳包间隔时间和心跳包未回应数),所述接入点设备与服务器之间重新建立起长连接,根据报文交互机制和保持连接机制,恢复向服务器发送周期性状态报文和心跳包。
[0030]当接入点设备的广域网接口断开导致长连接断开的时,接入点设备停止向服务器发送周期性状态报文和心跳包,并保存接入点设备的当前设置,当接入点设备检测到广域网接口重新连接上时,接入点设备向服务器发送重新连接报文,通知服务器本设备已重新连上,如果接入点设备接收到服务器发送的回应报文,则设置长连接参数(信道空闲时间、心跳包间隔时间和心跳包未回应数),所述接入点设备与服务器之间重新建立起长连接,根据报文交互机制和保持连接机制,恢复向服务器发送周期性状态报文和心跳包。
[0031]本实施例中,接入点设备向服务器发送重新连接报文为M RECONETT1N报文。
[0032]本发明中,接入点设备和服务器之间所有的交互报文都是基于SOAP协议,服务器和接入点设备之间通过遵循TR069和TR098规范的SOAP协议进行交互。遵循TR069协议定义的所有RPC方法,并支持所有已明确定义的报文。所用到TR069规范的报文有:0BOOTSTRAP, I BOOT, 2 PER1DIC,M Reboot (TR069协议中已定义的报文,用于重启设备),M FactoryReset (TR069协议中已定义的报文,设备恢复出厂设置)。基于TR069协议扩展的SOAP报文有:M RECONNECT1N,M CLIENTIN (TR069协议中有定义扩展报文的事件格式:以“M”开头,后面接上有意义的英语表示报文作用,M RECONNECT1N报文的作用是通知服务器端设备已重新连接上,M CLIENTIN报文的作用是通知服务器有新的无线终端连接接入点设备)。
[0033]本发明基于SOAP协议,并且沿用TR098协议中关于data_model的定义(接入点设备上报参数和服务器下发配置都是基于data-model的数据模型),在保证扩展性和灵活性的同时加入长连接的机制。SOAP协议会使得扩展性非常好,只要符合规范,有新需求时,在原有的机制框架下扩展新的接口就非常容易,接口的扩展性好可以节约大量的后续维护的工作量。而长连接减少了 TCP (传输控制协议Transmiss1n Control Protocol)请求,可以减少网络的堵塞,后续请求不需要建立TCP,也不需要TCP握手等过程,可以减少请求的响应时间,当发生错误时,可以在不关闭连接的情况下进行提示。
[0034]尽管本发明的内容已经通过上述优选实施例作了详细介绍,但应当认识到上述的描述不应被认为是对本发明的限制。在本领域技术人员阅读了上述内容后,对于本发明的多种修改和替代都将是显而易见的。因此,本发明的保护范围应由所附的权利要求来限定。
【权利要求】
1.一种接入点设备与服务器交互的接口通信方法,其特征在于,该方法基于SOAP协议和长连接机制实现,该方法包含以下内容: 连接机制:接入点设备启动后主动连接服务器,向服务器发送连接报文,服务器收到连接报文后,向接入点设备发送回应报文,接入点设备接收到服务器发送的回应报文后,设置长连接参数,接入点设备与服务器之间建立起长连接;所述的长连接参数包含:信道空闲时间、心跳包间隔时间和心跳包未回应数;所述的信道空闲时间规定了信道上无报文交互多长时间后开始发送心跳包;所述的心跳包间隔时间规定了两个心跳包之间间隔的时间;所述的心跳包未回应数规定了累计多少个心跳包未收到回复,会认为是服务器主动断开长连接; 报文交互机制:接入点设备向服务器发送周期性状态报文,服务器收到周期性状态报文后,向接入点设备发送状态回应报文,并向接入点设备发送数据报文,接入点设备收到数据报文后,向服务器发送收到数据回应报文; 保持连接机制:如果接入点设备和服务器之间没有报文交互的时间超过信道空闲时间,则接入点设备会按照心跳包间隔时间向服务器发送心跳包,服务器接收到心跳包后,向接入点设备发送心跳包确认包,以此来保持接入点设备和服务器之间的长连接。
2.如权利要求1所述的接入点设备与服务器交互的接口通信方法,其特征在于,该方法还包含重新连接机制:如果接入点设备检测到和服务器之间的长连接断开,则接入点设备会根据不同的长连接断开情况,重新与服务器建立长连接。
3.如权利要求2所述的接入点设备与服务器交互的接口通信方法,其特征在于,在所述的重新连接机制中,长连接断开情况包含:服务器主动断开长连接或接入点设备的广域网接口断开导致长连接断开。
4.如权利要求3所述的接入点设备与服务器交互的接口通信方法,其特征在于,在所述的重新连接机制中,当服务器主动断开长连接时,接入点设备停止向服务器发送周期性状态报文和心跳包,并保存接入点设备的当前设置;然后接入点设备向服务器发送连接报文以重新连接服务器,如果接入点设备接收到服务器发送的回应报文,则设置长连接参数,所述接入点设备与服务器之间重新建立起长连接,根据报文交互机制和保持连接机制,恢复向服务器发送周期性状态报文和心跳包。
5.如权利要求3所述的接入点设备与服务器交互的接口通信方法,其特征在于,在所述的重新连接机制中,当接入点设备的广域网接口断开导致长连接断开时,接入点设备停止向服务器发送周期性状态报文和心跳包,并保存接入点设备的当前设置,当接入点设备检测到广域网接口重新连接上时,接入点设备向服务器发送重新连接报文,通知服务器本设备已重新连上,如果接入点设备接收到服务器发送的回应报文,则设置长连接参数,所述接入点设备与服务器之间重新建立起长连接,根据报文交互机制和保持连接机制,恢复向服务器发送周期性状态报文和心跳包。
6.如权利要求4或5所述的接入点设备与服务器交互的接口通信方法,其特征在于,接入点设备和服务器之间所有的交互报文都是基于SOAP协议。
7.如权利要求6所述的接入点设备与服务器交互的接口通信方法,其特征在于,在所述的报文交互机制中,若接入点设备接收数据报文出错,接入点设备与服务器保持长连接,所述接入点设备丢弃错误报文且不向服务器发送收到数据回应报文,服务器未接收到接入点设备发送的收到数据回应报文时,主动重发数据报文;若服务器接收周期性状态报文出错时,接入点设备与服务器保持长连接,服务器丢弃错误报文且不向接入点设备发送状态回应报文,当接入点设备未接收到服务器发送的发送状态回应报文时,主动重发周期性状态报文。
8.如权利要求7所述的接入点设备与服务器交互的接口通信方法,其特征在于,所述的服务器向接入点设备发送的数据报文包含多种RPC远程过程调用协议方法。
9.如权利要求8所述的接入点设备与服务器交互的接口通信方法,其特征在于,在所述的报文交互机制中,接入点设备按照间隔周期向服务器发送周期性状态报文。
【文档编号】H04L29/06GK104468380SQ201410644239
【公开日】2015年3月25日 申请日期:2014年11月14日 优先权日:2014年11月14日
【发明者】杭旭 申请人:上海斐讯数据通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1