EP2018761A1 - Verfahren und anordnung zur datenübertragung zwischen peer-to-peer-netzwerken - Google Patents

Verfahren und anordnung zur datenübertragung zwischen peer-to-peer-netzwerken

Info

Publication number
EP2018761A1
EP2018761A1 EP07728697A EP07728697A EP2018761A1 EP 2018761 A1 EP2018761 A1 EP 2018761A1 EP 07728697 A EP07728697 A EP 07728697A EP 07728697 A EP07728697 A EP 07728697A EP 2018761 A1 EP2018761 A1 EP 2018761A1
Authority
EP
European Patent Office
Prior art keywords
peer
network
address
peer device
search
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP07728697A
Other languages
English (en)
French (fr)
Inventor
Jens-Uwe Busser
Markus BÖHM
Uwe Leutritz
Steffen Rusitschka
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.)
Nokia Solutions and Networks GmbH and Co KG
Original Assignee
Nokia Siemens Networks GmbH and Co KG
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 Nokia Siemens Networks GmbH and Co KG filed Critical Nokia Siemens Networks GmbH and Co KG
Publication of EP2018761A1 publication Critical patent/EP2018761A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • 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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/103Mapping addresses of different types across network layers, e.g. resolution of network layer into physical layer addresses or address resolution protocol [ARP]
    • 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/1059Inter-group management mechanisms, e.g. splitting, merging or interconnection of groups
    • 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/1087Peer-to-peer [P2P] networks using cross-functional networking aspects
    • H04L67/1093Some peer nodes performing special functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services

