IP Library Granted Patent US 12701079
Granted Patent B2
US 12701079 · App. 18/310,574 · Granted Aug 4, 2026

Networking processor and network device

Inventor: Wan Lam (Shenzhen, CN)
Assignee: HUAWEI TECHNOLOGIES CO., LTD.
H04L45/74H04L49/90
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12701079
App. No.
18/310,574
Granted
Aug 4, 2026
Kind
B2
Abstract

A networking processor is disclosed. The networking processor comprises a plurality of ports, a plurality of buses and a plurality of switch units. The switch unit is bound to at least one of the plurality of ports, and is configured to receive data from outside of the networking processor and send the data to the outside of the networking processor through the bound port. Each of the plurality of buses is bound to at least two of the plurality of switch units, each of the plurality of switch units is bound to at least one of the plurality of buses, and the switch unit forwards the data between different switch units through a network formed by the plurality of buses. In this way, latency of data switching is reduced.

Claims (47)

1 . A networking processor, comprising a plurality of ports, a plurality of buses and a plurality of switch units, wherein

each of the plurality of switch units is bound to at least one of the plurality of ports, and is configured to receive data from outside of the networking processor and send the data to the outside of the networking processor through a bound port; and

each of the plurality of buses is bound to at least two of the plurality of switch units, each of the plurality of switch units is bound to at least one of the plurality of buses, and the switch unit forwards the data between different switch units in the plurality of switch units through a network formed by the plurality of buses,

wherein each of the plurality of switch units comprises a switch, an access controller, and a packet processor, wherein

the access controller is configured to obtain a data packet carrying the data from the outside of the networking processor and send the data packet carrying the data to the outside of the networking processor through a port bound to the switch unit to which the access controller belongs;

the packet processor is configured to: obtain the data packet from the access controller; obtain a destination address from the data packet; determine a send port in the plurality of ports based on the destination address; determine a destination unit based on the send port; and determine, based on the destination unit, path information for forwarding the data to the destination unit;

when the switch obtains the path information and the data from the packet processor, the switch is configured to send the data and the path information to a transferring unit based on the path information through at least one of the plurality of buses, so that the transferring unit continues to forward the data and the path information based on the path information before the data is forwarded to the destination unit; and

when the switch obtains, from at least one of the plurality of buses, the data and the path information that are forwarded by another switch unit or the transferring unit, the switch is configured to continue to forward the data and the path information based on the path information before the data is forwarded to the destination unit, wherein

the path information indicates information about the transferring unit through which the data is forwarded to the destination unit, and the transferring unit is a switch unit that is in the plurality of switch units and that is configured to forward the data.

2 . The networking processor according to claim 1 , wherein the switch unit is further configured to share packet processors in different switch units through the network formed by the plurality of buses.

3 . The networking processor according to claim 1 , wherein the switch unit further comprises a traffic manager and/or a first buffer, wherein

the traffic manager is configured to write the data into a corresponding queue based on an attribute of the data, and schedule the data in the corresponding queue;

the first buffer is configured to buffer the data; and

the switch is further configured to forward the data based on scheduling information of the traffic manager for the data.

4 . The networking processor according to claim 3 , wherein the switch unit is further configured to share first buffers in different switch units through the network formed by the plurality of buses.

5 . The networking processor according to claim 3 , wherein the traffic manager in the switch unit is further configured to obtain, through the network formed by the plurality of buses, a data transmission scheduling request sent by another switch unit, and generate scheduling response information, so that the another switch unit schedules the data based on the scheduling response information.

6 . The networking processor according to claim 1 , further comprising a second buffer and/or a forwarding table, wherein

both the second buffer and the forwarding table are connected to the plurality of switch units through the plurality of buses;

the second buffer is configured to buffer data obtained by the plurality of switch units; and

the forwarding table indicates port information used during communication between networking processors.

7 . A network device, comprising at least one networking processor interconnected through one or more buses, each of the at least one networking processor comprising a plurality of ports, a plurality of buses and a plurality of switch units, wherein

each of the plurality of switch units is bound to at least one of the plurality of ports, and is configured to receive data from outside of the networking processor and send the data to the outside of the networking processor through a bound port; and

