EP1754345A1 - Method for selective load compensation - Google Patents
Method for selective load compensationInfo
- Publication number
- EP1754345A1 EP1754345A1 EP05751717A EP05751717A EP1754345A1 EP 1754345 A1 EP1754345 A1 EP 1754345A1 EP 05751717 A EP05751717 A EP 05751717A EP 05751717 A EP05751717 A EP 05751717A EP 1754345 A1 EP1754345 A1 EP 1754345A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- switch
- reference table
- traffic information
- processor
- data
- 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.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000011835 investigation Methods 0.000 claims abstract 2
- 230000005540 biological transmission Effects 0.000 abstract description 4
- 238000009826 distribution Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000003860 storage Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 238000007726 management method Methods 0.000 description 3
- 230000032683 aging Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 239000012634 fragment Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000006424 Flood reaction Methods 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000004220 aggregation Methods 0.000 description 1
- 230000002776 aggregation Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
Definitions
- the present invention relates to a method for a selective load balancing according to the preamble of claim 1. And even more particularly it relates to a method in which the means required for implementation are arranged outside a switch, with an effective dynamic load balancing taking place ,
- Switches such as Ethernet LAN (local area network) switches, are known and are used as components of a packet-switched telecommunication network or a packet-switched telecommunication network. These switches cause the data packets to communicate between a large number of network nodes, which are based on a preset algorithm. Data packets arriving in the switch are temporarily stored in a buffer memory or register. The message header is read and an address for the data packet is defined. A reference table with addresses is consulted and a procedure is then derived in order to obtain the best possible connection between the switch and the destination network node of the data packet. A connection between two correspondingly long segments is shown in order to forward the data packets from the switch to the network node through the segments.
- Ethernet LAN local area network
- MAC addresses are physical addresses of a facility like this like the NIC (Network Interface Card) of a computer in the network.
- the MAC address comprises up to two identical parts, each 6 bytes long. The first three bytes identify the company that made the NIC. The second three bytes are the serial number of the NIC itself.
- NIC stands for Network Interface Card, which, as the name suggests, enables communication between the subscriber terminal and the network. NIC can also refer to the Ethernet card.
- Packet-switched data switching comprises several known methods for forwarding data packets. Each of them depends on the in-circuit hardware and software. Such methods include: forwarding (cut-through), storage and forwarding (store and forward) and the transmission free of fragments (fragment-free).
- forwarding cut-through
- storage and forwarding store and forward
- fragment-free the transmission free of fragments
- the switch reads the MAC address as soon as a data packet has been recognized and immediately begins the pass-through or or forwarding after the six bytes have been stored, regardless of the remaining data packets that are still received or received.
- storage and forwarding the entire data packet is stored in a memory, checked for errors and then sent on, based on the MAC address subsequently read. If an error is discovered in this process, the data packet is discarded.
- Some switches are also known to combine forwarding and storage and forwarding procedures in varying degrees.
- the procedure "transmission free of fragments" is equivalent to the transmission, with the difference that the first 64 bytes of the data packet are saved before the forwarding takes place.
- a basis for this procedure is that most errors occur in the first 64 bytes occur, which means for the switch there is an opportunity to find out the errors early without having to accept the delay due to the storage of more than 64 bytes.
- the switch collects certain basic information about the data packets to be forwarded, regardless of the type of pre-ringing that is carried out by the switch.
- the switches are configured so that they design their own reference table based on learned or received information from a network node arranged in the network. Such learning is automatically initiated without any need for mediation by a network administrator.
- the establishment of a reference table is commonly referred to as transparent bridging.
- Transparent bridging comprises five parts: learning, flooding, filtering, sending and aging. In short, learning is a process in which the switch, when it encounters a new MAC address, simply adds the address with the respective network node to its own reference table.
- Flooding is a process in which the switch searches for a network node whose address is previously unknown to it and in which it then supplies (floods) all the network segments known to it (except for the receiving segment) with the data packet. As a result, the appropriate desired recipient will then acknowledge receipt of the packet. With this acknowledgment, the flooding switch now knows the two network nodes and their location and can thus establish a connection between them and transmit the data packet. In the event that the switch detects two network nodes and determines that they have the same network in common, the switch will update its own reference table and consequently will not interfere in the communication between the two nodes sharing, which is the part of the Filtering was described.
- Aging is a form of cleaning the switch's memory from addresses that have not been used within a specified period of time.
- the reference table of the switch can be designed and the information of the network node connection is available through the memory allocated in the switch.
- Switches work in a conventional manner on the data link or the second layer of the OSI reference model. Some switches, which are more similar to routers and are known as Layer 3 switches, operate on the third layer of the OSI reference model, i.e. at the network level. The applications that control the network run on the highest layer, the application layer.
- a general basis for network control applications is the Signaling Network Management Protocol or the Simple Network Management Protocol (SNMP).
- SNMP Simple Network Management Protocol
- MIB management information base
- the question is carried out via SNMP.
- the MIB is a repository of properties and parameters that are controlled by a network device, such as a switch. Consequently, SNMP communicates with the switch via MIB, receives information from the switch and controls the switch in another way. This information may include an error counter, data load, and so on.
- API Application Programming Interface
- API Application Programming Interface
- API is software that is used to enable communication with the controlled switches of the network.
- API is a set of standard software of data formats that application programs use to establish contact with network services.
- switches It is the hardware of the switch that recognizes the data packets and defines or executes hash functions and logically defines the assignment to a network node (via a hash value).
- the procedure mentioned above is based on internal (with reference to the switch) measures (hardware and software).
- switches remain relatively static and predictable in terms of how they work. In other words, the switches do not behave dynamically with regard to the different data loads and their requirements. As a result, certain ports on a switch can be more heavily loaded by data than other ports on the same switch. This poses a problem of the accumulation of data traffic on the switch, as a result of which the switch becomes slower and thus also the communication between the respective network nodes and ultimately (in different gradations) the overall network performance also decreases.
- a known solution to this problem involves introducing some flexibility in the switch hardware. This higher flexibility represents a change to a number of parameters and / or hash functions in order to achieve a more balanced load distribution. The changes can be based on an analysis of the current traffic situations and their requirements. Such restructuring may be possible during ongoing operations. As always, the communication that has already been logically assigned to a special port of the switch cannot be redirected or redirected to another port. Therefore, a solution to switch over or to the U Data sharing required where the switch can operate more dynamically while data load can be redirected or redistributed regardless of the fact that the data loads have already been allocated. The solution must also be flexible to use, so that it can also be used for existing switches, which increases their performance without being forced to replace the switches.
- the present invention is directed to solving this problem and specified in the characterizing part of patent claim 1. Refinements are specified in the dependent claims.
- the present invention is directed to a method in which a processor external to the switch is provided in order to examine the data load in detail and to determine whether the load advantageously resembles a desired distribution. If this is not the case, the switch's reference table is read, processed and then switched back to active, so that after the execution of this process, the processed table redirects the data traffic to other ports, thereby achieving a more advantageous distribution result.
- Figure 1 is a flow diagram of the method
- Figure 2 is a box diagram of a system for performing the method shown.
- FIG. 1 shows a flow diagram with the steps that are carried out by the illustrated invention in order to achieve a desired load balancing within a switch.
- the method begins at step 100 and continues to step 102, the information of the data load being read out from the switch.
- the switches provide multiple sources and several different significant sets of information indicative of the data load.
- the sources of the information include SNMP, API, network support, network manager, switch storage and so on.
- the information can be as simple as counting data packets that are routed via a special port, or it can also contain data from a network node or the data about details regarding the nature of the data packets sent.
- the data is read out for one or more ports of the switch.
- a comparison is made between the read load distribution and the desired load distribution in step 104 and it is determined whether the read load distribution advantageously corresponds to the desired load distribution.
- the tolerance for this comparison is a matter of designing and applying the process.
- the illustrated invention is also not intended to be limited to any type of data or data source.
- the method returns to the beginning (step 108). However, if the data read out does not resemble the desired load distribution (step 110), the reference table is read and examined in detail (step 112). A determination is made as to how the reference table can be processed so that the data traffic currently handled by the switch can be redistributed among the ports of the switch in order to achieve the desired distribution of the traffic load. Because the present method for every type of desired load distribution for every type of switch, the processor-equipped ports and means for data storage is suitable, the external processor and its programmability must include a high degree of flexibility. The present processor and programming are therefore a matter of design. After processing, the reference table is sent back to the switch for implementation (step 116). The method then returns to the beginning after a preselected period of time (step 118) and the above steps are repeated.
- FIG. 2 describes a box diagram of a system for performing the inventive method.
- a switch 10 comprises four components: a switch table 20, a hash function 22, a processor interface 24 and a register 26.
- the work tasks of these individual components have already been described above.
- the switch table 20 shows the port of the switch via which packets for a specific network node are forwarded.
- the hash function 22 is a processing of information according to special criteria.
- the processor interfaces 24 enable communication with the processor 16 via a connection 14.
- the register 26 is a temporary memory which is used for receiving, holding and transferring data.
- the processor 16 includes software 18 for processing algorithms. Numerous segments 12 enable communication with the switch 10, each of them with connection or subscriber interfaces. As applied with this present invention, the algorithms can be selected so that their execution results in a desired distribution of the data load. The design of the algorithms is known to the expert experienced in his field.
- stanchions are provided. For example: comparing the static hashes of the switch; a last bit of the srcMAC, which is zero or one, and a hash on the port; the number of frames transported from the register per port; other functions of SNMP functions that provide detailed information about the traffic load situation, qualitatively separated from the pure count, such as sorting by business customer, by private customer, the amount of connection interfaces, etc.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
Verfahren zum selektiven LastausgleichProcedure for selective load balancing
Hintergrund der ErfindungBackground of the Invention
Die vorliegende Erfindung bezieht sich auf ein Verfahren für einen selektiven Lastausgleich gemäß dem Oberbegriff von Patentanspruch 1. Und noch spezieller bezieht sie sich auf ein Verfahren, bei welchem die zur Realisierung erforderlichen Mittel außerhalb eines Switches angeordnet werden, wobei ein wir- kungsvoller dynamischer Lastausgleich erfolgt.The present invention relates to a method for a selective load balancing according to the preamble of claim 1. And even more particularly it relates to a method in which the means required for implementation are arranged outside a switch, with an effective dynamic load balancing taking place ,
Switches, derartige wie Ethernet LAN (local area network) Switches sind bekannt und werden als Komponenten eines paketvermittelten Telekommunikationsnetzwerkes oder eines Packet-switched Telekommunikationsnetzwerks verwendet. Diese Switches bewirken eine Kommunikation der Datenpakete zwischen einer Vielzahl von Netzknoten, die auf einem voreingestellten Algorithmus basieren. In dem Switch eingehende Datenpakete werden vorübergehend in einem Pufferspeicher oder Register gespeichert. Der Nach- richtenkopf wird gelesen und eine Adresse für das Datenpaket festgelegt. Eine Referenztabelle mit Adressen wird zu Rate gezogen und danach eine Vorgehensweise abgeleitet, um eine Verbindung zwischen dem Switch und dem Bestimmungsnetzknoten des Datenpakets bestmöglich zu erhalten. Eine Verbindung zwischen zwei entsprechend ausreichend langen Segmenten wird aufgezeigt, um die Datenpakete von dem Switch zu dem Netzknoten durch die Segmente weiterzuleiten. Gewöhnliche ethernetbasierende LAN nutzen einen Ethernet-Rahmen, welcher ein normales Datenpaket umfasst sowie die Gebühreninformation des Rahmens und einen spezieller Nachrichtenkopf, der die MAC Adressinformationen ü- ber die Herkunft und den Bestimmungsort des Datenpakets besitzt. MAC Adressen, oder Media Access Controll (Medienzugangs- kontrolle) sind physische Adressen einer Einrichtung, derartig wie das NIC (Network Interface Card) eines im Netzwerk befindlichen Computer. Die MAC Adresse umfasst bis zu zwei gleiche jeweils 6 Byte langen Teile. Die ersten drei Bytes identifizieren die Gesellschaft, die das NIC hergestellt hat. Die zweiten drei Bytes sind die Seriennummer des NIC selbst. NIC steht für Network Interface Card (Netzwerkschnittstellenkarte) , welche, wie der Name schon sagt, die Kommunikation zwischen dem Teilnehmerendgerät und dem Netzwerk ermöglicht. NIC kann ebenso auf die Ethernetkarte verweisen.Switches, such as Ethernet LAN (local area network) switches, are known and are used as components of a packet-switched telecommunication network or a packet-switched telecommunication network. These switches cause the data packets to communicate between a large number of network nodes, which are based on a preset algorithm. Data packets arriving in the switch are temporarily stored in a buffer memory or register. The message header is read and an address for the data packet is defined. A reference table with addresses is consulted and a procedure is then derived in order to obtain the best possible connection between the switch and the destination network node of the data packet. A connection between two correspondingly long segments is shown in order to forward the data packets from the switch to the network node through the segments. Ordinary Ethernet-based LANs use an Ethernet frame, which comprises a normal data packet, the fee information of the frame and a special message header, which has the MAC address information about the origin and destination of the data packet. MAC addresses, or Media Access Controll, are physical addresses of a facility like this like the NIC (Network Interface Card) of a computer in the network. The MAC address comprises up to two identical parts, each 6 bytes long. The first three bytes identify the company that made the NIC. The second three bytes are the serial number of the NIC itself. NIC stands for Network Interface Card, which, as the name suggests, enables communication between the subscriber terminal and the network. NIC can also refer to the Ethernet card.
Paketvermittelte Datendurchschaltung umfasst mehrere bekannte Verfahren zur Weiterleitung von Datenpaketen. Jedes von ihnen hängt von der schaltungsinternen Hard- und Software ab. Derartige Verfahren umfassen: Durchleitung (Cut-Through) , Speiche- rung und Weiterleitung (Store and Forward) und die Übersendung frei von Bruchstücken (Fragment-free) . Bei der Durchleitung liest der Switch die MAC Adresse sobald ein Datenpaket erkannt worden ist, und beginnt unmittelbar mit der Durchleitung oder oder der Weiterleitung, nachdem die sechs Bytes gespeichert worden sind, ungeachtet der übrig gebliebenen noch empfangenden oder eingehenden Datenpakete. Bei der Speicherung und Weiterleitung wird das gesamte Datenpaket in einem Speicher gespeichert, auf Fehler kontrolliert und dann weiter versendet, basierend auf der nachfolgend gelesenen MAC Adresse. Wird in die- sem Vorgang ein Fehler entdeckt, so wird das Datenpaket ausrangiert. Einige Switches sind auch dafür bekannt, dass sie in variierender Abstufung die Durchleitung und das Speicherung und Weiterleitung-Verfahren kombinieren. Das Verfahren „Übersendung frei von Bruchstücken" ist gleichbedeutend mit der Durchlei- tung, mit der Abweichung, dass die ersten 64 Bytes des Datenpakets gespeichert werden, bevor die Weiterleitung erfolgt. Eine Grundlage für dieses Verfahren liegt darin, dass die meisten Fehler in den ersten 64 Bytes vorkommen, womit für den Switch die Gelegenheit besteht, die Fehler frühzeitig heraus zu finden ohne die Verzögerung wegen der Speicherung von mehr als den 64 Bytes hinnehmen zu müssen. Folglich sammelt der Switch durch den Arbeitsbetrieb gewisse Grundinformationen über die weiter- zuleitenden Datenpakete, ungeachtet von der Art des Voraribrin- gens, die von dem Switch ausgeführt wird.Packet-switched data switching comprises several known methods for forwarding data packets. Each of them depends on the in-circuit hardware and software. Such methods include: forwarding (cut-through), storage and forwarding (store and forward) and the transmission free of fragments (fragment-free). During the pass-through, the switch reads the MAC address as soon as a data packet has been recognized and immediately begins the pass-through or or forwarding after the six bytes have been stored, regardless of the remaining data packets that are still received or received. During storage and forwarding, the entire data packet is stored in a memory, checked for errors and then sent on, based on the MAC address subsequently read. If an error is discovered in this process, the data packet is discarded. Some switches are also known to combine forwarding and storage and forwarding procedures in varying degrees. The procedure "transmission free of fragments" is equivalent to the transmission, with the difference that the first 64 bytes of the data packet are saved before the forwarding takes place. A basis for this procedure is that most errors occur in the first 64 bytes occur, which means for the switch there is an opportunity to find out the errors early without having to accept the delay due to the storage of more than 64 bytes. As a result, the switch collects certain basic information about the data packets to be forwarded, regardless of the type of pre-ringing that is carried out by the switch.
Um zusätzlich etwas über die Informationen der Datenpakete zu erfahren, sind die Switches so konfiguriert, dass sie ihre ei- gene Referenztabelle gestalten, basierend auf erlernten oder erhaltenen Informationen von einem im Netzwerk angeordneten Netzknoten. Derartiges Lernen ist automatisch veranlasst, ohne dass Bedarf für eine Vermittlung seitens eines Netzwerkverwalters besteht. Die Einrichtung einer Referenztabelle wird ge- wohnlich als transparentes Überbrücken (transparent bridging) referenziert. Transparentes Überbrücken umfasst fünf Teile: lernen, fluten, filtern, versenden und altern. Kurz gesagt ist das Lernen ein Verfahren, bei dem der Switch, wenn er einer neuen MAC Adresse begegnet, einfach die Adresse mit dem jewei- ligen Netzknoten zu der eigenen Referenztabelle hinzufügt. Das Fluten ist ein Verfahren, bei dem der Switch einen Netzknoten sucht, dessen Adresse ihm bisher unbekannt ist, und bei dem er dann alle ihm bekannten Netzwerksegmente (ausser das empfangende Segment) mit dem Datenpaket versorgt (flutet) . Folglich wird dann der passende gewünschte Empfänger den Empfang des Pakets quittieren. Mit dieser Quittierung kennt nun der flutende Switch die zwei Netzknoten und deren Standort und kann so eine Verbindung zwischen ihnen herstellen und das Datenpaket übermitteln. Für den Fall, dass der Switch zwei Netzknoten erfasst und feststellt, dass sie das gleiche Netzwerk gemeinsam haben, wird der Switch seine eigene Referenztabelle aktualisieren und sich folglich nicht in die Kommunikation zwischen den beiden miteinander teilenden Knoten einmischen, womit der Teil des Filterns beschrieben wurde. Die Alterung ist eine Form von Reinigung des Speichers des Switch von Adressen, die innerhalb einer festgelegten Zeitperiode nicht benutzt worden sind. Aufgrund dem vorstehend Beschriebenen, kann die Referenztabelle des Switches gestaltet sein und die Information der Netzknotenverbindung ist durch den in dem Switch zugeordneten Speicher verfügbar .In order to additionally learn something about the information of the data packets, the switches are configured so that they design their own reference table based on learned or received information from a network node arranged in the network. Such learning is automatically initiated without any need for mediation by a network administrator. The establishment of a reference table is commonly referred to as transparent bridging. Transparent bridging comprises five parts: learning, flooding, filtering, sending and aging. In short, learning is a process in which the switch, when it encounters a new MAC address, simply adds the address with the respective network node to its own reference table. Flooding is a process in which the switch searches for a network node whose address is previously unknown to it and in which it then supplies (floods) all the network segments known to it (except for the receiving segment) with the data packet. As a result, the appropriate desired recipient will then acknowledge receipt of the packet. With this acknowledgment, the flooding switch now knows the two network nodes and their location and can thus establish a connection between them and transmit the data packet. In the event that the switch detects two network nodes and determines that they have the same network in common, the switch will update its own reference table and consequently will not interfere in the communication between the two nodes sharing, which is the part of the Filtering was described. Aging is a form of cleaning the switch's memory from addresses that have not been used within a specified period of time. On the basis of what has been described above, the reference table of the switch can be designed and the information of the network node connection is available through the memory allocated in the switch.
In herkömmlicher Weise arbeiten Switches auf der Datenverbin- düng oder der zweiten Schicht des OSI Referenzmodells . Einige Switches, die Routern ähnlicher sind und als Layer 3 Switches bekannt sind, arbeiten auf der dritten Schicht des OSI Referenzmodells, d.h. auf der Netzwerkebene. Auf der höchsten Schicht, der AnwendungsSchicht, laufen die Anwendungen, die das Netzwerk steuern. Eine allgemeine Grundlage für die Anwendungen der Netzwerksteuerung ist das Signaling Network Managment Pro- tocol oder das Simple Network Managment Protocol (SNMP) . Folglich sind die meisten vom Netzwerk gesteuerten Einrichtungen mit dem SNMP entsprechend kompatibel . Aus diesem Grund befragen die Anwendungen der Netzwerksteuerung einem Steuerungsagenten, unter Benutzung einer unterstützten Verwaltungsinformationsba- sis (MIB, Management Information Base) . Die Frage wird über SNMP durchgeführt. Das MIB ist ein Aufbewahrungsort von Eigenschaften und Parametern, die von einer Einrichtung des Netzwer- kes gesteuert werden, wie beispielsweise einem Switch. Folglich kommuniziert SNMP über MIB mit dem Switch, erhält eine Information von diesem und bewirkt in anderer Weise die Steuerung des Switches. Diese Information kann einen Fehlerzähler, Datenlast und so weiter umfassen.Switches work in a conventional manner on the data link or the second layer of the OSI reference model. Some switches, which are more similar to routers and are known as Layer 3 switches, operate on the third layer of the OSI reference model, i.e. at the network level. The applications that control the network run on the highest layer, the application layer. A general basis for network control applications is the Signaling Network Management Protocol or the Simple Network Management Protocol (SNMP). As a result, most network controlled devices are compatible with the SNMP. For this reason, network control applications interrogate a control agent using a supported management information base (MIB). The question is carried out via SNMP. The MIB is a repository of properties and parameters that are controlled by a network device, such as a switch. Consequently, SNMP communicates with the switch via MIB, receives information from the switch and controls the switch in another way. This information may include an error counter, data load, and so on.
Zusätzlich ist API (Application Programming Interface) eine Software, die genutzt wird, um die Kommunikation mit den gesteuerten Switches des Netzwerks zu ermöglichen. Grundsätzlich ist API ein Satz einer Standardsoftware von Datenformaten, die Anwendungsprogramme nutzen, um einen Kontakt mit den Netzwerkleistungen aufzubauen.In addition, API (Application Programming Interface) is software that is used to enable communication with the controlled switches of the network. in principle API is a set of standard software of data formats that application programs use to establish contact with network services.
Es ist die Hardware des Switches, die die Datenpakete erkennt und Hash-Funktionen festlegt oder durchführt und eine logische Festlegung der Zuweisung zu einem Netzknoten (über einen Hash- wert) vornimmt. Das oben angeführte Verfahren basiert auf internen (mit Bezug zum Switch) Massnahmen (Hardware und Soft- wäre) . Sind diese erst einmal imlementiert, so bleiben Switches relativ statisch und hinsichtlich ihrer Arbeitsweise vorhersagbar. Mit anderen Worten verhalten sich die Switches nicht dynamisch mit Rücksicht auf die verschiedene Datenlasten und deren Anforderungen. Folglich können gewisse Ports eines Switches stärker durch eine Datenlast belastet sein als andere Ports desselben Switches . Dies stellt ein Problem der Anhäufung von Datenverkehr an dem Switch dar, wodurch der Switch langsamer wird und damit auch die Kommunikation zwischen den jeweiligen Netzknoten und schließlich (in unterschiedlichen Abstufungen) auch die gesamte Netzwerkperformance abnimmt.It is the hardware of the switch that recognizes the data packets and defines or executes hash functions and logically defines the assignment to a network node (via a hash value). The procedure mentioned above is based on internal (with reference to the switch) measures (hardware and software). Once implemented, switches remain relatively static and predictable in terms of how they work. In other words, the switches do not behave dynamically with regard to the different data loads and their requirements. As a result, certain ports on a switch can be more heavily loaded by data than other ports on the same switch. This poses a problem of the accumulation of data traffic on the switch, as a result of which the switch becomes slower and thus also the communication between the respective network nodes and ultimately (in different gradations) the overall network performance also decreases.
Eine bekannte Lösung für dieses Problem umfasst die Einführung einer gewissen Flexibilität in der Hardware des Switches . Diese höhere Flexibilität stellt einen Wechsel zu einer Zahl von Pa- rametern und/oder Hash-Funktionen dar, um so eine stärker ausgeglichene Lastverteilung zu erreichen. Die Wechsel können auf einer Analyse der gegenwärtigen Datenverkehrssituationen und deren Anforderungen basieren. Eine derartige Neustrukturierung kann während des laufenden Betriebs möglich sein. Wie auch im- mer kann die Kommunikation, die bereits schon in logischer Weise einem speziellen Port des Switches zugewiesen worden ist, kann nicht umgeleitet oder umgerichtet werden zu einem anderen Port. Folglich ist eine Lösung zum Umschalten oder zum U ver- teilen von Datenlast erforderlich, worin der Switch dynamischer funktionieren kann, während Datenlast umgeleitet oder neu verteilt werden können, ungeachtet der Tatsache, dass die Datenlasten bereits schon zugewiesen worden sind. Die Lösung muss ebenso flexibel in der Anwendung sein, so dass sie auch für bestehende Switches anwendbar ist, wodurch ihre Leistungsfähigkeit sich erhöht, ohne einen Zwang zum Ersatz der Switches zu haben.A known solution to this problem involves introducing some flexibility in the switch hardware. This higher flexibility represents a change to a number of parameters and / or hash functions in order to achieve a more balanced load distribution. The changes can be based on an analysis of the current traffic situations and their requirements. Such restructuring may be possible during ongoing operations. As always, the communication that has already been logically assigned to a special port of the switch cannot be redirected or redirected to another port. Therefore, a solution to switch over or to the U Data sharing required where the switch can operate more dynamically while data load can be redirected or redistributed regardless of the fact that the data loads have already been allocated. The solution must also be flexible to use, so that it can also be used for existing switches, which increases their performance without being forced to replace the switches.
Die vorliegende Erfindung ist auf die Lösung dieses Problems gerichtet und im kennzeichnenden Teil des Patentanspruches 1 angegeben. Ausgestaltungen sind in den davon abhängigen Patentansprüchen angegeben. Die vorliegende Erfindung ist auf ein Verfahren gerichtet, bei dem ein zum Switch externer Prozessor vorgesehen ist um die Datenlast genau zu untersuchen und festzulegen, ob die Last vorteilhaft einer gewünschten Verteilung ähnelt. Ist dies nicht der Fall, wird die Referenztabelle des Switches gelesen, bearbeitet und dann wieder aktiv geschaltet, so dass nach der Ausführung dieses Vorgangs die bearbeitete Ta- belle den Datenverkehr zu anderen Ports umleitet, wodurch ein vorteilhafteres Verteilungsergebnis erzielt wird.The present invention is directed to solving this problem and specified in the characterizing part of patent claim 1. Refinements are specified in the dependent claims. The present invention is directed to a method in which a processor external to the switch is provided in order to examine the data load in detail and to determine whether the load advantageously resembles a desired distribution. If this is not the case, the switch's reference table is read, processed and then switched back to active, so that after the execution of this process, the processed table redirects the data traffic to other ports, thereby achieving a more advantageous distribution result.
Die vorliegende Erfindung wird mit Bezug auf die Zeichnungen beschrieben, wobei :The present invention will be described with reference to the drawings, in which:
Figur 1 ein Fließdiagramm des Verfahren darstellt, und Figur 2 ein Boxdiagramm eines Systems zur Durchführung des dargestellten Verfahrens angibt.Figure 1 is a flow diagram of the method, and Figure 2 is a box diagram of a system for performing the method shown.
Figur 1 zeigt ein Fließdiagramm mit den Schritten, die von der dargestellten Erfindung durchgeführt werden, um einen gewünschten Lastausgleich innerhalb eines Switches zu erzielen. Das Verfahren beginnt bei Schritt 100 und fährt fort zu Schritt 102, wobei die Information der Datenlast aus dem Switch ausgelesen wird. Wie schon bekannt und oben erörtert, liefern die Switches mehrere Quellen und mehrere verschiedene bedeutende Gruppen von Informationen, die für die Datenlast kennzeichnend sind. Die Quellen der Informationen umfassen SNMP, API, NetzwerkunterStützung, Netzwerkverwalter, Switch Speicher und so weiter. Die Information kann dabei so einfach sein, wie das Zählen von Datenpaketen, die über einen speziellen Port geleitet werden, oder kann genauso Daten von einem Netzknoten ent- halten oder der Daten über Details hinsichtlich der Natur der gesendeten Datenpakete. Die Daten werden für einen oder mehrere Ports des Switches ausgelesen. Nach dem Erhalt der ausgelesenen Lastverteilung des Datenverkehrs, wird ein Vergleich zwischen der ausgelesenen Lastverteilung und der gewünschten Lastvertei- lung im Schritt 104 vorgenommen und bestimmt, ob die ausgelesene Lastverteilung vorteilhaft mit der gewünschten Lastverteilung übereinstimmt. Die Toleranz für diesen Vergleich ist eine Sache der Gestaltung und der Anwendung des Verfahrens. Die dargestellte Erfindung soll auch nicht auf irgendeinen Typus von Daten oder Datenherkünften begrenzt sein.FIG. 1 shows a flow diagram with the steps that are carried out by the illustrated invention in order to achieve a desired load balancing within a switch. The method begins at step 100 and continues to step 102, the information of the data load being read out from the switch. As is well known and discussed above, the switches provide multiple sources and several different significant sets of information indicative of the data load. The sources of the information include SNMP, API, network support, network manager, switch storage and so on. The information can be as simple as counting data packets that are routed via a special port, or it can also contain data from a network node or the data about details regarding the nature of the data packets sent. The data is read out for one or more ports of the switch. After receiving the read load distribution of the data traffic, a comparison is made between the read load distribution and the desired load distribution in step 104 and it is determined whether the read load distribution advantageously corresponds to the desired load distribution. The tolerance for this comparison is a matter of designing and applying the process. The illustrated invention is also not intended to be limited to any type of data or data source.
Wenn die ausgelesenen Daten der gewünschten Lastverteilung vorteilhaft ähneln (Schritt 106) , so kehrt das Verfahren zum Anfang zurück (Schritt 108) . Ähneln die ausgelesenen Daten jedoch nicht der gewünschten Lastverteilung (Schritt 110)-, so wird die Referenztabelle gelesen und genau untersucht (Schritt 112) . Eine Festlegung wird vorgenommen, wie die Referenztabelle bearbeitet werden kann, so dass der aktuell von dem Switch bewältigte Datenverkehr unter den Port des Switches umverteilt wer- den kann, um die gewünschte Verteilung der Verkehrslast zu erreichen. Weil die vorliegende Methode für jede Art von gewünschter Lastverteilung für jede Art von Switch, der mit Pro- cessoren ausgestattete Ports und Mittel zur Datenspeicherung aufweist, geeignet ist, muss der externe Prozessor und seine Programmierbarkeit einen hohen Grad an Flexibilität umfassen. Der vorliegende Prozessor und die Programmierung sind folglich eine Sache der Gestaltung. Nach der Bearbeitung wird die Refe- renztabelle zum Switch zwecks Implementierung zurück gesendet (Schritt 116) . Das Verfahren kehrt dann nach einem vorher ausgewählten Zeitraum zum Anfang zurück (Schritt 118) und die oben genannten Schritte werden wiederholt.If the read data advantageously resemble the desired load distribution (step 106), the method returns to the beginning (step 108). However, if the data read out does not resemble the desired load distribution (step 110), the reference table is read and examined in detail (step 112). A determination is made as to how the reference table can be processed so that the data traffic currently handled by the switch can be redistributed among the ports of the switch in order to achieve the desired distribution of the traffic load. Because the present method for every type of desired load distribution for every type of switch, the processor-equipped ports and means for data storage is suitable, the external processor and its programmability must include a high degree of flexibility. The present processor and programming are therefore a matter of design. After processing, the reference table is sent back to the switch for implementation (step 116). The method then returns to the beginning after a preselected period of time (step 118) and the above steps are repeated.
Abbildung 2 beschreibt ein Boxdiagramm eines Systems zur Durchführung des erfinderischen Verfahrens. Wie gezeigt, umfasst eine Switch 10 vier Bauteile: eine Schalttabelle 20, eine Hash- Funktion 22, eine Prozessorschnittstelle 24 und ein Register 26. Die Arbeitsaufgaben von diesen einzelnen Bauteilen sind o- ben bereits beschrieben worden. Zur Wiederholung nochmals eine kurze Beschreibung: Die Schalttabelle 20 zeigt an, über welchen Port des Switches Pakete für einen bestimmten Netzknoten weitergeleitet werden. Die Hash-Funktion 22 ist ein Verarbeiten von Informationen gemäß speziellen Kriterien. Die Prozessor- schnittsteile 24 ermöglicht die Kommunikation mit dem Prozessor 16 über eine Verbindung 14. Das Register 26 ist ein temporärer Speicher, der zum Empfangen, Halten und Transferieren von Daten genutzt wird. Der Prozessor 16 umfasst eine Software 18 zum Bearbeiten von Algorithmen. Zahlreiche Segmente 12 ermöglichen die Kommunikation mit dem Switch 10, jede von ihnen mit Verbin- dungs- oder Teilnehmerschnittstellen. Wie mit dieser vorliegenden Erfindung angewendet, können die Algorithmen so ausgewählt sein, dass die ihre Ausführung in einer gewünschten Verteilung des Datenlast resultiert. Die Gestaltung der Algorithmen ist dem auf seinem Gebiet erfahrenen Fachmann bekannt.Figure 2 describes a box diagram of a system for performing the inventive method. As shown, a switch 10 comprises four components: a switch table 20, a hash function 22, a processor interface 24 and a register 26. The work tasks of these individual components have already been described above. A brief description for repetition: The switch table 20 shows the port of the switch via which packets for a specific network node are forwarded. The hash function 22 is a processing of information according to special criteria. The processor interfaces 24 enable communication with the processor 16 via a connection 14. The register 26 is a temporary memory which is used for receiving, holding and transferring data. The processor 16 includes software 18 for processing algorithms. Numerous segments 12 enable communication with the switch 10, each of them with connection or subscriber interfaces. As applied with this present invention, the algorithms can be selected so that their execution results in a desired distribution of the data load. The design of the algorithms is known to the expert experienced in his field.
Während der Algorithmus hier für ein einfaches Zählen der Pakete genutzt wird, können auch andere Kriterien und Implementie- rungen vorgesehen sein. Zum Beispiel: Vergleichen der statischen Hash-Vorgänge des Switches; ein letztes Bit des srcMAC, welches null oder eins ist, und ein Hash-Wert auf dem Port; die Anzahl der pro Port beförderten Rahmen aus dem Register; andere Funktionen von SNMP Funktionen, welche im Detail über die Verkehrslastsituation Auskunft geben, qualitativ abgesetzt von der reinen Zählung, wie zum Beispiel das Sortieren nach Geschäftskunden, nach Privatkunden, der Menge von Verbindungsschnittstellen, usw.While the algorithm is used here for simply counting the packets, other criteria and implementations stanchions are provided. For example: comparing the static hashes of the switch; a last bit of the srcMAC, which is zero or one, and a hash on the port; the number of frames transported from the register per port; other functions of SNMP functions that provide detailed information about the traffic load situation, qualitatively separated from the pure count, such as sorting by business customer, by private customer, the amount of connection interfaces, etc.
Während die vorliegende Erfindung in der oben genannten Ausführung beschrieben wurde, wird dem auf seinem Gebiet erfahrenen Fachmann klar sein, dass andere Ausführungen auffindbar sind, ohne von dem Kern dieser Erfindung abzuweichen, wie zum Bei- spiel Ausführungen ohne Link-Aggregation und Hash-Funktion um die Lastverteilung auf logisch voneinander separierten Verbindungsschnittstellen zu bestimmen. While the present invention has been described in the above embodiment, it will be apparent to those skilled in the art that other embodiments can be found without departing from the essence of this invention, such as embodiments without link aggregation and hash function to determine the load distribution on logically separated connection interfaces.
BezugszeichenlisteLIST OF REFERENCE NUMBERS
10 Switch 12 Segment 14 Switch-Prozessor-Verbindung 16 Prozessor 18 Software für die Bearbeitung von Algorithmen 100 Anfang 102 Auslesen der Daten 104 Abfrage Lastausgleich 106 Abfrageantwort ist „ja" 108 Rückkehr zum Anfang 109 Abfrageantwort ist „nein" 110 Auslesen der Referenztabelle 112 Bearbeiten der Referenztabelle 114 Austauschen der ursprünglichen Referenztabelle mit der bearbeiteten Referenztabelle 116 Rückkehr zum Anfang 118 Ende 10 switch 12 segment 14 switch-processor connection 16 processor 18 software for processing algorithms 100 start 102 read out data 104 query load balancing 106 query answer is "yes" 108 return to start 109 query answer is "no" 110 read out reference table 112 edit the reference table 114, replacing the original reference table with the edited reference table 116, returning to the beginning 118 end
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102004028454A DE102004028454A1 (en) | 2004-06-11 | 2004-06-11 | Method for selective load balancing |
| PCT/EP2005/005535 WO2005122498A1 (en) | 2004-06-11 | 2005-05-21 | Method for selective load compensation |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP1754345A1 true EP1754345A1 (en) | 2007-02-21 |
Family
ID=34970279
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP05751717A Withdrawn EP1754345A1 (en) | 2004-06-11 | 2005-05-21 | Method for selective load compensation |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US20080285456A1 (en) |
| EP (1) | EP1754345A1 (en) |
| CN (1) | CN101147365A (en) |
| DE (1) | DE102004028454A1 (en) |
| WO (1) | WO2005122498A1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20160013976A1 (en) * | 2014-07-14 | 2016-01-14 | Futurewei Technologies, Inc. | Wireless Through Link Traffic Reduction |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6345041B1 (en) * | 1996-10-24 | 2002-02-05 | Hewlett-Packard Company | Method and apparatus for automatic load-balancing on multisegment devices |
| US20030237016A1 (en) * | 2000-03-03 | 2003-12-25 | Johnson Scott C. | System and apparatus for accelerating content delivery throughout networks |
| US20020174246A1 (en) * | 2000-09-13 | 2002-11-21 | Amos Tanay | Centralized system for routing signals over an internet protocol network |
| AU2002220005A1 (en) * | 2000-12-04 | 2002-06-18 | Rensselaer Polytechnic Institute | System for proactive management of network routing |
| US7123581B2 (en) * | 2001-10-09 | 2006-10-17 | Tellabs Operations, Inc. | Method and apparatus to switch data flows using parallel switch fabrics |
| US7239608B2 (en) * | 2002-04-26 | 2007-07-03 | Samsung Electronics Co., Ltd. | Router using measurement-based adaptable load traffic balancing system and method of operation |
-
2004
- 2004-06-11 DE DE102004028454A patent/DE102004028454A1/en not_active Withdrawn
-
2005
- 2005-05-21 CN CN200580018975.6A patent/CN101147365A/en active Pending
- 2005-05-21 US US11/628,902 patent/US20080285456A1/en not_active Abandoned
- 2005-05-21 EP EP05751717A patent/EP1754345A1/en not_active Withdrawn
- 2005-05-21 WO PCT/EP2005/005535 patent/WO2005122498A1/en not_active Ceased
Non-Patent Citations (1)
| Title |
|---|
| See references of WO2005122498A1 * |
Also Published As
| Publication number | Publication date |
|---|---|
| US20080285456A1 (en) | 2008-11-20 |
| WO2005122498A1 (en) | 2005-12-22 |
| DE102004028454A1 (en) | 2006-01-05 |
| CN101147365A (en) | 2008-03-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE102015102871B4 (en) | Distributed routing table lookup technologies | |
| DE69827201T2 (en) | Method and system for server-network switch-multiple connection | |
| DE69802259T2 (en) | METHOD AND DEVICE FOR SETTING UP A TAP POINT IN A SWITCHING NETWORK | |
| DE69834122T2 (en) | CONNECTING SUPPORT IN A HIGH-PERFORMANCE NETWORK DEVICE | |
| DE69934644T2 (en) | Network switching equipment with distributed based on use diversion databases | |
| DE69522666T2 (en) | NETWORK WITH SECURE, FAST PACKAGE BROKERAGE AND GUARANTEED SERVICE QUALITY | |
| DE60303026T2 (en) | SYSTEM, METHOD AND PRODUCT FOR MANAGING DATA TRANSPORT IN A NETWORK | |
| DE69634928T2 (en) | Network management system with improved node discovery and monitoring | |
| DE60031274T2 (en) | MULTIPLE CONNECTION METHOD AND DEVICE FOR VITUOUS PORTS | |
| DE69026400T2 (en) | System and method for connecting applications over different networks of data processing systems | |
| DE602004004942T2 (en) | Virtual network addresses | |
| DE69327576T2 (en) | Parallel computer system | |
| DE69434330T2 (en) | TRANSMISSION DEVICE AND METHOD | |
| DE602005003142T2 (en) | DEVICE AND METHOD FOR SUPPORTING CONNECTION MANUFACTURING IN AN OFFLOAD OF NETWORK PROTOCOL PROCESSING | |
| DE69220564T2 (en) | Support of connectionless services in the ATM network using partial connections | |
| DE19929516B4 (en) | High-speed network switch | |
| DE602004005785T2 (en) | Dynamic routing in a content-based distributed network | |
| DE602004004991T2 (en) | Automated installation of network devices with information about rules, authentication and device-specific data | |
| DE602004005242T2 (en) | CENTRALIZED CONFIGURATION OF LINK-SCOPE TYPE-MANAGED OBJECTS IN NETWORKS BASED ON THE INTERNET PROTOCOL (IP) | |
| DE10296675T5 (en) | Virtual networking system and method in a processing system | |
| DE60130844T2 (en) | Autonomous OSPF system with a main network separated into two sections | |
| DE112016002952T5 (en) | Systems and methods for processing packets in a computer network | |
| DE60131615T2 (en) | TOPOLOGY DETERMINATION IN ATM NETWORKS | |
| DE60133067T2 (en) | Method and apparatus for reassembling packets in an exchange | |
| DE602004012529T2 (en) | Control of multicast traffic |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| 17P | Request for examination filed |
Effective date: 20061102 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): DE ES FR GB IT |
|
| RAP1 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: NOKIA SIEMENS NETWORKS GMBH & CO. KG |
|
| DAX | Request for extension of the european patent (deleted) | ||
| RBV | Designated contracting states (corrected) |
Designated state(s): DE ES FR GB IT |
|
| RAP3 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: NOKIA SIEMENS NETWORKS S.P.A. |
|
| RAP3 | Party data changed (applicant data changed or rights of an application transferred) |
Owner name: NOKIA SIEMENS NETWORKS GMBH & CO. KG |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN |
|
| 18D | Application deemed to be withdrawn |
Effective date: 20081202 |