摘要:
A network switch is disclosed having at least one data port interface for receiving data and at least one link interface configured to transmit the data between the network switch and other network switches. The switch contains a data processor, having a segmented ring with a plurality of dedicated modules designed to process the data connected through that ring. A programmable ring dispatcher dispatches at least a portion of the data along a segmented ring to at least one of the dedicated modules. The data processor also has a command processor for processing commands received from the dedicated modules. The programmable ring dispatcher determines the first dedicated module to receive the portion of the data and that first dedicated module thereafter determines the next destination for the data potion. Because the dedicated modules can be added to or taken out the switch architecture based on the network environment, the switch is scalable and adaptable.
摘要:
A communications network switch includes a plurality of network ports for transmitting and receiving packets to and from network nodes via network links, each of the packets having a destination address and a source address, the switch being operative to communicate with at least one trunking network device via at least one trunk formed by a plurality of aggregated network links. The communications network switch provides a method and apparatus for balancing the loading of aggregated network links of the trunk, thereby increasing the data transmission rate through the trunk. The switch includes: a packet buffer for temporarily storing a packet received at a source port of the network ports, the packet having a source address value, and a destination address value indicating a destination node that is communicatively coupled with the switch via a data path including a trunk; a packet routing unit for determining a destination trunked port associated with the packet, the destination trunked port including a subset of the plurality of network ports, the destination trunked port being coupled to the destination node via the data path; and load balancing unit for selecting a destination port associated with the packet from the subset of network ports; whereby transmission loading of the aggregated network links of the trunk is balanced. In varying embodiments, the load balancing unit is operative to select destination ports from the subsets of network ports as a function of source port ID values, source addresses, and destination addresses.
摘要:
A queue length arbiter system provides for selecting from a plurality of N queues requiring access to a resource. The system includes: an arbitration circuit; and a plurality of weight circuits each being associated with a corresponding one of the queues, and being operative to store a corresponding weight count value, and also being operative to initialize the corresponding weight count value to a corresponding initial weight value determined based on a length value indicative of a number of data portions enqueued at the corresponding queue at an initial time, and being further operative to decrease the corresponding weight count value in response to a corresponding one of a plurality of grant signals, and also being operative to generate a corresponding one of a plurality of weight count signals, the corresponding weight count signal carrying the corresponding weight count value. The arbitration circuit includes: a plurality of weight checking circuits associated with corresponding ones of the queues, each checking circuit being operative to generate a corresponding one of a plurality of select signals indicative of a corresponding selected one of the queues in response to each of the weight count signals, the corresponding selected queue being determined based on the weight count values; and a resolving circuit responsive to each of the select signals, and being operative to choose one of the weight checking circuits, and also being operative to provide the grant signals, the grant signals indicating a granted queue that is selected by the chosen weight circuit.
摘要:
A communications network switch includes a plurality of network ports for transmitting and receiving packets to and from network nodes via network links, each of the packets having a destination address and a source address, the switch being operative to communicate with at least one trunking network device via at least one trunk formed by a plurality of aggregated network links. The communications network switch provides a method and apparatus for balancing the loading of aggregated network links of the trunk, thereby increasing the data transmission rate through the trunk. The switch includes: a packet buffer for temporarily storing a packet received at a source port of the network ports, the packet having a source address value, and a destination address value indicating a destination node that is communicatively coupled with the switch via a data path including a trunk; a packet routing unit for determining a destination trunked port associated with the packet, the destination trunked port including a subset of the plurality of network ports, the destination trunked port being coupled to the destination node via the data path; and load balancing unit for selecting a destination port associated with the packet from the subset of network ports; whereby transmission loading of the aggregated network links of the trunk is balanced. In varying embodiments, the load balancing unit is operative to select destination ports from the subsets of network ports as a function of source port ID values, source addresses, and destination addresses.
摘要:
A network device includes a port interface configured to receive a data packet from a data network and to send a processed data packet to an egress port of the plurality of ports, a memory management unit and a search engine configured to perform searches of lookup tables and to return search results to assist in modifying the received data packet to produce the processed data packet. The port interface is configured to assign and attach a pointer to the data packet when received, the memory management unit is configured to store and retrieve the data packet and the attached pointer, and the search engine is configured to perform the searches of the lookup tables using the pointer.
摘要:
A queue length arbiter system provides for selecting from a plurality of N queues requiring access to a resource. The system includes: an arbitration circuit; and a plurality of weight circuits each being associated with a corresponding one of the queues, and being operative to store a corresponding weight count value, and also being operative to initialize the corresponding weight count value to a corresponding initial weight value determined based on a length value indicative of a number of data portions enqueued at the corresponding queue at an initial time, and being further operative to decrease the corresponding weight count value in response to a corresponding one of a plurality of grant signals, and also being operative to generate a corresponding one of a plurality of weight count signals, the corresponding weight count signal carrying the corresponding weight count value. The arbitration circuit includes: a plurality of weight checking circuits associated with corresponding ones of the queues, each checking circuit being operative to generate a corresponding one of a plurality of select signals indicative of a corresponding selected one of the queues in response to each of the weight count signals, the corresponding selected queue being determined based on the weight count values; and a resolving circuit responsive to each of the select signals, and being operative to choose one of the weight checking circuits, and also being operative to provide the grant signals, the grant signals indicating a granted queue that is selected by the chosen weight circuit.
摘要:
A communications network switch includes a plurality of network ports for transmitting and receiving packets to and from network nodes via network links, each of the packets having a destination address and a source address, the switch being operative to communicate with at least one trunking network device via at least one trunk formed by a plurality of aggregated network links. The communications network switch provides a method and apparatus for balancing the loading of aggregated network links of the trunk, thereby increasing the data transmission rate through the trunk. The switch includes: a packet buffer for temporarily storing a packet received at a source port of the network ports, the packet having a source address value, and a destination address value indicating a destination node that is communicatively coupled with the switch via a data path including a trunk; a packet routing unit for determining a destination trunked port associated with the packet, the destination trunked port including a subset of the plurality of network ports, the destination trunked port being coupled to the destination node via the data path; and load balancing unit for selecting a destination port associated with the packet from the subset of network ports; whereby transmission loading of the aggregated network links of the trunk is balanced. In varying embodiments, the load balancing unit is operative to select destination ports from the subsets of network ports as a function of source port ID values, source addresses, and destination addresses.
摘要:
A queue length arbiter system provides for selecting from a plurality of N queues requiring access to a resource. The system includes: an arbitration circuit; and a plurality of weight circuits each being associated with a corresponding one of the queues, and being operative to store a corresponding weight count value, and also being operative to initialize the corresponding weight count value to a corresponding initial weight value determined based on a length value indicative of a number of data portions enqueued at the corresponding queue at an initial time, and being further operative to decrease the corresponding weight count value in response to a corresponding one of a plurality of grant signals, and also being operative to generate a corresponding one of a plurality of weight count signals, the corresponding weight count signal carrying the corresponding weight count value. The arbitration circuit includes: a plurality of weight checking circuits associated with corresponding ones of the queues, each checking circuit being operative to generate a corresponding one of a plurality of select signals indicative of a corresponding selected one of the queues in response to each of the weight count signals, the corresponding selected queue being determined based on the weight count values; and a resolving circuit responsive to each of the select signals, and being operative to choose one of the weight checking circuits, and also being operative to provide the grant signals, the grant signals indicating a granted queue that is selected by the chosen weight circuit.
摘要:
A network device for implementing a high speed transmission protocol. The network device includes a plurality of high speed modules which are connected by a plurality of high speed links. Each of the plurality of high speed modules implements the high speed transmission protocol and each of the plurality of high speed modules being implemented in an Ethernet ring topology. A medium access control layer in each of the plurality of high speed modules is modified in a manner that is transparent to a switching entity in each of the plurality of high speed modules. The high speed transmission protocol comprises a plurality of aspects including an in-banding messaging mechanism for efficient and responsive traffic management and network operation.
摘要:
A high speed transmission protocol that is implemented in a network device that includes a plurality of modules which are connected by a plurality of high speed links. The protocol includes a transmission link aspect for providing at least one of variable-sized packet based transmission with fixed sized messaging capability and pre-emptive transmission capability and a fabric forwarding aspect supporting at least one of class differentiations for packet flows, a plurality of addressable physical and logical modules, generic multicast forwarding port level indication for physical or logical ports, and explicit parameter for packet-content agnostic fabric operation. The protocol also include a packet processing descriptor aspect for providing at least one of a flexibility for various packet-processing descriptor adaptations and packet processing flow continuity across the network device for system design scalability. The protocol further includes an in-band messaging aspect for providing at least one of congestion management protocols, system resiliency protocols, database synchronization protocols and component access protocols and an encoding aspect for providing a structured header design.