DE102008010145A1 - PEER-TO-PEER-Kommunikationssystem und -verfahren - Google Patents
PEER-TO-PEER-Kommunikationssystem und -verfahren Download PDFInfo
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/745—Address table lookup; Address filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17337—Direct connection machines, e.g. completely connected computers, point to point communication networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/24—Radio transmission systems, i.e. using radiation field for communication between two or more posts
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- 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/09—Mapping addresses
- H04L61/25—Mapping addresses of the same type
- H04L61/2503—Translation of Internet protocol [IP] addresses
- H04L61/256—NAT traversal
- H04L61/2567—NAT traversal for reachability, e.g. inquiring the address of a correspondent behind a NAT server
-
- 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/5069—Address allocation for group communication, multicast communication or broadcast communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/029—Firewall traversal, e.g. tunnelling or, creating pinholes
-
- 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/104—Peer-to-peer [P2P] networks
-
- 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/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1065—Discovery 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 von1 , 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 Netztopologie10 einschließlich einer repräsentativen Gruppe von Peers12 , 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 von1 enthält eine Reihe von Teilnetzen14 ,16 ,18 ,20 ,22 ,24 und26 , wobei jedes einen oder mehrere Peers12 enthält, und das Internet28 . Die Teilnetze18 und22 verwenden öffentliche IP-Adressen, da sie Teil des globalen Adressierungsbereichs sind. Die Teilnetze14 ,16 ,20 ,24 und26 verwenden private IP-Adressen, da sich zwischen dem jeweiligen Teilnetz und dem Internet28 NATs (Netzadressenumsetzer)30 befinden. Die Teilnetze24 und26 teilen sich einen einzigen NAT30 . Das Teilnetz20 zeigt eine kaskadische NAT-Anordnung, bei der sich zwei NATs30 zwischen dem Teilnetz20 und dem Internet28 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-Überlagerung50 , wobei sich in diesem Beispiel jeder Peer12 hinter einem (nicht abgebildeten) NAT mit einschränkenden Filterungsrichtlinien befindet. Grundsätzlich baut jeder Peer12 in der Überlagerung50 (mit durchgezogenen Linien dargestellte) Verbindungen zu einigen der anderen Peers12 auf, um eine teilweise Vermaschung der Verbindungen zwischen den Peers12 aufzubauen. Nach Erstellung der teilweisen Vermaschungs-Überlagerung50 können die Peers12 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 auf2 möchte zum Beispiel Peer12X eine Verbindung zu Peer12Y aufbauen. Da sich Peer12Y hinter einem NAT30 mit einer einschränkenden Filterungsrichtlinie befindet, kann Peer12X keine Aufforderung zum Aufbau einer Verbindung direkt an Peer12Y (Linie52 ) senden. Um diese Einschränkung zu adressieren, sendet Peer12X die Aufforderung zum Aufbau einer Verbindung (gestrichelte Linien54 ) durch bestehende Verbindungen in der Überlagerung50 . Nachdem die Aufforderung zum Aufbau einer Verbindung an Peer12Y übermittelt worden ist, verwenden Peer12X und12Y 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 Netz50 zu routen. Wenn jedoch die Peers12X und12Y 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 Verbindung52 hinzuzufügen, um diesen Nachrichtenaustauch zu optimieren. - Repräsentativer Peer
-
3 zeigt eine beispielhafte Anordnung80 des Teilnetzes14 von1 . Das Teilnetz14 enthält eine Gruppe von Peers12 , die sich alle hinter dem NAT30 befinden. Bei dieser Art von Topologie können ein oder mehrere der Peers12 im Teilnetz14 als repräsentativer Peer12R "gewählt" oder "ernannt" werden, um im Namen der anderen Peers12 im Teilnetz14 zu handeln. - Die Anordnung
80 schafft zwei Arten von Verbindungen: (1) Verbindungen zwischen dem repräsentativen Peer12R , die den NAT30 passieren (siehe gestrichelte Linie86 ) und (2) Verbindungen zwischen dem repräsentativen Peer12R und den örtlichen Peers12 im Teilnetz14 , die den NAT30 nicht passieren (siehe gestrichelte Linien90 ). - 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 Überlagerung50 ermöglicht es, dass ein Peer12 einen Anruf bei einem anderen Peer12 tätigt, jenen Status eines Peers (oder Anwenders) publiziert und eine Verbindung zu einem anderen Peer in der Überlagerung50 erstellt. Ein strukturiertes Schema ermöglicht es, beim Routen von Nachrichten zwischen Peers das Verbindungsmuster zwischen Peers12 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 Überlagerung50 ü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 Peer12X eine Verbindung mit einem anderen Peer12Y wünscht, Peer12Y auch eine Verbindung zu Peer12X wünscht. Symmetrisches Interesse ist eine nützliche Eigenschaft von Verbindungsschemen, weil Verbindungen durch NATs30 bidirektional sind und weil für beide Peers12X und12Y Verwaltungsdaten der Nachrichtenübermittlung entstehen, um eine Verbindung aufzubauen und aufrechtzuerhalten. - Es wird nun Bezug genommen auf
4 , die ein strukturiertes Verbindungsmuster92 zeigt, welches ein symmetrisches Interesse aufweist, da jeder Peer12 Verbindungen zu den Peers12 unterhält, die sich in exponentiell zunehmenden Abständen befinden und sowohl in einer Anordnung im Uhrzeigersinn94 als auch in einer Anordnung entgegen dem Uhrzeigersinn96 um einen virtuellen Ring98 herum angeordnet sind. Insbesondere veranschaulicht das Muster92 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 Rings98 weniger Verbindungen vorhanden sind. - Anschluss ans Netz
- Es wird nun Bezug genommen auf
3 , in der Peer12A anfangs nicht Teil des Gesamtnetzes ist. Ein Prozess100 , der es Peer12A ermöglicht, sich dem Netz anzuschließen, wird mit Bezug auf das Ablaufdiagramm von5 beschrieben. - Schritt
110 : Lokalisierung und Kontaktaufnahme mit einem anderen Peer (Peer12B genannt – siehe3 ) im Netz. Peer12A kann die Lokalisierung und Kontaktaufnahme mit einem anderen Peer unter Verwendung von Multicasting oder Broadcasting112 , Buddy-Liste114 , manuelle Konfiguration116 und Vorstellen118 vornehmen. Diese Vorgehensweisen werden weiter unten ausführlicher beschrieben. - Schritt
150 : Aufbau einer Verbindung zwischen Peer12A und dem lokalisierten anderen Peer12B unter Verwendung eines NAT-Traversal-Protokolls. - Beim Multicasting/Broadcasting
112 , übermittelt Peer12A eine Multicasting-/Broadcasting-Nachricht "Hallo, ist da jemand?", und irgendein Peer (d. h. Peer12B ), der sich aktuell im Überlagerungsnetz befindet, kann antworten. Die Antwort enthält Informationen, aufgrund derer Peer12A mit einem (oder mehreren) der anderen Peers Kontakt aufnehmen und Zugang zur Überlagerung anfordern kann. Alternativ können die Peers12 (einschließlich Peer12B ), die sich aktuell im Netz befinden, regelmäßig Multicasting-/Broadcasting-Nachrichten versenden, die ihr Vorhandensein bekanntmachen (d. h. eine Bekanntmachungsnachricht), was es Peer12A ermöglicht, durch Horchen auf Multicasting-/Broadcasting-Nachrichten andere Peers zu entdecken. Die Bekanntmachungsnachricht enthält auch Informationen, aufgrund derer Peer12A mit einem (oder mehreren) der anderen Peers Kontakt aufnehmen und Zugang zur Überlagerung anfordern kann. - Die Buddy-Listen
114 könnten verwendet werden, wenn Peer12A 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). Peer12A kann so konfiguriert werden, dass er sich die Adresse und Port-Informationen einiger Peers12 merkt, wenn er vom Netz getrennt wird, und dann versucht, mit den Peers12 auf seiner Buddy-Liste Kontakt aufzunehmen, wenn er wieder ans Netz angeschlossen werden möchte. Peer12A kann wieder ans Netz angeschlossen werden, wenn er mit mindestens einem der anderen Peers12 Kontakt aufnehmen kann, der noch ein Element des Netzes ist. - Das manuelle Konfigurationsverfahren
116 beinhaltet das Konfigurieren von Peer12A mit Adresse und Port-Informationen eines der anderen Peers12 im Netz. Adresse und Port-Informationen stellen die öffentliche IP-Adresse und den Port eines Peers12 dar, die der NAT30 (ggf.) zuordnet. Befindet sich Peer12A hinter dem NAT30 mit einem Filterungsverhalten (Adresse eingeschränkt), so wird Peer12A auch mit Adresse und Port-Informationen von zum Beispiel Peer12B konfiguriert. - Das Vorstellungsverfahren
118 beinhaltet die Verwendung eines Urlade-Servers52 (siehe3 ), der einen Knoten mit einer öffentlichen IP-Adresse und optional einen DNS(Domain Name System = Domänen-Namensystem)-Eingang darstellt. Der Urlade-Server52 muss nicht an sich Teil des Netzes sein, sondern wird zum Vorstellen/Urladen neuer Peers im Netz verwendet. Zum Beispiel kann das Teilnetz14 einen Peers im Netz (wie zum Beispiel Peer12B oder12R ) wählen/ernennen, um eine Verbindung88 zum Server52 aufrechtzuerhalten. Wenn Peer12A Kontakt mit dem Server52 aufnimmt, erhält Peer12A Adresse und Port-Informationen (d. h. die abgebildete IP-Adresse) des gewählten Peers, und der Server52 leitet Adresse und Port-Informationen von Peer12A an den gewählten Peer weiter, um den Zugang zur Überlagerung zu ermöglichen. - Peer-to-Peer-Kommunikation
-
6 ist ein Ablaufdiagramm, das ein Verfahren200 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 Verfahren200 umfasst:
Schritt210 : Zuordnung eines eindeutigen Peer-Kennzeichens zum jeweiligen Peer aus der Mehrzahl von Peers im P2P-Netz unter Verwendung zum Beispiel einer 1-Wege-Hash-Funktion215 . - 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 Ring225 herum laufen). - Schritt
230 : Routing von Nachrichten durch die aufgebaute Überlagerungstopologie (d. h. die Verbindungstopologie stimmt mit den Nachrichten-Routing-Prozessen/-Algorithmen überein240 ).
Claims (10)
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
- 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.
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)
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)
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 |
-
2007
- 2007-02-21 US US11/708,635 patent/US8693392B2/en active Active
-
2008
- 2008-02-20 DE DE102008010145.1A patent/DE102008010145B4/de not_active Expired - Fee Related
- 2008-02-20 KR KR1020080015130A patent/KR101399914B1/ko active IP Right Grant
- 2008-02-21 CN CN2008101277891A patent/CN101309301B/zh not_active Expired - Fee Related
- 2008-02-21 GB GB0803196A patent/GB2446951B/en not_active Expired - Fee Related
- 2008-02-21 JP JP2008039509A patent/JP4959602B2/ja not_active Expired - Fee Related
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 |