一种基于netconf协议的hello报文交互的方法、设备和系统的制作方法_2

文档序号:9527412阅读:来源:国知局
需要获取的业务模块标识时,所述第二接收单元,用于:
[0071]接收所述服务端发送的所述客户端设备需要获取的业务模块。
[0072]第五方面,本发明实施例提供了一种基于NETCONF协议的HELLO报文交互系统,所述系统包括:服务端设备和客户端设备,其中,
[0073]所述服务端设备,用于:
[0074]将自身的能力信息、为建立链接的客户端设备所分配的第一标识信息以及用于表征所述服务端设备的业务模块信息变化状态的第二标识信息承载于第一 HELLO报文中;并向所述客户端设备发送所述第一 HELLO报文;
[0075]以及接收所述客户端设备发送的获取请求,所述获取请求由所述客户端设备根据所述第二标识信息确定发送;
[0076]以及根据所述获取请求将自身的业务模块信息发送至所述客户端设备;
[0077]所述客户端设备,用于:
[0078]接收所述服务端设备发送的第一 HELLO报文;其中,所述第一 HELL0报文承载了所述服务端设备的能力信息、所述服务端设备为所述客户端设备分配的第一标识信息以及用于表征所述服务端设备的业务模块信息变化状态的第二标识信息;
[0079]以及根据所述第二标识信息确定是否向所述服务端设备发送获取请求:
[0080]以及当所述客户端设备确定向所述服务端设备发送所述获取请求时,向所述服务端设备发送获取请求;
[0081]以及接收所述服务端设备发送的所述服务端设备的业务模块信息。
[0082]本发明实施例提供了一种基于NETCONF协议的HELL0报文交互的方法、设备和系统,通过在服务端发送的HELL0报文中不承载服务端支持的业务模块信息,而是将服务端的业务模块信息根据客户端的具体请求来进行单独发送,从而避免服务端的HELL0报文发送失败,进而提高客户端与服务端之间通过NETCONF协议建立链接的成功率。
【附图说明】
[0083]图1为本发明实施例提供的一种基于NETCONF协议的HELL0报文交互的方法流程不意图;
[0084]图2为本发明实施例提供的另一种基于NETCONF协议的HELL0报文交互的方法流程意图;
[0085]图3为本发明实施例提供的又一种基于NETCONF协议的HELL0报文交互的方法流程意图;
[0086]图4为本发明实施例提供的再一种基于NETCONF协议的HELL0报文交互的方法流程意图;
[0087]图5为本发明实施例提供的客户端确定是否向服务端发送获取请求的方法示意图;
[0088]图6为本发明实施例提供的一种基于NETCONF协议的HELL0报文交互的方法详细流程示意图;
[0089]图7为本发明实施例提供的一种第一 HELL0报文的内容示意图;
[0090]图8为本发明实施例提供的一种获取请求报文内容示意图;
[0091]图9为本发明实施例提供的一种服务端发送至客户端的业务模块信息的报文格式示意图;
[0092]图10为本发明实施例提供的一种服务端设备的结构示意图;
[0093]图11为本发明实施例提供的另一种服务端设备的结构示意图;
[0094]图12为本发明实施例提供的一种客户端设备的结构示意图;
[0095]图13为本发明实施例提供的另一种客户端设备的结构示意图;
[0096]图14为本发明实施例提供的一种基于NETCONF协议的HELLO报文交互系统的结构示意图。
【具体实施方式】
[0097]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
[0098]本发明的基本思想是:基于时间换空间的思想,通过客户端和服务端之间的两次交互来完成现有技术中客户端和服务端之间的一次交互,即在第一次交互中,服务端发送的HELLO报文不承载服务端自身支持的业务模块信息,而是将服务端支持的业务模块信息根据客户端的具体请求放在第二次交互中向客户端发送,不仅能够避免服务端的HELLO报文发送失败,从而提高客户端与服务端之间通过NETCONF协议建立链接的成功率,而且节省了报文传输时的网络资源消耗。
[0099]参见图1,其示出了本发明实施例提供的一种基于NETCONF协议的HELL0报文交互的方法流程,该方法可以应用于网络中的服务端,列举而非限定的,本实施例中所述的服务端可以是即时通讯服务器、云端服务器、虚拟服务器或者其他服务设备,本发明实施例不作限定,但上述的服务器都需要满足支持NETCONF协议;该方法可以包括S110、S120和S130,其中,
[0100]S110:服务端将自身的能力信息、为与客户端建立的链接所分配的第一标识信息以及用于表征所述服务端的业务模块信息变化状态的第二标识信息承载于第一 HELL0报文中,并向所述客户端发送所述第一 HELL0报文;
[0101]示例性的,在现有技术中,服务端发送的HELL0报文中需要包括服务端自身的业务模块信息;但本发明实施例中的第一 HELL0报文中并不承载服务端的业务模块信息;而是在第一 HELL0报文里面增加了用于表征所述服务端的业务模块信息变化状态的第二标识息;
[0102]因此,本发明实施例的第一 HELL0报文的长度远小于现有技术中服务端发送的HELL0报文的长度,从而可以避免由于服务端的HELLO报文超过了客户端设备所最大报文长度而导致的服务端的HELL0报文发送失败的情况,提高了客户端与服务端之间通过NETCONF协议建立链接的成功率。
[0103]第二标识信息可以体现服务端的业务模块信息是否有变化,例如,服务端的业务模块信息出现改变时,所述第二标识信息也相应地发生改变,并且对应于改变后的所述服务端的业务模块信息;
[0104]优选地,在本实施例中,所述第二标识信息可以是所述服务端的业务模块信息对应的校验码,而所述校验码可以通过校验码算法对所述服务端的业务模块信息进行计算得到;从而使得当所述服务端的业务模块信息发生改变时,所述服务端的业务模块信息对应的校验码也相应地发生改变。需要说明的是,常用的校验码算法可以包括消息摘要算法第五版(MD5, Message Digest Algorithm5)、安全散列算法(SHA, Secure Hash Algorithm)等散列(Hash)算法,也可以包括其它校验码算法,本发明实施例对此不作具体限定。
[0105]示例性地,参见图2,在服务端发送所述第一 HELLO报文之前,所述方法还包括S100,其中,
[0106]S100:服务端接收所述客户端发送的建立链接请求;
[0107]因此,所述第一标识信息可以是所述服务端根据所述建立链接请求分配的,第一标识信息可以作为所述服务端与所述客户端建立的链接标识,用于区分所述服务端与所述客户端建立的其他链接,也用于区分所述服务端与其他客户端建立的链接;
[0108]S120:服务端接收所述客户端发送的获取请求;
[0109]示例性地,所述获取请求由所述客户端根据所述第二标识信息确定发送;
[0110]可选地,所述获取请求可以包括所述客户端获取所述服务端业务模块信息的能力标识,该能力标识表示所述客户端具有获取所述服务端业务模块信息的能力,通常可以用所述客户端获取服务端业务模块信息的操作指令来表示,用于触发所述服务端将自身的业务模块信息发送至所述客户端;
[0111]可选地,所述获取请求可以包括所述客户端获取所述服务端业务模块信息的能力标识和所述客户端需要获取的业务模块标识,其中,所述客户端需要获取的业务模块标识可以用于所述服务端仅将所述客户端需要获取的业务模块标识对应的业务模块信息发送至所述客户端,从而无需将所述服务端自身所有的业务模块信息发送至所述客户端,可以减少在发送业务模块信息时的网络资源消耗。
[0112]需要说明的是,服务端的业务模块信息可以包括所述服务端的业务模块标识和所述服务端业务模块特征信息,在本实施例中,所述服务端业务模块标识可以是所述服务端业务模块的名称;所述服务端业务模块特征信息可以包括所述服务端业务模块的feature信息和deviat1n信息,而feature信息和deviat1n信息为本领域技术人员的公知常识,在此不再赘述;
[0113]示例性地,在所述服务端接收所述客户端发送的建立链接请求之后,且在所述服务端接收所述客户端发送的获取请求之前,所述方法还包括S111和S112,其中,
[0114]S111:服务端接收所述客户端发送的第二 HELLO报文;
[0115]S112:服务端将所述第二 HELL0报文中携带的所述客户端能力信息与自身支持的能力信息进行协商,获取所述服务端与所述客户端共同的能力信息,并确定与所述客户端建立链接完成。
[0116]具体地,所述第二 HELL0报文包括所述客户端的能力信息;在本实施例中,服务端可以通过将自身支持的能力信息与第二 HELL0报文中携带的所述客户端能力信息进行比较,获取所述服务端与所述客户端共同的能力信息,并确定与所述客户端建立链接完成,并可以将所述第一标识信息作为所述服务端与所述客户端建立的链接标识。
[0117]S130:服务端根据所述获取请求将自身的业务模块信息发送至所述客户端;
[0118]示例性地,由于步骤S120中的获取请求可以包括两种情况,所以步骤S130也可以包括:
[0119]当所述获取请求包括所述客户端获取所述服务端业务模块信息的能力标识时,所述服务端将自身所有的业务模块信息发送至所述客户端;
[0120]当所述获取请求包括所述客户端获取所述服务端业务模块信息的能力标识和所述客户端需要获取的业务模块标识时,所述服务端将所述客户端需要获取的业务模块标识对应的业务模块信息发送至所述客户端。
[0121]本发明实施例提供的报文交互的方法,通过在第一次交互中,服务端发送的HELLO报文不包括服务端自身业务模块的相关信息,而是将服务端业务模块的相关信息根据客户端的具体请求放在第二次交互中来进行发送,从而避免服务端的HELLO报文发送失败,进而提高客户端与服务端之间通过NETCONF协议建立链接的成功率。
[0122]参见图3,其示出了本发明实施例提供的另一种基于NETCONF协议的HELLO报文交互的方法流程,该方法可以应用于网络中的客户端,该方法可以包括S310、S320、S330和S340,其中,
[0123]S310:客户端接收服务端发送的第一 HELL0报文;
[0124]示例性地,所述第一 HELL0报文承载了所述服务端的能力信息、所述服务端为与所述客户端的链接所分配的第一标识信息以及用于表征所述服务端的业务模块信息变化状态的第二标识信息;
[0125]优选地,在本实施例中,所述第二标识信息可以是所述服务端的业务模块信息对应的校验码,而所述校验码可以通过校验码算法对所述服务端的业务模块信息进行计算得到;从而使得当所述服务端的业务模块信息发生改变时,所述服务端的业务模块信息对应的校验码也相应地发生改变。需要说明的是,常用的校验码算法可以包括消息摘要算法第五版(MD5, Message Digest Algorithm5)、安全散列算法(SHA, Secure Hash Algorithm)等散列(Hash)算法,也可以包括其它校验码算法,本发明实施例对此不作具体限定。
[0126]进一步地,参见图4,在步骤S310之前,所述方法还可以包括S300,其中,
[0127]S300:客户端向所述服务端发送建立链接请求;
[0128]具体地,所述第一标识信息可以是所述服务端根据所述建立链接请求分配的,第一标识信息可以作为所述服务端与所述客户端建立的链接标识,用于区分所述服务端与所述客户端建立的其他链接,也用于区分所述服务端与其他客户端建立的链接;
[0129]S320:客户端根据所述第二标识信息确定是否向所述服务端发送获取请求:
[0130]需要说明的是,如果
当前第2页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1