CN116055381A - Routing table updating method and device based on many-core system and electronic equipment - Google Patents

Routing table updating method and device based on many-core system and electronic equipment Download PDF

Info

Publication number
CN116055381A
CN116055381A CN202111264684.2A CN202111264684A CN116055381A CN 116055381 A CN116055381 A CN 116055381A CN 202111264684 A CN202111264684 A CN 202111264684A CN 116055381 A CN116055381 A CN 116055381A
Authority
CN
China
Prior art keywords
processing core
data packet
transmission
routing
routing table
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.)
Pending
Application number
CN202111264684.2A
Other languages
Chinese (zh)
Inventor
吴臻志
金罗军
何伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Lynxi Technology Co Ltd
Original Assignee
Beijing Lynxi Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Lynxi Technology Co Ltd filed Critical Beijing Lynxi Technology Co Ltd
Priority to CN202111264684.2A priority Critical patent/CN116055381A/en
Publication of CN116055381A publication Critical patent/CN116055381A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The present disclosure provides a routing table updating method, a system, an electronic device and a readable medium based on a many-core system, wherein the method comprises: under the condition that the update condition of the routing table is met, determining routing transmission information between the first processing core and the second processing core according to the current physical position of the first processing core and the current physical position of the second processing core; updating a routing table corresponding to the first processing core according to the routing transmission information; wherein the second processing core is a processing core that receives the first processing core packet, and the routing table update condition includes at least one of: the routing table corresponding to the first processing core is empty, and the physical position of the first processing core and/or the physical position of the second processing core are changed. The method can flexibly set the route transmission information, thereby being convenient for dynamically adjusting the route and being flexibly applicable to complex application scenes in which the physical position of the processing core can be dynamically changed.

Description

基于众核系统的路由表更新方法、装置及电子设备Routing table update method, device and electronic equipment based on many-core system

技术领域technical field

本公开实施例涉及计算机技术领域,特别涉及一种基于众核系统的路由表更新方法、装置及电子设备。Embodiments of the present disclosure relate to the field of computer technology, and in particular to a method, device and electronic device for updating a routing table based on a many-core system.

背景技术Background technique

众核架构是一种广泛应用于执行神经网络模型的并行处理架构。在众核架构中,每个处理核都能完成一定的计算功能,一定数量的处理核通过一定拓扑结构连接构成一个芯片,一定数量的芯片通过一定拓扑结构连接构成一个芯片阵列板,以此类推,可以扩展得到更大规模的系统。由此可见,在众核系统中,涉及到的处理核数量众多,因此,如何在处理核数量庞大的前提下实现各个处理核之间的高效通信,成为路由计算领域亟待解决的技术难题。Many-core architecture is a parallel processing architecture widely used to execute neural network models. In the many-core architecture, each processing core can perform a certain computing function, a certain number of processing cores are connected through a certain topology to form a chip, a certain number of chips are connected through a certain topology to form a chip array board, and so on , can be extended to a larger system. It can be seen that in a many-core system, a large number of processing cores are involved. Therefore, how to realize efficient communication between each processing core under the premise of a large number of processing cores has become an urgent technical problem in the field of routing computing.

发明内容Contents of the invention

鉴于上述问题,提出了本公开以便提供一种克服上述问题或者至少部分地解决上述问题的一种基于众核系统的路由表更新方法、装置及电子设备。In view of the above problems, the present disclosure is proposed to provide a method, device and electronic device for updating a routing table based on a many-core system that overcomes the above problems or at least partially solves the above problems.

根据本公开实施例的一个方面,提供了一种基于众核系统的路由表更新方法,包括:According to an aspect of an embodiment of the present disclosure, a method for updating a routing table based on a many-core system is provided, including:

在满足路由表更新条件的情况下,根据所述第一处理核的当前物理位置以及所述第二处理核的当前物理位置,确定所述第一处理核与所述第二处理核之间的路由传输信息;If the routing table update condition is met, determine the route between the first processing core and the second processing core according to the current physical location of the first processing core and the current physical location of the second processing core routing information;

根据所述路由传输信息,更新所述第一处理核对应的路由表;updating the routing table corresponding to the first processing core according to the routing transmission information;

其中,所述第二处理核为接收所述第一处理核数据包的处理核,所述路由表更新条件包括以下中的至少一个:第一处理核对应的路由表为空、第一处理核和/或第二处理核的物理位置发生改变。Wherein, the second processing core is a processing core that receives the first processing core data packet, and the routing table update condition includes at least one of the following: the routing table corresponding to the first processing core is empty, the first processing core and/or the physical location of the second processing core changes.

第二方面,本公开实施例提供一种基于众核系统的路由表更新装置,包括:In a second aspect, an embodiment of the present disclosure provides an apparatus for updating a routing table based on a many-core system, including:

确定模块,适于在满足路由表更新条件的情况下,根据所述第一处理核的当前物理位置以及所述第二处理核的当前物理位置,确定所述第一处理核与所述第二处理核之间的路由传输信息;The determining module is adapted to determine the first processing core and the second processing core according to the current physical location of the first processing core and the current physical location of the second processing core when the routing table update condition is satisfied. Handle routing information between cores;

更新模块,适于根据所述路由传输信息,更新所述第一处理核对应的路由表;An update module, adapted to update the routing table corresponding to the first processing core according to the routing transmission information;

其中,所述第二处理核为接收所述第一处理核数据包的处理核,所述路由表更新条件包括以下中的至少一个:第一处理核对应的路由表为空、第一处理核和/或第二处理核的物理位置发生改变。Wherein, the second processing core is a processing core that receives the first processing core data packet, and the routing table update condition includes at least one of the following: the routing table corresponding to the first processing core is empty, the first processing core and/or the physical location of the second processing core changes.

第三方面,本公开实施例提供一种电子设备,其包括:In a third aspect, an embodiment of the present disclosure provides an electronic device, which includes:

一个或多个处理器;one or more processors;

存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现以下方法中的至少一者:A storage device, on which one or more programs are stored, and when the one or more programs are executed by the one or more processors, the one or more processors implement at least one of the following methods:

根据本公开实施例第一方面所述的路由表更新方法。According to the routing table updating method described in the first aspect of the embodiments of the present disclosure.

第四方面,本公开实施例提供一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现以下方法中的至少一者:In a fourth aspect, an embodiment of the present disclosure provides a computer-readable medium on which a computer program is stored, and when the program is executed by a processor, at least one of the following methods is implemented:

根据本公开实施例第一方面所述的路由表更新方法。According to the routing table updating method described in the first aspect of the embodiments of the present disclosure.

在本公开实施例提供的基于众核系统的路由表更新方法、装置及电子设备中,能够在满足路由表更新条件的情况下,根据第一处理核的当前物理位置以及第二处理核的当前物理位置,确定第一处理核与第二处理核之间的路由传输信息;根据路由传输信息,更新第一处理核对应的路由表。其中,路由表更新条件包括以下中的至少一个:第一处理核对应的路由表为空、第一处理核和/或第二处理核的物理位置发生改变。由此可见,通过设置路由表更新条件,能够在路由表需要更新时及时获取两个处理核之间的路由传输信息,并基于路由传输信息更新路由表,能够确保路由表更新的及时性和准确性,进而能够在处理核数量庞大的前提下实现各个处理核之间的高效通信。另外,通过在第一处理核和/或第二处理核的物理位置发生改变时对路由表进行更新,还能够灵活适用于处理核位置改变的应用场景。In the routing table update method, device, and electronic device based on the many-core system provided by the embodiments of the present disclosure, when the routing table update condition is met, the current physical location of the first processing core and the current location of the second processing core can be The physical location determines routing transmission information between the first processing core and the second processing core; and updates a routing table corresponding to the first processing core according to the routing transmission information. Wherein, the routing table update condition includes at least one of the following: the routing table corresponding to the first processing core is empty, and the physical location of the first processing core and/or the second processing core changes. It can be seen that by setting the routing table update conditions, the routing transmission information between the two processing cores can be obtained in time when the routing table needs to be updated, and the routing table can be updated based on the routing transmission information, which can ensure the timeliness and accuracy of the routing table update In this way, efficient communication between each processing core can be realized under the premise of a large number of processing cores. In addition, by updating the routing table when the physical location of the first processing core and/or the second processing core changes, it can be flexibly adapted to the application scenario where the location of the processing core changes.

附图说明Description of drawings

附图用来提供对本公开实施例的进一步理解,并且构成说明书的一部分,与本公开的实施例一起用于解释本公开,并不构成对本公开的限制。通过参考附图对详细示例实施例进行描述,以上和其它特征和优点对本领域技术人员将变得更加显而易见,在附图中:The accompanying drawings are used to provide a further understanding of the embodiments of the present disclosure, and constitute a part of the specification, and are used together with the embodiments of the present disclosure to explain the present disclosure, and do not constitute limitations to the present disclosure. The above and other features and advantages will become more apparent to those skilled in the art by describing detailed example embodiments with reference to the accompanying drawings, in which:

图1为本公开的一个实施例提供的一种基于众核系统的路由表更新方法的流程图;FIG. 1 is a flowchart of a method for updating a routing table based on a many-core system according to an embodiment of the present disclosure;

图2为本公开的另一个实施例提供的一种基于众核系统的路由表更新方法的流程图;FIG. 2 is a flowchart of a method for updating a routing table based on a many-core system according to another embodiment of the present disclosure;

图3为本公开又一实施例提供的一种基于众核系统的路由表更新装置的结构图;FIG. 3 is a structural diagram of an apparatus for updating a routing table based on a many-core system according to yet another embodiment of the present disclosure;

图4为本公开实施例提供的一种电子设备的组成框图;FIG. 4 is a composition block diagram of an electronic device provided by an embodiment of the present disclosure;

图5为本公开实施例提供的一种计算机可读介质的组成框图。Fig. 5 is a composition block diagram of a computer-readable medium provided by an embodiment of the present disclosure.

具体实施方式Detailed ways

为使本领域的技术人员更好地理解本公开的技术方案,下面结合附图对本公开提供的路由方法、系统、电子设备及计算机可读介质进行详细描述。In order for those skilled in the art to better understand the technical solution of the present disclosure, the routing method, system, electronic device and computer-readable medium provided by the present disclosure will be described in detail below with reference to the accompanying drawings.

