探测路径MTU的方法、装置和系统制造方法及图纸

技术编号:15624427 阅读:344 留言:0更新日期:2017-06-14 05:57
本发明专利技术公开了一种探测路径MTU的方法、装置和系统,属于网络技术领域。所述方法包括:根据目的交换机的地址和预设路径MTU,发送至少一个探测报文,并获取与所述至少一个探测报文对应的至少一个响应报文;根据所述至少一个响应报文,确定所述第一路径MTU;根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU。本发明专利技术通过发送至少一个探测报文的方式进行学习,从而探测到源交换机与目的交换机之间的第一路径MTU,并确定源虚拟机与目的虚拟机之间的第二路径MTU,根据第二路径MTU控制源虚拟机所发送报文的长度,避免了报文发送失败的问题,提高了发送报文的成功率。

【技术实现步骤摘要】
探测路径MTU的方法、装置和系统
本专利技术涉及网络
,特别涉及一种探测路径最大传输单元(英文:MaximumTransmissionUnit,简称MTU)的方法、装置和系统。
技术介绍
路径MTU是指在源设备到目的设备之间的路径上能通过的最大的数据包长度。实际应用中,为了响应各种各样的事件,源设备到目的设备之间的路径可能会被动态地修改,路径MTU也会相应地改变。虚拟化网络中的交换机配置有隧道端点,通过配置的隧道端点与其他交换机实现隧道互通,而任意两个虚拟机之间的通信是通过所接入的交换机之间的隧道来实现的,即任意两个虚拟机之间的路径包括交换机之间的隧道。那么,当源虚拟机要向目的虚拟机发送报文时,先向源交换机发送该报文,源交换机接收到该报文时,会按照隧道协议为该报文封装一个以源交换机为源设备、以目的交换机为目的设备的外层头,从而得到封装报文,并向该目的交换机发送该封装报文。如果该封装报文的长度不大于该源交换机与该目的交换机之间的路径MTU,则该封装报文会通过该路径传输至该目的交换机。该目的交换机会按照隧道协议对该封装报文进行解封装,并将该解封装后得到的报文发送给该目的虚拟机,该目的虚拟机即可向源虚拟机返回发送成功的响应报文。而如果该封装报文的长度大于路径MTU,隧道中的中间设备会将该封装报文丢弃,并返回数据包过大报文,以提示该封装报文的长度过大。由于该封装报文的外层头中的源交换机为源设备,则该数据包过大报文会发送至源交换机,而不能发送至源虚拟机。在上述发送报文的过程中,源交换机并不能探测到与目的交换机之间的路径MTU,源虚拟机也不能探测到与目的虚拟机之间的路径MTU。而且,在后续过程中,源虚拟机仍可能会发送长度大于源虚拟机与目的虚拟机之间的路径MTU的报文,而导致报文发送失败。因此,需要提出一种方法,以探测源虚拟机与目的虚拟机之间的路径MTU,解决报文发送失败的问题。
技术实现思路
为克服现有技术中存在的问题,本专利技术提供一种探测路径MTU的方法、装置及系统。第一方面,本专利技术提供了一种探测路径MTU的方法,所述方法包括:根据目的交换机的地址和预设路径MTU,发送至少一个探测报文,并获取与所述至少一个探测报文对应的至少一个响应报文,所述至少一个响应报文包括第一响应报文和第二响应报文中的至少一个,所述第一响应报文用于指示当前的预设路径MTU大于源交换机与所述目的交换机之间的第一路径MTU,所述第二响应报文用于指示当前的预设路径MTU不大于所述第一路径MTU;根据接收到所述第二响应报文时的预设路径MTU,确定所述第一路径MTU;根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU。结合第一方面,在第一方面的第一种可能实现方式中,所述根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU之后,所述方法还包括:获取所述源虚拟机发往所述目的虚拟机的数据报文;当确定所述数据报文的长度大于所述第二路径MTU时,向所述源虚拟机发送第三响应报文,所述第三响应报文用于指示所述报文的长度大于所述第二路径MTU。结合第一方面的上述任一种可能实现方式,在第一方面的第二种可能实现方式中,所述根据目的交换机的地址和预设路径MTU,发送至少一个探测报文,包括:根据预设交换机地址列表,确定多个目的交换机的地址;根据每个目的交换机的地址以及所述预设路径MTU,向每个目的交换机发送至少一个探测报文。结合第一方面的上述任一种可能实现方式,在第一方面的第三种可能实现方式中,所述根据目的交换机的地址和预设路径MTU,发送至少一个探测报文,并获取与所述至少一个探测报文对应的至少一个响应报文,包括:根据所述目的交换机的地址以及所述预设路径MTU,发送第一探测报文;当接收到所述第一响应报文时,减小所述预设路径MTU,根据所述减小后的预设MTU生成第二探测报文;继续根据所述目的交换机的地址,发送所述第二探测报文。结合第一方面的上述任一种可能实现方式,在第一方面的第四种可能实现方式中,所述根据目的交换机的地址以及所述预设路径MTU,发送至少一个探测报文,并获取与所述至少一个探测报文对应的至少一个响应报文,包括:遍历配置的每个端口;根据所述目的交换机的地址以及所述预设路径MTU,基于遍历到的每个端口发送至少一个探测报文;通过所述遍历到的端口,接收与所述至少一个探测报文对应的至少一个响应报文。结合第一方面的上述任一种可能实现方式,在第一方面的第五种可能实现方式中,所述根据接收到所述第二响应报文时的预设路径MTU,确定所述第一路径MTU,包括:根据每个端口接收到所述第二响应报文时的预设路径MTU,确定每个端口对应的路径MTU;根据每个端口对应的路径MTU,确定所述第一路径MTU。结合第一方面的上述任一种可能实现方式,在第一方面的第六种可能实现方式中,所述根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU,包括:计算所述第一路径MTU与所述预设封装长度之间的差值;将所述差值确定为所述第二路径MTU。结合第一方面的上述任一种可能实现方式,在第一方面的第七种可能实现方式中,所述根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU之后,所述方法还包括:向控制器发送所述第二路径MTU,使得所述控制器监听所述源虚拟机发送给所述源交换机的数据报文,根据所述第二路径MTU对监听到的数据报文进行响应。结合第一方面的上述任一种可能实现方式,在第一方面的第八种可能实现方式中,所述获取所述源虚拟机发往所述目的虚拟机的数据报文,包括:对所述源虚拟机发往所述目的虚拟机的数据报文进行采样,获取采样得到的数据报文。结合第一方面的上述任一种可能实现方式,在第一方面的第九种可能实现方式中,所述根据每个端口对应的路径MTU,确定所述第一路径MTU,包括:获取所述每个端口对应的路径MTU中的最小路径MTU,将所述最小路径MTU作为所述第一路径MTU。第二方面,提供了一种探测路径MTU的方法,所述方法包括:获取源交换机发送的第二路径MTU,所述第二路径MTU为接入所述源交换机的源虚拟机与目的虚拟机之间的路径MTU;监听所述源虚拟机发送给所述源交换机的数据报文;当确定所述数据报文的长度大于所述第二路径MTU时,向所述源虚拟机发送第三响应报文,所述第三响应报文用于指示所述数据报文的长度大于所述第二路径MTU。结合第二方面,在第二方面的第一种可能实现方式中,所述第二路径MTU由所述源交换机根据所述源交换机与所述目的虚拟机接入的目的交换机之间的第一路径MTU以及预设封装长度确定,所述第一路径MTU由所述源交换机根据所述目的交换机的地址和预设路径MTU发送至少一个探测报文,获取与所述至少一个探测报文对应的至少一个响应报文,并根据接收到第二响应报文时的预设路径MTU确定,所述至少一个响应报文包括第一响应报文和所述第二响应报文中的至少一个。结合第二方面的上述任一种可能实现方式,在第二方面的第二种可能实现方式中,所述监听本文档来自技高网
...
探测路径MTU的方法、装置和系统

【技术保护点】
一种探测路径最大传输单元MTU的方法,其特征在于,所述方法包括:根据目的交换机的地址和预设路径MTU,发送至少一个探测报文,并获取与所述至少一个探测报文对应的至少一个响应报文,所述至少一个响应报文包括第一响应报文和第二响应报文中的至少一个,所述第一响应报文用于指示当前的预设路径MTU大于源交换机与所述目的交换机之间的第一路径MTU,所述第二响应报文用于指示当前的预设路径MTU不大于所述第一路径MTU;根据接收到所述第二响应报文时的预设路径MTU,确定所述第一路径MTU;根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU。

【技术特征摘要】
1.一种探测路径最大传输单元MTU的方法,其特征在于,所述方法包括:根据目的交换机的地址和预设路径MTU,发送至少一个探测报文,并获取与所述至少一个探测报文对应的至少一个响应报文,所述至少一个响应报文包括第一响应报文和第二响应报文中的至少一个,所述第一响应报文用于指示当前的预设路径MTU大于源交换机与所述目的交换机之间的第一路径MTU,所述第二响应报文用于指示当前的预设路径MTU不大于所述第一路径MTU;根据接收到所述第二响应报文时的预设路径MTU,确定所述第一路径MTU;根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU。2.根据权利要求1所述的方法,其特征在于,所述根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU之后,所述方法还包括:获取所述源虚拟机发往所述目的虚拟机的数据报文;当确定所述数据报文的长度大于所述第二路径MTU时,向所述源虚拟机发送第三响应报文,所述第三响应报文用于指示所述数据报文的长度大于所述第二路径MTU。3.根据权利要求1所述的方法,其特征在于,所述根据目的交换机的地址和预设路径MTU,发送至少一个探测报文,包括:根据预设交换机地址列表,确定多个目的交换机的地址;根据每个目的交换机的地址以及所述预设路径MTU,向每个目的交换机发送至少一个探测报文。4.根据权利要求1所述的方法,其特征在于,所述根据目的交换机的地址和预设路径MTU,发送至少一个探测报文,并获取与所述至少一个探测报文对应的至少一个响应报文,包括:根据所述目的交换机的地址以及所述预设路径MTU,发送第一探测报文;当接收到所述第一响应报文时,减小所述预设路径MTU,根据所述减小后的预设MTU生成第二探测报文;继续根据所述目的交换机的地址,发送所述第二探测报文。5.根据权利要求1所述的方法,其特征在于,所述根据目的交换机的地址以及所述预设路径MTU,发送至少一个探测报文,并获取与所述至少一个探测报文对应的至少一个响应报文,包括:遍历配置的每个端口;根据所述目的交换机的地址以及所述预设路径MTU,基于遍历到的每个端口发送至少一个探测报文;通过所述遍历到的端口,接收与所述至少一个探测报文对应的至少一个响应报文。6.根据权利要求5所述的方法,其特征在于,所述根据接收到所述第二响应报文时的预设路径MTU,确定所述第一路径MTU,包括:根据每个端口接收到所述第二响应报文时的预设路径MTU,确定每个端口对应的路径MTU;根据每个端口对应的路径MTU,确定所述第一路径MTU。7.根据权利要求1-6中任意一项所述的方法,其特征在于,所述根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU,包括:计算所述第一路径MTU与所述预设封装长度之间的差值;将所述差值确定为所述第二路径MTU。8.根据权利要求1-6中任意一项所述的方法,其特征在于,所述根据所述第一路径MTU及预设封装长度,确定接入所述源交换机的源虚拟机与接入所述目的交换机的目的虚拟机之间的第二路径MTU之后,所述方法还包括:向控制器发送所述第二路径MTU,使得所述控制器监听所述源虚拟机发送给所述源交换机的数据报文,并根据所述第二路径MTU对监听到的数据报文进行响应。9.一种探测路径MTU的方法,其特征在于,所述方法包括:获取源交换机发送的第二路径MTU,所述第二路径MTU为接入所述源交换机的源虚拟机与目的虚拟机之间的路径MTU;监听所述源虚拟机发送给所述源交换机的数据报文;当确定所述数据报文的长度大于所述第二路径MTU时,向所述源虚拟机发送第三响应报文,所述第三响应报文用于指示所述数据报文的长度大于所述第二路径MTU。10.根据权利要求9所述的方法,其特征在于,所述第二路径MTU由所述源交换机根据所述源交换机与所述目的虚拟机接入的目的交换机之间的第一路径MTU以及预设封装长度确定,所述第一路径MTU由所述源交换机根据所述目的交换机的地址和预设路径MTU发送至少一个探测报文,获取与所述至少一个探测报文对应的至少一个响应报文,并根据接收到第二响应报文时的预设路径MTU确定,所述至少一个响应报文包括第一响应报文和所述第二响应报文中的至少一个。11.一种探测路径最大传输单元MTU的装置,其特征在于,所述装置包括:发送模块,用于根据目的交换机的地址和预设路径MTU,发送至少一个探测报文;接收模块,用于获取与所述至少一个探测报文对应的至少一个响应报文,所述至少一个响应报文包括第一响应报文和第二响应报文中的至少一个,所述第一响应报文用于指示当前的预设路径MTU大于源交换机与所述目的交换机之间的第一路径MTU,所述第二响应报文用于指示当前的预设路径MTU不大于所述第一路径MTU;第一确定模块,用于根据接收到所述第二响应报文时的预设路径...

【专利技术属性】
技术研发人员:张宪忠姬玲玲
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1