CN101351995B - Managing processing utilization in a network node - Google Patents
Managing processing utilization in a network node Download PDFInfo
- Publication number
- CN101351995B CN101351995B CN2005800064873A CN200580006487A CN101351995B CN 101351995 B CN101351995 B CN 101351995B CN 2005800064873 A CN2005800064873 A CN 2005800064873A CN 200580006487 A CN200580006487 A CN 200580006487A CN 101351995 B CN101351995 B CN 101351995B
- Authority
- CN
- China
- Prior art keywords
- grouping
- cpu
- study
- hardware based
- stream
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 claims abstract description 22
- 230000008878 coupling Effects 0.000 claims 2
- 238000010168 coupling process Methods 0.000 claims 2
- 238000005859 coupling reaction Methods 0.000 claims 2
- 238000001914 filtration Methods 0.000 abstract description 15
- 230000006870 function Effects 0.000 description 11
- 238000005516 engineering process Methods 0.000 description 8
- 230000015654 memory Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000014509 gene expression Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/54—Organization of routing tables
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2483—Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/25—Routing or path finding in a switch fabric
- H04L49/253—Routing or path finding in a switch fabric using establishment or release of connections between ports
- H04L49/254—Centralised controller, i.e. arbitration or scheduling
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/30—Peripheral units, e.g. input or output ports
- H04L49/3009—Header conversion, routing tables or routing tags
Abstract
A technique for managing the utilization of processing resources involves filtering packets that are sent to a CPU for learning before allowing the packets to reach CPU. The filtering involves determining if related packets have already been allowed to reach the CPU for learning and using the knowledge about related packets to determine if a current packet should be allowed to reach the CPU. In one embodiment, the processing resources of the CPU are conserved by allowing only one packet per flow to reach the CPU for learning. The one packet is used by the CPU generate the necessary forwarding information and to initiate programming of the hardware-based forwarding table so that subsequent packets of the same flow can be forwarded directly from the hardware-based forwarding engine.
Description
The cross reference of related application
The application enjoys the right of the interim U.S. Patent Application Serial 60/536,469 of application on January 14th, 2004.
Technical field
The present invention relates to packet-based communication network, relate in particular to the technology that is used for managing such as the utilization (utilization) of the processing resource of network nodes such as switch or router.
Background technology
Packet-based network node (for example switch and router) produces the database of forwarding information, and forwarding information is used to transmit the packet traffic (traffic) of arrival.Forwarding information is by being produced by the performed agreement based on software of central processing unit (CPU).For the speed and the throughput that improve switch and router, forwarding information often is programmed to hardware based transmitting.Hardware based transmitting can be provided the forwarding decision by quick search, and need not to use the resource of CPU.When not having the forwarding information of the stream of packets that receives in hardware based the transmitting, the grouping in the stream is sent to CPU and handles, till learning forwarding information and will transmit clauses and subclauses to be programmed for hardware based transmitting.The processing finite capacity of the CPU of network node, and to send to the grouping of CPU more more handles that to receive the limited processing capacity that grouping consumed just many more.If the load of CPU is excessive, then the response time of CPU will slowly and may be lost some grouping.
Many state-of-the-art switches and router have utilized the distributed architecture based on framework (chassis), and the Line cards of wherein separating is exclusively used in different functions.For example, the control module Line cards is exclusively used in central management and control operation, port interface linecards is exclusively used in and sends and receive network traffic and carry out hardware based forwarding, and the data path that provides between the different linecard is provided exchange board structure Line cards (switchfabric linecard).In distributed architecture, control module comprises host CPU, and this CPU is responsible for producing and managing the forwarding information of whole network node, and is responsible for hardware based the transmitting of port interface programmed.A series of responsibilities widely of control module make the limited processing capacity of host CPU become of great value resource.
In view of the above, the technology that needs the utilization of the processing resource in the packet-based network node of a kind of effective management.
Summary of the invention
A kind of technology of utilization of management processing resource comprises: allowing to send to before CPU arrives CPU with the grouping that is used to learn, earlier described grouping is filtered.Filtration comprises: determine whether to allow associated packets to arrive CPU being used for study, and utilize the knowledge about associated packets to determine whether to allow current group to arrive this CPU.In one embodiment, by only allowing grouping of each stream to arrive CPU saves (conserve) CPU in the mode that is used to learn processing resource.CPU utilizes this grouping to produce necessary forwarding information and starts hardware based programming of transmitting, and makes and can directly transmit from hardware based forwarding engine with the follow-up grouping in first-class.Since only allow grouping of each stream to arrive CPU to be used for study, therefore, can be because of the processing resource of wasting CPU at a plurality of identical forwarding informations that study in groups of same stream.
Other aspects of the present invention and advantage can be seen from the detailed description that following combination is done as the accompanying drawing shown in the example the principles of the invention.
Description of drawings
Fig. 1 has described a network node, and it comprises CPU, hardware basedly transmits and learn filter.
Fig. 2 has described a kind of execution mode of the study filter among Fig. 1.
Fig. 3 has described a kind of process chart of technology of the utilization that is used for the management processing resource.
Fig. 4 has described a kind of execution mode of the network node with distributed architecture, and this architecture is used for the grouping that is used to learn that is sent is filtered.
Fig. 5 has described the another kind of execution mode of the network node with distributed architecture.
Fig. 6 has described a kind of process chart of method of the processing utilization of resources that is used for CPU management.
In whole description, similarly label may be used to identify similar key element.
Embodiment
Fig. 1 has described a network node 100, and it comprises central processing unit (CPU) 102, hardware based forwarding engine 104 and study filter 106.This network node is by discrete segments (the being commonly referred to datagram) amount of managing business.In one embodiment, network node is Ethernet switch/router, it utilizes the 2nd layer, the 3rd layer and/or layer 4 header information to come traffic carrying capacity in the transmission network node, and wherein " layer " is defined in OSI(Open Systems Interconnection) by International Organization for Standardization.Network node can comprise the port interface of supporting other procotols (as ATM(Asynchronous Transfer Mode), Synchronous Optical Network (SONET) and frame relay).Although described the switch/router based on Ethernet, yet disclosed technology also can be applicable to utilize the network node of other agreement conveys traffic.
The CPU 102 operation systems of network node 100 also support the software protocol that the transmission network traffic carrying capacity is required.CPU can be presented as multifunctional processor and/or application specific processor.The example of processor comprises the PowerPC of IBM
TMThe x86 series processors of series processors and Intel.The example of the operating system that CPU can move comprises NetBSD, Linux and vxWORKS.Although not shown, CPU can also be supported by other hardware (for example memory and application-specific integrated circuit (ASIC) (ASIC)).
In the middle of the agreement that CPU 102 is moved, have and the relevant agreement of generation forwarding information.These agreements (being called the study agreement 110 based on software here) comprise the 2nd layer of study agreement and the 3rd layer of study agreement.In the execution mode of Fig. 1, the l2 protocol that is used for reciprocal exchange of business amount is an Ethernet, and the 2nd layer of study comprises that to make address, destination medium access control (MAC) related with the output port of network node.Receive entry port (port of entry) and the source MAC that divides into groups by study, make the destination MAC Address related with the output port of network node.As well known in the art, the correct output port of aim of learning ground MAC Address in the following way: make grouping pour into all relevant output ports, check then to receive the corresponding port that divides into groups with the destination of study wanted ground MAC Address.The 2nd layer of study can also comprise make Virtual Local Area Network identifier (ID) and destination MAC Address and/output port is related.
In the execution mode of Fig. 1, the layer-3 protocol that is used for route traffic is based on Internet Protocol (IP) (comprising IP and IPX), and the 3rd layer of study comprises that to make IP address, destination related with next-hop ip address.The example of the public layer-3 protocol that CPU 102 is moved comprises that ospf (OSPF) agreement, Border Gateway Protocol (BGP), intergrade system are to intergrade system (ISIS) agreement, multiprotocol label switching (mpls).
Traffic carrying capacity is being transmitted in the group in associated packets between the packet-based network node usually.The group of associated packets usually is called " stream ".The grouping of stream has some common information.For example, public the 2nd layer of information can comprise the combination in any of destination MAC Address, source MAC, VLAN ID and/or entry port.Public the 3rd layer of information can comprise the combination in any of IP address, destination, source IP address, type of service (TOS), destination port numbers and/or source port number.
Hardware based forwarding engine 104 among Fig. 1 is responsible for the traffic carrying capacity that arrives is made hardware based forwarding decision.Hardware based forwarding engine comprises with transmitting the hardware based of clauses and subclauses programming transmits 112.Transmitting clauses and subclauses makes the grouping information of arrival related with output information.As known in the art, hardware basedly transmit common usefulness and can be implemented by the random-access memory (ram) of fast access and search and/or Content Addressable Memory (CAM).If each hardware based transmitting comprises and the corresponding forwarding information of grouping that arrives, then can only carry out hardware based forwarding decision to the grouping that arrives.In the operation, hardware based forwarding engine will and be transmitted clauses and subclauses from the receive header information of dividing into groups and compare to seek table entry match.If hardware based forwarding engine can not be transmitted decision to the grouping that arrives, then hardware based transmitting need be programmed with the transmit clauses and subclauses corresponding with the grouping that arrives.The process that obtains forwarding information is called study at this.In some embodiments, hardware based transmitting can comprise and the corresponding forwarding information of grouping that arrives, although forwarding information is inactive (for example can't be used to transmit decision) for a certain reason.When the forwarding information inertia, can not transmit decision, therefore associated packets is sent to CPU to be used for study.
Because traffic carrying capacity generally transmits with stream of packets, therefore, if hardware based forwarding engine 104 can not be transmitted decision to the grouping that arrives, all groupings that to flow so all send to the CPU 102 that is used to transmit, up to CPU forwarding information is delivered to hardware based forwarding engine, and programmes to transmitting with necessary forwarding information.The grouping that transmission CPU handles is many more, and the time-delay of processing just may be long more.If it is long to handle time-delay, may lose some groupings so.Time-delay of handling and the grouping of losing have adverse effect to the performance of network node.
According to one embodiment of the present invention,, earlier described grouping is filtered allowing to send to before CPU arrives CPU with the grouping that is used to learn.Filtration comprises: determine whether to allow associated packets to arrive CPU, and utilize the knowledge about associated packets to determine whether to allow current group to arrive this CPU.In one embodiment, by only allowing grouping of each stream to arrive CPU saves CPU in the mode that is used to learn resource.CPU utilizes this grouping to produce necessary forwarding information and starts hardware based 112 the programming of transmitting, and makes and can directly transmit from hardware based forwarding engine 104 with the follow-up grouping in first-class.Owing to only allow grouping of each stream to arrive CPU to be used for study, therefore, can be because of at the processing resource of wasting CPU with first-class a plurality of same forwarding informations that study in groups.
In the execution mode of Fig. 1, carry out sending to the filtration of CPU 102 with the grouping that is used to learn by study filter 106.The study filter receives and sends to CPU all groupings to be used to learn from hardware based forwarding engine 104, and which determines to allow receive divide into groups to arrive this CPU.As filter result, only allow a subclass of the original grouping that sends to arrive CPU.The study filter can adopt multiple technologies which determines to allow receive grouping and arrive this CPU.Some examples of study filter and filtering technique are as described below.In the execution mode of Fig. 1, the study filter is the asic chip in a kind of data path between CPU and hardware based forwarding engine.
Fig. 2 has described a kind of execution mode of the study filter 106 among Fig. 1.The study filter comprises hasher 116, each stream (per-flow) state machine 118 and o controller 120.The study filter receives and sends to the grouping of CPU 102 to be used to learn by hardware based forwarding engine 104.Hasher obtains header information from receive grouping, and makes some header information hash to produce the hashed value of the affiliated stream of identification grouping.For example, the 2nd layer of grouping carried out hash by the combination of destination MAC Address, source MAC, VLAN ID and/or entry port, and the 3rd layer of grouping carried out hash by IP address, destination, source IP address, TOS, destination port numbers and source port number.Although described some example of Hash fields, yet other fields or field combination also are possible.The hashed value that hasher produced is provided for each stream mode machine.Each stream mode organizational security is held the state table 122 of the state of each stream of discerning of indication, and wherein each stream is all discerned by hashed value.The current state of stream is provided for o controller.O controller determines whether to allow grouping to arrive CPU according to current state.As the filtering result of being carried out, only allow a subclass of the study grouping that filter received to arrive CPU.
In the execution mode of Fig. 2, each stream mode machine 118 keeps two states of each stream, and wherein these two states are identified as state 1 (S1) and state 2 (S2).State 1 expression does not allow the grouping in the corresponding stream to arrive CPU 102, and state 2 expressions have allowed the grouping in the corresponding stream to arrive CPU.In the execution mode of Fig. 2, the state of stream is changed to state 1 at first, and allows grouping to arrive CPU when state is state 1.In case allow grouping to arrive CPU, state just becomes state 2.When the state of stream was changed to state 2, the more groupings that do not allow to flow automatically arrived CPU.Can the state that flow be reset to state 1 according to pre-established algorithm, to guarantee the forwarding information of regular update stream.For example, transmitting with corresponding table clause programming back or after a certain set time section, state machine can be configured to reset to state 1.The result of the study filter logic of Fig. 2 is only to allow grouping of each stream to arrive CPU to handle.Can reduce the load of CPU greatly like this and not forbid learning process.Although described example of study filter and filter logic, yet, can also reduce allowing to arrive the number of CPU with other filtering techniques with the grouping that is used to learn.
Fig. 3 has described a kind of process chart of technology of utilization of the processing resource that is used for CPU management.In piece 200, receive grouping at network node.At determination point 202, need to determine whether study.If do not need to determine study, in piece 204, hardware based forwarding engine utilizes the forwarding information that exists in its hardware based transmitting to transmit this grouping so.If need to determine study, in piece 206, discern the affiliated stream of this grouping so.For example, discern stream by some the field hash that makes packet header.After stream is identified,, determine whether sent to CPU to be used for study from the grouping of discern stream at determination point 208.For example, consult state machine and determine whether sent to CPU to be used for study from the grouping of discern stream.If the grouping from discern stream has sent to CPU to be used for study, so, current group is not sent to CPU to be used for study (piece 210).If the grouping from discern stream does not send to CPU as yet to be used for study, so, current group is sent to CPU to be used for study (piece 212).At each grouping that receives at network node, repeat the handling process of Fig. 3.
Fig. 4 has described a kind of execution mode of the network node 130 with distributed architecture, and this architecture is used for the grouping that is used to learn that is sent is filtered.The distributed architecture of network node comprises control module Line cards 132, exchange board structure Line cards 134 and two port interface linecards 136 (port interface A and B).In the execution mode of Fig. 4, single study filter 106 is positioned at control module, is used for the grouping that receives from all of the port interface is filtered.Study filter described in Fig. 4 is carried out with above with reference to the identical filtering function of the described study filter of Fig. 1 and 2.
Hardware based forwarding engine 104 described in Fig. 4 carry out with reference to the described hardware based forwarding engine identical functions of Fig. 1.A task performed by hardware based forwarding engine is need to determine whether the grouping of study arrival so that can directly transmit decision by hardware based forwarding engine.Need the grouping of study to send to control module 132 by exchange board structure 134.
In operation, the hardware based forwarding engine 104 of port interface 136 determines whether the grouping that receives needs study.If the grouping that receives needs study, so these groupings are sent to control module 132 by exchange board structure 134.In control module, these groupings are at first handled by study filter 106.The study filter plays determines whether grouping arrives the effect of host CPU 102 with the gateway that is used to learn.Because the study filter bits is on control module, therefore, it can receive the grouping from all different port interfaces, thereby plays the effect of central filtered points.This makes all filtrations to finish with single study filter ASIC.In addition, this also makes and need not host CPU or hardware based forwarding engine made changing to finish filtration.
Fig. 5 has described the another kind of execution mode of the network node 150 with distributed architecture.Except the filtering function of carrying out with distribution mode in each port interface 136, the execution mode of Fig. 5 is similar to the execution mode of Fig. 4.Specifically, each port interface comprises study filter 106A and the 106B that interface is specific, and they only filter the grouping from its corresponding port interface.The specific study filter of interface carry out with reference to the identical basic function of the described study filter of Fig. 1 and 2.Send to the host CPU 102 of control module 132 by exchange board structure from port interface separately by the grouping of filtering.
Fig. 6 has described a kind of process chart of method of utilization of the processing resource that is used for CPU management.In piece 220, receive grouping.In piece 222, determine whether the forwarding information relevant with grouping needs to be learnt so that transmit this grouping.In piece 224, study if desired, whether decision makes this grouping accept study so.Whether this decision has accepted study based on any other associated packets.
In the described here execution mode, only will send to CPU 102 and handle by the grouping of filtering.In another embodiment, filtering function can be incorporated among the CPU, and such all groupings that are used to learn that send are all received by CPU, handles but only make selected grouping accept study.
Although only allow grouping of each stream to arrive CPU 102 in one embodiment, yet in other embodiments, the total number packets with the stream that is used for learning from the initialization to CPU reduces the grouping number that is allowed to arrive CPU.
In one embodiment, in network node, send grouping and can comprise the header information that only sends this grouping.For example, grouping is sent to CPU to be used to learning to comprise that the header information that only will divide into groups sends to CPU.
In addition, although allow first grouping in the stream to arrive CUP being used for study in one embodiment, yet, in other embodiments, can also allow except that the grouping arrival CPU of first grouping.
Although describe and for example clear the specific embodiment of the present invention, yet the present invention is not limited to describe concrete form or the configuration with illustrational parts here.The present invention only limits to claims.
Claims (13)
1. method that is used for managing the processing utilization of resources of packet-based network node comprises:
Receive grouping;
Determine whether the forwarding information relevant with grouping needs to be learnt so that transmit this grouping;
Whether study has if desired then been accepted study according to any other associated packets and has been determined whether making this grouping to accept study;
Wherein whether decision makes this grouping accept to learn to comprise: discern the affiliated stream of this grouping, and determine whether accepted study from the grouping of same stream; And
Also comprise and having only when determining that the grouping from same stream just makes this grouping accept study when acceptance is learnt as yet.
2. in accordance with the method for claim 1, determine wherein whether the forwarding information relevant with grouping needs to be learnt to comprise: the header information of grouping and the clauses and subclauses in hardware based the transmitting are compared so that find coupling.
3. in accordance with the method for claim 2,, then need study if wherein do not find coupling in the comparison of the clauses and subclauses in header information and hardware based transmitting.
4. in accordance with the method for claim 1, wherein discerning the affiliated stream of this grouping comprises: the header information of this grouping is carried out hash with the generation hashed value, and determine that wherein whether having accepted study from the grouping of same stream comprises: utilize hashed value that state table is carried out index to obtain state information.
5. in accordance with the method for claim 4, wherein state information indicates the grouping of flowing automatically whether to accept study.
6. in accordance with the method for claim 1, also comprise: should accept study if determine grouping, then grouping be sent to central processor CPU to handle.
7. system that is used for managing the processing utilization of resources of packet-based network node comprises:
Central processor CPU is configured to learn to be used to transmit the forwarding information of grouping;
Hardware based forwarding engine is configured to determine whether grouping to be sent to CPU to be used for study; With
The study filter, be configured to receive the grouping that needing to be defined as study by hardware based forwarding engine from hardware based forwarding engine, and according to whether having allowed any other associated packets arrival CPU to determine whether allowing the grouping that receives to arrive CPU;
Wherein associated packets is the grouping from same packet stream, and wherein learn filter and comprise the hasher that is configured to discern the stream under the grouping and be used to indicate the state table that whether has sent to CPU from the grouping of discern stream, wherein hasher produce discern the hashed value that flows and wherein hashed value be used for state table is carried out index; And
Wherein learn the grouping that filter is configured to allow the quantity of flowing automatically to reduce and arrive CPU.
8. according to the described system of claim 7, wherein hardware based forwarding engine comprises available hardware based transmitting of transmitting the clauses and subclauses programming; And wherein when hardware based forwarding engine did not comprise the forwarding information corresponding with the grouping that receives, hardware based forwarding engine was configured to grouping is sent to CPU to be used for study.
9. according to the described system of claim 7, wherein CPU and study filter bits are on the control module Line cards, and hardware based forwarding engine is positioned on the port interface linecards, this system also comprises a plurality of port interface linecards, each port interface linecards has hardware based forwarding engine, wherein learns filter and is configured to receive grouping from each port interface linecards.
10. according to the described system of claim 7, wherein CPU is positioned on the control module Line cards, and the study filter is positioned on the port interface linecards with hardware based forwarding engine, this network node also comprises a plurality of port interface linecards, and each port interface linecards comprises the study filter.
11. a method that is used for managing the processing utilization of resources of packet-based network node comprises:
Receive grouping;
Grouping is sent to central processing unit (CPU) to be used for study;
Before grouping arrives CPU:
Determine whether to allow associated packets to arrive CPU, wherein determine whether to have allowed associated packets to arrive CPU and comprise: discern the associated stream of this grouping, and determine whether to allow grouping to arrive CPU from same stream to be used for study to be used for study;
Whether determine whether allowing grouping to arrive CPU according to having allowed associated packets to arrive CPU, and have only when not allowing another grouping from same stream to arrive CPU when being used to learn as yet, the grouping that just allows to receive arrives CPU and learns being used for.
12. also comprise in accordance with the method for claim 11: permission arrives CPU to be used for study from the grouping of the quantity minimizing of same stream.
13. in accordance with the method for claim 11, wherein determining whether to have allowed associated packets to arrive CPU comprises to be used for study: the header information to the grouping that receives is carried out hash to produce hashed value, and utilize hashed value that state table is carried out index, wherein state table comprises the state information that indicates whether to allow associated packets arrival CPU.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US53646904P | 2004-01-14 | 2004-01-14 | |
US60/536,469 | 2004-01-14 | ||
PCT/US2005/001284 WO2005067532A2 (en) | 2004-01-14 | 2005-01-14 | Managing processing utilization in a network node |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101351995A CN101351995A (en) | 2009-01-21 |
CN101351995B true CN101351995B (en) | 2011-02-02 |
Family
ID=34794407
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005800064873A Expired - Fee Related CN101351995B (en) | 2004-01-14 | 2005-01-14 | Managing processing utilization in a network node |
Country Status (5)
Country | Link |
---|---|
US (1) | US7443856B2 (en) |
EP (1) | EP1721411A4 (en) |
JP (1) | JP2007525883A (en) |
CN (1) | CN101351995B (en) |
WO (1) | WO2005067532A2 (en) |
Families Citing this family (81)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7236490B2 (en) | 2000-11-17 | 2007-06-26 | Foundry Networks, Inc. | Backplane interface adapter |
US7596139B2 (en) | 2000-11-17 | 2009-09-29 | Foundry Networks, Inc. | Backplane interface adapter with error control and redundant fabric |
US7187687B1 (en) | 2002-05-06 | 2007-03-06 | Foundry Networks, Inc. | Pipeline method and system for switching packets |
US7468975B1 (en) | 2002-05-06 | 2008-12-23 | Foundry Networks, Inc. | Flexible method for processing data packets in a network routing system for enhanced efficiency and monitoring capability |
US7266117B1 (en) | 2002-05-06 | 2007-09-04 | Foundry Networks, Inc. | System architecture for very fast ethernet blade |
US20120155466A1 (en) | 2002-05-06 | 2012-06-21 | Ian Edward Davis | Method and apparatus for efficiently processing data packets in a computer network |
US7826452B1 (en) | 2003-03-24 | 2010-11-02 | Marvell International Ltd. | Efficient host-controller address learning in ethernet switches |
US6901072B1 (en) | 2003-05-15 | 2005-05-31 | Foundry Networks, Inc. | System and method for high speed packet transmission implementing dual transmit and receive pipelines |
US7817659B2 (en) | 2004-03-26 | 2010-10-19 | Foundry Networks, Llc | Method and apparatus for aggregating input data streams |
US8730961B1 (en) | 2004-04-26 | 2014-05-20 | Foundry Networks, Llc | System and method for optimizing router lookup |
US7657703B1 (en) | 2004-10-29 | 2010-02-02 | Foundry Networks, Inc. | Double density content addressable memory (CAM) lookup scheme |
US20070081526A1 (en) * | 2005-09-27 | 2007-04-12 | Accton Technology Corporation | Network switch device |
US7620043B2 (en) * | 2005-09-29 | 2009-11-17 | Fujitsu Limited | Using CRC-15 as hash function for MAC bridge filter design |
ATE429110T1 (en) * | 2005-10-19 | 2009-05-15 | Alcatel Lucent | METHOD FOR PROCESSING AN INFORMATION PACKAGE AND COMMUNICATION DEVICES FOR USE THEREOF |
CN100442772C (en) * | 2005-10-19 | 2008-12-10 | 华为技术有限公司 | Bridge-connection transmitting method |
US8054830B2 (en) * | 2005-12-07 | 2011-11-08 | Alcatel Lucent | Managing the distribution of control protocol information in a network node |
US8448162B2 (en) | 2005-12-28 | 2013-05-21 | Foundry Networks, Llc | Hitless software upgrades |
US7796590B1 (en) * | 2006-02-01 | 2010-09-14 | Marvell Israel (M.I.S.L.) Ltd. | Secure automatic learning in ethernet bridges |
JP4137948B2 (en) * | 2006-02-14 | 2008-08-20 | 日本電信電話株式会社 | Packet passage control apparatus and packet passage control method |
US7903654B2 (en) | 2006-08-22 | 2011-03-08 | Foundry Networks, Llc | System and method for ECMP load sharing |
US8238255B2 (en) * | 2006-11-22 | 2012-08-07 | Foundry Networks, Llc | Recovering from failures without impact on data traffic in a shared bus architecture |
US8395996B2 (en) | 2007-01-11 | 2013-03-12 | Foundry Networks, Llc | Techniques for processing incoming failure detection protocol packets |
US8271859B2 (en) | 2007-07-18 | 2012-09-18 | Foundry Networks Llc | Segmented CRC design in high speed networks |
US8037399B2 (en) | 2007-07-18 | 2011-10-11 | Foundry Networks, Llc | Techniques for segmented CRC design in high speed networks |
US8509236B2 (en) | 2007-09-26 | 2013-08-13 | Foundry Networks, Llc | Techniques for selecting paths and/or trunk ports for forwarding traffic flows |
CN101184095B (en) * | 2007-12-06 | 2011-09-21 | 中兴通讯股份有限公司 | Network anti-attack method and system based on strategy control listing of CPU |
US9559987B1 (en) * | 2008-09-26 | 2017-01-31 | Tellabs Operations, Inc | Method and apparatus for improving CAM learn throughput using a cache |
US8090901B2 (en) | 2009-05-14 | 2012-01-03 | Brocade Communications Systems, Inc. | TCAM management approach that minimize movements |
CN101645904A (en) * | 2009-09-09 | 2010-02-10 | 中兴通讯股份有限公司 | Method and device for reducing utilization rate of central processing unit of switch |
US8599850B2 (en) | 2009-09-21 | 2013-12-03 | Brocade Communications Systems, Inc. | Provisioning single or multistage networks using ethernet service instances (ESIs) |
EP2509000A4 (en) * | 2009-12-04 | 2017-09-20 | Nec Corporation | Server and flow control program |
US9716672B2 (en) | 2010-05-28 | 2017-07-25 | Brocade Communications Systems, Inc. | Distributed configuration management for virtual cluster switching |
US9270486B2 (en) | 2010-06-07 | 2016-02-23 | Brocade Communications Systems, Inc. | Name services for virtual cluster switching |
US8867552B2 (en) | 2010-05-03 | 2014-10-21 | Brocade Communications Systems, Inc. | Virtual cluster switching |
US9769016B2 (en) | 2010-06-07 | 2017-09-19 | Brocade Communications Systems, Inc. | Advanced link tracking for virtual cluster switching |
US9628293B2 (en) | 2010-06-08 | 2017-04-18 | Brocade Communications Systems, Inc. | Network layer multicasting in trill networks |
US9806906B2 (en) | 2010-06-08 | 2017-10-31 | Brocade Communications Systems, Inc. | Flooding packets on a per-virtual-network basis |
US9807031B2 (en) | 2010-07-16 | 2017-10-31 | Brocade Communications Systems, Inc. | System and method for network configuration |
CN102075421B (en) * | 2010-12-30 | 2013-10-02 | 杭州华三通信技术有限公司 | Service quality processing method and device |
JP5787061B2 (en) * | 2011-03-30 | 2015-09-30 | 日本電気株式会社 | Switch system, line card, FDB information learning method and program |
US9736085B2 (en) | 2011-08-29 | 2017-08-15 | Brocade Communications Systems, Inc. | End-to end lossless Ethernet in Ethernet fabric |
US9699117B2 (en) | 2011-11-08 | 2017-07-04 | Brocade Communications Systems, Inc. | Integrated fibre channel support in an ethernet fabric switch |
US9450870B2 (en) | 2011-11-10 | 2016-09-20 | Brocade Communications Systems, Inc. | System and method for flow management in software-defined networks |
US8995272B2 (en) | 2012-01-26 | 2015-03-31 | Brocade Communication Systems, Inc. | Link aggregation in software-defined networks |
US9742693B2 (en) | 2012-02-27 | 2017-08-22 | Brocade Communications Systems, Inc. | Dynamic service insertion in a fabric switch |
US9154416B2 (en) | 2012-03-22 | 2015-10-06 | Brocade Communications Systems, Inc. | Overlay tunnel in a fabric switch |
US9374301B2 (en) | 2012-05-18 | 2016-06-21 | Brocade Communications Systems, Inc. | Network feedback in software-defined networks |
US10277464B2 (en) | 2012-05-22 | 2019-04-30 | Arris Enterprises Llc | Client auto-configuration in a multi-switch link aggregation |
US9401872B2 (en) | 2012-11-16 | 2016-07-26 | Brocade Communications Systems, Inc. | Virtual link aggregations across multiple fabric switches |
US9350680B2 (en) | 2013-01-11 | 2016-05-24 | Brocade Communications Systems, Inc. | Protection switching over a virtual link aggregation |
US9413691B2 (en) | 2013-01-11 | 2016-08-09 | Brocade Communications Systems, Inc. | MAC address synchronization in a fabric switch |
US9548926B2 (en) | 2013-01-11 | 2017-01-17 | Brocade Communications Systems, Inc. | Multicast traffic load balancing over virtual link aggregation |
CN103117928B (en) | 2013-01-21 | 2017-02-08 | 深圳市迪浦电子有限公司 | Method and device for improving chip forwarding performance |
US9565099B2 (en) | 2013-03-01 | 2017-02-07 | Brocade Communications Systems, Inc. | Spanning tree in fabric switches |
US9401818B2 (en) | 2013-03-15 | 2016-07-26 | Brocade Communications Systems, Inc. | Scalable gateways for a fabric switch |
US9699001B2 (en) | 2013-06-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Scalable and segregated network virtualization |
US9800521B2 (en) * | 2013-08-26 | 2017-10-24 | Ciena Corporation | Network switching systems and methods |
US9806949B2 (en) | 2013-09-06 | 2017-10-31 | Brocade Communications Systems, Inc. | Transparent interconnection of Ethernet fabric switches |
US9912612B2 (en) | 2013-10-28 | 2018-03-06 | Brocade Communications Systems LLC | Extended ethernet fabric switches |
US9548873B2 (en) | 2014-02-10 | 2017-01-17 | Brocade Communications Systems, Inc. | Virtual extensible LAN tunnel keepalives |
US10581758B2 (en) | 2014-03-19 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Distributed hot standby links for vLAG |
US10476698B2 (en) | 2014-03-20 | 2019-11-12 | Avago Technologies International Sales Pte. Limited | Redundent virtual link aggregation group |
US10063473B2 (en) | 2014-04-30 | 2018-08-28 | Brocade Communications Systems LLC | Method and system for facilitating switch virtualization in a network of interconnected switches |
US9800471B2 (en) | 2014-05-13 | 2017-10-24 | Brocade Communications Systems, Inc. | Network extension groups of global VLANs in a fabric switch |
US10616108B2 (en) | 2014-07-29 | 2020-04-07 | Avago Technologies International Sales Pte. Limited | Scalable MAC address virtualization |
US9807007B2 (en) | 2014-08-11 | 2017-10-31 | Brocade Communications Systems, Inc. | Progressive MAC address learning |
US9699029B2 (en) | 2014-10-10 | 2017-07-04 | Brocade Communications Systems, Inc. | Distributed configuration management in a switch group |
US9628407B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Multiple software versions in a switch group |
US9626255B2 (en) | 2014-12-31 | 2017-04-18 | Brocade Communications Systems, Inc. | Online restoration of a switch snapshot |
US10003552B2 (en) | 2015-01-05 | 2018-06-19 | Brocade Communications Systems, Llc. | Distributed bidirectional forwarding detection protocol (D-BFD) for cluster of interconnected switches |
US9942097B2 (en) | 2015-01-05 | 2018-04-10 | Brocade Communications Systems LLC | Power management in a network of interconnected switches |
US9807005B2 (en) | 2015-03-17 | 2017-10-31 | Brocade Communications Systems, Inc. | Multi-fabric manager |
US10038592B2 (en) | 2015-03-17 | 2018-07-31 | Brocade Communications Systems LLC | Identifier assignment to a new switch in a switch group |
US10579406B2 (en) | 2015-04-08 | 2020-03-03 | Avago Technologies International Sales Pte. Limited | Dynamic orchestration of overlay tunnels |
US10439929B2 (en) | 2015-07-31 | 2019-10-08 | Avago Technologies International Sales Pte. Limited | Graceful recovery of a multicast-enabled switch |
US10171303B2 (en) | 2015-09-16 | 2019-01-01 | Avago Technologies International Sales Pte. Limited | IP-based interconnection of switches with a logical chassis |
CN105591923B (en) * | 2015-10-28 | 2018-11-27 | 新华三技术有限公司 | A kind of storage method and device of forwarding-table item |
US9912614B2 (en) | 2015-12-07 | 2018-03-06 | Brocade Communications Systems LLC | Interconnection of switches based on hierarchical overlay tunneling |
US10164796B2 (en) * | 2016-04-19 | 2018-12-25 | Avago Technologies International Sales Pte. Limited | Flexible flow table with programmable state machine |
US10237090B2 (en) | 2016-10-28 | 2019-03-19 | Avago Technologies International Sales Pte. Limited | Rule-based network identifier mapping |
CN114422365B (en) * | 2022-01-21 | 2024-03-19 | 成都飞鱼星科技股份有限公司 | Internet surfing behavior management method and system based on hardware flow acceleration |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1032164A1 (en) * | 1999-02-26 | 2000-08-30 | International Business Machines Corporation | Method of self-learning for the switching nodes of a data transmission network |
CN1407769A (en) * | 2001-09-11 | 2003-04-02 | 友讯科技股份有限公司 | Address number control method for address form of network switching device |
CN1456004A (en) * | 2000-04-13 | 2003-11-12 | 先进微装置公司 | Method for layer 3 address self learning capable of programming in network exchanger |
CN1464704A (en) * | 2002-06-06 | 2003-12-31 | 深圳市中兴通讯股份有限公司 | Routing method based on link status |
CN1474564A (en) * | 2002-08-05 | 2004-02-11 | ��Ϊ��������˾ | Communication method between virtual local area webs |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06197111A (en) * | 1992-10-26 | 1994-07-15 | Hitachi Ltd | Internetwork device |
JPH10145417A (en) * | 1996-11-15 | 1998-05-29 | Hitachi Ltd | Internetwork system |
JP2951910B2 (en) * | 1997-03-18 | 1999-09-20 | 松下電器産業株式会社 | Gradation correction device and gradation correction method for imaging device |
US6430188B1 (en) * | 1998-07-08 | 2002-08-06 | Broadcom Corporation | Unified table for L2, L3, L4, switching and filtering |
JP4156112B2 (en) * | 1998-12-25 | 2008-09-24 | 富士通株式会社 | High-speed search method and high-speed search device |
US6483804B1 (en) * | 1999-03-01 | 2002-11-19 | Sun Microsystems, Inc. | Method and apparatus for dynamic packet batching with a high performance network interface |
US6999455B2 (en) * | 2000-07-25 | 2006-02-14 | Broadcom Corporation | Hardware assist for address learning |
US20030035430A1 (en) * | 2000-10-03 | 2003-02-20 | Junaid Islam | Programmable network device |
US7313614B2 (en) * | 2000-11-02 | 2007-12-25 | Sun Microsystems, Inc. | Switching system |
JP3711895B2 (en) * | 2001-06-13 | 2005-11-02 | 日本電気株式会社 | Search system, search condition CAM registration method used therefor, and program thereof |
US7269663B2 (en) * | 2001-09-28 | 2007-09-11 | Intel Corporation | Tagging packets with a lookup key to facilitate usage of a unified packet forwarding cache |
US6973503B2 (en) * | 2002-05-23 | 2005-12-06 | International Business Machines Corporation | Preventing at least in part control processors from being overloaded |
US7177311B1 (en) * | 2002-06-04 | 2007-02-13 | Fortinet, Inc. | System and method for routing traffic through a virtual router-based network switch |
US7761876B2 (en) * | 2003-03-20 | 2010-07-20 | Siemens Enterprise Communications, Inc. | Method and system for balancing the load on media processors based upon CPU utilization information |
-
2005
- 2005-01-14 CN CN2005800064873A patent/CN101351995B/en not_active Expired - Fee Related
- 2005-01-14 EP EP05705737A patent/EP1721411A4/en not_active Withdrawn
- 2005-01-14 WO PCT/US2005/001284 patent/WO2005067532A2/en active Application Filing
- 2005-01-14 US US11/036,909 patent/US7443856B2/en active Active
- 2005-01-14 JP JP2006549635A patent/JP2007525883A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1032164A1 (en) * | 1999-02-26 | 2000-08-30 | International Business Machines Corporation | Method of self-learning for the switching nodes of a data transmission network |
CN1456004A (en) * | 2000-04-13 | 2003-11-12 | 先进微装置公司 | Method for layer 3 address self learning capable of programming in network exchanger |
CN1407769A (en) * | 2001-09-11 | 2003-04-02 | 友讯科技股份有限公司 | Address number control method for address form of network switching device |
CN1464704A (en) * | 2002-06-06 | 2003-12-31 | 深圳市中兴通讯股份有限公司 | Routing method based on link status |
CN1474564A (en) * | 2002-08-05 | 2004-02-11 | ��Ϊ��������˾ | Communication method between virtual local area webs |
Also Published As
Publication number | Publication date |
---|---|
CN101351995A (en) | 2009-01-21 |
EP1721411A2 (en) | 2006-11-15 |
WO2005067532A3 (en) | 2008-08-21 |
JP2007525883A (en) | 2007-09-06 |
WO2005067532A2 (en) | 2005-07-28 |
US7443856B2 (en) | 2008-10-28 |
EP1721411A4 (en) | 2010-09-08 |
US20050152335A1 (en) | 2005-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101351995B (en) | Managing processing utilization in a network node | |
US6633565B1 (en) | Apparatus for and method of flow switching in a data communications network | |
US8446822B2 (en) | Pinning and protection on link aggregation groups | |
US6977932B1 (en) | System and method for network tunneling utilizing micro-flow state information | |
EP1408656B1 (en) | Method and device for transparent LAN services | |
US7558268B2 (en) | Apparatus and method for combining forwarding tables in a distributed architecture router | |
US20030235194A1 (en) | Network processor with multiple multi-threaded packet-type specific engines | |
US7277386B1 (en) | Distribution of label switched packets | |
EP1158729A2 (en) | Stackable lookup engines | |
US20050175022A1 (en) | Bridge apparatus and logical queue control method | |
US10645033B2 (en) | Buffer optimization in modular switches | |
US7764672B2 (en) | Packet communication device | |
KR20000028645A (en) | Packet forwarding apparatus with a flow detection table | |
WO2013054344A2 (en) | Method and apparatus for end-end communication and inter-domain routing in omnipresent ethernet networks with an option to migrate to mpls-tp | |
WO2003012672A2 (en) | Selective routing of data flows using a tcam | |
JP2002314571A (en) | Classification and tagging rules for switching nodes | |
US20020154648A1 (en) | Scaleable and robust solution for reducing complexity of resource identifier distribution in a large network processor-based system | |
US7430208B1 (en) | Efficient method for packet switching on asynchronous transfer mode switch based platforms | |
CN108541364B (en) | Device and method for routing table scaling in modular platform | |
US7352748B1 (en) | Updating of routing data in a network element | |
US7324513B2 (en) | IP multicast packet replication process for 4K VLANS | |
US10764177B2 (en) | Efficient implementation of complex network segmentation | |
Wu | Packet forwarding technologies | |
JP2000312225A (en) | Packet repeater | |
US20060002394A1 (en) | Route computing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110202 Termination date: 20120114 |