在下文中将参考附图更充分地描述示例实施例,但是所述示例实施例可以以不同形式来体现且不应当被解释为限于本文阐述的实施例。反之,提供这些实施例的目的在于使本公开透彻和完整,并将使本领域技术人员充分理解本公开的范围。Example embodiments will be described more fully hereinafter with reference to the accompanying drawings, but may be embodied in different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the disclosure to those skilled in the art.

在不冲突的情况下,本公开各实施例及实施例中的各特征可相互组合。In the case of no conflict, various embodiments of the present disclosure and various features in the embodiments can be combined with each other.

如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。As used herein, the term "and/or" includes any and all combinations of one or more of the associated listed items.

本文所使用的术语仅用于描述特定实施例,且不意欲限制本公开。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在所述特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。The terminology used herein is for describing particular embodiments only and is not intended to limit the present disclosure. As used herein, the singular forms "a" and "the" are intended to include the plural forms as well, unless the context clearly dictates otherwise. It will also be understood that when the terms "comprising" and/or "consisting of" are used in this specification, the stated features, integers, steps, operations, elements and/or components are specified to be present but not excluded to be present or Add one or more other features, integers, steps, operations, elements, components and/or groups thereof.

除非另外限定,否则本文所用的所有术语(包括技术和科学术语)的含义与本领域普通技术人员通常理解的含义相同。还将理解,诸如那些在常用字典中限定的那些术语应当被解释为具有与其在相关技术以及本公开的背景下的含义一致的含义,且将不解释为具有理想化或过度形式上的含义,除非本文明确如此限定。Unless otherwise defined, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. It will also be understood that terms such as those defined in commonly used dictionaries should be interpreted as having meanings consistent with their meanings in the context of the relevant art and the present disclosure, and will not be interpreted as having idealized or excessive formal meanings, Unless expressly so limited herein.

在相关技术中,通常采用路由预编译的方式来确定各个处理核间的路由方式。但是,发明人在实现本发明的过程中发现,上述预编译方式至少存在如下缺陷:采用预编译方式设置的路由灵活性较差,一旦编译完成则无法动态调整,无法适用于处理核的物理位置能够动态改变的复杂应用场景。In related technologies, routing precompilation is usually used to determine routing modes between processing cores. However, the inventor found in the process of implementing the present invention that the above-mentioned pre-compilation method has at least the following defects: the routing flexibility set by the pre-compilation method is poor, once the compilation is completed, it cannot be dynamically adjusted, and cannot be applied to the physical location of the processing core. Complex application scenarios that can change dynamically.

本公开的一个实施例提供了一种基于众核系统的路由表更新方法。在本实施例提供的方法中,众核系统中的一个芯片包括多个能够相互通信的处理核,并且,各个处理核的物理位置能够根据应用运行状态动态调整。图1示出了本公开一个实施例提供的一种基于众核系统的路由表更新方法的流程示意图,如图1所示,该方法包括:An embodiment of the present disclosure provides a method for updating a routing table based on a many-core system. In the method provided in this embodiment, one chip in the many-core system includes multiple processing cores capable of communicating with each other, and the physical location of each processing core can be dynamically adjusted according to the running state of the application. Fig. 1 shows a schematic flowchart of a method for updating a routing table based on a many-core system provided by an embodiment of the present disclosure. As shown in Fig. 1 , the method includes:

步骤S110:在满足路由表更新条件的情况下,根据第一处理核的当前物理位置以及第二处理核的当前物理位置,确定第一处理核与第二处理核之间的路由传输信息。Step S110: If the routing table update condition is met, determine routing transmission information between the first processing core and the second processing core according to the current physical location of the first processing core and the current physical location of the second processing core.

其中,路由表更新条件包括以下中的至少一个:第一处理核对应的路由表为空、第一处理核和/或第二处理核的物理位置发生改变。例如,当第一处理核对应的路由表为空时,说明需要针对路由表进行更新;又如,当第一处理核和/或第二处理核的物理位置发生改变时,说明路由表中已存储的路由信息过期,因而需要针对路由表进行更新。Wherein, the routing table update condition includes at least one of the following: the routing table corresponding to the first processing core is empty, and the physical location of the first processing core and/or the second processing core changes. For example, when the routing table corresponding to the first processing core is empty, it means that the routing table needs to be updated; The stored routing information is out of date, requiring an update to the routing table.

相应的,根据第一处理核的当前物理位置以及第二处理核的当前物理位置,确定第一处理核与第二处理核之间的路由传输信息。其中,第二处理核为接收第一处理核数据包的处理核。在确定第一处理核与第二处理核之间的路由传输信息时,可通过多种方式实现。例如,在第一种方式中,通过路径计算方式确定第一处理核与第二处理核之间的路由传输信息;又如,在第二种方式中,通过传输探索数据包的方式确定第一处理核与第二处理核之间的路由传输信息。Correspondingly, according to the current physical location of the first processing core and the current physical location of the second processing core, route transmission information between the first processing core and the second processing core is determined. Wherein, the second processing core is a processing core that receives the data packet of the first processing core. When determining the route transmission information between the first processing core and the second processing core, it can be implemented in multiple ways. For example, in the first way, the route transmission information between the first processing core and the second processing core is determined through path calculation; as another example, in the second way, the first Routing transfers information between the processing core and the second processing core.

另外,在路由表更新条件为第一处理核对应的路由表为空的情况下,第二处理核的当前物理位置可通过以下方式确定:向第二处理核广播位置查询消息;接收第二处理核发送的位置响应消息,根据位置响应消息确定第二处理核的当前物理位置。In addition, when the routing table update condition is that the routing table corresponding to the first processing core is empty, the current physical location of the second processing core can be determined by: broadcasting a location query message to the second processing core; receiving the second processing core The location response message sent by the core, and the current physical location of the second processing core is determined according to the location response message.

步骤S120:根据路由传输信息,更新第一处理核对应的路由表。Step S120: Update the routing table corresponding to the first processing core according to the routing transmission information.

具体的,当路由表为空时,可以直接根据路由传输信息,更新第一处理核对应的路由表。另外,当路由表非空时,还可以在第一处理核对应的路由表中,查询第一处理核与第二处理核之间的已存储路由信息;根据路由传输信息对已存储路由信息进行更新操作;其中,更新操作包括以下中的至少一种:替换类更新操作、以及增加类更新操作。Specifically, when the routing table is empty, the routing table corresponding to the first processing core may be updated directly according to the routing transmission information. In addition, when the routing table is not empty, you can also query the stored routing information between the first processing core and the second processing core in the routing table corresponding to the first processing core; An update operation; wherein, the update operation includes at least one of the following: a replace class update operation, and an add class update operation.

由此可见,通过设置路由表更新条件,能够在路由表需要更新时及时获取两个处理核之间的路由传输信息,并基于路由传输信息更新路由表,能够确保路由表更新的及时性和准确性,进而能够在处理核数量庞大的前提下实现各个处理核之间的高效通信。另外,通过在第一处理核和/或第二处理核的物理位置发生改变时对路由表进行更新,还能够灵活适用于处理核位置改变的应用场景。It can be seen that by setting the routing table update conditions, the routing transmission information between the two processing cores can be obtained in time when the routing table needs to be updated, and the routing table can be updated based on the routing transmission information, which can ensure the timeliness and accuracy of the routing table update In this way, efficient communication between each processing core can be realized under the premise of a large number of processing cores. In addition, by updating the routing table when the physical location of the first processing core and/or the second processing core changes, it can be flexibly adapted to the application scenario where the location of the processing core changes.

图2示出了本公开又一实施例提供的一种基于众核系统的路由表更新方法的流程示意图。在图2所示的实施例中,一个众核芯片上设置有多个能够相互通信的处理核。其中,各个处理核同时具有逻辑地址(也叫逻辑标识)以及物理地址(也叫物理标识),逻辑地址用于从处理核的业务功能的角度来唯一标识一个处理核,物理地址用于从处理核的实际物理位置的角度来唯一标识一个处理核。在本实施例中,同一逻辑地址所标识的处理核的物理地址能够随应用运行状态的变化而动态改变。如图2所示,该方法包括:Fig. 2 shows a schematic flowchart of a method for updating a routing table based on a many-core system provided by another embodiment of the present disclosure. In the embodiment shown in FIG. 2 , a many-core chip is provided with multiple processing cores capable of communicating with each other. Each processing core has a logical address (also called a logical identifier) and a physical address (also called a physical identifier). The logical address is used to uniquely identify a processing core from the perspective of the business function of the processing core. The angle of the core's actual physical location to uniquely identify a processing core. In this embodiment, the physical addresses of the processing cores identified by the same logical address can change dynamically as the running state of the application changes. As shown in Figure 2, the method includes:

步骤S200:根据各个处理核之间的位置关系设置路由表。Step S200: Set up a routing table according to the positional relationship between each processing core.

本步骤为一个可选的步骤,实际情况中,也可以省略本步骤,直接在路由过程中动态创建路由表。具体的,为了便于通信,在各个处理核中设置一份路由表,该路由表用于存储本处理核与其他处理核通信时的传输路径和/或传输位置。其中,传输路径用于描述具体的路径信息,具体包括数据包在传输过程中所经过的各个处理核的位置信息、传输次序信息等内容;传输位置用于描述目标处理核(即目的地址)相对于当前处理核(即当前的起始地址)的位置偏移量。This step is an optional step. In actual situations, this step can also be omitted, and the routing table can be dynamically created directly during the routing process. Specifically, in order to facilitate communication, a routing table is set in each processing core, and the routing table is used to store the transmission path and/or transmission location when the processing core communicates with other processing cores. Among them, the transmission path is used to describe the specific path information, specifically including the position information and transmission order information of each processing core that the data packet passes through during the transmission process; the transmission position is used to describe the relative The location offset of the current processing core (that is, the current starting address).

具体的,该路由表在初始状态下为空,在当前处理核需要向其他处理核发送数据包时,根据用于接收该数据包的目标处理核(即第二处理核)的物理位置计算路由传输信息,并更新至路由表中。Specifically, the routing table is empty in the initial state, and when the current processing core needs to send a data packet to other processing cores, the route is calculated according to the physical location of the target processing core (ie, the second processing core) used to receive the data packet The information is transmitted and updated in the routing table.

