DE102008010145A1 - PEER-TO-PEER-Kommunikationssystem und -verfahren - Google Patents

PEER-TO-PEER-Kommunikationssystem und -verfahren Download PDF

Info

Publication number
DE102008010145A1
DE102008010145A1 DE102008010145A DE102008010145A DE102008010145A1 DE 102008010145 A1 DE102008010145 A1 DE 102008010145A1 DE 102008010145 A DE102008010145 A DE 102008010145A DE 102008010145 A DE102008010145 A DE 102008010145A DE 102008010145 A1 DE102008010145 A1 DE 102008010145A1
Authority
DE
Germany
Prior art keywords
peers
peer
network
connections
overlay
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.)
Granted
Application number
DE102008010145A
Other languages
English (en)
Other versions
DE102008010145B4 (de
Inventor
Eric Kanata Cooper
Alan B. Johnston
Philip Ottawa Matthews
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Avaya Canada Corp
Original Assignee
Avaya Canada Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Avaya Canada Corp filed Critical Avaya Canada Corp
Publication of DE102008010145A1 publication Critical patent/DE102008010145A1/de
Application granted granted Critical
Publication of DE102008010145B4 publication Critical patent/DE102008010145B4/de
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17337Direct connection machines, e.g. completely connected computers, point to point communication networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2567NAT traversal for reachability, e.g. inquiring the address of a correspondent behind a NAT server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5069Address allocation for group communication, multicast communication or broadcast communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1065Discovery involving distributed pre-established resource-based relationships among peers, e.g. based on distributed hash tables [DHT] 

Abstract

Verfahren und System zur Ermöglichung einer Kommunikation zwischen Peers in einem Peer-to-Peer(P2P)-Netz bei Vorhandensein von Netzadressenumsetzern (NATs). Das Verfahren umfasst: Zuordnung eines eindeutigen Peer-Kennzeichens zum jeweiligen Peer aus der Mehrzahl von Peers im P2P-Netz; Aufbau einer Überlagerungstopologie, die jeden Peer aufgrund des eindeutigen Peer-Kennzeichens des jeweiligen Peers in einem strukturierten Verbindungsmuster mit einer Untermenge aus der Mehrzahl von Peers verbindet, wobei jeder Peer aus der Mehrzahl von Peers mehr Verbindungen zu nahe gelegenen Peers und weniger Verbindungen zu entfernten Peers hat; und Routing von Nachrichten zwischen Peers durch die aufgebaute Überlagerungstopologie.

Description

  • Querverweis zu dazugehörigen Anmeldungen
  • Diese Anmeldung bezieht sich auf die gleichzeitig anhängige US-Anmeldung des Anmelders, die gleichzeitig hiermit eingereicht wurde, mit dem Titel "Urladen in Peer-to-Peer-Netzen mit Netzadressenumsetzern", die hiermit durch diese Erwähnung ausdrücklich mit aufgenommen wird.
  • Bereich der Erfindung
  • Die vorliegende Erfindung bezieht sich auf den Bereich der Erleichterung ener Peer-to-Peer-Kommunikation über ein Netz, in dem ein Netzadressenumsetzer vorhanden ist.
  • Hintergrund
  • Die Network Address Translation (NAT) führt bei der Peer-to-Peer(P2P)-Kommunikation zu gut bekannten Schwierigkeiten, da die am Netz beteiligten Peers eventuell an einer global gültigen IP(Internet-Protokoll)-Adresse nicht erreichbar sind.
  • Insbesondere besteht die derzeitige Internet-Adressenarchitektur aus einem globalen Adressierungsbereich (d. h. öffentlichen IP-Adressen) und vielen privaten Adressierungsbereichen (d. h. privaten IP-Adressen), die durch NATs miteinander verbunden sind. Nur mit Peers (auch Knoten, Kunden, usw. genannt) im globalen Adressierungsbereich kann man leicht von einer beliebigen Stelle im Netz Kontakt aufnehmen, weil sie eindeutige, global routbare IP-Adressen haben. Peers in Privatnetzen können sich mit anderen Peers im selben Privatnetz in Verbindung set zen, und sie können üblicherweise TCP(Transmission Control Protocol)- oder UDP(User Datagram Protocol)-Verbindungen zu Peers, die im globalen Adressierungsbereich eingerichtet sind, öffnen. Die derzeitige Adressenarchitektur macht es jedoch schwierig für zwei Peers in verschiedenen Privatnetzen, direkt miteinander Kontakt aufzunehmen, oder für einen Peer in einem öffentlichem Netz, Kontakt mit einem Peer in einem Privatnetz herzustellen. Grundsätzlich besteht diese Situation, weil NATs vorübergehende öffentliche Endpunkte für abgehende Verbindungen zuweisen und die Adressen und Port-Nummern in Paketen, welche diese Sitzungen umfassen, umsetzen, während sie üblicherweise den gesamten ankommenden Verkehr sperren, sofern sie nicht anders konfiguriert sind.
  • Es wurden viele Techniken vorgeschlagen, um die Schwierigkeiten bei der direkten Peer-to-Peer-Kommunikation zu überwinden, aber diese sind nicht typischerweise universell anwendbar, weil das NAT-Verhalten nicht standardisiert ist.
  • Zusammenfassung
  • Bestimmte Ausführungsbeispiele der vorliegenden Erfindung können ein Verfahren bereitstellen, um die Kommunikation zwischen einer Mehrzahl von Peers in einem Peer-to-Peer(P2P)-Netz bei Vorhandensein von Netzadressenumsetzern (NATs) zu ermöglichen, wobei das Verfahren umfasst: (a) Zuordnung eines eindeutigen Peer-Kennzeichens zum jeweiligen Peer aus der Mehrzahl von Peers im P2P-Netz; (b) Aufbau einer Überlagerungstopologie, die jeden Peer aufgrund des eindeutigen Peer-Kennzeichens des jeweiligen Peers in einem strukturierten Verbindungsmuster mit einer Untermenge aus der Mehrzahl von Peers verbindet, wobei jeder Peer aus der Mehrzahl von Peers mehr Verbindungen zu nahe gelegenen Peers und weniger Verbindungen zu entfernten Peers hat; und (c) Routing von Nachrichten zwischen Peers durch die aufgebaute Überlagerungstopologie.
  • Bestimmte Ausführungsbeispiele der vorliegenden Erfindung können eine Netzüberlagerungstopologie bereitstellen, um die Kommunikation zwischen einer Mehrzahl von Peers in einem Peer-to-Peer-Netz bei Vorhandensein von Netzadressenumsetzern zu ermöglichen, wobei die Netzüberlagerungstopologie umfasst: ein eindeutiges Peer-Kennzeichen, das dem jeweiligen Peer aus der Mehrzahl von Peers im P2P-Netz zuweisbar ist; und eine Überlagerungstopologie, die jeden Peer aufgrund des eindeutigen Peer-Kennzeichens des jeweiligen Peers in einem strukturierten Verbindungsmuster mit einer Untermenge aus der Mehrzahl von Peers verbindet, wobei jeder Peer aus der Mehrzahl von Peers mehr Verbindungen zu nahe gelegenen Peers und weniger Verbindungen zu entfernten Peers hat, wobei das strukturierte Verbindungsmuster so angeordnet ist, um durch die aufgebaute Überlagerungstopologie das Routing von Nachrichten zwischen Peers zu ermöglichen.
  • Kurze Beschreibung der Zeichnungen
  • 1 ist eine schematische Darstellung eines Peer-to-Peer-Netzes mit einer Mehrzahl von Peers, die gemäß Ausführungsformen der vorliegenden Erfindung in einer Überlagerungstopologie strukturiert werden sollen;
  • 2 ist eine schematische Darstellung einer teilweisen Vermaschungs-Überlagerungstopologie gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 3 ist eine schematische Darstellung eines Abschnitts des Netzes von 1, um einen Peer-Zugangsvorgang gemäß einer Ausführungsform der vorliegenden Erfindung zu veranschaulichen;
  • 4 ist eine schematische Darstellung einer Überlagerungstopologie mit einem strukturierten Verbindungsmuster gemäß einer Ausführungsform der vorliegenden Erfindung;
  • 5 ist ein Ablaufdiagramm, das einen Vorgang der Hinzufügung eines neuen Peers zu einem Netz gemäß einer Ausführungsform der vorliegenden Erfindung darstellt; und
  • 6 ist ein Ablaufdiagramm, das einen Vorgang der Ermöglichung der Kommunikation zwischen Peers in einem Netz gemäß einer Ausführungsform der vorliegenden Erfindung darstellt.
  • Ausführliche Beschreibung
  • 1 zeigt eine Netztopologie 10 einschließlich einer repräsentativen Gruppe von Peers 12, die in einer P2P Überlagerungstopologie (der Einfachheit halber "Überlagerung" genannt) strukturiert werden sollen.
  • Eine Überlagerung ist effektiv ein Netz, das auf ein anderes Netz aufgebaut ist. Knoten/Peers in der Überlagerung sind mittels virtueller oder logischer Verknüpfungen verbunden, von denen jede einem Pfad, typischerweise durch viele physikalische Verknüpfungen, im zugrunde liegenden Netz entspricht.
  • Die Netztopologie 10 von 1 enthält eine Reihe von Teilnetzen 14, 16, 18, 20, 22, 24 und 26, wobei jedes einen oder mehrere Peers 12 enthält, und das Internet 28. Die Teilnetze 18 und 22 verwenden öffentliche IP-Adressen, da sie Teil des globalen Adressierungsbereichs sind. Die Teilnetze 14, 16, 20, 24 und 26 verwenden private IP-Adressen, da sich zwischen dem jeweiligen Teilnetz und dem Internet 28 NATs (Netzadressenumsetzer) 30 befinden. Die Teilnetze 24 und 26 teilen sich einen einzigen NAT 30. Das Teilnetz 20 zeigt eine kaskadische NAT-Anordnung, bei der sich zwei NATs 30 zwischen dem Teilnetz 20 und dem Internet 28 befinden.
  • Der Aufbau von Verbindungen zwischen Peers in einem Netz durch NATs wird allgemein als NAT-Traversal bezeichnet. Eine Anzahl auf NAT-Verhalten basierender bekannter NAT-Traversal-Protokolle umfasst: Simple Traversal of UDP over NAT's (einfaches Traversal von UDP über NATs) (STUN); Traversal Using Relay NAT (mit Relais-NAT arbeitendes Traversal) (TURN); Session Border Controller (Sitzungsgrenzsteuerung) (SBC); und UDP-Lochstanzen. Eine Anzahl auf NAT-Steuerung basierender bekannter NAT-Traversal-Protokolle umfasst: Realm-Specific IP (realm-spezifisches IP) (RSIP); NAT-Port-Abbildungs-Protokoll; und Universal Plug and Play (UPnP). Ein NAT-Traversal-Protokoll, in dem mehrere verschiedene Protokolle kombiniert sind, wird Interactive Connectivity Establishment (interaktiver Konnektivitäts-Aufbau) (ICE) genannt.
  • Die Ausführungsformen der vorliegenden Erfindung beschreiben verschiedene Überlagerungs- und dazugehörige Verfahren, um eine Kommunikation zwischen Peers zu ermöglichen.
  • Teilweise Vermaschungs-Überlagerung/Verbindungen
  • 2 zeigt eine repräsentative teilweise Vermaschungs-Überlagerung 50, wobei sich in diesem Beispiel jeder Peer 12 hinter einem (nicht abgebildeten) NAT mit einschränkenden Filterungsrichtlinien befindet. Grundsätzlich baut jeder Peer 12 in der Überlagerung 50 (mit durchgezogenen Linien dargestellte) Verbindungen zu einigen der anderen Peers 12 auf, um eine teilweise Vermaschung der Verbindungen zwischen den Peers 12 aufzubauen. Nach Erstellung der teilweisen Vermaschungs-Überlagerung 50 können die Peers 12 dann Nachrichten mit Hilfe der aufgebauten Verbindungen routen. Einmal aufgebaut, wird eine Verbindung so lange aufrechterhalten, wie es von mindestens einem Peer gewünscht wird. Die Aufrechterhaltung einer Verbindung erfordert es typischerweise, dass regelmäßig Nachrichten ausgetauscht werden.
  • Die teilweise Vermaschungs-Überlagerung 50 stellt einen Ausgleich dar zwischen einer Ring-Überlagerung, bei der jeder Peer nur mit zwei Nachbar-Peers verbunden ist, und einer vollständigen Vermaschungs-Überlagerung, bei der alle Peer-Paare verbunden sind, während es immer noch möglich ist, Nachrichten über NATs zu übermitteln.
  • Von Fall zu Fall müssen Verbindungen zur Überlagerung 50 hinzugefügt oder aus ihr entfernt werden, wenn Peers sich dem Netz anschließen oder das Netz verlassen. Die Hinzufügung einer neuen Verbindung erfordert es typischerweise, dass die Signalisierung für die neue Verbindung entlang bestehender Verbindungen geroutet wird. Mit Bezug auf 2 möchte zum Beispiel Peer 12X eine Verbindung zu Peer 12Y aufbauen. Da sich Peer 12Y hinter einem NAT 30 mit einer einschränkenden Filterungsrichtlinie befindet, kann Peer 12X keine Aufforderung zum Aufbau einer Verbindung direkt an Peer 12Y (Linie 52) senden. Um diese Einschränkung zu adressieren, sendet Peer 12X die Aufforderung zum Aufbau einer Verbindung (gestrichelte Linien 54) durch bestehende Verbindungen in der Überlagerung 50. Nachdem die Aufforderung zum Aufbau einer Verbindung an Peer 12Y übermittelt worden ist, verwenden Peer 12X und 12Y Standard-NAT-Traversal-Techniken, um eine Verbindung einzuleiten und aufrechtzuhalten.
  • Eine verallgemeinerte Überlagerungstopologie verwendet einen Mindestsatz von Verbindungen, um sicherzustellen, dass Nachrichten zwischen jedem beliebigen Paar von Peers übermittelt werden können. Die spezifische Anzahl von verwendeten Verbindungen ist abhängig von der Art des für das Routing von Nachrichten zwischen Peers im Netz verwendeten Mechanismus. Grundsätzlich kann das Routing, wenn mehr Verbindungen vorhanden sind, mit weniger Sprüngen erfolgen. Jede Verbindung verbraucht jedoch Ressourcen (wie z. B. Speicher, Rechenzyklen am Peer selbst, Bandbreite am zugrundeliegenden Netz, usw.), so dass die Minimierung der Anzahl von Verbindungen, ohne die Routingeffizienz zu verschlechtern, ein Faktor bei der Auslegung einer Überlagerung ist.
  • Zusätzlich zu den aufgrund einer Routingauslegung geschaffenen Verbindungen können weitere Verbindungen für anwendungsspezifische Zwecke nützlich sein. Zum Beispiel können die in 2 mit den durchgezogenen Linien dargestellten Verbindungen geschaffen werden, um sicherzustellen, dass es sowohl möglich als auch angemessen effizient ist, Nachrichten zwischen einem beliebigen Paar von Peers im Netz 50 zu routen. Wenn jedoch die Peers 12X und 12Y sehr umfangreiche Nachrichten austauschen müssen oder in regelmäßigen/häufigen Abständen Nachrichten austauschen müssen, kann es günstig sein, die neue Verbindung 52 hinzuzufügen, um diesen Nachrichtenaustauch zu optimieren.
  • Repräsentativer Peer
  • 3 zeigt eine beispielhafte Anordnung 80 des Teilnetzes 14 von 1. Das Teilnetz 14 enthält eine Gruppe von Peers 12, die sich alle hinter dem NAT 30 befinden. Bei dieser Art von Topologie können ein oder mehrere der Peers 12 im Teilnetz 14 als repräsentativer Peer 12R "gewählt" oder "ernannt" werden, um im Namen der anderen Peers 12 im Teilnetz 14 zu handeln.
  • Die Anordnung 80 schafft zwei Arten von Verbindungen: (1) Verbindungen zwischen dem repräsentativen Peer 12R, die den NAT 30 passieren (siehe gestrichelte Linie 86) und (2) Verbindungen zwischen dem repräsentativen Peer 12R und den örtlichen Peers 12 im Teilnetz 14, die den NAT 30 nicht passieren (siehe gestrichelte Linien 90).
  • Strukturiertes Nachrichtenroutiung/symmetrisches Interesse
  • Ein strukturiertes Schema erstellt ein Verbindungsmuster, das beim Routing genutzt werden kann. Strukturiertes Nachrichten-Routing kann zum Beispiel auf der "Konvertierung" eines DHT(Distributed Hash Table = verteilte Hash-Tabelle)-Nachschlageschemas in einen Routing-Algorithmus basieren. Insbesondere wird ein DHT-Schema zum Nachschlagen eines Datenelements angeschaut als Schema des Routings zu demjenigen Peer, der die Daten hält. Wenn das Routing auf dem Peer-Kennzeichen eines gesuchten Knotens basiert, kann der Prozess als Routing-Algorithmus betrachtet werden.
  • Genauer gesagt, wenn ein Muster von Verbindungen gegeben ist (wie mit Bezug auf 2 besprochen), so sind verschiedene Muster dieser Verbindungen möglich. Die Überlagerung 50 ermöglicht es, dass ein Peer 12 einen Anruf bei einem anderen Peer 12 tätigt, jenen Status eines Peers (oder Anwenders) publiziert und eine Verbindung zu einem anderen Peer in der Überlagerung 50 erstellt. Ein strukturiertes Schema ermöglicht es, beim Routen von Nachrichten zwischen Peers das Verbindungsmuster zwischen Peers 12 zu nutzen.
  • Die Grundstruktur der Verbindungstopologie sollte den Routing-Mechanismus der Überlagerung 50 unterstützen. Zum Beispiel kann eine DHT als Grundlage für ein strukturiertes Schema verwendet werden, indem jedem Peer ein eindeutiges Kennzeichen zugeordnet wird (z. B. aufgrund von Attributen eines Peers: Netzadresse, laufende Nummer des Herstellers, MAC(Media Access Control)-Adresse, usw.). Die Attribute des Peers sind üblicherweise "gehasht", unter Verwendung von 1-Weg-Hash-Funktionen (wie z. B. MD5 [Message-Digest-Algorithmus 5], SHA-1 [Secure-Hash-Algorithmus]), um das eindeutige Peer-Kennzeichen zu erstellen.
  • In einem der Beispiele kann das eindeutige Peer-Kennzeichen verwendet werden, um Peers in einen konzeptionellen/virtuellen Ring zu setzen. Jeder Peer unterhält dann Verbindungen zu Peers, die sich an verschiedenen Orten befinden, wobei er den Ring im Uhrzeigersinn durchläuft. Bei diesem strukturierten Verbindungsschema kann eine Nachricht an einen Peer (Q) an seinen Ort im Ring adressiert werden, und ein dazwischenliegender Peer (I) kann die Nachricht an einen Peer (S) in der dem Peer (Q) zunächst liegenden Verbindungstabelle des dazwischenliegenden Peers (I) weiterleiten.
  • Eine DHT-basierte Verbindungstopologie wird erstellt, um den für die Indizierung und Lokalisierung von Ressourcen im Netz erforderlichen Aufwand zu verteilen. Bei einem VoIP(Voice Over IP = Sprache über IP)-Kommunikationsüberlagerungsnetz sind die Peers im Allgemeinen auf Computern laufende Telefone oder Telefonieanwendungen, und die Ressourcen sind im Allgemeinen Menschen, die miteinander kommunizieren wollen. Jeder Ressource im System sind normalerweise ein oder mehrere Kennzeichen (z. B. eine Rufnummer oder eine eingetragene Adresse) zugeordnet. Ein DHT-basiertes Überlagerungsnetz kann effektiv dieselbe 1-Weg-Hash-Funktion, die zur Erstellung des eindeutigen Peer-Kennzeichens (wie weiter oben besprochen) verwendet wurde, "wiederverwenden", um ein eindeutiges Ressourcen-Kennzeichen zu erstellen. Jeder Peer 12 in der Überlagerung 50 übernimmt dann einen Teil der Zuständigkeit für die Speicherung von Informationen über die verfügbaren Ressourcen. Zum Beispiel ist in einer Chord-basierten DHT-Überlagerung ein Peer zuständig für die Verwaltung der Informationen über die Ressourcen, dessen Ressourcen-Kennzeichen seinem Peer-Kennzeichen am nächsten ist, dieses jedoch nicht überschreitet. Deshalb würden, wenn der Hash der eingetragenen Adresse eines Anwenders X wäre, die Kontakt- und Status-Informationen für jenen Anwender von demjenigen Peer gespeichert, dessen Peer-Kennzeichen X am nächsten ist, X jedoch nicht überschreitet.
  • Zusätzlich zu der vom Überlagerungsnetz 50 angewandten Routing-Struktur muss beim Aufbau von Verbindungstopologien auch eine Eigenschaft, die symmetrisches Interesse genannt wird, berücksichtigt werden. Ein Verbindungsschema weist ein symmetrisches Interesse auf, wenn zu dem Zeitpunkt, da ein Peer 12X eine Verbindung mit einem anderen Peer 12Y wünscht, Peer 12Y auch eine Verbindung zu Peer 12X wünscht. Symmetrisches Interesse ist eine nützliche Eigenschaft von Verbindungsschemen, weil Verbindungen durch NATs 30 bidirektional sind und weil für beide Peers 12X und 12Y Verwaltungsdaten der Nachrichtenübermittlung entstehen, um eine Verbindung aufzubauen und aufrechtzuerhalten.
  • Es wird nun Bezug genommen auf 4, die ein strukturiertes Verbindungsmuster 92 zeigt, welches ein symmetrisches Interesse aufweist, da jeder Peer 12 Verbindungen zu den Peers 12 unterhält, die sich in exponentiell zunehmenden Abständen befinden und sowohl in einer Anordnung im Uhrzeigersinn 94 als auch in einer Anordnung entgegen dem Uhrzeigersinn 96 um einen virtuellen Ring 98 herum angeordnet sind. Insbesondere veranschaulicht das Muster 92 eine Verbindungstopologie aus der Perspektive eines einzelnen Knotens (d. h. Peer PA). Angenommen, das Peer-Kennzeichen für PA ist 0, so kann eine Hash-Tabelle Adressen für Peers mit den Kennzeichen: 20, 21, 22, 2n/2, 2n-2, 2n-1 enthalten. Bei dieser Art von Anordnung würde der Peer PA den Peer PB in seine Verbindungstabelle mit aufnehmen und dadurch ein symmetrisches Interesse aufweisen.
  • Jeder Peer hat mehr Verbindungen zu "nahe gelegenen" Peers und weniger Verbindungen zu "entfernten" Peers, wenn die Verbindungen zwischen den Peers auf diese Weise aufgebaut werden. Die Begrifft "nahe gelegen" und "entfernt" basieren auf den vom Überlagerungsnetz (wie weiter oben besprochen) zugeordneten eindeutigen Peer-Kennzeichen und spiegeln nicht notwendigerweise eine geografische oder körperliche Nähe oder körperliche Netzsprungzählungen wieder. Vom Standpunkt eines Peers (d. h. Peer PA) aus gesehen, veranschaulicht das strukturierte Verbindungsmuster 92 schematisch ein symmetrisches Interesse dadurch, dass in einem unteren Halbkreis SL mehr Verbindungen und in einem oberen Halbkreis SU des Rings 98 weniger Verbindungen vorhanden sind.
  • Anschluss ans Netz
  • Es wird nun Bezug genommen auf 3, in der Peer 12A anfangs nicht Teil des Gesamtnetzes ist. Ein Prozess 100, der es Peer 12A ermöglicht, sich dem Netz anzuschließen, wird mit Bezug auf das Ablaufdiagramm von 5 beschrieben.
  • Schritt 110: Lokalisierung und Kontaktaufnahme mit einem anderen Peer (Peer 12B genannt – siehe 3) im Netz. Peer 12A kann die Lokalisierung und Kontaktaufnahme mit einem anderen Peer unter Verwendung von Multicasting oder Broadcasting 112, Buddy-Liste 114, manuelle Konfiguration 116 und Vorstellen 118 vornehmen. Diese Vorgehensweisen werden weiter unten ausführlicher beschrieben.
  • Schritt 150: Aufbau einer Verbindung zwischen Peer 12A und dem lokalisierten anderen Peer 12B unter Verwendung eines NAT-Traversal-Protokolls.
  • Beim Multicasting/Broadcasting 112, übermittelt Peer 12A eine Multicasting-/Broadcasting-Nachricht "Hallo, ist da jemand?", und irgendein Peer (d. h. Peer 12B), der sich aktuell im Überlagerungsnetz befindet, kann antworten. Die Antwort enthält Informationen, aufgrund derer Peer 12A mit einem (oder mehreren) der anderen Peers Kontakt aufnehmen und Zugang zur Überlagerung anfordern kann. Alternativ können die Peers 12 (einschließlich Peer 12B), die sich aktuell im Netz befinden, regelmäßig Multicasting-/Broadcasting-Nachrichten versenden, die ihr Vorhandensein bekanntmachen (d. h. eine Bekanntmachungsnachricht), was es Peer 12A ermöglicht, durch Horchen auf Multicasting-/Broadcasting-Nachrichten andere Peers zu entdecken. Die Bekanntmachungsnachricht enthält auch Informationen, aufgrund derer Peer 12A mit einem (oder mehreren) der anderen Peers Kontakt aufnehmen und Zugang zur Überlagerung anfordern kann.
  • Die Buddy-Listen 114 könnten verwendet werden, wenn Peer 12A bereits früher einmal Teil des Netzes war, aber eine Zeitlang vom Netz getrennt war (z. B. wurde ein VoIP-Telefon aus dem Netz entfernt oder abgeschaltet). Peer 12A kann so konfiguriert werden, dass er sich die Adresse und Port-Informationen einiger Peers 12 merkt, wenn er vom Netz getrennt wird, und dann versucht, mit den Peers 12 auf seiner Buddy-Liste Kontakt aufzunehmen, wenn er wieder ans Netz angeschlossen werden möchte. Peer 12A kann wieder ans Netz angeschlossen werden, wenn er mit mindestens einem der anderen Peers 12 Kontakt aufnehmen kann, der noch ein Element des Netzes ist.
  • Das manuelle Konfigurationsverfahren 116 beinhaltet das Konfigurieren von Peer 12A mit Adresse und Port-Informationen eines der anderen Peers 12 im Netz. Adresse und Port-Informationen stellen die öffentliche IP-Adresse und den Port eines Peers 12 dar, die der NAT 30 (ggf.) zuordnet. Befindet sich Peer 12A hinter dem NAT 30 mit einem Filterungsverhalten (Adresse eingeschränkt), so wird Peer 12A auch mit Adresse und Port-Informationen von zum Beispiel Peer 12B konfiguriert.
  • Das Vorstellungsverfahren 118 beinhaltet die Verwendung eines Urlade-Servers 52 (siehe 3), der einen Knoten mit einer öffentlichen IP-Adresse und optional einen DNS(Domain Name System = Domänen-Namensystem)-Eingang darstellt. Der Urlade-Server 52 muss nicht an sich Teil des Netzes sein, sondern wird zum Vorstellen/Urladen neuer Peers im Netz verwendet. Zum Beispiel kann das Teilnetz 14 einen Peers im Netz (wie zum Beispiel Peer 12B oder 12R) wählen/ernennen, um eine Verbindung 88 zum Server 52 aufrechtzuerhalten. Wenn Peer 12A Kontakt mit dem Server 52 aufnimmt, erhält Peer 12A Adresse und Port-Informationen (d. h. die abgebildete IP-Adresse) des gewählten Peers, und der Server 52 leitet Adresse und Port-Informationen von Peer 12A an den gewählten Peer weiter, um den Zugang zur Überlagerung zu ermöglichen.
  • Peer-to-Peer-Kommunikation
  • 6 ist ein Ablaufdiagramm, das ein Verfahren 200 veranschaulicht zur Ermöglichung einer Kommunikation zwischen Peers in einem Peer-to-Peer(P2P)-Netz bei Vorhandensein von Netzadressenumsetzern (NATs) gemäß einer Ausführungsform der vorliegenden Erfindung. Das Verfahren 200 umfasst:
    Schritt 210: Zuordnung eines eindeutigen Peer-Kennzeichens zum jeweiligen Peer aus der Mehrzahl von Peers im P2P-Netz unter Verwendung zum Beispiel einer 1-Wege-Hash-Funktion 215.
  • Schritt 220: Aufbau einer Überlagerungstopologie, die jeden Peer aufgrund des eindeutigen Peer-Kennzeichens des jeweiligen Peers in einem strukturierten Verbindungsmuster mit einer Untermenge aus der Mehrzahl von Peers verbindet, wobei jeder Peer aus der Mehrzahl von Peers mehr Verbindungen zu nahe gele genen Peers und weniger Verbindungen zu entfernten Peers hat (wie zum Beispiel bei exponentiell anwachsenden Abständen, die sowohl im Uhrzeigersinn als auch entgegen dem Uhrzeigersinn um einen virtuellen Ring 225 herum laufen).
  • Schritt 230: Routing von Nachrichten durch die aufgebaute Überlagerungstopologie (d. h. die Verbindungstopologie stimmt mit den Nachrichten-Routing-Prozessen/-Algorithmen überein 240).

Claims (10)

  1. Verfahren zur Ermöglichung der Kommunikation zwischen einer Mehrzahl von Peers in einem Peer-to-Peer(P2P)-Netz bei Vorhandensein von Netzadressenumsetzern (NATs), wobei das Verfahren umfasst: (a) Zuordnung eines eindeutigen Peer-Kennzeichens zum jeweiligen Peer aus der Mehrzahl von Peers im P2P-Netz; (b) Aufbau einer Überlagerungstopologie, die jeden Peer aufgrund des eindeutigen Peer-Kennzeichens des jeweiligen Peers in einem strukturierten Verbindungsmuster mit einer Untermenge aus der Mehrzahl von Peers verbindet, wobei jeder Peer aus der Mehrzahl von Peers mehr Verbindungen zu nahe gelegenen Peers und weniger Verbindungen zu entfernten Peers hat; und (c) Routing von Nachrichten zwischen Peers durch die aufgebaute Überlagerungstopologie.
  2. Verfahren gemäß Anspruch 1, bei dem Schritt (b) beinhaltet: Aufbau von Verbindungen zwischen Peers bei exponentiell anwachsenden Abständen, sowohl im Uhrzeigersinn als auch entgegen dem Uhrzeigersinn um einen virtuellen Ring herum.
  3. Verfahren gemäß Anspruch 1, bei dem Schritt (a) beinhaltet: Hashen eines Attributs des jeweiligen Peers aus der Mehrzahl von Peers mit Hilfe einer 1-Weg-Hash-Funktion, um das eindeutige Peer-Kennzeichen zu erzeugen, wobei das Attribut eines der folgenden Dinge enthält: eine Netzadresse, eine MAC(Media Access Control)-Adresse und eine laufende Nummer.
  4. Verfahren gemäß Anspruch 1, bei dem die im strukturierten Verbindungsmuster aufgebauten Verbindungen während der Verbindungsanforderungssignalisierung zwischen einem Paar von Peers aus der Mehrzahl von Peers und während der Nachrichtensignalisierung zwischen dem Paar von Peers aufrechterhalten werden.
  5. Verfahren gemäß Anspruch 1, ferner umfassend den Aufbau einer weiteren Verbindung, die nicht Teil der im strukturierten Verbindungsmuster aufgebauten Verbindungen ist, zwischen einem Paar von Peers aus der Mehrzahl von Peers, welche die Kommunikation während der Verbindungsanforderungssignalisierung aufgebaut hat.
  6. Verfahren gemäß Anspruch 1, ferner umfassend die Hinzufügung eines neuen Peers zum P2P-Netz; wobei der Schritt der Hinzufügung eines neuen Peers beinhaltet: (i) Lokalisierung und und Kontaktaufnahme mit einem Peer aus der Mehrzahl von Peers im P2P-Netz; und (ii) Aufbau einer Verbindung zwischen dem neuen Peer und dem Peer aus der Mehrzahl von Peers im P2P-Netz.
  7. Verfahren gemäß Anspruch 6, bei dem der vorgenannte Schritt (i) die Lokalisierung und und Kontaktaufnahme mit einem Peer aus der Mehrzahl von Peers im P2P-Netz durch Multicasting oder Broadcasting oder Bekanntmachung oder durch Verwendung von Buddy-Listen oder durch manuelle Konfiguration oder durch Vorstellen; und die Anforderung des Zugangs zur Überlagerungstopologie umfasst.
  8. Verfahren gemäß Anspruch 6, bei dem Schritt (i) beinhaltet: Wahl eines aus der Mehrzahl von Peers im P2P-Netz ausgewählten Ziel- Peers, um eine Verbindung zu einem Server aufrechtzuerhalten; Kontaktaufnahme mit dem Server, um Adresse und Port-Informationen des aus der Mehrzahl von Peers im P2P-Netz ausgewählten Ziel-Peers zu erhalten; und Anforderung des Zugangs zur Überlagerungstopologie durch Einleitung der Kommunikation mit dem Ziel-Peer.
  9. Netzüberlagerungstopologie zur Ermöglichung der Kommunikation zwischen einer Mehrzahl von Peers in einem Peer-to-Peer-Netz bei Vorhandensein von Netzadressenumsetzern, wobei die Netzüberlagerungstopologie umfasst: ein eindeutiges Peer-Kennzeichen, das dem jeweiligen Peer aus der Mehrzahl von Peers im P2P-Netz zugeordnet werden kann; und eine Überlagerungstopologie, die jeden Peer aufgrund des eindeutigen Peer-Kennzeichens des jeweiligen Peers in einem strukturierten Verbindungsmuster mit einer Untermenge aus der Mehrzahl von Peers verbindet, wobei jeder Peer aus der Mehrzahl von Peers mehr Verbindungen zu nahe gelegenen Peers und weniger Verbindungen zu entfernten Peers hat, wobei das strukturierte Verbindungsmuster so angeordnet ist, dass es durch die aufgebaute Überlagerungstopologie ein Nachrichten-Routing zwischen Peers ermöglicht.
  10. System von Anspruch 9, bei dem die Überlagerungstopologie beinhaltet: Verbindungen zwischen Peers, die sich in exponentiell zunehmenden Abständen sowohl im Uhrzeigersinn als auch entgegen dem Uhrzeigersinn um einen virtuellen Ring 98 herum befinden; und Mitteln zur Codierung eines Attributs des jeweiligen Peers aus der Mehrzahl von Peers, um das eindeutige Peer-Kennzeichen zu erzeugen, wobei das Attribut eines der folgenden Dinge enthält: eine Netzadresse, eine MAC(Media Access Control)-Adresse und eine laufende Nummer.
DE102008010145.1A 2007-02-21 2008-02-20 Peer-to-Peer-Kommunikationssystem und -verfahren Expired - Fee Related DE102008010145B4 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/708,635 2007-02-21
US11/708,635 US8693392B2 (en) 2007-02-21 2007-02-21 Peer-to-peer communication system and method

Publications (2)

Publication Number Publication Date
DE102008010145A1 true DE102008010145A1 (de) 2008-08-28
DE102008010145B4 DE102008010145B4 (de) 2016-01-14

Family

ID=39356702

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102008010145.1A Expired - Fee Related DE102008010145B4 (de) 2007-02-21 2008-02-20 Peer-to-Peer-Kommunikationssystem und -verfahren

Country Status (6)

Country Link
US (1) US8693392B2 (de)
JP (1) JP4959602B2 (de)
KR (1) KR101399914B1 (de)
CN (1) CN101309301B (de)
DE (1) DE102008010145B4 (de)
GB (1) GB2446951B (de)

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7764691B2 (en) * 2007-03-15 2010-07-27 Microsoft Corporation Allowing IPv4 clients to communicate using teredo addresses when both clients are behind a NAT
US7933273B2 (en) * 2007-07-27 2011-04-26 Sony Computer Entertainment Inc. Cooperative NAT behavior discovery
JP5029373B2 (ja) * 2008-01-11 2012-09-19 日本電気株式会社 ノード、経路制御方法および経路制御プログラム
CN101557388B (zh) * 2008-04-11 2012-05-23 中国科学院声学研究所 一种基于UPnP和STUN技术相结合的NAT穿越方法
US7953010B2 (en) * 2008-07-30 2011-05-31 Avaya Inc. System and method of controlling in-bound path selection based on historical and continuous path quality monitoring, assessment and predictions
US8924486B2 (en) * 2009-02-12 2014-12-30 Sierra Wireless, Inc. Method and system for aggregating communications
WO2010054471A1 (en) 2008-11-17 2010-05-20 Sierra Wireless, Inc. Method and apparatus for network port and network address translation
US7962627B2 (en) * 2008-12-04 2011-06-14 Microsoft Corporation Peer-to-peer network address translator (NAT) traversal techniques
US20100145912A1 (en) * 2008-12-08 2010-06-10 At&T Intellectual Property I, L.P. Detecting peer to peer applications
US8165041B2 (en) * 2008-12-15 2012-04-24 Microsoft Corporation Peer to multi-peer routing
US7962621B2 (en) * 2009-01-13 2011-06-14 Microsoft Corporation—One Microsoft Way Policy service system architecture for sessions created using STUN
US9264498B2 (en) * 2009-03-11 2016-02-16 Qualcomm Incorporated Methods and apparatus for creation, advertisement, and discovery of peer-to-peer overlay networks
US8082331B2 (en) * 2009-04-07 2011-12-20 International Business Machines Corporation Optimized multicasting using an interest-aware membership service
KR101035902B1 (ko) * 2009-05-14 2011-05-23 이화여자대학교 산학협력단 미디어 스트리밍을 위한 피투피 오버레이 네트워크 구조, 상기 네트워크에서 미디어 스트리밍 데이터를 전송하는 방법 및 상기 네트워크를 형성하는 방법
WO2011009241A1 (zh) * 2009-07-24 2011-01-27 华为技术有限公司 处理网络映射标识的方法、装置及系统和选择对等点的方法
US9203872B2 (en) * 2010-02-19 2015-12-01 Microsoft Technology Licensing, Llc Distributed connectivity policy enforcement with ICE
US8924304B2 (en) * 2010-06-04 2014-12-30 Apple Inc. Methods for using unique identifiers to identify systems in collaborative interaction in a mesh network
CN101980508B (zh) * 2010-11-01 2013-05-15 深圳市鼎盛威电子有限公司 网络监控系统上的网络自适应运行模式
EP2673927A4 (de) 2011-02-08 2016-08-24 Sierra Wireless Inc Verfahren und system zur datenweiterleitung zwischen netzwerkvorrichtungen
US9237434B2 (en) 2011-07-13 2016-01-12 Qualcomm Incorporated Network-assisted peer discovery with network coding
US20140222873A1 (en) * 2011-09-27 2014-08-07 Nec Corporation Information system, management apparatus, method for processing data, data structure, program, and recording medium
JP6135509B2 (ja) * 2011-09-27 2017-05-31 日本電気株式会社 情報システム、その管理方法およびプログラム、データ処理方法およびプログラム、ならびに、データ構造
US9363133B2 (en) 2012-09-28 2016-06-07 Avaya Inc. Distributed application of enterprise policies to Web Real-Time Communications (WebRTC) interactive sessions, and related methods, systems, and computer-readable media
US10164929B2 (en) 2012-09-28 2018-12-25 Avaya Inc. Intelligent notification of requests for real-time online interaction via real-time communications and/or markup protocols, and related methods, systems, and computer-readable media
US9442679B2 (en) * 2013-01-31 2016-09-13 Xerox Corporation Network discovery using unicast communications
US9294458B2 (en) 2013-03-14 2016-03-22 Avaya Inc. Managing identity provider (IdP) identifiers for web real-time communications (WebRTC) interactive flows, and related methods, systems, and computer-readable media
US10205624B2 (en) 2013-06-07 2019-02-12 Avaya Inc. Bandwidth-efficient archiving of real-time interactive flows, and related methods, systems, and computer-readable media
US9525718B2 (en) 2013-06-30 2016-12-20 Avaya Inc. Back-to-back virtual web real-time communications (WebRTC) agents, and related methods, systems, and computer-readable media
US9065969B2 (en) * 2013-06-30 2015-06-23 Avaya Inc. Scalable web real-time communications (WebRTC) media engines, and related methods, systems, and computer-readable media
US9614890B2 (en) 2013-07-31 2017-04-04 Avaya Inc. Acquiring and correlating web real-time communications (WEBRTC) interactive flow characteristics, and related methods, systems, and computer-readable media
US9531808B2 (en) 2013-08-22 2016-12-27 Avaya Inc. Providing data resource services within enterprise systems for resource level sharing among multiple applications, and related methods, systems, and computer-readable media
US10263952B2 (en) 2013-10-31 2019-04-16 Avaya Inc. Providing origin insight for web applications via session traversal utilities for network address translation (STUN) messages, and related methods, systems, and computer-readable media
US9769214B2 (en) 2013-11-05 2017-09-19 Avaya Inc. Providing reliable session initiation protocol (SIP) signaling for web real-time communications (WEBRTC) interactive flows, and related methods, systems, and computer-readable media
US10129243B2 (en) 2013-12-27 2018-11-13 Avaya Inc. Controlling access to traversal using relays around network address translation (TURN) servers using trusted single-use credentials
JP6262063B2 (ja) 2014-03-18 2018-01-17 東芝メモリ株式会社 不揮発性メモリおよび書き込み方法
US10581927B2 (en) 2014-04-17 2020-03-03 Avaya Inc. Providing web real-time communications (WebRTC) media services via WebRTC-enabled media servers, and related methods, systems, and computer-readable media
US9749363B2 (en) 2014-04-17 2017-08-29 Avaya Inc. Application of enterprise policies to web real-time communications (WebRTC) interactive sessions using an enterprise session initiation protocol (SIP) engine, and related methods, systems, and computer-readable media
US10305748B2 (en) 2014-05-19 2019-05-28 The Michael Harrison Tretter Auerbach Trust Dynamic computer systems and uses thereof
US10666735B2 (en) 2014-05-19 2020-05-26 Auerbach Michael Harrison Tretter Dynamic computer systems and uses thereof
US9742853B2 (en) 2014-05-19 2017-08-22 The Michael Harrison Tretter Auerbach Trust Dynamic computer systems and uses thereof
US9912705B2 (en) 2014-06-24 2018-03-06 Avaya Inc. Enhancing media characteristics during web real-time communications (WebRTC) interactive sessions by using session initiation protocol (SIP) endpoints, and related methods, systems, and computer-readable media
GB2529838B (en) 2014-09-03 2021-06-30 Advanced Risc Mach Ltd Bootstrap Mechanism For Endpoint Devices
CA2980953A1 (en) * 2015-03-30 2016-10-06 Irdeto B.V. Monitoring a peer-to-peer network
GB2540987B (en) 2015-08-03 2020-05-13 Advanced Risc Mach Ltd Bootstrapping without transferring private key
GB2540989B (en) 2015-08-03 2018-05-30 Advanced Risc Mach Ltd Server initiated remote device registration
KR20200137344A (ko) 2019-05-30 2020-12-09 삼성에스디에스 주식회사 피어-투-피어 통신 단말 장치 및 상기 장치에서의 피어-투-피어 통신 방법
CN111478908B (zh) * 2020-04-09 2022-05-03 杭州溪塔科技有限公司 一种p2p网络中用户建立通讯的方法、装置及电子设备
KR102419829B1 (ko) * 2020-12-28 2022-07-11 경희대학교 산학협력단 분산 및 계층적 머신러닝 학습을 위한 신뢰 기반의 차량 에지 네트워크

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8224985B2 (en) 2005-10-04 2012-07-17 Sony Computer Entertainment Inc. Peer-to-peer communication traversing symmetric network address translators
US7206934B2 (en) * 2002-09-26 2007-04-17 Sun Microsystems, Inc. Distributed indexing of identity information in a peer-to-peer network
US8204992B2 (en) * 2002-09-26 2012-06-19 Oracle America, Inc. Presence detection using distributed indexes in peer-to-peer networks
WO2004110018A1 (en) * 2003-06-04 2004-12-16 Sony Computer Entertainment, Inc. Content distribution overlay network for a peer to peer network
US7539771B2 (en) * 2003-06-06 2009-05-26 Microsoft Corporation Organizational locality in prefix-based structured peer-to-peer overlays
US7516482B2 (en) * 2003-07-21 2009-04-07 Microsoft Corporation Secure hierarchical namespaces in peer-to-peer networks
US7418454B2 (en) * 2004-04-16 2008-08-26 Microsoft Corporation Data overlay, self-organized metadata overlay, and application level multicasting
US8015211B2 (en) * 2004-04-21 2011-09-06 Architecture Technology Corporation Secure peer-to-peer object storage system
EP1613024A1 (de) * 2004-06-29 2006-01-04 Alcatel Alsthom Compagnie Generale D'electricite Verfahren und Anrufserver zum Aufbau einer bidirektionellen, gleichrangigen Kommunikationsverbindung
US8014321B2 (en) * 2004-10-22 2011-09-06 Microsoft Corporation Rendezvousing resource requests with corresponding resources
US7639681B2 (en) 2004-11-23 2009-12-29 Microsoft Corporation System and method for a distributed server for peer-to-peer networks
US8365301B2 (en) * 2005-02-22 2013-01-29 Microsoft Corporation Peer-to-peer network communication
US7529255B2 (en) * 2005-04-21 2009-05-05 Microsoft Corporation Peer-to-peer multicasting using multiple transport protocols
JP4631531B2 (ja) 2005-05-10 2011-02-16 ブラザー工業株式会社 ネットワークシステム、接続確立方法、及びノード装置等
US7468952B2 (en) * 2005-11-29 2008-12-23 Sony Computer Entertainment Inc. Broadcast messaging in peer to peer overlay network

Also Published As

Publication number Publication date
CN101309301A (zh) 2008-11-19
US8693392B2 (en) 2014-04-08
GB2446951B (en) 2011-06-01
GB2446951A (en) 2008-08-27
JP4959602B2 (ja) 2012-06-27
GB0803196D0 (en) 2008-04-23
KR101399914B1 (ko) 2014-05-28
CN101309301B (zh) 2012-11-14
JP2008206160A (ja) 2008-09-04
KR20080077915A (ko) 2008-08-26
DE102008010145B4 (de) 2016-01-14
US20080198850A1 (en) 2008-08-21

Similar Documents

Publication Publication Date Title
DE102008010145B4 (de) Peer-to-Peer-Kommunikationssystem und -verfahren
DE60029430T2 (de) Mehrfach-sendefähiges adressauflösungsprotokoll
DE60028018T2 (de) Verfahren und Anordnungen in einem Telekommunikationssystem
DE69727930T2 (de) Zusammenfassung von verbindungen in vermittlungskommunikationsnetzen
DE60127276T2 (de) Verfahren und vorrichtung zur erleichterung der peer-zu-peer anwendungskommunikation
DE60212289T2 (de) Verwaltung privater virtueller Netze (VPN)
EP1558002A1 (de) Verfahren zur Zuordnung einer IP-Adresse zu einem Gerät
DE112019005826T5 (de) Lastverteilter Zugang zu verteilten Endpunkten unter Verwendung globaler Netzwerkadressen
EP1856889A1 (de) Bereitstellung von redundanten sip proxy ressourcen
DE202012013425U1 (de) Semi-Zentralisiertes Routing
EP3811570B1 (de) Verfahren zur konfiguration, verfahren zur bereitstellung von topologie-informationen, verwendung, gerät, computerprogramm und computerlesbares medium
DE102015004668B4 (de) Aufgeteilte netzwerkadressenübersetzung
EP2193649A1 (de) Verfahren und vorrichtung zur verbindung paketorientierter kommunikationsendgeräte
EP1771970A2 (de) Netzwerkmanagement mit peer-to-peer-protokoll
DE69827474T2 (de) Kommunikationsverfahren in einer gesamtheit von verteilten systemen über ein netzwerk vom typ internet
DE102011055403A1 (de) Entferntes Informations- und Kommunikationssystem und dessen VerbindungmverfahrenRemote information communication system and linking method thereof
EP1719303A1 (de) Verfahren zur herstellung einer verbindung zwischen einem dienstanforderer (client) und einem dienstanbieter (server) in einem dezentralen mobilfunknetz
DE10004811A1 (de) Kommunikationssystem, Verfahren und Steuereinrichtung zum Leiten von Anrufen innerhalb von privaten Netzen, die über geographische beabstandete Zonen verteilt sind
EP2171943B1 (de) Verfahren zum routen von dienstnachrichten
EP2695364A1 (de) Verfahren zur adressierung von nachrichten in einem computernetzwerk
EP2933985B1 (de) Verwendung von Multicast DNS
WO2004100498A1 (de) Verfahren zum datenaustausch zwischen netzelementen in netzwerken mit verschiedenen adressbereichen
EP1511272B1 (de) Verfahren zum Zuordnen von über mehrere Netzwerke verteilten Clients zu einem Server und Client zur Durchführung des Verfahrens
DE112021002787T5 (de) Peer-to-Peer-Kommunikation zwischen Endbenutzer-Geräten
DE19912377A1 (de) Verfahren zur Unterstützung der Vermittlung von Daten

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: H04L0005000000

Ipc: H04L0012460000

R020 Patent grant now final
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee