CN101351995B - Managing processing utilization in a network node - Google Patents

Managing processing utilization in a network node Download PDF

Info

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
Application number
CN2005800064873A
Other languages
Chinese (zh)
Other versions
CN101351995A (en
Inventor
桑德普·洛哈
瑟尔鲁马尔帕斯·巴拉克瑞沙恩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Riverstone Networks Inc
Original Assignee
Riverstone Networks Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Riverstone Networks Inc filed Critical Riverstone Networks Inc
Publication of CN101351995A publication Critical patent/CN101351995A/en
Application granted granted Critical
Publication of CN101351995B publication Critical patent/CN101351995B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2483Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • H04L49/253Routing or path finding in a switch fabric using establishment or release of connections between ports
    • H04L49/254Centralised controller, i.e. arbitration or scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/30Peripheral units, e.g. input or output ports
    • H04L49/3009Header 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

Processing and utilizing in the managing network node
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.
Control module 132 comprises CPU 102 (being designated " host CPU ") and study filter 106.Usually, control module is supported different functions, and for example Network Management Function and agreement realize function.Although it is not shown, but control module also comprises memory, for example is used for the Electrically Erasable Read Only Memory (EEPROM) or the flash ROM of storage operation sign indicating number and is used for the buffer traffic amount and the dynamic random access memory of store data structure (as forwarding information) (DRAM).In addition, more than one discrete processor unit and more than one memory cell can also be arranged on the control module.Host CPU can comprise aforesaid multifunctional processor and/or application specific processor.Host CPU is supported the study based on software, as based on shown in the study protocol function piece 110 of software.Study based on software comprises generation layers 2 and 3 forwarding information as known in the art.
Exchange board structure 134 provides data path (for example, the data path between control module and the port interface, and the data path between the port interface) between control module 132 and port interface 136.Exchange board structure can use for example shared storage, shared bus or crosspoint matrix (crosspoint matrix).
Port interface 136 comprises port interface CPU 138, hardware based forwarding engine 104 and input/output end port 140.Usually, comprise that by the performed function of port interface reception enters the traffic carrying capacity of network node, buffer traffic amount, storage forwarding information, protocol processes, carries out forwarding decision and send traffic carrying capacity from network node 130.In the execution mode of Fig. 4, the port interface CPU of each port interface moves its operating system separately.Port interface CPU in each port interface linecards can comprise multifunctional processor (IBM PowerPC for example
Figure G2005806487320060906D000071
Processor) and/or application specific processor.Command code generally is stored in such as (not shown) in the nonvolatile memories such as EEPROM or flash ROM, and traffic carrying capacity is typically buffered in such as (not shown) in the volatile memory such as RAM.
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.
CN2005800064873A 2004-01-14 2005-01-14 Managing processing utilization in a network node Expired - Fee Related CN101351995B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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