在本实施例中,由于各个处理核相互独立,因此,为了提升通信效率,避免查询时延,在各个处理核内部单独维护一个路由表,即:路由表与处理核是一一对应的关系。当然,在本公开其他的实施例中,也可以将与各个处理核相关的路由表统一存储在用于实现路由管理功能的处理核(简称路由管理处理核)中,其他处理核通过与该路由管理处理核之间的通信实现对路由表的查询和更新操作。In this embodiment, since each processing core is independent of each other, in order to improve communication efficiency and avoid query delay, a routing table is separately maintained inside each processing core, that is, there is a one-to-one correspondence between the routing table and the processing cores. Of course, in other embodiments of the present disclosure, the routing table related to each processing core can also be stored in a processing core (referred to as the routing management processing core) for implementing the routing management function, and other processing cores can communicate with the routing table. The communication between the management processing cores implements the query and update operations on the routing table.

步骤S210:根据第一处理核的历史通信状态,调整第一处理核的物理位置,并将第一处理核的物理位置更新消息广播至其他处理核。Step S210: According to the historical communication state of the first processing core, adjust the physical position of the first processing core, and broadcast the update message of the physical position of the first processing core to other processing cores.

其中,本步骤可在任意时机执行,即:本发明并不限定本步骤与其他步骤之间的先后顺序。Wherein, this step can be performed at any timing, that is, the present invention does not limit the sequence between this step and other steps.

其中,历史通信状态用于描述一个处理核与其他处理核之间的信息传输路径、信息传输时延、信息传输频次、信息传输数量、信息传输类型等。相应的,当前处理核(即第一处理核)动态检测以下数据中的至少一者:本处理核与各个处理核之间的信息传输时延、信息传输频次、信息传输数量、以及信息传输类型,根据检测结果确定是否调整本处理核的物理位置。具体的,可以在一个处理核与其他处理核之间的信息传输时延超过预设时延阈值时,动态调整相关处理核的物理位置,以使相互通信的两个处理核之间的传输时延更短;也可以在一个处理核与其他处理核之间的信息传输频次超过预设频次阈值和/或信息传输数量超过预设数量阈值时,动态调整相关处理核的物理位置,以使相互通信的两个处理核之间的通信更加便捷;还可以在一个处理核与其他处理核之间的信息传输类型属于预设类型(如对时延、可靠性要求更高的信息类型)时,动态调整相关处理核的物理位置。Among them, the historical communication state is used to describe information transmission path, information transmission delay, information transmission frequency, information transmission quantity, information transmission type, etc. between a processing core and other processing cores. Correspondingly, the current processing core (that is, the first processing core) dynamically detects at least one of the following data: information transmission delay between this processing core and each processing core, information transmission frequency, information transmission quantity, and information transmission type , and determine whether to adjust the physical position of the processing core according to the detection result. Specifically, when the information transmission delay between one processing core and other processing cores exceeds the preset delay threshold, the physical location of the relevant processing core can be dynamically adjusted so that the transmission time between the two processing cores communicating with each other It is also possible to dynamically adjust the physical location of the relevant processing cores when the frequency of information transmission between one processing core and other processing cores exceeds the preset frequency threshold and/or the number of information transmissions exceeds the preset number threshold, so that the mutual The communication between the two processing cores of the communication is more convenient; when the information transmission type between one processing core and other processing cores belongs to the preset type (such as information types requiring higher delay and reliability), Dynamically adjust the physical location of the relevant processing cores.

例如,当前处理核动态检测本处理核与各个处理核之间的信息传输时延、信息传输频次、信息传输数量、以及信息传输类型,根据检测结果确定与本处理核相对应的通信处理核(即:与当前处理核通信较多的处理核);当确定通信处理核具有对应的邻近空闲核时,根据该邻近空闲核的物理位置更新本处理核的物理位置。在根据该邻近空闲核的物理位置更新本处理核的物理位置时,可以直接将本处理核的物理地址更新为该邻近空闲核的物理地址,以使该邻近空闲核的逻辑地址与本处理核的逻辑地址相同,从而实现将本处理核挪动至该邻近空闲核的效果。For example, the current processing core dynamically detects the information transmission delay, information transmission frequency, information transmission quantity, and information transmission type between the processing core and each processing core, and determines the corresponding communication processing core ( That is: the processing core that communicates more with the current processing core); when it is determined that the communication processing core has a corresponding adjacent idle core, update the physical location of the current processing core according to the physical location of the adjacent idle core. When updating the physical location of the processing core according to the physical location of the adjacent idle core, the physical address of the processing core can be directly updated to the physical address of the adjacent idle core, so that the logical address of the adjacent idle core is the same as that of the processing core. The logical addresses of the two nodes are the same, so as to achieve the effect of moving the current processing core to the adjacent idle core.

具体的,在当前处理核的物理位置发生更新的情况下,可通过广播方式向其他处理核发送物理位置更新消息,从而使其他处理核根据该物理位置更新消息确定当前处理核的最新位置。具体实施时,可以由当前处理核直接向其他处理核广播该物理位置更新消息;或者,也可以由当前处理核先将物理位置更新消息发送至控制器或用于实现控制功能的处理核(可以为上文提到的路由管理处理核),再由该控制器或用于实现控制功能的处理核向其他处理核广播该物理位置更新消息。总之,通过全局广播的方式能够确保任一处理核的位置变动都能及时被其他处理核感知。Specifically, when the physical location of the current processing core is updated, a physical location update message may be sent to other processing cores by broadcasting, so that other processing cores can determine the latest location of the current processing core according to the physical location update message. During specific implementation, the current processing core may directly broadcast the physical location update message to other processing cores; or, the current processing core may first send the physical location update message to the controller or the processing core used to implement the control function (which may be The routing management processing core mentioned above), and then the controller or the processing core for realizing the control function broadcasts the physical location update message to other processing cores. In a word, the way of global broadcasting can ensure that the position change of any processing core can be sensed by other processing cores in time.

相应的,当前处理核进一步用于:接收第二处理核发送的第二处理核的物理位置更新消息,该物理位置更新消息是第二处理核根据第二处理核的历史通信状态,调整第二处理核的物理位置后广播的消息。例如,任一处理核接收到广播的物理位置更新消息后,解析该物理位置更新消息,获取其中包含的发生位置变更的处理核的标识信息(如上文提到的逻辑地址)以及更新后的物理位置。为了便于在后续路由过程中查询上述位置更新信息,当前处理核可以将接收到的各条物理位置更新消息所对应的解析结果统一存储至存储单元中;或者,当前处理核也可以遍历路由表中存储的各条与发生位置变更的处理核相关的路由信息,并将与发生位置变更的处理核相关的路由信息设置为过期状态或无效状态,以便于在后续的路由过程中对路由表进行更新。第一处理核与第二处理核之间的路由依赖关系发生改变,即:第一处理核的物理位置发生改变,和/或第二处理核的物理位置发生改变时,确定需要更新路由表。实际情况中,可以是第一处理核和第二处理核中的一个处理核的位置发生改变,另一处理核的位置不变;也可以是两个处理核的位置同时发生改变。Correspondingly, the current processing core is further configured to: receive the physical position update message of the second processing core sent by the second processing core, the physical position update message is that the second processing core adjusts the second processing core according to the historical communication state of the second processing core. Message broadcast after processing the physical location of a core. For example, after any processing core receives a broadcasted physical location update message, it parses the physical location update message to obtain the identification information (such as the logical address mentioned above) of the processing core whose location has changed and the updated physical location update message contained therein. Location. In order to facilitate querying the above location update information in the subsequent routing process, the current processing core can uniformly store the analysis results corresponding to the received physical location update messages in the storage unit; or, the current processing core can also traverse the routing table Store each piece of routing information related to the processing core whose location has changed, and set the routing information related to the processing core whose location has changed to an expired or invalid state, so as to update the routing table in the subsequent routing process . When the routing dependency between the first processing core and the second processing core changes, that is, when the physical location of the first processing core changes and/or the physical location of the second processing core changes, it is determined that the routing table needs to be updated. In an actual situation, the position of one processing core among the first processing core and the second processing core may change, while the position of the other processing core remains unchanged; it may also be that the positions of the two processing cores change simultaneously.

相应的,在本步骤中,需要检测第一处理核与第二处理核的物理位置是否发生改变,从而获取改变后的最新物理位置。其中,若第一处理核的物理位置发生改变,则第一处理核的当前物理位置是指改变后的物理位置;同理,若第二处理核的物理位置发生改变,则第二处理核的当前物理位置是指改变后的物理位置。Correspondingly, in this step, it is necessary to detect whether the physical positions of the first processing core and the second processing core change, so as to obtain the latest physical position after the change. Wherein, if the physical position of the first processing core changes, the current physical position of the first processing core refers to the changed physical position; similarly, if the physical position of the second processing core changes, the current physical position of the second processing core The current physical location refers to a changed physical location.

具体实施时,可以根据上文提到的物理位置更新消息以及存储单元来确定第一处理核和第二处理核的当前物理位置;或者,也可以通过查询上文提到的路由表,根据路由表中存储的相关路由是否设置有过期标识或无效标识进行确定,本公开对具体细节不做限定。During specific implementation, the current physical locations of the first processing core and the second processing core can be determined according to the above-mentioned physical location update message and the storage unit; or, by querying the above-mentioned routing table, according to the route It is determined whether the relevant routes stored in the table are set with an expired flag or an invalid flag, and this disclosure does not limit the specific details.

另外,在实际情况中,也可以通过第一处理核广播发送寻址消息的方式,来确定第二处理核的当前物理位置。具体的,第一处理核广播发送包含第二处理核的标识信息的寻址消息,第二处理核接收到该寻址消息后,向第一处理核反馈包含当前地址信息的地址回应消息。相应的,第一处理核将地址回应消息中包含的第二处理核的地址信息与本地预存的第二处理核的地址信息进行比对,若二者不一致,则确定第二处理核的位置发生改变。In addition, in an actual situation, the current physical location of the second processing core may also be determined by means of broadcasting and sending an addressing message by the first processing core. Specifically, the first processing core broadcasts and sends an addressing message including the identification information of the second processing core, and after receiving the addressing message, the second processing core feeds back an address response message including the current address information to the first processing core. Correspondingly, the first processing core compares the address information of the second processing core contained in the address response message with the address information of the second processing core stored locally, and if the two are inconsistent, it determines the location of the second processing core. Change.

