CN111404822B - 数据传输方法、装置、设备以及计算机可读存储介质 - Google Patents
数据传输方法、装置、设备以及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111404822B CN111404822B CN202010128210.4A CN202010128210A CN111404822B CN 111404822 B CN111404822 B CN 111404822B CN 202010128210 A CN202010128210 A CN 202010128210A CN 111404822 B CN111404822 B CN 111404822B
- Authority
- CN
- China
- Prior art keywords
- node
- forwarding
- state
- information
- data stream
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种数据传输方法、装置、设备以及计算机可读存储介质,属于信息技术领域。本方法通过数据生成节点获取第一转发路径上的任一转发节点的第一状态信息,可以确定该转发节点出现故障,则该数据生成节点可以根据获取的第一状态信息,为第一转发路径上传输的数据流确定第二转发路径,并在第二转发路径上传输数据流,由于没有在第一转发路径上传输数据流,而是在第二转发路径上传输数据流,且第二转发路径上的各个转节点的节点状态为正常状态,也即是第二转发路径上没有故障转发节点,从而可以避免数据流在故障转发节点出现堵塞。
Description
技术领域
本申请涉及信息技术领域,特别涉及一种数据传输方法、装置、设备以及计算机可读存储介质。
背景技术
集中控制管理式网络可以包括数据生成节点、控制节点以及转发节点,数据生成节点所生成的数据流可以按照控制节点所确定的转发路径,来在转发节点之间进行传输,以满足用户需求。
目前,控制节点可以获取该集中控制管理式网络的拓扑信息,并根据该拓扑信息为数据生成节点所生成的数据流分配转发路径,并将该数据流的转发路径的路由信息下发至转发路径上的各个转发节点,以便转发路径上的各个转发节点在接收到该数据流时,可以根据控制节点下发的该转发路径的路由信息,对该数据流进行传输。
由于转发节点仅会根据控制节点下发的转发路径的路由信息传输数据流,一旦该转发路径上该转发节点的下一个转发节点出现故障,若该转发节点仍然向故障转发节点传输该数据流,就会导致该数据流在故障转发节点出现堵塞。
发明内容
本申请实施例提供了一种数据传输方法、装置、设备以及计算机可读存储介质,能够避免数据流在故障转发节点出现堵塞。该技术方案如下:
第一方面,提供了一种数据传输方法,应用于数据生成节点,该方法包括:
获取第一转发路径上的任一转发节点的第一状态信息,并根据所述第一状态信息,确定数据流的第二转发路径,在所述第二转发路径上传输所述数据流;
其中,所述数据生成节点用于生成数据流,并为生成的数据流规划转发路径,数据生成节点生成数据流的过程可以是:对于所述数据生成节点中的应用程序所生成的应用数据流,所述数据生成节点可以根据所述应用数据流携带的流标识,从多个转发路径中确定为所述应用数据流规划的转发路径,并将为所述应用数据流规划的转发路径的路由信息添加在所述应用数据流中,得到所述数据生成节点生成的数据流。在一种可能的实现方式中,所述数据生成节点中的应用程序向所述数据生成节点中的智能网卡发送所述应用数据流,所述智能网卡根据所述应用数据流携带的流标识,从多个转发路径中确定为所述应用数据流规划的转发路径,并将为所述应用数据流规划的转发路径的路由信息添加在所述应用数据流中,得到所述数据生成节点生成的数据流。
所述第一转发路径用于传输所述数据流,所述数据流可以是所述数据生成节点生成的数据流,所述第一状态信息用于指示所述转发节点出现故障,所述第二转发路径上的各个转发节点的节点状态为正常状态,所述正常状态用于指示转发节点能够正常转发数据流。
基于上述实现方式,数据生成节点通过获取第一转发路径上的任一转发节点的第一状态信息,可以确定该转发节点出现故障,则该数据生成节点可以根据获取的第一状态信息,为第一转发路径上传输的数据流确定第二转发路径,并在第二转发路径上传输数据流,由于没有在第一转发路径上传输数据流,而是在第二转发路径上传输数据流,且第二转发路径上的各个转节点的节点状态为正常状态,也即是第二转发路径上没有故障转发节点,从而可以避免数据流在故障转发节点出现堵塞。并且,数据生成节点可以根据多个目标转发节点的拓扑连接信息,确定自己生成的数据流的第二转发路径,而无需控制节点为每个数据生成节点生成的数据流,确定转发路径,从而降低了控制节点的工作量,提高了数据传输***的协同能力。
在一种可能的实现方式中,所述第一状态信息包括所述转发节点的故障状态以及第一状态发生时间,所述故障状态用于指示所述转发节点出现故障,所述第一状态发生时间为所述转发节点出现故障的时间。
在一种可能的实现方式中,所述根据所述第一状态信息,确定所述数据流的第二转发路径包括:
当所述第一状态发生时间大于所述转发节点的已存储状态的状态发生时间时,根据多个目标转发节点的拓扑连接信息,确定所述第二转发路径,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态,所述多个目标转发节点的节点状态为正常状态。
在一种可能的实现方式中,所述获取第一转发路径上的任一转发节点的第一状态信息包括:
接收控制节点发送的所述转发节点的第一状态信息;或,
接收所述转发节点返回的携带第一状态发生时间的所述数据流,所述第一状态发生时间为所述转发节点出现故障的时间;基于接收的携带第一状态发生时间的所述数据流,获取所述转发节点的第一状态信息。
在一种可能的实现方式中,所述获取第一转发路径上的任一转发节点的第一状态信息之后,所述方法还包括:
当所述第一状态发生时间大于所述已存储状态的状态发生时间时,更新所述已存储状态。
在一种可能的实现方式中,所述更新所述已存储状态包括:
将所述已存储状态修改为所述故障状态。
在一种可能的实现方式中,所述方法还包括:
当所述第一状态发生时间小于或等于所述已存储状态的状态发生时间时,则不更新所述已存储状态。
在一种可能的实现方式中,所述接收所述转发节点返回的携带第一状态发生时间的所述数据流之后,所述方法还包括:
向控制节点发送所述转发节点的故障信息,所述故障信息包括所述故障状态和所述第一状态发生时间。
基于上述可能的实现方式,数据生成节点可以根据故障转发节点返回的数据流,向控制节点上报故障转发节点的节点状态。
在一种可能的实现方式中,所述获取第一转发路径上的任一转发节点的第一状态信息之前,所述方法还包括:
获取所述数据流的第一转发路径的路由信息,所述路由信息用于指示转发路径上的各个转发节点;
在所述数据流中添加所述路由信息;
向所述第一转发路径上的首个转发节点发送携带所述路由信息的所述数据流。
在一种可能的实现方式中,所述向所述第一转发路径上的首个转发节点发送携带所述路由信息的所述数据流的过程可以是:
当所述第一转发路径包括至少一个转发路径时,根据所述至少一个转发路径中的任一转发路径的路由信息,向所述任一第一转发路径上的首个转发节点传输携带所述任一转发路径的路由信息的所述数据流;或,
当所述第一转发路径包括多个转发路径时,根据所述多个转发路径的路由信息,向所述多个转发路径中的每个转发路径的首个转发节点传输所述数据流中的部分数据。
在一种可能的实现方式中,所述在第二转发路径上传输所述数据流包括:
在所述数据流中添加所述第二转发路径的路由信息,所述路由信息用于指示转发路径上的各个转发节点;
向所述第二转发路径上的首个目标转发节点发送携带所述路由信息的所述数据流。
在一种可能的实现方式中,所述方法还包括:
接收控制节点发送的所述转发节点的第二状态信息,所述第二状态信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间;
根据所述第二状态信息以及所述转发节点的已存储状态的状态发生时间,更新所述已存储状态,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态。
在一种可能的实现方式中,所述更新所述已存储状态包括:
将所述已存储状态修改为正常状态。
在一种可能的实现方式中,所述方法还包括:
当所述第二状态发生时间小于或等于所述已存储状态的状态发生时间时,则不更新所述已存储状态。
第二方面,提供了一种数据传输方法,应用于转发节点,该方法包括:
接收数据流;
在所述数据流中添加第一状态发生时间,所述第一状态发生时间为所述转发节点出现故障的时间;
向生成所述数据流的数据生成节点返回携带所述第一状态发生时间的所述数据流。
基于上述实现方式,当该转发节点出现故障时,可以直接在接收的数据流中添加第一状态发生时间,以指示该转发节点出现故障,并向数据生成节点返回携带第一状态发生时间的数据流,由此可见,由于故障的转发节点可以直接将接收的数据流再次返回给数据生成节点,从而使得数据流无法在故障的转发节点长时间停留,那么就可以避免数据流在故障的转发节点堵塞。
在一种可能的实现方式中,所述向生成所述数据流的数据生成节点返回携带所述第一状态发生时间的所述数据流包括:
从所述数据流携带的路径信息中,获取所述数据生成节点的地址信息;
根据所述数据生成节点的地址信息,向所述数据生成节点发送携带所述第一状态发生时间的所述数据流。
在一种可能的实现方式中,所述方法还包括:
当检测到所述转发节点出现故障时,则向控制节点发送故障信息,所述故障信息包括所述转发节点的故障状态以及所述第一状态发生时间,所述故障状态用于指示所述转发节点出现故障。
基于上述可能实现方式,无需邻居节点对转发节点的节点状态进行测试,一旦转发节点出现故障,故障的转发节点可以自动向控制节点上报故障
在一种可能的实现方式中,所述向控制节点发送故障信息之后,所述方法还包括:
当检测到所述转发节点出现的故障已经修复时,则向所述控制节点发送恢复信息,所述恢复信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间。
在一种可能的实现方式中,所述接收数据流之后,所述方法还包括:
当所述转发节点没有故障时,根据所述数据流中的路由信息,向所述路由信息指示的转发路径上的所述转发节点的下一个转发节点传输所述数据流,所述路由信息用于指示转发路径上的各个转发节点。
基于上述可能的实现方式,转发节点可以直接根据数据流所携带的路由信息,传输数据流,而无需通过查找路由表,来确定数据流的转发路径的路由信息,因此提高了数据的传输效率。
第三方面,提供了一种数据传输方法,应用于控制节点,所述方法包括:
先确定转发节点的节点状态,再向至少一个数据生成节点发送所述转发节点的状态信息,其中,所述状态信息包括所述转发节点的节点状态以及目标状态发生时间,所述节点状态用于指示转发节点是否出现故障,所述目标状态发生时间为所述转发节点出现所述节点状态的时间。
基于上述实现方式,控制节点每接收到一个转发节点的节点状态后,就会向通知所有的数据生成节点,以便所有的数据生成节点可以及时更新该转发节点的节点状态。
在一种可能的实现方式中,所述确定转发节点的节点状态的过程可以是:
获取所述转发节点的故障信息,并基于所述故障信息,将所述转发节点的节点状态确定为故障状态,其中,所述故障信息包括所述转发节点的故障状态以及第一状态发生时间,所述故障状态用于指示所述转发节点出现故障,所述第一状态发生时间为所述转发节点出现故障的时间。
在一种可能的实现方式中,所述获取所述转发节点的故障信息的过程可以是:
接收所述转发节点发送的所述故障信息;或,
接收任一个数据生成节点发送的所述故障信息。
在一种可能的实现方式中,所述确定转发节点的节点状态的过程可以是:
接收所述转发节点发送的恢复信息,基于所述恢复信息,将所述转发节点的节点状态确定为正常状态,其中,所述恢复信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间。
在一种可能的实现方式中,所述方法还包括:
接收所述转发节点的状态信息;
获取所述转发节点的已存储状态的状态发生时间,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态;
基于所述状态信息以及所述已存储状态的状态发生时间,更新所述已存储状态;
向所述至少一个数据生成节点发送所述转发节点更新后的节点状态。
在一种可能的实现方式中,所述基于所述状态信息以及所述已存储状态的状态发生时间,更新所述已存储状态包括:
当所述目标状态发生时间大于所述已存储状态的状态发生时间时,将所述已存储状态修改为所述状态信息中的节点状态。
在一种可能的实现方式中,所述方法还包括:
当所述目标状态发生时间小于或等于所述已存储状态的状态发生时间时,则不更新所述已存储状态。
第四方面,提供了一种数据传输装置,所述装置为数据生成节点,所述装置包括:
获取单元,用于获取第一转发路径上的任一转发节点的第一状态信息,所述第一转发路径用于传输数据流,所述第一状态信息用于指示所述转发节点出现故障;
确定单元,用于根据所述第一状态信息,确定所述数据流的第二转发路径,所述第二转发路径上的各个转发节点的节点状态为正常状态;
传输单元,用于在所述第二转发路径上传输所述数据流。
在一种可能的实现方式中,所述第一状态信息包括所述转发节点的故障状态以及第一状态发生时间,所述故障状态用于指示所述转发节点出现故障,所述第一状态发生时间为所述转发节点出现故障的时间。
在一种可能的实现方式中,所述确定单元用于:
当所述第一状态发生时间大于所述转发节点的已存储状态的状态发生时间时,根据多个目标转发节点的拓扑连接信息,确定所述第二转发路径,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态,所述多个目标转发节点的节点状态为正常状态。
在一种可能的实现方式中,所述获取单元用于:
接收控制节点发送的所述转发节点的第一状态信息;或,
接收所述转发节点返回的携带第一状态发生时间的所述数据流;基于接收的携带第一状态发生时间的所述数据流,获取所述转发节点的第一状态信息。
在一种可能的实现方式中,所述装置还包括:
第一更新单元,用于当所述第一状态发生时间大于所述已存储状态的状态发生时间时,更新所述已存储状态。
在一种可能的实现方式中,所述第一更新单元用于:
将所述已存储状态修改为所述故障状态;
在一种可能的实现方式中,所述第一更新单元还用于:
当所述第一状态发生时间小于或等于所述已存储状态的状态发生时间时,则不更新所述已存储状态。
在一种可能的实现方式中,所述传输单元还用于:
向控制节点发送所述转发节点的故障信息,所述故障信息包括所述故障状态和所述第一状态发生时间。
在一种可能的实现方式中,所述装置还包括添加单元;
所述获取单元,还用于获取所述数据流的第一转发路径的路由信息,所述路由信息用于指示转发路径上的各个转发节点;
所述添加单元,用于在所述数据流中添加所述路由信息;
所述传输单元,还用于向所述第一转发路径上的首个转发节点发送携带所述路由信息的所述数据流。
在一种可能的实现方式中,所述传输单元用于:
当所述第一转发路径包括至少一个转发路径时,根据所述至少一个转发路径中的任一转发路径的路由信息,向所述任一第一转发路径上的首个转发节点传输携带所述任一转发路径的路由信息的所述数据流;或,
当所述第一转发路径包括多个转发路径时,根据所述多个转发路径的路由信息,向所述多个转发路径中的每个转发路径的首个转发节点传输所述数据流中的部分数据。
在一种可能的实现方式中,所述传输单元用于:
在所述数据流中添加所述第二转发路径的路由信息,所述路由信息用于指示转发路径上的各个转发节点;
向所述第二转发路径上的首个目标转发节点发送携带所述路由信息的所述数据流。
在一种可能的实现方式中,所述装置还包括第二更新单元;
所述获取单元,还用于接收控制节点发送的所述转发节点的第二状态信息,所述第二状态信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间;
所述第二更新单元,用于根据所述第二状态信息以及所述转发节点的已存储状态的状态发生时间,更新所述已存储状态,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态。
在一种可能的实现方式中,所述第二更新单元用于:
将所述已存储状态修改为正常状态。
在一种可能的实现方式中,所述第二更新单元还用于:
当所述第二状态发生时间小于或等于所述已存储状态的状态发生时间时,则不更新所述已存储状态。
第五方面,提供了一种数据传输装置,所述装置为转发节点,所述装置包括:
接收单元,用于接收数据流;
添加单元,用于在所述数据流中添加第一状态发生时间,所述第一状态发生时间为所述转发节点出现故障的时间;
发送单元,用于向生成所述数据流的数据生成节点返回携带所述第一状态发生时间的所述数据流。
在一种可能的实现方式中,所述发送单元用于:
从所述数据流携带的路径信息中,获取所述数据生成节点的地址信息;
根据所述数据生成节点的地址信息,向所述数据生成节点发送携带所述第一状态发生时间的所述数据流。
在一种可能的实现方式中,所述发送单元还用于:
当检测到所述转发节点出现故障时,则向控制节点发送故障信息,所述故障信息包括所述转发节点的故障状态以及所述第一状态发生时间,所述故障状态用于指示所述转发节点出现故障。
在一种可能的实现方式中,所述发送单元还用于:
当检测到所述转发节点出现的故障已经修复时,则所述控制节点发送恢复信息,所述恢复信息包括所述转发节点正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间。
在一种可能的实现方式中,所述发送单元还用于:
当所述转发节点没有故障时,根据所述数据流中的路由信息,向所述路由信息指示的转发路径上的所述转发节点的下一个转发节点传输所述数据流,所述路由信息用于指示转发路径上的各个转发节点。
第六方面,提供了一种数据传输装置,所述装置为控制节点,所述装置包括:
确定单元,用于确定转发节点的节点状态,所述节点状态用于指示转发节点是否出现故障;
发送单元,用于向至少一个数据生成节点发送所述转发节点的状态信息,所述状态信息包括所述节点状态以及目标状态发生时间,所述目标状态发生时间为所述转发节点出现所述节点状态的时间。
在一种可能的实现方式中,所述确定单元包括:
获取子单元,用于获取所述转发节点的故障信息,所述故障信息包括所述转发节点的故障状态以及第一状态发生时间,所述故障状态用于指示所述转发节点出现故障,所述第一状态发生时间为所述转发节点出现故障的时间;
确定子单元,用于基于所述故障信息,将所述转发节点的节点状态确定为故障状态。
在一种可能的实现方式中,所述获取子单元用于:
接收所述转发节点发送的所述故障信息;或,
接收任一个数据生成节点发送的所述故障信息。
在一种可能的实现方式中,所述确定单元用于:
接收所述转发节点发送的恢复信息,所述恢复信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间;
基于所述恢复信息,将所述转发节点的节点状态确定为所述正常状态。
在一种可能的实现方式中,所述装置还包括:
接收单元,用于接收所述转发节点的状态信息;
所述接收单元,还用于获取所述转发节点的已存储状态的状态发生时间,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态;
更新单元,用于基于所述状态信息以及所述已存储状态的状态发生时间,更新所述已存储状态;
所述发送单元,还用于向所述至少一个数据生成节点发送所述转发节点更新后的节点状态。
在一种可能的实现方式中,所述更新单元用于:
当所述目标状态发生时间大于所述已存储状态的状态发生时间时,将所述已存储状态修改为所述状态信息中的节点状态。
在一种可能的实现方式中,所述更新单元还用于:
当所述目标状态发生时间小于或等于所述已存储状态的状态发生时间时,则不更新所述已存储状态。
第七方面,提供一种计算设备,该计算设备包括处理器和存储器,该存储器中存储有至少一条指令,该指令由该处理器加载并执行以实现如上述第一方面或上述第一方面的任一种可选方式提供的数据传输方法所执行的操作。
第八方面,提供一种网络设备,该网络设备包括处理器和存储器,该存储器中存储有至少一条指令,该指令由该处理器加载并执行以实现如上述第二方面或上述第二方面的任一种可选方式提供的数据传输方法所执行的操作。
第九方面,提供一种计算设备,该计算设备包括处理器和存储器,该存储器中存储有至少一条指令,该指令由该处理器加载并执行以实现如上述第三方面或上述第三方面的任一种可选方式提供的数据传输方法所执行的操作。
第十方面,提供一种计算机可读存储介质,该存储介质中存储有至少一条指令,该指令由处理器加载并执行以实现如上述数据传输方法所执行的操作。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的一种数据传输***的示意图;
图2是本申请实施例提供的另一种数据传输***的示意图;
图3是本申请实施例提供的一种计算设备的结构示意图;
图4是本申请实施例提供的一种网络设备的结构示意图;
图5是本申请实施例提供的一种数据传输方法的流程图;
图6是本申请实施例提供的一种数据传输方法的流程图;
图7是本申请实施例提供的另一种数据传输方法的流程图;
图8是本申请实施例提供的一种节点状态通知方法的流程图;
图9是本申请实施例提供的一种更新节点状态的流程图;
图10是本申请实施例提供的一种数据传输装置的结构示意图;
图11是本申请实施例提供的一种数据传输装置的结构示意图;
图12是本申请实施例提供的一种数据传输装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
图1是本申请实施例提供的一种数据传输***的示意图,参见图1,该数据传输***100可以包括多个转发节点101、控制节点102以及多个数据生成节点103(例如图1中的数据生成节点103a至103c)。其中,每个转发节点101上可以具有控制接口和至少一个数据接口,每个转发节点101可以通过控制接口和控制节点连接,从而多个转发节点的控制接口可以形成该数据传输***100的控制面,转发节点101可以通过控制接口向控制节点102上报本地的连接信息、故障信息以及恢复信息。本地的连接信息也即是转发节点的连接信息,一个转发节点的连接信息用于指示该转发节点所连接的转发节点;故障信息用于指示转发节点出现故障;恢复信息用于指示转发节点出现的故障已经修复。其中,转发节点101向控制节点102发送故障信息也即是转发节点101向控制节点102上报故障,转发节点101向控制节点102发送恢复信息也即是转发节点101向控制节点102上报故障恢复。
每个转发节点101可以通过数据接口与其他至少一个转发节点101连接,还可以与至少一个数据生成节点103连接,从而各个数据接口之间的连接可以组成该数据传输***100的数据面。转发节点101与转发节点101之间以及转发节点101与数据生成节点103之间可以通过数据接口传输数据流,也即是在数据面上传输数据流。当任一转发节点101出现故障时,若该转发节点101接收到任一数据流,则该转发节点101可以向生成该数据流的数据生成节点103返回该数据流,以便该数据生成节点103可以将该转发节点101的节点状态确定为故障状态。其中,返回的数据流也即是向数据生成节点103上报故障的过程。该转发节点101可以是交换机以及路由器等网络设备,本申请实施例对该转发节点101的硬件形式不做具体限定。
控制节点102用于接收各个转发节点101发送的本地的连接信息、故障信息以及恢复信息,并根据各个转发节点101的连接信息,确定该数据传输***100的拓扑连接信息,该数据传输***100的拓扑连接信息用于指示该数据传输***100中各个节点之间的连接关系,其中,各个节点之间的连接关系可以包括各个转发节点101之间的连接关系、转发节点101与数据生成节点103之间的连接关系。控制节点102还用于向该数据传输***100中的所有数据生成节点103下发该拓扑连接信息。控制节点102还可以用于接收数据生成节点103发送的转发节点101的故障信息,并根据数据生成节点103发送的转发节点101的故障信息、转发节点101发送的故障信息,或转发节点101发送的恢复信息,确定转发节点101的节点状态,并向该数据传输***100中的所有数据生成节点103下发转发节点101的节点状态,也即是状态通知的过程。在一种可能的实现方式中,该控制节点102还可以用于存储各个转发节点101的节点状态,并根据数据生成节点103发送的转发节点101的故障信息、转发节点101发送的故障信息和恢复信息,更新存储的各个转发节点101的节点状态,并将更新后的各个转发节点101的节点状态下发至各个数据生成节点103。该控制节点102可以是电脑、终端以及服务器等计算设备,本申请实施例对控制节点102的硬件形式不做具体限定。
每个数据生成节点103用于生成数据流、接收控制节点102下发的拓扑连接信息、向转发节点101发送生成的数据流以及接收转发节点101返回的数据流,并根据控制节点102下发的任一转发节点101的节点状态或者该转发节点101返回的数据流,修改存储的该转发节点101的节点状态。当数据生成节点103接收到任一转发节点101返回的数据流时,说明该转发节点101无法向其他转发节点传输数据流,则该转发节点101出现故障,该数据生成节点103可以向控制节点102发送该转发节点101的故障信息,以实现上报故障的过程。每个数据生成节点103还可以根据该数据传输***100中未出现故障的转发节点的拓扑连接信息,为自己生成的数据流确定转发路径,并将确定的转发路径的路由信息添加在数据流中,以便转发路径上的各个转发节点可以基于数据流中的路由信息,向该转发路径上该转发节点的下一个转发节点发送该数据流。在一种可能的实现方式中,该数据生成节点103还可以直接接收控制节点下发的所有转发节点的节点状态,直接根据控制节点下发的所有转发节点的节点状态,确定数据流的转发路径。该数据生成节点103可以是电脑、终端以及服务器等计算设备,本申请实施例对数据生成节点103的硬件形式不做具体限定。
当控制节点102管理的转发节点101以及数据生成节点103的数量较多时,该数据传输***100还可以包括目标节点104,该目标节点104可以作为中间转发设备,用于实现控制节点与转发节点以及控制节点与数据生成节点之间的通讯,例如图2所示的本申请实施例提供的另一种数据传输***的示意图。图2所示的数据传输***包括n个转发节点101、一个控制节点102、m个数据生成节点103以及目标节点104,其中,n和m均为大于0的整数。
其中,任一转发节点101可以包括第一转发模块11,该第一转发模块11可以包括链路层发现协议(link layer discovery protocol,LLDP)子模块111、状态标记子模块112、网络配置协议(network configure protocol,NetConf)子模块113以及第一数据转发子模块114。其中LLDP子模块111,用于接收该转发节点所连接的邻居节点(转发节点或者数据生成节点)发送的链路层发现协议数据单元(link layer discovery protocol data unit,LLDPDU),并根据接收到的LLDPDU,获取该转发节点的连接信息,并将该连接信息发送给NetConf子模块113,由NetConf子模块113将该连接信息打包发送至目标节点,再由目标节点将打包的连接信息发送至控制节点。状态标记子模块112用于存储该转发节点的节点状态以及节点状态的发生时间,一旦该转发节点检测到无法向其他转发节点传输数据,也即是转发节点出现故障,则状态标记子模块112可以将故障状态作为该转发节点的节点状态,并将转发节点发生故障的时间以及故障状态关联存储。若该转发节点的故障修复完成,则该状态标记子模块112可以将存储的故障状态更新为正常状态,将存储的发生故障的时间更新为故障修复完成的时间。一旦该转发节点的节点状态出现改变,则状态标记子模块112可以将该转发节点当前的节点状态以及当前的节点状态发生的时间发送至NetConf子模块113,由NetConf子模块113通过目标节点,向控制节点上报该转发节点当前的节点状态以及当前的节点状态发生的时间。第一数据转发子模块114用于接收数据流,当该转发节点没有故障时,第一数据转发子模块114还用于从接收的数据流中获取转发路径的路由信息,根据该路由信息传输该数据流。当该转发节点有故障时,第一数据转发子模块114还用于在接收的数据流中添加发生故障的时间,并将添加时间的数据流返回至该数据流的数据生成节点。
控制节点102可以包括网络控制模块21,网络控制模块21用来管理整个数据传输***的拓扑连接信息,网络控制模块21可以包括拓扑管理子模块211、IGP子模块212、边界网关协议(border gateway protocol,BGP)子模块213以及NetConf子模块214。其中,该NetConf子模块214用于收集数据传输***中各个转发节点的连接信息,并将收集到的连接信息发送至拓扑管理子模块211。拓扑管理子模块211用于根据各个转发节点的连接信息,确定数据传输***的拓扑连接信息,并保存该拓扑连接信息以及向各个数据生成节点下发该拓扑连接信息。当数据传输***中新增转发节点时,该拓扑管理子模块211还可以根据新增转发节点的连接信息,更新该数据传输***的拓扑连接信息。该拓扑管理子模块211还用于解析转发节点上报的故障信息和恢复信息、解析数据生成节点上报的转发节点的故障信息。该拓扑管理子模块211还用于基于解析出的故障信息或恢复信息中的内容,通过目标节点向各个数据生成节点下发转发节点的状态信息。IGP子模块212以及BGP子模块213可以分别基于IGP和BGP,保证控制节点与转发节点之间的通讯以及控制节点与数据生成节点之间的通讯。
数据生成节点103可以包括数据生成模块31以及智能网卡32,其中,数据生成模块31用于生成数据流。智能网卡32可以包括路由计算子模块321以及第二数据转发子模块322,路由计算子模块321用于接收控制节点下发的数据传输***的拓扑连接信息、接收控制节点下发的数据传输***中各个转发节点的状态信息、存储各个转发节点当前的节点状态以及当前的节点状态发生的时间以及接收各个数据生成节点的设备标识。该路由计算子模块321还用于根据没有故障的转发节点的拓扑连接信息,计算该数据生成节点生成的数据流的转发路径,其中,该转发路径为从生成该数据流的数据生成节点到目的节点之间的转发路径,其中,目的节点为用于接收该数据流的数据生成节点。该路由计算子模块321还用于将该转发路径的路由信息发送至第二数据转发子模块322。第二数据转发子模块322用于在生成的数据流中添加该数据流的转发路径的路由信息,并传输携带该路由信息的数据流,第二数据转发子模块322还用于接收转发节点返回的数据流,并将返回的数据流中的故障发生的时间发送至路由计算子模块,以便路由计算子模块321可以根据该故障发生的时间,更新该转发节点当前的节点状态以及当前的节点状态的发生时间,并通过目标节点向控制节点上报该转发节点发生故障以及发生故障的时间。当数据生成节点生成的数据流的数据量小于预设数据量时,则将该数据流视为小数据流,该路由计算子模块321可以为该小数据流计算出一个主转发路径和一个备转发路径,并将主转发路径和备转发路径存储在路由表中,当该小数据流为待传输的数据流时,该第二数据转发模块322可以从路由表中获取小数据流的两个转发路径的路由信息,并优先在主转发路径上转发该小数据流。当数据生成节点生成的数据流的数据量大于或等于预设数据量时,则将该数据流视为大数据流,该路由计算子模块321可以为该大数据流计算出多个转发路径,当该大数据流为待传输的数据流时,该第二数据转发子模块322可以在该多个转发路径中的任一个转发路径上传输该大数据流,还可以在多个转发路径上分别传输该大数据流中的部分数据,从而可以实现网络链路的均衡使用。需要说明的是,本申请实施例对该预设数据量不做具体限定。
目标节点104可以包括第二转发模块41,其中,第二转发模块41可以包括IGP子模块411、BGP子模块412以及路由管理子模块413,IGP子模块411以及BGP子模块412可以分别基于IGP和BGP,保证控制节点与转发节点之间的通讯以及控制节点与数据生成节点之间的通讯。路由管理子模块413用于接收控制节点下发的数据传输***的拓扑连接信息,并将接收的拓扑连接信息下发至数据传输***的各个数据生成节点。该目标节点104可以是交换机以及路由器等网络设备,本申请实施例对该目标节点的硬件形式不做具体限定。
需要说明的是,上述的数据传输***可以是一种数据中心,该数据传输***中的各个节点也即是在数据中心所部署的设备。该数据中心还可以应用在云场景下,该数据中心也即是云场景下的一个云数据中心。在一种可能的实现方式中,用户终端可以向云数据中心的任一数据生成节点发送数据生成请求,该数据生成请求可以携带业务需求;该数据生成节点可以基于该数据生成请求中的业务需求,生成数据流以及确定用于接收该数据流的目的节点;该数据生成节点根据该云数据中心的拓扑连接信息以及目的节点,计算该数据流的多个转发路径,其中,每个转发路径上的最后一个转发节点均与该目的节点连接;该数据生成节点可以将该数据流从多个转发路径中的至少一个转发路径上传输至该目的节点。
在一种可能的实现方式中,控制节点和数据生成节点可以是图3所示的计算设备,其中,图3是本申请实施例提供的一种计算设备的结构示意图,计算设备300包括可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processingunits,CPU)301和一个或一个以上的存储器302,其中,该存储器302中存储有至少一条指令,该至少一条指令由该处理器301加载并执行以实现下述各个方法实施例提供的方法中控制节点或数据生成节点所执行的操作。当然,该计算设备300还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该计算设备300还可以包括其他用于实现设备功能的部件,在此不做赘述。
在一种可能的实现方式中,转发节点可以是图4所示网络设备,其中图4是本申请实施例提供的一种网络设备的结构示意图,网络设备400包括可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器401和一个或一个以上的存储器402,其中,该存储器402中存储有至少一条指令,该至少一条指令由该处理器401加载并执行以实现下述各个方法实施例提供的方法中转发节点所执行的操作。当然,该网络设备400还可以具有有线或无线网络接口、键盘以及输入输出接口等部件,以便进行输入输出,该网络设备400还可以包括其他用于实现设备功能的部件,在此不做赘述。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成下述实施例中的方法。例如,该计算机可读存储介质可以是只读存储器(read-only memory,ROM)、随机存取存储器(random accessmemory,RAM)、只读光盘(compact disc read-only memory,CD-ROM)、磁带、软盘和光数据存储设备等。
控制节点可以向数据传输***中的各个数据生成节点下发该数据传输***的拓扑连接信息,以便数据生成节点可以根据该拓扑连接信息,为自己生成的数据流确定转发路径,并将该数据流的转发路径的路由信息添加在该数据流中,接收到该数据流的转发节点可以根据该数据流携带的路由信息传输该数据流。为了进一步说明该数据传输过程,参见图5所示的本申请实施例提供的一种数据传输方法的流程图,该方法的流程可以包括步骤501-511。
501、转发节点向控制节点发送连接信息,该连接信息用于指示该转发节点所连接的转发节点。
该转发节点为控制节点所管理的任一转发节点。该连接信息为该转发节点的连接信息,其中,该转发节点的连接信息可以包括该转发节点所连接的各个转发节点的设备标识、该转发节点的各个端口的端口标识以及该转发节点的各个端口所连接的转发节点的端口的端口标识。在前文中对转发节点获取连接信息,并将连接信息发送至控制节点的过程均有描述,本申请实施例在此不做赘述。
以图2中的转发节点101为例,本步骤501可以由转发节点101的NetConf子模块113来执行,NetConf子模块113可以从LLDP子模块111中收集该转发节点101的连接信息,将该连接信息打包发送至目标节点104,再由目标节点104将打包的连接信息发送至控制节点102。
需要说明的是,当该转发节点所连接的转发节点没有出现改变时,则该转发节点仅执行一次本步骤501即可,无需多次执行,当该转发节点所连接的转发节点出现改变时,则该转发节点再次执行本步骤501,再次执行时所发送的连接信息用于指示该转发节点当前所连接的转发节点。
502、控制节点接收多个转发节点的连接信息。
该多个转发节点可以是该控制节点管理的转发节点,由于该控制节点管理的每个转发节点都会向控制节点发送自己的连接信息,因此控制节点可以接收到多个转发节点的连接信息。以图2中的控制节点102为例,本步骤502可以由控制节点102的NetConf子模块214来执行,NetConf子模块214可以获取目标节点104发送的多个转发节点101的连接信息,以达到收集多个转发节点101的连接信息的目的。NetConf子模块214还可以将收集的多个转发节点101的连接信息发送至控制节点102的拓扑管理子模块211,由拓扑管理子模块211对多个转发节点101的连接信息进行处理。
503、控制节点基于多个转发节点的连接信息,确定多个转发节点的拓扑连接信息。
该拓扑连接信息用于指示多个转发节点之间的连接关系,若该多个转发节点为数据传输***中所有的转发节点,则该拓扑连接信息也即是该数据传输***的拓扑连接信息。该拓扑连接信息可以包括多个转发节点中各个转发节点所连接的转发节点以及每个转发节点的节点状态。
其中,该节点状态用于指示转发节点是否出现故障,节点状态可以包括正常状态和故障状态,该正常状态用于指示转发节点能够正常转发数据流,也即是转发节点没有出现故障,故障状态用于指示转发节点出现故障。每种节点状态可以用一种状态标识来表示,不同的节点状态的状态标识不同,例如,正常状态的状态标识可以是00,故障状态的状态标识可以是01。拓扑连接信息中包括的节点状态可以用对应的状态标识来表示,本申请实施例对状态标识的表示方式不做具体限定。需要说明的是,初始时,转发节点向控制节点发送连接信息,可以认为该转发节点未出现故障,则该拓扑连接信息中的每个转发节点的节点状态均为正常状态。
控制节点可以对多个转发节点的连接信息进行整合处理,以确定多个转发节点的拓扑结构,并根据该拓扑结构,确定该多个转发节点的拓扑连接信息。在一种可能的实现方式中,该控制节点还可以基于该第一转发节点的连接信息,确定该第一转发节点所连接的至少一个转发节点,该第一转发节点为多个转发节点中的任一转发节点;对于该至少一个转发节点中的第二转发节点,该控制节点根据该第二转发节点的连接信息,确定该第二转发节点所连接的除第一转发节点以外的第三转发节点,其中第二转发节点为至少一个转发节点中的任一个转发节点;以此类推,该控制节点再对任一第三转发节点连接的转发节点进行确定,从而控制节点可以得到该多个转发节点的拓扑结构,该拓扑结构可以是图1中的数据面或控制面中所示的多个转发节点之间的连接结构。该控制节点可以生成该拓扑连接信息以表示该拓扑结构。
当控制节点获取到该拓扑连接信息后,可以对该拓扑连接信息进行存储。当该控制节点接收到新的转发节点发送的连接信息时,则该控制节点还可以基于新的转发节点的连接信息以及该多个转发节点的连接信息,执行本步骤503,得到新的拓扑连接信息。当该控制节点接收到该多个转发节点中的任一转发节点再次发送的连接信息时,则该控制节点还可以基于该转发节点再次发送的连接信息以及该多个转发节点中其他转发节点的连接信息,执行本步骤503,得到新的拓扑连接信息。每当该控制节点获取到新的拓扑连接信息后,该控制节点可以将存储的拓扑连接信息更新为新的拓扑连接信息,并将新的拓扑连接信息下发至各个数据生成节点。仍以图2为例,本步骤503可以由该控制节点102的拓扑管理子模块211来执行。
504、控制节点向至少一个数据生成节点发送该拓扑连接信息。
该至少一个数据生成节点为该控制节点管理的所有数据生成节点。控制节点通过执行本步骤504,可以使得每个数据生成节点可以接收到该拓扑连接信息。
仍以图2为例,本步骤504可以由该控制节点102的IGP子模块212或BGP子模块213来执行,IGP子模块212或BGP子模块213可以从控制节点102的拓扑管理子模块211中获取该拓扑连接信息,并将该拓扑连接信息发送至目标节点104,由目标节点104向数据传输***100中的各个数据生成节点103发送该拓扑连接信息。
505、数据生成节点接收该拓扑连接信息。
该数据生成节点为该至少一个数据生成节点中的任一数据生成节点。当该数据生成节点接收到该拓扑连接信息后,该数据生成节点还可以对该拓扑连接信息进行存储。当该数据生成节点再次接收到新的拓扑连接信息后,可以将存储的拓扑连接信息更新为新的拓扑连接信息。仍以图2为例,本步骤505可以由数据生成节点103的路由计算子模块321来执行,该路由计算子模块321可以通过第二数据转发子模块322,从目标节点104获取该拓扑连接信息。
506、该数据生成节点基于该拓扑连接信息,确定待传输的数据流的第一转发路径。
该数据流可以是该数据生成节点所生成的任一数据流,该第一转发路径用于传输该数据流,该第一转发路径可以包括至少一个转发路径。该控制节点可以基于业务需求,确定用于最终接收该数据流的目的节点;该数据生成节点可以基于该拓扑连接信息所指示的拓扑结构、该数据生成节点所连接的转发节点以及该目的节点,确定以该数据生成节点所连接的转发节点为首个转发节点,并以该目的节点所连接的转发节点为最后一个转发节点的多个转发路径,并从该多个转发路径中选取目标个数的转发路径作为该数据流的第一转发路径。当确定出该多个转发路径后,该数据生成节点还可以基于目标算法,从多个转发路径中选择至少一个转发路径作为该数据流的第一转发路径,其中,该目标算法用于平衡数据传输***内各个转发节点的使用率,一个转发节点的使用率为该转发节点当前转发的数据量与该转发节点所能转发的最大数据量之间的比值。仍以图2为例,本步骤506可以由数据生成节点103的路由计算子模块321来执行。
507、该数据生成节点根据该数据流的第一转发路径,确定该第一转发路径的路由信息,该路由信息用于指示转发路径上的各个转发节点。
当该数据流的第一转发路径确定后,该第一转发路径可以包括至少一个转发路径,该数据生成节点生成该数据流的每个转发路径的路由信息,一个转发路径的路由信息可以包括该转发路径上各个转发节点的目标端口标识,其中,一个转发节点的目标端口标识用于指示该转发节点内用于转发该数据流的转发端口,且各个转发节点的目标端口标识可以按照转发路径上各个转发节点的位置顺序排列。例如,转发路径A上的各个转发节点依次为转发节点1、转发节点2以及转发节点3,则转发路径A的路由信息为转发节点1的目标端口标识1、转发节点2的目标端口标识2以及转发节点3的目标端口标识3。仍以图2为例,本步骤507可以由数据生成节点103的路由计算子模块321来执行。
需要说明的是,步骤505-507所示的过程也即是数据生成节点获取待传输的数据流的转发路径的路由信息的过程。
508、该数据生成节点在该数据流中添加该第一转发路径的路由信息。
当该第一转发路径包括至少一个转发路径时,若该数据生成节点仅在该至少一个转发路径中的任一转发路径上传输该数据流时,则该数据生成节点在该数据流中添加该转发路径的路由信息。
当该数据生成节点在多个转发路径上传输该数据流时,则该数据生成节点在该数据流的各个部分数据中分别添加一个转发路径的路由信息,在一种可能的实现方式中,对于该数据流的任一部分数据,该数据生成节点可以在该部分数据内添加一个转发路径的路由信息,也即是该数据流的每部分数据对应一个转发路径,以便每部分数据在对应的转发路径上传输,其中,一个转发路径的路由信息用于指示一个转发路径上的各个转发节点。
仍以图2为例,本步骤508可以由数据生成节点103的第二数据转发子模块322来执行,该第二数据转发子模块322可以从路由计算子模块321获取该路由信息,并将该路由信息添加在该数据流中。
509、数据生成节点向该转发路径上的首个转发节点发送携带第一转发路径的路由信息的该数据流。
当该第一转发路径包括至少一个转发路径时,该数据生成节点可以根据该至少一个转发路径中的任一转发路径的路由信息,向该转发路径上的首个转发节点携带该转发路径的路由信息的该数据流。
当该第一转发路径包括多个转发路径时,该数据生成节点还可以根据该多个转发路径的路由信息,向该多个转发路径中的每个转发路径的首个转发节点传输该数据流中的部分数据,此时每部分数据中携带一个转发路径的路由信息。仍以图2为例,本步骤509可以由数据生成节点103的第二数据转发子模块322来执行,该第二数据转发子模块322可以向首转发节点中的第一数据转发子模块114发送携带第一转发路径的路由信息的数据流。
510、该首个转发节点接收携带第一转发路径的路由信息的该数据流。
仍以图2为例,本步骤510可以由首转发节点中的第一数据转发子模块114来执行,该第一数据转发子模块114接收携带第一转发路径的路由信息的该数据流。
511、当该首个转发节点没有故障时,该首个转发节点根据该路由信息,向该第一转发路径上该首个转发节点的下一个转发节点传输携带第一转发路径的路由信息该数据流。
当该转发路径上的任一转发节点接收到携带第一转发路径的路由信息的该数据流后,若该转发节点没有故障,则该转发节点根据数据流中携带的路由信息,向该第一转发路径上的下一个转发节点传输携带第一转发路径的路由信息的数据流,从而使得携带第一转发路径的路由信息的该数据流可以在该转发路径上传输,直至达到目的节点。
其中,该转发节点根据该路由信息,向该转发路径上的下一个转发节点传输携带第一转发路径的路由信息的该数据流的过程可以是:该转发节点从该路由信息中获取该转发节点的下一个转发节点的目标端口标识,并向下一个转发节点的目标端口标识所指示的端口传输携带第一转发路径的路由信息的该数据流。仍以图2为例,本步骤511可以由首转发节点中的第一数据转发子模块114来执行,该第一数据转发子模块114从接收到的数据流中获取路由信息,并向路由信息所指示的转发路径上的下一个转发节点的第一数据转发子模块114发送接收到的数据流。本步骤511所示的过程也即是,转发节点根据数据流中的路由信息,向该路由信息指示的转发路径上的该转发节点的下一个转发节点传输该数据流的过程。
本申请实施例提供的方法,通过数据生成节点确定自己生成的数据流的第一转发路径,而无需控制节点为每个数据生成节点生成的数据流,确定转发路径,从而降低了控制节点的工作量,提高了数据传输***的协同能力。并且,转发节点可以直接根据数据流所携带的路由信息,传输数据流,而无需通过查找路由表,来确定数据流的转发路径的路由信息,因此提高了数据的传输效率。
当任一转发节点出现故障时,该转发节点可以向控制节点上报故障,数据生成节点也可以向控制节点上报故障,当控制节点接收到上报的该转发节点出现故障的信息时,则控制节点可以向数据传输***中的各个数据生成节点下发该转发节点的故障状态,以便各个数据生成节点可以更新存储的该转发节点的节点状态,以便数据生成节点确定新生成的数据流的转发路径,或重新为流经该转发节点的数据流确定新的转发路径时,可以规避掉该转发节点,以保证数据流的正常传输。为了进一步说明该过程,参见图6所示的本申请实施例提供的一种数据传输方法的流程图,该流程可以包括下述步骤601-615。
601、对于第一转发路径上的任一转发节点,当检测到转发节点出现故障时,该转发节点可以将自己的节点状态确定为故障状态。
该转发节点为控制节点管理的任一转发节点。该转发节点可以检测自己是否出现故障,若该转发节点无法向下一个转发节点输出数据流,则该转发节点出现故障,该转发节点可以将自己的节点状态确定为故障状态。例如,该转发节点与其他转发节点之间的连接断开,则该转发节点出现故障。仍以图2为例,本步骤601可以由转发节点101的状态标记子模块112来执行。
602、该转发节点向控制节点发送故障信息,该故障信息包括该转发节点的故障状态以及第一状态发生时间,该第一状态发生时间为该转发节点出现故障的时间。
该故障信息中的故障状态可以用故障状态的状态标识来标识,该第一状态发生时间可以用时间标识来标识。其中,该时间标识可以是时间戳,该时间标识还可以是计数标识,例如初始时,数据传输***中的每个转发节点共用同一个计数器进行计数,与该故障状态对应的计数标识可以是该转发节点出现故障时,计数器所计的数据。本申请实施例对该时间标识的表示方式不做具体限定。仍以图2为例,本步骤602可以由转发节点101的状态标记子模块112来执行,该状态标记子模块112可以将故障信息发送至NetConf子模块113,由NetConf子模块113通过目标节点104,向控制节点102上报该故障信息。
需要说明的是,当该转发节点检测到自己出现故障时,说明该转发节点的节点状态为故障状态,则该转发节点可以不执行步骤601中确定节点状态的过程,可以直接执行本步骤602。该转发节点向控制节点发送故障信息的过程,也即是该转发节点向控制节点上报故障的一种方式。该转发节点除了自动向控制节点上报故障以外,还可以通过数据生成节点向控制节点上报故障,在一种可能的实现方式中,转发节点通过数据生成节点向控制节点上报故障的过程可以包括下述步骤603-609。
603、该转发节点接收数据流。
仍以图2为例,本步骤603可以由转发节点101的第一数据转发子模块114来执行。
604、该转发节点在该数据流中添加该第一状态发生时间。
该转发节点可以将该第一状态发生时间的时间标识添加在该数据流中的报文内。仍以图2为例,本步骤604可以由转发节点101的第一数据转发子模块114来执行。
605、该转发节点向生成该数据流的数据生成节点返回携带第一状态发生时间的该数据流。
该转发节点向数据生成节点返回携带第一状态发生时间的该数据流,也即是向该数据生成节点表明自己出现故障,无法根据数据流中的路由信息继续转发该数据流,因此,该转发节点向数据生成节点返回携带第一状态发生时间的该数据流,也即是该转发节点向数据生成节点上报故障的一种方式。在一种可能的实现方式中,该转发节点可以从该数据流携带的路径信息中,获取该数据生成节点的地址信息,并根据该数据生成节点的地址信息,向该数据生成节点发送携带该第一状态发生时间的该数据流。
需要说明的是,当该转发节点向该数据生成节点返回数据流时,无需根据数据流中的路由信息,原路返回该数据流,而是直接向该数据生成节点发送携带第一状态发生时间的该数据流。仍以图2为例,本步骤605可以由转发节点101的第一数据转发子模块114来执行,该第一数据转发子模块114向数据生成节点103的第二数据转发子模块322发送携带第一状态发生时间的数据流。
606、该数据生成节点接收该转发节点返回的携带第一状态发生时间的该数据流。
仍以图2为例,本步骤606可以由数据生成节点103的第二数据转发子模块322来执行。
607、该数据生成节点获取该转发节点的已存储状态的状态发生时间,该已存储状态用于表示该数据生成节点上当前已经存储的该转发节点的节点状态。
该数据生成节点存储有数据传输***中各个转发节点的节点状态以及节点状态发生的时间,该数据生成节点可以通过状态表,来存储中各个转发节点的节点状态以及节点状态的状态发生时间。例如表1所示的状态表,该状态表中存储有n个转发节点的节点状态,其中,转发节点1的节点状态为正常状态,正常状态对应的状态发生时间为0,说明转发节点1一直都是正常的,没有出现过故障,转发节点2的节点状态为故障状态,与该故障状态对应的状态发生时间为2,则说明在2点时转发节点2出现故障,且从2点至当前时刻转发节点2的故障一直未修复完成。转发节点n的节点状态也为正常状态。
表1
转发节点 | 节点状态 | 状态发生时间 |
转发节点1 | 正常状态 | 0 |
转发节点2 | 故障状态 | 2 |
... | ... | ... |
转发节点n | 正常状态 | 0 |
当该数据生成节点接收到该转发节点返回的携带第一状态发生时间的该数据流时,该数据生成节点可以从状态表中,获取该转发节点的已存储状态以及该已存储状态的发生时间。以该转发节点为表1中的转发节点1为例,则该转发节点1的已存储状态为正常状态,该转发节点1的已存储状态的发生时间为0。仍以图2为例,本步骤607可以由数据生成节点103的路由计算子模块321来执行。
608、若该第一状态发生时间大于该已存储状态的状态发生时间,则该数据生成节点将所该转发节点的节点状态确定为故障状态,将该已存储状态修改为故障状态,否则,不修改该已存储状态。
当该数据生成节点接收到该转发节点返回的携带第一状态发生时间的该数据流时,该数据生成节点可以通过解析该数据流中的报文,得到该转发节点的故障状态的第一状态发生时间。当该第一状态发生时间大于该已存储状态的状态发生时间,则说明该故障状态为该转发节点当前的节点状态,则该数据生成节点可以将该转发节点的节点状态确定为故障状态。为了使得该转发节点的已存储状态为最新的节点状态,则该数据生成节点可以将状态表中的该转发节点的已存储状态修改为故障状态,将该已存储状态的状态发生时间修改为该第一状态发生时间,此时该故障状态成为该转发节点的已存储状态。仍以图2为例,本步骤608可以由数据生成节点103的路由计算子模块321来执行,路由计算子模块321可以从第二数据转发子模块322中获取该第一状态发生时间,并基于获取的第一状态发生时间执行本步骤608。
当该第一状态发生时间小于或等于该已存储状态的状态发生时间,则说明该故障状态不是该转发节点当前的节点状态,而该已存储状态为该转发节点当前的节点状态,则该数据生成节点无需对该转发节点的已存储状态进行更新,也即是无需修改该已存储状态。本步骤608所示的过程也即是数据生成节点基于该转发节点的第一状态发生时间以及已存储状态的状态发生时间,更新该转发节点的已存储状态的过程。
该数据生成节点通过将第一状态发生时间与该已存储状态的状态发生时间进行比较,来更新该转发节点的节点状态,可以使得数据生成节点中存储的该转发节点的节点状态为最新的节点状态,从而使得数据生成节点可以根据转发节点的最新的节点状态,考虑如何使用该转发节点。
若该数据生成节点将该转发节点的节点状态确定为故障状态,则该数据生成节点可以为该数据流重新规划转发路径,以替代该转发节点所在的该数据流的第一转发路径。在另一种可能的实现方式中,若该数据生成节点将该转发节点的节点状态确定为故障状态,当该数据流的第一转发路径有多个,该转发节点所在的转发路径为该多个第一转发路径中的部分转发路径,且业务需求对该数据流的传输时长没有要求时,则该数据生成节点还可以不为该数据流重新规划转发路径,而是直接使用不包括该转发节点的第一转发路径继续传输该数据流。在一种可能的实现方式中,若该数据生成节点将该转发节点的节点状态确定为故障状态,且该数据流的第一转发路径仅一条时,则数据转发节点还需为该数据流重新规划转发路径,并在重新规划的转发路径上传输该数据流。
其中,数据生成节点为该数据流重新规划转发路径的过程可以包括下述步骤1-3。
步骤1、该数据生成节点根据多个目标转发节点的拓扑连接信息,确定该数据流的第二转发路径,该目标转发节点的节点状态为正常状态。
该第二转发路径由目标转发节点组成,因此,该第二转发路径上的各个转发节点的节点状态为正常状态。该数据生成节点可以将状态表中节点状态为正常状态的转发节点作为目标转发节点,来执行本步骤1。其中,本步骤1所示的过程与上述步骤506所示的过程同理,在此,本申请实施例对本步骤1不做赘述。需要说明的是,该数据生成节点在执行本步骤1之前,还可以先获取该多个目标转发节点的拓扑连接信息,在一种可能的实现方式中,该数据生成节点可以接收控制节点发送的多个目标转发节点的拓扑连接信息。
步骤2、该数据生成节点在该数据流中添加该第二转发路径的路由信息。
其中,本步骤2所示的过程与上述步骤507-508所示的过程同理,在此,本申请实施例对本步骤2不做赘述。
步骤3、该数据生成节点向该第二转发路径上的首个目标转发节点发送携带该路由信息的该数据流。
该第二转发路径上的任一目标转发节点接收到携带该路由信息的该数据流后,可以基于该数据流中携带的路由信息,对接收到的数据流进行传输,从而可以使得该数据流可以在该第二转发路径上传输。
609、若将该转发节点的节点状态确定为故障状态,则该数据生成节点向控制节点发送该转发节点的故障信息,该故障信息包括该转发节点的故障状态和该第一状态发生时间。
该转发节点的故障信息在上述步骤602中进行了相关描述,在此,本申请实施例对该故障信息不做赘述。本步骤609所示的过程也即是数据生成节点向控制节点上报转发节点故障的过程。仍以图2为例,本步骤609可以由数据生成节点103的路由计算子模块321来执行,当路由计算子模块321将转发节点101的节点状态确定为故障状态时,路由计算子模块321则可以向目标节点104的第二转发模块41发送该故障信息,由目标节点104的第二转发模块41将故障信息转发至控制节点102。
610、控制节点获取该转发节点的故障信息。
该控制节点可以接收该转发节点发送的故障信息,以获取该故障信息。该控制节点还可以接收该数据生成节点发送的故障信息,以获取该故障信息。仍以图2为例,本步骤610可以由控制节点102的IGP子模块212或BGP子模块213来执行,IGP子模块212或BGP子模块213接收目标节点104的第二转发模块41发送的该故障信息。
611、控制节点基于该故障信息,将该转发节点的节点状态确定为故障状态。
由于该故障信息用于指示转发节点出现故障,且该故障信息中携带有该转发节点的故障状态,则该控制节点可以将该转发节点的节点状态确定为故障状态。需要说明的是,步骤610和611所示的过程也即是控制节点确定该转发节点的节点状态的过程。仍以图2为例,本步骤611可以由控制节点102的拓扑管理子模块211来执行,该拓扑管理子模块211可以解析IGP子模块212或BGP子模块213发送来的故障信息,得到转发节点101的节点状态。
612、控制节点向至少一个数据生成节点发送第一状态信息,该第一状态信息包括该转发节点的故障状态和该第一状态发生时间。
该至少一个数据生成节点可以是该控制节点管理的所有数据生成节点,从而通过本步骤612,控制节点可以将该转发节点的故障状态通知给所有的数据生成节点。
若该控制节点接收的故障信息是由第一数据生成节点发送的,则该控制节点还可以不向该第一数据生成节点发送该第一状态信息,而是向控制节点管理的除该第一数据生成节点以外的数据生成节点发送该第一状态信息,其中,该第一数据生成节点为该控制节点管理的任一个数据生成节点。仍以图2为例,本步骤612可以由该控制节点102的拓扑管理子模块211来执行。
613、数据生成节点接收该第一状态信息。
该数据生成节点为该至少一个数据生成节点中的任一数据生成节点。本步骤613所示的过程也即是该数据生成节点接收控制节点发送的该转发节点的状态信息的过程。仍以图2为例,本步骤613可以由数据生成节点103的路由计算子模块321来执行,该路由计算子模块321可以通过第二数据转发子模块322从目标节点104获取第一状态信息。
614、该数据生成节点获取该转发节点的已存储状态的状态发生时间,该已存储状态用于表示该数据生成节点上当前已经存储的该转发节点的节点状态。
本步骤614所示的过程与步骤607所示的过程同理,在此,本申请实施例对本步骤614不做赘述。
615、若该第一状态发生时间大于该已存储状态的状态发生时间,则该数据生成节点将该已存储状态修改为该故障状态,否则,不修改该已存储状态。
本步骤615所示的过程与步骤608所示的过程同理,在此,本申请实施例对本步骤615不做赘述。本步骤615所示的过程也即是当该第一状态发生时间大于该已存储状态的状态发生时间时,数据生成节点更新该转发节点的已存储状态的过程。
当第一转发路径上的转发节点出现故障时,该数据生成节点可以从状态表中获取节点状态为正常状态的多个目标转发节点,并基于多个目标转发节点的拓扑连接信息,确定该数据流的第二转发路径,并在确定的第二转发路径上的传输该数据流,例如,上述步骤1-3所示的过程。
需要说明的是,上述步骤601-615所示的过程为转发节点或数据生成向控制节点上报故障,控制节点根据上报的故障,向控制节点管理的各个数据生成节点发送转发节点的第一状态信息,由各个数据生成节点根据控制节点下发的转发节点的第一状态信息,更新本地存储的该转发节点的节点状态的过程。数据生成节点还可以不根据控制节点下发的第一状态信息更新转发节点的已存储状态,而是由控制节点来更新转发节点的已存储状态。在一种可能的实现方式中,控制节点还可以存储各个转发节点的已存储状态,并直接根据上报的故障,更新本地存储的该转发节点的节点状态,并向各个数据生成节点发送更新后的该转发节点的节点状态,此时该数据生成节点仅需要存储控制节点下发的转发节点的节点状态即可。
在一种可能的实现方式中,该控制节点内还可以存储有各个转发节点的节点状态,该控制节点可以使用表1所示的状态表,来存储各个转发节点的节点状态。当该控制节点获取到该转发节点的故障信息后,该控制节点还可以从状态表中获取该转发节点的已存储状态和该已存储状态的发生时间;该控制节点可以基于该故障信息以及该转发节点的已存储状态的状态发生时间,来确定该转发节点的节点状态。在一种可能的实现方式中,若该第一状态发生时间大于该已存储状态的状态发生时间,则该控制节点将该转发节点的节点状态确定为故障状态,否则,该控制节点将该转发节点的节点状态确定为该转发节点的已存储状态。若状态表中该转发节点的已存储状态不是故障状态,则该控制节点将该转发节点的已存储状态更新为故障状态,当控制节点将该转发节点的已存储状态更新为故障状态后,该控制节点可以执行612;或者,该控制节点还可以直接将更新后的状态表发送给各个数据生成节点,以便各个数据生成节点可以直接将本地存储的状态表更新为控制节点下发的状态表,并根据状态表中没有故障的转发节点为数据流规划转发路径。
需要说明的是,步骤601-615所示的过程,介绍了数据生成节点根据控制节点下发的第一状态信息或转发节点返回的携带第一状态发生时间的数据流,更新转发节点的已存储状态,并确定该数据流的第二转发路径,在第二转发路径上传输该数据流的过程。在一种可能的实现方式中,当数据生成节点仅接收控制节点下发的第一状态信息,而没有接收转发节点返回的携带第一状态发生时间的数据流时,若接收到控制节点下发的第一状态信息,也就说明该转发节点出现故障,该数据生成节点也可以不更新该转发节点的已存储状态,而是直接确定该数据流的第二转发路径。在一种可能的实现方式中,当数据生成节点仅接收转发节点返回的携带第一状态发生时间的数据流,而没有接收控制节点下发的第一状态信息时,若接收到转发节点返回的携带第一状态发生时间的数据流,也就说明该转发节点出现故障,该数据生成节点也可以不更新该转发节点的已存储状态,而是直接确定该数据流的第二转发路径。
本申请实施例提供的方法,数据生成节点通过获取第一转发路径上的任一转发节点的第一状态信息,可以确定该转发节点出现故障,则该数据生成节点可以根据获取的第一状态信息,为第一转发路径上传输的数据流确定第二转发路径,并在第二转发路径上传输数据流,由于没有在第一转发路径上传输数据流,而是在第二转发路径上传输数据流,且第二转发路径上的各个转节点的节点状态为正常状态,也即是第二转发路径上没有故障转发节点,从而可以避免数据流在故障转发节点出现堵塞。在现有技术中,当该转发节点出现故障时,该转发节点无法向数据生成节点返回数据流,也无法向控制节点上报故障,而是等待转发节点的邻居节点对其进行检测,若邻居节点检测到该转发节点出现故障,则该邻居节点向控制节点上报该转发节点出现故障。而在本申请中,当该转发节点出现故障时,若该转发节点与生成该数据流的数据生成节点连接,则该转发节点可以向该数据生成节点返回该数据流,以指示该转发节点出现故障。并且,当该转发节点与该数据生成节点之间的连接断开时,该转发节点无法向该数据生成节点返回数据流,该转发节点还可以自动向控制节点上报故障,而无需邻居节点对转发节点进行测试并上报故障。当然,该转发节点一边可以通过向数据生成节点返回数据流,再由数据生成节点向控制节点来上报该转发节点故障,另一边也可以直接向控制节点上报故障,这两种上报故障的方式可以并行,从而形成了多路上报故障的运行机制,使得任一转发节点的故障状态能够及时上报至控制节点。且控制节点每接收到一个转发节点的节点状态后,就会向通知所有的数据生成节点,以便所有的数据生成节点可以及时更新该转发节点的节点状态。
当任一故障的转发节点的故障修复完成后,该转发节点可以向控制节点上报修复完成的信息,使得控制节点可以通知所有的数据生成节点,以便每个数据生成节点可以将该转发节点的节点状态确定为正常状态。为了进一步说明该过程,参见图7所示的本申请实施例提供的另一种数据传输方法的流程图,该流程可以包括下述步骤701-708。
701、当检测到该转发节点出现的故障已经修复时,则该转发节点将自己的节点状态确定为正常状态。
当该转发节点出现故障后,若该转发节点检测到与其他转发节点之间可以正常通讯,则该转发节点出现的故障已经修复,该转发节点也就可以将自己的节点状态确定为正常状态,则该转发节点可以将自己存储的节点状态由故障状态更新为正常状态,并将故障状态发生的时间更新为故障恢复的时间。仍以图2为例,本步骤701可以由转发节点101的状态标记子模块112来执行。
702、该转发节点向控制节点发送恢复信息,该恢复信息包括该转发节点的正常状态和第二状态发生时间,该第二状态发生时间为该转发节点故障恢复的时间。
该恢复信息中的正常状态可以用正常状态的状态标识来标识,该第二状态发生时间可以用时间标识来标识。仍以图2为例,本步骤702可以由转发节点101的状态标记子模块112来执行,该状态标记子模块112可以将恢复信息发送至NetConf子模块113,由NetConf子模块113通过目标节点104,向控制节点102上报该恢复信息。需要说明的是,当该转发节点检测到自己出现的故障已经修复时,说明该转发节点的节点状态为正常状态,则该转发节点可以不执行步骤701中确定节点状态的过程,而是直接执行本步骤702。
703、控制节点接收该转发节点发送的恢复信息。
仍以图2为例,本步骤703可以由控制节点102的IGP子模块212或BGP子模块213来执行,IGP子模块212或BGP子模块213接收目标节点104的第二转发模块41发送的恢复信息。
704、控制节点基于该恢复信息,将该转发节点的节点状态确定为正常状态。
由于该恢复信息用于指示转发节点出现的故障已经修复完成,且该恢复信息中携带有该转发节点的正常状态,则该控制节点可以将该转发节点的节点状态确定为正常状态。需要说明的是,步骤703和704所示的过程也即是控制节点确定该转发节点的节点状态的过程。仍以图2为例,本步骤704可以由控制节点102的拓扑管理子模块211来执行,拓扑管理子模块211解析IGP子模块212或BGP子模块213发送来的恢复信息,得到转发节点101的节点状态。
705、控制节点向至少一个数据生成节点发送该转发节点的第二状态信息,该第二状态信息包括该转发节点的正常状态和该第二状态发生时间。
该至少一个数据生成节点可以是该控制节点管理的所有数据生成节点,从而通过本步骤705,控制节点可以将该转发节点的正常状态通知给所有的数据生成节点。仍以图2为例,本步骤705可以由该控制节点102的拓扑管理子模块211来执行。
706、该数据生成节点接收控制节点发送的转发节点的第二状态信息。
该数据生成节点为该至少一个数据生成节点中的任一数据生成节点。仍以图2为例,本步骤706可以由数据生成节点103的路由计算子模块321来执行,该路由计算子模块321可以通过第二数据转发子模块322从目标节点104获取第二状态信息。
707、该数据生成节点获取该转发节点的已存储状态的状态发生时间,该已存储状态用于表示该数据生成节点上当前已经存储的所述转发节点的节点状态。
本步骤707所示的过程与步骤607所示的过程同理,在此,本申请实施例对本步骤707不做赘述。
708、若该第二状态发生时间大于该已存储状态的状态发生时间,则该数据生成节点将该已存储状态修改为该正常状态,否则,不修改该已存储状态。
当该第二状态发生时间大于该已存储状态的状态发生时间,则说明该正常状态为该转发节点当前的节点状态,则该数据生成节点可以将该转发节点的节点状态确定为正常状态。为了使得该转发节点的已存储状态为最新的节点状态,则该数据生成节点可以将状态表中的该转发节点的已存储状态修改为正常状态,将该已存储状态的状态发生时间修改为该第二状态发生时间,此时该正常状态也即是该转发节点的已存储状态。
当该第二状态发生时间小于或等于该已存储状态的状态发生时间,则说明该正常状态不是该转发节点当前的节点状态,而该已存储状态为该转发节点当前的节点状态,则该数据生成节点无需对该转发节点的已存储状态进行更新,也即是无需修改该已存储状态。仍以图2为例,本步骤708可以由数据生成节点103的路由计算子模块321来执行,路由计算子模块321可以从第二数据转发子模块322中获取该第二状态发生时间,并基于获取的第二状态发生时间执行本步骤708。
需要说明的是,上述步骤701-708所示的过程为转发节点成向控制节点上报恢复信息,控制节点根据上报的恢复信息,向控制节点管理的各个数据生成节点发送转发节点的第二状态信息,由各个数据生成节点根据控制节点下发的转发节点的第二状态信息,更新本地存储的该转发节点的节点状态。在一种可能的实现方式中,控制节点还可以存储各个转发节点的已存储状态,并直接根据上报的恢复信息,更新本地存储的该转发节点的节点状态,并向各个数据生成节点发送更新后的该转发节点的节点状态,此时该数据生成节点仅需要存储控制节点下发的转发节点的节点状态即可。
在一种可能的实现方式中,当该控制节点获取到该转发节点的恢复信息后,该控制节点还可以从状态表中获取该转发节点的已存储状态和该已存储状态的发生时间;该控制节点可以基于该恢复信息以及该转发节点的已存储状态的状态发生时间,来确定该转发节点的节点状态。在一种可能的实现方式中,若该第二状态发生时间大于该已存储状态的状态发生时间,则该控制节点将该转发节点的节点状态确定为恢复状态,否则,该控制节点将该转发节点的节点状态确定为该转发节点的已存储状态。若状态表中该转发节点的已存储状态不是正常状态,则该控制节点将该转发节点的已存储状态更新为正常状态,当控制节点将该转发节点的已存储状态更新为正常状态后,并将更新后的状态表发送给各个数据生成节点,以便各个数据生成节点可以直接将本地存储的状态表更新为控制节点下发的状态表,并根据状态表中没有故障的转发节点为数据流规划转发路径。
本申请实施例提供的方法,通过故障的转发节点向控制节点上报恢复信息,使得控制节点可以向所有的数据生成节点下发第二状态信息,以便每个数据生成节点都可以将该转发节点的节点状态修改为正常状态,每个数据生成节点在为数据流确定转发路径时,可以考虑到该转发节点,从而可以为数据流提供更多的转发路径。
需要说明的是,一个转发节点的状态信息用于指示该转发节点的节点状态和该节点状态发生的时间,因此,一个转发节点的状态信息可以包括该转发节点的节点状态以及目标状态发生时间,其中,该节点状态用于指示该转发节点是否出现故障,该目标状态发生时间为该转发节点出现状态信息中的节点状态的时间。由于该转发节点的节点状态可以是故障状态,也可以是正常状态,也即是需要两种状态信息来携带转发节点不同的节点状态,因此,一个转发节点的状态信息可以是第一状态信息,也可以是第二状态信息。其中,第一状态信息用于指示转发节点出现故障以及发生故障的时间,也即是,第一状态信息可以包括该转发节点的故障状态和第一状态发生时间。第二状态信息用于指示转发节点故障恢复以及故障恢复发生的时间,也即是第二状态信息可以包括该转发节点的正常状态和第二状态发生时间。可以理解的是,当转发节点的节点状态为故障状态时,与该节点状态对应的目标状态发生时间也即是第一状态发生时间,当转发节点的节点状态为正常状态时,与该节点状态对应的目标状态发生时间也即是第二状态发生时间。
基于以上对状态信息、第一状态信息以及第二状态信息的描述可知:
数据生成节点接收控制节点发送的转发节点的第一状态信息或第二状态信息的过程,也即是数据生成节点接收控制节点发送的状态信息的过程。当数据生成节点接收转发节点返回的携带第一状态发生时间的数据流后,就可以基于接收的携带第一状态发生时间的数据流,获取转发节点的第一状态信息,这两个过程都是数据生成节点获取转发节点的状态信息的过程。步骤615或步骤708所示的过程也即是当目标状态发生时间大于该已存储状态的状态发生时间时,数据生成节点更新转发节点的已存储状态的过程。上述步骤615以及数据生成节点基于多个目标转发节点的拓扑连接信息,确定该数据流的第二转发路径的过程,也即是当该目标状态发生时间大于该已存储状态的状态发生时间时,若该转发节点的节点状态为故障状态,数据生成节点根据多个目标转发节点的拓扑连接信息,确定该第二转发路径的过程。
为了进一步说明在数据传输***中传递转发节点的节点状态的过程,参见图8所示的本申请实施例提供的一种节点状态通知方法的流程图。
801、当转发节点的节点状态发生改变时,该转发节点将目标状态发生时间与该转发节点当前的节点状态进行关联存储。
802、若当前的节点状态为故障状态,则该转发节点可以向控制节点发送故障信息,若当前的节点状态为正常状态,则该转发节点可以向控制节点发送恢复信息。
803、若当前的节点状态为故障状态,则该转发节点向数据生成节点返回携带目标状态发生时间的数据流。
804、数据生成节点根据该转发节点返回的数据流,向控制节点发送该转发节点的故障信息。
805、当控制节点接收到任一故障信息或恢复信息,向所有的数据生成节点下发对应的状态信息。
本申请实施例提供的方法,无需邻居节点对转发节点的节点状态进行测试,一旦转发节点出现故障,故障的转发节点可以自动向控制节点上报故障,且数据生成节点也可以根据故障的转发节点返回的数据流,向控制节点上报故障转发节点的节点状态,从而形成了多路上报故障的运行机制,使得任一转发节点的故障状态能够及时上报。
为了进一步说明数据生成节点根据转发节点的状态信息,更新转发节点的节点状态的过程,参见图9所示本申请实施例提供的一种更新节点状态的流程图。
901、数据生成节点接收控制节点发送的转发节点的状态信息,并对该状态信息进行解析,得到该状态信息携带的目标状态发生时间和转发节点的节点状态。
902、数据生成节点查询本地的状态表,若状态表中存储有该转发节点的已存储状态,则执行步骤903,否则将该状态信息视为无效数据,本次处理结束。
903、若目标状态发生时间大于该已存储状态的状态发生时间,则该数据生成节点将该已存储状态修改为状态信息中的节点状态,否则,不修改该已存储状态,也即是本次处理结束。
本申请实施例提供的方法,通过控制节点向各个数据生成节点下发转发节点的节点状态以及该节点状态的发生时间,以便各个数据生成节点可以根据接收到的转发节点的节点状态以及该节点状态的发生时间,更新该转发节点的已存储状态和已存储状态的状态发生时间,以便后续数据生成节点可以根据各个转发节点的最新的已存储状态,来为数据流规划转发路径。
图10是本申请实施例提供的一种数据传输装置的结构示意图,所述装置为数据生成节点,所述装置包括:
获取单元1001,用于获取第一转发路径上的任一转发节点的第一状态信息,所述第一转发路径用于传输数据流,所述第一状态信息用于指示所述转发节点出现故障;
确定单元1002,用于根据所述第一状态信息,确定所述数据流的第二转发路径,所述第二转发路径上的各个转发节点的节点状态为正常状态;
传输单元1003,用于在所述第二转发路径上传输所述数据流。
可选地,所述第一状态信息包括所述转发节点的故障状态以及第一状态发生时间,所述故障状态用于指示所述转发节点出现故障,所述第一状态发生时间为所述转发节点出现故障的时间。
可选地,所述确定单元1002用于:
当所述第一状态发生时间大于所述转发节点的已存储状态的状态发生时间时,根据多个目标转发节点的拓扑连接信息,确定所述第二转发路径,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态,所述多个目标转发节点的节点状态为正常状态。
可选地,所述获取单元1001用于:
接收控制节点发送的所述转发节点的第一状态信息;或,
接收所述转发节点返回的携带第一状态发生时间的所述数据流;基于接收的携带第一状态发生时间的所述数据流,获取所述转发节点的第一状态信息。
可选地,所述装置还包括:
第一更新单元,用于当所述第一状态发生时间大于所述已存储状态的状态发生时间时,更新所述已存储状态。
可选地,所述第一更新单元用于:
将所述已存储状态修改为所述故障状态;
可选地,所述第一更新单元还用于:
当所述第一状态发生时间小于或等于所述已存储状态的状态发生时间时,则不更新所述已存储状态。
可选地,所述传输单元1003还用于:
向控制节点发送所述转发节点的故障信息,所述故障信息包括所述故障状态和所述第一状态发生时间。
可选地,所述装置还包括添加单元;
所述获取单元1001,还用于获取所述数据流的第一转发路径的路由信息,所述路由信息用于指示转发路径上的各个转发节点;
所述添加单元,用于在所述数据流中添加所述路由信息;
所述传输单元1003,还用于向所述第一转发路径上的首个转发节点发送携带所述路由信息的所述数据流。
可选地,所述传输单元1003用于:
当所述第一转发路径包括至少一个转发路径时,根据所述至少一个转发路径中的任一转发路径的路由信息,向所述任一第一转发路径上的首个转发节点传输携带所述任一转发路径的路由信息的所述数据流;或,
当所述第一转发路径包括多个转发路径时,根据所述多个转发路径的路由信息,向所述多个转发路径中的每个转发路径的首个转发节点传输所述数据流中的部分数据。
可选地,所述传输单元1003用于:
在所述数据流中添加所述第二转发路径的路由信息,所述路由信息用于指示转发路径上的各个转发节点;
向所述第二转发路径上的首个目标转发节点发送携带所述路由信息的所述数据流。
可选地,所述装置还包括第二更新单元;
所述获取单元,还用于接收控制节点发送的所述转发节点的第二状态信息,所述第二状态信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间;
所述第二更新单元,用于根据所述第二状态信息以及所述转发节点的已存储状态的状态发生时间,更新所述已存储状态,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态。
可选地,所述第二更新单元用于:
将所述已存储状态修改为正常状态。
可选地,所述第二更新单元还用于:
当所述第二状态发生时间小于或等于所述已存储状态的状态发生时间时,则不更新所述已存储状态。
数据生成节点通过获取第一转发路径上的任一转发节点的第一状态信息,可以确定该转发节点出现故障,则该数据生成节点可以根据获取的第一状态信息,为第一转发路径上传输的数据流确定第二转发路径,并在第二转发路径上传输数据流,由于没有在第一转发路径上传输数据流,而是在第二转发路径上传输数据流,且第二转发路径上的各个转节点的节点状态为正常状态,也即是第二转发路径上没有故障转发节点,从而可以避免数据流在故障转发节点出现堵塞。
图11是本申请实施例提供的一种数据传输装置的结构示意图,所述装置为转发节点,所述装置包括:
接收单元1101,用于接收数据流;
添加单元1102,用于在所述数据流中添加第一状态发生时间,所述第一状态发生时间为所述转发节点出现故障的时间;
发送单元1103,用于向生成所述数据流的数据生成节点返回携带所述第一状态发生时间的所述数据流。
可选地,所述发送单元1103用于:
从所述数据流携带的路径信息中,获取所述数据生成节点的地址信息;
根据所述数据生成节点的地址信息,向所述数据生成节点发送携带所述第一状态发生时间的所述数据流。
可选地,所述发送单元还用于:
当检测到所述转发节点出现故障时,则向控制节点发送故障信息,所述故障信息包括所述转发节点的故障状态以及所述第一状态发生时间,所述故障状态用于指示所述转发节点出现故障。
可选地,所述确定单元,所述发送单元还用于:
当检测到所述转发节点出现的故障已经修复时,则向所述控制节点发送恢复信息,所述恢复信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间。
可选地,所述发送单元1103还用于:
当所述转发节点没有故障时,根据所述数据流中的路由信息,向所述路由信息指示的转发路径上的所述转发节点的下一个转发节点传输所述数据流,所述路由信息用于指示转发路径上的各个转发节点。
当该转发节点出现故障时,可以直接在接收的数据流中添加第一状态发生时间,以指示该转发节点出现故障,并向数据生成节点返回携带第一状态发生的时间数据流,由此可见,由于故障的转发节点可以直接将接收的数据流再次返回给数据生成节点,从而使得数据流无法在故障的转发节点长时间停留,那么就可以避免数据流在故障的转发节点堵塞。
图12是本申请实施例提供的一种数据传输装置的结构示意图,所述装置为控制节点,所述装置包括:
确定单元1201,用于确定转发节点的节点状态,所述节点状态用于指示转发节点是否出现故障;
发送单元1202,用于向至少一个数据生成节点发送所述转发节点的状态信息,所述状态信息包括所述节点状态以及第一状态发生时间,所述第一状态发生时间为所述转发节点出现所述节点状态的时间。
可选地,所述确定单元1201包括:
获取子单元,用于获取所述转发节点的故障信息,所述故障信息包括所述转发节点的故障状态以及第二状态发生时间,所述故障状态用于指示所述转发节点出现故障,所述第二状态发生时间为所述转发节点出现故障的时间;
确定子单元,用于基于所述故障信息,将所述转发节点的节点状态确定为故障状态。
可选地,所述获取子单元用于:
接收所述转发节点发送的所述故障信息;或,
接收任一个数据生成节点发送的所述故障信息。
可选地,所述确定单元1201用于:
接收所述转发节点发送的恢复信息,所述恢复信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间;
基于所述恢复信息,将所述转发节点的节点状态确定为所述正常状态。
可选地,所述方法还包括:
接收单元,用于接收所述转发节点的状态信息,所述状态信息包括所述转发节点的节点状态以及第一状态发生时间,所述节点状态用于指示所述转发节点是否出现故障,所述第一状态发生时间为所述转发节点出现所述节点状态的时间;
所述接收单元,还用于获取所述转发节点的已存储状态的状态发生时间,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态;
更新单元,用于基于所述状态信息以及所述已存储状态的状态发生时间,更新所述已存储状态;
所述发送单元1202,还用于向所述至少一个数据生成节点发送所述转发节点更新后的节点状态。
可选地,所述更新单元用于:
当所述目标状态发生时间大于所述已存储状态的状态发生时间时,将所述已存储状态修改为所述状态信息中的所述节点状态。
可选地,所述更新单元还用于:
当所述目标状态发生时间小于或等于所述已存储状态的状态发生时间时,则不更新所述已存储状态。
上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。
需要说明的是:上述实施例提供的数据传输装置在传输数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据传输方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本申请的可选实施例,并不用以限制本申请,凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (18)
1.一种数据传输方法,其特征在于,应用于数据生成节点,所述方法包括:
获取第一转发路径上的任一转发节点的第一状态信息,所述第一转发路径用于传输数据流,所述第一状态信息用于指示所述转发节点出现故障;
根据所述第一状态信息以及多个目标转发节点的拓扑连接信息,确定所述数据流的第二转发路径,所述第二转发路径上的各个转发节点的节点状态为正常状态,所述多个目标转发节点的节点状态为正常状态;
在所述第二转发路径上传输所述数据流;
其中,所述获取第一转发路径上的任一转发节点的第一状态信息包括:
接收控制节点发送的所述转发节点的第一状态信息;或,
若所述转发节点与生成所述数据流的所述数据生成节点连接,接收所述转发节点返回的携带第一状态发生时间的所述数据流,所述第一状态发生时间为所述转发节点出现故障的时间;基于接收的携带第一状态发生时间的所述数据流,获取所述转发节点的第一状态信息。
2.根据权利要求1所述的方法,其特征在于,所述第一状态信息包括所述转发节点的故障状态以及所述第一状态发生时间,所述故障状态用于指示所述转发节点出现故障。
3.根据权利要求2所述的方法,其特征在于,所述根据所述第一状态信息以及多个目标转发节点的拓扑连接信息,确定所述数据流的第二转发路径包括:
当所述第一状态发生时间大于所述转发节点的已存储状态的状态发生时间时,根据多个目标转发节点的拓扑连接信息,确定所述第二转发路径,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态。
4.根据权利要求1所述的方法,其特征在于,所述接收所述转发节点返回的携带第一状态发生时间的所述数据流之后,所述方法还包括:
向控制节点发送所述转发节点的故障信息,所述故障信息包括故障状态和所述第一状态发生时间,所述故障状态用于指示所述转发节点出现故障。
5.根据权利要求2所述的方法,其特征在于,所述获取第一转发路径上的任一转发节点的第一状态信息之后,所述方法还包括:
当所述第一状态发生时间大于所述转发节点的已存储状态的状态发生时间时,更新所述已存储状态,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收控制节点发送的所述转发节点的第二状态信息,所述第二状态信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间;
根据所述第二状态信息以及所述转发节点的已存储状态的状态发生时间,更新所述已存储状态,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态。
7.一种数据传输方法,其特征在于,应用于转发节点,所述方法包括:
接收数据流;
在所述数据流中添加第一状态发生时间,所述第一状态发生时间为所述转发节点出现故障的时间;
若所述转发节点与生成所述数据流的数据生成节点连接,向生成所述数据流的数据生成节点返回携带所述第一状态发生时间的所述数据流;
由所述数据生成节点基于接收的携带第一状态发生时间的所述数据流,获取所述转发节点的第一状态信息,根据所述第一状态信息以及多个目标转发节点的拓扑连接信息,确定所述数据流的第二转发路径,在所述第二转发路径上传输所述数据流,其中,所述第一状态信息用于指示所述转发节点出现故障,所述第二转发路径上的各个转发节点的节点状态为正常状态,所述多个目标转发节点的节点状态为正常状态。
8.根据权利要求7所述的方法,其特征在于,所述向生成所述数据流的数据生成节点返回携带所述第一状态发生时间的所述数据流包括:
从所述数据流携带的路径信息中,获取所述数据生成节点的地址信息;
根据所述数据生成节点的地址信息,向所述数据生成节点发送携带所述第一状态发生时间的所述数据流。
9.根据权利要求7所述的方法,其特征在于,所述方法还包括:
当检测到所述转发节点出现故障时,则向控制节点发送故障信息,所述故障信息包括所述转发节点的故障状态以及所述第一状态发生时间,所述故障状态用于指示所述转发节点出现故障。
10.根据权利要求9所述的方法,其特征在于,所述向控制节点发送故障信息之后,所述方法还包括:
当检测到所述转发节点出现的故障已经修复时,则向所述控制节点发送恢复信息,所述恢复信息包括所述转发节点的正常状态和第二状态发生时间,所述第二状态发生时间为所述转发节点故障恢复的时间。
11.一种数据传输装置,其特征在于,所述装置为数据生成节点,所述装置包括:
获取单元,用于接收控制节点发送的第一转发路径上任一转发节点的第一状态信息,或,若所述转发节点与生成数据流的所述数据生成节点连接,接收所述转发节点返回的携带第一状态发生时间的数据流,基于接收的携带第一状态发生时间的所述数据流,获取所述转发节点的第一状态信息,所述第一转发路径用于传输数据流,所述第一状态信息用于指示所述转发节点出现故障,所述第一状态发生时间为所述转发节点出现故障的时间;
确定单元,用于根据所述第一状态信息以及多个目标转发节点的拓扑连接信息,确定所述数据流的第二转发路径,所述第二转发路径上的各个转发节点的节点状态为正常状态,所述多个目标转发节点的节点状态为正常状态;
传输单元,用于在所述第二转发路径上传输所述数据流。
12.根据权利要求11所述的装置,其特征在于,所述第一状态信息包括所述转发节点的故障状态以及所述第一状态发生时间,所述故障状态用于指示所述转发节点出现故障。
13.根据权利要求12所述的装置,其特征在于,所述确定单元用于:
当所述第一状态发生时间大于所述转发节点的已存储状态的状态发生时间时,根据多个目标转发节点的拓扑连接信息,确定所述第二转发路径,所述已存储状态用于表示当前已经存储的所述转发节点的节点状态。
14.一种数据传输装置,其特征在于,所述装置为转发节点,所述装置包括:
接收单元,用于接收数据流;
添加单元,用于在所述数据流中添加第一状态发生时间,所述第一状态发生时间为所述转发节点出现故障的时间;
发送单元,用于若所述转发节点与生成所述数据流的数据生成节点连接,向生成所述数据流的数据生成节点返回携带所述第一状态发生时间的所述数据流;
由所述数据生成节点基于接收的携带第一状态发生时间的所述数据流,获取所述转发节点的第一状态信息,根据所述第一状态信息以及多个目标转发节点的拓扑连接信息,确定所述数据流的第二转发路径,在所述第二转发路径上传输所述数据流,其中,所述第一状态信息用于指示所述转发节点出现故障,所述第二转发路径上的各个转发节点的节点状态为正常状态,所述多个目标转发节点的节点状态为正常状态。
15.根据权利要求14所述的装置,其特征在于,所述发送单元用于:
从所述数据流携带的路径信息中,获取所述数据生成节点的地址信息;
根据所述数据生成节点的地址信息,向所述数据生成节点发送携带所述第一状态发生时间的所述数据流。
16.一种计算设备,其特征在于,所述计算设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1至权利要求6任一项所述的数据传输方法所执行的操作。
17.一种网络设备,其特征在于,所述网络设备包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求7至权利要求10任一项所述的数据传输方法所执行的操作。
18.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至权利要求10任一项所述的数据传输方法所执行的操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010128210.4A CN111404822B (zh) | 2020-02-28 | 2020-02-28 | 数据传输方法、装置、设备以及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010128210.4A CN111404822B (zh) | 2020-02-28 | 2020-02-28 | 数据传输方法、装置、设备以及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111404822A CN111404822A (zh) | 2020-07-10 |
CN111404822B true CN111404822B (zh) | 2022-08-26 |
Family
ID=71413889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010128210.4A Active CN111404822B (zh) | 2020-02-28 | 2020-02-28 | 数据传输方法、装置、设备以及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111404822B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112422428B (zh) * | 2020-11-09 | 2022-05-17 | 迈普通信技术股份有限公司 | 链路状态获取方法、装置、电子设备及可读存储介质 |
CN113660158B (zh) * | 2021-08-05 | 2023-06-30 | 北京网聚云联科技有限公司 | Overlay虚拟链路动态路由的调度方法、服务器及存储介质 |
CN113676938A (zh) * | 2021-08-19 | 2021-11-19 | 上海上实龙创智能科技股份有限公司 | 一种故障检测方法、装置、存储介质及电子设备 |
CN114615208B (zh) * | 2022-03-09 | 2024-02-23 | 新华三半导体技术有限公司 | 一种反压信息传递、请求发送方法、装置及网络芯片 |
CN116866450A (zh) * | 2023-06-08 | 2023-10-10 | 兴华永恒(北京)科技有限责任公司 | 数据传输方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102299835A (zh) * | 2011-08-26 | 2011-12-28 | 华为技术有限公司 | 环网故障切换方法和装置 |
CN105827524A (zh) * | 2016-03-18 | 2016-08-03 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN106464520A (zh) * | 2014-03-31 | 2017-02-22 | 西门子公司 | 对网络中的有故障的节点的检测 |
CN110336728A (zh) * | 2019-07-26 | 2019-10-15 | 新华三大数据技术有限公司 | 一种报文处理方法、节点设备、电子设备和可读存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012013251A1 (en) * | 2010-07-30 | 2012-02-02 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for handling network resource failures in a router |
-
2020
- 2020-02-28 CN CN202010128210.4A patent/CN111404822B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102299835A (zh) * | 2011-08-26 | 2011-12-28 | 华为技术有限公司 | 环网故障切换方法和装置 |
CN106464520A (zh) * | 2014-03-31 | 2017-02-22 | 西门子公司 | 对网络中的有故障的节点的检测 |
CN105827524A (zh) * | 2016-03-18 | 2016-08-03 | 联想(北京)有限公司 | 一种信息处理方法及电子设备 |
CN110336728A (zh) * | 2019-07-26 | 2019-10-15 | 新华三大数据技术有限公司 | 一种报文处理方法、节点设备、电子设备和可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111404822A (zh) | 2020-07-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111404822B (zh) | 数据传输方法、装置、设备以及计算机可读存储介质 | |
CN112787841B (zh) | 故障根因定位方法及装置、计算机存储介质 | |
CN101656732B (zh) | 路径控制*** | |
US9077608B2 (en) | Route calculation method and master node device in virtual network element | |
US5687168A (en) | Link state routing device in ATM communication system | |
US8897141B2 (en) | Network system and routing method | |
CN112564964B (zh) | 一种基于软件定义网络的故障链路检测与恢复方法 | |
CN110708245B (zh) | 多控制器架构下的sdn数据平面故障监测与恢复方法 | |
US10411972B2 (en) | Determining impact of network failures | |
CN103703727A (zh) | 用于分体式架构***中控制业务的弹性路由的方法和设备 | |
EP2608459A2 (en) | Router, virtual cluster router system and establishion method thereof | |
CN106209615B (zh) | 一种基于spfa算法计算转发路径的动态路由控制方法和*** | |
CN114465943B (zh) | 拓扑信息的发布方法、网络拓扑收集方法及设备 | |
Lemeshko et al. | Tensor model of fault-tolerant QoS routing with support of bandwidth and delay protection | |
WO2015045466A1 (ja) | 通信制御装置、通信制御システム、通信制御方法及び通信制御プログラム | |
CN105530115B (zh) | 一种实现操作管理维护功能的方法及装置 | |
CN102546248B (zh) | 多协议标签交换环境下精确定位故障位置的方法、装置及*** | |
CN103200100A (zh) | 一种报文转发方法和设备 | |
CN108924011A (zh) | 用于ospf+路由协议的监测***、相关设备、方法及介质 | |
CN102792636A (zh) | 提供恢复生存性的方法、设备和通信网络 | |
US20230069626A1 (en) | Traffic monitoring method, related device, and system | |
Philip et al. | Cross-control: A scalable multi-topology fault restoration mechanism using logically centralized controllers | |
CN115987883A (zh) | 转发路径生成方法、sdn控制器、切片网络***及存储介质 | |
CN114157595A (zh) | 一种通信***、数据处理方法以及相关设备 | |
Osukhivska et al. | Method for Estimating the Convergence Parameters of Dynamic Routing Protocols in Computer Networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |