DE102011078424A1 - Methods and apparatus for creating addresses for subscribers in a network - Google Patents
Methods and apparatus for creating addresses for subscribers in a network Download PDFInfo
- Publication number
- DE102011078424A1 DE102011078424A1 DE102011078424A DE102011078424A DE102011078424A1 DE 102011078424 A1 DE102011078424 A1 DE 102011078424A1 DE 102011078424 A DE102011078424 A DE 102011078424A DE 102011078424 A DE102011078424 A DE 102011078424A DE 102011078424 A1 DE102011078424 A1 DE 102011078424A1
- Authority
- DE
- Germany
- Prior art keywords
- address
- addresses
- subscriber
- value
- hash
- 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.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5038—Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/622—Layer-2 addresses, e.g. medium access control [MAC] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/672—Short addresses
Abstract
Die Erfindung betrifft Verfahren und Vorrichtungen zum Erstellen von Adressen für Teilnehmer in einem Netzwerk derart, dass Hash-Kollisionen aufgrund der Zuweisung der Adressen vermieden werden.The invention relates to methods and apparatus for creating addresses for subscribers in a network such that hash collisions due to the assignment of the addresses are avoided.
Description
Die Erfindung betrifft Verfahren und Vorrichtungen zum Erstellen von Adressen für Teilnehmer in einem Netzwerk.The invention relates to methods and apparatus for creating addresses for subscribers in a network.
Neben klassischen Kommunikationsnetzen tauschen mehr und mehr autarke Teilnehmer, wie Netzknoten oder Endgeräte, Daten miteinander aus. So existiert neben großen Netzen mit mehreren hundert Teilnehmern auch eine Vielzahl von Kleinnetzen mit bspw. bis zu 100 Teilnehmern.In addition to traditional communication networks, more and more autonomous subscribers, such as network nodes or terminals, exchange data with one another. Thus, in addition to large networks with several hundred participants, a variety of small networks with, for example, up to 100 participants.
Eine Adressierung dieser Teilnehmer geschieht bspw. mittels MAC-Adressen (MAC – Media Access Control) mit einem 2^48 Adressraum (^ bedeutet zur Potenz, also 2^48 ist equivalent zu 2 hoch 48), IPv4-Adressen mit einem 2^32 Adressraum und IPv6-Adressen mit einem 2^128 Adressraum (IP – Internet Protocol, v4/v6 – Version 4/6).An addressing of these subscribers happens, for example, by means of MAC addresses (MAC - Media Access Control) with a 2 ^ 48 address space (^ means to power, so 2 ^ 48 is equivalent to 2 high 48), IPv4 addresses with a 2 ^ 32 Address space and IPv6 addresses with a 2 ^ 128 address space (IP - Internet Protocol, v4 / v6 - version 4/6).
Die jeweilige Adresse der Teilnehmer wird an bestimmten Punkten im Netzwerk gespeichert, wie bspw. in einem Switch, der eine Verteilung von Datenpaketen für Teilpfade gemäß OSI-Schicht 2 (OSI-Open Systems Interconnection) steuert.The respective address of the subscribers is stored at certain points in the network, such as in a switch that controls a distribution of data packets for subpaths according to OSI layer 2 (OSI Open Systems Interconnection).
Hierbei ist nachteilig, dass gerade bei großen Netzwerken mit einer Vielzahl von Teilnehmern eine Speicherung der Adressen einen erheblichen Speicheraufwand bedeutet. Zudem ist ein Suchen einer Adresse mit vielen Stellen in einer Forwarding Table (= Weiterleitungstabelle) aufwendig.It is disadvantageous that, especially in large networks with a large number of subscribers, storing the addresses means a considerable amount of memory. In addition, a search for an address with many places in a forwarding table (= forwarding table) is expensive.
Daher können in einer Weiterleitungstabelle anstelle von „echten” Adressen verkürzte Adressen, die im Folgenden als Adresswerte bezeichnet werden, eingesetzt werden. Hierzu wird die Adresse bspw. mittels einer Hash-Funktion [1] in den Adresswert umgeformt, also bspw. von der Adresse mit 48 bit in einen Adresswert mit 12 bit. Hierbei ist offensichtlich, dass eine Reduktion der Adresslänge den Speicherbedarf, wie auch eine Beschleunigung bei der Suche eines Adresswerts in Weiterleitungstabelle erzielt.Therefore, in a routing table, abbreviated addresses, which will be referred to as address values in the following, may be used instead of "real" addresses. For this purpose, the address is, for example, converted by means of a hash function [1] into the address value, that is, for example, from the address with 48 bits into an address value with 12 bits. It is obvious here that a reduction of the address length achieves the memory requirement as well as an acceleration in the search for an address value in the routing table.
Jedoch bedingt die Verkürzung der Adresse auch, dass verschiedene Adressen durch den Hash-Algorithmus auf einen identischen Adresswert codiert werden. Dies wird als Hash-Kollision bezeichnet.However, the shortening of the address also requires that different addresses be encoded by the hash algorithm to an identical address value. This is called a hash collision.
Ein Lösungsansatz hierzu besteht darin, bei auftretenden Hash-Kollisionen einen Speicherbereich in Form einer Liste vorzusehen, in dem Adressen mit identischem Hash-Wert eingetragen werden. Dies löst das Problem nicht zufriedenstellend, da eine Anzahl an Listeneinträgen und damit eine zulässige Anzahl an Adressen mit identischem Hash-Wert weiterhin begrenzt sind. Bei einer Suche nach einer Adresse mittels des Adresswerts entsteht dabei ein nicht unerheblicher Zeitaufwand.One approach to this problem is to provide a memory area in the form of a list in the case of hash collisions, in which addresses with the same hash value are entered. This does not solve the problem satisfactorily because a number of list entries and thus a permissible number of addresses with the same hash value are still limited. When searching for an address by means of the address value, this results in a considerable amount of time.
Ein weiterer Lösungsansatz ist in [2] beschrieben. Dabei wird eine Implementierung von einer für eine bestimmte Adressverteilung optimierte Hash-Funktion in LAN-Switches (LAN-Local Area Network) vorgestellt. Dieser Lösungsansatz ist jedoch mit einem nicht unerheblichen Implementierungsaufwand verbunden und scheidet daher in der Regel für kommerzielle Anwendungen aus.Another approach is described in [2]. An implementation of a hash function optimized for a specific address distribution in LAN local area network switches is presented. However, this approach is associated with a considerable implementation effort and therefore usually leaves for commercial applications.
Daher stellt sich die Aufgabe, Verfahren und Vorrichtungen anzugeben, die eine Hash-Kollision vermeiden und eine einfache Realisierung ermöglichen.Therefore, the object is to provide methods and devices that avoid a hash collision and allow easy implementation.
Diese Aufgabe wird durch die unabhängigen Ansprüche gelöst. Weiterbildungen der Erfindung sind den abhängigen Ansprüchen zu entnehmen.This object is solved by the independent claims. Further developments of the invention can be found in the dependent claims.
Die Erfindung betrifft ein Verfahren zum Erstellen einer ersten Adresse eines ersten Teilnehmers in einem Netzwerk mit dem ersten Teilnehmer und zumindest einem zweiten Teilnehmer, wobei der zweite Teilnehmer eine zweite Adresse aufweist, und eine Länge der Adressen länger ist als eine Länge von zu den Adressen zugehörigen Adresswerten, mit folgenden Schritten:
- i) Bereitstellen des zweiten Adresswerts des zweiten Teilnehmers durch Anwenden einer Hash-Funktion auf Basis der zweiten Adresse;
- ii) Erstellen der ersten Adresse aus einer Menge an möglichen Adressen derart, dass sowohl die erste Adresse unterschiedlich zu der zweiten Adresse ist als auch der erste Adresswert des ersten Teilnehmers, der durch Anwenden der Hash-Funktion auf Basis der ersten Adresse generiert wird, unterschiedlich zu dem zweiten Adresswert ist.
- i) providing the second address value of the second subscriber by applying a hash function based on the second address;
- ii) creating the first address from a set of possible addresses such that both the first address is different than the second address and the first address value of the first user generated by applying the hash function based on the first address to the second address value.
Dieses Verfahren ist vorteilhaft, da eine aufwändige Fehlerbehandlung im Falle von Hash-Kollisionen vermieden werden kann. Zudem wird ein Speicherplatz zum Speichern von z. B. Weiterleitungsinformationen für Adresswerte in Routern oder Switches reduziert, da keine Ausnahmefälle für Hash-Kollisionen gespeichert werden müssen. Zudem wird eine Zeit zur Verarbeitung von Listen anhand von Adresswerten reduziert, da keine Routinen für Hash-Kollisionen bearbeitet werden müssen. This method is advantageous because a complex error handling in the case of hash collisions can be avoided. In addition, a storage space for storing z. For example, it reduces routing information for address values in routers or switches because there are no exceptional cases for hash collisions. In addition, a time to process lists based on address values is reduced because no hash collision routines need to be edited.
Unter der Adresse wird eine Adresse eines Teilnehmers in einem Netzwerk verstanden, z. B. Absender- und/oder Empfängeradresse. Eine Länge der Adresse, z. B. 48 bit, ist länger als eine Länge des zu der Adresse zugeordneten Adresswerts, z. B. 12bit. So weist die Adresse im Allgemeinen mehr Bitstellen auf als der mittels Hash-Funktion zuordnenbare Adresswert. Unter Adresse kann eine IP-Adresse nach IPv4 oder IPv6 (IP-Internet Protocol, v4/v6- Version 4/6) oder auch eine MAC-Adresse (MAC-Media Access Control) verstanden werden. Nähere Einzelheiten dazu sind in der Einleitung zu finden.The address means an address of a subscriber in a network, e.g. B. sender and / or recipient address. A length of the address, z. B. 48 bit, is longer than a length of the address value assigned to the address, z. Eg 12bit. Thus, the address generally has more bits than the address value that can be assigned by means of the hash function. Address can be understood as an IP address according to IPv4 or IPv6 (IP Internet Protocol, v4 / v6 version 4/6) or even a MAC address (MAC Media Access Control). Further details can be found in the introduction.
Unter der Hash-Funktion ist jeder Algorithmus zu verstehen, der die Adresse in einen Adresswert umformt, der eine geringere Länge als die Adresse ergibt. Eine Hash-Funktion kann ein klassischer Hash-Algorithmus sein, wie bspw. aus einem Dokument [1] bekannt.The hash function is any algorithm that transforms the address into an address value that is shorter in length than the address. A hash function can be a classical hash algorithm, such as known from a document [1].
Zudem kann die Erfindung durch ein Verfahren zum Erstellen einer ersten Adresse eines ersten Teilnehmers für ein Netzwerk verwirklicht werden, das zumindest zwei weitere Teilnehmer mit zugeordneten weiteren Adressen aufweist, und eine Länge der Adressen länger ist als eine Länge von zu den Adressen zugehörigen Adresswerten, bei dem folgende Schritte durchlaufen werden:
Ermitteln von zwei weiteren Adresswerten unter Anwendung einer Hash-Funktion auf Basis der zwei weiteren Adressen; Erstellen, falls die zwei weiteren Adresswerte identisch sind, der ersten Adresse für den ersten weiteren Teilnehmer als erster Teilnehmer unter Berücksichtigung einer zweiten Adresse, die die weitere Adresse des zweiten weiteren Teilnehmers ist, aus einer Menge an möglichen Adressen derart, dass sowohl die erste Adresse unterschiedlich zu der zweiten Adresse ist als auch der erste Adresswert des ersten Teilnehmers, der durch Anwenden der Hash-Funktion auf Basis der ersten Adresse generiert wird, unterschiedlich zu einem zweiten Adresswert, der der weitere Adresswert des zweiten weiteren Teilnehmers ist, wird;
Zuweisen der ersten Adresse dem ersten weiteren Teilnehmer, falls die zwei weiteren Adresswerte identisch sind.In addition, the invention can be implemented by a method for creating a first address of a first subscriber for a network, which has at least two further subscribers with associated further addresses, and a length of the addresses is longer than a length of address values belonging to the addresses following the steps below:
Determining two further address values using a hash function based on the two further addresses; Create, if the two further address values are identical, the first address for the first further subscriber as the first subscriber, taking into account a second address, which is the further address of the second further subscriber, from a set of possible addresses such that both the first address different from the second address, as well as the first address value of the first subscriber generated by applying the hash function based on the first address is different from a second address value which is the further address value of the second further subscriber;
Assigning the first address to the first further subscriber if the two further address values are identical.
Diese Variante des Verfahrens ermöglicht in einem existierenden System Adressen, die paarweise eine Hash-Kollision verursachen, derart zu ändern, dass die Hash-Kollision vermieden werden kann. Die sich daraus ergebenden Vorteile sind analog zu dem vorher beschriebenen Verfahren.This variant of the method makes it possible in an existing system to change addresses which cause a hash collision in pairs in such a way that the hash collision can be avoided. The resulting advantages are analogous to the previously described method.
In einer ersten Erweiterung des Verfahrens wird das Erstellen der ersten Adresse folgendermaßen durchgeführt:
- a) Wählen einer der möglichen Adressen als erste Adresse;
- b) Generieren des ersten Adresswerts;
- c) Vergleichen des ersten Adresswerts mit dem zweiten Adresswert;
- d) Wiederholen der Schritte a) bis d) falls der erste Adresswert identisch zu dem zweiten Adresswert ist.
- a) selecting one of the possible addresses as the first address;
- b) generating the first address value;
- c) comparing the first address value with the second address value;
- d) repeating steps a) to d) if the first address value is identical to the second address value.
Hierdurch wird eine einfache und zuverlässige Realisierung des Verfahrenschritts „Erstellen der ersten Adresse” ermöglicht.This allows a simple and reliable implementation of the method step "creating the first address".
Alternativ zu der ersten Erweiterung kann das Erstellen der ersten Adresse in einer zweiten Erweiterung folgendermaßen durchgeführt werden:
Erstellen der Menge an möglichen Adressen derart, dass alle Adresswerte, gebildet durch Anwenden der Hash-Funktion auf Basis der möglichen Adressen, jeweils paarweise unterschiedlich sind, und die zweite Adresse nicht Teil der Menge ist; Auswahl einer der möglichen Adressen der Menge als erste Adresse.As an alternative to the first extension, creating the first address in a second extension can be done as follows:
Creating the set of possible addresses such that all address values formed by applying the hash function based on the possible addresses are each pairwise different, and the second address is not part of the set; Selection of one of the possible addresses of the set as the first address.
Hierdurch wird eine einfache und zuverlässige Realisierung des Verfahrenschritts „Erstellen der ersten Adresse” ermöglicht. Zudem erzielt diese zweite Erweiterung in der Regel eine schnellere Auswahl als die erste Erweiterung, da ein „Ausprobieren” von Kandidaten für die erste Adresse, wie bei der ersten Erweiterung, entfällt.This allows a simple and reliable implementation of the method step "creating the first address". In addition, this second enhancement usually achieves a faster selection than the first enhancement, since a "try out" of candidates for the first address, as in the first extension, is eliminated.
Die zweite Erweiterung kann in vorteilhafter Weise durch ein Löschen der ersten Adresse aus der Menge nach Auswahl einer der möglichen Adresse ergänzt werden, wodurch die Auswahl weiter beschleunigt wird, da nur nicht vergebene Adressen bei der Auswahl zu berücksichtigt werden.The second extension can be supplemented in an advantageous manner by deleting the first address from the set after selection of one of the possible addresses, whereby the selection is further accelerated, since only unallocated addresses are taken into account in the selection.
Die Erfindung betrifft überdies eine Vorrichtung zum Erstellen einer ersten Adresse eines ersten Teilnehmers in einem Netzwerk mit dem ersten Teilnehmer und zumindest einem zweiten Teilnehmer, wobei der zweite Teilnehmer eine zweite Adresse aufweist, und eine Länge der Adressen länger ist als eine Länge der zu den Adressen zugehörigen Adresswerte, mit folgenden Mitteln:
Erstes Mittel zum Bereitstellen des zweiten Adresswerts des zweiten Teilnehmers durch Anwenden einer Hash-Funktion auf Basis der zweiten Adresse;
Zweites Mittels zum Auswählen der ersten Adresse aus einer Menge an möglichen Adressen derart, dass sowohl die erste Adresse unterschiedlich zu der zweiten Adresse ist als auch der erste Adresswert des ersten Teilnehmers, der durch Anwenden der Hash-Funktion auf Basis der ersten Adresse generiert wird, unterschiedlich zu dem zweiten Adresswert ist. The invention further relates to an apparatus for establishing a first address of a first party in a network with the first party and at least one second party, the second party having a second address, and a length of the addresses being longer than a length of the addresses associated address values, by the following means:
First means for providing the second address value of the second party by applying a hash function based on the second address;
Second means for selecting the first address from a set of possible addresses such that both the first address is different from the second address and the first address value of the first user generated by applying the hash function based on the first address; is different from the second address value.
Die Vorteile der Vorrichtung sind analog zu denjenigen der korrespondierenden Verfahrensschritte.The advantages of the device are analogous to those of the corresponding method steps.
Die Erfindung betrifft auch eine Vorrichtung zum Erstellen einer ersten Adresse eines ersten Teilnehmers für ein Netzwerk, das zumindest zwei weiteren Teilnehmern mit zugeordneten weiteren Adressen aufweist, und die Adressen länger sind als zu den Adressen zugehörige Adresswerte mit folgenden Mitteln:
Erstes Mittel zum Ermitteln der zwei weiteren Adresswerte unter Anwendung einer Hash-Funktion auf Basis der zwei weiteren Adressen;
Zweites Mittel zum Erstellen, falls die zwei weiteren Adresswerte identisch sind, der ersten Adresse für den ersten weiteren Teilnehmer als erster Teilnehmer unter Berücksichtigung einer zweiten Adresse, die die weitere Adresse des zweiten weiteren Teilnehmers ist, aus einer Menge an möglichen Adressen derart, dass sowohl die erste Adresse unterschiedlich zu der zweiten Adresse ist als auch der erste Adresswert des ersten Teilnehmers, der durch Anwenden der Hash-Funktion auf Basis der ersten Adresse generiert wird, unterschiedlich zu einem zweiten Adresswert, der der weitere Adresswert des zweiten weiteren Teilnehmers ist, ist;
Drittes Mittel zum Zuweisen der ersten Adresse dem ersten weiteren Teilnehmer, falls die zwei weiteren Adresswerte identisch sind.The invention also relates to a device for generating a first address of a first subscriber for a network, which has at least two further subscribers with associated further addresses, and the addresses are longer than address values associated with the addresses, by the following means:
First means for determining the two further address values using a hash function based on the two further addresses;
Second means for creating, if the two further address values are identical, the first address for the first further subscriber as the first subscriber, taking into account a second address which is the further address of the second further subscriber, from a set of possible addresses such that both the first address different from the second address is as well as the first address value of the first user generated by applying the hash function based on the first address different from a second address value being the further address value of the second another user ;
Third means for assigning the first address to the first further subscriber if the two further address values are identical.
Die Vorteile dieser Erweiterung der Vorrichtung sind analog zu denjenigen der korrespondierenden Verfahrensschritte.The advantages of this extension of the device are analogous to those of the corresponding method steps.
In einer ersten Erweiterung eine der Vorrichtungen ist das zweite Mittel zum Erstellen der ersten Adresse derart eingerichtet, dass folgende Schritte durchführbar sind:
- a) Wählen einer der möglichen Adressen als erste Adresse;
- b) Generieren des ersten Adresswerts;
- c) Vergleichen des ersten Adresswerts mit dem zweiten Adresswert;
- d) Wiederholen der Schritte a) bis d) falls der erste Adresswert identisch zu dem zweiten Adresswert ist.
- a) selecting one of the possible addresses as the first address;
- b) generating the first address value;
- c) comparing the first address value with the second address value;
- d) repeating steps a) to d) if the first address value is identical to the second address value.
Die Vorteile dieser Erweiterung der Vorrichtung sind analog zu denjenigen der korrespondierenden Verfahrensschritte.The advantages of this extension of the device are analogous to those of the corresponding method steps.
In einer zweiten Erweiterung einer der Vorrichtungen ist das zweite Mittel zum Erstellen der ersten Adresse derart eingerichtet, dass folgende Schritte durchführbar sind: Erstellen der Menge an möglichen Adressen derart, dass alle Adresswerte, gebildet durch Anwenden der Hash-Funktion auf Basis der möglichen Adressen, jeweils paarweise unterschiedlich sind, und die zweite Adresse nicht Teil der Menge ist; Auswahl einer der möglichen Adressen der Menge als erste Adresse.In a second extension of one of the devices, the second means for creating the first address is arranged such that the following steps are feasible: generating the set of possible addresses in such a way that all address values formed by applying the hash function on the basis of the possible addresses, in pairs are different, and the second address is not part of the set; Selection of one of the possible addresses of the set as the first address.
Die Vorteile dieser Erweiterung der Vorrichtung sind analog zu denjenigen der korrespondierenden Verfahrensschritte.The advantages of this extension of the device are analogous to those of the corresponding method steps.
Vorteilhafterweise ist das zweite Mittel ferner zum Löschen der ersten Adresse aus der Menge nach Auswahl einer der weiteren Adressen ausgebildet. Hierdurch wird die Auswahl weiter beschleunigt, da nur noch nicht vergebene Adressen bei der Auswahl zu berücksichtigt werden.Advantageously, the second means is further adapted to delete the first address from the set after selecting one of the further addresses. This further speeds up the selection, as only addresses that have not yet been allocated are taken into account in the selection.
Vorzugsweise kann das Verfahren in einem Switch eines Netzwerks eingesetzt werden, wobei das Netzwerk insbesondere ein administriertes Netzwerk ist. Hierdurch kann der in dem administrierten Netzwerk (= Locally Administered Network gemäß
Die Erfindung und ihre Weiterbildungen werden anhand von Figuren näher erläutert. Es zeigenThe invention and its developments are explained in more detail with reference to figures. Show it
Elemente mit gleicher Funktion und Wirkungsweise sind in den Figuren mit denselben Bezugzeichen versehen.Elements with the same function and mode of operation are provided in the figures with the same reference numerals.
Der zweite Teilnehmer T2 weist eine zweite Adresse L2 mit 01.44.8A.BC.AA.64 auf. In den folgenden Ausführungen werden alle Adressen in hexadezimaler Schreibweise dargestellt. Bei Einschalten des ersten Teilnehmers T1 sendet dieser eine Anfragenachricht an die Zuweisungseinheit DEV. Die Zuweisungseinheit sucht aus einer Menge ML der möglichen Adressen eine erste Adresse L1 für den ersten Teilnehmer aus. Hierzu wird wie folgt vorgegangen:The second subscriber T2 has a second address L2 with 01.44.8A.BC.AA.64. In the following explanations, all addresses are displayed in hexadecimal notation. When the first subscriber T1 is switched on, the latter sends a request message to the allocation unit DEV. The allocation unit selects from a set ML of possible addresses a first address L1 for the first subscriber. The procedure is as follows:
Erster Schritt S1:First step S1:
Es wird ein zweiter Adresswert K2 des zweiten Teilnehmers T2 durch Anwenden einer Hash-Funktion HASH auf Basis der zweiten Adresse L2 gebildet. Die Hash-Funktion, siehe beispielsweise Dokument [1], bildet die Adresse mit 48 bit in einen Adresswert mit 8 bit ab. In diesem Beispiel verwirft die Hash-Funktion die ersten 40 bit der Adresse und generiert einen Rest, der sich durch Division der letzten 8 bit der Adresse durch einen Wert 7 ergibt. Somit errechnet sich der zweite Adresswert K2 zu 2.A second address value K2 of the second subscriber T2 is formed by applying a hash function HASH on the basis of the second address L2. The hash function, see for example document [1], maps the address with 48 bits into an address value with 8 bits. In this example, the hash function discards the first 40 bits of the address and generates a remainder resulting from dividing the last 8 bits of the address by a value of 7. Thus, the second address value K2 is calculated to be 2.
Zweiter Schritt S2:Second step S2:
Die Zuweisungseinheit entnimmt die erste Adresse L1 aus der Menge ML. Die erste Adresse L1 ist EF.01.B2.F9.79.37. Der dazugehörige erste Adresswert K1 ergibt sich zu 6. Somit sind sowohl die erste und zweite Adresse als auch der erste und zweite Adresswert unterschiedlich, so dass eine gültige erste Adresse ermittelt wurde.The assignment unit extracts the first address L1 from the set ML. The first address L1 is EF.01.B2.F9.79.37. The associated first address value K1 results in 6. Thus, both the first and second address and the first and second address value are different, so that a valid first address was determined.
Diese erste Adresse übermittelt die Zuweisungseinheit DEV in Form einer Antwortnachricht an den ersten Teilnehmer. Somit stehen im Netzwerk nur Adressen zur Verfügung, deren Adresswert eindeutig einer Adresse zuordnenbar ist. Dadurch wird eine Hash-Kollision vermieden. Der Begriff Hash-Kollision ist aus dem Stand der Technik bekannt.This first address transmits the assignment unit DEV in the form of a reply message to the first subscriber. Thus, only addresses are available in the network whose address value can be uniquely assigned to an address. This avoids a hash collision. The term hash collision is known from the prior art.
In einer Variante des obigen Beispiels wählt die Zuordnungseinheit DEV zunächst für den ersten Teilnehmer die erste Adresse L1 gleich A1.B2.C3.D4.E5.41 aus. Der dazugehörige erste Adresswert ist 2. Da der erste und zweite Adresswert K1 = K2 identisch ist, wird die obige Auswahl der ersten Adresse verworfen und solange nach einer ersten Adresse in der Menge der möglichen Adressen gesucht, bis eine erste Adresse gefunden ist, deren dazugehörige erste Adresswert unterschiedlich zur zweiten Adresswert ist.In a variant of the above example, the allocation unit DEV first selects the first address L1 equal to A1.B2.C3.D4.E5.41 for the first subscriber. The associated first address value is 2. Since the first and second address value K1 = K2 is identical, the above selection of the first address is discarded and searched for a first address in the set of possible addresses until a first address is found, the associated first address value is different from the second address value.
Alternativ dazu kann die Zuordnungseinheit die Menge an möglichen Adressen vorab festlegen. Hierbei werden nur Adressen in die Menge ML aufgenommen, die zu Adresswerten führen, die nicht durch bereits in der Menge ML enthaltene Adressen erzeugt werden. Für die obige Hash-Funktion können maximal 7 verschiedene Adresswerte 0 bis 6 erzeugt werden, so dass maximal 7 Adressen in die Menge ML aufgenommen werden können, wie folgende Liste zeigt:
Zur Vereinfachung der Verwaltung dieser Liste können bereits zugewiesene Adressen aus der Menge ML gelöscht werden. Daher ergibt sich dann nach Zuweisung der ersten und zweiten Adresse folgende neue Liste:
In
Somit ist der Switch in der Lage anhand des Adresswerts die weitere Route bzw. Teilpfad des Pakets bzw. der Nachricht zu bestimmen.Thus, the switch is able to use the address value to determine the further route or partial path of the packet or message.
Dieses Ausführungsbeispiel zeigt die Erfindung anhand weniger Teilnehmer. Bei mehreren hundert Teilnehmern mit langen Adressen, z. B. 128 bit, erzielt die Erfindung eine erhebliche Speicherplatzreduktion in der obigen Weiterleitungsliste, die aufgrund der Adresswerte effizient nach dem gesuchten Eintrag durchschritten werden kann.This embodiment shows the invention based on fewer participants. With several hundred participants with long addresses, z. B. 128 bit, the invention achieves a significant memory space reduction in the above forwarding list, which can be efficiently traversed by the address value based on the address sought.
Die Erfindung und ihre Weiterbildungen können mittels einer Vorrichtung DEV zum Erstellen einer ersten Adresse L1 eines ersten Teilnehmers T1 in einem Netzwerk NET mit dem ersten Teilnehmer T1 und zumindest einem zweiten Teilnehmer T2 realisiert werden, wobei der zweite Teilnehmer T2 eine zweite Adresse L2 aufweist, und eine Länge der Adressen L1, L2 länger ist als eine Länge von zu den Adressen L1, L2 zugehörigen Adresswerten K1, K2, mit folgenden Mitteln M1, M2:
Erstes Mittel M1 zum Bereitstellen des zweiten Adresswerts K2 des zweiten Teilnehmers T2 durch Anwenden einer Hash-Funktion HASH auf Basis der zweiten Adresse L2;
Zweites Mittels M2 zum Auswählen der ersten Adresse L1 aus einer Menge ML an möglichen Adressen derart, dass sowohl die erste Adresse L1 unterschiedlich zu der zweiten Adresse L2 ist als auch der erste Adresswert K1 des ersten Teilnehmers T1, der durch Anwenden der Hash-Funktion HASH auf Basis der ersten Adresse L1 generiert wird, unterschiedlich zu dem zweiten Adresswert K2 ist.The invention and its developments can be realized by means of a device DEV for creating a first address L1 of a first subscriber T1 in a network NET with the first subscriber T1 and at least one second subscriber T2, wherein the second subscriber T2 has a second address L2, and a length of the addresses L1, L2 is longer than a length of address values K1, K2 associated with the addresses L1, L2, by the following means M1, M2:
First means M1 for providing the second address value K2 of the second subscriber T2 by applying a hash function HASH on the basis of the second address L2;
Second means M2 for selecting the first address L1 from a set ML of possible addresses such that both the first address L1 is different from the second address L2 and the first address value K1 of the first subscriber T1, which is obtained by applying the hash function HASH is generated on the basis of the first address L1 is different from the second address value K2.
Ferner kann die Vorrichtung DEV zum Erstellen einer ersten Adresse L1 eines ersten Teilnehmers T1 für ein Netzwerk NET ausgestaltet sein, das zumindest zwei weiteren Teilnehmern TW1, TW2 mit zugeordneten weiteren Adressen LW1, LW2 aufweist, und eine Länge der Adressen L1, L2, LW1, LW2 länger ist als eine Länge von zu den Adressen L1, L2, LW1, LW2 zugehörigen Adresswerten K1, K2, KW1, KW2 mit folgenden Mitteln M1, M2, M3:
Erstes Mittel M1 zum Ermitteln der zwei weiteren Adresswerte KW1, KW2 unter Anwendung einer Hash-Funktion HASH auf Basis der zwei weiteren Adressen LW1, LW2;
Zweites Mittel M2 zum Erstellen, falls die zwei weiteren Adresswerte KW1, KW2 identisch sind, der ersten Adresse L1 für den ersten weiteren Teilnehmer TW1 als erster Teilnehmer T1 unter Berücksichtigung einer zweiten Adresse L2, die die weitere Adresse LW2 des zweiten weiteren Teilnehmers TW2 ist, aus einer Menge ML an möglichen Adressen derart, dass sowohl die erste Adresse L1 unterschiedlich zu der zweiten Adresse L2 ist als auch der erste Adresswert K1 des ersten Teilnehmers T1, der durch Anwenden der Hash-Funktion HASH auf Basis der ersten Adresse L1 generiert wird, unterschiedlich zu einem zweiten Adresswert K2, der der weitere Adresswert KW2 des zweiten weiteren Teilnehmers TW2 ist, ist;
Drittes Mittel M3 zum Zuweisen der ersten Adresse L1 dem ersten weiteren Teilnehmer TW1, falls die zwei weiteren Adresswerte KW1, KW2 identisch sind.Furthermore, the device DEV can be designed to create a first address L1 of a first subscriber T1 for a network NET, which has at least two further subscribers TW1, TW2 with associated further addresses LW1, LW2, and a length of the addresses L1, L2, LW1, LW2 is longer than a length of address values K1, K2, KW1, KW2 belonging to the addresses L1, L2, LW1, LW2 by the following means M1, M2, M3:
First means M1 for determining the two further address values KW1, KW2 using a hash function HASH based on the two further addresses LW1, LW2;
Second means M2 for generating, if the two further address values KW1, KW2 are identical, the first address L1 for the first further subscriber TW1 as the first subscriber T1, taking into account a second address L2, which is the further address LW2 of the second further subscriber TW2, from a set ML of possible addresses such that both the first address L1 is different from the second address L2 and the first address value K1 of the first user T1 generated by applying the hash function HASH on the basis of the first address L1, different from a second address value K2, which is the further address value KW2 of the second further subscriber TW2;
Third means M3 for assigning the first address L1 to the first further subscriber TW1 if the two further address values KW1, KW2 are identical.
Die Erfindung und ihre Weiterbildungen wurden anhand mehrerer Beispiele erläutert. Die Erfindung ist jedoch nicht nur auf die Beispiele beschränkt. Zudem können die Ausführungsbeispiele auch kombiniert werden.The invention and its developments have been explained with reference to several examples. However, the invention is not limited only to the examples. In addition, the embodiments can also be combined.
Literaturliterature
-
[1] Hash Function, Wikipedia Artikel, gefunden am 21. Juni 2011,
http://en.wikipedia.org/wiki/Hash_function http://en.wikipedia.org/wiki/Hash_function
[2]
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte Nicht-PatentliteraturCited non-patent literature
- IEEE 802 [0032] IEEE 802 [0032]
- Standard IEEE 802 [0039] Standard IEEE 802 [0039]
- Huntley, C. et al. „Effect of Hash Collisions an the Performance of LAN Switching Devices and Networks”, IEEE Conference an Local Computer Networks, ISBN:1-4244-0418-5, 14–16 Nov. 2006, Seiten 280–284 [0055] Huntley, C. et al. "Effect of Hash Collisions on the Performance of LAN Switching Devices and Networks," IEEE Conference on Local Computer Networks, ISBN: 1-4244-0418-5, Nov. 14-16, 2006, pp. 280-284 [0055]
Claims (11)
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102011078424A DE102011078424A1 (en) | 2011-06-30 | 2011-06-30 | Methods and apparatus for creating addresses for subscribers in a network |
PCT/EP2012/061215 WO2013000711A1 (en) | 2011-06-30 | 2012-06-13 | Methods and apparatuses for creating addresses for subscribers in a network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102011078424A DE102011078424A1 (en) | 2011-06-30 | 2011-06-30 | Methods and apparatus for creating addresses for subscribers in a network |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102011078424A1 true DE102011078424A1 (en) | 2013-01-03 |
Family
ID=46317385
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102011078424A Ceased DE102011078424A1 (en) | 2011-06-30 | 2011-06-30 | Methods and apparatus for creating addresses for subscribers in a network |
Country Status (2)
Country | Link |
---|---|
DE (1) | DE102011078424A1 (en) |
WO (1) | WO2013000711A1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10300155B2 (en) | 2015-12-31 | 2019-05-28 | Washington University | Alpha-synuclein ligands |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060248079A1 (en) * | 2005-04-28 | 2006-11-02 | Freescale Semiconductor Incorporated | Method and apparatus for finding a perfect hash function and making minimal hash table for a given set of keys |
DE602004012387T2 (en) * | 2003-01-21 | 2009-04-02 | Telefonaktiebolaget Lm Ericsson (Publ) | SYSTEM, METHOD AND FUNCTION FOR ETHERNET MAC ADDRESS MANAGEMENT |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7085271B2 (en) * | 2002-03-14 | 2006-08-01 | Hewlett-Packard Development Company, L.P. | Method and system for performing flow based hash transformation to generate hash pointers for a network device |
GB2415855B (en) * | 2004-07-02 | 2007-09-19 | Toshiba Res Europ Ltd | Communications apparatus providing local addressing |
WO2009156777A1 (en) * | 2008-06-23 | 2009-12-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Media access control (mac) address collision avoidance in ethernet switched networks |
-
2011
- 2011-06-30 DE DE102011078424A patent/DE102011078424A1/en not_active Ceased
-
2012
- 2012-06-13 WO PCT/EP2012/061215 patent/WO2013000711A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE602004012387T2 (en) * | 2003-01-21 | 2009-04-02 | Telefonaktiebolaget Lm Ericsson (Publ) | SYSTEM, METHOD AND FUNCTION FOR ETHERNET MAC ADDRESS MANAGEMENT |
US20060248079A1 (en) * | 2005-04-28 | 2006-11-02 | Freescale Semiconductor Incorporated | Method and apparatus for finding a perfect hash function and making minimal hash table for a given set of keys |
Non-Patent Citations (5)
Title |
---|
http://en.wikipedia.org/wiki/Hash_function |
Huntley, C. et al. "Effect of Hash Collisions an the Performance of LAN Switching Devices and Networks", IEEE Conference an Local Computer Networks, ISBN:1-4244-0418-5, 14-16 Nov. 2006, Seiten 280-284 |
IEEE 802 |
KNUTH, D. E.: The Art of Computer Programming: Sorting and Searching, Vol. 3, Addison Wesley 1973, Seiten 506 - 509 * |
Standard IEEE 802 |
Also Published As
Publication number | Publication date |
---|---|
WO2013000711A1 (en) | 2013-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE69834122T2 (en) | CONNECTING SUPPORT IN A HIGH-PERFORMANCE NETWORK DEVICE | |
DE102006012614B4 (en) | Method and apparatus for the passage of packets through a means for network address translation | |
DE102015102871B4 (en) | Distributed routing table lookup technologies | |
DE102012220834B4 (en) | Method and device for implementing a flexible virtual local network | |
DE60311800T2 (en) | METHOD AND DEVICE FOR IMPROVING NETWORK GUIDANCE STEERING | |
DE69531337T2 (en) | Routing transaction messages in a digital communication network | |
DE60313371T2 (en) | Use of tree-like "bitmap" data structures | |
DE602006000007T2 (en) | Automatic detection of pseudo-wire peer addresses in Ethernet-based networks | |
DE69730392T2 (en) | Connection matrix based multi-cost routing | |
DE69827201T2 (en) | Method and system for server-network switch-multiple connection | |
DE60221228T2 (en) | METHOD AND SYSTEM FOR ANYCAST GUIDING BETWEEN SEVERAL WIRES | |
DE69727930T2 (en) | SUMMARY OF CONNECTIONS IN COMMUNICATION COMMUNICATION NETWORKS | |
DE60320309T2 (en) | Multicast router with detection function of any source multicast nodes in source-specific multicast groups | |
DE60214670T2 (en) | METHOD AND DEVICE FOR CONDUCTIVITY TABLE MANAGEMENT | |
DE112015006397B4 (en) | DNS optimization for multi-source download with hybrid access | |
DE102016104264B4 (en) | Transmission of multi-destination packets in overlay networks | |
DE112016002952T5 (en) | Systems and methods for processing packets in a computer network | |
DE112008002665T5 (en) | Deploy an abstraction layer in a cluster switch that has multiple switches | |
DE60133175T2 (en) | COMMUNICATION NETWORK | |
DE112005002981T5 (en) | Maskable content-addressable memory | |
US9363227B2 (en) | Multicast source in group address mapping | |
DE602005001578T2 (en) | Bridge for translation between local Ethernet and 1394A connectors for consumer electronics devices | |
DE202014010912U1 (en) | Consistent hashing based on exact match with hardware load balancing application | |
DE102011078424A1 (en) | Methods and apparatus for creating addresses for subscribers in a network | |
DE112014001106T5 (en) | Home gateway device and packet transfer method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R012 | Request for examination validly filed | ||
R002 | Refusal decision in examination/registration proceedings | ||
R003 | Refusal decision now final | ||
R003 | Refusal decision now final |
Effective date: 20140923 |