步骤S220:在满足路由表更新条件的情况下,根据第一处理核的当前物理位置以及第二处理核的当前物理位置,确定第一处理核与第二处理核之间的路由传输信息。Step S220: If the routing table update condition is met, determine routing transmission information between the first processing core and the second processing core according to the current physical location of the first processing core and the current physical location of the second processing core.

其中,路由表更新条件包括:第一处理核对应的路由表为空、第一处理核和/或第二处理核的物理位置发生改变。在本实施例中,确定第一处理核与第二处理核之间的路由传输信息的实现方式至少包括如下两种:Wherein, the routing table update condition includes: the routing table corresponding to the first processing core is empty, and the physical location of the first processing core and/or the second processing core changes. In this embodiment, at least the following two ways are implemented to determine the route transmission information between the first processing core and the second processing core:

(一)路径计算方式(1) Path calculation method

该方式能够直接通过计算确定路由传输信息,方便快捷。具体的,通过路径计算方式确定第一处理核与第二处理核之间的路由传输信息。具体实施时,获取与第一处理核的当前物理位置相对应的第一位置坐标,以及与第二处理核的当前物理位置相对应的第二位置坐标;按照预设的路径设置策略,确定第一位置坐标与第二位置坐标对应的至少一条路径信息;分别计算各条路径信息的传输代价,根据计算结果确定路由传输信息。This method can directly determine the route transmission information through calculation, which is convenient and quick. Specifically, route transmission information between the first processing core and the second processing core is determined through path calculation. During specific implementation, the first position coordinates corresponding to the current physical position of the first processing core and the second position coordinates corresponding to the current physical position of the second processing core are obtained; according to the preset path setting strategy, the first position coordinates are determined At least one path information corresponding to the first position coordinate and the second position coordinate; calculating the transmission cost of each path information respectively, and determining the route transmission information according to the calculation result.

其中,路径设置策略可以预先配置,具体包括以下策略中的至少一种:Wherein, the path setting strategy can be pre-configured, specifically including at least one of the following strategies:

第一种策略为回避类策略,用于设置路径选择过程中需要回避的处理核所对应的传输节点,以便于在路径计算过程中绕开该类传输节点。具体的,回避类策略又包括:绝对回避策略以及建议回避策略。其中,绝对回避策略通常对应于传输节点出现物理损坏从而无法传输的情况,此时,需要绝对避开该类节点;建议回避策略通常对应于传输节点因负载过高等原因而导致传输效率低下的情况,此时,可根据实际情况选择是否避开该类节点。The first type of strategy is an avoidance strategy, which is used to set the transmission nodes corresponding to the processing cores that need to be avoided during the path selection process, so as to bypass such transmission nodes during the path calculation process. Specifically, avoidance strategies include: absolute avoidance strategies and suggested avoidance strategies. Among them, the absolute avoidance strategy usually corresponds to the situation where the transmission node is physically damaged and cannot transmit. At this time, such nodes need to be absolutely avoided; the recommended avoidance strategy usually corresponds to the situation where the transmission node has low transmission efficiency due to excessive load and other reasons. , at this time, you can choose whether to avoid such nodes according to the actual situation.

第二种策略为选择类策略,用于设置路径选择过程中选择优先级较高的处理核所对应的传输节点,以便于在路径计算过程中尽量选择该类传输节点。具体的,选择类策略可根据各个传输节点的负载量、传输时延等因素设置。具体实施时,选择类策略又包括:绝对选择策略以及建议选择策略。其中,绝对选择策略可由运营人员进行配置,以灵活定义默认的路由选择方式。The second strategy is a selection strategy, which is used to select the transmission node corresponding to the processing core with a higher priority in the path selection process, so as to select this type of transmission node as much as possible in the path calculation process. Specifically, the selection strategy may be set according to factors such as the load of each transmission node, transmission delay, and the like. During specific implementation, selection strategies include: absolute selection strategies and suggested selection strategies. Among them, the absolute selection strategy can be configured by the operator to flexibly define the default routing selection method.

上述两种策略既可以单独使用,也可以结合使用,本公开对此不做限定。具体实施时,可以根据上一段时间的路由线路统计,确定每条路径的传输代价,进而确定路由传输信息。The above two strategies can be used alone or in combination, which is not limited in the present disclosure. During specific implementation, the transmission cost of each path can be determined according to the routing line statistics of the previous period, and then the routing transmission information can be determined.

(二)探索方式(2) Exploration methods

该方式通过探索数据包确定路由传输信息,有利于根据物理核位置的动态改变而动态调整路由。具体的,通过传输探索数据包的方式确定第一处理核与第二处理核之间的路由传输信息。This method determines the route transmission information by exploring the data packets, which is beneficial to dynamically adjust the route according to the dynamic change of the physical core location. Specifically, the route transmission information between the first processing core and the second processing core is determined by transmitting a discovery data packet.

具体的,根据第一处理核的当前物理位置与第二处理核的当前物理位置之间的相对位置关系,生成探索数据包;通过探索方式将探索数据包传输至第二处理核;探索数据包用于在传输过程中记录探索数据包对应的传输参数;根据探索数据包的传输参数确定第一处理核与第二处理核之间的路由传输信息。其中,传输参数包括传输路径和/或位置偏移。其中,各个传输节点接收到探索数据包后,按照探索策略将数据包传输至位于下一跳的传输节点,并根据传输路径更新探索数据包的传输路径和/或位置偏移;其中,传输节点是位于第一处理核和第二处理核之间的传输节点,具体可以是位于第一处理核和第二处理核之间的路由节点。在本实施例中,每个处理核对应于一个路由节点,因此,传输节点至少包括:第一处理核对应的第一路由节点、第二处理核对应的第二路由节点,以及位于第一处理核和第二处理核之间的路由节点。另外,探索策略包括:随机选择策略、或顺序选择策略,本公开对具体策略不做限定,只要能够尽可能地尝试不同的路由方向即可。例如,可通过遗传算法进行尝试:在分叉节点发送大量的探索数据包,从而找到最快的一条或几条路径。举例来说,传输初期凡是分叉点就可以进行尝试,每当遇到不确定的路由节点时,部分数据包走第一方向,部分数据包走第二方向,从而找出传的快的一到N条路径作为传递路径,N为自然数。由此可见,通过在分叉点发送大量的尝试包,能够找到最快或TOP N作为选择的路径。该方式属于慢更新,发送探索数据包直至确定较佳路径。Specifically, according to the relative positional relationship between the current physical position of the first processing core and the current physical position of the second processing core, an exploration data packet is generated; the exploration data packet is transmitted to the second processing core by means of exploration; the exploration data packet It is used for recording transmission parameters corresponding to the exploration data packets during the transmission process; and determining routing transmission information between the first processing core and the second processing core according to the transmission parameters of the exploration data packets. Wherein, the transmission parameters include a transmission path and/or a position offset. Wherein, after each transmission node receives the exploration data packet, it transmits the data packet to the transmission node located at the next hop according to the exploration strategy, and updates the transmission path and/or position offset of the exploration data packet according to the transmission path; wherein, the transmission node is a transmission node located between the first processing core and the second processing core, and specifically may be a routing node located between the first processing core and the second processing core. In this embodiment, each processing core corresponds to a routing node, therefore, the transfer node at least includes: a first routing node corresponding to the first processing core, a second routing node corresponding to the second processing core, and a A routing node between the core and the second processing core. In addition, the exploration strategy includes: a random selection strategy or a sequential selection strategy, and the present disclosure does not limit the specific strategy, as long as different routing directions can be tried as much as possible. For example, a genetic algorithm can be used to try: send a large number of exploration data packets at the fork node, so as to find the fastest path or paths. For example, at the initial stage of transmission, you can try any fork point. Whenever you encounter an uncertain routing node, some data packets go in the first direction, and some data packets go in the second direction, so as to find out the fastest one. To N paths as transfer paths, N is a natural number. It can be seen that by sending a large number of trial packets at the fork point, the fastest or TOP N path can be found. This method belongs to slow update, sending exploration data packets until a better path is determined.

其中,上述传输参数用于记录数据包在传输过程中所途径的各个传输节点的信息,相应的,传输参数的信息内容随数据包的传输跳数的变化而动态更新,通过传输参数能够确定数据包的传输路径。由于探索传输方式中各个数据包的传输路径未知,因此,需要借由传输参数动态记录传输路径。具体实施时,可通过多种方式确定传输参数中的传输路径。例如,分别针对各个传输方位,设置对应的数字编号,通过由一组数字编号组成的数字序列表示传输路径。比如,假设向第一方向(如左侧)传输对应于数字编号0,假设向第二方向(如右侧)传输对应于数字编号1、假设向第三方向(如顶部)传输对应于数字编号2、假设向第四方向(如底部)传输对应于数字编号3,相应的,若先向左侧传输、又向顶部传输,则对应表示为数字序列02,以此类推。Among them, the above-mentioned transmission parameters are used to record the information of each transmission node passed by the data packet during the transmission process. Correspondingly, the information content of the transmission parameters is dynamically updated with the change of the transmission hops of the data packet, and the data can be determined through the transmission parameters. The transmission path of the package. Since the transmission path of each data packet in the exploration transmission mode is unknown, it is necessary to dynamically record the transmission path by means of transmission parameters. During specific implementation, the transmission path in the transmission parameters may be determined in various ways. For example, corresponding digital numbers are set for each transmission direction, and the transmission path is represented by a digital sequence composed of a group of digital numbers. For example, assume that transmission in the first direction (such as the left side) corresponds to the number 0, transmission in the second direction (such as the right) corresponds to the number 1, and transmission in the third direction (such as the top) corresponds to the number number 2. Assume that the transmission to the fourth direction (such as the bottom) corresponds to the number 3. Correspondingly, if the transmission is first to the left and then to the top, it is correspondingly expressed as a digital sequence 02, and so on.

另外,在根据探索数据包的传输参数确定第一处理核与第二处理核之间的路由传输信息时,可通过如下两种方式中的至少一种实现:In addition, when determining the routing transmission information between the first processing core and the second processing core according to the transmission parameters of the exploration data packet, it can be realized in at least one of the following two ways:

