WO2021147331A1 - 信息处理方法、以太网交换芯片以及存储介质 - Google Patents
信息处理方法、以太网交换芯片以及存储介质 Download PDFInfo
- Publication number
- WO2021147331A1 WO2021147331A1 PCT/CN2020/113727 CN2020113727W WO2021147331A1 WO 2021147331 A1 WO2021147331 A1 WO 2021147331A1 CN 2020113727 W CN2020113727 W CN 2020113727W WO 2021147331 A1 WO2021147331 A1 WO 2021147331A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- core
- slave
- request
- module
- Prior art date
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 150
- 238000003672 processing method Methods 0.000 title claims abstract description 14
- 238000000034 method Methods 0.000 claims abstract description 58
- 238000012545 processing Methods 0.000 claims description 212
- 230000015654 memory Effects 0.000 claims description 50
- 238000004458 analytical method Methods 0.000 claims description 31
- 230000008569 process Effects 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 12
- 230000004044 response Effects 0.000 claims description 6
- 238000012423 maintenance Methods 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 10
- 230000001360 synchronised effect Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000013461 design Methods 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 230000005291 magnetic effect Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 3
- 230000032683 aging Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 238000011156 evaluation Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000005294 ferromagnetic effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/35—Switches specially adapted for specific applications
- H04L49/351—Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/109—Integrated on microchip, e.g. switch-on-chip
Definitions
- This application relates to Ethernet data exchange technology, in particular to an information processing method, an Ethernet exchange chip and a storage medium.
- the embodiments of the present application provide an information processing method, an Ethernet switching chip, and a storage medium.
- the embodiment of the present application provides an information processing method, including:
- the main IP core of the Ethernet switching chip receives the information processing request; the main IP core is one of the at least two IP cores included in the Ethernet switching chip;
- the main IP core performs one of the following operations based on the received information processing request:
- the first information updates its own global information table;
- the received information processing request comes from one of the following: the processor of the switch provided with the Ethernet switch chip; the slave IP core of the Ethernet switch chip;
- Information updates its own special information table; the received information processing request comes from the processor or the slave IP core of the Ethernet switching chip;
- the fourth information corresponding to the information processing request from its own global information table or special information table and send it to the processor, or obtain the fifth information from the corresponding IP core and send it to The processor;
- the fifth information is the information corresponding to the information processing request in the special information table of the corresponding slave IP core itself;
- the slave IP cores are IP cores other than the master IP core among the at least two IP cores;
- the global information table is used to store information associated with all IP cores of the Ethernet switching chip;
- the special information table is used to store information associated with an IP core of the Ethernet switching chip.
- the method further includes:
- the main IP core judges the IP core associated with the information processing request according to a first preset policy, and obtains a first judgment result
- the information processing request is a message information learning request sent from the IP core; the method further includes:
- the main IP core responds to the received message information learning request, performs a self-learning operation corresponding to the message information learning request, and obtains a message information learning result;
- the master IP core determines the message information learning result as the first information , Update its own global information table according to the first information, and send the first information to each slave IP core of the Ethernet switching chip, so that each slave IP core can according to the first information Update its own global information table;
- the master IP core determines that the message information learning result is the second And send the second information to the corresponding slave IP core, so that the corresponding slave IP core can update its own special information table according to the second information.
- the message information learning request is sent from the IP core to the master IP core:
- the IP core did not query the message processing strategy corresponding to the received message in its own global information table or special information table;
- the slave IP core fails to process the received message according to the message processing strategy corresponding to the received message queried in its own global information table or special information table.
- the information processing request is an information update request sent by the processor; the method further includes:
- the master IP core determines the analysis result as the first information, and according to the first information An information updates its own global information table, and sends the first information to each slave IP core of the Ethernet switching chip, so that each slave IP core can update its own global information according to the first information surface;
- the main IP core determines the analysis result as the second information, and according to The second information updates its own special information table;
- the master IP core determines the analysis result as the third information, and sends all the information.
- the third information is given to the corresponding slave IP core, so that the corresponding slave IP core can update its own special information table according to the second information.
- the information processing request is an information reading request sent by the processor; the method further includes:
- the main IP core will retrieve information from its own global information table based on the information read request.
- the acquired information corresponding to the information read request is determined to be the fourth information, and the fourth information is sent to the processor;
- the main IP core will retrieve its own special information based on the information read request.
- the information corresponding to the information read request obtained in the table is determined to be the fourth information, and the fourth information is sent to the processor;
- the master IP core sends the information read request to the corresponding slave IP core to The fifth information returned by the corresponding slave IP core in response to the information read request is acquired and sent to the processor.
- the method further includes:
- the master IP core exchanges information with each slave IP core through a first interface set by itself and a second interface set on each slave IP core.
- the embodiment of the present application also provides an Ethernet switching chip, the Ethernet switching chip includes at least two IP cores; one of the at least two IP cores is the main IP core; the at least two IPs The other IP cores in the core except the master IP core are slave IP cores; among them,
- the main IP core is configured as:
- the first information updates its own global information table;
- the received information processing request comes from one of the following: the processor of the switch provided with the Ethernet switch chip; the slave IP core of the Ethernet switch chip;
- Information updates its own special information table; the received information processing request comes from the processor or the slave IP core of the Ethernet switching chip;
- the fourth information corresponding to the information processing request from its own global information table or special information table and send it to the processor, or obtain the fifth information from the corresponding IP core and send it to The processor;
- the fifth information is the information corresponding to the information processing request in the special information table of the corresponding slave IP core itself;
- the global information table is used to store information associated with all IP cores of the Ethernet switching chip; the special information table is used to store information associated with one IP core of the Ethernet switching chip.
- An embodiment of the present application also provides an Ethernet switching chip, including: a processor and a memory configured to store a computer program that can run on the processor;
- the processor is configured to execute the steps of any of the foregoing methods when running the computer program.
- the embodiment of the present application also provides a storage medium, the medium stores a computer program, and the computer program implements the steps of any of the foregoing methods when the computer program is executed by a processor.
- the main IP core of the Ethernet switching chip receives an information processing request, and performs one of the following operations based on the received information processing request: updating its own global information according to the first information corresponding to the information processing request Table, and send the first information to each slave IP core of the Ethernet switching chip, so that each slave IP core can update its own global information table according to the first information; process according to the information Request the corresponding second information to update its own special information table, or send the third information corresponding to the information processing request to the corresponding slave IP core, so that the corresponding slave IP core can update its own information according to the third information.
- Special information table based on the information processing request, obtain the fourth information corresponding to the information processing request from its own global information table or special information table and send it to the processor, or obtain the fifth information from the corresponding IP core and Sent to the processor;
- the master IP core is one of the at least two IP cores included in the Ethernet switching chip;
- the slave IP core is the at least two IP cores Other IP cores other than the master IP core;
- the information processing request received by the master IP core comes from the processor or the slave IP core of the Ethernet switch chip;
- the processor is provided with the Ethernet switch chip
- the processor of the switch the global information table is used to store information associated with all IP cores of the Ethernet switch chip;
- the special information table is used to store information related to an IP core of the Ethernet switch chip Linked information;
- the fifth information is the information corresponding to the information processing request in the special information table of the corresponding slave IP core itself.
- the solution of the embodiment of the present application configures a master-slave mode for at least two IP cores included in the Ethernet switching chip, and the master IP core communicates with the processor of the switch provided with the Ethernet switching chip, and communicates through the master IP
- the core realizes the synchronization update of the global information table of itself and each slave IP core. In this way, the operation of each IP core in the dual-core or multi-core Ethernet switching chip will not conflict, and further enable dual-core or multi-core Ethernet switching
- the external system behavior of the chip is the same as that of a single-core Ethernet switching chip.
- Figure 1 is a schematic diagram of the structure of a dual-core Ethernet switching chip in related technologies
- FIG. 2 is a schematic flowchart of an information processing method according to an embodiment of the application.
- FIG. 3 is a schematic structural diagram of a switch according to an application embodiment of this application.
- FIG. 4 is a schematic structural diagram of an Ethernet switching chip according to an embodiment of the application.
- FIG. 5 is a schematic diagram of the hardware structure of an Ethernet switch chip according to an embodiment of the application.
- each IP core It's exactly the same.
- the system behavior displayed by the chip during work should not make other terminals or servers perceive whether the chip architecture is single-core or dual-core or multi-core.
- Core design for example, other terminals or servers perceive that there are conflicts or inconsistent delays in packets forwarded by each IP core of the chip). Therefore, information synchronization between IP cores is very necessary.
- the Ethernet switching chip when it processes a message, it needs to maintain a message processing information table (that is, to update the message processing information table), and the message processing information table is stored in the IP core for query by the IP core
- the message processing information table is a common resource, that is, all interfaces of the IP core query the same message forwarding strategy corresponding to the received message after receiving the message.
- Message processing information table for the IP core of a single-core Ethernet switching chip, the message processing information table is a common resource, that is, all interfaces of the IP core query the same message forwarding strategy corresponding to the received message after receiving the message.
- Message processing information table for the IP core of a single-core Ethernet switching chip, the message processing information table is a common resource, that is, all interfaces of the IP core query the same message forwarding strategy corresponding to the received message after receiving the message.
- the IP core not only stores an interface attribute information table and other message processing information tables that are strongly related to the interface of the IP core. , And also store the Ethernet Layer 2 Bridge Message Forwarding Information Table (FDB, Forward Database) and other message processing information tables that are weakly related to the interface of the IP core; here, the messages that are strongly related to the interface of the IP core.
- FDB Forwarding Information Table
- the processing information table is only stored in the corresponding IP core, and the message processing information table that is weakly related to the interface of the IP core is stored in each IP core; therefore, the message that is strongly related to the interface of the IP core
- the processing information table can be maintained internally by the corresponding IP core without telling other IP cores; and the packet processing information table that is weakly related to the interface of the IP core needs to be maintained synchronously by all IP cores, and the storage of each IP core needs to be maintained synchronously
- the message processing information table must be consistent.
- the Ethernet switching chip is taped out to cover multiple product
- the Ethernet switching chip 100 includes an IP core 110 and an IP core 120.
- the message processing pipeline 111 and the message processing pipeline 121 are configured to be stored according to the IP core where they are located.
- the message processing information table performs corresponding processing on the received message, and performs corresponding processing on the received message according to the stored message processing information table; the processing engine 112 and the processing engine 122 are configured to update the message of the IP core where they are located Processing information table (In actual applications, the message processing information table can also be updated by the message processing pipeline or the processor of the switch equipped with the Ethernet switching chip. Here, the message processing information table is only updated for the processing engine. The situation is illustrated by examples).
- the message processing pipeline 111 When the Ethernet switching chip 100 needs to forward a message on the second layer of the Ethernet, if the Ethernet switching chip 100 only contains the IP core 110, the message processing pipeline 111 will query the FDB stored in the IP core 110 for the message to be forwarded The message forwarding strategy of the message; if the message processing pipeline 111 does not find the message forwarding strategy of the message to be forwarded in the FDB, the message information learning request of the message to be forwarded is sent to the processing engine 112 to trigger the processing engine 112
- the self-learning operation enables the processing engine 112 to obtain the message information learning result of the message to be forwarded; the processing engine 112 determines the message forwarding strategy of the message to be forwarded based on the obtained message information learning result, and adds it to the storage of the IP core 110 In the FDB, the message processing pipeline 111 subsequently forwards other received messages.
- the Ethernet switching chip 100 also includes the IP core 120. Since the FDB is a message processing information table that needs to be maintained by the IP core 110 and the IP core 120 synchronously, the processing engine 112 determines the message to be forwarded based on the obtained message information learning results.
- the forwarding strategy When the forwarding strategy is added to the FDB stored in the IP core 110, the obtained message information learning result needs to be sent to the processing engine 122 for the processing engine 122 to add the corresponding message forwarding strategy to the IP core 120 for storage
- the processing engine 122 of the IP core 120 receives the message information learning request of the message processing pipeline 121 to perform a self-learning operation, it is also necessary to add the determined forwarding strategy of another message to be forwarded to the message In the processing pipeline 121, the message processing pipeline 121 needs to update the FDB twice at the same time, and these two updates may conflict (for example, when the FDB is stored in a hash (Hash) mode, there may be two FDBs in the message processing pipeline 121).
- the forwarding strategy of a message to be forwarded conflicts with the writing position).
- the master-slave mode is configured for at least two IP cores included in the Ethernet switching chip, and the master IP core and the processor of the switch provided with the Ethernet switching chip perform processing. Communication, and realize the synchronization update of the global information table of itself and each slave IP core through the master IP core, so that the operation of each IP core in the dual-core or multi-core Ethernet switching chip will not conflict, and further make the dual-core Or the external system behavior of a multi-core Ethernet switching chip is the same as that of a single-core Ethernet switching chip.
- the message processing information table that needs to be maintained internally by the IP core is the special information table of the IP core
- the message processing information table that needs to be maintained by all IP cores synchronously is The global information table of each IP core; the global information table and the special information table of an IP core are collectively referred to as the message processing information table of the IP core.
- the embodiment of the present application provides an information processing method. As shown in FIG. 2, the method includes the following steps:
- Step 201 The main IP core of the Ethernet switching chip receives an information processing request
- the main IP core is one of the at least two IP cores included in the Ethernet switching chip.
- Step 202 The main IP core performs related operations based on the received information processing request.
- the main IP core performs one of the following operations based on the received information processing request:
- the first information updates its own global information table;
- the received information processing request comes from one of the following: the processor of the switch provided with the Ethernet switch chip; the slave IP core of the Ethernet switch chip;
- Information updates its own special information table; the received information processing request comes from the processor or the slave IP core of the Ethernet switching chip;
- the fourth information corresponding to the information processing request from its own global information table or special information table and send it to the processor, or obtain the fifth information from the corresponding IP core and send it to The processor; the fifth information is the information corresponding to the information processing request in the special information table of the corresponding slave IP core itself.
- the slave IP core is other IP cores of the at least two IP cores except the master IP core;
- the global information table is used to store information associated with all IP cores of the Ethernet switching chip Information;
- the special information table is used to store information associated with an IP core of the Ethernet switching chip.
- the global information table is used to store information associated with all IP cores of the Ethernet switching chip, which means that the global information table is a message that needs to be maintained synchronously by all IP cores of the Ethernet switching chip Processing information table; such as FDB, Ethernet Layer 3 Routing Information Base (RIB, Routing Information Base), Multi-Protocol Label Switching Table (MPLS, Multi-Protocol Label Switching), Label Mapping Table (ILM, Incoming Label Map), etc.
- the message forwarding information table such as the time synchronization counter information table, the bandwidth evaluation information table, and other public resource information tables, and the aging state information table (AST, Aging State Table) corresponding to the FDB, and other stateful message processing information tables.
- the special information table is used to store information associated with an IP core of the Ethernet switching chip, and means that the special information represents a message processing information table that needs to be maintained internally by the corresponding IP core; for example, an interface attribute information table, so
- the index ID contained in the interface attribute information table is the interface ID, and a specified interface must belong to a fixed IP core.
- the global information table needs to be maintained synchronously by all IP cores of the Ethernet switch chip, which means that the global information table of each IP core needs to be consistent, so that no matter which interface of the Ethernet switch chip receives the report
- the corresponding IP core queries the message processing strategy corresponding to the received message the query is the same global information table.
- the main IP core Before the main IP core receives the information processing request, that is, before step 201 is executed, the main IP core needs to be determined among all the IP cores of the Ethernet switching chip.
- the method may further include:
- One IP core of the Ethernet switch chip is configured as a master IP core, and other IP cores of the Ethernet switch chip except the master IP core are configured as slave IP cores to obtain a master IP core and at least one IP core. From the IP core.
- the user can configure any IP core of the Ethernet switching chip as the main IP core as needed.
- the corresponding IP core may include a first processing module and a second processing module; the first processing module is configured to store packets according to the IP core where it is located
- the processing information table (including the global information table and the special information table) performs corresponding processing on the received message (for example, forwarding processing, discarding processing, or processing to modify the priority field of the message);
- the second processing module is configured to update the Message processing information table; taking the dual-core Ethernet switching chip 100 shown in FIG. 1 as an example, the first processing module may be the message processing pipeline 111 of the IP core 110 and the message processing pipeline 121 of the IP core 120;
- the second processing module may be the processing engine 112 of the IP core 110 and the processing engine 122 of the IP core 120.
- the corresponding IP core may include a third processing module, which is configured to communicate with the computer through a high-speed serial computer expansion bus standard (PCIe, Peripheral Component Interconnect Express) bus after its own IP core is configured as the main IP core.
- PCIe serial computer expansion bus standard
- the processor performs information exchange; when the user configures the original master IP core as a slave IP core and configures an original slave IP core as a new master IP core, the third processing module of the original master IP core can be connected to the processor.
- the PCIe bus between them is disconnected, and the third processing module of the new main IP core is connected to the processor through the PCIe bus.
- the main IP core needs to determine the IP core associated with the information processing request, that is, determine the information
- the processing request is aimed at the global information table of each IP core, the special information table of the master IP core, or the special information table of the slave IP core; in this way, the master IP core can perform corresponding operations according to the judgment result.
- the method may further include:
- the main IP core judges the IP core associated with the information processing request according to a first preset policy, and obtains a first judgment result
- the first preset policy can be set by the user as needed, for example, the IP core associated with the information processing request is determined according to the IP core identifier and the message processing information table identifier included in the information processing request; of course, The first judgment result may indicate that the information processing request is associated with all IP cores of the Ethernet switch chip, that is, the information processing request is for the global information table of each IP core; or, the first judgment The result may indicate that the information processing request is associated with the main IP core of the Ethernet switching chip, that is, the information processing request is for the special information table of the main IP core; or, the first judgment result may be It characterizes that the information processing request is associated with a slave IP core of the Ethernet switching chip, that is, the information processing request is for the special information table of the corresponding slave IP core.
- the information processing request received by the master IP core may be a message information learning request sent from the IP core.
- the method may further include:
- the main IP core responds to the received message information learning request, performs a self-learning operation corresponding to the message information learning request, and obtains a message information learning result;
- the master IP core determines the message information learning result as the first information , Update its own global information table according to the first information, and send the first information to each slave IP core of the Ethernet switching chip, so that each IP core can update according to the first information Own global information table;
- the master IP core determines that the message information learning result is the second And send the second information to the corresponding slave IP core, so that the corresponding slave IP core can update its own special information table according to the second information.
- the self-learning operation corresponding to the message information learning request may be the self-learning operation of information such as the source IP address, source port, destination IP address, destination port, and transport layer protocol; accordingly, the message
- the information learning result may include information such as the source IP address, source port, destination IP address, destination port, and transport layer protocol obtained by the main IP core through self-learning operations, and the storage location of the corresponding information in the message processing information table.
- the slave IP core may send the message information learning request to the master IP core:
- the IP core did not query the message processing strategy corresponding to the received message in its own global information table or special information table;
- the slave IP core fails to process the received message according to the message processing strategy corresponding to the received message queried in its own global information table or special information table.
- the first processing module queries the packet processing information table of the IP core where it is located for the packet corresponding to the received packet.
- the message processing strategy is to process the received message according to the queried message processing strategy; when one of the following conditions is met, the first processing module sends a message information learning request to the second IP core where it is located.
- the first processing module fails to query the message processing strategy corresponding to the received message in the message processing information table stored in the first processing module;
- the processing fails.
- the slave module Since the synchronization update of the global information table in each IP core is realized by the master IP core, when the second processing module of the slave IP core (denoted as the slave module in the subsequent description) is from the IP core where it is located When the first processing module receives the message information learning request, the slave module will send the message information learning request to the second processing module of the master IP core (denoted as the master module in the subsequent description); The main module receives not only the message information learning request sent by the first processing module of the IP core where it is located, but also the message information learning request sent by the slave module; the main module receives the message information learning request after receiving the message information learning request.
- the first processing module For example, for the forwarding processing of Ethernet Layer 2 packets, in each IP core of the Ethernet switching chip, after the first processing module receives the packet, it will pass the receiving direction when receiving the packet.
- the interface attribute and the destination address information carried in the received message query the forwarding strategy corresponding to the received message in the FDB of the IP core of its own, so as to forward the received message; if the first processing module The corresponding forwarding strategy is not queried in the FDB, the first processing module needs to send an FDB learning request to the second processing module of the IP core where it is located; the FDB learning request is used for the second processing module to execute The FDB entry learning operation corresponding to the FDB learning request obtains the learning result; the learning result may include: forwarding address information, destination outbound interface attributes, and the storage location of the forwarding strategy corresponding to the learning result in the FDB; After obtaining the learning result, the second processing module can add the corresponding forwarding strategy (that is, the forwarding address information and the destination outbound interface attribute included in the learning result
- FDB is a global information table
- the slave module when the slave module receives an FDB learning request from the first processing module of the IP core where it is located, it will send the FDB learning request to the main module; the main module receives both The FDB learning request sent by the first processing module of the IP core also receives the FDB learning request sent from the module; after receiving the FDB learning request, the main module responds to the FDB learning request and executes the FDB learning request corresponding to the FDB learning request.
- the FDB entry learning operation to obtain the learning result; use the learning result to update the FDB of the IP core where it is located; and send the learning result to each slave module of the Ethernet switching chip; each slave module receives all After the learning result is described, the learning result can be used to update the FDB of the IP core where the user is located; in this way, the FDB of each IP core is updated synchronously, and the consistency of the FDB of each IP core is maintained.
- the user can set the information report function for each IP core in the system software of the switch as required; in this way, the main module can also pass the message information learning result through the main IP core
- the third processing module is sent to the processor, so that the system software obtains the message information learning result from the processor and executes corresponding operations.
- the information processing request received by the main IP core may be an information update request sent by the processor.
- the method may further include:
- the master IP core determines the analysis result as the first information, and according to the first information An information updates its own global information table, and sends the first information to each slave IP core of the Ethernet switching chip, so that each IP core can update its own global information table according to the first information ;
- the main IP core determines the analysis result as the second information, and according to The second information updates its own special information table;
- the master IP core determines the analysis result as the third information, and sends all the information.
- the third information is given to the corresponding slave IP core, so that the corresponding slave IP core can update its own special information table according to the second information.
- the processor may specifically be a central processing unit (CPU, Central Processing Unit) of a switch provided with the Ethernet switching chip.
- CPU Central Processing Unit
- the user can update the packet processing information table of each IP core through the system software of the switch.
- the system software can read the user's information from the first location in the memory of the switch through the processor.
- Information update request and send the information update request to the main IP core;
- the first location can be set by the user in the system software as needed, and the first location is used to store the user's information update request ,
- the information update request includes at least the content requested by the user to update and the storage location of the content in the message processing information table;
- the third processing module of the main IP core receives the system software sent by the processor
- the information update request determines the IP core associated with the information update request according to the first preset policy, and obtains the first determination result; analyzes the information update request to obtain the analysis result (that is, determine the content that the user requests to update And the storage location of the content in the message processing information table).
- the third processing module of the main IP core may send the analysis result to the main IP
- the first processing module of the main IP core is used for the first processing module of the main IP core to update the global information table of the main IP core according to the analysis result.
- the third processing module of the main IP core can The analysis result is sent to the main module, and the main module sends the analysis result to each slave module. After each slave module receives the analysis result, it sends the analysis result to the IP core where it is located.
- the third processing module of the third processing module sends the analysis result to the first processing module of the IP core where it is located, so that the first processing module can update the IP core where it is located according to the analysis result Global information table.
- the third processing module of the main IP core may directly send the analysis result to the The first processing module of the main IP core is used for the first processing module of the main IP core to update the special information table of the main IP core according to the analysis result.
- the first target of the master IP core may send the analysis result to the master module, and the master module sends the analysis result to the slave module of the first target slave IP core, and the slave module of the first target slave IP core After receiving the analysis result, the module sends the analysis result to the third processing module of the first target slave IP core, and the first target sends the analysis result to the third processing module of the slave IP core.
- the first processing module of the first target slave IP core is provided for the first processing module of the first target slave IP core to update the special information table of the IP core where it is located according to the analysis result.
- the master IP core when it needs to send the analysis result to the corresponding slave IP core, it can directly send the information update request to the corresponding slave IP core, and the corresponding slave IP core will send the information to the corresponding slave IP core.
- the update request is parsed to obtain the analysis result, and the corresponding operation is performed; that is, the information update request can be determined as the third information and sent to the corresponding slave IP core.
- the information processing request received by the main IP core may be an information reading request sent by the processor.
- the method may further include:
- the main IP core will retrieve information from its own global information table based on the information read request.
- the acquired information corresponding to the information read request is determined to be the fourth information, and the fourth information is sent to the processor;
- the main IP core will retrieve its own special information based on the information read request.
- the information corresponding to the information read request obtained in the table is determined to be the fourth information, and the fourth information is sent to the processor;
- the master IP core sends the information read request to the corresponding slave IP core to The fifth information returned by the corresponding slave IP core in response to the information read request is acquired and sent to the processor.
- the system software on the switch can use direct memory access (DMA, Direct Memory Access) through the processor. Memory Access) to access the Ethernet switching chip; that is, the third processing module of the main IP core can receive the information read request sent by the system software through the processor, according to the first preset strategy
- the IP core associated with the information read request is determined, and the first determination result is obtained.
- the third processing module of the main IP core may directly obtain the global information of the main IP core.
- the third processing module of the main IP core may also directly receive data from the main IP core. Reads the fourth information corresponding to the information read request in the special information table of, and sends the fourth information to the processor, so that the processor can write the fourth information to the switch.
- the third location of the memory the third location can be set by the user in the system software as needed.
- the master IP core may send the information read request to the master module, and the master module sends the information read request to the slave module of the second target slave IP core, and the second target After receiving the information read request from the slave module of the IP core, the information read request is sent to the third processing module of the second target slave IP core, and the second target slave is the third processing module of the IP core.
- the processing module may read the fifth information corresponding to the information read request from the special information table of the second target from the IP core, and send the fifth information to the slave of the second target from the IP core.
- the slave module of the second target slave IP core sends the fifth information to the master module, and the master module sends the fifth information to the third processing module of the master IP core ,
- the third processing module of the main IP core sends the fifth information to the processor, so that the processor can write the fifth information to the fourth location of the memory of the switch;
- the fourth position can also be set in the system software by the user as needed.
- the user can also set a second preset strategy in the system software as needed, and the second preset strategy is used to make the Ethernet switch chip actively report the operating status during the operation of the switch;
- the operating status may specifically be the operating status of each IP core, such as statistical information on the number of messages sent and received by the ports of each IP core, etc.; for each IP core, the operating status may be in the form of a status information table as one of the corresponding IP cores. Special information table; in this way, without receiving the information read request sent by the processor, the main IP core can actively send its own state information table to the processor according to the period included in the second preset strategy, and The received status information table of the corresponding slave IP core sent by each slave IP core is sent to the processor.
- the third processing module of the main IP core may send the state information table of the main IP core to the processor, so that the processor can write the state information table of the main IP core to the processor.
- the master module can also receive the status information table of the slave IP core where it is sent by each slave module; the status information table of the slave IP core where it is sent by each slave module is the status information table of the slave IP core where the corresponding slave module is located.
- the third processing module Obtained and sent by the third processing module; after the master module receives a status information table from the IP core (denoted as the third target slave IP core in the subsequent description), the third target can be sent from the IP core
- the status information table is sent to the third processing module of the master IP core, and the third processing module of the master IP core sends the status information table of the third target slave IP core to the processor for all
- the processor writes the third target from the state information table of the IP core into the sixth location of the memory of the switch.
- the period for the master IP core to report its own status information table and the period for each slave IP core to report its own status information table may be the same or different. Specifically, it can be specified by the user in the second preview as needed. Set in the strategy; the fifth position and the sixth position can also be set in the system software by the user as needed.
- the master IP core updates its own global information table according to the first information corresponding to the information processing request, and sends the first information to each slave IP core of the Ethernet switching chip to
- each slave IP core updates its own global information table according to the first information, taking into account the delay required for information interaction, that is, in order to realize that all IP cores can update its own global information table synchronously
- the user can also update its own global information table according to
- a third preset strategy needs to be set in the system software, and the third preset strategy is used to enable the main IP core to be in advance when the Ethernet switching chip needs to update the global information table of each IP core synchronously. Set the time delay and start to update its own global information table.
- the third preset strategy is used to enable the main module to start updating its own global information table of the IP core according to the first information corresponding to the information processing request after a preset time delay;
- the preset The time delay is the difference between the first time and the second time;
- the first time is the time when the master module sends the first information to each slave IP core of the Ethernet switching chip;
- the first time The second time is the time when each slave module of the IP core receives the first information.
- the user can configure a pipeline with a preset number of stages in each IP core, and the pipeline with the preset number of stages is configured to achieve the preset delay; specifically, when the IP core is configured as The main IP core, and when the main IP core needs to update its own global information table according to the first information, the main module may update the global information table of the main IP core through the pipeline of the preset number of stages, That is, it is realized that the global information table of the master IP core is updated according to the first information after the preset time delay; when the IP core is configured as a slave IP core, and the slave IP core needs to receive the master IP When the core sends the first information to update its own global information table, the slave module of the slave IP core can skip the pipeline of the preset number of stages configured by the IP core where it is located, and directly update according to the first information The global information table of the slave IP core where it is located.
- the user can determine the size of the preset delay based on the chip design requirements; for example, the user can set the preset number of stages of the pipeline configured for each IP core to 2, that is, if each IP core is configured with a 2-stage pipeline, you can It is determined that the preset time delay is 2 clock cycles, and the clock cycle is a clock cycle of a clock module of the Ethernet switching chip.
- the main module starts to update the global information table of the main IP core according to the first information after 2 clock cycles, and at the same time, the main module sends the first information to each IP core
- the slave module also needs 2 clock cycles, that is, the corresponding slave module receives the first information after 2 clock cycles and directly starts to update the global information table of the slave IP core where it is located; in this way, each IP core can be updated synchronously Own global information table.
- the Ethernet switch chip needs to complete the update of the message processing information table of each IP core within a reasonable time frame, that is, the corresponding received from the module
- the time required for the information sent by the main module must be within a reasonable time range (for example, 20 clock cycles); the user can determine the time required for the corresponding slave module to receive the information sent by the main module based on the chip design requirements,
- the time length is set by controlling the length of the data transmission line between the modules.
- the corresponding module in the process of updating the message processing information table, can perform operations of adding, deleting and modifying the message processing strategy in the message processing information table.
- each IP core of the Ethernet switching chip needs to be provided with a communication interface between the IP cores, so that the master IP core and each slave IP core can exchange information through the communication interface.
- the method may further include:
- the master IP core exchanges information with each slave IP core through a first interface set by itself and a second interface set on each slave IP core.
- the user can set the number of information interactions supported by the first interface and the second interface in each clock cycle as needed; for example,
- the first interface can transmit a piece of information sent by the master IP core to the corresponding slave IP core, and receive a piece of information sent by the corresponding slave IP core; and enable the second interface to In each clock cycle, a piece of information sent by the corresponding slave IP core is delivered to the master IP core, and a piece of information sent by the master IP core is received.
- the user can set the maximum amount of data allowed by the first interface and the second interface to nbit according to the size of the information that the master IP core and the slave IP cores need to transmit during information exchange.
- N is a positive integer.
- error checking and correction ECC, Error Correcting Code
- other error correction technology can be used to make the first interface and the second
- the information exchange carried out by the second interface is error-free communication.
- the main IP core of the Ethernet switching chip receives the information processing request, and performs one of the following operations based on the received information processing request: updating its own global information according to the first information corresponding to the information processing request Information table, and send the first information to each slave IP core of the Ethernet switching chip, so that each slave IP core can update its own global information table according to the first information; according to the information
- the second information corresponding to the processing request updates its own special information table, or the third information corresponding to the information processing request is sent to the corresponding slave IP core, so that the corresponding slave IP core can update itself according to the third information
- the slave IP core receives the fifth information returned by the corresponding slave IP core in response to the information processing request and sends it to the processor; wherein the master IP core is at least two components included in the Ethernet switch chip.
- the slave IP core is an IP core other than the master IP core among the at least two IP cores;
- the information processing request received by the master IP core comes from the processor Or the slave IP core of the Ethernet switch chip;
- the processor is the processor of the switch provided with the Ethernet switch chip;
- the global information table is used to store all the IP cores of the Ethernet switch chip Associated information;
- the special information table is used to store information associated with an IP core of the Ethernet switching chip;
- the fifth information is the special information table of the corresponding slave IP core itself and the The information corresponding to the information processing request; in this way, the operation of each IP core in the dual-core or multi-core Ethernet switching chip will not conflict, and the external system behavior of the dual-core or multi-core Ethernet switching chip can be compared with that of the single-core Ethernet.
- the network switch chip is the same.
- the switch 300 includes a dual-core Ethernet switching chip 310 and a CPU 320; the Ethernet switching chip 310 includes an IP core 311 and an IP core 312; each IP core includes a packet Text processing pipeline (that is, the above-mentioned first processing module, which may be called module one), a processing engine (that is, the above-mentioned second processing module, which may be called module two), and a CPU interaction module (that is, the above-mentioned third processing module, which may be called Is module three) and one interface (that is, the above-mentioned first interface or second interface); that is, IP core 311 includes module one 3111, module two 3112, module three 3113, and interface 3114; IP core 312 includes module one 3121, module two 3122 , Module three 3123 and interface 3124; among them,
- the module one 3111 and the module one 3121 are configured to perform corresponding processing on the received packets according to the packet processing information table of the IP core where they are located;
- the second module 3112 and the second module 3122 are configured to update the message processing information table of the IP core where they are located; the update includes adding a message processing strategy, modifying a message processing strategy, and deleting a message processing strategy (in actual application) ,
- the corresponding message processing information table can also be updated through the module one 3111 or the module one 3121);
- the module three 3113 and the module three 3123 are configured to exchange information with the CPU 320 via the PCIe bus 330 or PCIe bus 340;
- the interface 3114 and the interface 3124 are configured to realize the information exchange between the two modules, that is, to realize the information exchange between the IP cores.
- module two 3112 is the master module, and module two 3122 is the slave module; correspondingly, the IP core 311 is the master IP core, and the IP core 312 is the slave IP core; the IP core 311 communicates with the CPU 320 through the PCIe bus 330
- the PCIe bus 340 connected to the IP core 312 is not connected to the CPU 320; when the master and slave modules need to be switched, that is, when the module 2 3122 is configured as the master module and the module 2 3112 is configured as the slave module, the PCIe bus 330 needs to be disconnected
- the connection with the CPU 320 and the PCIe bus 340 to the CPU 320 enable the IP core 312 to act as the main IP core to exchange information with the CPU 320.
- IP core 311 exchanges information with CPU 320 through PCIe bus 330, and PCIe bus 340 to which IP core 312 is connected is not connected to CPU 320 (that is, module two 3112 is the master module, module two 3122 is the slave module, and IP core 311 is the master IP core, IP core 312 is the slave IP core)” and “IP core 312 exchanges information with CPU 320 through PCIe bus 340, and PCIe bus 330 connected to IP core 311 is not connected to CPU 320 (that is, module 2 3122 is the main module, module The second 3112 is the slave module, the IP core 312 is the main IP core, and the IP core 311 is the slave IP core)”. There is no substantial difference.
- This application example only uses “the IP core 311 communicates information with the CPU 320 through the PCIe bus 330, and IP The PCIe bus 340 to which the core 312 is connected is not connected to the CPU 320 (that is, the module two 3112 is the master module, the module two 3122 is the slave module, the IP core 311 is the master IP core, and the IP core 312 is the slave IP core)” as an example.
- the information processing method of this application embodiment can include three types of table item maintenance: internal table item maintenance of the master IP core 311 (that is, the master IP core 311 updates its own special information table), and the slave
- the maintenance of the internal entries of the IP core 312 that is, the update of its own special information table from the IP core 312
- the synchronization of the entries of the master IP core 311 and the slave IP core 312 that is, the master IP core 311 and the slave IP core 312 are based on the same Information also updates its own global information table).
- the maintenance of the internal table items of the IP core can be the maintenance of the message processing information table (that is, the above-mentioned special information table) that is strongly related to the interface, such as the interface attribute information table, and the index ID contained in the interface attribute information table It is the interface ID, and for a specified interface, it must belong to a fixed IP core;
- the table entry maintenance of the master IP core and the slave IP core synchronization can be the processing information table of the packet weakly related to the interface (that is, the above-mentioned global information table) Maintenance, such as FDB, RIB, MPLS, ILM and other message forwarding information tables, and public resource information tables such as time synchronization counter information tables, bandwidth evaluation information tables, and stateful message processing information tables such as AST corresponding to FDB ;
- the message processing information table that needs to be maintained synchronously needs to be globally consistent, that is, the main IP core storage needs to
- the working mechanism of the main module includes: the main module 3112 receives the information processing request from module one 3111 or the information processing request sent by the CPU 320 through module three 3113, performs corresponding information processing, and obtains the processing result; and writes the processing result Return to module one 3111 (that is, update the message processing information table of the master IP core 311 through module one 3111); and/or notify the slave module 3122 of the processing result through the interface 3114 and the interface 3124, and the slave module 3122 writes the processing result into the module One 3121 (that is, the message processing information table of the slave IP core 312 is updated through the module one 3121); and/or the processing result is reported to the CPU 320 through the module three 3113 and the PCIe bus 330.
- the working mechanism of the slave module includes: the slave module 3122 receives the information processing request of the module one 3121, and sends the information processing request to the master module 3112 through the interface 3124 and the interface 3114; the master module 3112 receives the information processing request , Perform the corresponding information processing, and obtain the processing result; the main module 3112 writes the processing result into the module one 3111 (that is, the message processing information table of the main IP core 311 is updated through the module one 3111), and the processing result is passed through the interface 3114 and interface 3124 informs the slave module 3122 that the slave module 3122 writes the processing result back to the module one 3121 (that is, the message processing information table of the slave IP core 312 is updated through the module one 3121); and/or, the processing result is passed through the module three 3113 and the PCIe bus 330 Report to CPU 320.
- the working mechanism of the main module and the working mechanism of the slave module may be specifically embodied in the following three application scenarios:
- Application scenario 1 For the forwarding of Ethernet Layer 2 packets, suppose that the Ethernet switch chip 310 is a single-core Ethernet switch chip and only contains the IP core 311. Then, after the module 3111 of the IP core 311 receives the message, Query the FDB stored in the IP core 311 through the attributes of the receiving direction interface and the destination address information carried in the received message to forward the received message; but if the corresponding information is not queried in the FDB, module 1 3111 A FDB learning request needs to be sent to the second module 3112.
- the learning sub-module in the second module 3112 receives the FDB learning request, performs the corresponding FDB entry learning operation, and obtains the learning result; the learning result includes: forwarding address information, purpose Outbound interface attributes and the location information that the learning result should be stored in FDB; module two 3112 returns the obtained learning result to module one 3111, and module one will combine the information in the learning result (i.e. forwarding address information and destination outbound interface attribute) ) Is added to the location stored in the FDB included in the learning result to complete the update of the FDB; the updated FDB is used to forward the received message when the subsequent module 3111 receives the message.
- the learning result includes: forwarding address information, purpose Outbound interface attributes and the location information that the learning result should be stored in FDB
- module two 3112 returns the obtained learning result to module one 3111, and module one will combine the information in the learning result (i.e. forwarding address information and destination outbound interface attribute) ) Is added to the location stored in the FDB included in the learning result to complete
- the Ethernet switch chip 310 Since the Ethernet switch chip 310 only contains the IP core 311, the process of module two 3112 returning the learning results to the module one 3111 is very simple; however, the Ethernet switch chip 310 is actually a dual-core Ethernet switch chip, including the IP core 311 and IP core 312; since each IP core has a module two, and FDB is a message processing information table that needs to be maintained globally, if module one 3111 triggers the entry learning operation of module two 3112, the learning result is obtained, module When the second 3112 returns the learning result to the module one 3111, it needs to send the learning result to the module two 3122, and the module two 3122 sends the learning result to the module one 3121, so that the module one 3121 can update its own information synchronously with the module one 3111.
- module two 3122 is also processing the FDB learning request sent by module one 3121 and obtains another learning result
- module two 3122 returns another learning result to module one 3121
- the FDB of the master IP core 311 and the FDB of the slave IP core 312 should be updated by using the working mechanism of the master module and the working mechanism of the slave module.
- the module one 3111 of the main IP core 311 triggers the FDB entry learning operation of the main module 3112, the main module 3112 completes the FDB entry learning operation, obtains the learning result, and returns the learning result to the module one 3111 At the same time, the learning result is sent to the slave module 3122, and the slave module 3122 sends the learning result to the module one 3121.
- the module 1 3121 of the IP core 312 sends an FDB learning request to the slave module 3122, and the slave module 3122 sends the received FDB learning request to the master module 3112, and the master module 3112 completes the corresponding FDB entry learning Operate to obtain the learning result; the master module 3112 sends the learning result to the module one 3111, and at the same time, sends the learning result to the slave module 3122, and the slave module 3122 returns the learning result to the module one 3121.
- Application scenario 2 During the operation of the switch 300, the system software on the switch 300 will provide users with the operating status of the switch 300.
- the operating status of the switch 300 includes at least the operating status of the Ethernet switch chip 310 and the operation of the Ethernet switch chip 310. The status needs to be actively provided by the Ethernet switch chip 310 to the system software.
- the system software summarizes the operating status of the Ethernet switch chip 310 and then displays it to the user; the operating status of the Ethernet switch chip 310 includes each IP
- the operating status of the core such as statistics on the number of packets sent and received on the port.
- the period and time that the master IP core 311 and the slave IP core 312 provide the operating state can be the same or different, and the user can set it according to needs.
- the master IP core 311 and the slave IP core 312 send the corresponding operating status information (that is, the above-mentioned status information table) from the respective module one to the respective module three, but since the module three 3113 of the master IP core 311 can communicate with the CPU 320
- the module 3123 of the slave IP core cannot exchange information with the CPU 320; therefore, the module 3113 can directly send the operating status information in the module 1 3111 to the CPU 320 through the PCIe bus 330, so that the CPU 320 can transfer the master IP
- the operating status information of the core is written into the system memory (that is, the memory of the switch 300) in the designated location of the system software; and the module 3123 needs to send the operating status information of the IP core to the slave module 3122, and the slave module 3122 will The operating status information of the IP core is sent to the main module 3112 through the interface 3124 and the interface 3114.
- the main module 3112 then sends the operating status information of the IP core to the module three 3112, and the module three 3112 will pass the operating status information of the IP core through PCIe
- the bus 330 is sent to the CPU 320, so that the CPU 320 writes the operating status information of the IP core into a location designated by the system software in the system memory.
- Application scenario 3 The CPU 320 establishes a connection with the Ethernet switch chip 310 through the PCIe bus, so that the system software can access the Ethernet switch chip 310 by way of DMA.
- the module three 3113 of the main IP core 311 is responsible for receiving the DMA request sent by the system software through the CPU 320, and the DMA request includes at least a read request and a write request.
- the DMA request is a read request
- the read request is for a message processing information table maintained synchronously by the master IP core 311 and the slave IP core 312, or the read request is for a message maintained internally by the master IP core 311
- the message processing information table, module three 3113 only needs to read the corresponding information in the message processing information table of the main IP core 311 through module one 3111, and send the read information to the CPU 320 for the CPU 320 to read The information is written to the location specified by the system software in the system memory. If the read request is for the message processing information table maintained internally by the slave IP core 312, module three 3113 needs to send the read request to the master module 3112, and the master module 3112 sends the read request to the slave module 3122.
- the module 3122 then sends the read request to the module three 3123, and the module three 3123 processes the read request.
- the module one 3121 reads the corresponding information from the message processing information table of the IP core 312, and reads The obtained result information is sent to the slave module 3122, and the slave module 3122 sends the result information to the main module 3112.
- the master module 3112 then returns the result information to the module three 3113, and the module three 3113 sends the result information to
- the CPU 320 allows the CPU 320 to write the result information into a location designated by the system software in the system memory.
- module three 3113 obtains the data to be written from the location specified by the system software in the system memory (here, the data to be written may be regarded as the write request, and the write request includes the user through the System software input data). First, module three 3113 sends the data to be written to the main module 3112, and at the same time, sends the data to be written into a pipeline with a specified number of stages. The exit of the pipeline is module one.
- the main module 3112 sends the data to be written to the slave module 3122 through the interface 3114 and the interface 3124, and the slave module 3122 sends the data to be written to the module three 3123, and the module three 3123 skips the designation of the configuration from the IP core
- the pipeline of stages directly sends the data to be written to module one 3121 to directly update the message processing information table of the IP core 312; here, it is assumed that the time when the main module 3112 sends the data to be written to the interface 3114 Is time one, the time when the module one 3121 receives the data to be written is time two, and the time difference between time two and time one is X clock cycles of the Ethernet switch chip 310, then it can be determined that the main IP core
- the number of stages in the pipeline of the specified number of stages is X.
- the master IP core 311 and the slave IP core 312 can implement synchronous maintenance of the message processing information table. If the write request is for the message processing information table maintained internally by the main IP core 311, after module three 3113 obtains the data to be written from the location specified by the system software in the system memory, it can skip the configuration in the main IP core 311 The pipeline with the specified number of stages directly sends the data to be written to the module one 3111, so that the module one 3111 directly updates the message processing information table maintained internally by the corresponding main IP core 311.
- module three 3113 obtains the data to be written from the location specified by the system software in the system memory, it sends the data to be written to the host Module 3112, the master module sends the data to be written to the slave module 3122 through the interface 3114 and the interface 3124, and the slave module 3122 sends the data to be written to the module three 3123, and the module three 3123 skips the slave IP core
- the configured pipeline with the specified number of stages directly sends the data to be written to the module one 3121, so that the module one 3121 updates the corresponding message processing information table maintained internally from the IP core 312.
- Ethernet switch chip 310 and the information processing method provided by this application embodiment have the following advantages:
- the embodiment of the present application also provides an Ethernet switching chip.
- the Ethernet switching chip 400 includes at least two IP cores; the at least two IP cores One of the IP cores in the IP core is the master IP core 401; the other IP cores in the at least two IP cores except the master IP core are the slave IP cores 402; wherein,
- the main IP core 401 is configured as:
- the first information updates its own global information table;
- the received information processing request comes from one of the following: the processor of the switch provided with the Ethernet switch chip; the slave IP core 402 of the Ethernet switch chip;
- the third information updates its own special information table; the received information processing request comes from the processor or the slave IP core 402 of the Ethernet switch chip;
- the fourth information corresponding to the information processing request from its own global information table or special information table and send it to the processor, or obtain the fifth information from the corresponding IP core 402 and send it To the processor;
- the fifth information is the information corresponding to the information processing request in the special information table of the corresponding slave IP core 402 itself;
- the global information table stores information associated with all IP cores of the Ethernet switch chip; the special information table is used to store information associated with one IP core of the Ethernet switch chip.
- the main IP core 401 is configured as:
- the information processing request is a message information learning request sent from the IP core 402, and the main IP core 401 is configured to:
- the message information learning result is determined as the first information, and according to the first information Update its own global information table with information, and send the first information to each slave IP core 402 of the Ethernet switching chip, so that each IP core 402 can update its own global information according to the first information Information Sheet;
- the message information learning result is determined to be the second information, and sent The second information is given to the corresponding slave IP core 402, so that the corresponding slave IP core 402 can update its own special information table according to the second information.
- the message information learning request is sent from the IP core 402 to the master IP core 401:
- the IP core 402 fails to query the message processing strategy corresponding to the received message in its own global information table or special information table;
- the slave IP core 402 fails to process the received message according to the message processing strategy corresponding to the received message queried in its own global information table or special information table.
- the information processing request is an information update request sent by the processor, and the main IP core 401 is configured to:
- the analysis result is determined to be the first information, and its own information is updated according to the first information.
- Global information table and sending the first information to each slave IP core 402 of the Ethernet switching chip, so that each IP core 402 can update its own global information table according to the first information;
- the analysis result is determined to be the second information, and according to the second information Information updates its own special information table;
- the analysis result is determined to be the third information, and the third information is sent
- the corresponding slave IP core 402 is provided for the corresponding slave IP core 402 to update its own special information table according to the second information.
- the information processing request is an information read request sent by the processor, and the main IP core 401 is configured to:
- the first judgment result indicates that the information read request is associated with all IP cores of the Ethernet switch chip, based on the information read request, the information obtained from its own global information table Determining that the information corresponding to the read request is the fourth information, and sending the fourth information to the processor;
- the first judgment result indicates that the information read request is associated with the main IP core 401 of the Ethernet switch chip, based on the information read request, the information obtained from its own special information table Determining that the information corresponding to the information read request is the fourth information, and sending the fourth information to the processor;
- the information read request is sent to the corresponding slave IP core 402 to obtain the
- the fifth information returned from the IP core 402 in response to the information read request is sent to the processor.
- the main IP core 401 is configured as:
- the master IP core 401 and the slave IP core 402 can be implemented by processors in the Ethernet switch chip 400.
- Ethernet switch chip 400 provided in the above embodiments are illustrated only by the division of the above program modules. In actual applications, the above processing can be allocated to different program modules according to needs. , That is, divide the internal structure of the device into different program modules to complete all or part of the processing described above.
- Ethernet switch chip 400 provided in the foregoing embodiment belongs to the same concept as the method embodiment, and its specific implementation process is detailed in the method embodiment, which will not be repeated here.
- the embodiment of the present application also provides an Ethernet switch chip.
- the Ethernet switch chip 50 includes a memory 52 and a processor 51. And a computer program stored on the memory 52 and running on the processor 51; when the processor 51 executes the program, the method provided by one or more of the above technical solutions is implemented.
- the main IP core of the Ethernet switch chip 50 performs the following operations through the processor 71: receiving an information processing request; performing one of the following operations based on the received information processing request: according to the information processing request corresponding to the first
- An information updates its own global information table, and sends the first information to each slave IP core of the Ethernet switching chip, so that each slave IP core can update its own global information according to the first information Table; update its own special information table according to the second information corresponding to the information processing request, or send the third information corresponding to the information processing request to the corresponding slave IP core for the corresponding slave IP core according to the
- the third information updates its own special information table; based on the information processing request, the fourth information corresponding to the information processing request is obtained from its own global information table or special information table and sent to the processor, or from Correspondingly obtain the fifth information from the IP core and send it to the processor;
- the master IP core is one of the at least two IP cores included in the Ethernet switching chip;
- the slave IP core is all The other IP cores of
- the various components in the Ethernet switch chip 50 are coupled together through the bus system 53.
- the bus system 53 is configured to implement connection and communication between these components.
- the bus system 53 also includes a power bus, a control bus, and a status signal bus.
- various buses are marked as the bus system 53 in FIG. 5; at the same time, the Ethernet switching chip 50 may also include a communication interface 54 configured to exchange information with other devices .
- the memory 52 in the embodiment of the present application is configured to store various types of data to support the operation of the Ethernet switch chip 50. Examples of these data include: any computer program for operating on the Ethernet switch chip 50.
- the method disclosed in the foregoing embodiment of the present application may be applied to the processor 51 or implemented by the processor 51.
- the processor 51 may be an integrated circuit chip with signal processing capability. In the implementation process, each step of the above method can be completed by an integrated logic circuit of hardware in the processor 51 or instructions in the form of software.
- the aforementioned processor 51 may be a general-purpose processor, a digital signal processor (DSP, Digital Signal Processor), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, and the like.
- the processor 51 may implement or execute various methods, steps, and logical block diagrams disclosed in the embodiments of the present application.
- the general-purpose processor may be a microprocessor or any conventional processor or the like.
- the steps of the method disclosed in the embodiments of the present application may be directly embodied as being executed and completed by a hardware decoding processor, or executed and completed by a combination of hardware and software modules in the decoding processor.
- the software module may be located in a storage medium, and the storage medium is located in the memory 52.
- the processor 51 reads the information in the memory 52 and completes the steps of the foregoing method in combination with its hardware.
- the Ethernet switch chip 50 may be implemented by one or more application specific integrated circuits (ASIC, Application Specific Integrated Circuit), DSP, programmable logic device (PLD, Programmable Logic Device), and complex programmable logic device.
- ASIC Application Specific Integrated Circuit
- DSP digital signal processor
- PLD programmable logic device
- PLD Programmable Logic Device
- complex programmable logic device Logic device (CPLD, Complex Programmable Logic Device), field programmable gate array (FPGA, Field-Programmable Gate Array), general-purpose processor, controller, microcontroller (MCU, Micro Controller Unit), microprocessor (Microprocessor) , Or implemented by other electronic components, configured to perform the foregoing method.
- CPLD Complex Programmable Logic Device
- FPGA field programmable gate array
- MCU Microcontroller
- Microprocessor Microprocessor
- the memory (memory 52) of the embodiment of the present application may be a volatile memory or a non-volatile memory, and may also include both volatile and non-volatile memory.
- the non-volatile memory can be read-only memory (ROM, Read Only Memory), programmable read-only memory (PROM, Programmable Read-Only Memory), and erasable programmable read-only memory (EPROM, Erasable Programmable Read- Only Memory, Electrically Erasable Programmable Read-Only Memory (EEPROM), Ferromagnetic Random Access Memory (FRAM), Flash Memory, Magnetic Surface Memory , CD-ROM, or CD-ROM (Compact Disc Read-Only Memory); magnetic surface memory can be magnetic disk storage or tape storage.
- the volatile memory may be a random access memory (RAM, Random Access Memory), which is used as an external cache.
- RAM random access memory
- SRAM static random access memory
- SSRAM synchronous static random access memory
- Synchronous Static Random Access Memory Synchronous Static Random Access Memory
- DRAM Dynamic Random Access Memory
- SDRAM Synchronous Dynamic Random Access Memory
- DDRSDRAM Double Data Rate Synchronous Dynamic Random Access Memory
- ESDRAM Enhanced Synchronous Dynamic Random Access Memory
- SLDRAM synchronous connection dynamic random access memory
- DRRAM Direct Rambus Random Access Memory
- the memories described in the embodiments of the present application are intended to include, but are not limited to, these and any other suitable types of memories.
- the embodiment of the present application also provides a storage medium, that is, a computer storage medium, specifically a computer-readable storage medium, such as a memory 52 storing a computer program, which can be exchanged by the Ethernet
- the processor 51 of the chip 50 executes to complete the steps described in the foregoing method.
- the computer-readable storage medium may be a memory such as FRAM, ROM, PROM, EPROM, EEPROM, Flash Memory, magnetic surface memory, optical disk, or CD-ROM.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Claims (10)
- 一种信息处理方法,包括:以太网交换芯片的主知识产权IP核心接收信息处理请求;所述主IP核心为所述以太网交换芯片包含的至少两个IP核心中的一个IP核心;所述主IP核心基于接收的信息处理请求执行以下操作之一:根据所述信息处理请求对应的第一信息更新自身的全局信息表,并发送所述第一信息给所述以太网交换芯片的每个从IP核心,以供所述每个从IP核心根据所述第一信息更新自身的全局信息表;接收的信息处理请求来自以下之一:设置有所述以太网交换芯片的交换机的处理器;所述以太网交换芯片的从IP核心;根据所述信息处理请求对应的第二信息更新自身的专项信息表,或者,发送与所述信息处理请求对应的第三信息给相应从IP核心,以供所述相应从IP核心根据所述第三信息更新自身的专项信息表;接收的信息处理请求来自所述处理器或所述以太网交换芯片的从IP核心;基于所述信息处理请求,从自身的全局信息表或专项信息表中获取所述信息处理请求对应的第四信息发送给所述处理器,或者,从相应从IP核心获取第五信息并发送给所述处理器;所述第五信息是所述相应从IP核心自身的专项信息表中与所述信息处理请求对应的信息;其中,所述从IP核心为所述至少两个IP核心中除所述主IP核心外的其它IP核心;所述全局信息表用于存储与所述以太网交换芯片的所有IP核心相关联的信息;所述专项信息表用于存储与所述以太网交换芯片的一个IP核心相关联的信息。
- 根据权利要求1所述的方法,其中,所述方法还包括:所述主IP核心根据第一预设策略判断所述信息处理请求关联的IP核心,得到第一判断结果;根据所述第一判断结果,基于接收的信息处理请求执行相应操作。
- 根据权利要求2所述的方法,其中,所述信息处理请求为从IP核心发送的报文信息学习请求;所述方法还包括:所述主IP核心响应接收的报文信息学习请求,执行所述报文信息学习请求对应的自学习操作,得到报文信息学习结果;在所述第一判断结果表征所述报文信息学习请求关联所述以太网交换芯片的所有IP核心的情况下,所述主IP核心将所述报文信息学习结果确定为所述第一信息,根据所述第一信息更新自身的全局信息表,并发送所述第一信息给所述以太网交换芯片的每个从IP核心,以供所述每个从IP核心根据所述第一信息更新自身的全局信息表;在所述第一判断结果表征所述报文信息学习请求关联所述以太网交 换芯片的一个从IP核心的情况下,所述主IP核心将所述报文信息学习结果确定为所述第二信息,并发送所述第二信息给相应从IP核心,以供所述相应从IP核心根据所述第二信息更新自身的专项信息表。
- 根据权利要求3所述的方法,其中,当满足以下条件之一时,从IP核心发送所述报文信息学习请求给所述主IP核心:从IP核心未在自身的全局信息表或专项信息表中查询到与接收的报文相对应的报文处理策略;从IP核心根据在自身的全局信息表或专项信息表中查询到的与接收的报文相对应的报文处理策略对所述接收的报文进行相应处理时处理失败。
- 根据权利要求2所述的方法,其中,所述信息处理请求为所述处理器发送的信息更新请求;所述方法还包括:解析所述信息更新请求,得到解析结果;在所述第一判断结果表征所述信息更新请求关联所述以太网交换芯片的所有IP核心的情况下,所述主IP核心将所述解析结果确定为所述第一信息,根据所述第一信息更新自身的全局信息表,并发送所述第一信息给所述以太网交换芯片的每个从IP核心,以供所述每个从IP核心根据所述第一信息更新自身的全局信息表;在所述第一判断结果表征所述信息更新请求关联所述以太网交换芯片的所述主IP核心的情况下,所述主IP核心将所述解析结果确定为所述第二信息,并根据所述第二信息更新自身的专项信息表;在所述第一判断结果表征所述信息更新请求关联所述以太网交换芯片的一个从IP核心的情况下,所述主IP核心将所述解析结果确定为所述第三信息,并发送所述第三信息给相应从IP核心,以供所述相应从IP核心根据所述第二信息更新自身的专项信息表。
- 根据权利要求2所述的方法,其中,所述信息处理请求为所述处理器发送的信息读取请求;所述方法还包括:在所述第一判断结果表征所述信息读取请求关联所述以太网交换芯片的所有IP核心的情况下,所述主IP核心基于所述信息读取请求,将从自身的全局信息表中获取的所述信息读取请求对应的信息确定为所述第四信息,并将所述第四信息发送给所述处理器;在所述第一判断结果表征所述信息读取请求关联所述以太网交换芯片的所述主IP核心的情况下,所述主IP核心基于所述信息读取请求,将从自身的专项信息表中获取的所述信息读取请求对应的信息确定为所述第四信息,并将所述第四信息发送给所述处理器;在所述第一判断结果表征所述信息读取请求关联所述以太网交换芯片的一个从IP核心的情况下,所述主IP核心将所述信息读取请求发送给相应从IP核心,以获取所述相应从IP核心响应所述信息读取请求所返回 的第五信息并发送给所述处理器。
- 根据权利要求1所述的方法,其中,所述方法还包括:所述主IP核心通过自身设置的第一接口以及各从IP核心上设置的第二接口与各从IP核心进行信息交互。
- 一种以太网交换芯片,所述以太网交换芯片包含至少两个IP核心;所述至少两个IP核心中的一个IP核心为主IP核心;所述至少两个IP核心中除所述主IP核心外的其它IP核心为从IP核心;其中,所述主IP核心,配置为:接收信息处理请求;基于接收的信息处理请求执行以下操作之一:根据所述信息处理请求对应的第一信息更新自身的全局信息表;并发送所述第一信息给所述以太网交换芯片的每个从IP核心,以供所述每个从IP核心根据所述第一信息更新自身的全局信息表;接收的信息处理请求来自以下之一:设置有所述以太网交换芯片的交换机的处理器;所述以太网交换芯片的从IP核心;根据所述信息处理请求对应的第二信息更新自身的专项信息表,或者,发送与所述信息处理请求对应的第三信息给相应从IP核心,以供所述相应从IP核心根据所述第三信息更新自身的专项信息表;接收的信息处理请求来自所述处理器或所述以太网交换芯片的从IP核心;基于所述信息处理请求,从自身的全局信息表或专项信息表中获取所述信息处理请求对应的第四信息发送给所述处理器,或者,从相应从IP核心获取第五信息并发送给所述处理器;所述第五信息是所述相应从IP核心自身的专项信息表中与所述信息处理请求对应的信息;其中,所述全局信息表用于存储与所述以太网交换芯片的所有IP核心相关联的信息;所述专项信息表用于存储与所述以太网交换芯片的一个IP核心相关联的信息。
- 一种以太网交换芯片,包括:处理器和配置为存储能够在处理器上运行的计算机程序的存储器;其中,所述处理器配置为运行所述计算机程序时,执行权利要求1至7任一项所述方法的步骤。
- 一种存储介质,所述介质存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/792,720 US20230050185A1 (en) | 2020-01-22 | 2020-09-07 | Information Processing Method, Ethernet Switching Chip and Storage Medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010075094.4A CN111343107B (zh) | 2020-01-22 | 2020-01-22 | 信息处理方法、以太网交换芯片以及存储介质 |
CN202010075094.4 | 2020-01-22 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2021147331A1 true WO2021147331A1 (zh) | 2021-07-29 |
Family
ID=71186781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2020/113727 WO2021147331A1 (zh) | 2020-01-22 | 2020-09-07 | 信息处理方法、以太网交换芯片以及存储介质 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230050185A1 (zh) |
CN (1) | CN111343107B (zh) |
WO (1) | WO2021147331A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111343107B (zh) * | 2020-01-22 | 2022-03-04 | 苏州盛科通信股份有限公司 | 信息处理方法、以太网交换芯片以及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101193021A (zh) * | 2006-11-27 | 2008-06-04 | 华为技术有限公司 | 数字用户线路接入系统、方法、用户板及业务处理单元 |
CN101964753A (zh) * | 2010-10-29 | 2011-02-02 | 烽火通信科技股份有限公司 | 基于单个核心交换芯片的小容量ptn设备及其业务实现方法 |
CN102611519A (zh) * | 2010-11-25 | 2012-07-25 | 上海贝尔股份有限公司 | 一种对无源光网络进行链路保护的方法和装置 |
CN107819705A (zh) * | 2017-11-28 | 2018-03-20 | 济南浪潮高新科技投资发展有限公司 | 一种基于Microblaze核的数据交换的实现方法 |
US20180124011A1 (en) * | 2015-04-17 | 2018-05-03 | Hangzhou H3C Technologies Co., Ltd. | Generating System Port Identity |
CN111343107A (zh) * | 2020-01-22 | 2020-06-26 | 盛科网络(苏州)有限公司 | 信息处理方法、以太网交换芯片以及存储介质 |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7584327B2 (en) * | 2005-12-30 | 2009-09-01 | Intel Corporation | Method and system for proximity caching in a multiple-core system |
JP5146454B2 (ja) * | 2007-08-22 | 2013-02-20 | 日本電気株式会社 | 情報処理装置及び情報処理方法 |
US8917738B2 (en) * | 2009-04-27 | 2014-12-23 | Lsi Corporation | Multicasting traffic manager in a network communications processor architecture |
CN101651627B (zh) * | 2009-09-23 | 2013-01-09 | 杭州华三通信技术有限公司 | 一种媒体访问控制mac地址表项学习方法和装置 |
CN101980170B (zh) * | 2010-10-20 | 2012-09-05 | 北京星网锐捷网络技术有限公司 | 一种微内核系统中软件模块的通信方法、系统及装置 |
US8724496B2 (en) * | 2011-11-30 | 2014-05-13 | Broadcom Corporation | System and method for integrating line-rate application recognition in a switch ASIC |
CN104102535B (zh) * | 2013-04-01 | 2018-10-02 | 华为技术有限公司 | 进程迁移方法和可迁移操作系统 |
US9459903B2 (en) * | 2014-09-24 | 2016-10-04 | Intel Corporation | Techniques for routing service chain flow packets between virtual machines |
CN108134855B (zh) * | 2017-12-18 | 2021-03-09 | 东软集团股份有限公司 | Arp表管理方法、处理器核心、存储介质、电子设备 |
CN108768892A (zh) * | 2018-03-26 | 2018-11-06 | 西安电子科技大学 | 一种基于p4的可编程数据平面交换原型的设计与实现 |
CN109257190B (zh) * | 2018-08-03 | 2021-04-20 | 锐捷网络股份有限公司 | 一种基于sdn的组播处理方法、控制器、交换机及系统 |
-
2020
- 2020-01-22 CN CN202010075094.4A patent/CN111343107B/zh active Active
- 2020-09-07 WO PCT/CN2020/113727 patent/WO2021147331A1/zh active Application Filing
- 2020-09-07 US US17/792,720 patent/US20230050185A1/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101193021A (zh) * | 2006-11-27 | 2008-06-04 | 华为技术有限公司 | 数字用户线路接入系统、方法、用户板及业务处理单元 |
CN101964753A (zh) * | 2010-10-29 | 2011-02-02 | 烽火通信科技股份有限公司 | 基于单个核心交换芯片的小容量ptn设备及其业务实现方法 |
CN102611519A (zh) * | 2010-11-25 | 2012-07-25 | 上海贝尔股份有限公司 | 一种对无源光网络进行链路保护的方法和装置 |
US20180124011A1 (en) * | 2015-04-17 | 2018-05-03 | Hangzhou H3C Technologies Co., Ltd. | Generating System Port Identity |
CN107819705A (zh) * | 2017-11-28 | 2018-03-20 | 济南浪潮高新科技投资发展有限公司 | 一种基于Microblaze核的数据交换的实现方法 |
CN111343107A (zh) * | 2020-01-22 | 2020-06-26 | 盛科网络(苏州)有限公司 | 信息处理方法、以太网交换芯片以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN111343107B (zh) | 2022-03-04 |
CN111343107A (zh) | 2020-06-26 |
US20230050185A1 (en) | 2023-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2021147332A1 (zh) | 信息处理方法、以太网交换芯片以及存储介质 | |
EP3916566A1 (en) | System and method for managing memory resources | |
US9025495B1 (en) | Flexible routing engine for a PCI express switch and method of use | |
US11182197B2 (en) | Guest-initiated announcement of virtual machine migration | |
US10282293B2 (en) | Method, switch, and multiprocessor system using computations and local memory operations | |
WO2022001417A1 (zh) | 一种数据传输方法、处理器系统及内存访问系统 | |
US20220206969A1 (en) | Data forwarding chip and server | |
WO2018041074A1 (zh) | 一种内存设备的访问方法、装置和系统 | |
WO2020134144A1 (zh) | 数据或报文转发的方法、节点和系统 | |
CN111464447B (zh) | 一种超带宽多核心以太网交换芯片转发表同步的方法及装置 | |
TW201945946A (zh) | 驅動器至驅動器儲存系統、儲存驅動器和儲存資料的方法 | |
WO2021147331A1 (zh) | 信息处理方法、以太网交换芯片以及存储介质 | |
US11714755B2 (en) | System and method for scalable hardware-coherent memory nodes | |
CN112052104A (zh) | 基于多机房实现的消息队列的管理方法及电子设备 | |
WO2015035891A1 (zh) | 补丁方法、设备及系统 | |
US20080295120A1 (en) | Asynchronous remote procedure calling method and computer product in shared-memory multiprocessor | |
WO2022141322A1 (zh) | 一种片上系统及相关方法 | |
WO2022061763A1 (zh) | 一种数据存储方法及装置 | |
WO2023216603A1 (zh) | 一种内存共享方法以及装置 | |
US20230236727A1 (en) | Circuit, Chip, and Electronic Device | |
EP4322001A1 (en) | Memory expansion method and related device | |
CN117319328A (zh) | 一种基于riscv异构多核soc的报文处理系统 | |
CN115996370A (zh) | 数据传输方法、装置、设备、存储介质及程序 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20914792 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20914792 Country of ref document: EP Kind code of ref document: A1 |
|
32PN | Ep: public notification in the ep bulletin as address of the adressee cannot be established |
Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205A DATED 20/01/2023) |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20914792 Country of ref document: EP Kind code of ref document: A1 |