DE602004009819T2 - Instrumentationssystem und verfahren zur schätzung von kenngrössen eines dezentralisierten netzwerks - Google Patents

Instrumentationssystem und verfahren zur schätzung von kenngrössen eines dezentralisierten netzwerks Download PDF

Info

Publication number
DE602004009819T2
DE602004009819T2 DE602004009819T DE602004009819T DE602004009819T2 DE 602004009819 T2 DE602004009819 T2 DE 602004009819T2 DE 602004009819 T DE602004009819 T DE 602004009819T DE 602004009819 T DE602004009819 T DE 602004009819T DE 602004009819 T2 DE602004009819 T2 DE 602004009819T2
Authority
DE
Germany
Prior art keywords
nodes
decentralized network
network
decentralized
file
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.)
Active
Application number
DE602004009819T
Other languages
English (en)
Other versions
DE602004009819D1 (de
Inventor
James Santa Clara PATTERSON
Bruce Hot Springs WARD
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.)
Rovi Corp
Original Assignee
Macrovision Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Macrovision Corp filed Critical Macrovision Corp
Publication of DE602004009819D1 publication Critical patent/DE602004009819D1/de
Application granted granted Critical
Publication of DE602004009819T2 publication Critical patent/DE602004009819T2/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/042Network management architectures or arrangements comprising distributed management centres cooperatively managing the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • H04L41/046Network management architectures or arrangements comprising network management agents or mobile agents therefor
    • H04L41/048Network management architectures or arrangements comprising network management agents or mobile agents therefor mobile agents