在第一种方式中,接收第二处理核发送的各个探索数据包的传输参数,根据各个探索数据包的传输参数,筛选至少一条传输路径作为目标路径,根据目标路径确定第一处理核与第二处理核之间的路由传输信息。在该方式中,第二处理核接收到探索数据包后,直接将各个探索数据包的传输参数发送给当前处理核(即第一处理核),由第一处理核根据各个探索数据包的传输参数,筛选至少一条传输路径作为目标路径,根据目标路径确定第一处理核与第二处理核之间的路由传输信息。In the first way, the transmission parameters of each exploration data packet sent by the second processing core are received, at least one transmission path is selected as the target path according to the transmission parameters of each exploration data packet, and the first processing core and the second processing core are determined according to the target path. The second handles the routing and transmission of information between cores. In this way, after the second processing core receives the exploration data packet, it directly sends the transmission parameters of each exploration data packet to the current processing core (that is, the first processing core), and the first processing core transmits the parameters according to the transmission parameters of each exploration data packet. parameters, at least one transmission path is selected as a target path, and the route transmission information between the first processing core and the second processing core is determined according to the target path.

在第二种方式中,接收第二处理核发送的各个探索数据包的传输参数,根据各个探索数据包的传输参数,筛选至少一条传输路径作为目标路径,根据目标路径确定第一处理核与第二处理核之间的路由传输信息。在该方式中,第二处理核接收到探索数据包后,获取各个探索数据包的传输参数,根据各个探索数据包的传输参数,筛选至少一条传输路径作为目标路径,并直接将目标路径发送给第一处理核。In the second method, the transmission parameters of each exploration data packet sent by the second processing core are received, at least one transmission path is selected as the target path according to the transmission parameters of each exploration data packet, and the first processing core and the second processing core are determined according to the target path. The second handles the routing and transmission of information between cores. In this way, after receiving the exploration data packets, the second processing core obtains the transmission parameters of each exploration data packet, selects at least one transmission path as the target path according to the transmission parameters of each exploration data packet, and directly sends the target path to The first processing core.

由此可见,上述两种方式的区别在于:筛选目标路径的执行主体不同。在第一种方式中,由第一处理核筛选目标路径;在第二种方式中,由第二处理核筛选目标路径。It can be seen that the difference between the above two methods lies in that the execution subjects of the screening target paths are different. In the first manner, the target path is screened by the first processing core; in the second manner, the target path is screened by the second processing core.

另外,在通过传输探索数据包的方式确定第一处理核与第二处理核之间的路由传输信息时,为了便于确定探索数据包的传输效率,还可以设置一定数量的预设路径数据包,通过将探索数据包与预设路径数据包的传输结果进行比较,确定最终的路由传输信息。具体的,通过探索方式将第一数量的探索数据包传输至第二处理核;将第二数量的预设路径数据包按照预设传输路径传输至第二处理核;根据探索数据包和预设路径数据包确定第一处理核与第二处理核之间的路由传输信息。其中,预设传输路径可以根据路径计算方式确定。例如,假设通过路径计算方式确定了多种路径,则从多种路径中选择至少一条路径作为预设路径数据包的预设传输路径。In addition, when determining the route transmission information between the first processing core and the second processing core by transmitting the exploration data packet, in order to facilitate the determination of the transmission efficiency of the exploration data packet, a certain number of preset path data packets can also be set, The final route transmission information is determined by comparing the transmission result of the exploration data packet with the preset path data packet. Specifically, the first number of exploration data packets are transmitted to the second processing core through exploration; the second number of preset path data packets are transmitted to the second processing core according to the preset transmission path; according to the exploration data packets and the preset The path data packet determines routing transmission information between the first processing core and the second processing core. Wherein, the preset transmission path may be determined according to a path calculation method. For example, assuming that multiple paths are determined through path calculation, at least one path is selected from the multiple paths as the preset transmission path of the preset path data packet.

另外,在上文提到的同时设置探索数据包以及预设路径数据包的情况下,可通过以下三种方式中的至少一种判断待传输的数据包是否作为探索数据包:In addition, in the case of setting the exploration data packet and the preset path data packet at the same time as mentioned above, at least one of the following three methods can be used to determine whether the data packet to be transmitted is an exploration data packet:

(1)获取待传输的数据包的次序编号,根据待传输的数据包的次序编号,将第一数量的数据包确定为探索数据包。例如,可通过次序编号设置探索数据包与预设路径数据包之间的比例。比如,第一比例的数据包按照预设的最优路径传输,第二比例的数据包作为探索数据包尝试不同路径。具体情况中,可以90%的数据包作为预设路径数据包、10%的数据包作为探索数据包。(1) Acquiring sequence numbers of data packets to be transmitted, and determining the first number of data packets as exploration data packets according to the sequence numbers of data packets to be transmitted. For example, the ratio between the exploration data packets and the preset path data packets can be set through sequence numbers. For example, the data packets of the first proportion are transmitted according to the preset optimal path, and the data packets of the second proportion are used as exploration data packets to try different paths. In a specific case, 90% of the data packets may be used as preset path data packets, and 10% of the data packets may be used as exploration data packets.

(2)获取待传输的数据包的信息类型,将信息类型属于预设类型的数据包确定为探索数据包。例如,根据信息类型判断数据包的时延要求、可靠性要求等,从而使重要的数据包走预设,并根据探索数据包的传输延迟,判断是否要换路径。其中,预设类型通常为内容重要、时效要求高的信息类型。(2) Obtain the information type of the data packet to be transmitted, and determine the data packet whose information type belongs to the preset type as the exploration data packet. For example, judge the delay requirements and reliability requirements of data packets according to the information type, so that important data packets go to the preset, and judge whether to change the path according to the transmission delay of the exploration data packets. Among them, the preset type is usually an information type with important content and high timeliness requirements.

(3)判断当前时段信息是否属于预设探索时段,若是,则将当前时段内待传输的数据包确定为探索数据包。该方式能够根据各个业务时段的网络状态灵活配置不同的时段作为探索时段。该方式主要从时间维度划分数据包的传输方式,从而将一定的时间段作为探索时段。具体的,可以预先监测一天中各个时段的通信业务量,将业务量较低的业务低峰时段确定为预设探索时段。(3) Determine whether the current period information belongs to the preset exploration period, and if so, determine the data packets to be transmitted in the current period as exploration data packets. This method can flexibly configure different time periods as the exploration time period according to the network status of each business period. This method mainly divides the transmission mode of the data packet from the time dimension, so that a certain period of time is used as the exploration period. Specifically, it is possible to pre-monitor the communication traffic of each period of the day, and determine a low-peak business period with a relatively low traffic volume as a preset exploration period.

另外,上文提到的传输参数中还可以进一步记录各个传输节点转发该数据包时的时间戳,以便确定该数据包的传输时延,从而在筛选目标路径时根据传输跳数和/或传输时延计算传输代价,进而根据传输代价筛选目标路径。例如,在传输代价低于预设代价时更新路由表,从而将该传输代价更小的目标路径添加至路由表中。具体实施时,可以分别计算各个传输路径的传输代价,并将各个传输路径按照传输代价从低到高的顺序进行排序,进而提取排序靠前的若干条传输路径作为目标路径。另外,在探索数据包与预设路径数据包结合传输的场景中,还可以将探索数据包的传输代价与预设路径数据包的传输代价进行比较,只有在探索数据包的传输代价小于预设路径数据包的传输代价时,才基于探索数据包的传输路径更新路由表。In addition, the above-mentioned transmission parameters can further record the time stamp when each transmission node forwards the data packet, so as to determine the transmission delay of the data packet, so that when screening the target path, according to the transmission hop count and/or transmission The delay calculates the transmission cost, and then filters the target path according to the transmission cost. For example, the routing table is updated when the transmission cost is lower than the preset cost, so as to add the target path with the lower transmission cost to the routing table. During specific implementation, the transmission cost of each transmission path may be calculated separately, and each transmission path may be sorted according to the order of transmission cost from low to high, and then several transmission paths with the highest ranking may be extracted as target paths. In addition, in the scenario where the exploration data packet is combined with the preset path data packet, the transmission cost of the exploration data packet can also be compared with the transmission cost of the preset path data packet. Only when the transmission cost of the exploration data packet is less than the preset When the transmission cost of the path data packet is determined, the routing table is updated based on the transmission path of the exploration data packet.

另外,在探索数据包中,还需要包含数据包的目的地址,具体可通过多种方式表示。例如,既可以直接通过第二处理核的物理地址进行标识,也可以通过第二处理核相对于第一处理核的位置偏移量进行标识,本公开对此不做限定。另外,除包含目的地址信息之外,探索数据包中还可以进一步包含起始地址信息、用于指示数据包重要性的信息类型等信息。当然,探索数据包还可以进一步设置探索标识,以供各个路由节点根据探索标识确定其传输方式为探索传输方式。In addition, in the exploration data packet, the destination address of the data packet also needs to be included, which can be expressed in various ways. For example, the physical address of the second processing core may be directly used for identification, or the position offset of the second processing core relative to the first processing core may be used for identification, which is not limited in the present disclosure. In addition, in addition to including the destination address information, the search data packet may further include information such as start address information and an information type used to indicate the importance of the data packet. Certainly, the exploration data packet may further set an exploration flag, so that each routing node may determine its transmission mode as the exploration transmission mode according to the exploration flag.

步骤S230:根据路由传输信息,更新第一处理核对应的路由表。Step S230: Update the routing table corresponding to the first processing core according to the routing transmission information.

具体的,在第一处理核对应的路由表中,查询第一处理核与第二处理核之间的已存储路由信息;根据路由传输信息对已存储路由信息进行更新操作;其中,更新操作包括以下中的至少一种:替换类更新操作、以及增加类更新操作。Specifically, in the routing table corresponding to the first processing core, query the stored routing information between the first processing core and the second processing core; update the stored routing information according to the routing transmission information; wherein, the updating operation includes At least one of the following: replacing a class update operation, and adding a class update operation.