each of the plurality of buses is bound to at least two of the plurality of switch units, each of the plurality of switch units is bound to at least one of the plurality of buses, and the switch unit forwards the data between different switch units in the plurality of switch units through a network formed by the plurality of buses,

wherein each of the plurality of switch units comprises a switch, an access controller, and a packet processor, wherein

the access controller is configured to obtain a data packet carrying the data from the outside of the networking processor and send the data packet carrying the data to the outside of the networking processor through a port bound to the switch unit to which the access controller belongs;

the packet processor is configured to: obtain the data packet from the access controller; obtain a destination address from the data packet; determine a send port in the plurality of ports based on the destination address; determine a destination unit based on the send port; and determine, based on the destination unit, path information for forwarding the data to the destination unit;

when the switch obtains the path information and the data from the packet processor, the switch is configured to send the data and the path information to a transferring unit based on the path information through at least one of the plurality of buses, so that the transferring unit continues to forward the data and the path information based on the path information before the data is forwarded to the destination unit; and

when the switch obtains, from at least one of the plurality of bases, the data and the path information that are forwarded by another switch unit or the transferring unit, the switch is configured to continue to forward the data and the path information based on the path information before the data is forwarded to the destination unit, wherein

the path information indicates information about the transferring unit through which the data is forwarded to the destination unit, and the transferring unit is a switch unit that is in the plurality of switch units and that is configured to forward the data.

8 . The network device according to claim 7 , wherein the switch unit is further configured to share packet processors in different switch units through the network formed by the plurality of buses.

9 . The network device according to claim 7 , wherein the switch unit further comprises a traffic manager and/or a first buffer, wherein

the traffic manager is configured to write the data into a corresponding queue based on an attribute of the data, and schedule the data in the corresponding queue;

the first buffer is configured to buffer the data; and

the switch is further configured to forward the data based on scheduling information of the traffic manager for the data.

10 . The network device according to claim 9 , wherein the switch unit is further configured to share first buffers in different switch units through the network formed by the plurality of buses.

11 . The network device according to claim 9 , wherein the traffic manager in the switch unit is further configured to obtain, through the network formed by the plurality of buses, a data transmission scheduling request sent by another switch unit, and generate scheduling response information, so that the another switch unit schedules the data based on the scheduling response information.

12 . The network device according to claim 7 , further comprising a second buffer and/or a forwarding table, wherein

both the second buffer and the forwarding table are connected to the plurality of switch units through the plurality of buses;

the second buffer is configured to buffer data obtained by the plurality of switch units; and

the forwarding table indicates port information used during communication between networking processors.

13 . A networking processor, comprising a plurality of ports, a plurality of buses and a plurality of switch units, wherein

each of the plurality of switch units is bound to at least one of the plurality of ports, and is configured to receive data from outside of the networking processor and send the data to the outside of the networking processor through a bound port; and

each of the plurality of buses is bound to at least two of the plurality of switch units, each of the plurality of switch units is bound to at least one of the plurality of buses, and the switch unit forwards the data between different switch units in the plurality of switch units through a network formed by the plurality of buses, wherein each of the plurality of switch units comprises a switch and an access controller, wherein

the access controller is configured to obtain a data packet carrying the data from the outside of the networking processor and send the data packet carrying the data to the outside of the networking processor through a port bound to the switch unit to which the access controller belongs;

when the switch obtains the data packet from the access controller, the switch is configured to: obtain a destination address from the data packet; determine a send port based on the destination address; determine a destination unit based on the send port; determine, based on the destination unit, path information for forwarding the data to the destination unit; and send the data and the path information to a transferring unit based on the path information through at least one of the plurality of buses, so that the transferring unit continues to forward the data and the path information based on the path information before the data is forwarded to the destination unit; and

when the switch obtains, from at least one of the plurality of buses, the data and the path information that are forwarded by another switch unit or the transferring unit, the switch is configured to continue to forward the data and the path information based on the path information before the data is forwarded to the destination unit, wherein

the path information indicates information about the transferring unit through which the data is forwarded to the destination unit, and the transferring unit is a switch unit that is in the plurality of switch units and that is configured to forward the data.