Definitions

  • the present invention relates to a method for Studentstra ⁇ gene of data between different peer-to-peer networks, a suitable peer device, and a corresponding network device.
  • peer devices With peer-to-peer systems, it is possible to network a plurality of devices, referred to below as peer devices, without centralized devices such as servers. In this case, certain services, which are taken over in the usual client-server architectures by the respective central unit, the server, must be provided by the peer devices themselves.
  • a particularly important func ⁇ tionality is the address resolution, ie the necessary for contacting a particular peer implementation of known data of the user to the network address of his device or its peer device.
  • Known data can be z. Be the user name, a telephone number or other peer devices characterizing names.
  • the Internet as the parent communication network with the well-known Internet Protocol TCP / IP verwen ⁇ det, so that the network address usually includes the IP address and the port of the peer.
  • the communication between peers takes place via the protocol of the parent communication network, which is usually the Internet.
  • the actual peer-to-peer network is then formed by a group of peers each having a node ID or node address within the peer-to-peer (P2P) network.
  • P2P peer-to-peer
  • a data connection between two peers of a P2P network requires next, determining the network address of the requested peer from the node address known to the requesting peer.
  • a server keeps a central directory of the peers participating in the P2P network in the form of their node address and corresponding network address.
  • File exchange platforms such as Napster or iMesh, Audio Galaxy or SongSpy are based on a P2P network with a corresponding central directory service. The disadvantage here is that in case of failure of the central directory service no new communication connections can be established more.
  • no central server or excellent peer is provided for a directory service.
  • a requesting peer dynamically locates peers of the P2P network and communicates with them to exchange data and information.
  • the address resolution that is, the locating of the network address of the queried peer characterized by a node address in the P2P network, takes place dynamically via a routing protocol.
  • DHT Distributed Hash Table
  • the peers can for example be a number of peers or nodes ⁇ neighboring addresses and their network administrator ests in a local hash table or allocation abspei ⁇ manuals.
  • the node address space has a metric that defines distances between peers or node addresses.
  • a suitable algorithm for address resolution in a ring-organized decentralized P2P network is z. B.
  • Chord algorithm which in Ion Stoica, Robert Morris, Da vid ⁇ Karger, M. Frans Kaashoek, Hari Balakrishnan, "Chord: A Scalable Peer-to-peer Lookup Service for Internet Applicati ⁇ ons, MIT LCS TR-819 is described.
  • node ID The assignment of a node address or node ID (node ID) can be determined, for example, by applying a hash function to a user name of the relevant peer. Analogously, also, such as Dateina ⁇ men a hash function are subjected to yield Searches a hash value. Each peer is assigned a range of hash values, e.g. B. are again arranged in ascending order. The first hash value of the respective peer associated area then corresponds to z. B. the node address of the referen ⁇ fenden peer. This determines, for example, which data is available under the hashed file name at a peer.
  • a search for data or users or peers is performed by the querying or searching peer zername the hash value of the predetermined key word, such as file name, or Benut ⁇ z. B. telephone number.
  • the requesting peer sends a search request to a peer having its node address and associated network address in a list of known peers, for example a neighbor list and / or Finger list of the requesting peer is listed. If the requested peer is responsible for the searched hash value, it sends the requested data to the requesting peer via the parent network.
  • the first requested peer If the first requested peer is not responsible for the hash value, it responds with the address of a peer from its peer list whose node ID is more similar to the searched hash value than its own node address. Whether the own node ID is similar to the searched node ID or the searched hash value, results from the used metric of the node address space. The first requested peer thus sends ⁇ with the requesting peer node ID and IP address, which comes closer to the searched hash value. The requesting peer can now be a second search request to the peer with the surrounding bone ⁇ send th address. This process continues until a peer is found who is responsible for the hash value and can provide the searched data.
  • P2P networks are used as example ⁇ application for exchanging files in file sharing networks.
  • VOIP voice over IP
  • a P2P network is known for voice transmission under the name "Skype". Participants of this network can exchange ⁇ each voice data and thus calls over the Internet.
  • the present invention addresses the problem of Da ⁇ tentransfers between different P2P networks mostly different operators.
  • the network address assignments of the other, foreign peers are basically unknown.
  • the merging or adding of foreign peers requires the exchange of many stabilization messages in order to reconcile or restructure the neighbor lists of the individual peers. These must then be exchanged between the IP networks of the two operators.
  • technical problems in the network of one operator also affect the quality of the service for the subscriber of the other operator. A separate licensing of the numbers of end customers of both operators is then difficult.
  • gateways it has been proposed to link several P2P networks via so-called gateways.
  • selected servers accept the incoming search requests from foreign networks and perform a search for the search query in the ei ⁇ gene P2P ring.
  • the result of this search so in ⁇ play as a network address or IP address of a peer in the own network is then or the operator-foreign sent back to the requesting peer network.
  • Such Ga ⁇ teways must be very powerful to cope with many searches.
  • the address resolution of the searched peer in a peer-to-peer network which is different from the peer-to-peer network of the requesting peer, by passing the network address of the requesting peer to a peer device in the foreign network becomes. There can then be an address resolution of the searched peer in the foreign network until the destination peer is found, which can then build on the parent network, the data connection with the requesting peer or its network address.
  • the overall communication network structures such as the Internet or similar network Struk ⁇ .
  • the requesting peer device of the destination peer device has received the network address of a data connection between the first peer device and may then further target peer device to be built up over the parent Kommunikati ⁇ onsnetzwerk means of the network addresses.
  • the structure of the foreign P2P network plays no role in the requesting peer device.
  • the search for the network ⁇ work address of the target peer device is based on the protocol of the second peer-to-peer network. Is binding for the movement of such data ⁇ ultimately only the network address sammlunggeb- borrowed.
  • the search request of the first peer device is forwarded to a further second peer device in the second peer-to-peer network, wherein the network address of the further peer device in the second peer-to-peer network is stored in a list.
  • a list of network addresses of second peer devices in the second peer-to-peer network can be transmitted to a passive peer device, wherein the passive peer device is assigned to the first peer device. This can ensure the ⁇ that always an active instance or an addressable for a search query from their own peer-to-peer network out in the foreign destination network via a network address Peer device from which the search in the target peer-to-peer network can start.
  • the invention further provides a peer device for a first peer-to-peer network having a node address in the first peer-to-peer network and having a network address in a parent communication network, the peer device having an associated passive one Peer device, which peer-to-peer network is independent and maintains at least one network address of a peer device in a second peer-to-peer network, and wherein the passive peer device is adapted to a search ⁇ request for a destination peer device in the second peer-to-peer network indicating the network address of the peer device to the at least one peer device (Pl ') in the second peer-to-peer network sends.
  • a peer device for a first peer-to-peer network having a node address in the first peer-to-peer network and having a network address in a parent communication network
  • the peer device having an associated passive one Peer device, which peer-to-peer network is independent and maintains at least one network address of a peer device in a second peer-to-pe
  • the peer device according to the invention is particularly suitable for carrying out the method according to the invention for data transmission between peer-to-peer networks.
  • the passive peer device which is also referred to as a passive instance in the peer-to-peer network, while the usual peer devices are active instances in the network, is not part of the peer-to-peer network. It merely supplies one or more network addresses which are necessary for a search query in the foreign peer-to-peer network.
  • the requesting peer device If, for example, the requesting peer device carries out a hunt for a subscriber name, whereby a foreign node address, that is, not the peer-to-peer network associated node address is generated, passes the passive peer device ⁇ this goal Node address to a peer device of the foreign peer-to-peer network which corresponds to the network address stored by the passive peer device.
  • the search in the foreign network is performed according to a suitable search algorithm and returns the network address of the searched target peer to the requesting peer device, since the passive peer device has passed the network address of the requesting peer.
  • the passive peer device therefore preferably has no node address assigned in one of the peer-to-peer networks and can not be addressed by other peer devices.
  • the peer device preferably has a stored partial hash table of a distributed hash table of the peer-to-peer network, which comprises an assignment of node addresses to network addresses.
  • the at least one peer device is an executable computer program with a stability program module for stabilizing the peer-to-peer network according to a peer-to-peer protocol
  • Memory program module is implemented for storing data and a search program module for generating search queries on a computer, wherein the passive peer Einrich ⁇ processing on the search program module using the Any artwork least a network address the peer device in the second peer-to-peer network accesses.
  • Peer-to-peer networks such as file sharing, wel ⁇ operate che so-called file sharing, can be constructed from coupled to the Internet computers.
  • the realization of a peer device according to the invention therefore only requires the implementation of an additional passive peer device, which transfers to the search program module the network address of a peer device in the second peer-to-peer network.
  • the passive peer device therefore only comprises a table with possible network addresses of foreign peer devices, so that the further address resolution then takes place in the foreign peer-to-peer network.
  • the computer charging by means of the data transmission according to the invention between different peer-to-peer networks is also low since only lending to the search in their own peer-to-peer network reproached program modules is used.
  • a network arrangement with a first peer-to-peer network with first peer devices and at least one second peer-to-peer network with second peer devices is provided, wherein at least one of the peer devices is designed according to the invention.
  • each peer device is assigned a passive peer device.
  • networking of all peer-to-peer networks results from the intended passive peer devices, which in turn can each be designed as a computer program.
  • At least one peer device is provided as a load balancer, which forwards the search request of a passive peer device to a peer device in the respective peer-to-peer network.
  • a load balancer which preferably keeps a list of peer devices active in the respective peer-to-peer network and their network addresses, therefore ensures that the search in the destination peer-to-peer network always from one of its peer devices can be carried out starting.
  • At least one peer device is provided as a rendezvous peer which, on request of a passive peer device, provides at least one network address of a peer device in the respective peer-to-peer network.
  • the list of passive peer devices may first be updated with possible network addresses of peer devices in the target peer-to-peer network.
  • At least one of the peer-to-peer networks working preference ⁇ with a distributed hash table, and in particular with a Chord algorithm or a Kademlia algorithm for address resolution in the respective network.
  • FIG. 1 shows a ring-organized peer-to-peer network
  • FIG. 2 shows two P2P networks coupled according to the invention
  • FIG. 3 a functional diagram of a peer device
  • FIG. 4 two P2P networks with a rendezvous peer coupled in accordance with the invention.
  • FIG. 5 shows a plurality of P2P networks coupled according to the invention.
  • an annular organized P2P network is by way of example Darge ⁇ represents in FIG. 1
  • peer devices P1-P8 which are designed, for example, as a computer connected to the Internet with an installed P2P software. Each peer therefore has an IP address IP1-IP8 identifying it on the Internet and a node address NID1-NID8 identifying it as a peer in the P2P network P2P1.
  • IP1-IP8 IP address
  • NID1-NID8 node address NID1-NID8
  • the node address of a peer results, for example, by applying a suitable hash function to the name of the peer.
  • the name may be, for example, a user name or a telephone number.
  • the hash value of a corresponding search word for example a telephone number, is assigned to a node ID or a node address.
  • the table shows the full table of the P2P network. This is not central riding provided by a server be ⁇ but up to the individual peers P1-P8 ⁇ shares stored.
  • Each peer knows the assigned hash Values of his neighbors, for example the nearest neighbor.
  • each peer has a partial hash table with the assignment of hash values be ⁇ ner in the node address space neighboring peers and, optionally, the assignment of hash values of one or more finger peers z.
  • the peer P3 then examines its partial hash table PHT3 and determines the peer P7 as the peer whose jurisdiction or associated hash values are closest to the searched hash value 530 and sends a corresponding second search query F2.
  • the peer P7 determined in its side ⁇ associated partial hash table PHT7 the peer P6 with the node address 523 as the hash value 530 competent peer and sends this information to the originally requesting peer P2 whose network address IP2 is associated with the search requests Fl, F2.
  • the peer P7 could, if the peer P2 has send a data query of the search term with the hash value 530 ver ⁇ , the peer P6 send the data retrieval request from the peer P2, and the network address IP2 in a message F3 x to.
  • the destination peer P6 then transmits directly to the requesting peer P2 or its IP address IP2 the data designated by the hash value 530 via a data connection F4 in the communication network or Internet.
  • a corresponding P2P protocol enables the address resolution of searched data, for example from the peer P2, which has no information about the storage location of this data in the P2P network, since the partial hash table PHT2 assigned to the peer P2 does not have this node address range includes.
  • two peer-to-peer networks P2P1, P2P2 are each presented with peer devices P1-P4, P1 -P5 X X.
  • the peer devices P1-P4, P1 -P5 X X each network addresses IP1-IP4 and assigned IP1 X -IP5 X and Node Interface addresses NID1-NID4, NIDL X -NID5 x in their respective P2P network.
  • NID1-NID4, NIDL X -NID5 x in their respective P2P network.
  • the two P2P networks P2P1, P2P2 shown in FIG. 2 are operated by different operators or providers. For example, it is conceivable that the P2P networks serve VOIP transmission between their subscribers, each using a peer device.
  • the address resolution takes place, as was described, for example, with reference to FIG.
  • a subscriber A who operates the peer Pl wants to communicate with a subscriber B who operates the peer P2 x in the second P2P network P2P2P2
  • an embodiment of the method according to the invention must be used.
  • the Peer Pl is assigned a passive peer device pPl.
  • the passive peer device PPL is such designed work as a passive instance the respective network ⁇ P2P1 that it can store any data from other peers but only queries to active instances, so peers send.
  • the passive peer device pPl keeps at least one IP address or network address of a peer device in a foreign peer-to-peer network ready.
  • Both P2P networks P2P1, P2P2 are implemented in a higher-level communication network, such as the Internet IN.
  • the participant A has z. B. as a node address NIDl the hash value of its subscriber name such. B. hash (participantA @ operatorl).
  • the peer device Pl determines that the node address NID2 x lies in the foreign peer-to-peer network P2P2. This activates the passive peer device pPl which holds the peer table pPT with active instances or peers of the foreign P2P network P2P2 and their network addresses or IP addresses IP x .
  • the passive peer device PPL itself has no node-Ad ⁇ ress for one of the P2P networks but is performed only DER art that it searches a quoting
  • Destination node address and preferably the network address IPl of its peer Pl to a peer Pl x of the foreign network P2P2 can send.
  • the passive peer device PP1 therefore transmits via the
  • the node address NID2 x is listed in the partial hash table or neighbor list of the peer Pl x . That is, the peer Pl x sends to the IP address IPl of the requesting peer pPl from the P2P network P2P1, the network address IP2 x of the target peer P2 x .
  • an address resolution can be performed from the peer pPl for a destination peer P2 x in a foreign peer-to-peer network P2P2.
  • the passive peer pPl can now request the destination peer P2 x with the IP address or network address IP2 x .
  • the higher-level communication network here the Internet IN
  • a data connection between the IP addresses IP1, IP2 x is now possible, which is indicated by the arrow S4 in FIG.
  • a passive peer PPL associated with the peer Pl it is thus mög ⁇ Lich, a query into the target P2P network to exportie ⁇ reindeer, where these Runaway after the valid search algorithm there is ⁇ leads.
  • FIG. 3 schematically shows the structure of a peer device P1 according to an embodiment of the invention.
  • a peer device Pl can be particularly com ⁇ puter implemented as executable software on a Compu ter ⁇ run.
  • a corresponding computer program or peer Pl a stability program module SM, a memory program module RM, a search program module LM and a pro ⁇ program module ppm for the passive peer.
  • further modules such as, for example, a module for implementing the partial hash table PHT1 with the respective neighboring peer and peer addresses for the search algorithm or the search module LM can be provided.
  • the peer Pl or the peer software usually interacts with a higher-level application software AP, which serves to re ⁇ al Deutschen the respective function of the computer.
  • the Stabilticianspro ⁇ program module is used, among other things, the neighbors table PHTl or the associated partial hash table of the peer taping Pl to aktua ⁇ if additional peers in the P2P network eintre- fail th or peers.
  • the stability program module ver ⁇ adds suitable stability algorithms, each of which ensures a suitable for the peer Pl partial hash table.
  • the memory program module RM serves, for example, to store data or files which are to be made available to the P2P network. These may be, for example, addresses, telephone numbers, user names or file names.
  • the search program module LM realizes, for example, the search algorithms explained in FIGS. 1 and 2 in the peer-to-peer network.
  • the search program module engages include the partial hash table of the peer PHTl 1 and generates corresponding search queries, for example, the target bone ⁇ th address and the own network address.
  • the pas ⁇ sive peer module pPM has access to the search program module LM and supplies this the network address of a peer in ei ⁇ nem foreign network as an IP address for a peer who can process the query. This happens when the peer PI is to communicate with a peer having a destination node address that is not associated with its own P2P network.
  • the search engine module thus generates a
  • an address resolution for example, as explained with reference to FIG. 2, can be carried out.
  • the program modules for stabilizing the own P2P network SM, for storing RM and for generating search LM is usually provided in peer facilities or corresponding software
  • the extension with a passive peer module pPM means only a small extra effort. Since the passive peer module is not assigned any node address, the overall network structure of the respective P2P networks also does not become more complex.
  • FIG. 4 shows a further possible embodiment of the invention.
  • a first peer-to-peer network P2P1 with peer devices P1-P5 is provided, in which each peer device P1-P5 is assigned a passive peer device pPl-pP5.
  • a second peer-to-peer network is constructed with P2P2 peer devices Pl x -P5 ⁇ wherein each peer P1 -P5 X X a passive peer inputs direction PPL x -pP5 x is assigned.
  • each peer P1-P5 Pl x - P5 x passive instance in the form of passive peer device is assigned to each of the peer devices when there is a search for files or information in foreign can peer-to-peer networks the search algorithm of the respective target peer-to-peer network, as has already been explained in detail above.
  • a peer device is designed as a Rendezvous-Peer RV.
  • This rendezvous peer RV provides a list of network addresses of active peers of the second peer-to-peer network P2P2, one of these IP addresses of a peer listed in a list APL being a passive peer pPl of the first network P2P1 is provided if a query from the P2P network P2P1 must be made in the second P2P network P2P2.
  • the Rendezvous Peer RV provides a respective passive peer pPl, ie always a selection of peers of the network P2P2, which are active and can start the search algorithms of the P2P2.
  • the passive peer pPl first asks in a request MO x at the rendezvous peer RV for possible IP addresses of peers in the second network to which a subsequent search request can be forwarded.
  • the rendezvous peer checks its list APL and transmits one or more corresponding IP ADDR ⁇ sen, for example the peer P3 x in a corresponding message to the passive peer MO PPL.
  • the passive peer pPl then generates a search query specifying the node address, for example NID5 of the IP address of its peer Pl as start address for the search query and the IP address of the requested peer IP3 x .
  • This search request Sl goes to the peer P3 x , which then starts the search algorithm in the second peer-to-peer network P2P2.
  • a rendezvous peer RV thus ensures that a passive peer always has a suitable IP address for a peer in the target peer-to-peer network to which a search request can be determined.
  • FIG. 5 shows a further embodiment of the invention.
  • each P2P network is assigned at least one load balancer LB1, LB2, LB3, which is responsible for search requests from foreign passive peer devices.
  • the first message of a search query from a passive peer to a destination P2P network is always sent to the load balancer LB1, LB2, LB3.
  • This load balancer derives the search request entwe ⁇ ⁇ to any peer from a list of active peers of the destination network or preferably already to the peer whose node address of the destination node address is closest.
  • the passive peer pPl sends, for example, its search request Tl to the load balancer LB2 of the second peer-to-peer network P2P2. This determines that the peer P3 x ge ⁇ the searched destination node address, for example NID4 x is closest, and passes the search request to the peer P3 x pass.
  • the Netztechnikad ⁇ ress IP4 x of the destination peer 4 x contains.
  • the peers Pl and P4 x can then establish a data connection between their IP addresses IPl and IP4 x .
  • the load balancers LB1, LB2, LB3 do not have to be executed as active instances in the P2P networks. It is sufficient that the load balancers LBL LB2, LB3, respectively present a list of active peers APL ⁇ conduct stolen to search queries. The larger the list of load balancers, the better they can distribute the burden of externally-arrived search queries on their target peer-to-peer network.
  • the load balancer can also be executed identically with a rendezvous peer, as has been explained in FIG. Then, a corresponding combined peer device transfers to ⁇ next a list of active peers to the requesting passive peer device. It is also possible to provide a plurality of load balancers whose IP addresses are then transmitted to corresponding passive peer devices before a search request.
  • the invention can be used, for example, for VOIP applications or file-sharing applications. While the invention is essentially based on a chord algorithm for finding ad ⁇ ests or data in P2P network described, other forms of organization of P2P networks can be used. By way of example only, the Kademlia search algorithm is mentioned.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

Verfahren zur Datenübertragung zwischen einer ersten Peer- Einrichtung (P1) in einem ersten Peer-to-Peer-Netzwerk (P2P1) und einer Ziel-Peer-Einrichtung (P2') in einem zweiten Peer- to-Peer-Netzwerk (P2P2), wobei jede Peer-Einrichtung (P1, P1', P2') eine Knoten-Adresse (NID1, NID1', NID2') in ihrem jeweiligen Peer-to-Peer-Netzwerk (P2P1, P2P2) und eine Netzwerk-Adresse (IP1, IP1', IP2') in einem übergeordneten Kommunikationsnetzwerk (IN) hat, wobei aus dem ersten Peer-to-Peer-Netzwerk (P2P1) eine Suchanfrage (S1) für die Ziel-Peer-Einrichtung (P2') an mindestens eine zweite Peer-Einrichtung (P1') in dem zweiten Peer-to-Peer-Netzwerk (P2P2) unter Angabe der Netzwerkadresse (IP1) der ersten Peer-Einrichtung (P1) gesendet wird.

Description

Beschreibung
Verfahren und Anordnung zur Datenübertragung zwischen Peer- to-Peer-Netzwerken
Die vorliegende Erfindung betrifft ein Verfahren zum Übertra¬ gen von Daten zwischen verschiedenen Peer-to-Peer-Netzwerken, eine geeignete Peer-Einrichtung sowie eine entsprechende Netzwerkanordnung .
Mit Peer-to-Peer-Systemen ist es möglich, eine Vielzahl von Geräten, die im Folgenden als Peer-Einrichtungen bezeichnet werden, ohne zentrale Einrichtungen, wie Servern, miteinander zu vernetzen. Dabei müssen bestimmte Dienste, welche in übli- chen Client-Server-Architekturen von der jeweiligen zentralen Einheit, dem Server, übernommen wird, von den Peer-Einrichtungen selbst erbracht werden. Eine besonders wichtige Funk¬ tionalität ist dabei die Adressauflösung, d. h. die für das Kontaktieren eines bestimmten Peers notwendige Umsetzung von bekannten Daten des Anwenders auf die Netzwerkadresse seines Gerätes bzw. seiner Peer-Einrichtung. Bekannte Daten können dabei z. B. der Anwendername, eine Telefonnummer oder andere Peer-Einrichtungen charakterisierende Bezeichnungen sein. Häufig wird das Internet als übergeordnetes Kommunikations- netzwerk mit dem bekannten Internetprotokoll TCP/IP verwen¬ det, sodass die Netzwerkadresse in der Regel die IP-Adresse und den Port des Peers umfasst. Im Folgenden wird die Be¬ zeichnung Peer und Peer-Einrichtung verwendet, es sind jedoch auch Bezeichnungen, wie Netzelement, Komponente, Kommunikati- onsendgerät, Teilnehmer, Instanz oder Station geläufig.
Die Kommunikation zwischen Peers erfolgt dabei über das Protokoll des übergeordneten Kommunikationsnetzwerkes, welches in der Regel das Internet ist. Das eigentliche Peer-to-Peer- Netzwerk wird dann durch eine Gruppe von Peers gebildet, die jeweils eine Knoten- ID oder Knoten-Adresse innerhalb des Peer-to-Peer (P2P) -Netzwerkes aufweisen. Eine Datenverbindung zwischen zwei Peers eines P2P-Netzwerkes erfordert zu- nächst die Ermittlung der Netzwerkadresse des angefragten Peers aus der Knoten-Adresse, die dem anfragenden Peer bekannt ist. Bei so genannten hybriden P2P-Netzwerken hält ein Server ein zentrales Verzeichnis der an dem P2P-Netz betei- ligten Peers in Form derer Knoten-Adresse und entsprechenden Netzwerkadresse bereit. Dateiaustauschplattformen wie beispielsweise Napster oder iMesh, Audio Galaxy oder SongSpy basieren auf einem P2P-Netzwerk mit einem entsprechenden zentralen Verzeichnisdienst. Nachteilig ist dabei, dass bei Aus- fall des zentralen Verzeichnisdienstes keine neuen Kommunikationsverbindungen mehr aufgebaut werden können.
Um die Abhängigkeit von einem Server mit zentralem Adressverzeichnis zu umgehen, ist es möglich, das P2P-Netzwerk mit Suchanfragen zu fluten, d. h. ausgehend von einem anfragenden Peer Anforderungsnachrichten kaskadenartig an viele andere Peers to senden, bis der gesuchte Peer antwortet. Diese Vor¬ gehensweise führt jedoch zu einer sehr hohen Netzbelastung; außerdem werden mit zunehmender Größe des Netzwerkes immer weniger der gesuchten Peers auch tatsächlich gefunden. Als Beispiel für diese Suchstrategie sei das Gnutella-Netzwerk genannt .
In anderen dezentralen P2P-Netzwerken ist kein zentraler Ser- ver, bzw. ein ausgezeichneter Peer, für einen Verzeichnisdienst vorgesehen. Ein anfragender Peer macht dabei dynamisch weitere Peers des P2P-Netzwerkes ausfindig und kommuniziert mit diesen, um Daten und Informationen auszutauschen. Die Adressauflösung, also das Ausfindigmachen der Netzwerkadresse des durch eine Knoten-Adresse in dem P2P-Netzwerk charakterisierten angefragten Peers, erfolgt dynamisch über ein Routing-Protokoll .
Eine Möglichkeit besteht beispielsweise in der Verwendung ei- ner verteilten Hash-Tabelle (DHT = Distributed Hash Table) . Dabei ist die Tabelle, welche jedem Peer bzw. jeder Knoten- Adresse eine entsprechende Netzwerkadresse in dem übergeord¬ neten Kommunikationsnetzwerk zuordnet, auf alle beteiligten Peers in dem P2P-Netzwerk verteilt. Bei einer ringförmig organisierten logischen Anordnung der Peers bzw. der Knoten-Adressen können die Peers beispielsweise eine Anzahl von be¬ nachbarten Peers bzw. Knoten-Adressen und deren Netzwerkad- ressen in einer lokalen Zuordnungs- oder Hash-Tabelle abspei¬ chern. Der Knotenadressraum weist dabei eine Metrik auf, die Abstände zwischen Peers bzw. Knoten-Adressen definiert. Ein geeigneter Algorithmus zur Adressauflösung in einem ringförmig organisierten dezentralen P2P-Netzwerk ist z. B. der Chord-Algorithmus, welcher in Ion Stoica, Robert Morris, Da¬ vid Karger, M. Frans Kaashoek, Hari Balakrishnan : "CHORD: A Scalable Peer-to-Peer Lookup Service for Internet Applicati¬ ons, MIT-LCS-TR-819 beschrieben ist.
Die Zuordnung einer Knoten-Adresse oder Knoten-ID (node-ID) kann beispielsweise durch Anwendung einer Hash-Funktion auf einen Benutzernamen des betreffenden Peers bestimmt werden. Analog können auch Suchbegriffe, wie beispielsweise Dateina¬ men einer Hash-Funktion unterzogen werden, was einen Hash- Wert liefert. Jedem Peer ist ein Bereich von Hash-Werten zugeordnet, die z. B. wiederum aufsteigend geordnet sind. Der erste Hash-Wert des einem jeweiligen Peer zugeordneten Bereichs entspricht dann z. B. der Knoten-Adresse des betref¬ fenden Peers. Dadurch wird beispielsweise festgelegt, welche Daten unter dem gehashten Dateinamen bei einem Peer verfügbar sind.
Eine Suche nach Daten oder Teilnehmern bzw. Peers wird durchgeführt, indem der anfragende oder suchende Peer den Hash- Wert des vorgegebenen Schlüsselwortes, wie Dateiname, Benut¬ zername oder z. B. Telefonnummer berechnet. Um die Netzwerkadresse der sich durch das Hashen ergebenden, zu suchenden Knoten-ID aufzufinden, sendet der anfragende Peer eine Suchanfrage an einen Peer, der mit seiner Knoten-Adresse und zu- gehörigen Netzwerkadresse in einer Liste bekannter Peers, beispielsweise einer Nachbarliste und/oder Fingerliste, des anfragenden Peers verzeichnet ist. Falls der angefragte Peer für den gesuchten Hash-Wert zuständig ist, sendet er die an- gefragten Daten an den anfragenden Peer über das übergeordnete Netzwerk.
Falls der zuerst angefragte Peer nicht für den Hash-Wert zu- ständig ist, antwortet er mit der Adresse eines Peers aus seiner Peerliste, dessen Knoten-ID dem gesuchten Hash-Wert ähnlicher ist als seine eigene Knoten-Adresse. Ob die eigene Knoten-ID mit der gesuchten Knoten-ID bzw. dem gesuchten Hash-Wert ähnlich ist, ergibt sich aus der verwendeten Metrik des Knotenadressraums. Der zuerst angefragte Peer sendet so¬ mit dem anfragenden Peer eine Knoten-ID und IP-Adresse, die dem gesuchten Hash-Wert näher kommt. Der anfragende Peer kann nun eine zweite Suchanfrage an den Peer mit der näheren Kno¬ ten-Adresse senden. Dieses Verfahren wird weitergeführt, bis ein Peer gefunden wird, der für den Hash-Wert zuständig ist und die gesuchten Daten liefern kann.
Bei diesem dezentralen Aufbau des P2P-Netzwerkes müssen alle teilnehmenden Peers in einer Ringstruktur organisiert sein, die sich aus der geordneten periodisch fortgesetzten Liste von Knoten-Adressen ergibt. P2P-Netzwerke finden beispiels¬ weise Anwendung zum Austausch von Dateien in Tauschbörsen. Eine Adressauflösung hinsichtlich der Netzwerkadresse in dem übergeordneten Netzwerk ist jedoch auch insbesondere wichtig bei so genannten VOIP-Übertragungen, d. h. Sprachübertragung über das Internet (VOIP= voice over IP) . Beispielsweise ist ein P2P-Netzwerk zur Sprachübertragung unter dem Namen "Skype" bekannt. Teilnehmer dieses Netzwerkes können unter¬ einander Sprachdaten austauschen und somit über das Internet telefonieren.
Die vorliegende Erfindung adressiert die Problematik von Da¬ tentransfers zwischen verschiedenen P2P-Netzwerken meist unterschiedlicher Betreiber. Für Peers unterschiedlicher P2P- Netzwerke sind die Netzwerkadresszuordnungen der jeweils anderen, fremden Peers grundsätzlich unbekannt. Um Peers verschiedener P2P-Netzwerke miteinander kommunizieren zu lassen, ist es beispielsweise möglich, die P2P-Netze zu einem Netz zu vereinigen. Es ergibt sich dann ein größeres P2P-Netzwerk . Das Zusammenführen bzw. das Zufügen fremder Peers erfordert den Austausch von vielen Stabilisierungsnachrichten, um die Nachbarlisten der einzelnen Peers miteinander abzugleichen bzw. neu zu strukturieren. Diese müssen dann zwischen den IP- Netzen der beiden Betreiber ausgetauscht werden. Bei einem Zusammenführen beispielsweise zweier P2P-Ringe wirken sich auch technische Probleme im Netz des einen Betreibers auf die Qualität des Dienstes für die Teilnehmers des anderes Betrei- bers aus. Eine separate Lizenzierung der Anzahlen der Endkunden beider Betreiber ist dann erschwert.
Alternativ wurde vorgeschlagen, mehrere P2P-Netzwerke über so genannte Gateways zu verknüpfen. Dabei nehmen ausgewählte Server die ankommenden Suchanfragen von fremden Netzwerken entgegen und führen eine Suche für die Suchanfrage in dem ei¬ genen P2P-Ring durch. Das Ergebnis dieser Suche, also bei¬ spielsweise eine Netzwerkadresse oder IP-Adresse eines Peers in dem eigenen Netzwerk wird dann an das anfragende Netzwerk bzw. dem Betreiber-fremden Peer zurückgesendet. Derartige Ga¬ teways müssen sehr leistungsstark sein, um viele Suchanfragen zu bewältigen. Es ergeben sich ferner Probleme durch erwünschte kryptographische Operationen bei der Authentisierung von Anfragen. Bei Ausfall eines Gateways sind zudem keinerlei Suchanfragen mehr zwischen den verschiedenen P2P-Netzwerken möglich .
Es ist daher eine Aufgabe der vorliegenden Erfindung, ein einfaches Verfahren zu schaffen, das einen sicheren und zu- verlässigen Datenaustausch zwischen Peers verschiedener Peer- to-Peer-Netzwerke ermöglicht.
Diese Aufgabe wird durch ein Verfahren zur Datenübertragung gemäß Patentanspruch 1, eine Peer-Einrichtung gemäß Patentan- spruch 6 sowie eine Netzwerkanordnung gemäß Patentanspruch 11 gelöst . Demgemäß ist ein Verfahren zur Datenübertragung zwischen einer ersten Peer-Einrichtung in einem ersten Peer-to-Peer- Netzwerk und einer Ziel-Peer-Einrichtung in einem zweiten Peer-to-Peer-Netzwerk vorgesehen, wobei jede Peer-Einrichtung eine Knoten-Adresse in ihrem jeweiligen Peer-to-Peer-Netzwerk und eine Netzwerkadresse in einem übergeordneten Kommunikati¬ onsnetzwerk hat, wobei aus dem ersten Peer-to-Peer-Netzwerk eine Suchanfrage für die Ziel-Peer-Einrichtung an mindestens eine zweite Peer-to-Peer-Einrichtung in dem zweiten Peer-to- Peer-Netzwerk unter Angabe der Netzwerkadresse der ersten Peer-Einrichtung gesendet wird.
Erfindungsgemäß erfolgt insbesondere die Adressauflösung des gesuchten Peers in einem Peer-to-Peer-Netzwerk, das von dem Peer-to-Peer-Netzwerk des anfragenden Peers unterschiedlich ist, indem die Netzwerkadresse des anfragenden Peers an eine Peer-Einrichtung in dem fremden Netz übergeben wird. Dort kann dann eine Adressauflösung des gesuchten Peers in dem fremden Netzwerk erfolgen, bis der Ziel-Peer gefunden ist, welcher dann über das übergeordnete Netzwerk die Datenverbindung mit dem anfragenden Peer bzw. dessen Netzwerkadresse aufbauen kann. Das übergeordnete Kommunikationsnetzwerk ist beispielsweise das Internet oder vergleichbare Netzwerkstruk¬ turen .
Vorzugsweise werden ferner die folgenden Verfahrensschritte durchgeführt :
- Senden der Suchanfrage unter Angabe einer Ziel-Knoten-Ad- resse der Ziel-Peer-Einrichtung in dem zweiten Peer-to-Peer- Netzwerk;
- Durchführen einer Suche in dem zweiten Peer-to-Peer-Netzwerk gemäß einem Suchalgorithmus mit einer verteilten Hash- Tabelle zum Auffinden der Netzwerkadresse der Ziel-Peer-Einrichtung; - Senden der Netzwerkadresse der Ziel-Peer-Einrichtung an die erste Peer-Einrichtung über das übergeordnete Kommunikations¬ netzwerk .
Sobald die anfragende Peer-Einrichtung die Netzwerkadresse der Ziel-Peer-Einrichtung empfangen hat, kann dann ferner eine Datenverbindung zwischen der ersten Peer-Einrichtung und der Ziel-Peer-Einrichtung über das übergeordnete Kommunikati¬ onsnetzwerk mittels der Netzwerkadressen aufgebaut werden. Für die anfragende Peer-Einrichtung spielt die Struktur des fremden P2P-Netzwerkes keine Rolle. Die Suche nach der Netz¬ werkadresse der Ziel-Peer-Einrichtung erfolgt nach dem Protokoll des zweiten Peer-to-Peer-Netzwerkes . Für die Datenver¬ bindung ist letztlich lediglich die Netzwerkadresse maßgeb- lieh.
In einer Abwandlung des Verfahrens wird die Suchanfrage der ersten Peer-Einrichtung an eine weitere zweite Peer-Einrichtung in dem zweiten Peer-to-Peer-Netzwerk umgeleitet, wobei die Netzwerkadresse der weiteren Peer-Einrichtung in dem zweiten Peer-to-Peer-Netzwerk in einer Liste abgespeichert ist. Durch das Abspeichern einer Liste von Peer-Einrichtungen in dem zweiten Netzwerk kann bereits eine günstige Vorauswahl für die Peer-Einrichtung in dem zweiten Netzwerk getroffen werden, sodass die Ziel-Knoten-Adresse bezüglich der Metrik des Adressraumes in dem zweiten Peer-to-Peer-Netzwerk in der Nähe der Peer-Einrichtung liegt, von der aus die Adressauflö¬ sung bzw. die Suche in dem zweiten Peer-to-Peer-Netzwerk ausgeht .
Vor der Suchanfrage kann ferner eine Liste von Netzwerkadres¬ sen von zweiten Peer-Einrichtungen in dem zweiten Peer-to- Peer-Netzwerk an eine passive Peer-Einrichtung übertragen werden, wobei die passive Peer-Einrichtung der ersten Peer- Einrichtung zugeordnet ist. Dadurch kann sichergestellt wer¬ den, dass für eine Suchanfrage aus dem eigenen Peer-to-Peer- Netzwerk heraus immer eine aktive Instanz bzw. in dem fremden Ziel-Netzwerk eine über eine Netzwerkadresse adressierbare Peer-Einrichtung bereitsteht, von der aus die Suche in dem Ziel-Peer-to-Peer-Netzwerk ausgehen kann.
Die Erfindung schafft ferner eine Peer-Einrichtung für ein erstes Peer-to-Peer-Netzwerk mit einer Knoten-Adresse in dem ersten Peer-to-Peer-Netzwerk und mit einer Netzwerkadresse in einem übergeordneten Kommunikationsnetzwerk, wobei die Peer- Einrichtung eine zugeordnete passive Peer-Einrichtung aufweist, welche Peer-to-Peer-Netzwerk unabhängig ist und min- destens eine Netzwerkadresse einer Peer-Einrichtung in einem zweiten Peer-to-Peer-Netzwerk vorhält, und wobei die passive Peer-Einrichtung derart eingerichtet ist, dass sie eine Such¬ anfrage für eine Ziel-Peer-Einrichtung in dem zweiten Peer- to-Peer-Netzwerk unter Angabe der Netzwerkadresse der Peer- Einrichtung an die mindestens eine Peer-Einrichtung (Pl') in dem zweiten Peer-to-Peer-Netzwerk sendet.
Die erfindungsgemäße Peer-Einrichtung eignet sich insbesondere zur Durchführung des erfindungsgemäßen Verfahrens zur Datenübertragung zwischen Peer-to-Peer-Netzwerken . Die passive Peer-Einrichtung, welche auch als passive Instanz in dem Peer-to-Peer-Netzwerk bezeichnet wird, während die üblichen Peer-Einrichtungen aktive Instanzen in dem Netzwerk sind, ist nicht Teil des Peer-to-Peer-Netzwerkes . Sie liefert lediglich eine oder mehrere Netzwerkadressen, welche für eine Suchanfrage in dem fremden Peer-to-Peer-Netzwerk notwendig sind. Führt beispielsweise die anfragende Peer-Einrichtung ein Has- hen für einen Teilnehmernamen durch, wodurch eine fremde, also nicht dem eigenen Peer-to-Peer-Netzwerk zugehörige Kno- ten-Adresse generiert wird, übergibt die passive Peer-Ein¬ richtung diese Ziel-Knoten-Adresse an eine Peer-Einrichtung des fremden Peer-to-Peer-Netzwerkes, welche der durch die passive Peer-Einrichtung gespeicherten Netzwerkadresse entspricht. Die Suche in dem fremden Netzwerk erfolgt nach einem geeigneten Suchalgorithmus und liefert die Netzwerkadresse des gesuchten Ziel-Peers an die anfragende Peer-Einrichtung zurück, da die passive Peer-Einrichtung die Netzwerkadresse des anfragenden Peers übergeben hat. Vorzugsweise hat die passive Peer-Einrichtung daher keine Knoten-Adresse in einem der Peer-to-Peer-Netzwerke zugewiesen und ist auch nicht von anderen Peer-Einrichtungen adressier- bar .
Die Peer-Einrichtung weist vorzugsweise eine abgespeicherte Teil-Hash-Tabelle einer verteilten Hash-Tabelle des Peer-to- Peer-Netzwerkes auf, die eine Zuordnung von Knoten-Adressen auf Netzwerkadressen umfasst.
In einer bevorzugten Ausführungsform ist die mindestens eine Peer-Einrichtung als ablauffähiges Computerprogramm mit einem Stabilitäts-Programm-Modul zur Stabilisierung des Peer-to- Peer-Netzwerkes gemäß einem Peer-to-Peer-Protokoll, einem
Speicher-Programm-Modul zum Speichern von Daten und mit einem Such-Programm-Modul zum Erzeugen von Suchanfragen auf einem Computer implementiert ist, wobei die passive Peer-Einrich¬ tung auf das Such-Programm-Modul unter Verwendung der mindes- tens einen Netzwerkadresse der Peer-Einrichtung in dem zweiten Peer-to-Peer-Netzwerk zugreift.
Peer-to-Peer-Netzwerke, wie beispielsweise Tauschbörsen, wel¬ che so genanntes File Sharing betreiben, lassen sich aus an das Internet gekoppelten Rechnern aufbauen. Die Verwirklichung einer erfindungsgemäßen Peer-Einrichtung erfordert daher lediglich die Implementierung einer zusätzlichen passiven Peer-Einrichtung, welche dem Suchprogramm-Modul die Netzwerkadresse einer Peer-Einrichtung in dem zweiten Peer-to-Peer- Netzwerk übergibt. Im einfachsten Fall umfasst die passive Peer-Einrichtung daher lediglich eine Tabelle mit möglichen Netzwerkadressen von fremden Peer-Einrichtungen, damit dann die weitere Adressauflösung in dem fremden Peer-to-Peer-Netzwerk erfolgt. Gegenüber üblichen Peer-Einrichtungen ergibt sich daher ein minimaler Mehraufwand. Auch die Rechnerbelas¬ tung durch die erfindungsgemäße Datenübertragung zwischen verschiedenen Peer-to-Peer-Netzwerken ist gering, da ledig- lieh auf für die Suche im eigenen Peer-to-Peer-Netzwerk vorgehaltene Programm-Module zurückgegriffen wird.
Ferner ist eine Netzwerkanordnung mit einem ersten Peer-to- Peer-Netzwerk mit ersten Peer-Einrichtungen und mindestens einem zweiten Peer-to-Peer-Netzwerk mit zweiten Peer-Einrichtungen vorgesehen, wobei mindestens eine der Peer-Einrichtungen erfindungsgemäß ausgeführt ist.
Vorteilhaft ist in einer erfindungsgemäßen Netzwerkanordnung jeder Peer-Einrichtung eine passive Peer-Einrichtung zugeordnet. Durch diesen minimalen Mehraufwand ergibt sich insbesondere bei einer Computerimplementierung der Erfindung durch die vorgesehenen passive Peer-Einrichtungen, welche jeweils wiederum als Computerprogramm ausgebildet sein können, eine Vernetzung aller Peer-to-Peer-Netzwerke .
In einer bevorzugten Ausführungsform der Netzwerkanordnung ist mindestens eine Peer-Einrichtung als Load-Balancer vorge- sehen, welche die Suchanfrage einer passiven Peer-Einrichtung an eine Peer-Einrichtung in dem jeweiligen Peer-to-Peer-Netzwerk weiterleitet. Ein Load-Balancer, der vorzugsweise eine Liste mit in dem jeweiligen Ziel-Peer-to-Peer-Netzwerk aktiven Peer-Einrichtungen und deren Netzwerkadressen vorhält, stellt daher sicher, dass die Suche in dem Ziel-Peer-to-Peer- Netzwerk immer von einer dessen Peer-Einrichtungen ausgehend durchgeführt werden können.
In einer besonderen Ausführungsform ist mindestens eine Peer- Einrichtung als Rendezvous-Peer vorgesehen, welche auf Anfrage einer passiven Peer-Einrichtung mindestens eine Netzwerkadresse einer Peer-Einrichtung in dem jeweiligen Ziel- Peer-to-Peer-Netzwerk bereitstellt. Somit kann vor einer Suchanfrage zunächst die Liste der passiven Peer-Einrichtun- gen mit möglichen Netzwerkadressen von Peer-Einrichtungen in dem Ziel-Peer-to-Peer-Netzwerk aktualisiert werden. Mindestens eines der Peer-to-Peer-Netzwerke arbeitet vorzugs¬ weise mit einer verteilten Hash-Tabelle und insbesondere mit einem Chord-Algorithmus oder einem Kademlia-Algorithmus zur Adressauflösung im jeweiligen Netzwerk.
Weitere vorteilhafte Ausgestaltungen und Weiterbildungen der Erfindung sind Gegenstand der Unteransprüche sowie der im Folgenden in Bezug auf die Figuren näher erläuterten Ausführungsbeispiele .
Es zeigt:
Figur 1: ein ringförmig organisiertes Peer-to-Peer-Netzwerk;
Figur 2: zwei erfindungsgemäß gekoppelte P2P-Netzwerke;
Figur 3: ein Funktionsdiagramm einer Peer-Einrichtung;
Figur 4: zwei erfindungsgemäß gekoppelte P2P-Netzwerke mit Rendezvous-Peer; und
Figur 5: mehrere erfindungsgemäß gekoppelte P2P-Netzwerke .
In den Figuren sind, soweit nichts Anderes angegeben ist, gleiche oder funktionsgleiche Elemente mit denselben Bezugs¬ zeichen versehen worden.
Zur Erläuterung der allgemeinen Problematik bei der Adressauflösung in Peer-to-Peer-Netzwerken ist in der Figur 1 bei- spielhaft ein ringförmig organisiertes P2P-Netzwerk darge¬ stellt. Es sind Peer-Einrichtungen P1-P8 vorgesehen, die beispielsweise als an das Internet angeschlossene Rechner mit einer installierten P2P-Software ausgeführt sind. Jeder Peer besitzt daher eine IP-Adresse IP1-IP8, die ihn im Internet identifiziert, und eine Knoten-Adresse NID1-NID8, die ihn als Peer in dem P2P-Netzwerk P2P1 identifiziert. Es wird im Folgenden beispielhaft die Funktionsweise des Chord-Algorithmus zur Adressauflösung erläutert. Allerdings sind auch andere P2P-Protokolle für dezentrale P2P-Netzwerke möglich.
Die Knoten-Adresse eines Peers ergibt sich beispielsweise durch Anwendung einer geeigneten Hash-Funktion auf den Namen des Peers. Der Name kann beispielsweise ein Benutzername oder eine Telefonnummer sein. Der Hash-Wert eines entsprechenden Suchwortes, beispielsweise einer Telefonnummer, ist einer Knoten-ID bzw. einer Knoten-Adresse zugeordnet. Es können auch mehrere Hash-Werte einer Knoten-Adresse zugeordnet sein. Beispielsweise kann dem Peer Pl eine Knoten-Adresse NIDl = 003 zugeordnet sein, wobei der Wert NIDl = 003 den Beginn ei¬ nes Bereiches von Hash-Werten angibt, für die der Peer Pl verantwortlich ist. Bei einem P2P-Netzwerk, das 10 Bit breite Hash-Werte verwendet, können beispielsweise wie in der Ta¬ belle angegebene Bereiche von Hash-Werten den jeweiligen Peers zugeordnet werden.
Jedem Peer ist somit eine Knoten-Adresse mit einem bestimmten Wert zugeordnet und ein Bereich von aus Suchbegriffen erzeugte Hash-Werte H = Hash (Suchbegriff) .
Die Tabelle stellt somit die vollständige Tabelle des P2P- Netzwerkes dar. Diese ist nicht zentral von einem Server be¬ reitgestellt, sondern auf die einzelnen Peers P1-P8 aufge¬ teilt abgespeichert. Jeder Peer kennt die zugeordneten Hash- Werte seiner Nachbarn, beispielsweise der nächsten Nachbarn. Der Peer P3 hat die Information abgespeichert, dass für Hash- Werte 124-203 der Peer P2 mit Knoten-Adresse NID2 = 124 zu¬ ständig ist. Der Peer P3 kennt ferner seine eigene Zuständig- keit für die Hash-Werte 204-311 und die Zuständigkeit des be¬ nachbarten Peers P4 mit der Knoten-Adresse NID4 = 312 für die Hash-Werte 312-434. Verallgemeinert verfügt jeder Peer über eine Teil-Hash-Tabelle mit der Zuordnung von Hash-Werten sei¬ ner im Knotenadressraum benachbarten Peers und gegebenenfalls die Zuordnung der Hash-Werte eines oder mehrerer Finger- Peers, z. B. im Falle des Peers P3, die Zuordnung des Peers P7 mit der Knoten-Adresse NID7 = 690 für die Hash-Werte 690- 814. Eine entsprechende Teil-Hash-Tabelle PHT ist in der Fi¬ gur 1 dargestellt.
Falls nun ausgehend von dem Peer P2 eine Suchanfrage bzw. Da¬ teiabfrage für einen Suchbegriff, der den Hash-Wert Hash (Suchbegriff) = 530 liefert, gestartet wird, sendet der Peer P2 eine Suchanfrage Fl an den Peer P3 unter Angabe sei- ner eigenen Netzwerkadresse IP2 und dem gesuchten Hash-Wert 530. Es wird der Peer P3 ausgewählt, da in der Teil-Hash-Ta¬ belle PHT2 des Peers P2 der Hash-Wert 530 näher an dem Zu¬ ständigkeitsbereich des Peers P3 mit Hash-Werten zwischen 204 und 311 liegt, als der weitere in der Teil-Hash-Tabelle ver- zeichnete Peer Pl mit Zuständigkeitsbereich zwischen H = 003 und 123. Eine Suchanfrage wird daher immer an denjenigen Peer in der eigenen Teil-Hash-Tabelle gesendet, dessen Knoten-Ad¬ resse im Knotenadressraum am nächsten dem Hash-Wert des Suchbegriffs bzw. der Ziel-Knoten-Adresse liegt.
Der Peer P3 überprüft daraufhin seine Teil-Hash-Tabelle PHT3 und ermittelt den Peer P7 als denjenigen Peer, dessen Zuständigkeitsbereich bzw. zugeordnete Hash-Werte dem gesuchten Hash-Wert 530 am nächsten liegt und sendet eine entsprechende zweite Suchanfrage F2. Der Peer P7 ermittelt in seiner zuge¬ ordneten Teil-Hash-Tabelle PHT7 den Peer P6 mit der Knoten- Adresse 523 als für den Hash-Wert 530 zuständigen Peer und sendet diese Information an den ursprünglich anfragenden Peer P2, dessen Netzwerkadresse IP2 den Suchanfragen Fl, F2 zugeordnet ist. Alternativ könnte der Peer P7, falls der Peer P2 eine Datenabfrage des Suchbegriffs mit dem Hash-Wert 530 ver¬ sendet hat, dem Peer P6 die Datenabfrageanforderung von dem Peer P2 bzw. dessen Netzwerkadresse IP2 in einer Nachricht F3 x zu senden. Daraufhin übermittelt der Ziel-Peer P6 direkt an den anfragenden Peer P2 bzw. dessen IP-Adresse IP2 die mit dem Hash-Wert 530 bezeichneten Daten über eine Datenverbindung F4 im Kommunikationsnetzwerk bzw. Internet. Somit ermög- licht ein entsprechendes P2P-Protokoll die Adressauflösung von gesuchten Daten, beispielsweise ausgehend vom Peer P2, dem keine Information über den Speicherort dieser Daten im P2P-Netzwerk vorliegen, da die dem Peer P2 zugeordnete Teil- Hash-Tabelle PHT2 diesen Knotenadressbereich nicht umfasst.
In der Figur 2 sind zwei Peer-to-Peer-Netzwerke P2P1, P2P2 jeweils mit Peer-Einrichtungen P1-P4, P1X-P5X dargestellt. Den Peer-Einrichtungen P1-P4, P1X-P5X sind jeweils Netzwerkadressen IP1-IP4 und IP1X-IP5X zugewiesen sowie Knoten-Adres- sen NID1-NID4, NIDl X-NID5 x in ihrem jeweiligen P2P-Netzwerk . Vereinfacht wird hier angenommen, dass die jeweilige Knoten- Adresse NID dem Hash-Wert des Peer- oder Teilnehmernamens entspricht. Die beiden in der Figur 2 dargestellten P2P-Netz- werke P2P1, P2P2 werden von verschiedenen Betreibern oder Providern betrieben. Es ist beispielsweise denkbar, dass die P2P-Netzwerke der VOIP-Übertragung zwischen ihren Teilnehmern, die jeweils eine Peer-Einrichtung verwenden, dienen.
Falls Teilnehmer innerhalb eines Betreiber-P2P-Netzes mitein- ander telefonieren möchten bzw. falls Peer-Einrichtungen innerhalb des P2P-Netzes miteinander kommunizieren, erfolgt die Adressauflösung, wie beispielsweise in Bezug auf die Figur 1 beschrieben wurde. Falls allerdings ein Teilnehmer A, der den Peer Pl betreibt mit einem Teilnehmer B, der den Peer P2 x in dem zweiten P2P-Netz P2P2 betreibt, kommunizieren möchte, muss eine Ausführungsform des erfindungsgemäßen Verfahrens eingesetzt werden. Um einen Datenaustausch bzw. eine Datenübertragung zwischen Peers unterschiedlicher P2P-Netzwerke zu ermöglichen, ist beispielsweise dem Peer Pl eine passive Peer-Einrichtung pPl zugeordnet. Die passive Peer-Einrichtung pPl ist derart als eine passive Instanz des jeweiligen Netz¬ werkes P2P1 ausgelegt, dass sie keinerlei Daten von anderen Peers abspeichern kann, sondern lediglich Suchanfragen an aktive Instanzen, also Peers, senden kann. Die passive Peer- Einrichtung pPl hält dabei mindestens eine IP-Adresse bzw. Netzwerkadresse einer Peer-Einrichtung in einem fremden Peer- to-Peer-Netzwerk bereit.
Es wird im Folgenden beispielhaft eine Datenverbindung zwischen dem Peer Pl im ersten Peer-to-Peer-Netzwerk P2P1 und dem Peer P2 x in dem zweiten Peer-to-Peer-Netzwerk P2P2 erläutert . Beide P2P-Netzwerke P2P1, P2P2 sind in einem übergeord- neten Kommunikationsnetzwerk, wie dem Internet IN realisiert. Der Teilnehmer A hat z. B. als Knoten-Adresse NIDl den Hash- Wert seines Teilnehmernamens wie z. B. hash (TeilnehmerA@Betreiberl ) . Der Teilnehmer B, welcher an das zweite P2P-Netzwerk P2P2 angeschlossen ist, hat z. B. eine Knoten-Adresse NID2 x = hash (TeilnehmerB@Betreiber2) .
Soll die Peer-Einrichtung Pl eine Verbindung über das Internet IN zu dem Peer P2 x herstellen, stellt die Peer-Einrichtung Pl fest, dass die Knoten-Adresse NID2 x in dem fremden Peer-to-Peer-Netzwerk P2P2 liegt. Dadurch wird die passive Peer-Einrichtung pPl aktiviert, welche die Peer-Tabelle pPT mit aktiven Instanzen bzw. Peers des Fremd-P2P-Netzes P2P2 und deren Netzwerkadressen bzw. IP-Adressen IP x bereithält. Die passive Peer-Einrichtung pPl hat selbst keine Knoten-Ad¬ resse für eines der P2P-Netzwerke, sondern ist lediglich der- art ausgeführt, dass sie Suchanfragen unter Angabe einer
Ziel-Knoten-Adresse und vorzugsweise der Netzwerkadresse IPl ihres Peers Pl an einen Peer Pl x des Fremdnetzes P2P2 senden kann .
Die passive Peer-Einrichtung PPl übermittelt daher über das
Internet IN eine Suchanfrage Sl unter Angabe der Ziel-Knoten- Adresse NID2 x und der eigenen IP-Adresse IPl des anfragenden Peers pPl an die IP- bzw. Netzwerkadresse IPl x des Peers Pl x in dem fremden Peer-to-Peer-Netzwerk P2P2. Somit kann nun nach einem geeigneten Suchalgorithmus des Peer-to-Peer-Netz- werkes P2P2 der gesuchte Ziel-Peer P2 x gefunden werden.
In dem in der Figur 2 dargestellten Beispiel ist die Knoten- Adresse NID2 x in der Teil-Hash-Tabelle bzw. Nachbarliste des Peers Pl x verzeichnet. D. h., der Peer Pl x sendet an die IP- Adresse IPl des anfragenden Peers pPl aus dem P2P-Netzwerk P2P1, die Netzwerkadresse IP2 x des Ziel-Peers P2 x . Somit kann eine Adressauflösung ausgehend vom Peer pPl für einen Ziel- Peer P2 x in einem fremden Peer-to-Peer-Netzwerk P2P2 durchgeführt werden.
In einem weiteren Schritt S3 kann nunmehr der passive Peer pPl den Ziel-Peer P2 x mit der IP-Adresse bzw. Netzwerkadresse IP2 x anfragen. Über das übergeordnete Kommunikationsnetzwerk, hier das Internet IN, ist nun eine Datenverbindung zwischen den IP-Adressen IPl, IP2 x möglich, was durch den Pfeil S4 in der Figur 2 angedeutet ist. Durch den Einsatz eines passiven Peers pPl, der dem Peer Pl zugeordnet ist, ist es somit mög¬ lich, eine Suchanfrage in das Ziel-P2P-Netzwerk zu exportie¬ ren, wo diese nach dem dort gültigen Suchalgorithmus durchge¬ führt wird.
In der Figur 3 ist schematisch der Aufbau einer Peer-Einrichtung Pl gemäß einer Ausführungsform der Erfindung dargestellt. Eine Peer-Einrichtung Pl lässt sich insbesondere com¬ puterimplementiert als ablauffähige Software auf einem Compu¬ ter ausführen. Dazu weist ein entsprechendes Computerprogramm bzw. Peer Pl ein Stabilitäts-Programm-Modul SM, ein Speicher- Programm-Modul RM, ein Suchprogramm-Modul LM und ein Pro¬ gramm-Modul pPM für den passiven Peer auf. Ferner können weitere Module wie beispielsweise ein Modul zur Realisierung der Teil-Hash-Tabelle PHTl mit dem jeweiligen Nachbar-Peer und Peer-Adressen für den Suchalgorithmus bzw. das Suchmodul LM vorgesehen werden. Der Peer Pl bzw. die Peer-Software interagiert in der Regel mit einer übergeordneten Applikationssoftware AP, die zur Re¬ alisierung der jeweiligen Funktion des Rechners dient. Dies kann beispielsweise eine VOIP-Software, die Software für File-Sharing oder andere Anwendungen, bei denen eine Peer-to- Peer-Kommunikation gewünscht ist, sein. Das Stabilitätspro¬ gramm-Modul dient unter Anderem dazu, die Nachbartabelle PHTl bzw. die zugeordnete Teil-Hash-Tabelle des Peers Pl zu aktua¬ lisieren, falls zusätzliche Peers in das P2P-Netzwerk eintre- ten oder Peers ausfallen. Das Stabilitätsprogramm-Modul ver¬ fügt über geeignete Stabilitäts-Algorithmen, die jeweils eine für den Peer Pl passende Teil-Hash-Tabelle gewährleistet.
Das Speicherprogramm-Modul RM dient beispielsweise der Ablage von Daten oder Dateien, die dem P2P-Netzwerk zur Verfügung gestellt werden sollen. Dies können beispielsweise Adressen, Telefonnummern, Benutzernamen oder Dateinamen sein. Das Suchprogramm-Modul LM realisiert beispielsweise die bezüglich der in Figuren 1 und 2 erläuterten Suchalgorithmen in dem Peer- to-Peer-Netzwerk durch. Das Suchprogramm-Modul greift dabei auf die Teil-Hash-Tabelle PHTl des Peers 1 zu und erzeugt entsprechende Suchanfragen, die beispielsweise die Ziel-Kno¬ ten-Adresse und die eigene Netzwerkadresse umfassen. Das pas¬ sive Peer-Modul pPM hat Zugriff auf das Such-Programm-Modul LM und liefert diesem die Netzwerkadresse eines Peers in ei¬ nem Fremdnetzwerk als IP-Adresse für einen Peer, der die Suchanfrage weiterverarbeiten kann. Dies geschieht, wenn der Peer Pl mit einem Peer kommunizieren soll, der eine Ziel-Knoten-Adresse aufweist, welche nicht dem eigenen P2P-Netzwerk zugehörig ist. Das Such-Programm-Modul erzeugt somit eine
Standardsuchanfrage, wobei die Suchnachricht an eine IP-Ad¬ resse außerhalb des eigenen P2P-Netzwerkes übertragen wird, da das passive Peer-Modul pPM einschreitet.
In der Folge kann eine Adressauflösung beispielsweise wie sie bezüglich der Figur 2 erläutert wurde, durchgeführt werden. Da die Programm-Module zum Stabilisieren des eigenen P2P- Netzwerkes SM, zum Speichern RM und zur Erzeugung von Suchan- fragen LM üblicherweise in Peer-Einrichtungen bzw. entsprechender Software vorgehalten ist, bedeutet die Erweiterung mit einem passiven Peer-Modul pPM nur einen geringen Mehraufwand. Da dem passiven Peer-Modul keinerlei Knoten-Adresse zu- gewiesen ist, wird auch insgesamt die Netzwerkstruktur der jeweiligen P2P-Netzwerke nicht komplexer.
In der Figur 4 ist eine weitere mögliche Ausgestaltung der Erfindung dargestellt. Es ist ein erstes Peer-to-Peer-Netz- werk P2P1 mit Peer-Einrichtungen P1-P5 vorgesehen, bei dem jeder Peer-Einrichtung P1-P5 eine passive Peer-Einrichtung pPl-pP5 zugeordnet ist. In ähnlicher Weise ist ein zweites Peer-to-Peer-Netzwerk P2P2 aufgebaut mit Peer-Einrichtungen Plx-P5\ wobei jedem Peer P1X-P5X auch eine passive Peer-Ein- richtung pPlx-pP5x zugeordnet ist. Da jedem Peer P1-P5, Pl x- P5 x eine passive Instanz in Form der passiven Peer-Einrichtung zugewiesen ist, kann jede der Peer-Einrichtungen bei Vorliegen einer Suchanfrage für Dateien oder Informationen in fremden Peer-to-Peer-Netzen den Suchalgorithmus des jeweili- gen Ziel-Peer-to-Peer-Netzwerkes verwenden, wie es bereits vorgehend näher erläutert wurde.
In dem zweiten Peer-to-Peer-Netzwerk P2P2 ist eine Peer-Einrichtung als Rendezvous-Peer RV ausgeführt. Dieser Rendez- vous-Peer RV stellt eine Liste von Netzwerkadressen von aktiven Peers des zweiten Peer-to-Peer-Netzwerkes P2P2 bereit, wobei eine dieser in einer Liste APL verzeichneten IP-Adres- sen der Peers einem passiven Peer pPl des ersten Netzwerkes P2P1 zur Verfügung gestellt wird, falls eine Suchanfrage aus dem P2P-Netzwerk P2P1 in das zweite P2P-Netz P2P2 erfolgen muss. Der Rendezvous-Peer RV stellt einem jeweiligen passiven Peer pPl, also immer eine Auswahl von Peers des Netzes P2P2 bereit, welche aktiv sind und die Suchalgorithmen des P2P2 starten können.
Falls also eine Anfrage, beispielsweise vom Peer Pl des ers¬ ten Peer-to-Peer-Netzwerkes P2P1 ausgeht, wobei der entspre¬ chende Peer oder Teilnehmer im zweiten P2P-Netzwerk vorliegt, fragt der passive Peer pPl zunächst in einer Anfrage MO x beim Rendezvous-Peer RV nach möglichen IP-Adressen von Peers in dem zweiten Netzwerk, denen eine anschließende Suchanfrage zugeleitet werden kann. Der Rendezvous-Peer prüft seine Liste APL und überträgt eine oder mehrere entsprechende IP-Adres¬ sen, beispielsweise des Peers P3 x in einer entsprechenden Nachricht MO an den passiven Peer pPl. Der passive Peer pPl generiert daraufhin eine Suchanfrage unter Angabe der Knoten- Adresse, beispielsweise NID5\ der IP-Adresse seines Peers Pl als Startadresse für die Suchanfrage und der IP-Adresse des angefragten Peers IP3 x . Diese Suchanfrage Sl geht dem Peer P3 x zu, welcher dann im zweiten Peer-to-Peer-Netzwerk P2P2 den Suchalgorithmus startet. Ein Rendezvous-Peer RV gewährleistet so, dass einem passiven Peer immer eine geeignete IP- Adresse für einen Peer in dem Ziel-Peer-to-Peer-Netzwerk bereitsteht, an die eine Suchanfrage ermittelt werden kann.
In der Figur 5 ist eine weitere Ausführungsform der Erfindung dargestellt. Es sind beispielhaft drei Peer-to-Peer-Netzwerke P2P1, P2P2, P2P3 dargestellt mit Peer-Einrichtungen P1-P5, Plx-P5\ PN x x , wobei jeder Peer-Einrichtung eine passive Peer-Einrichtung pPl-pP5, pPlx-pP5\ pPN x x zugeordnet ist. Ferner ist jedem P2P-Netzwerk mindestens ein Load-Balancer LBl, LB2, LB3 zugeordnet, der für Suchanfragen von fremden passiven Peer-Einrichtungen zuständig ist.
Die erste Nachricht einer Suchanfrage eines passiven Peers in ein Ziel-P2P-Netzwerk erfolgt in dieser Ausführungsform der Erfindung gemäß der Figur 5 immer an den Load-Balancer LBl, LB2, LB3. Dieser Load-Balancer leitet die Suchanfrage entwe¬ der an einen beliebigen Peer aus einer Liste aktiver Peers des Zielnetzwerkes oder vorzugsweise bereits an den Peer, dessen Knoten-Adresse der Ziel-Knoten-Adresse am nächsten ist. Der passive Peer pPl sendet beispielsweise seine Suchan- frage Tl an den Load-Balancer LB2 des zweiten Peer-to-Peer- Netzes P2P2. Dieser entscheidet, dass der Peer P3 x der ge¬ suchten Ziel-Knoten-Adresse, beispielsweise NID4 x am nächsten liegt und leitet die Suchanfrage an den Peer P3 x weiter. Der Peer P3 x beantwortet die Suchanfrage des passiven Peers pPl mit einer Nachricht T3, die beispielsweise die Netzwerkad¬ resse IP4 x des Ziel-Peers 4 x enthält. Anschließend können die Peers Pl und P4 x eine Datenverbindung zwischen ihren IP-Ad- ressen IPl und IP4 x aufbauen.
Die Load-Balancer LBl, LB2, LB3 müssen dabei nicht als aktive Instanzen in den P2P-Netzwerken ausgeführt werden. Es genügt, dass den Load-Balancern LBl, LB2, LB3 jeweils eine Liste mit aktiven Peers APL vorliegt, um Suchanfragen günstig weiterzu¬ leiten. Je größer die Liste des Load-Balancers ist, desto besser kann dieser die Last der von extern eintreffenden Suchanfragen in seinem Ziel-Peer-to-Peer-Netzwerk verteilen. Der Load-Balancer kann auch mit einem Rendezvous-Peer, wie er in Figur 4 erläutert wurde, identisch ausgeführt werden. Dann übergibt eine entsprechende kombinierte Peer-Einrichtung zu¬ nächst eine Liste von aktiven Peers an die anfragende passive Peer-Einrichtung. Es können auch mehrere Load-Balancer vorgesehen sein, deren IP-Adressen dann vor einer Suchanfrage an entsprechende passive Peer-Einrichtungen übermittelt wird.
Durch eine entsprechende Redundanz von Rendezvous-Peers oder Load-Balancer-Peers wird die Zuverlässigkeit von Datenanfra¬ gen zwischen verschiedenen Peer-to-Peer-Netzwerken weiter verbessert .
Obwohl die vorliegende Erfindung anhand von bevorzugten Ausführungsformen näher erläutert wurde, ist sie nicht darauf beschränkt, sondern vielfältig modifizierbar. Die Erfindung lässt sich beispielsweise auf VOIP-Anwendungen oder File-Sha- ring-Anwendung einsetzen. Obwohl die Erfindung im Wesentlichen anhand eines Chord-Algorithmusses für die Suche von Ad¬ ressen oder Daten im P2P-Netz beschrieben wurde, können auch andere Organisationsformen von P2P-Netzwerken verwendet werden. Lediglich beispielhaft sei ferner der Kademlia-Suchalgo- rithmus genannt.
Es sind auch weitere übergeordnete Kommunikationsnetze neben dem Internet denkbar. Ähnliche Netzwerke sind beispielsweise bei ISDN-, GSM- oder UMTS-Kommunikationsnetzen gegeben. Übergänge zwischen Peer-to-Peer-Netzen ergeben sich beispielsweise auch bei Telefonaten zwischen Teilnehmern verschiedener Mobilfunknetze. Durch die Erfindung wird eine höhere Sicher¬ heit und Stabilität der Netzwerke erreicht, da weiterhin ge¬ trennte P2P-Netzwerke bestehen. Der Einsatz von besonders leistungsfähigen Gateway-Rechnern ist nicht notwendig.

Claims

Patentansprüche
1. Verfahren zur Datenübertragung zwischen einer ersten Peer- Einrichtung (Pl) in einem ersten Peer-to-Peer-Netzwerk (P2P1) und einer Ziel-Peer-Einrichtung (P2 ' ) in einem zweiten Peer- to-Peer-Netzwerk (P2P2), wobei jede Peer-Einrichtung (Pl, Pl', P2') eine Knoten-Adresse (NIDl, NIDl', NID2 ' ) in ihrem jeweiligen Peer-to-Peer-Netzwerk (P2P1, P2P2) und eine Netzwerk-Adresse (IPl, IPl', IP2 ' ) in einem übergeordneten Kommu- nikationsnetzwerk (IN) hat, wobei aus dem ersten Peer-to- Peer-Netzwerk (P2P1) eine Suchanfrage (Sl) für die Ziel-Peer- Einrichtung (P2 ' ) an mindestens eine zweite Peer-Einrichtung (Pl') in dem zweiten Peer-to-Peer-Netzwerk (P2P2) unter Angabe der Netzwerkadresse (IPl) der ersten Peer-Einrichtung (Pl) gesendet wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass folgende Verfahrensschritte durchgeführt werden:
a) Senden der Suchanfrage (Sl) unter Angabe einer Ziel-Kno¬ ten-Adresse (NID2 ' ) der Ziel-Peer-Einrichtung (P2 ' ) in dem zweiten Peer-to-Peer-Netzwerk (P2P2);
b) Durchführen einer Suche in dem zweiten Peer-to-Peer-Netzwerk (P2P2) gemäß einem Suchalgorithmus mit einer verteilten Hash-Tabelle zum Auffinden der Netzwerkadresse (IP21) der Ziel-Peer-Einrichtung (P2 ' ) ;
c) Senden (S2) der Netzwerkadresse (IP21) der Ziel-Peer-Einrichtung (P2 ' ) an die erste Peer-Einrichtung (Pl) über das übergeordnete Kommunikationsnetzwerk (IN) .
3. Verfahren nach Anspruch 1 oder 2, dadurch gekennzeichnet, dass ferner eine Datenverbindung (S3, S4) zwischen der ersten Peer-Einrichtung (Pl) und der Ziel-Peer-Einrichtung (P2 ' ) über das übergeordnete Kommunikationsnetzwerk (IN) mittels der Netzwerkadressen (IPl, IP2 ' ) aufgebaut wird.
4. Verfahren nach wenigstens einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass die Suchanfrage (Tl) an eine weitere zweite Peer-Ein¬ richtung (P31) in dem zweiten Peer-to-Peer-Netzwerk (P2P2) umgeleitet wird (T2), wobei die Netzwerkadresse (IP31) der weiteren zweiten Peer-Einrichtung (P31) in einer Liste abge- speichert ist.
5. Verfahren nach wenigstens einem der vorherigen Ansprüche, dadurch gekennzeichnet, dass vor der Suchanfrage eine Liste von Netzwerkadressen (IP31, IP3') der zweiten Peer-Einrichtungen (Pl', P3') an eine passive Peer-Einrichtung (pPl) übertragen wird (MO, MO'), welche der ersten Peer-Einrichtung (Pl) zugeordnet ist.
6. Peer-Einrichtung (Pl) für ein erstes Peer-to-Peer-Netzwerk (P2P1) mit einer Knoten-Adresse (NIDl) in dem ersten Peer-to- Peer-Netzwerk (P2P1) und mit einer Netzwerkadresse (IPl) in einem übergeordneten Kommunikationsnetzwerk (IN), wobei die Peer-Einrichtung (Pl) eine zugeordnete passive Peer-Einrichtung (pPl) aufweist, welche Peer-to-Peer-Netzwerk unabhängig ist und mindestens eine Netzwerkadresse (IPl') einer Peer- Einrichtung (Pl') in einem zweiten Peer-to-Peer-Netzwerk (P2P2) vorhält, und wobei die passive Peer-Einrichtung (pPl) derart eingerichtet ist, dass sie eine Suchanfrage (Sl) für eine Ziel-Peer-Einrichtung (P2 ' ) in dem zweiten Peer-to-Peer- Netzwerk (P2P2) unter Angabe der Netzwerkadresse (IPl) der
Peer-Einrichtung (Pl) an die mindestens eine Peer-Einrichtung (Pl') in dem zweiten Peer-to-Peer-Netzwerk (P2P2) sendet.
7. Peer-Einrichtung (Pl) nach Anspruch 6, dadurch gekennzeichnet, dass die passive Peer-Einrichtung (pPl) eine Liste mit einer Auswahl von Netzwerkadressen (IPl') von Peer-Einrichtungen (Pl') des zweiten Peer-to-Peer-Netzwerks (P2P2) aufweist.
8. Peer-Einrichtung (Pl) nach Anspruch 6 oder 7, dadurch gekennzeichnet, dass der passiven Peer-Einrichtung (pPl) keine Knoten-Adresse in einem Peer-to-Peer-Netzwerk zugewiesen ist und nicht von anderen Peer-Einrichtungen adressierbar ist.
9. Peer-Einrichtung (Pl) nach wenigstens einem der Ansprüche 6 - 8, dadurch gekennzeichnet, dass die Peer-Einrichtung (Pl) eine abgespeicherte Teil-Hash- Tabelle (PHT) einer verteilten Hash-Tabelle (DHT) des Peer- to-Peer-Netzwerks (P2P1) mit einer Zuordnung von Knoten-Ad¬ ressen (NIDN) auf Netzwerkadressen (IPN) aufweist.
10. Peer-Einrichtung (Pl) nach wenigstens einem der Ansprüche 6 - 9, dadurch gekennzeichnet, dass die Peer-Einrichtung (Pl) als ablauffähiges Computer- Programm mit einem Stabilitäts-Programm-Modul (SM) zur Stabi¬ lisierung des Peer-to-Peer-Netzwerkes (P2P1) gemäß einem Peer-to-Peer-Protokoll, einem Speicher-Programm-Modul (RM) zum Speichern von Daten und mit einem Such-Programm-Modul (LM) zum Erzeugen von Suchanfragen an auf einem Computer imp- lementiert ist, wobei die passive Peer-Einrichtung (pPl) auf das Such-Programm-Modul unter Verwendung der mindestens einen Netzwerkadresse (IPl') der Peer-Einrichtung (Pl') in dem zweiten Peer-to-Peer-Netzwerk (P2P2) zugreift.
11. Netzwerkanordnung mit einem ersten Peer-to-Peer-Netzwerk (P2P1) mit ersten Peer-Einrichtungen (Pl, P2, P3) und mindes¬ tens einem zweiten Peer-to-Peer-Netzwerk (P2P2) mit zweiten Peer-Einrichtungen (Pl', P2 ' , P3'), wobei mindestens eine der Peer-Einrichtungen (Pl) nach wenigstens einem der Ansprüche 6
- 10 ausgeführt ist.
12. Netzwerkanordnung nach Anspruch 11, dadurch gekennzeichnet, dass jeder Peer-Einrichtung (Pl, P2, Pl', P2 ' ) eine passive Peer-Einrichtung (pPl, pP2, pPl', pP2 ' ) zugeordnet ist.
13. Netzwerkanordnung nach Anspruch 11 oder 12, dadurch gekennzeichnet, dass die Suchanfrage (Sl, Tl) die Angabe einer Ziel-Knoten- Adresse (NID2 ' ) der Ziel-Peer-Einrichtungen (P2 ' ) in dem zweiten Peer-to-Peer-Netzwerk (P2P2) umfasst.
14. Netzwerkanordnung nach wenigstens einem der Ansprüche 11
- 13, dadurch gekennzeichnet, dass mindestens eine Peer-Einrichtung (LBl, LB2, LB3) als Load-Balancer vorgesehen ist, welche die Suchanfrage (Tl) ei- ner passiven Peer-Einrichtung (pPl) an eine Peer-Einrichtung (P31) in dem jeweiligen Peer-to-Peer-Netzwerk (P2P2) weiterleitet.
15. Netzwerkanordnung nach wenigstens einem der Ansprüche 11 - 14, dadurch gekennzeichnet, dass mindestens eine Peer-Einrichtung (RV) als Rendezvous- Peer vorgesehen ist, welche auf Anfrage einer passiven Peer- Einrichtung (pPl) mindestes eine Netzwerk-Adresse (IPl') ei- ner Peer-Einrichtung (Pl') in dem jeweiligen Ziel-Peer-to- Peer-Netzwerk (P2P2) bereitstellt (MO').
16. Netzwerkanordnung nach wenigstens einem der Ansprüche 11
- 13, dadurch gekennzeichnet, dass mindestens ein Peer-to-Peer-Netzwerk (P2P2) mit einer verteilten Hash-Tabelle und insbesondere mit einem Chord-Al- gorithmus oder einem Kademlia-Algorithmus zur Adressauflösung eingerichtet ist.
EP07728697A 2006-05-09 2007-05-02 Verfahren und anordnung zur datenübertragung zwischen peer-to-peer-netzwerken Withdrawn EP2018761A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102006021591A DE102006021591B3 (de) 2006-05-09 2006-05-09 Verfahren und Anordnung zur Datenübertragung zwischen Peer-to-Peer-Netzwerken
PCT/EP2007/054243 WO2007128746A1 (de) 2006-05-09 2007-05-02 Verfahren und anordnung zur datenübertragung zwischen peer-to-peer-netzwerken

Publications (1)

Publication Number Publication Date
EP2018761A1 true EP2018761A1 (de) 2009-01-28

Family

ID=37853011

Family Applications (1)

Application Number Title Priority Date Filing Date
EP07728697A Withdrawn EP2018761A1 (de) 2006-05-09 2007-05-02 Verfahren und anordnung zur datenübertragung zwischen peer-to-peer-netzwerken

Country Status (5)

Country Link
US (1) US20090119386A1 (de)
EP (1) EP2018761A1 (de)
CN (1) CN101491063A (de)
DE (1) DE102006021591B3 (de)
WO (1) WO2007128746A1 (de)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8250171B2 (en) * 2007-06-22 2012-08-21 Pioneer Corporation Content delivery apparatus, content delivery method, and content delivery program
DE102007043652A1 (de) 2007-09-13 2009-04-02 Siemens Ag Verfahren zum Betrieb eines dezentralen Kommunikationsnetzes
CN101425958A (zh) * 2007-10-29 2009-05-06 华为技术有限公司 一种p2p叠加网中请求应答方法、装置和系统
DE102008019033A1 (de) * 2008-04-15 2009-10-22 T-Mobile International Ag Universelle Adressierung eines Kommunikationspartners über transparente statische Zuordnung einer Rufnummer
US8228822B2 (en) 2009-03-03 2012-07-24 Cisco Technology, Inc. Hierarchical flooding among peering overlay networks
DE102009012992B4 (de) * 2009-03-13 2011-03-03 Technische Universität München Verfahren und System zum Bereitstellen von Medieninhalten für eine Mehrzahl von Knoten in einem Datennetz
US20100293223A1 (en) * 2009-05-18 2010-11-18 Cisco Technology, Inc. Limiting storage messages in peer to peer network
US9325787B2 (en) 2009-05-18 2016-04-26 Cisco Technology, Inc. Limited broadcast, peering among DHTs, broadcast put of limited content only
US8073978B2 (en) * 2009-06-24 2011-12-06 Microsoft Corporation Proximity guided data discovery
WO2011039640A2 (en) * 2009-09-30 2011-04-07 France Telecom Data sharing method and system
CN102148741B (zh) * 2010-02-05 2013-08-07 中国移动通信集团公司 一种负载重分配的方法、系统及呼叫方法和系统
EP2503760B1 (de) * 2011-03-24 2014-05-07 Siemens Aktiengesellschaft Verfahren zum Einrichten eines Kommunikationsnetzes aus Geräten einer Automatisierungsanlage
US20130110999A1 (en) * 2011-10-28 2013-05-02 LogMeln, Inc. Creating an optimized distribution network for the efficient transfer of data between endpoints
US9591337B1 (en) * 2012-03-27 2017-03-07 Cox Communications, Inc. Point to point media on demand
CN103731451B (zh) * 2012-10-12 2018-10-19 腾讯科技(深圳)有限公司 一种文件上传的方法及系统
KR101534555B1 (ko) * 2013-06-25 2015-07-08 숭실대학교산학협력단 원형 메시 오버레이 생성 및 유지 방법
CN104836783B (zh) * 2014-06-04 2018-10-30 腾讯科技(北京)有限公司 数据传输的方法、装置及系统
US9608907B2 (en) * 2014-09-29 2017-03-28 Vivint, Inc. Systems and methods for centrally-assisted distributed hash table
EP3687118B1 (de) * 2017-11-15 2024-04-24 Huawei Technologies Co., Ltd. Informationssuchverfahren, endgerät, netzwerkvorrichtung und system
CN113382192B (zh) * 2020-02-25 2023-12-15 贵州精准健康数据有限公司 一种医用去中心化云视讯系统
EP4425889A1 (de) * 2023-03-02 2024-09-04 Streamroot Verfahren zur signalisierung einer nachricht von einem peer zu einem anderen peer

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002234258A1 (en) * 2001-01-22 2002-07-30 Sun Microsystems, Inc. Peer-to-peer network computing platform
DE10143754A1 (de) * 2001-09-06 2003-04-03 Siemens Ag Skalierbares Peer-to-Peer-Netzwerk mit einem Verzeichnisdienst
US20030093562A1 (en) * 2001-11-13 2003-05-15 Padala Chandrashekar R. Efficient peer to peer discovery
US20040054781A1 (en) * 2002-07-30 2004-03-18 Heng-Chien Chen Method for establishing point to point or point to multiple points internet connection(s)
US20050108203A1 (en) * 2003-11-13 2005-05-19 Chunqiang Tang Sample-directed searching in a peer-to-peer system
US7313565B2 (en) * 2004-02-19 2007-12-25 Microsoft Corporation Data overlay, self-organized metadata overlay, and associated methods
EP1646205A1 (de) * 2004-10-08 2006-04-12 Deutsche Thomson-Brandt Gmbh Eine Methode zur aufbauen einer Kommunikation zwischen Peer-Gruppen
WO2006068365A1 (en) * 2004-12-21 2006-06-29 Electronics And Telecommunications Research Institute P2p overlay network construction method and apparatus

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2007128746A1 *

Also Published As

Publication number Publication date
WO2007128746A1 (de) 2007-11-15
US20090119386A1 (en) 2009-05-07
DE102006021591B3 (de) 2007-04-05
CN101491063A (zh) 2009-07-22

Similar Documents

Publication Publication Date Title
EP2018761A1 (de) Verfahren und anordnung zur datenübertragung zwischen peer-to-peer-netzwerken
DE60317925T2 (de) Steuerung von netzwerkverkehr in einer peer-to-peer umgebung
DE60208659T2 (de) Skalierbare ressourcenermittlung und rekonfiguration für verteilte rechnernetze
DE60122782T2 (de) Adressierungsverfahren und system zur verwendung einer anycast-adresse
EP1423964B1 (de) Skalierbares peer-to-peer-netzwerk mit einem verzeichnisdienst
DE60026231T2 (de) Verfahren und Vorrichtung zur Durchführung eines Schnellen Dienstnachschlagen in einem Neztwerkgruppen
DE60216918T2 (de) Verfahren und computersystem zur auswahl eines randservercomputers
DE19747583B4 (de) Kommunikationssystem und Verfahren
DE10238546A1 (de) Verfahren zur Bereitstellung von Ressourcen in Kommunikations-Netzwerken
DE60221156T2 (de) Verfahren und system zur verteilung der arbeitslast in einem netzwerk von rechnersystemen
DE10345051B4 (de) Verfahren zum Aufbau einer Kommunikationsverbindung in einem direkt kommunizierenden Kommunikationsnetzwerk
EP1851944B1 (de) Verfahren zum aufnehmen einer voip-kommunikation mittels einer peer-to-peer-datenbank
EP1977583B1 (de) Verfahren zur Übermittlung einer Nachricht und Netzwerk
WO2012130263A1 (de) Verfahren zur adressierung von nachrichten in einem computernetzwerk
DE102006052451B4 (de) Verfahren zum Betrieb eines dezentralen Datennetzes
WO2008003404A1 (de) Verfahren und kommunikationssystem zur steuerung des datenflusses über netzwerkknoten
DE102006011291A1 (de) Verfahren zum Betrieb eines dezentralen Datennetzes
EP1784743A1 (de) Verfahren und anordnung zur vergebührung in einem peer-to-peer netzwerk
DE102008026373B4 (de) Verfahren, Vorrichtung und System zum Bereitstellen von Daten in einem Peer-to-Peer-Netzwerk
DE102006044859B4 (de) Verfahren zum Betrieb eines dezentralen Datennetzes
WO2007138044A1 (de) Peer-to-peer-kommunikationseinrichtung, verfahren zum bilden einer peer-to-peer-identifikationsangabe und verfahren zum betreiben eines peer-to-peer-kommunikationsnetzwerks
DE102008032748A1 (de) Verfahren und Anordnung zum Betrieb eines Peer-to-Peer-Netzwerks
DE102004023649A1 (de) Verfahren zum Ermitteln einer Adresse eines Kommunikationsendgeräts
WO2004006094A1 (de) Verfahren zur aktualisierung von diensten in kommunikations-netzwerken
WO2004006530A1 (de) Netzwerk mit in kommunikationskomponenten integrierten suchfunktionen

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20081209

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR MK RS

RIN1 Information on inventor provided before grant (corrected)

Inventor name: DIE ANDERE ERFINDER HABEN AUF IHRE NENNUNG VERZICH

Inventor name: RUSITSCHKA, STEFFEN

Inventor name: LEUTRITZ, UWE

Inventor name: BUSSER, JENS-UWE

17Q First examination report despatched

Effective date: 20090331

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20090810