综上可知,通过本实施例中的方式,通过动态确定第一处理核和第二处理核的物理位置的方式,能够灵活设置路由传输信息,从而便于动态更新路由表并调整路由,能够灵活适用于处理核的物理位置可动态改变的复杂应用场景。其中,通过探索传输和确定性路径相结合的方式能够兼顾路径可靠性以及灵活性的需求。In summary, through the method in this embodiment, by dynamically determining the physical positions of the first processing core and the second processing core, the routing transmission information can be flexibly set, so that it is convenient to dynamically update the routing table and adjust the routing, and can be flexibly applied For complex application scenarios where the physical location of the processing core can change dynamically. Among them, the combination of exploration transmission and deterministic path can take into account the requirements of path reliability and flexibility.

另外,本公开又一实施例还提供了一种基于众核系统的路由表更新装置,图3示出了该装置的结构示意图,如图3所示,该装置包括:In addition, another embodiment of the present disclosure also provides a device for updating a routing table based on a many-core system. FIG. 3 shows a schematic structural diagram of the device. As shown in FIG. 3 , the device includes:

确定模块31,适于在满足路由表更新条件的情况下,根据第一处理核的当前物理位置以及第二处理核的当前物理位置,确定第一处理核与第二处理核之间的路由传输信息;The determination module 31 is adapted to determine the routing transmission between the first processing core and the second processing core according to the current physical location of the first processing core and the current physical location of the second processing core when the routing table update condition is satisfied information;

更新模块32,根据路由传输信息,更新第一处理核对应的路由表;其中,第二处理核为接收第一处理核数据包的处理核,路由表更新条件包括以下中的至少一个:第一处理核对应的路由表为空、第一处理核和/或第二处理核的物理位置发生改变。The update module 32 updates the routing table corresponding to the first processing core according to the routing transmission information; wherein, the second processing core is a processing core receiving the first processing core data packet, and the routing table update condition includes at least one of the following: first The routing table corresponding to the processing core is empty, and the physical location of the first processing core and/or the second processing core changes.

可选地,在路由表更新条件为所述第一处理核对应的路由表为空的情况下,第二处理核的当前物理位置通过以下方式确定:向所述第二处理核广播位置查询消息;接收第二处理核发送的位置响应消息,根据所述位置响应消息确定所述第二处理核的当前物理位置。Optionally, when the routing table update condition is that the routing table corresponding to the first processing core is empty, the current physical location of the second processing core is determined by broadcasting a location query message to the second processing core ; Receive a location response message sent by the second processing core, and determine the current physical location of the second processing core according to the location response message.

可选地,所述确定模块具体适于:Optionally, the determination module is specifically adapted to:

通过路径计算方式确定所述第一处理核与所述第二处理核之间的路由传输信息;和/或determining routing transmission information between the first processing core and the second processing core by way of path calculation; and/or

通过传输探索数据包的方式确定所述第一处理核与所述第二处理核之间的路由传输信息。The route transmission information between the first processing core and the second processing core is determined by transmitting a discovery data packet.

可选地,所述确定模块具体适于:Optionally, the determination module is specifically adapted to:

获取与所述第一处理核的当前物理位置相对应的第一位置坐标,以及与所述第二处理核的当前物理位置相对应的第二位置坐标;obtaining first location coordinates corresponding to the current physical location of the first processing core, and second location coordinates corresponding to the current physical location of the second processing core;

按照预设的路径设置策略,确定所述第一位置坐标与所述第二位置坐标对应的至少一条路径信息;Determine at least one piece of path information corresponding to the first location coordinate and the second location coordinate according to a preset path setting strategy;

分别计算各条路径信息的传输代价,根据计算结果确定所述路由传输信息。The transmission cost of each path information is calculated respectively, and the route transmission information is determined according to the calculation result.

可选地,所述确定模块具体适于,所述通过传输探索数据包的方式确定所述第一处理核与所述第二处理核之间的路由传输信息包括:Optionally, the determining module is specifically adapted to, the determining the route transmission information between the first processing core and the second processing core by transmitting the exploration data packet includes:

根据所述第一处理核的当前物理位置与所述第二处理核的当前物理位置之间的相对位置关系,生成探索数据包;generating an exploration data packet according to a relative positional relationship between the current physical position of the first processing core and the current physical position of the second processing core;

通过探索方式将所述探索数据包传输至所述第二处理核;所述探索数据包用于在传输过程中记录所述探索数据包对应的传输参数,所述传输参数包括传输路径和/或位置偏移;Transmitting the exploration data packet to the second processing core in an exploratory manner; the exploration data packet is used to record transmission parameters corresponding to the exploration data packet during the transmission process, and the transmission parameters include a transmission path and/or position offset;

接收所述第二处理核发送的各个探索数据包的传输参数,根据各个探索数据包的传输参数,筛选至少一条传输路径作为目标路径,根据所述目标路径确定所述第一处理核与所述第二处理核之间的路由传输信息。receiving the transmission parameters of each exploration data packet sent by the second processing core, selecting at least one transmission path as a target path according to the transmission parameters of each exploration data packet, and determining the relationship between the first processing core and the Routing transfer information between the second processing cores.

可选地,所述确定模块具体适于:Optionally, the determination module is specifically adapted to:

根据所述第一处理核的当前物理位置与所述第二处理核的当前物理位置之间的相对位置关系,生成探索数据包;generating an exploration data packet according to a relative positional relationship between the current physical position of the first processing core and the current physical position of the second processing core;

通过探索方式将所述探索数据包传输至所述第二处理核;所述探索数据包用于在传输过程中记录所述探索数据包对应的传输参数,所述传输参数包括传输路径和/或位置偏移;Transmitting the exploration data packet to the second processing core in an exploratory manner; the exploration data packet is used to record transmission parameters corresponding to the exploration data packet during the transmission process, and the transmission parameters include a transmission path and/or position offset;

接收所述第二处理核根据各个探索数据包的传输参数筛选得到的至少一条目标路径,根据所述目标路径确定所述第一处理核与所述第二处理核之间的路由传输信息。Receiving at least one target path obtained by screening by the second processing core according to the transmission parameters of each exploration data packet, and determining routing transmission information between the first processing core and the second processing core according to the target path.

可选地,各个传输节点接收到所述探索数据包后,按照探索策略将所述数据包传输至位于下一跳的传输节点,并根据传输路径更新所述探索数据包的传输路径和/或位置偏移;其中,所述传输节点是位于所述第一处理核和第二处理核之间的传输节点,所述探索策略包括:随机选择策略、或顺序选择策略。Optionally, after each transmission node receives the exploration data packet, it transmits the data packet to the next-hop transmission node according to the exploration strategy, and updates the transmission path and/or the transmission path of the exploration data packet according to the transmission path. Position offset; wherein, the transfer node is a transfer node located between the first processing core and the second processing core, and the exploration strategy includes: a random selection strategy, or a sequential selection strategy.

可选地,所述确定模块具体适于:Optionally, the determination module is specifically adapted to:

通过探索方式将第一数量的探索数据包传输至所述第二处理核;transmitting the first number of exploration data packets to the second processing core in an exploration manner;

将第二数量的预设路径数据包按照预设传输路径传输至所述第二处理核;transmitting a second number of preset path data packets to the second processing core according to a preset transmission path;

根据所述探索数据包和所述预设路径数据包确定所述第一处理核与所述第二处理核之间的路由传输信息。Determine routing transmission information between the first processing core and the second processing core according to the exploration data packet and the preset path data packet.

可选地,所述确定模块具体适于:Optionally, the determination module is specifically adapted to:

获取待传输的数据包的次序编号,根据所述待传输的数据包的次序编号,将第一数量的数据包确定为探索数据包;或者,Acquiring the sequence numbers of the data packets to be transmitted, and determining the first number of data packets as exploration packets according to the sequence numbers of the data packets to be transmitted; or,

获取待传输的数据包的信息类型,将信息类型属于预设类型的数据包确定为探索数据包;或者,Acquire the information type of the data packet to be transmitted, and determine the data packet whose information type belongs to the preset type as the exploration data packet; or,

判断当前时段信息是否属于预设探索时段,若是,则将当前时段内待传输的数据包确定为探索数据包。It is judged whether the current period information belongs to the preset exploration period, and if so, the data packet to be transmitted in the current period is determined as the exploration data packet.

可选地,所述更新模块具体适于:Optionally, the update module is specifically adapted to:

在所述第一处理核对应的路由表中,查询所述第一处理核与所述第二处理核之间的已存储路由信息;In the routing table corresponding to the first processing core, query the stored routing information between the first processing core and the second processing core;

根据所述路由传输信息对所述已存储路由信息进行更新操作;其中,所述更新操作包括以下中的至少一种:替换类更新操作、以及增加类更新操作。An update operation is performed on the stored route information according to the route transmission information; wherein the update operation includes at least one of the following: a replace type update operation, and an add type update operation.

可选地,所述确定模块进一步适于:Optionally, the determining module is further adapted to:

根据第一处理核的历史通信状态,调整第一处理核的物理位置,并将第一处理核的物理位置更新消息广播至其他处理核。According to the historical communication state of the first processing core, the physical position of the first processing core is adjusted, and the update message of the physical position of the first processing core is broadcast to other processing cores.

可选地,所述确定模块进一步适于:接收第二处理核发送的第二处理核的物理位置更新消息,该物理位置更新消息是第二处理核根据第二处理核的历史通信状态,调整第二处理核的物理位置后广播的消息。Optionally, the determining module is further adapted to: receive a physical location update message of the second processing core sent by the second processing core, where the physical location update message is adjusted by the second processing core according to the historical communication state of the second processing core. The message broadcast after the physical location of the second processing core.

另外,参照图4,本公开实施例提供一种电子设备,其包括:In addition, referring to FIG. 4 , an embodiment of the present disclosure provides an electronic device, which includes:

一个或多个处理器101;one or more processors 101;

存储器102,其上存储有一个或多个程序,当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现上述任一实施例中的路由方法。The memory 102 stores one or more programs thereon, and when the one or more programs are executed by one or more processors, the one or more processors implement the routing method in any one of the foregoing embodiments.

一个或多个I/O接口103,连接在处理器与存储器之间,配置为实现处理器与存储器的信息交互。One or more I/O interfaces 103 are connected between the processor and the memory, and are configured to realize information exchange between the processor and the memory.