Description

  • GEBIET DER ERFINDUNG
  • Die vorliegende Erfindung bezieht sich allgemein auf dezentralisierte Netzwerke und insbesondere auf ein Instrumentierungssystem und Verfahren zum Schätzen charakteristischer Eigenschaften eines dezentralisierten Netzwerks.
  • HINTERGRUND DER ERFINDUNG
  • In einem dezentralisierten Netzwerk gibt es keine zentrale Autorität oder Verwaltungseinheit. Die Knoten können nicht direkt adressiert oder zentral überwacht werden. Stattdessen liegen Intelligenz und Steuerung in den Knoten selbst. Jeder Knoten trifft autonom Entscheidungen zum Verbinden, Trennen und Austauschen von Informationen mit anderen Knoten in dem dezentralisierten Netzwerk nach einem von den Schaffern des Netzwerks festgelegten vorbestimmten Protokoll.
  • In manchen Netzwerken entscheiden die Knoten selbstständig über die Verbindung mit oder Trennung von dem Netzwerk, wodurch das Netzwerk größer oder kleiner wird. Die Knoten sind nur für ihre unmittelbaren Nachbarn sichtbar, an die sie angeschlossen sind. Als Folge entwickeln sich insbesondere bei großen Netzwerken mit reichen Kommunikationsprotokollen die Größe und Topologie des gesamten dezentralisierten Netzwerks kontinuierlich und organisch in einer Weise, die aus der Perspektive eines einzelnen Knotens oder externen Beobachters des Netzwerks weitgehend unkontrollierbar und unvorhersehbar ist.
  • Bei einem solchen Netzwerk gibt es keine autoritative Quelle für Informationen über das Netzwerk. Weiter gibt es keine offensichtlichen Mittel zum Bestimmen der Größe, Struktur oder Informationsinhalte des Netzwerks zu einem beliebigen Zeitpunkt. In manchen Fällen hat der Besitzer oder Schöpfer des Netzwerks keine Möglichkeit, diese Informationen zu verfolgen oder sie außen stehenden Parteien verfügbar zu machen. In anderen Fällen kann das Netzwerk einfach zu groß oder zu dynamisch sein, um es irgendjemandem zu ermöglichen, diese Informationen an einem einzigen Ort zu erfassen, zusammenzutragen und aufzulisten.
  • Das Dokument XPO10662084 beschreibt ein System zum Schätzen der Verfügbarkeit einer Datei in einem Netzwerk anhand der Wahrscheinlichkeit, dass Knoten online oder offline sind, in einer komplexen Gleichung, die in Abschnitt 3.2 des Dokuments angegeben ist.
  • Dementsprechend ist ein Ziel der vorliegenden Erfindung die Bereitstellung eines Instrumentierungssystems und eines Verfahrens zum Schätzen charakteristischer Eigenschaften eines dezentralisierten Netzwerks.
  • Beispiele für solche Eigenschaften sind die Größe, Wachstumsrate und Beschleunigung des Wachstums des dezentralisierten Netzwerks, die Anzahl von Vorkommen, die Ausbreitungsrate und die Beschleunigung der Ausbreitung einer Datei in dem dezentralisierten Netzwerk, die Gesamtsuchaktivität in dem dezentralisierten Netzwerk, die Suchaktivität nach einer Datei in dem dezentralisierten Netzwerk und die Downloadaktivität für eine Datei in dem dezentralisierten Netzwerk. Beim Schätzen dieser Eigenschaften ist es nützlich, einen repräsentativen Satz von Knoten in dem dezentralisierten Netzwerk zu erhalten, die Größe des dezentralisierten Netzwerks zu schätzen, das dezentralisierte Netzwerk gleichmäßig mit Softwareagenten zu infiltrieren, die sich als Knoten verkleiden, und die Dateien gleichmäßig in dem dezentralisierten Netzwerk zu verteilen.
  • Aspekte der vorliegenden Erfindung sind in den anliegenden selbstständigen Ansprüchen festgelegt.
  • Zusätzliche Ziele, Merkmale und Vorteile der verschiedenen Aspekte der vorliegenden Erfindung werden aus der folgenden Beschreibung ihrer bevorzugten Ausführungs form ersichtlich, die in Verbindung mit den anliegenden Zeichnungen zu lesen ist.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • 1 zeigt ein Blockdiagramm eines Instrumentierungssystems mit Aspekten der vorliegenden Erfindung.
  • 2 zeigt ein Ablaufdiagramm eines Verfahrens zum Identifizieren eines repräsentativen Satzes von Knoten in einem dezentralisierten Netzwerk mit Aspekten der vorliegenden Erfindung.
  • 3 zeigt ein Ablaufdiagramm eines alternativen Verfahrens zum Identifizieren eines repräsentativen Satzes von Knoten in einem dezentralisierten Netzwerk mit Aspekten der vorliegenden Erfindung.
  • 4 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Anzahl von Knoten in einem dezentralisierten Netzwerk mit Aspekten der vorliegenden Erfindung.
  • 5 zeigt ein Ablaufdiagramm eines alternativen Verfahrens zum Schätzen der Anzahl von Knoten in einem dezentralisierten Netzwerk mit Aspekten der vorliegenden Erfindung.
  • 6 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Wachstumsrate eines dezentralisierten Netzwerks mit Aspekten der vorliegenden Erfindung.
  • 7 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Beschleunigung des Wachstums eines dezentralisierten Netzwerks mit Aspekten der vorliegenden Erfindung.
  • 8 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Anzahl von Vorkommen einer Datei in einem dezentralisierten Netzwerk mit Aspekten der vorliegenden Erfindung.
  • 9 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Ausbreitungsrate einer Datei in einem dezentralisierten Netzwerk mit Aspekten der vorliegenden Erfindung.
  • 10 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Beschleunigung der Ausbreitung einer Datei in einem dezentralisierten Netzwerk mit Aspekten der vorliegenden Erfindung.
  • 11 zeigt ein Ablaufdiagramm eines Verfahrens zum gleichmäßigen Infiltrieren eines dezentralisierten Netzwerks mit Softwareagenten, die sich als Knoten im dezentralisierten Netzwerk verkleiden, mit Aspekten der vorliegenden Erfindung.
  • 12 zeigt ein Ablaufdiagramm eines Verfahrens zum gleichmäßigen Verteilen von Dateien in einem dezentralisierten Netzwerk mit Aspekten der vorliegenden Erfindung.
  • 13 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Gesamtanzahl von Suchabfragen in einem dezentralisierten Netzwerk über eine vorgegebene Zeitdauer mit Aspekten der vorliegenden Erfindung.
  • 14 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Gesamtanzahl von Suchabfragen für eine Datei in einem dezentralisierten Netzwerk über eine vorgegebene Zeitdauer mit Aspekten der vorliegenden Erfindung.
  • 15 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Gesamtanzahl von Downloads einer Datei in einem dezentralisierten Netzwerk über eine vorgegebene Zeitdauer mit Aspekten der vorliegenden Erfindung.
  • AUSFÜHRLICHE BESCHREIBUNG DER BEVORZUGTEN AUSFÜHRUNGSFORM
  • 1 zeigt ein Blockdiagramm eines Instrumentierungssystems 100 zum Schätzen charakteristischer Eigenschaften eines dezentralisierten Netzwerks 101 wie zum Beispiel der Größe, Wachstumsrate und Beschleunigung des Wachstums des dezentralisierten Netzwerks 101, der Anzahl von Vorkommen, der Ausbreitungsrate und der Beschleunigung der Ausbreitung einer Datei in dem dezentralisierten Netzwerk 101 und der Such- und Downloadaktivitäten insgesamt und für bestimmte Dateien in dem dezentralisierten Netzwerk 101.
  • Der Begriff „Datei", wie er hier verwendet wird, bedeutet eine Datei oder ein Objekt, wie diese Begriffe allgemein verstanden werden, zum Beispiel oder unter anderem Dokumente, Nachrichten, Computerprogramme, Daten, alle Formen von Medien (zum Beispiel Audio, Video, Animationen und Bilder), sowie alle anderen durch Urheberrechtsgesetze oder sonstige gewerbliche Schutzrechte geschützten Inhalte oder Informationen, die zwischen zwei Knoten eines Netzwerks übertragen werden können.
  • Ein Rechenzentrum 102 führt eine Reihe von zusammenhängenden Verfahren durch, die anhand von 2 bis 15 beschrieben werden, um diese und andere charakteristische Eigenschaften des gesamten dezentralisierten Netzwerks 101 zu bestimmen. Zum Schätzen bestimmter charakteristischer Eigenschaften identifiziert und verwendet es eine Teilmenge (zum Beispiel N1, N2, N3 und N4) des Netzwerks 101 und verwendet Informationen von der Teilmenge, um Informationen über das gesamte dezentralisierte Netzwerk 101 zu bestimmen oder zu erhalten. Zum Bestimmen anderer charakteristischer Eigenschaften setzt es Softwareagenten wie zum Beispiel SA1, SA2 und SA3 ein, die sich als Knoten im dezentralisierten Netzwerk 101 verkleiden.
  • Das Rechenzentrum 102 besteht aus einem oder mehreren Computern, die mittels Software dazu ausgelegt sind, die zusammenhängenden Verfahren auszuführen. Die Softwareagenten sind als Software implementiert, die sich entweder im Rechenzentrum 102 oder auf einem oder mehreren anderen Computern befindet. In jedem Fall kommunizieren die Softwareagenten mit Knoten in dem dezentralisierten Netzwerk 604 durch einzeln zugewiesene Ports der Computer, auf denen sie sich befinden. Die IP-Adressen für die Ports können mit der Zeit oder in anderer Weise variieren, so dass das Entdecken der Softwareagenten als nicht autorisierte Verkleidungen von Knoten im dezentralisierten Netzwerk 101 erschwert wird. Wenn die Softwareagenten sich auf einem oder mehreren anderen Computern als dem Rechenzentrum 102 befin den, kommunizieren diese Computer zum Beispiel über ein lokales Netzwerk, ein Weitverkehrsnetzwerk oder ein virtuelles Netzwerk mit dem Rechenzentrum 102 und ihre Aktivitäten werden durch dieses koordiniert.
  • Nachstehend folgt eine kurze Übersicht der Verfahren, die vom Rechenzentrum 102 zum Schätzen verschiedener charakteristischer Eigenschaften des dezentralisierten Netzwerks 101 verwendet werden. Um diese Verfahren besser würdigen zu können, ist zu beachten, dass die Schätzungen in sich schwierig vorzunehmen sind, weil die Knoten des dezentralisierten Netzwerks nicht zentral, direkt oder zufällig adressierbar sind bzw. nicht von einem zentralen Ort aus überwacht werden können. Das dezentralisierte Netzwerk kann auch zu groß oder zu dynamisch sein, um es umfassend zu durchkriechen bzw. abzusuchen. Zu dem Zeitpunkt, wo zum Beispiel 1% des Netzwerks durchkrochen bzw. abgesucht ist, kann sich die Größe des Netzwerks bereits verdreifacht haben oder es kann sich organisch eine grundlegend andere Topologie entwickelt haben. Darüber hinaus gehören viele der zuvor besuchten Knoten möglicherweise nicht mehr zu dem Netzwerk. Die nachstehenden Verfahren überwinden daher diese und andere Schwierigkeiten, die für dezentralisierte Netzwerke typisch sind.
  • Die anhand von 2 und 3 beschriebenen Verfahren sind alternative Verfahren zum Ermitteln eines repräsentativen Satzes von Knoten in dem dezentralisierten Netzwerk 101. Der repräsentative Satz wird dann in anderen Verfahren zum Schätzen verschiedener charakteristischer Eigenschaften des dezentralisierten Netzwerks 101 verwendet. Die anhand von 4 bis 7 beschriebenen Verfahren, die auf den Verfahren in 2 und 3 aufbauen, sind Verfahren zum Schätzen der Gesamtanzahl von Knoten in dem dezentralisierten Netzwerk 101 (das heißt der Größe des Netzwerks) und des Tempos, mit dem sich die Anzahl ändert (das heißt der Wachstumsrate und Beschleunigung des Wachstums). Die Anhand von 8 bis 10 beschriebenen Ver fahren, die auf den vorstehend genannten Verfahren aufbauen, sind Verfahren zum Schätzen der Gesamtanzahl von Vorkommen einer bestimmten Datei oder eines bestimmten Dokuments, die bzw. das auf Knoten in dem Netzwerk gespeichert ist, und der Rate, mit der sich diese Anzahl ändert. Die anhand von 11 und 12 beschriebenen Verfahren sind jeweils Verfahren zum gleichmäßigen Infiltrieren von Softwareagenten, die sich als Knoten verkleiden, in dem gesamten dezentralisierten Netzwerk 101 bzw. zum gleichmäßigen Einpflanzen von Dateien oder Dokumenten in dem gesamten dezentralisierten Netzwerk 101. Die anhand von 13 bis 15 beschriebenen Verfahren, die auf den anhand von 11 und 12 beschriebenen Verfahren aufbauen, sind jeweils Verfahren zum Schätzen der gesamten Dateisuchaktivität, der spezifischen Dateisuchaktivität sowie der Downloadaktivität für Dateien oder Dokumente.
  • Beginnend mit einer ausführlichen Beschreibung der Verfahren zeigt 2 ein Ablaufdiagramm eines Verfahrens zum Identifizieren eines repräsentativen Satzes von Knoten in dem dezentralisierten Netzwerk 101. Um wirklich „repräsentativ" zu sein, sollte der repräsentative Satz von Knoten durch die Netzwerktopologie oder die geografische Lage unbeeinflusst sein, und die Knoten sollten gleichmäßig über das dezentralisierte Netzwerk 101 verteilt sein.
  • In Schritt 201 indiziert das Verfahren einen Satz von Knoten in dem dezentralisierten Netzwerk 101. Der Satz von Knoten wird zum Beispiel erzeugt, indem ein Knoten (zum Beispiel N1) im Netzwerk 101 identifiziert und dann verwendet wird, um iterativ weitere Knoten zu identifizieren, die direkt (zum Beispiel N2, N3 und N4) oder indirekt (zum Bei-spiel N8, N9, N10, N11 und N12) mit dem identifizierten Knoten verbunden sind. Der Einfachheit halber kann der identifizierte Knoten ein Knoten sein (zum Beispiel N1), der direkt mit einem Knoten verbunden ist, der das Rechenzentrum 102 mit dem Netzwerk 101 verbindet (zum Beispiel der Softwareagent SA3). Wegen der eng verbundenen Beziehung der Knoten wird der Satz von Knoten in diesem Fall vermutlich eine gewisse Verzerrung mit wahrscheinlich topologischer oder geografischer Beeinflussung aufweisen.
  • In Schritt 202 baut das Verfahren einen Satz oder Korpus von beobachteten Werten für ein suchbares Attribut auf, das in allen Knoten in dem in Schritt 201 erhaltenen Satz von Knoten gefunden wird. Das suchbare Attribut wird vorzugsweise so ausgewählt, dass es nicht in hohem Maße in Korrelation zur Netzwerktopologie steht (das heißt von dieser unabhängig bleibt). Weil die geografische Lage oft in Zusammenhang mit der Netzwerktopologie steht (das heißt direkt verbundene oder verknüpfte Knoten sind im Allgemeinen geografisch nahe beieinander angeordnet), verlangt die Auswahl eines suchbaren Attributs, das von der Netzwerktopologie unabhängig ist, im Allgemeinen auch, dass es von der geografischen Lage unabhängig ist. Beispiele sind unter anderem der beobachtete Dateiname oder Dokumenttitel, beobachtete Wörter, Buchstaben oder Silben im Dateinamen oder Dokumenttitel, beobachtete Wörter, Buchstaben oder Silben in der Beschreibung der Datei oder des Dokuments und mathematische Hash-Werte für jedes der vorstehenden Elemente. Weitere Beispiele sind unter anderem numerische Attribute wie Dateigröße in Bytes, Medienlänge als Zeit und Nachrichtenlänge als Anzahl von Zeichen.
  • In Schritt 203 zieht das Verfahren einen Satz von beobachteten Werten für das eine suchbare Attribut aus dem in Schritt 202 aufgebauten Satz von beobachteten Werten.
  • In Schritt 204 führt das Verfahren eine Suche in dem dezentralisierten Netzwerk 101 nach Knoten mit mindestens einem der beobachteten Werte in der in Schritt 203 gezogenen Probe durch. Besonders interessant ist, dass diese Knoten zufällig und gleichmäßig über das dezentralisierte Netzwerk 101 verteilt sind, im Gegensatz zu dem in Schritt 201 indizierten Originalsatz. Daher stellen sie eine unvoreingenommene Schätzung für den Wert und/oder die Verteilung ihrer Knotenattribute dar.
  • In Schritt 205 erzeugt das Verfahren dann einen repräsentativen Satz von Knoten in dem dezentralisierten Netzwerk 101, indem mindestens eine Teilmenge der Knoten in die Suchergebnisse in Schritt 204 eingeschlossen wird. Die Teilmenge kann aus allen Knoten in dem Suchergebnis bestehen oder eine zufällig ausgewählte Teilmenge sein, wenn die Anzahl von Knoten in dem Suchergebnis für eine bequeme Handhabung und effiziente Verarbeitung zu groß ist, um eine unvoreingenommene Schätzung der Verteilung anderer Knotenattribute (das heißt anderer als dem in Schritt 202 verwendeten einen suchbaren Attribut) zu erhalten.
  • 3 zeigt ein Ablaufdiagramm eines alternativen Verfahrens zum Identifizieren eines repräsentativen Satzes von Knoten in einem dezentralisierten Netzwerk. Das Verfahren verwendet eine Attributmatrix, die primäre Knotenattribute enthält, für die der repräsentative Satz repräsentativ sein muss. Beispiele für solche primären Knotenattribute sind im Allgemeinen der topologische Netzwerkort, der tatsächliche geografische Ort, die Client-Softwareanwendung und/oder Versionsnummer, die Dauer der Netzwerkmitgliedschaft, die Geschwindigkeit der Netzwerkverbindung und die eindeutige numerische Adresse (zum Beispiel die IP-Adresse). In einem dezentralisierten Netzwerk können die primären Knotenattribute auch die Anzahl der Dateien auf dem Knoten, die Art der Dateien auf dem Knoten (zum Beispiel Musik, Video, Software, Bild, Textdokument) und die Anzahl von Dateien oder Dokumenten mit einem bestimmten Titel auf dem Knoten einschließen.
  • Nach Auswählen der primären Knotenattribute wird dann die Attributmatrix so erzeugt, dass sie alle möglichen Kombinationen von Werten für die ausgewählten Attribute angibt. Wenn zum Beispiel bei einer bestimmten Anwendung angenommen wird, dass der physikalische Ort (mit vier Möglichkeiten) und die Verbindungsgeschwindigkeit (mit zwei Möglichkeiten) die kritischen Attribute sind, ergibt sich die folgende 2 × 4-Attributmatrix:
    Otküste Westküste Mittlerer wesen Süden
    < 300 kbit/s
    > 300 kbit/s
  • Bei komplizierteren Anwendungen können sich mehrdimensionale Attributmatrizen ergeben.
  • Als Teil des Definierens der Attributmatrix ist es auch nötig, die in dem Verfahren zu verwendende Gesamtgröße des Satzes sowie die mit jeder Zelle der Attributmatrix zu verknüpfende Maximalanzahl zu bestimmen. Nach einem Ansatz kann die Maximalanzahl für jede Zelle gleich sein, mit einem Wert für jeden mit der Zelle verknüpften Knoten entsprechend dem mit einem bekannten prozentualen Anteil gewichteten Verfahren, bei dem die Kombination von Attributwerten entsprechend der Zelle in der fraglichen Population erscheint. Wenn die Summe der Werte für alle mit einer Zelle verknüpften Knoten die Maximalanzahl erreicht, wird die Zelle an diesem Punkt als „voll" angesehen. Bei einer angenommenen Gesamtgröße des Satzes von 8.000 beträgt zum Beispiel die Maximalanzahl für jede Zelle 1.000 (das heißt 8.000/[2 × 4]). Der Wert für jeden mit der Zelle links oben in der Matrix verknüpften Knoten wird zum Beispiel mit dem Anteil aller Schmalband-Internet-Nutzer in den USA gedichtet, die an der Ostküste leben und bekanntlich das dezentralisierte Netzwerk 101 benutzen.
  • Nach einem anderen Ansatz wird die Maximalanzahl durch den bekannten prozentualen Anteil bestimmt, mit dem die Kombination von Attributwerten entsprechend der Zelle in der fraglichen Population erscheint. Wenn zum Beispiel die prozentualen Anteile der Schmalband-Internet-Nutzer an der Ostküste, der Westküste, im Mittleren Westen und im Süden der USA, die das dezentralisierte Netzwerk 101 nutzen, bezogen auf alle Schmalband-Internet-Nutzer in den USA 30%, 30%, 20% bzw. 20% betragen, die prozentualen An teile der Breitband-Internet-Nutzer an der Ostküste, der Westküste, im Mittleren Westen und im Süden der USA, die das dezentralisierte Netzwerk 101 nutzen, bezogen auf alle Breitband-Internet-Nutzer in den USA 35%, 30%, 20% bzw. 15% betragen und der prozentuale Anteil der Schmalband- und Breitband-Internet-Nutzer in den USA bezogen auf alle Internet-Nutzer in den USA jeweils 50% beträgt, ergibt sich die Maximalanzahl von Knoten, die mit jeder Zelle verknüpft sind, wie folgt:
    Ostküste Westküste Mittlerer Westen Süden
    < 300 kbit/s 1.200 1.200 800 800
    > 300 kbit/s 1.400 1.200 800 600
  • Die resultierende Attributmatrix wird dann nach dem anhand von 3 beschriebenen Verfahren verarbeitet.
  • In Schritt 301 identifiziert das Verfahren einen Anfangsknoten in dem dezentralisierten Netzwerk 101. Der Einfachheit halber kann der identifizierte Knoten ein Knoten sein (zum Beispiel N1), der direkt mit einem Knoten verbunden ist, der das Rechenzentrum 102 mit dem Netzwerk 101 verbindet (zum Beispiel der Softwareagent SA3).
  • In Schritt 302 bestimmt das Verfahren, ob der in Schritt 301 identifizierte Knoten einen Attributwert aufweist, der mit dem einer Zelle in der Attributmatrix übereinstimmt. Falls die Antwort in Schritt 302 NEIN lautet (das heißt, es liegt keine Übereinstimmung vor), springt das Verfahren zu Schritt 301 zurück, um einen weiteren Knoten zu identifizieren, zum Beispiel durch Absuchen der Netzwerktopologie in herkömmlicher Weise beginnend ab dem Anfangsknoten. Falls hingegen die Antwort in Schritt 302 JA lautet (das heißt, es liegt eine Übereinstimmung vor), fährt das Verfahren mit Schritt 303 fort.
  • In Schritt 303 bestimmt das Verfahren, ob die Maximalanzahl für die betreffende Zelle erreicht ist (das heißt die Zelle als „voll" angesehen wird, weil keine weiteren Knoten mehr mit dieser Zelle verknüpft werden können), wobei die Maximalanzahl zuvor unter. Bezugnahme auf das Aufbauen der Attributmatrix beschrieben worden ist. Falls die Antwort in Schritt 303 NEIN lautet, wird in Schritt 304 der übereinstimmende Knoten mit der Zelle verknüpft, und das Verfahren springt zu Schritt 302 zurück, um zu sehen, ob der Knoten einen weiteren Attributwert aufweist, der mit dem einer anderen Zelle in der Attributmatrix übereinstimmt. Falls die Antwort in Schritt 303 jedoch JA lautet, fährt das Verfahren mit Schritt 305 fort.
  • In Schritt 305 bestimmt das Verfahren, ob die Maximalanzahlen für alle Zellen in der Attributmatrix erreicht sind. Falls die Antwort in Schritt 305 NEIN lautet, springt das Verfahren zu Schritt 302 zurück, um zu sehen, ob der Knoten einen weiteren Attributwert aufweist, der mit dem einer anderen Zelle in der Attributmatrix übereinstimmt. Falls hingegen die Antwort in Schritt 305 JA lautet, erzeugt das Verfahren in Schritt 306 den repräsentativen Satz von Knoten im dezentralisierten Netzwerk 101 aus den Knoten, die mit den Zellen in der Attributmatrix verknüpft sind. In diesem Fall sind vorzugsweise alle derartigen Knoten in dem repräsentativen Satz enthalten, weil die beim Definieren der Attributmatrix ausgewählte Gesamtgröße des Satzes sicherstellen sollte, dass die Anzahl von Knoten in dem repräsentativen Satz für eine bequeme Handhabung und effiziente Verarbeitung nicht zu groß ist.
  • 4 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Anzahl von Knoten in einem dezentralisierten Netzwerk 101. Dieses Verfahren benutzt ein Referenznetzwerk mit einer bekannten Anzahl von Knoten und demselben zugrundeliegenden Adressraum wie das dezentralisierte Netzwerk 101 zum Definieren von IP-Adressen. Das Referenznetzwerk kann ein weiteres dezentralisiertes Netzwerk sein, das die jeweils mit ihm verbundene Anzahl von Knoten registriert und veröffentlicht.
  • In Schritt 401 zieht das Verfahren einen Zufallssatz von Adressen aller möglichen Adressen in einem dem dezentralisierten Netzwerk 101 und dem Referenznetzwerk zugrundeliegenden gemeinsamen Adressraum.
  • In Schritt 402 zählt das Verfahren die Anzahl von mit dem dezentralisierten Netzwerk 101 verknüpften Knoten, die sich an Adressen in dem Zufallssatz von Adressen befinden. Ein Verfahren zur Durchführung dieser Funktion ist ein sog. „Low-Level Port Scan"-Ansatz. Bei diesem Absatz wird für jede IP-Adresse in dem Bereich eine Liste von Ports oder Anschlüssen aufgebaut, die bekanntlich von der Client-Softwareanwendung für das dezentralisierte Netzwerk 101 benutzt werden. Dies ist möglich, weil in der Regel alle Client-Softwareanwendungen einen Standard-Port oder einen Bereich von Ports benutzen. Für jeden Port oder Anschluss in der Liste wird dann versucht, eine IP-Netzwerkverbindung auf unterer Ebene über den betreffenden Port herzustellen (zum Beispiel Eröffnen einer TCP-Session, Ausgeben eines HTTP-Befehls GET oder Ausgeben eines ICMP-Pings usw.). Antwortet der Port mit einer zulässigen IP-Netzwerknachricht, wird angenommen, dass der Port aktiv ist, und aus der Portnummer wird die Identität der Client-Softwareanwendung hergeleitet, die vermutlich benutzt wird (das heißt ob sie für das dezentralisierte Netzwerk 101 oder für eine andere Art von dezentralisiertem Netzwerk ist). Außerdem wird, wenn der Port mit einem zulässigen HTTP-Nachrichtenheader oder Benutzeragenten antwortet, der selbst das Produkt und die Versionsnummer der Client-Softwareanwendung beschreibt, die Identität der Client-Softwareanwendung hergeleitet, die vermutlich benutzt wird. Wenn andererseits der Port nicht antwortet, mit Datenmüll antwortet oder mit einer unzulässigen IP-Netzwerknachricht antwortet, wird angenommen, dass der Port inaktiv ist; anschließend wird mit dem nächsten Port oder Anschluss in der Liste fortgefahren. Dieser Ansatz ermittelt nicht nur die IP-Adressen, die als Host für die Client-Softwareanwendung für das dezentralisierte Netz werk 101 dienen, sondern auch die IP-Adressen für andere Client-Softwareanwendungen entsprechend anderer Arten oder Versionen von dezentralisierten Netzwerken. Anhand dieser Informationen kann die Dichte für jede Art von Client-Softwareanwendung (zum Beispiel AOL Instant Messenger, ICQ, GNUtella usw.) bestimmt werden. Insbesondere ist es mit einem ausreichend großen repräsentativen Satz von IP-Adressen möglich, Schlussfolgerungen über die absolute Dichte der jeweiligen Client-Softwareanwendung über alle IP-Adressen hinweg und die relative Größe der dezentralisierten Netzwerke zu ziehen, die mit jeder Client-Softwareanwendung verknüpft sind.
  • Ein weiteres Verfahren zur Durchführung der Funktion von Schritt 402 ist ein sog. „High-Level Application Scan"-Ansatz. Auch bei diesem Absatz wird für jede IP-Adresse in dem Bereich eine Liste von Ports oder Anschlüssen aufgebaut, die bekanntlich von der Client-Softwareanwendung für das dezentralisierte Netzwerk 101 benutzt werden. Danach wird für jeden Port oder Anschluss in der Liste versucht, eine Peer-to-Peer-Netzwerkverbindung auf höherer Ebene über den Port für die betreffende Client-Softwareanwendung herzustellen (zum Beispiel Anfordern einer Dateiübertragung für eine IRC-Client-Softwareanwendung, Senden einer Instant-Message im AOL Instant Messenger usw.). Antwortet der Port mit einer zulässigen Nachricht auf höherer Ebene von der Peer-Anwendung selbst (anstatt von dem Transportmechanismus auf unterer Ebene), auch wenn die Nachricht eine Verbindung verneint, wird angenommen, dass die Client-Softwareanwendung der angenommenen Art auf dem Port läuft. Dieses Verfahren kann für andere Client-Softwareanwendungen wiederholt werden, um Schlussfolgerungen über die Dichten der jeweiligen angenommenen Client-Softwareanwendungen über den repräsentativen Satz von IP-Adressen hinweg zu ziehen. Als eine Variante dieses Ansatzes können anstelle des Aufbauens einer Liste von Ports, die bekanntlich von den fraglichen Client-Softwareanwendungen verwendet werden, alle 65.535 definierten Ports abgesucht werden. Auch wenn diese Variante länger dauert, bietet sie den Vorteil, dass Vorkommen von Client-Softwareanwendungen gefunden werden, die über ungewöhnliche oder nicht erwartete Anschlüsse laufen. [0066] Noch ein weiteres Verfahren zur Durchführung der Funktion von Schritt 402 ist der sog. „Honey Pot"- oder Honigtopf-Ansatz. Bei diesem Ansatz werden Informationen für mehrere verschiedene Arten von dezentralisierten Netzwerken erhalten. Für jede Art von Netzwerk werden einer oder mehrere Client-Knoten von dem Rechenzentrum 102 gesteuert und mit dem Netzwerk verbunden, zum Beispiel Softwareagent SA1. Auf jedem dieser Client-Knoten sind eine oder mehrere besonders nachgefragte Dateien oder Dokumente bzw. Köder davon eingestellt. Falls für die Art des dezentralisierten Netzwerks erforderlich oder von ihr unterstützt, wird die Verfügbarkeit dieser Elemente dem Netzwerk angezeigt. Die IP-Adressen aller Knoten, die während einer bestimmten Zeitdauer versuchen, mit den Client-Knoten zu kommunizieren oder verbunden zu werden, werden aufgezeichnet. Basierend auf der der für jede Art von dezentralisiertem Netzwerk aufgezeichneten Anzahl von eindeutigen. IP-Adressen können die relativen Größen der Netzwerke hergeleitet werden. Für Netzwerke, die mehrere Client-Softwareanwendungen (zum Beispiel AOL Instant Messenger 1.0 und AOL Instant Messenger 2.0) unterstützen, wird die jeweils installierte Basis oder Nutzung der jeweiligen Client-Softwareanwendung hergeleitet.
  • In Schritt 403 berechnet das Verfahren eine Knotendichte im dezentralisierten Netzwerk 101, indem der in Schritt 402 erzeugte Zählwert durch die Anzahl der Adressen in dem in Schritt 401 gezogenen Zufallssatz von Adressen geteilt wird.
  • In Schritt 404 zählt das Verfahren die Anzahl von mit dem Referenznetzwerk verknüpften Knoten, die sich an Adressen in dem Zufallssatz von Adressen befinden, im Wesentlichen in derselben Weise wie für Schritt 402 beschrie ben, und in Schritt 405 berechnet das Verfahren eine Knotendichte im Referenznetzwerk, indem der in Schritt 404 erzeugte Zählwert durch die Anzahl der Adressen in dem in Schritt 401 gezogenen Zufallssatz von Adressen geteilt wird.
  • In Schritt 406 schätzt das Verfahren die Anzahl von Knoten im dezentralisierten Netzwerk 101, indem die in Schritt 403 berechnete Knotendichte im dezentralisierten Netzwerk 101 mit der bekannten Anzahl von Knoten im Referenznetzwerk multipliziert wird und das Produkt durch die in Schritt 405 berechnete Knotendichte im Referenznetzwerk geteilt wird.
  • 5 zeigt ein Ablaufdiagramm eines alternativen Verfahrens zum Schätzen der Anzahl von Knoten in einem dezentralisierten Netzwerk. In Schritt 501 zieht das Verfahren einen Zufallssatz von Adressen aller möglichen Adressen in einem zugrundeliegenden Adressraum des dezentralisierten Netzwerks 101. In Schritt 502 zählt das Verfahren die Anzahl von mit dem dezentralisierten Netzwerk 101 verknüpften Knoten, die sich an Adressen in dem Zufallssatz von Adressen befinden, im Wesentlichen in derselben Weise wie für Schritt 402 in 4 beschrieben, und in Schritt 503 berechnet das Verfahren eine Knotendichte im dezentralisierten Netzwerk 101, indem der in Schritt 502 erzeugte Zählwert durch die Anzahl der Adressen in dem in Schritt 501 gezogenen Zufallssatz von Adressen geteilt wird. In Schritt 504 schätzt das Verfahren die Anzahl von Knoten im dezentralisierten Netzwerk 101, indem die in Schritt 503 berechnete Dichte mit der bekannten Größe des zugrundeliegenden Adressraums multipliziert wird.
  • Als ein Beispiel für dieses Verfahren wird ein Netzwerk von Peer-to-Peer-Clients für das Instant Messaging unter IPv4 angenommen, das einen gesamten Adressraum von etwa 4 Milliarden (das heißt 232) eindeutigen IP-Adressen aufweist. Wenn eine Größe des Satzes von 1.000 IP-Adressen gewünscht wird, werden in diesem Fall 1.000 Zahlen zwischen 1 und 232 zufällig gezogen, wobei jede dieser Zahlen einer eindeutigen IP-Adresse entspricht. Durch Abtasten der Ports oder durch den Versuch, eine Verbindung zu jeder der IP-Adressen herzustellen, können die mit dem dezentralisierten Netzwerk 101 verbundenen IP-Adressen und die Knoten an diesen Adressen bestimmt werden. Wenn zum Beispiel drei der Adressen einzelne Knoten aufweisen, die mit dem dezentralisierten Netzwerk 101 verbunden sind, und eine Adresse auf einen privaten Adressraum mit vier zusätzlichen Knoten verweist, die mit dem dezentralisierten Netzwerk 101 verbunden sind, wird die Gesamtanzahl von Knoten im dezentralisierten Netzwerk 101 auf etwa 30 Millionen Clients (das heißt 232·[(3 + 4)/1.000]) geschätzt.
  • 6 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Wachstumsrate eines dezentralisierten Netzwerks. In Schritt 601 schätzt das Verfahren die Anzahl von Knoten im dezentralisierten Netzwerk 101 zu einem Zeitpunkt t0. In Schritt 602 wartet das Verfahren eine feste Zeitdauer Delta T (oder Δt) und schätzt dann erneut die Anzahl von Knoten im dezentralisierten Netzwerk 101 zu einem Zeitpunkt (t0 + Δt).
  • In Schritt 603 schätzt das Verfahren die Wachstumsrate des dezentralisierten Netzwerks 101, indem die geschätzte Anzahl von Knoten im dezentralisierten Netzwerk 101 zum Zeitpunkt t0 von der geschätzten Anzahl von Knoten im dezentralisierten Netzwerk 101 zum Zeitpunkt (t0 + Δt) abgezogen wird und die Differenz durch die feste Zeitdauer Δt geteilt wird. Das Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk 101, wie in Schritt 601 und 602 durchgeführt, kann entweder mit dem anhand von 4 oder dem anhand von 5 beschriebenen Verfahren erfolgen.
  • 7 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Beschleunigung des Wachstums eines dezentralisierten Netzwerks. In Schritt 701 erzeugt das Verfahren einen ersten Schätzwert (E1) für die Anzahl von Knoten im dezentralisierten Netzwerk 101 zu einem Zeitpunkt t0. In Schritt 702 wartet das Verfahren eine Zeitdauer (Δt) und erzeugt dann einen zweiten Schätzwert (E2) für die Anzahl von Knoten im dezentralisierten Netzwerk 101 zu einem Zeitpunkt (t0 + Δt). In Schritt 703 wartet das Verfahren erneut die Zeitdauer (Δt) und erzeugt dann einen dritten Schätzwert (E3) für die Anzahl von Knoten im dezentralisierten Netzwerk 101 zu einem Zeitpunkt (t0 + 2·Δt).
  • In Schritt 704 schätzt das Verfahren die Beschleunigung des Wachstums der Anzahl von Knoten im dezentralisierten Netzwerk 101, indem durch Verdoppeln des zweiten Schätzwerts (das heißt [2·E2]) ein Produkt erzeugt wird, durch Abziehen des ersten und des dritten Schätzwerts von dem Produkt (das heißt [2·E2] – E1 – E3) eine Differenz erzeugt wird und indem die Differenz durch die Zeitdauer Δt dividiert wird (das heißt [[2·E2] – E1 – E3]/Δt). Das Erzeugen des ersten, des zweiten und des dritten Schätzwerts kann entweder mit dem anhand von 4 oder dem anhand von 5 beschriebenen Verfahren erfolgen.
  • 8 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Anzahl von Vorkommen einer Datei in einem dezentralisierten Netzwerk. In Schritt 801 identifiziert das Verfahren einen repräsentativen Satz von Knoten im dezentralisierten Netzwerk 101, indem entweder das anhand von 2 oder das anhand von 3 beschriebene Verfahren durchgeführt wird.
  • In Schritt 802 bestimmt das Verfahren die Vorkommensdichte einer Datei in dem in Schritt 810 identifizierten repräsentativen Satz von Knoten. Eine Möglichkeit hierfür besteht darin, die Anzahl von Vorkommen der Datei in dem repräsentativen Satz von Knoten zu zählen und den Zählwert durch die Anzahl von Knoten in dem repräsentativen Satz von Knoten zu teilen. Eine andere Möglichkeit besteht darin, eine global eindeutige Identifikation für die Datei zu bestimmen, zum Beispiel durch Abfragen des dezentralisierten Netzwerks 101 nach der Datei und Erhalten der global eindeutigen Identifikation aus den Suchergebnissen, Zählen der Anzahl von Auftritten der global eindeutigen Identifikation in allen Knoten des repräsentativen Satzes von Knoten und Teilen des Zählwerts durch die Anzahl von Knoten in dem repräsentativen Satz von Knoten. Noch eine weitere Möglichkeit ist das Berechnen von Einweg-Hash-Werten für alle Dateien, die sich in dem repräsentativen Satz von Knoten befinden, Zählen der Anzahl von Malen, die ein Einweg-Hash-Wert für die Datei unter den berechneten Einweg-Hash-Werten für alle Dateien auftritt, die sich in dem repräsentativen Satz von Knoten befinden, und Teilen des Zählwerts durch die Anzahl von Knoten in dem repräsentativen Satz von Knoten.
  • In Schritt 803 schätzt das Verfahren die Anzahl von Vorkommen. der Datei im dezentralisierten Netzwerk 101 durch Multiplizieren der Dichte seiner Knoten, wie in Schritt 802 bestimmt, mit der Gesamtanzahl von Knoten im dezentralisierten Netzwerk 101. Wenn keine Informationen über die Gesamtanzahl von Knoten im dezentralisierten Netzwerk 101 verfügbar sind, wird diese Anzahl zum Beispiel mit einem der anhand von 4 und 5 beschriebenen Verfahren geschätzt.
  • 9 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Ausbreitungsrate einer Datei in einem dezentralisierten Netzwerk. In Schritt 901 schätzt das Verfahren die Anzahl von Vorkommen der Datei im dezentralisierten Netzwerk 101 zum Zeitpunkt t0, indem zum Beispiel das anhand von 8 beschriebene Verfahren verwendet wird. In Schritt 902 wartet das Verfahren eine feste Zeitdauer Delta T (oder Δt) und schätzt dann erneut die Anzahl von Vorkommen der Datei im dezentralisierten Netzwerk 101 zu einem Zeitpunkt (t0 + Δt).
  • In Schritt 903 schätzt das Verfahren die Ausbreitungsrate der Datei im dezentralisierten Netzwerk 101, indem die geschätzte Anzahl von Vorkommen im dezentralisierten Netzwerk 101 zum Zeitpunkt t0 von der geschätzten Anzahl von Vorkommen im dezentralisierten Netzwerk 101 zum Zeitpunkt (t0 + Δt) abgezogen wird und die Differenz durch die feste Zeitdauer Δt geteilt wird.
  • 10 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Beschleunigung der Ausbreitung einer Datei in einem dezentralisierten Netzwerk. In Schritt 1001 erzeugt das Verfahren einen ersten Schätzwert (E1) für die Ausbreitungsrate der Datei im dezentralisierten Netzwerk 101 zu einem Zeitpunkt t0. In Schritt 1002 wartet das Verfahren eine Zeitdauer (Δt) und erzeugt dann einen zweiten Schätzwert (E2) für die Ausbreitungsrate der Datei im dezentralisierten Netzwerk 101 zu einem Zeitpunkt (t0 + Δt). In Schritt 1003 wartet das Verfahren erneut die Zeitdauer (Δt) und erzeugt dann einen dritten Schätzwert (E3) für die Ausbreitungsrate der Datei im dezentralisierten Netzwerk 101 zu einem Zeitpunkt (t0 + 2·Δt).
  • In Schritt 1004 schätzt das Verfahren dann die Beschleunigung der Ausbreitung der Datei im dezentralisierten Netzwerk 101, indem durch Verdoppeln des zweiten Schätzwerts (das heißt [2·E2]) ein Produkt erzeugt wird, durch Abziehen des ersten und des dritten Schätzwerts von dem Produkt (das heißt [2·E2] – E1 – E3) eine Differenz erzeugt wird und indem die Differenz durch die Zeitdauer Δt dividiert wird (das heißt [[2·E2] – E1 – E3]/Δt). Das Erzeugen des ersten, des zweiten und des dritten Schätzwerts kann zum Beispiel mit dem anhand von 9 beschriebenen Verfahren erfolgen.
  • 11 zeigt ein Ablaufdiagramm eines Verfahrens zum gleichmäßigen Infiltrieren eines dezentralisierten Netzwerks mit Softwareagenten, die sich als Knoten im dezentralisierten Netzwerk verkleiden. In Schritt 1101 identifiziert das Verfahren einen repräsentativen Satz von Knoten in dem dezentralisierten Netzwerk 101, indem entweder das anhand von 2 oder das anhand von 3 beschriebene Verfahren durchgeführt wird. In Schritt 1102 hängt das Verfahren dann einen entsprechenden Softwareagenten, der sich als ein Knoten verkleidet, an jeden der Knoten in dem repräsentativen Satz von Knoten an. Wie vorstehend beschrieben, sind die Softwareagenten solche, die sich entweder auf einem oder mehreren Computern befinden, die das Rechenzentrum 102 bilden, oder auf einem oder mehreren Computern, die direkt oder über ein virtuelles Netzwerk mit dem Rechenzentrum 102 verbunden sind. In jedem Fall werden ihre Aktivitäten im Allgemeinen von dem Rechenzentrum 102 verwaltet und/oder festgelegt.
  • 12 zeigt ein Ablaufdiagramm eines Verfahrens zum gleichmäßigen Verteilen von Dateien in einem dezentralisierten Netzwerk. In Schritt 1201 infiltriert das Verfahren das dezentralisierte Netzwerk 101 gleichmäßig mit Softwareagenten, die sich als Knoten im dezentralisierten Netzwerk 101 verkleiden, in der gleichen Weise wie zum Beispiel unter Bezugnahme auf 11 beschrieben. In Schritt 1202 lädt das Verfahren dann eine Datei auf jeden der Softwareagenten.
  • 13 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Gesamtanzahl von Suchabfragen in einem dezentralisierten Netzwerk über eine vorgegebene Zeitdauer. In Schritt 1301 infiltriert das Verfahren das dezentralisierte Netzwerk 101 gleichmäßig mit Softwareagenten, in der gleichen Weise wie zum Beispiel unter Bezugnahme auf 11 beschrieben. In Schritt 1302 veranlasst das Verfahren die Softwareagenten dazu, alle Suchabfragen aufzuzeichnen, die sie während einer vorgegebenen Zeitdauer empfangen.
  • In Schritt 1303 schätzt das Verfahren die Gesamtanzahl von Suchabfragen im dezentralisierten Netzwerk 101 während der vorgegebenen Zeitdauer, indem eine Summe durch Addieren der durch die Softwareagenten während der vorgegebenen Zeitdauer aufgezeichneten empfangenen Suchabfragen erzeugt wird, ein Produkt durch Multiplizieren der Summe mit der Anzahl von Knoten im dezentralisierten Netzwerk 101 erzeugt wird und das Produkt durch die Anzahl der Softwareagenten geteilt wird. Wenn keine Informationen über die Gesamtanzahl von Knoten im dezentralisierten Netzwerk 101 verfügbar sind, wird diese Anzahl zum Beispiel mit einem der anhand von 4 und 5 beschriebenen Verfahren geschätzt.
  • 14 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Gesamtanzahl von Suchabfragen für eine Datei in einem dezentralisierten Netzwerk über eine vorgegebene Zeitdauer. In Schritt 1401 infiltriert das Verfahren das dezentralisierte Netzwerk 101 gleichmäßig mit Softwareagenten, in der gleichen Weise wie zum Beispiel unter Bezugnahme auf 11 beschrieben. In Schritt 1402 veranlasst das Verfahren die Softwareagenten dazu, alle Suchabfragen für eine Datei aufzuzeichnen, die sie während einer vorgegebenen Zeitdauer empfangen.
  • In Schritt 1403 schätzt das Verfahren die Gesamtanzahl von Suchabfragen für die Datei im dezentralisierten Netzwerk 101 während der vorgegebenen Zeitdauer, indem eine Summe durch Addieren der durch die Softwareagenten während der vorgegebenen Zeitdauer aufgezeichneten empfangenen Suchabfragen für die Datei erzeugt wird, ein Produkt durch Multiplizieren der Summe mit der Anzahl von Knoten im dezentralisierten Netzwerk 101 erzeugt wird und das Produkt durch die Anzahl der Softwareagenten geteilt wird. Wenn keine Informationen über die Gesamtanzahl von Knoten im dezentralisierten Netzwerk 101 verfügbar sind, wird diese Anzahl zum Beispiel mit einem der anhand von 4 und 5 beschriebenen Verfahren geschätzt.
  • 15 zeigt ein Ablaufdiagramm eines Verfahrens zum Schätzen der Gesamtanzahl von Downloads einer Datei in einem dezentralisierten Netzwerk über eine vorgegebene Zeitdauer. In Schritt 1501 infiltriert das Verfahren das dezentralisierte Netzwerk 101 gleichmäßig mit Softwareagenten, in der gleichen Weise wie zum Beispiel unter Bezugnahme auf 11 beschrieben. In Schritt 1502 lädt das Verfahren eine Datei auf jeden der Softwareagenten. In diesem Fall können die Dateien zulässige Kopien oder Köderdateien sein, die eine zulässige Kopie vortäuschen.
  • In Schritt 1503 veranlasst das Verfahren die Softwareagenten, auf jede Downloadanfrage für eine Kopie der Datei entsprechend den Richtlinien und Traditionen des dezentralisierten Netzwerks 101 während einer vorgegebenen Zeitdauer (zum Beispiel eine Minute, eine Stunde, ein Tag usw.) zu reagieren und eine Aufzeichnung jedes Downloads durch Führen eines Protokolls aller Ergebnisse zu behalten. In Schritt 1504 bestimmt das Verfahren die Gesamtanzahl erfolgreicher Downloads für alle Softwareagenten während der vorgegebenen Zeitdauer aus ihren jeweiligen Aufzeichnungen der Downloads.
  • In Schritt 1505 schätzt das Verfahren dann die Gesamtanzahl von Downloads der Datei im dezentralisierten Netzwerk 101 während der vorgegebenen Zeitdauer, indem ein Produkt durch Multiplizieren der in Schritt 1504 bestimmten Gesamtanzahl von Downloads während der vorgegebenen Zeitdauer erzeugt wird und das Produkt durch die Anzahl von Softwareagenten geteilt wird.
  • Obwohl die verschiedenen Aspekte der vorliegenden Erfindung anhand einer bevorzugten Ausführungsform beschrieben worden ist, gilt als vereinbart, dass die vorliegende Erfindung dem vollen Schutz im Rahmen des vollständigen Umfangs der anliegenden Ansprüche unterliegt.

Claims (48)

  1. Instrumentierungssystem (100) zum Schätzen charakteristischer Eigenschaften eines dezentralisierten Netzwerks, umfassend einen Computer (102), der dazu ausgelegt ist, die Anzahl von Vorkommen einer Datei in einem dezentralisierten Netzwerk zu schätzen, indem ein repräsentativer Satz von Knoten im dezentralisierten Netzwerk identifiziert wird, die Vorkommensdichte einer Datei im repräsentativen Satz bestimmt wird und die Anzahl von Vorkommen der Datei im dezentralisierten Netzwerk durch Multiplizieren der Größe des Netzwerks mit der Vorkommensdichte der Datei im repräsentativen Satz geschätzt wird.
  2. Instrumentierungssystem nach Anspruch 1, wobei der Computer dazu ausgelegt ist, den repräsentativen Satz von Knoten im dezentralisierten Netzwerk zu identifizieren, indem ein Satz von Knoten im dezentralisierten Netzwerk indiziert wird, ein Satz von beobachteten Werten für ein bei allen Knoten im Satz gefundenes suchbares Attribut aufgebaut wird, ein Satz von beobachteten Werten für das eine suchbare Attribut aus den Sätzen gezogen wird, im dezentralisierten Netzwerk eine Suche nach Knoten mit mindestens einem der beobachteten Werte für das eine suchbare Attribut durchgeführt wird und der repräsentative Satz von Knoten durch Einschließen mindestens einer Teilmenge von Knoten in den Suchergebnissen erzeugt wird.
  3. Instrumentierungssystem nach Anspruch 2, wobei das eine suchbare Attribut unabhängig von der Netzwerktopologie ist.
  4. Instrumentierungssystem nach Anspruch 3, wobei der Computer ferner dazu ausgelegt ist, den Satz von Knoten im dezentralisierten Netzwerk zu indizieren, indem ein Knoten im dezentralisierten Netzwerk identifiziert wird und andere di rekt oder indirekt mit dem identifizierten Knoten verbundene Knoten identifiziert werden.
  5. Instrumentierungssystem nach Anspruch 1, wobei der Computer dazu ausgelegt ist, den repräsentativen Satz von Knoten im dezentralisierten Netzwerk zu identifizieren, indem Knoten im dezentralisierten Netzwerk mit Zellen einer Attributmatrix mit übereinstimmenden Attributwerten verknüpft werden, bis Maximalanzahlen von Knoten mit allen Zellen der Attributmatrix verknüpft sind, sodass der repräsentative Satz von Knoten aus mindestens einer Teilmenge der mit den Zellen der Attributmatrix verknüpften Knoten erzeugt wird.
  6. Instrumentierungssystem nach Anspruch 5, wobei die Attribute der Attributmatrix Schlüsselattribute sind, für die der repräsentative Satz von Knoten repräsentativ sein soll.
  7. Instrumentierungssystem nach Anspruch 5, wobei die Maximalanzahl von mit jeder Zelle verknüpften Knoten auf einem geschätzten prozentualen Anteil von Knoten im dezentralisierten Netzwerk mit dem Attributwert der Zelle basiert.
  8. Instrumentierungssystem nach Anspruch 5, wobei für die Verknüpfung mit den Zellen der Attributmatrix ausgewählte Knoten ausgewählt werden, indem die Netzwerktopologie beginnend bei einem anfangs ausgewählten Knoten durchkrochen wird.
  9. Instrumentierungssystem nach Anspruch 1, wobei der Computer ferner dazu ausgelegt ist, die Ausbreitungsrate der Datei im dezentralisierten Netzwerk zu schätzen, indem die Anzahl von Vorkommen der Datei zu zwei Zeitpunkten geschätzt wird und eine Differenz zwischen den zwei Schätzungen durch eine Zeitdauer zwischen den zwei Zeitpunkten geteilt wird.
  10. Instrumentierungssystem nach Anspruch 1, wobei der Computer ferner dazu ausgelegt ist, die Beschleunigung der Ausbreitung der Datei im dezentralisierten Netzwerk durch Schät zen der Anzahl von Vorkommen der Datei zu drei Zeitpunkten zu schätzen.
  11. Instrumentierungssystem nach Anspruch 1, wobei der Computer ferner dazu ausgelegt ist, eine Gesamtanzahl von Suchabfragen für eine Datei in einem dezentralisierten Netzwerk über eine vorgegebene Zeitdauer zu schätzen, indem die Gesamtanzahl von Suchabfragen für die Datei, wie sie von gleichmäßig im dezentralisierten Netzwerk verteilten Softwareagenten über die vorgegebene Zeitdauer aufgezeichnet wurden, mit der Anzahl von Knoten im dezentralisierten Netzwerk multipliziert wird und das Produkt durch die Anzahl von Softwareagenten geteilt wird.
  12. Instrumentierungssystem nach Anspruch 11, wobei der Computer ferner dazu ausgelegt ist, die Softwareagenten im dezentralisierten Netzwerk gleichmäßig zu verteilen, indem ein repräsentativer Satz von Knoten im dezentralisierten Netzwerk identifiziert wird und ein entsprechender Softwareagent an jeden der Knoten im repräsentativen Satz von Knoten angehängt wird.
  13. Instrumentierungssystem nach Anspruch 12, wobei der Computer dazu ausgelegt ist, den repräsentativen Satz von Knoten im dezentralisierten Netzwerk zu identifizieren, indem ein Satz von Knoten im dezentralisierten Netzwerk indiziert wird, ein Satz von beobachteten Werten für ein bei allen Knoten im Satz gefundenes suchbares Attribut aufgebaut wird, ein Satz von beobachteten Werten für das eine suchbare Attribut aus dem Satz gezogen wird, im dezentralisierten Netzwerk eine Suche nach Knoten mit mindestens einem der beobachteten Werte für das eine suchbare Attribut ausgeführt wird und der repräsentative Satz von Knoten durch Einschließen mindestens einer Teilmenge von Knoten in den Suchergebnissen erzeugt wird.
  14. Instrumentierungssystem nach Anspruch 13, wobei das eine suchbare Attribut unabhängig von der Netzwerktopologie ist.
  15. Instrumentierungssystem nach Anspruch 14, wobei der Computer ferner dazu ausgelegt ist, den Satz von Knoten im dezentralisierten Netzwerk zu indizieren, indem ein Knoten im dezentralisierten Netzwerk identifiziert wird und andere direkt oder indirekt mit dem identifizierten Knoten verbundene Knoten identifiziert werden.
  16. Instrumentierungssystem nach Anspruch 13, wobei der Computer dazu ausgelegt ist, den repräsentativen Satz von Knoten im dezentralisierten Netzwerk zu identifizieren, indem Knoten im dezentralisierten Netzwerk mit Zellen einer Attributmatrix mit übereinstimmenden Attributwerten verknüpft werden, bis Maximalanzahlen von Knoten mit allen Zellen der Attributmatrix verknüpft sind, so dass der repräsentative Satz von Knoten aus mindestens einer Teilmenge der mit den Zellen der Attributmatrix verknüpften Knoten erzeugt wird.
  17. Instrumentierungssystem nach Anspruch 16, wobei die Attribute der Attributmatrix Schlüsselattribute sind, für die der repräsentative Satz von Knoten repräsentativ sein soll.
  18. Instrumentierungssystem nach Anspruch 16, wobei die Maximalanzahl von mit jeder Zelle verknüpften Knoten auf einem geschätzten prozentualen Anteil von Knoten im dezentralisierten Netzwerk mit dem Attributwert der Zelle basiert.
  19. Instrumentierungssystem nach Anspruch 16, wobei für die Verknüpfung mit den Zellen der Attributmatrix ausgewählte Knoten ausgewählt werden, indem die Netzwerktopologie beginnend mit einem anfangs ausgewählten Knoten durchkrochen wird.
  20. Instrumentierungssystem nach Anspruch 1, wobei der Computer ferner dazu ausgelegt ist, eine Gesamtanzahl von Downloads einer Datei im dezentralisierten Netzwerk über eine vorgegebene Zeitdauer zu schätzen, indem die Gesamtanzahl von Downloads der Datei, wie sie von gleichmäßig im dezentrali sierten Netzwerk verteilten Softwareagenten über die vorgebende Zeitdauer aufgezeichnet wurde, mit der Anzahl von Knoten im dezentralisierten Netzwerk multipliziert wird und das Produkt durch die Anzahl von Softwareagenten geteilt wird.
  21. Instrumentierungssystem nach Anspruch 20, wobei der Computer ferner dazu ausgelegt ist, die Softwareagenten im dezentralisierten Netzwerk gleichmäßig zu verteilen, indem ein repräsentativer Satz von Knoten im dezentralisierten Netzwerk identifiziert wird und ein entsprechender Softwareagent an jeden der Knoten im repräsentativen Satz von Knoten angehängt wird.
  22. Instrumentierungssystem nach Anspruch 21, wobei der Computer dazu ausgelegt ist, den repräsentativen Satz von Knoten im dezentralisierten Netzwerk zu identifizieren, indem ein Satz von Knoten im dezentralisierten Netzwerk indiziert wird, ein Satz von beobachteten Werten für ein bei allen Knoten im Satz gefundenes suchbares Attribut aufgebaut wird, ein Satz von beobachteten Werten für das eine suchbare Attribut aus dem Satz gezogen wird, im dezentralisierten Netzwerk eine Suche nach Knoten mit mindestens einem der beobachteten Werte für das eine suchbare Attribut ausgeführt wird und der repräsentative Satz von Knoten durch Einschließen mindestens einer Teilmenge von Knoten in den Suchergebnissen erzeugt wird.
  23. Instrumentierungssystem nach Anspruch 22, wobei das eine suchbare Attribut unabhängig von der Netzwerktopologie ist.
  24. Instrumentierungssystem nach Anspruch 23, wobei der Computer ferner dazu ausgelegt ist, den Satz von Knoten im dezentralisierten Netzwerk zu identifizieren, indem ein Knoten im dezentralisierten Netzwerk identifiziert wird und andere direkt oder indirekt mit dem identifizierten Knoten verbundene Knoten identifiziert werden, bis ein statistisch repräsentativer Satz von Knoten in dem Satz von Knoten enthalten ist, der indiziert wird.
  25. Instrumentierungssystem nach Anspruch 22, wobei der Computer dazu ausgelegt ist, den repräsentativen Satz von Knoten im dezentralisierten Netzwerk zu identifizieren, indem Knoten im dezentralisierten Netzwerk mit Zellen einer Attributmatrix mit übereinstimmenden Attributwerten verknüpft werden, bis Maximalanzahlen von Knoten mit allen Zellen der Attributmatrix verknüpft sind, so dass der repräsentative Satz von Knoten aus mindestens einer Teilmenge der mit den Zellen der Attributmatrix verknüpften Knoten erzeugt wird.
  26. Instrumentierungssystem nach Anspruch 25, wobei die Attribute der Attributmatrix Schlüsselattribute sind, für die der repräsentative Satz von Knoten repräsentativ sein soll.
  27. Instrumentierungssystem nach Anspruch 25, wobei die Maximalanzahl von mit jeder Zelle verknüpften Knoten auf einem geschätzten prozentualen Anteil von Knoten im dezentralisierten Netzwerk mit dem Attributwert der Zelle basiert.
  28. Instrumentierungssystem nach Anspruch 25, wobei für die Verknüpfung mit den Zellen der Attributmatrix ausgewählte Knoten ausgewählt werden, indem die Netzwerktopologie beginnend von einem anfangs ausgewählten Knoten durchkrochen wird.
  29. Computerimplementiertes Verfahren zum Schätzen der Anzahl von Vorkommen einer Datei in einem dezentralisierten Netzwerk, wobei die von einem Computer (102) durchgeführten Schritte umfassen: Identifizieren (801) eines repräsentativen Satzes von Knoten im dezentralisierten Netzwerk, Bestimmen (802) einer Vorkommensdichte einer Datei im repräsentativen Satz von Knoten und Schätzen (803) der Anzahl von Vorkommen der Datei im dezentralisierten Netzwerk, indem die Vorkommensdichte der Datei mit der Anzahl von Knoten im dezentralisierten Netzwerk multipliziert wird.
  30. Verfahren nach Anspruch 29, wobei das Identifizieren eines repräsentativen Satzes von Knoten umfasst: Indizieren (201) eines Satzes von Knoten im dezentralisierten Netzwerk, Aufbauen (202) eines Satzes von beobachteten Werten für ein bei allen Knoten im Satz gefundenes suchbares Attribut, Ziehen (203) eines Satzes von beobachteten Werten für das eine suchbare Attribut aus dem Satz, Ausführen (204) einer Suche im dezentralisierten Netzwerk nach Knoten mit mindestens einem der für das eine suchbare Attribut wie im gezogenen Satz beobachteten Werte und Erzeugen (205) eines repräsentativen Satzes von Knoten im dezentralisierten Netzwerk durch Einschließen mindestens einer Teilmenge von Knoten in den Suchergebnissen.
  31. Verfahren nach Anspruch 29, wobei das Identifizieren eines repräsentativen Satzes von Knoten umfasst: einen Schritt A, in dem ein Knoten im dezentralisierten Netzwerk identifiziert wird (301); einen Schritt B, in dem bestimmt wird (302), ob der Knoten einen mit einem Attributwert einer Zelle einer Attributmatrix übereinstimmenden Attributwert hat; einen Schritt C, in dem, falls die Antwort in Schritt B NEIN ist, zum Schritt A zurückgesprungen wird, um einen anderen Knoten im dezentralisierten Netzwerk zu identifizieren, und, falls die Antwort in Schritt B JA ist, bestimmt wird (303), ob die Zelle ihre Maximalanzahl von verknüpften Knoten erreicht hat; einen Schritt D, in dem, falls die Antwort in Schritt C NEIN ist, der Knoten mit der Zelle verknüpft wird (304) und zu Schritt B zurückgesprungen wird, um zu bestimmen, ob der Knoten einen anderen Attributwert hat, der mit dem einer anderen Zelle der Attributmatrix übereinstimmt, und falls die Antwort in Schritt C JA ist, bestimmt wird (305), ob alle Zellen in der Attributmatrix ihre Maximalanzahlen von verknüpften Knoten erreicht haben; und einen Schritt E, in dem, falls die Antwort in Schritt D NEIN ist, zu Schritt B zurückgesprungen wird, um zu bestimmen, ob der Knoten einen anderen Attributwert hat, der mit dem einer anderen Zelle der Attributmatrix übereinstimmt, und falls die Antwort in Schritt D JA ist, ein repräsentativer Satz von Knoten im dezentralisierten Netzwerk aus den mit den Zellen der Attributmatrix verknüpften Werten erzeugt wird (306).
  32. Verfahren nach Anspruch 29, wobei das Bestimmen der Vorkommensdichte einer Datei umfasst: Erzeugen eines Zählwerts durch Zählen der Anzahl von Kopien der Datei, die sich im repräsentativen Satz von Knoten befindet, und Berechnen der Vorkommensdichte der Datei durch Teilen des Zählwerts durch die Anzahl von Knoten im repräsentativen Satz von Knoten.
  33. Verfahren nach Anspruch 29, wobei das Bestimmen der Vorkommensdichte eine Datei umfasst: Bestimmen einer global eindeutigen Identifikation für die Datei durch Abfragen des dezentralisierten Netzwerk nach der Datei, Erzeugen eines Zählwerts durch Zählen der Anzahl von Auftritten der global eindeutigen Identifikation in allen Knoten des repräsentativen Satzes von Knoten und berechnen der Vorkommensdichte der Datei durch Teilen des Zählwerts durch die Anzahl von Knoten im repräsentativen Satz von Knoten.
  34. Verfahren nach Anspruch 29, wobei das Bestimmen der Vorkommensdichte einer Datei umfasst: Bestimmen eines Einweg-Hash-Werts für alle Dateien, die sich im repräsentativen Satz von Knoten befinden; Erzeugen eines Zählwerts durch Zählen der Anzahl von Malen, die ein Einweg-Hash-Wert für die Datei unter den berechneten Einweg-Hash-Werten für alle Dateien, die sich im repräsentativen Satz von Knoten befinden, auftritt; und Berechnen der Vorkommensdichte der Datei durch Teilen des Zählwerts durch die Anzahl von Knoten im repräsentativen Satz von Knoten.
  35. Verfahren nach Anspruch 29, ferner umfassend: Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk, wenn die tatsächliche Anzahl von Knoten im dezentralisierten Netzwerk nicht bekannt ist.
  36. Verfahren nach Anspruch 35, wobei das Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk umfasst: Ziehen eines Zufallssatzes aller möglichen Adressen in einem dem dezentralisierten Netzwerk. und einem Referenznetzwerk gemeinsam zugrundeliegenden Adressraum; Zählen der Anzahl von mit dem dezentralisierten Netzwerk verknüpften Knoten, die sich an Adressen in dem Zufallssatz befinden; Berechnen einer Dichte der dezentralisierten Netzwerkknoten durch Teilen des Zählwerts der mit dem dezentralisierten Netzwerk verknüpften Knoten durch die Anzahl von Adressen im Zufallssatz; Zählen der Anzahl von mit dem Referenznetzwerk verknüpften Knoten, die sich an Adressen im Zufallssatz befinden; Berechnen einer Dichte der Referenznetzwerkknoten durch Teilen des Zählwerts der mit dem Referenznetzwerk verknüpften Knoten durch die Anzahl von Adressen im Zufallssatz; und Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk durch Multiplizieren der Dichte der dezentralisierten Netzwerkknoten mit einer bekannten Anzahl von Knoten im Referenznetzwerk und Teilen des Produktes durch die Dichte der Referenznetzwerkknoten.
  37. Verfahren nach Anspruch 35, wobei das Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk umfasst: Ziehen eines Zufallssatzes aller möglichen Adressen in einem zugrundeliegenden Adressraum; Zählen der Anzahl von mit dem dezentralisierten Netzwerk verknüpften Knoten, die sich an Adressen im Zufallssatz befinden; Berechnen einer Dichte der dezentralisierten Netzwerkknoten durch Teilen des Zählwerts der mit dem dezentralisierten Netzwerk verknüpften Knoten durch die Anzahl von Adressen im Zufallssatz; und Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk durch Multiplizieren der Dichte der dezentralisierten Netzwerkknoten mit der Größe des Adressraums.
  38. Verfahren nach Anspruch 29, ferner umfassend: gleichmäßiges Infiltrieren des dezentralisierten Netzwerks mit Softwareagenten, die sich als Knoten im dezentralisierten Netzwerk verkleiden; Veranlassen der Softwareagenten dazu, alle empfangenen Suchabfragen für eine Datei während einer vorgegebenen Zeitdauer aufzuzeichnen; und Schätzen einer Gesamtanzahl von Suchabfragen für die Datei im dezentralisierten Netzwerk während der vorgegebenen Zeitdauer, indem eine Summe durch Addieren der durch die Softwareagenten während der vorgegebenen Zeitdauer aufgezeichneten empfangenen Suchabfragen erzeugt wird, ein Produkt durch Multiplizieren der Summe mit der Anzahl von Knoten im dezentralisierten Netzwerk erzeugt wird und das Produkt durch die Anzahl der Softwareagenten geteilt wird.
  39. Verfahren nach Anspruch 38, wobei das gleichmäßige Infiltrieren des dezentralisierten Netzwerks mit Softwareagenten umfasst: Identifizieren eines repräsentativen Satzes von Knoten in einem dezentralisierten Netzwerk und Anhängen eines entsprechenden Softwareagenten, der sich als ein Knoten verkleidet, an jeden der Knoten im repräsentativen Satz von Knoten.
  40. Verfahren nach Anspruch 38, ferner umfassend: Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk, falls die tatsächliche Anzahl von Knoten im dezentralisierten Netzwerk unbekannt ist.
  41. Verfahren nach Anspruch 40, wobei das Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk umfasst: Ziehen eines Zufallssatzes aller möglichen Adressen in einem einem dezentralisierten Netzwerk und einem Referenznetzwerk gemeinsam zugrundeliegenden Adressraum; Zählen der Anzahl von mit dem dezentralisierten Netzwerk verknüpften Knoten, die sich an Adressen im Zufallssatz befinden; Berechnen einer Dichte der dezentralisierten Netzwerkknoten durch Teilen des Zählwerts der mit dem dezentralisierten Netzwerk verknüpften Knoten durch die Anzahl von Adressen im Zufallssatz; Zählen der Anzahl von mit einem Referenznetzwerk verknüpften Knoten, die sich an Adressen im Zufallssatz befinden; Berechnen einer Dichte der Referenznetzwerkknoten durch Teilen des Zählwerts der mit dem Referenznetzwerk verknüpften Knoten durch die Anzahl von Adressen im Zufallssatz; und Setzen der Anzahl von Knoten im dezentralisierten Netzwerk durch Multiplizieren der Dichte der dezentralisierten Netzwerkknoten mit einer bekannten Anzahl von Knoten im Referenznetzwerk und Teilen des Produktes durch die Dichte der Referenznetzwerkknoten.
  42. Verfahren nach Anspruch 40, wobei das Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk umfasst: Ziehen eines Zufallssatzes aller möglichen Adressen in einem zugrundeliegenden Adressraum; Zählen der Anzahl von mit dem dezentralisierten Netzwerk verknüpften Knoten, die sich an Adressen im Zufallssatz befinden; Berechnen einer Dichte der dezentralisierten Netzwerkknoten durch Teilen des Zählwerts der mit dem dezentralisierten Netzwerk verknüpften Knoten durch die Anzahl von Adressen im Zufallssatz; und Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk durch Multiplizieren der Dichte der dezentralisierten Netzwerkknoten mit der Größe des Adressraums.
  43. Verfahren nach Anspruch 29, ferner umfassend: gleichmäßiges Infiltrieren eines dezentralisierten Netzwerks mit Softwareagenten, die sich als Knoten im dezentralisierten Netzwerk verkleiden; Hinaufladen von Kopien einer Datei zu jedem der Softwareagenten; Veranlassen der Softwareagenten dazu, auf jede Downloadanfrage für eine Kopie der Datei während einer vorgegebenen Zeitdauer zu reagieren und eine Aufzeichnung jedes Downloads zu behalten; Bestimmen der aggregierten Anzahl von Downloads von Kopien der Datei während der vorgegebenen Zeitdauer durch alle Softwareagenten; und Schätzen einer Gesamtzahl von Downloads der Datei im dezentralisierten Netzwerk während einer vorgegebenen Zeitdauer, indem ein Produkt durch Multiplizieren der aggregierten Anzahl von Downloads von Kopien der Datei, wie sie von allen Softwareagenten während der vorgegebenen Zeitdauer heruntergeladen wurden, mit der Anzahl von Knoten im dezentralisierten Netz werk erzeugt wird und das Produkt durch die Anzahl von Softwareagenten geteilt wird.
  44. Verfahren nach Anspruch 43, ferner umfassend: Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk, falls die tatsächliche Anzahl von Knoten im dezentralisierten Netzwerk nicht bekannt ist.
  45. Verfahren nach Anspruch 44, wobei das Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk umfasst: Ziehen eines Zufallssatzes aller möglichen Adressen in einem einem dezentralisierten Netzwerk und einem Referenznetzwerk gemeinsam zugrundeliegenden Adressraum; Zählen der Anzahl von mit dem dezentralisierten Netzwerk verknüpften Knoten, die sich an Adressen im Zufallssatz befinden; Berechnen einer Dichte der dezentralisierten Netzwerkknoten durch Teilen des Zählwerts der mit dem dezentralisierten Netzwerk verknüpften Knoten durch die Anzahl von Adressen im Zufallssatz; Zählen der Anzahl von mit einem Referenznetzwerk verknüpften Knoten, die sich an Adressen im Zufallssatz befinden; Berechnen einer Dichte der Referenznetzwerkknoten durch Teilen des Zählwerts der mit dem Referenznetzwerk verknüpften Knoten durch die Anzahl von Adressen im Zufallssatz; und Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk durch Multiplizieren der Dichte der dezentralisierten Netzwerkknoten mit einer bekannten Anzahl von Knoten im Referenznetzwerk und Teilen des Produkts durch die Dichte der Referenznetzwerkknoten.
  46. Verfahren nach Anspruch 44, wobei das Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk umfasst: Ziehen eines Zufallssatzes aller möglichen Adresse in einem zugrundeliegenden Adressraum; Zählen der Anzahl von mit dem dezentralisierten Netzwerk verknüpften Knoten, die sich an Adressen im Zufallssatz befinden; Berechnen einer Dichte der dezentralisierten Netzwerkknoten durch Teilen des Zählwerts der mit dem dezentralisierten Netzwerk verknüpften Knoten durch die Anzahl von Adressen im Zufallssatz; und Schätzen der Anzahl von Knoten im dezentralisierten Netzwerk durch Multiplizieren der Dichte der dezentralisierten Netzwerkknoten mit der Größe des Adressraums.
  47. Verfahren nach Anspruch 43, wobei das gleichmäßige Infiltrieren des dezentralisierten Netzwerks mit Softwareagenten umfasst: Identifizieren eines repräsentativen Satzes von Knoten in einem dezentralisierten Netzwerk; und Anhängen eines entsprechenden Softwareagenten, der sich als ein Knoten verkleidet, an jeden der Knoten im repräsentativen Satz von Knoten.
  48. Verfahren nach Anspruch 43, wobei die Datei eine Köderdatei ist, die eine andere Datei vortäuscht, die das Ziel der Downloadanfragen ist, und das Verfahren die Anzahl von Downloads der Zieldatei während der vorgegebenen Zeitdauer im dezentralisierten Netzwerk schätzt.
DE602004009819T 2003-10-25 2004-09-10 Instrumentationssystem und verfahren zur schätzung von kenngrössen eines dezentralisierten netzwerks Active DE602004009819T2 (de)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US51442903P 2003-10-25 2003-10-25
US514429P 2003-10-25
US51472903P 2003-10-27 2003-10-27
US514729P 2003-10-27
US818674 2004-04-06
US10/818,674 US20050108378A1 (en) 2003-10-25 2004-04-06 Instrumentation system and methods for estimation of decentralized network characteristics
PCT/US2004/029685 WO2005043819A2 (en) 2003-10-25 2004-09-10 Instrumentation system and methods for estimation of decentralized network characteristics

Publications (2)

Publication Number Publication Date
DE602004009819D1 DE602004009819D1 (de) 2007-12-13
DE602004009819T2 true DE602004009819T2 (de) 2008-08-21

Family

ID=34557357

Family Applications (1)

Application Number Title Priority Date Filing Date
DE602004009819T Active DE602004009819T2 (de) 2003-10-25 2004-09-10 Instrumentationssystem und verfahren zur schätzung von kenngrössen eines dezentralisierten netzwerks

Country Status (6)

Country Link
US (1) US20050108378A1 (de)
EP (1) EP1680889B1 (de)
AT (1) ATE377311T1 (de)
DE (1) DE602004009819T2 (de)
HK (1) HK1090206A1 (de)
WO (1) WO2005043819A2 (de)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0107104D0 (en) * 2001-03-21 2001-05-09 Netpd Ltd Method and apparatus for identifying electronic files
US7715934B2 (en) * 2003-09-19 2010-05-11 Macrovision Corporation Identification of input files using reference files associated with nodes of a sparse binary tree
US20050091167A1 (en) * 2003-10-25 2005-04-28 Macrovision Corporation Interdiction of unauthorized copying in a decentralized network
US20050114709A1 (en) * 2003-10-25 2005-05-26 Macrovision Corporation Demand based method for interdiction of unauthorized copying in a decentralized network
US20050089014A1 (en) * 2003-10-27 2005-04-28 Macrovision Corporation System and methods for communicating over the internet with geographically distributed devices of a decentralized network using transparent asymetric return paths
US7877810B2 (en) * 2004-03-02 2011-01-25 Rovi Solutions Corporation System, method and client user interface for a copy protection service
WO2005107405A2 (en) 2004-05-04 2005-11-17 Boston Consulting Group, Inc. Method and apparatus for selecting, analyzing and visualizing related database records as a network
US7809943B2 (en) 2005-09-27 2010-10-05 Rovi Solutions Corporation Method and system for establishing trust in a peer-to-peer network
US8086722B2 (en) * 2005-12-21 2011-12-27 Rovi Solutions Corporation Techniques for measuring peer-to-peer (P2P) networks
US8244799B1 (en) * 2008-07-21 2012-08-14 Aol Inc. Client application fingerprinting based on analysis of client requests
US9129293B2 (en) 2009-01-29 2015-09-08 The Nielsen Company (Us), Llc Methods and apparatus to measure market statistics
US8280996B2 (en) 2009-01-29 2012-10-02 The Nielsen Company (Us), Llc Methods and apparatus to collect broadband market data
FR2961051B1 (fr) * 2010-06-08 2012-06-22 Trident Media Guard Tmg Procede de collecte de renseignements d'un reseau pair a pair.
US8855304B2 (en) * 2011-06-23 2014-10-07 Infosys Limited System and method for generating session keys
WO2017189071A1 (en) * 2016-04-27 2017-11-02 Acalvio Technologies, Inc. Context-aware knowledge system and methods for deploying deception mechanisms
US10771240B2 (en) 2018-06-13 2020-09-08 Dynamic Blockchains Inc Dynamic blockchain system and method for providing efficient and secure distributed data access, data storage and data transport
CN111343093B (zh) * 2020-02-28 2021-07-09 腾讯科技(深圳)有限公司 业务数据的传输方法及装置

Family Cites Families (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5437050A (en) * 1992-11-09 1995-07-25 Lamb; Robert G. Method and apparatus for recognizing broadcast information using multi-frequency magnitude detection
JP3865775B2 (ja) * 1995-04-11 2007-01-10 キネテック インコーポレイテッド データ処理システムにおけるデータの識別
US5918223A (en) * 1996-07-22 1999-06-29 Muscle Fish Method and article of manufacture for content-based analysis, storage, retrieval, and segmentation of audio information
US5708759A (en) * 1996-11-19 1998-01-13 Kemeny; Emanuel S. Speech recognition using phoneme waveform parameters
US5925843A (en) * 1997-02-12 1999-07-20 Virtual Music Entertainment, Inc. Song identification and synchronization
US5956671A (en) * 1997-06-04 1999-09-21 International Business Machines Corporation Apparatus and methods for shift invariant speech recognition
US6553403B1 (en) * 1998-06-03 2003-04-22 International Business Machines Corporation System, method and computer program product for monitoring in a distributed computing environment
GB9918611D0 (en) * 1999-08-07 1999-10-13 Sibelius Software Ltd Music database searching
US7020701B1 (en) * 1999-10-06 2006-03-28 Sensoria Corporation Method for collecting and processing data using internetworked wireless integrated network sensors (WINS)
US6188010B1 (en) * 1999-10-29 2001-02-13 Sony Corporation Music search by melody input
US6678680B1 (en) * 2000-01-06 2004-01-13 Mark Woo Music search engine
US20010037314A1 (en) * 2000-03-30 2001-11-01 Ishikawa Mark M. System, method and apparatus for authenticating the distribution of data
US6732180B1 (en) * 2000-08-08 2004-05-04 The University Of Tulsa Method to inhibit the identification and retrieval of proprietary media via automated search engines utilized in association with computer compatible communications network
KR20020030610A (ko) * 2000-10-19 2002-04-25 스톰 씨엔씨 인코포레이티드 통신상에서 불법 유통되는 디지털 음악파일에 의해 음반의판매량이 감소되는 것을 방지하는 방법
US7594030B2 (en) * 2000-11-22 2009-09-22 Microsoft Corporation Locator and tracking service for peer to peer resources
US7072982B2 (en) * 2000-11-22 2006-07-04 Microsoft Corporation Universal naming scheme for peer to peer resources
JP4162181B2 (ja) * 2000-11-27 2008-10-08 ヤマハ株式会社 番組作成再生装置及び番組作成再生方法並びに記憶媒体
US7627897B2 (en) * 2001-01-03 2009-12-01 Portauthority Technologies Inc. Method and apparatus for a reactive defense against illegal distribution of multimedia content in file sharing networks
US7350228B2 (en) * 2001-01-23 2008-03-25 Portauthority Technologies Inc. Method for securing digital content
GB0107104D0 (en) * 2001-03-21 2001-05-09 Netpd Ltd Method and apparatus for identifying electronic files
WO2003005242A1 (en) * 2001-03-23 2003-01-16 Kent Ridge Digital Labs Method and system of representing musical information in a digital representation for use in content-based multimedia information retrieval
JP2002297490A (ja) * 2001-03-30 2002-10-11 Toshiba Corp データ配信装置およびデータ配信方法
US20020141387A1 (en) * 2001-04-03 2002-10-03 David Orshan System, method and computer program product for delivery of internet services from a central system to multiple internet service providers at guaranteed service levels
US7363278B2 (en) * 2001-04-05 2008-04-22 Audible Magic Corporation Copyright detection and protection system and method
US20020152261A1 (en) * 2001-04-17 2002-10-17 Jed Arkin Method and system for preventing the infringement of intellectual property rights
US20020152262A1 (en) * 2001-04-17 2002-10-17 Jed Arkin Method and system for preventing the infringement of intellectual property rights
US7065482B2 (en) * 2001-05-17 2006-06-20 International Business Machines Corporation Internet traffic analysis tool
US7793326B2 (en) * 2001-08-03 2010-09-07 Comcast Ip Holdings I, Llc Video and digital multimedia aggregator
US7260215B2 (en) * 2001-09-04 2007-08-21 Portauthority Technologies Inc. Method for encryption in an un-trusted environment
US8041803B2 (en) * 2001-09-26 2011-10-18 Qurio Holdings, Inc. Method and system for delivering files in digital file marketplace
US20030095660A1 (en) * 2001-10-15 2003-05-22 Overpeer, Inc. System and method for protecting digital works on a communication network
US20030093794A1 (en) * 2001-11-13 2003-05-15 Koninklijke Philips Electronics N.V. Method and system for personal information retrieval, update and presentation
US7565155B2 (en) * 2002-04-10 2009-07-21 Networks In Motion Method and system for dynamic estimation and predictive route generation
US6947386B2 (en) * 2002-12-06 2005-09-20 Microsoft Corporation Practical network node coordinate estimation
US7715934B2 (en) * 2003-09-19 2010-05-11 Macrovision Corporation Identification of input files using reference files associated with nodes of a sparse binary tree
US20050114709A1 (en) * 2003-10-25 2005-05-26 Macrovision Corporation Demand based method for interdiction of unauthorized copying in a decentralized network
US20050091167A1 (en) * 2003-10-25 2005-04-28 Macrovision Corporation Interdiction of unauthorized copying in a decentralized network
US20050203851A1 (en) * 2003-10-25 2005-09-15 Macrovision Corporation Corruption and its deterrence in swarm downloads of protected files in a file sharing network
US20050089014A1 (en) * 2003-10-27 2005-04-28 Macrovision Corporation System and methods for communicating over the internet with geographically distributed devices of a decentralized network using transparent asymetric return paths
US7877810B2 (en) * 2004-03-02 2011-01-25 Rovi Solutions Corporation System, method and client user interface for a copy protection service

Also Published As

Publication number Publication date
WO2005043819A2 (en) 2005-05-12
EP1680889B1 (de) 2007-10-31
DE602004009819D1 (de) 2007-12-13
ATE377311T1 (de) 2007-11-15
WO2005043819A3 (en) 2005-07-07
US20050108378A1 (en) 2005-05-19
EP1680889A2 (de) 2006-07-19
HK1090206A1 (en) 2006-12-15

Similar Documents

Publication Publication Date Title
DE602004009819T2 (de) Instrumentationssystem und verfahren zur schätzung von kenngrössen eines dezentralisierten netzwerks
DE60317925T2 (de) Steuerung von netzwerkverkehr in einer peer-to-peer umgebung
DE60317403T2 (de) Mehrstufige Cache-Speicherarchitektur und Cache-Speicherverwaltungsverfahren für gleichrangiges Namensauflösungs-Protokoll
DE602005001883T2 (de) Überlagerte Daten, Selbstorganisierte überlagerte Metadaten, und Mehrfachsendung auf Anwendungsebene
DE69829830T2 (de) Weglenkungsverfahren unter Anwendung eines genetischen Algorithmus
DE60208659T2 (de) Skalierbare ressourcenermittlung und rekonfiguration für verteilte rechnernetze
DE112005003035B4 (de) Teilen einer Arbeitslast eines Knotens
DE10296804B4 (de) Verfahren und System zum Autorisieren des Zugriffs auf Betriebsmittel auf einem Server
EP1423964B1 (de) Skalierbares peer-to-peer-netzwerk mit einem verzeichnisdienst
DE60038705T2 (de) Verfahren und vorrichtung für die aktivitäts-basierte zusammenarbeit eines rechnersystems, ausgestattet mit einem kommunikations-manager
DE69916928T2 (de) Zugriffsverfahren und Server für Netzwerkverzeichnis
DE60217666T2 (de) System und verfahren zum beantworten von ressourcenanforderungen in verteilten rechnernetzen
DE102017125649A1 (de) Verfahren zur Datenkommunikation unter Verwendung von Random-Netzwerkadressen und eine entsprechende Vorrichtung
DE112010003458B4 (de) Verfahren und System für die Verwaltung der P2P-Dateiübertragung
DE60132360T2 (de) Verwaltung von netzwerk-verkehr durch anwendung einer hashfunktion
DE112005003037T5 (de) Bestimmen höchster Arbeitslasten für Knoten in einem Überlagerungsnetzwerk
DE60125720T2 (de) Kommunikationsnetz
DE602004005059T2 (de) Computernetzwerk zum identifizieren mehrerer knoten, mit demselben etikett übereinstimmen
DE102006052451B4 (de) Verfahren zum Betrieb eines dezentralen Datennetzes
EP1800458B1 (de) Verfahren zur initialisierung eines datennetzes
EP1977583B1 (de) Verfahren zur Übermittlung einer Nachricht und Netzwerk
DE60205208T2 (de) Verfahren zur Netzdienstenvermittlung
EP1815665B1 (de) Verfahren zur bereitstellung einer adresse in einem daten-netzwerk
DE602004013169T2 (de) Virtuelle netzwerke
DE102017109383A1 (de) Verfahren zur Datenkommunikation unter Verwendung von Zufalls-Netzwerkadressen und und entsprechende Vorrichtung

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8380 Miscellaneous part iii

Free format text: PFANDRECHT

8380 Miscellaneous part iii

Free format text: PFANDRECHT AUFGEHOBEN