其中,处理器101为具有数据处理能力的器件,其包括但不限于中央处理器(CPU)等;存储器102为具有数据存储能力的器件,其包括但不限于随机存取存储器(RAM,更具体如SDRAM、DDR等)、只读存储器(ROM)、带电可擦可编程只读存储器(EEPROM)、闪存(FLASH);I/O接口(读写接口)103连接在处理器101与存储器102间,能实现处理器101与存储器102的信息交互,其包括但不限于数据总线(Bus)等。Wherein, the processor 101 is a device with data processing capability, which includes but not limited to a central processing unit (CPU), etc.; the memory 102 is a device with data storage capability, which includes but not limited to a random access memory (RAM, more specifically Such as SDRAM, DDR, etc.), read-only memory (ROM), electrified erasable programmable read-only memory (EEPROM), flash memory (FLASH); I/O interface (read-write interface) 103 is connected between processor 101 and memory 102 , can realize information exchange between the processor 101 and the memory 102, which includes but not limited to a data bus (Bus) and the like.

在一些实施例中,处理器101、存储器102和I/O接口103通过总线104相互连接,进而与计算设备的其它组件连接。In some embodiments, the processor 101 , the memory 102 and the I/O interface 103 are connected to each other through the bus 104 , and further connected to other components of the computing device.

另外,参照图5,本公开实施例提供一种计算机可读介质,其上存储有计算机程序,程序被处理器执行时实现上述任一实施例提供的路由方法。In addition, referring to FIG. 5 , an embodiment of the present disclosure provides a computer-readable medium on which a computer program is stored, and when the program is executed by a processor, the routing method provided by any of the foregoing embodiments is implemented.

本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁盒、磁带、磁盘存储或其它磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其它的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制之类的调制数据信号中的其它数据,并且可包括任何信息递送介质。Those of ordinary skill in the art can understand that all or some of the steps in the methods disclosed above, the functional modules/units in the system, and the device can be implemented as software, firmware, hardware, and an appropriate combination thereof. In a hardware implementation, the division between functional modules/units mentioned in the above description does not necessarily correspond to the division of physical components; for example, one physical component may have multiple functions, or one function or step may be composed of several physical components. Components cooperate to execute. Some or all of the physical components may be implemented as software executed by a processor, such as a central processing unit, digital signal processor, or microprocessor, or as hardware, or as an integrated circuit, such as an application-specific integrated circuit . Such software may be distributed on computer readable media, which may include computer storage media (or non-transitory media) and communication media (or transitory media). As known to those of ordinary skill in the art, the term computer storage media includes both volatile and nonvolatile media implemented in any method or technology for storage of information, such as computer readable instructions, data structures, program modules, or other data. permanent, removable and non-removable media. Computer storage media include, but are not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disk (DVD) or other optical disk storage, magnetic cartridges, magnetic tape, magnetic disk storage or other magnetic storage devices, or can Any other medium used to store desired information and which can be accessed by a computer. In addition, as is well known to those of ordinary skill in the art, communication media typically embodies computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and may include any information delivery media .

本文已经公开了示例实施例,并且虽然采用了具体术语,但它们仅用于并仅应当被解释为一般说明性含义,并且不用于限制的目的。在一些实例中,对本领域技术人员显而易见的是,除非另外明确指出,否则可单独使用与特定实施例相结合描述的特征、特性和/或元素,或可与其它实施例相结合描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离由所附的权利要求阐明的本公开的范围的情况下,可进行各种形式和细节上的改变。Example embodiments have been disclosed herein, and while specific terms have been employed, they are used and should be construed in a generic descriptive sense only and not for purposes of limitation. In some instances, it will be apparent to those skilled in the art that features, characteristics and/or elements described in connection with a particular embodiment may be used alone, or may be described in combination with other embodiments, unless explicitly stated otherwise. Combinations of features and/or elements. Accordingly, it will be understood by those of ordinary skill in the art that various changes in form and details may be made without departing from the scope of the present disclosure as set forth in the appended claims.

Claims (15)

1.一种基于众核系统的路由表更新方法,包括:1. A routing table update method based on many-core system, comprising: 在满足路由表更新条件的情况下,根据第一处理核的当前物理位置以及第二处理核的当前物理位置,确定所述第一处理核与所述第二处理核之间的路由传输信息;When the routing table update condition is met, determine routing transmission information between the first processing core and the second processing core according to the current physical location of the first processing core and the current physical location of the second processing core; 根据所述路由传输信息,更新所述第一处理核对应的路由表;updating the routing table corresponding to the first processing core according to the routing transmission information; 其中,所述第二处理核为接收所述第一处理核数据包的处理核,所述路由表更新条件包括以下中的至少一个:第一处理核对应的路由表为空、第一处理核和/或第二处理核的物理位置发生改变。Wherein, the second processing core is a processing core that receives the first processing core data packet, and the routing table update condition includes at least one of the following: the routing table corresponding to the first processing core is empty, the first processing core and/or the physical location of the second processing core changes. 2.根据权利要求1所述的方法,其中,在所述路由表更新条件为所述第一处理核对应的路由表为空的情况下,所述第二处理核的当前物理位置通过以下方式确定:2. The method according to claim 1, wherein, when the routing table update condition is that the routing table corresponding to the first processing core is empty, the current physical location of the second processing core is in the following manner Sure: 向所述第二处理核广播位置查询消息;broadcast a location query message to the second processing core; 接收第二处理核发送的位置响应消息,根据所述位置响应消息确定所述第二处理核的当前物理位置。Receive a location response message sent by the second processing core, and determine the current physical location of the second processing core according to the location response message. 3.根据权利要求1所述的方法,其中,所述确定所述第一处理核与所述第二处理核之间的路由传输信息包括:3. The method according to claim 1, wherein said determining routing transmission information between said first processing core and said second processing core comprises: 通过路径计算方式确定所述第一处理核与所述第二处理核之间的路由传输信息;和/或determining routing transmission information between the first processing core and the second processing core by way of path calculation; and/or 通过传输探索数据包的方式确定所述第一处理核与所述第二处理核之间的路由传输信息。The route transmission information between the first processing core and the second processing core is determined by transmitting a discovery data packet. 4.根据权利要求3所述的方法,其中,所述通过路径计算方式确定所述第一处理核与所述第二处理核之间的路由传输信息包括:4. The method according to claim 3, wherein the determining the route transmission information between the first processing core and the second processing core through path calculation comprises: 获取与所述第一处理核的当前物理位置相对应的第一位置坐标,以及与所述第二处理核的当前物理位置相对应的第二位置坐标;obtaining first location coordinates corresponding to the current physical location of the first processing core, and second location coordinates corresponding to the current physical location of the second processing core; 按照预设的路径设置策略,确定所述第一位置坐标与所述第二位置坐标对应的至少一条路径信息;Determine at least one piece of path information corresponding to the first location coordinate and the second location coordinate according to a preset path setting strategy; 分别计算各条路径信息的传输代价,根据计算结果确定所述路由传输信息。The transmission cost of each path information is calculated respectively, and the route transmission information is determined according to the calculation result. 5.根据权利要求3所述的方法,其中,所述通过传输探索数据包的方式确定所述第一处理核与所述第二处理核之间的路由传输信息包括:5. The method according to claim 3, wherein said determining the routing transmission information between the first processing core and the second processing core by transmitting the exploration data packet comprises: 根据所述第一处理核的当前物理位置与所述第二处理核的当前物理位置之间的相对位置关系,生成探索数据包;generating an exploration data packet according to a relative positional relationship between the current physical position of the first processing core and the current physical position of the second processing core; 通过探索方式将所述探索数据包传输至所述第二处理核;所述探索数据包用于在传输过程中记录所述探索数据包对应的传输参数,所述传输参数包括传输路径和/或位置偏移;Transmitting the exploration data packet to the second processing core in an exploratory manner; the exploration data packet is used to record transmission parameters corresponding to the exploration data packet during the transmission process, and the transmission parameters include a transmission path and/or position offset; 接收所述第二处理核发送的各个探索数据包的传输参数,根据各个探索数据包的传输参数,筛选至少一条传输路径作为目标路径,根据所述目标路径确定所述第一处理核与所述第二处理核之间的路由传输信息。receiving the transmission parameters of each exploration data packet sent by the second processing core, selecting at least one transmission path as a target path according to the transmission parameters of each exploration data packet, and determining the relationship between the first processing core and the Routing transfer information between the second processing cores. 6.根据权利要求3所述的方法,其中,所述通过传输探索数据包的方式确定所述第一处理核与所述第二处理核之间的路由传输信息包括:6. The method according to claim 3, wherein the determining the routing transmission information between the first processing core and the second processing core by transmitting the exploration data packet comprises: 根据所述第一处理核的当前物理位置与所述第二处理核的当前物理位置之间的相对位置关系,生成探索数据包;generating an exploration data packet according to a relative positional relationship between the current physical position of the first processing core and the current physical position of the second processing core; 通过探索方式将所述探索数据包传输至所述第二处理核;所述探索数据包用于在传输过程中记录所述探索数据包对应的传输参数,所述传输参数包括传输路径和/或位置偏移;Transmitting the exploration data packet to the second processing core in an exploratory manner; the exploration data packet is used to record transmission parameters corresponding to the exploration data packet during the transmission process, and the transmission parameters include a transmission path and/or position offset; 接收所述第二处理核根据各个探索数据包的传输参数筛选得到的至少一条目标路径,根据所述目标路径确定所述第一处理核与所述第二处理核之间的路由传输信息。Receiving at least one target path obtained by screening by the second processing core according to the transmission parameters of each exploration data packet, and determining routing transmission information between the first processing core and the second processing core according to the target path. 7.根据权利要求5或6所述的方法,其中,各个传输节点接收到所述探索数据包后,按照探索策略将所述数据包传输至位于下一跳的传输节点,并根据传输路径更新所述探索数据包的传输参数;其中,所述传输节点是位于所述第一处理核和第二处理核之间的传输节点,所述探索策略包括:随机选择策略、或顺序选择策略。7. The method according to claim 5 or 6, wherein, after receiving the exploration data packet, each transmission node transmits the data packet to the transmission node located at the next hop according to the exploration strategy, and updates the data packet according to the transmission path The transmission parameters of the exploration data packet; wherein, the transmission node is a transmission node located between the first processing core and the second processing core, and the exploration strategy includes: a random selection strategy or a sequential selection strategy. 8.根据权利要求3所述的方法,其中,所述通过传输探索数据包的方式确定所述第一处理核与所述第二处理核之间的路由传输信息包括:8. The method according to claim 3, wherein said determining the routing transmission information between the first processing core and the second processing core by transmitting the exploration data packet comprises: 通过探索方式将第一数量的探索数据包传输至所述第二处理核;transmitting the first number of exploration data packets to the second processing core in an exploration manner; 将第二数量的预设路径数据包按照预设传输路径传输至所述第二处理核;transmitting a second number of preset path data packets to the second processing core according to a preset transmission path; 根据所述探索数据包和所述预设路径数据包确定所述第一处理核与所述第二处理核之间的路由传输信息。Determine routing transmission information between the first processing core and the second processing core according to the exploration data packet and the preset path data packet. 9.根据权利要求8所述的方法,其中,所述通过传输探索数据包的方式确定所述第一处理核与所述第二处理核之间的路由传输信息之前,进一步包括:9. The method according to claim 8, wherein, before determining the route transmission information between the first processing core and the second processing core by transmitting the exploration data packet, further comprising: 获取待传输的数据包的次序编号,根据所述待传输的数据包的次序编号,将第一数量的数据包确定为探索数据包;或者,Acquiring the sequence numbers of the data packets to be transmitted, and determining the first number of data packets as exploration packets according to the sequence numbers of the data packets to be transmitted; or, 获取待传输的数据包的信息类型,将信息类型属于预设类型的数据包确定为探索数据包;或者,Acquire the information type of the data packet to be transmitted, and determine the data packet whose information type belongs to the preset type as the exploration data packet; or, 判断当前时段信息是否属于预设探索时段,若是,则将当前时段内待传输的数据包确定为探索数据包。It is judged whether the current period information belongs to the preset exploration period, and if so, the data packet to be transmitted in the current period is determined as the exploration data packet. 10.根据权利要求1所述的方法,其中,所述根据所述路由传输信息,更新所述第一处理核对应的路由表包括:10. The method according to claim 1, wherein, according to the routing transmission information, updating the routing table corresponding to the first processing core comprises: 在所述第一处理核对应的路由表中,查询所述第一处理核与所述第二处理核之间的已存储路由信息;In the routing table corresponding to the first processing core, query the stored routing information between the first processing core and the second processing core; 根据所述路由传输信息对所述已存储路由信息进行更新操作;其中,所述更新操作包括以下中的至少一种:替换类更新操作、以及增加类更新操作。An update operation is performed on the stored route information according to the route transmission information; wherein the update operation includes at least one of the following: a replace type update operation, and an add type update operation. 11.根据权利要求1-10任一所述的方法,其中,所述方法执行之前,还包括:11. The method according to any one of claims 1-10, wherein, before the method is executed, further comprising: 根据第一处理核的历史通信状态,调整第一处理核的物理位置,并将第一处理核的物理位置更新消息广播至其他处理核。According to the historical communication state of the first processing core, the physical position of the first processing core is adjusted, and the update message of the physical position of the first processing core is broadcast to other processing cores. 12.根据权利要求11所述的方法,其中,所述方法进一步包括:接收第二处理核发送的第二处理核的物理位置更新消息,该物理位置更新消息是第二处理核根据第二处理核的历史通信状态,调整第二处理核的物理位置后广播的消息。12. The method according to claim 11, wherein the method further comprises: receiving a physical location update message of the second processing core sent by the second processing core, the physical location update message is the second processing core according to the second processing The historical communication state of the core, the message broadcast after adjusting the physical location of the second processing core. 13.一种基于众核系统的路由表更新装置,包括:13. A routing table updating device based on a many-core system, comprising: 确定模块,适于在满足路由表更新条件的情况下,根据第一处理核的当前物理位置以及第二处理核的当前物理位置,确定所述第一处理核与所述第二处理核之间的路由传输信息;The determining module is adapted to determine the distance between the first processing core and the second processing core according to the current physical location of the first processing core and the current physical location of the second processing core when the routing table update condition is satisfied. route transmission information; 更新模块,适于根据所述路由传输信息,更新所述第一处理核对应的路由表;An update module, adapted to update the routing table corresponding to the first processing core according to the routing transmission information; 其中,所述第二处理核为接收所述第一处理核数据包的处理核,所述路由表更新条件包括以下中的至少一个:第一处理核对应的路由表为空、第一处理核和/或第二处理核的物理位置发生改变。Wherein, the second processing core is a processing core that receives the first processing core data packet, and the routing table update condition includes at least one of the following: the routing table corresponding to the first processing core is empty, the first processing core and/or the physical location of the second processing core changes. 14.一种电子设备,其包括:14. An electronic device comprising: 一个或多个处理器;one or more processors; 存储装置,其上存储有一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现根据权利要求1至12中任意一项所述的基于众核系统的路由表更新方法。A storage device, on which one or more programs are stored, and when the one or more programs are executed by the one or more processors, the one or more processors implement any of the A method for updating a routing table based on a many-core system. 15.一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现以下方法中的至少一者:15. A computer-readable medium on which a computer program is stored, and when the program is executed by a processor, at least one of the following methods is implemented: 根据权利要求1至12中任意一项所述的基于众核系统的路由表更新方法。The method for updating a routing table based on a many-core system according to any one of claims 1-12.
CN202111264684.2A 2021-10-28 2021-10-28 Routing table updating method and device based on many-core system and electronic equipment Pending CN116055381A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111264684.2A CN116055381A (en) 2021-10-28 2021-10-28 Routing table updating method and device based on many-core system and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111264684.2A CN116055381A (en) 2021-10-28 2021-10-28 Routing table updating method and device based on many-core system and electronic equipment

Publications (1)

Publication Number Publication Date
CN116055381A true CN116055381A (en) 2023-05-02

Family

ID=86120512

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111264684.2A Pending CN116055381A (en) 2021-10-28 2021-10-28 Routing table updating method and device based on many-core system and electronic equipment

Country Status (1)

Country Link
CN (1) CN116055381A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116578522A (en) * 2023-07-13 2023-08-11 中电海康集团有限公司 Data processing method, device, equipment and storage medium based on many-core architecture
CN117880227A (en) * 2024-03-12 2024-04-12 苏州仰思坪半导体有限公司 Chip routing system, method and related device

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1437355A (en) * 2002-02-09 2003-08-20 华为技术有限公司 Management method of multicast users in mobile network
CN101741705A (en) * 2008-11-27 2010-06-16 华为技术有限公司 Method and device for parallel processing of routing update messages
US20120210018A1 (en) * 2011-02-11 2012-08-16 Rikard Mendel System And Method for Lock-Less Multi-Core IP Forwarding
CN107294852A (en) * 2017-07-01 2017-10-24 台州学院 A kind of network route method using the scattered short path collection of topology
CN107431968A (en) * 2015-12-30 2017-12-01 华为技术有限公司 A kind of method for establishing routing table, electronic equipment and network
CN111865799A (en) * 2020-07-14 2020-10-30 北京灵汐科技有限公司 Path planning method and device, path planning equipment and storage medium

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1437355A (en) * 2002-02-09 2003-08-20 华为技术有限公司 Management method of multicast users in mobile network
CN101741705A (en) * 2008-11-27 2010-06-16 华为技术有限公司 Method and device for parallel processing of routing update messages
US20120210018A1 (en) * 2011-02-11 2012-08-16 Rikard Mendel System And Method for Lock-Less Multi-Core IP Forwarding
CN107431968A (en) * 2015-12-30 2017-12-01 华为技术有限公司 A kind of method for establishing routing table, electronic equipment and network
CN107294852A (en) * 2017-07-01 2017-10-24 台州学院 A kind of network route method using the scattered short path collection of topology
CN111865799A (en) * 2020-07-14 2020-10-30 北京灵汐科技有限公司 Path planning method and device, path planning equipment and storage medium

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116578522A (en) * 2023-07-13 2023-08-11 中电海康集团有限公司 Data processing method, device, equipment and storage medium based on many-core architecture
CN116578522B (en) * 2023-07-13 2023-12-01 中电海康集团有限公司 Data processing method, device, equipment and storage medium based on many-core architecture
CN117880227A (en) * 2024-03-12 2024-04-12 苏州仰思坪半导体有限公司 Chip routing system, method and related device
CN117880227B (en) * 2024-03-12 2024-05-31 苏州仰思坪半导体有限公司 Chip routing system, method and related device

Similar Documents

Publication Publication Date Title
US9014056B2 (en) Bridging network devices in a hybrid communication network
US10003532B2 (en) Communication method and communication apparatus
US9300491B2 (en) Frame delivery path selection in hybrid communication networks
CN116055381A (en) Routing table updating method and device based on many-core system and electronic equipment
US20140254596A1 (en) Indexed segment id
US12040974B2 (en) Information sending and processing methods, node, controller, and non-transitory computer-readable storage medium
US8995443B2 (en) Address resolution mechanism for hybrid communication networks
CN104641598A (en) Forwarding tables for hybrid communication networks
WO2015027406A1 (en) Method and apparatus for selecting preferred parent node in wireless sensor network
JP4248546B2 (en) Apparatus and method for transferring MPLS multicast packet via Ethernet
US9979643B2 (en) Communication apparatus, communication method, and computer-readable recording medium
CN115102896B (en) Data broadcast method, broadcast accelerator, NOC, SOC and electronic device
WO2021063379A1 (en) Routing control method and apparatus
CN104023371A (en) Method and system of multi-path routing of vehicular ad hoc network
CN101132374B (en) Method and device for transmitting message
US7751346B2 (en) Apparatus for searching TCP and UDP sockets
CN108259348B (en) A message transmission method and device
WO2023273241A1 (en) Networking communication method and system, and node device, storage medium and electronic device
JP2006211375A (en) Load distribution method in wireless ad hoc network
CN116055380A (en) Routing update method, system, electronic device and medium based on many-core system
WO2016188222A1 (en) Service message forwarding method and apparatus, and communication system
CN116418739A (en) Message processing method, device and network equipment
WO2009151187A1 (en) Method and apparatus for routing in wireless network
CN111464442B (en) Method and device for routing data packet
US20090067345A1 (en) Radio terminal, radio system, and program

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