Title:
ERMITTELN, WANN EINE VERBINDUNG ZWISCHEN MOBILEN CLIENT- UND PROXY-VORRICHTUNGEN HERGESTELLT WERDEN SOLL
Kind Code:
T5


Abstract:

Eine Client-Vorrichtung und eine Host-Vorrichtung können eine lokale Verbindung zum Bereitstellen von Weitverkehrsnetzwerkzugang, wie beispielsweise Internetzugang, für die Client-Vorrichtung erzeugen. In einigen Ausführungsformen kann die Client-Vorrichtung begrenzte Netzwerkfähigkeiten besitzen und ist unter Umständen nicht in der Lage, ohne die Host-Vorrichtung auf das Internet zuzugreifen. Die Client-Vorrichtung kann ihre Geschwindigkeit und Richtung potenziellen Host-Vorrichtungen in einer Nachricht bereitstellen. Eine Host-Vorrichtung kann auf Grundlage der Geschwindigkeit und Richtung des Clients sowie der Verbindungseigenschaften der Netzwerke eine Eignungsmaßzahl berechnen, die eine Fähigkeit für die Host-Vorrichtung angibt, die Client-Vorrichtung mit dem Internet zu verbinden. Die Host-Vorrichtung kann der Client-Vorrichtung die Eignungsmaßzahl innerhalb einer Verbindungsanforderung bereitstellen. Auf Grundlage der Eignungsmaßzahl und/oder weiterer Faktoren können die Client-Vorrichtung und die Host-Vorrichtung die lokale Verbindung herstellen.




Inventors:
Flynn, Paul V., Calif. (Cupertino, US)
Mathews, Dennis, Calif. (Cupertino, US)
Singh, Ajoy K., Calif. (Cupertino, US)
Zhao, Wen, Calif. (Cupertino, US)
Liu, Yong, Calif. (Cupertino, US)
Mujtaba, Syed Aon, Calif. (Cupertino, US)
Hariharan, Sriram, Calif. (Cupertino, US)
Semersky, Matthew L., Calif. (Cupertino, US)
Application Number:
DE112016001073T
Publication Date:
01/11/2018
Filing Date:
01/11/2016
Assignee:
Apple Inc. (Calif., Cupertino, US)



Attorney, Agent or Firm:
BARDEHLE PAGENBERG Partnerschaft mbB Patentanwälte, Rechtsanwälte, 81675, München, DE
Claims:
1. Verfahren zum Verwenden einer Client-Vorrichtung, um eine Verbindung mit einer Host-Vorrichtung herzustellen, um mit einem potenziell durch die Host-Vorrichtung zugänglichen Netzwerk Daten auszutauschen, wobei das Verfahren umfasst:
bei der Client-Vorrichtung, die eine drahtlose Schnittstelle zum Kommunizieren mit der Host-Vorrichtung, einen Speicher, einen Bewegungserfassungssensor und einen mit dem Speicher, dem Bewegungserfassungssensor und der drahtlosen Schnittstelle gekoppelten Prozessor umfasst:
Empfangen eines Auslösesignales, das angibt, dass ein Versuch unternommen werden soll, die Daten mit dem Netzwerk auszutauschen,
als Reaktion auf das Auslösesignal Identifizieren einer Geschwindigkeit und einer Bewegungsrichtung, die der Client-Vorrichtung zugeordnet sind, über den Bewegungserfassungssensor;
Erzeugen einer Ankündigungsnachricht zum Verbinden mit der Host-Vorrichtung, wobei die Ankündigungsnachricht einschließt:
die Geschwindigkeit und die Richtung und
eine Anforderung, dass die Daten mit dem Netzwerk ausgetauscht werden; und
Bereitstellen der Host-Vorrichtung, über die drahtlose Schnittstelle, der Ankündigungsnachricht zum Anfordern einer drahtlosen Verbindung mit der Host-Vorrichtung.

2. Verfahren nach Anspruch 1, ferner umfassend ein Empfangen eines Verbindungssignals von der Host-Vorrichtung, das ein Angebot für die Client-Vorrichtung angibt, eine Verbindung mit der Host-Vorrichtung herzustellen.

3. Verfahren nach Anspruch 2, wobei das Verbindungssignal eine der Host-Vorrichtung entsprechende zweite Geschwindigkeit und zweite Richtung umfasst.

4. Verfahren nach Anspruch 3, ferner umfassend ein Herstellen einer Verbindung mit der Host-Vorrichtung auf Grundlage der zweiten Geschwindigkeit und der zweiten Richtung.

5. Verfahren nach Anspruch 1, wobei die Client-Vorrichtung einem ersten Benutzer zugeordnet ist und die Host-Vorrichtung einem zweiten Benutzer zugeordnet ist, und ferner umfassend ein Abbrechen der Anforderung der drahtlosen Verbindung mit der Host-Vorrichtung, wenn sich der erste Benutzer nicht vom zweiten Benutzer unterscheidet.

6. Verfahren nach Anspruch 1, wobei das Auslösesignal auf Grundlage einer Menge an Zeit seit einer letzten Verbindung mit dem Netzwerk periodisch empfangen wird oder es sich bei ihm um eine Angabe einer Auswahl handelt, die Daten mit dem Netzwerk auszutauschen.

7. Client-Vorrichtung, die konfiguriert ist, eine Verbindung mit einer Host-Vorrichtung herzustellen, um mit einem potenziell durch die Host-Vorrichtung zugänglichen Netzwerk zu kommunizieren, wobei die Client-Vorrichtung umfasst:
eine drahtlose Schnittstelle zum Kommunizieren mit der Host-Vorrichtung;
einen Speicher; und
einen mit dem Speicher und der drahtlosen Schnittstelle gekoppelten Prozessor, wobei der Prozessor konfiguriert ist, Anweisungen auszuführen zum:
Empfangen einer Verbindungsanforderung von der Host-Vorrichtung über die drahtlose Schnittstelle, wobei die Verbindungsanforderung Daten zum Erlangen einer der Host-Vorrichtung zugeordneten Eignungsmaßzahl einschließt;
Vergleichen der Eignungsmaßzahl mit einem der Client-Vorrichtung zugeordneten Eignungsschwellenwert, wobei der Eignungsschwellenwert auf mindestens einem beruht von:
einer Zeit seit einer letzten Verbindung mit dem Netzwerk und
einer Wichtigkeit von mit dem Netzwerk auszutauschenden Informationen; und
Herstellen, über die drahtlose Schnittstelle, einer Verbindung mit der Host-Vorrichtung zum Übermitteln der Daten an das Netzwerk, wenn die Eignungsmaßzahl größer ist als der Eignungsschwellenwert.

8. Client-Vorrichtung nach Anspruch 7, wobei die in der Verbindungsanforderung eingeschlossenen Daten die Eignungsmaßzahl einschließen.

9. Client-Vorrichtung nach Anspruch 7, wobei der Prozessor ferner konfiguriert ist, die Anweisungen auszuführen, um die Eignungsmaßzahl auf Grundlage der in der Verbindungsanforderung eingeschlossenen Daten zu ermitteln.

10. Verfahren nach Anspruch 7, wobei der Eignungsschwellenwert auf der Zeit seit der letzten Verbindung mit dem Netzwerk beruht und wobei der Eignungsschwellenwert abnimmt, wenn sich die Zeit seit der letzten Verbindung mit dem Netzwerk erhöht.

11. Verfahren nach Anspruch 7, wobei der Eignungsschwellenwert auf der Wichtigkeit der Informationen beruht, und wobei der Eignungsschwellenwert abnimmt, wenn die Wichtigkeit der Informationen zunimmt.

12. Verfahren nach Anspruch 11, wobei die Wichtigkeit der Informationen mindestens eines ist von: durch einen Benutzer der Client-Vorrichtung konfiguriert und auf Grundlage von Inhalt der Informationen ermittelt.

13. Verfahren nach Anspruch 7, wobei die Client-Vorrichtung ferner einen Bewegungserfassungssensor zum Erfassen einer Geschwindigkeit und einer Bewegungsrichtung der Client-Vorrichtung vor dem Empfang der Verbindungsanforderung umfasst.

14. Verfahren nach Anspruch 13, wobei der Prozessor ferner konfiguriert ist, die Anweisungen auszuführen, um der Host-Vorrichtung die Geschwindigkeit und die Bewegungsrichtung der Client-Vorrichtung zur Verwendung beim Berechnen der Eignungsmaßzahl bereitzustellen.

15. Computerlesbares Datenspeichermedium, das computerlesbare Anweisungen speichert, die bei Ausführen durch eine Client-Rechenvorrichtung, die Client-Rechenvorrichtung konfigurieren, Operationen auszuführen, umfassend:
Empfangen einer Verbindungsanforderung von einer Host-Vorrichtung, wobei die Verbindungsanforderung Daten zum Erlangen einer der Host-Vorrichtung zugeordneten Eignungsmaßzahl einschließt;
Vergleichen der Eignungsmaßzahl mit einem der Client-Vorrichtung zugeordneten Eignungsschwellenwert, wobei der Eignungsschwellenwert auf mindestens einem beruht von:
einer Zeit seit einer letzten Verbindung mit einem Netzwerk und
einer Wichtigkeit von mit dem Netzwerk auszutauschenden Informationen; und
Herstellen einer Verbindung mit der Host-Vorrichtung zum Austauschen der Daten mit dem Netzwerk über eine drahtlose Schnittstelle, wenn die Eignungsmaßzahl größer ist als der Eignungsschwellenwert.

16. Computerlesbares Datenspeichermedium nach Anspruch 15, wobei die drahtlose Schnittstelle konfiguriert ist, Verbindungsmaßzahlen zu berichten, die mindestens eines umfassen von:
der Kommunikation mit der Host-Vorrichtung zugeordnete Maßzahlen einer Stärkeanzeige eines empfangenen Signals,
Geschwindigkeitsmaßzahlen der Host-Vorrichtung,
Richtungsmaßzahlen der Host-Vorrichtung,
der Kommunikation mit der Host-Vorrichtung zugeordnete Signal-Rausch-Verhältnis-Maßzahlen und
der Kommunikation mit der Host-Vorrichtung zugeordnete Stausteuerungsalgorithmus-Maßzahlen.

17. Computerlesbares Datenspeichermedium nach Anspruch 16, wobei die Eignungsmaßzahl auf mindestens einer der Verbindungsmaßzahlen beruht.

18. Computerlesbares Datenspeichermedium nach Anspruch 16, wobei die Maßzahlen einer Stärkeanzeige eines empfangenen Signals in der Verbindungsanforderung von der Host-Vorrichtung eingeschlossen sind, und wobei die Host-Vorrichtung fähig ist, die Eignungsmaßzahl zu erhöhen, wenn sich die Maßzahlen einer Stärkeanzeige eines empfangenen Signals erhöhen oder wenn die Geschwindigkeitsmaßzahlen der Host-Vorrichtung und die Richtungsmaßzahlen der Host-Vorrichtung einer Geschwindigkeit und einer Richtung der Client-Vorrichtung ähnlicher werden.

19. Computerlesbares Datenspeichermedium nach Anspruch 16, wobei die Signal-Rausch-Verhältnis-Maßzahlen eine der Kommunikation mit der Host-Vorrichtung zugeordnete Menge an Signalstärke in Hinblick auf ein Rauschen definieren, das während der Kommunikation mit der Host-Vorrichtung erfasst wird, und wobei die Host-Vorrichtung fähig ist, die Eignungsmaßzahl zu erhöhen, wenn sich die Signal-Rausch-Verhältnis-Maßzahlen erhöhen.

20. Computerlesbares Datenspeichermedium nach Anspruch 16, wobei die Stausteuerungsalgorithmus-Maßzahlen eine der Kommunikation mit der Host-Vorrichtung zugeordnete berechnete Menge an Stau definieren und wobei die Host-Vorrichtung fähig ist, die Eignungsmaßzahl zu erhöhen, wenn sich die Stausteuerungsalgorithmus-Maßzahlen erhöhen.

Description:
QUERVERWEIS AUF VERWANDTE ANMELDUNGEN

Die vorliegende Anmeldung beansprucht die Vorteile der am 23. Oktober 2015 eingereichten, nicht vorläufigen US-Anmeldung Nr. 14/921 481 mit dem Titel „Determining When to Establish Connection Between Mobile Client and Proxy Devices”, welche die Priorität der am 6. März 2015 eingereichten, vorläufigen US-Anmeldung Nr. 62/129 643 beansprucht. Die jeweiligen Offenbarungen beider Anmeldungen werden in ihrer Gesamtheit für Zwecke durch Bezugnahme hierin aufgenommen.

Diese Anmeldung ist auch mit der folgenden am 26. September 2014 eingereichten, vorläufigen US-Patentanmeldung Nr. 62/056 297 (anwaltliches Aktenzeichen: 90911-P21146USP1-912512) in gemeinschaftlichem Besitz mit dem Titel „Network Bandwidth Sharing For Small Mobile Devices” und den vorläufigen US-Patentanmeldungen 62/129 492, anwaltliches Aktenzeichen 90911-P25329USP1-924750, eingereicht am 6. März 2015, mit dem Titel „Determining Routing of Proxy Traffic Between Mobile Client and Proxy Devices” und den vorläufigen US-Patentanmeldungen 62/129 643, anwaltliches Aktenzeichen 90911-P25331USP1-924752, eingereicht am 6. März 2015, mit dem Titel „Cloud Support For Discovery And Data Transfer For Mobile Client Devices” verwandt, die für alle Zwecke in ihrer Gesamtheit hierin aufgenommen werden.

GEBIET

Ausführungsformen betreffen allgemein das Verwalten von Proxy-Netzwerkverbindungen zwischen Vorrichtungen.

HINTERGRUND

Bei der ständig steigenden Anzahl unterschiedlicher Typen von vernetzten Vorrichtungen können Benutzer nun mehrere Rechenvorrichtungen, einschließlich eines Desktop-Computers, eines Laptop-Computers, eines Mobiltelefons, eines Tablets, am Körper tragbarer vernetzter Vorrichtungen, vernetzter Haushaltsgeräte und anderer vernetzter Vorrichtungen, gleichzeitig verwenden. Insbesondere kleinere mobile Vorrichtungen besitzen unter Umständen nicht die Leistungs- oder Hardware-Ressourcen für eine Netzwerkkonnektivität mit vielem der vorhandenen drahtlosen Netzwerkinfrastruktur. Zusätzlich bewegen sich am Körper tragbare Vorrichtungen naturgemäß, während sie durch Benutzer, die aktiv sind, am Körper getragen werden. Ein Verwalten von Kommunikation in solch einer Umgebung stellt eine zunehmend komplexe Aufgabe dar.

ZUSAMMENFASSUNG

Systeme, Verfahren und ein computerlesbares Medium zum Ermitteln, wann Verbindungen zwischen mobilen Client- und Proxy-Vorrichtungen hergestellt werden sollen, werden bereitgestellt. In einigen Ausführungsformen können die mobilen Client-Vorrichtungen begrenzte Netzwerkfähigkeiten aufweisen, wie beispielsweise intelligente Uhren (Smartwatches) oder Ähnliches, während die Proxy-Vorrichtungen Zugang zu einem Weitverkehrsnetzwerk (Wide Area Network) (z. B. dem Internet) haben können.

Gemäß einigen Ausführungsformen kann eine Client-Vorrichtung in der Lage sein, Internetzugang über ein Verbinden mit einer Host-Vorrichtung mit Internetzugang zu erreichen. Die Client-Vorrichtung kann die Geschwindigkeit und den Kurs der Client-Vorrichtung als Reaktion auf einen Empfang eines Auslösesignals identifizieren, das angibt, dass ein Versuch unternommen werden soll, eine Verbindung mit der Host-Vorrichtung herzustellen. Die Client-Vorrichtung kann zudem eine Ankündigungsnachricht zum Anfordern einer Verbindung mit der Host-Vorrichtung erzeugen. Die Ankündigungsnachricht kann die Geschwindigkeit und den Kurs der Client-Vorrichtung einschließen und kann der Host-Vorrichtung mit einer Anforderung einer drahtlosen Verbindung mit der Host-Vorrichtung bereitgestellt werden. Die Ankündigungsnachricht kann die auszutauschenden Nutzdaten einschließen. Die Ankündigungsnachricht kann auch eine Angabe einer Prioritätsstufe der Ankündigungsnachricht einschließen. Die Client-Vorrichtung kann eine Verbindungsanforderung von der Host-Vorrichtung empfangen, die eine Eignungsmaßzahl einschließt, die eine Qualitätsstufe der Host-Vorrichtung zum Zugreifen auf das Netzwerk angibt.

Gemäß weiteren Ausführungsformen kann die Client-Vorrichtung von der Host-Vorrichtung eine Verbindungsanforderung, welche die Geschwindigkeit und den Kurs der Host-Vorrichtung angibt, und eine der Host-Vorrichtung zugeordnete Eignungsmaßzahl empfangen. Auf Grundlage der Geschwindigkeit, des Kurses und der Eignungsmaßzahl ermittelt die Client-Vorrichtung, ob die von der Host-Vorrichtung kommende Verbindungsanforderung akzeptiert werden soll. Die Client-Vorrichtung kann beim Ermitteln, ob eine Verbindung mit der Host-Vorrichtung hergestellt werden soll, auch zusätzliche Faktoren, wie beispielsweise eine Wichtigkeit von zu übermittelnden Daten oder eine Menge an Zeit seit der letzten Verbindung, berücksichtigen. Die Client-Vorrichtung kann die Verbindungsanforderung mindestens als Reaktion auf eine der Host-Vorrichtung durch die Client-Vorrichtung bereitgestellte Ankündigungsnachricht empfangen. Die Ankündigungsnachricht kann Nutzdaten einschließen und/oder eine Prioritätsstufe der Ankündigungsnachricht angeben. Die Client-Vorrichtung kann eine einzige Ankündigungsnachricht bereitstellen und kann als Reaktion unterschiedliche Verbindungsanforderungen von unterschiedlichen Host-Vorrichtungen empfangen.

Gemäß noch weiteren Ausführungsformen kann die Host-Vorrichtung von der Client-Vorrichtung eine Ankündigungsnachricht empfangen, die eine Anforderung einschließt, mit dem Weitverkehrsnetzwerk Daten auszutauschen. Die Host-Vorrichtung kann dann eine Eignungsmaßzahl auf Grundlage einer Fähigkeit der Host-Vorrichtung ermitteln, die Daten zwischen der Client-Vorrichtung und dem Weitverkehrsnetzwerk zu übenmitteln. Die Eignungsmaßzahl kann die Kommunikationsfähigkeit der Host-Vorrichtung zur Zeit des Empfangs der Ankündigungsnachricht messen. Die Eignungsmaßzahl kann auf Grundlage von vorübergehenden Eigenschaften der Client-Vorrichtung und/oder Verbindungseigenschaften der Host-Vorrichtung ermittelt werden. Die Host-Vorrichtung kann die Eignungsmaßzahl mit einem Schwellenwert vergleichen, um zu ermitteln, ob der Client-Vorrichtung eine Verbindungsanforderung angeboten werden soll. Die Verbindungsanforderung kann der Client-Vorrichtung bereitgestellt werden, wenn die Eignungsmaßzahl den Schwellenwert überschreitet, oder nicht bereitgestellt werden, wenn die Eignungsmaßzahl den Schwellenwert nicht überschreitet. Die Eignungsmaßzahl kann auch durch Gewichten der vorübergehenden Eigenschaften, der Verbindungseigenschaften und/oder anderer Faktoren ermittelt werden, die der potenziellen Verbindung zwischen der Client-Vorrichtung und dem Weitverkehrsnetzwerk zugeordnet sind. Die Verbindungsanforderung kann auch die Geschwindigkeit und Richtung der Host-Vorrichtung und/oder die Eignungsmaßzahl einschließen. Wenn die Client-Vorrichtung die Verbindungsanforderung akzeptiert, kann die Host-Vorrichtung eine Verbindung mit der Client-Vorrichtung herstellen, was es der Client-Vorrichtung ermöglicht, auf das Weitverkehrsnetzwerk zuzugreifen.

Weitere Ausführungsformen sind auf Systeme, tragbare Verbrauchervorrichtungen und computerlesbare Medien gerichtet, die hierin beschriebenen Verfahren zugeordnet sind.

Ein besseres Verständnis der Natur und Vorteile von Ausführungsformen der vorliegenden Offenbarung kann unter Bezugnahme auf die folgende, detaillierte Beschreibung und die begleitenden Zeichnungen gewonnen werden.

KURZE BESCHREIBUNG DER ZEICHNUNGEN

1 ist ein Beispielblockdiagramm eines Systems, das eine Kommunikation zwischen einer Primärdatenquelle, einer Host-Vorrichtung und Client-Vorrichtungen zeigt.

2 ist ein Beispielblockdiagramm, das Host-Vorrichtungen und Client-Vorrichtungen an verschiedenen Standorten veranschaulicht.

3 ist ein Beispielblockdiagramm, das zusätzliche Ausführungsformen der Kommunikation zwischen einer Host-Vorrichtung und einer Client-Vorrichtung zeigt.

4 ist ein Ablaufplan eines Beispielverfahrens eines Verwenden einer Client-Vorrichtung, um Geschwindigkeits- und Richtungsinformationen innerhalb einer Ankündigungsnachricht bereitzustellen, die eine Verbindung mit einem Netzwerk anfordert.

5 ist ein Beispielblockdiagramm, das eine Client-Vorrichtung und eine Proxy-Vorrichtung zeigt.

6 ist ein Ablaufplan eines Beispielverfahrens eines Verwendens einer Eignungsmaßzahl, um zu ermitteln, ob einer Client-Vorrichtung eine Proxy-Verbindung angeboten werden soll.

7 ist ein Ablaufplan eines Beispielverfahrens eines Verwendens einer Eignungsmaßzahl von einer Proxy-Vorrichtung, um zu ermitteln, ob ein Proxy-Angebot, durch die Proxy-Vorrichtung eine Verbindung mit einem Netzwerk herzustellen, akzeptiert werden soll.

8 ist ein Beispielblockdiagramm, das zusätzliche Merkmale einer Client-Vorrichtung zeigt.

9 ist ein Beispielblockdiagramm, das zusätzliche Merkmale einer Proxy-Vorrichtung zeigt.

10 ist ein Beispielblockdiagramm, das zusätzliche Ausführungsformen einer Client-Vorrichtung und einer Proxy-Vorrichtung zeigt.

11 ist ein Beispielblockdiagramm, das eine Vorrichtung zeigt, bei der es sich um eine Host-Vorrichtung, eine Client-Vorrichtung oder einen Server handeln kann.

DETAILLIERTE BESCHREIBUNG

Hierin beschriebene Ausführungsformen betreffen die Verwendung von einer oder mehreren Host-Vorrichtungen (z. B. Smartphones), um elektronischen Vorrichtungen, wie beispielsweise intelligenten Uhren und Musikwiedergabeeinheiten mit begrenzter oder keiner Konfigurations-WAN-Konnektivität, einen Dienst eines Weitverkehrsnetzwerks (Wide Area Network (WAN)) bereitzustellen. Die elektronischen Vorrichtungen und/oder die Host-Vorrichtungen können sich während eines Konnektivitätsprozesses bewegen. Der Konnektivitätsprozess kann Ermittlungen einschließen, ob mit einer Verbindung fortgefahren werden soll, wie mit einer Verbindung fortgefahren werden soll und mit welchen Vorrichtungen eine Verbindung hergestellt werden soll. Solche Ermittlungen können den Energieverbrauch verringern, eine Frustration auf Seiten eines Benutzers verringern und zuverlässigere Verbindungen bereitstellen.

Bestimmte Typen von elektronischen Vorrichtungen besitzen oftmals keinen Mobilfunk-Datendienst oder anderen WAN-Dienst, der wirksam oder übergangslos arbeitet, wenn sich ein Benutzer von Ort zu Ort bewegt. In vielen Fällen beruht dies auf Größen- oder Leistungseinschränkungen bei solchen Vorrichtungen. Die Antennen für solche Dienste sind größer als die Antennen für Verbindungen eines lokalen Netzwerks (Local Area Network (LAN)) oder für Nahfeldverbindungen, die durch WiFi, BluetoothTM (BT) oder andere solche Kommunikationssysteme mit kurzer Reichweite bereitgestellt werden. Die zusätzlichen Kosten und die zusätzliche Größe von WAN-Netzwerk-Chipsätzen und WAN-Dienstanbietern kann auch vor dem Einbau dieser Funktionen in einige elektronische Vorrichtungen zurückschrecken lassen. Anstatt solche Funktionalität in bestimmte Typen von elektronischen Vorrichtungen, z. B. kleine Vorrichtungen, zu integrieren, können Ausführungsformen eine LAN-Funktionalität einer konnektivitätsbegrenzten elektronischen Vorrichtung verwenden, um eine Kommunikation mit einer Host-Vorrichtung mit WAN-Zugang zu ermöglichen. Einige Ausführungsformen können eine solche Kommunikation sogar ermöglichen, während sich die Vorrichtungen bewegen.

Host-Vorrichtungen, die WAN-Funktionalität einschließen, und Client-Vorrichtungen, die LAN-Funktionalität einschließen, können beide konfiguriert sein, ihre eigene Geschwindigkeit und Bewegungsrichtung zu identifizieren (falls vorhanden). Zusätzlich kann eine Host-Vorrichtung konfiguriert sein, eine Eignungsmaßzahl auf Grundlage einer Fähigkeit der Host-Vorrichtung zu ermitteln, Daten zwischen der Client-Vorrichtung und einem WAN zu übermitteln. Die Eignungsmaßzahl kann die Kommunikationsfähigkeit der Host-Vorrichtung zur Zeit eines Empfangs einer Ankündigungsnachricht von der Client-Vorrichtung messen. Die Eignungsmaßzahl kann auf Grundlage von vorübergehenden Eigenschaften (z. B. können Eigenschaften nicht über eine Schwellenwertzeitmenge andauern, wobei der Schwellenwert relativ kurz ist) der Client-Vorrichtung und/oder Verbindungseigenschaften der Host-Vorrichtung ermittelt werden, während es sich bei der Ankündigungsnachricht um eine Anforderung einer WAN-Verbindung handeln kann, welche die Geschwindigkeit und Richtung der Client-Vorrichtung einschließt. LAN-Verbindungen zwischen den Client- und Host-Vorrichtungen können auf Grundlage der Eignungsmaßzahl und/oder der Geschwindigkeit und Richtung der potenziell eine Verbindung herstellenden Vorrichtungen hergestellt werden.

Wie hierin beschrieben, beziehen sich eine Client-Vorrichtung und ein Datenkonsument jeweils auf Vorrichtungen, die den Nutzen von durch eine Host-Vorrichtung geteilten Daten empfangen und unter Umständen nur LAN-Zugang besitzen können. Beispiele solcher Vorrichtungen schließen intelligente Uhren, Musikwiedergabeeinheiten, wie beispielsweise iPodTM-Vorrichtungen, Nur-LAN-Zustandswächter (Health Monitors) und andere solche Vorrichtungen mit LAN-Funktionalität, ein.

Eine Host-Vorrichtung, eine Proxy-Vorrichtung oder ein Datenanbieter können sich alle auf eine beliebige Vorrichtung mit sowohl WAN- als auch LAN-Funktionalität beziehen, die konfiguriert sein kann, einer Client-Vorrichtung, die nicht mit einem Benutzer der Host-Vorrichtung in Verbindung steht, Netzwerkzugang bereitzustellen. Smartphones stellen ein Beispiel solch einer Host-Vorrichtung dar. Mobile Zugangspunkte (Access Points (AP)) mit WAN- und LAN-Funktionalität, Laptop-Computer oder andere solche Vorrichtungen können auch als Host-Vorrichtungen fungieren.

I. Vorrichtungen zum Verwenden eines Proxys

In einigen Beispielen kann ein Benutzer mindestens zwei elektronische Vorrichtungen nutzen. Bei einer der zwei elektronischen Vorrichtungen kann es sich um eine Client-Vorrichtung handeln, während es sich bei der anderen um eine Host-Vorrichtung handeln kann, wie vorstehend definiert. Zum Beispiel kann der Benutzer eine am Körper tragbare Vorrichtung und ein Smartphone oder eine andere WAN-zugängliche Vorrichtung nutzen. Während das Smartphone des Benutzers regelmäßig als die Host-Vorrichtung für die Client-Vorrichtung agieren kann, um auf WAN-Inhalt zuzugreifen, kann es Fälle geben, in denen der Benutzer nur mit der Client-Vorrichtung interagiert und/oder sich außer Reichweite der Host-Vorrichtung befindet. In solchen Fällen kann die Client-Vorrichtung versuchen, über eine oder mehrere andere Host-Vorrichtungen, z. B. von anderen Benutzern, auf WAN-Inhalt zuzugreifen. Ein solches Beispiel kann den Fall einschließen, während der Benutzer trainiert. In diesem Fall kann es der Benutzer vorziehen, aufgrund ihrer kleineren Größe mit der am Körper tragbaren Vorrichtung zu interagieren, und er kann sich dafür entscheiden, die Host-Vorrichtung zurückzulassen. Wenn deshalb die Client-Vorrichtung durch eine andere Host-Vorrichtung auf WAN-Inhalt zugreifen kann, muss sie sich unter Umständen nicht auf die Host-Vorrichtung des Benutzers stützen. Weitere Beispiele können Fälle einschließen, in denen sich die Leistung der Batterie/des Akkus der Host-Vorrichtung des Benutzers verschlechtert oder mindestens auf ein Niveau verringert hat, auf dem ein Zugang zum WAN über die Host-Vorrichtung des Benutzers nicht mehr machbar sein kann.

A. Systeme

1 veranschaulicht ein System, das eine Proxy-Netzwerkverbindungs-Verwaltung implementieren kann, um sich bewegenden Client-Vorrichtungen ohne WAN-Funktionalität Netzwerkzugang bereitzustellen. 1 schließt eine Primärdatenquelle 110, zwei Host-Vorrichtungen 120 und drei Client-Vorrichtungen 130 ein. Bei der Primärdatenquelle 110 kann es sich um jede Datenquelle handeln, die mit einem WAN, wie beispielsweise dem Internet, verbunden ist. Solche Primärdatenquellen können Mobilfunkmasten, Satelliten, Stratosphärenballons mit Netzwerkfunktionalität und andere solche Netzwerkinfrastruktur einschließen. Die Primärdatenquelle 110 kommuniziert über eine WAN-Verbindung, wie beispielsweise drahtlose „Long-Term Evolution”(LTE)-Mobilfunkkommunikation, direkt mit jeder Host-Vorrichtung 120.

Wenn eine Host-Vorrichtung 120 konfiguriert ist, Netzwerkressourcen mit Client-Vorrichtungen 130 zu teilen, kommunizieren die Host-Vorrichtung 120 und die Client-Vorrichtung 130 über eine drahtlose LAN-Verbindung (WLAN-Verbindung), wie beispielsweise WiFi oder BT. Die WLAN-Verbindung kann in unterschiedlichen Ausführungsformen entweder durch die Host-Vorrichtung 120 oder die Client-Vorrichtung 130 initiiert werden. In bestimmten Ausführungsformen kann eine Client-Vorrichtung 130 eine Host-Vorrichtung 120 (auch eine „Proxy-Vorrichtung” genannt) auf Grundlage von einem oder mehreren der Host-Vorrichtung 120 zugeordneten vorübergehenden Faktoren (einschließlich einer Eignungsmaßzahl) auswählen. Eine geeignete Host-Vorrichtung kann zum Beispiel ausgewählt werden, wenn die Relativbewegung (z. B. Geschwindigkeit und/oder Richtung) zwischen einer Client-Vorrichtung 130 und der verfügbaren Host-Vorrichtung 120 ähnlich ist und/oder wenn die Eignungsmaßzahl über einem Schwellenwert liegt. Solch eine Auswahl oder Ermittlung einer geeigneten Host-Vorrichtung 120 kann durch die Client-Vorrichtung 130 (z. B. auf Grundlage einer Benutzereinstellung und/oder Logik einer durch die Client-Vorrichtung 130 ausgeführten Anwendung) verwaltet werden. In einigen Ausführungsformen kann die Auswahl auf der verfügbaren Bandbreite der Host-Vorrichtung 120 beruhen oder kann auf Grundlage beliebiger anderer Systemeinstellungen oder Elemente ermittelt werden.

B. Nähe von Vorrichtungen

2 ist ein Beispielblockdiagramm, das Host-Vorrichtungen und Client-Vorrichtungen an verschiedenen Standorten veranschaulicht. 2 zeigt gleichermaßen eine Primärdatenquelle 210 mit einer Anzahl von Host-Vorrichtungen 220 und Client-Vorrichtungen 230, wobei die horizontale Achse eine Entfernung vermittelt. Jede Host-Vorrichtung 220 ist mit Dienstbögen gezeigt, welche die wirksame Kommunikationsentfernung für WLAN-Kommunikation angeben. In vielen Umgebungen befinden sich die Vorrichtungen auf flachem Boden, sodass der Dienst effektiv in einem Kreis um die Host-Vorrichtung 220 angeboten wird, aber innerhalb eines Gebäudes oder in anderen Umgebungen können durch eine Host-Vorrichtung 220 Daten mit Client-Vorrichtungen 230 über oder unter einer teilenden Host-Vorrichtung 220 geteilt werden. Wie in 2 gezeigt, kann bei einer ausreichenden Anzahl und Dichte von geeigneten Host-Vorrichtungen 220 den Client-Vorrichtungen 230 ein regelmäßiger periodischer Dienst, ein nahezu kontinuierlicher oder sogar ein kontinuierlicher Dienst angeboten werden, selbst wenn sich die Client-Vorrichtungen 230 in die und aus der Reichweite von verbundenen Host-Vorrichtungen 220 hinein- oder herausbewegen. In einigen Fällen können sich die Client-Vorrichtungen 230 und die Host-Vorrichtungen 220 aufeinander zu- oder voneinander wegbewegen. In einigen Implementierungen sind solche Vorrichtungen unter Umständen keine gute Wahl für ein Herstellen von LAN-Verbindungen, insbesondere wenn ein geeigneterer Host verfügbar ist.

II. Kommunikation zwischen Vorrichtungen

Die vorstehend beschriebene Netzwerkverbindungsverwaltung kann erfolgen, ohne explizit eine andere Vorrichtung auf der Host-Vorrichtung einrichten zu müssen. Normalerweise muss explizit Tethering auf einer Benutzerschnittstelle erlaubt und eine bestimmte Vorrichtung festgelegt werden, um Netzwerkzugang zu erhalten. In einigen Beispielen kann ein Benutzer nur einige allgemeine Parameter festlegen und muss keinen Zugang für jede Vorrichtung einzeln erlauben. Da ein Agieren als eine Host-Vorrichtung eine Leerung der Batterie/des Akkus auf der Proxy-Vorrichtung verursachen kann und unter Umständen Daten aus einem Mobilfunk-Datenkontingent eines Benutzers der Proxy-Vorrichtung (der sich vom Benutzer der Client-Vorrichtung unterscheiden kann) verwendet, kann jede Proxy-Vorrichtung entscheiden, ob sie freiwillig als Host dienen möchte. Zusätzlich kann jede Client-Vorrichtung entscheiden, ob sie die Proxy-Verbindung akzeptieren möchte, sobald sich ein potenzieller Host freiwillig anbietet. Dieser Abschnitt beschreibt eine vorrichtungsübergreifende Kommunikation und Eignungsmaßzahlen, die verwendet werden können, um die Netzwerkverbindungsverwaltung (d. h. diese Entscheidungen) gemäß hierin beschriebenen Ausführungsformen zu ermöglichen.

3 ist ein Blockdiagramm eines Systems 300 gemäß verschiedenen Ausführungsformen. 3 und weitere Figuren sind lediglich veranschaulichend für eine Ausführungsform oder Implementierung oder von Aspekten einer Ausführungsform oder Implementierung, die hierin offenbart sind, und sollen den Umfang jeder Offenbarung gemäß den Ansprüchen nicht einschränken. Der Fachmann kann durch diese Offenbarung und die darin vorgelegten Lehren weitere Variationen, Modifikationen und/oder Alternativen zu diesen in den Figuren veranschaulichten Ausführungsformen oder Implementierungen erkennen. 3 ist ein Beispiel eines Systems, das eine Host-Vorrichtung verwenden kann, um Client-Vorrichtungen Daten bereitzustellen. Die Vorrichtungen im System 300 können Hardware- und/oder Software-Elemente einschließen.

A. Verbindungsankündigungen

3 veranschaulicht ein Signalisieren zwischen einer Client-Vorrichtung 302, einer Proxy-Vorrichtung 304 und einem Cloud-Dienst 303, mit dem die Proxy-Vorrichtung 304 eine Verbindung herstellen kann. Die Client-Vorrichtung 302 kann sich zum Zeitpunkt, zu dem die Client-Vorrichtung 302 eine Netzwerkverbindung anfordert (z. B. während sie an einem Benutzer getragen wird, der trainiert oder sich anderweitig bewegt), in Bewegung befinden. Insofern kann die Client-Vorrichtung 302 regelmäßig (z. B. periodisch oder Ähnliches) Verbindungsanforderungen aussenden, da jede aktuelle Verbindung unter Umständen nur temporär ist, während sich die Client-Vorrichtung 302 in Reichweite einer Host-Vorrichtung befindet, zu der eine Verbindung aufgebaut wird. Besonders da sich auch Host-Vorrichtungen in Bewegung befinden können, können Verbindungen mit Host-Vorrichtungen für eine Client-Vorrichtung kurz sein.

Unter einem Aspekt kann die Client-Vorrichtung 302 solch eine WAN-Verbindung von einer oder mehreren Proxy-Vorrichtungen 304 anfordern, indem eine Verbindungsankündigung 306 bereitgestellt wird. Allgemein können die Verbindungsankündigungen 306 jeder Typ von Anforderung einer Verbindung sein und sind unter Umständen nicht an bestimmte Proxy-Vorrichtungen 304 gerichtet. Die Verbindungsankündigung 306 kann einen Typ einer angeforderten Verbindung, eine Kennung der Client-Vorrichtung 302 (z. B. eine Vorrichtungsidentifikation (ID) oder Ähnliches), Nutzdaten, eine Prioritätsstufe der Anforderung, die Geschwindigkeit der Client-Vorrichtung 302 und/oder die Richtung (auch „Kurs” genannt) der Client-Vorrichtung 302 einschließen. Der Typ der angeforderten Verbindung kann angeben, ob die Client-Vorrichtung 302 durch das WAN auf einen Server hochzuladende Daten besitzt oder ob die Client-Vorrichtung 302 überprüft, ob Daten durch das WAN von einem Server herunterzuladen sind. Wenn die Client-Vorrichtung 302 hochzuladende Daten besitzt, können die Nutzdaten in einigen Fällen diese Daten einschließen.

Die Verbindungsankündigungen 306 können durch ein auslösendes Ereignis (z. B. ein durch die Client-Vorrichtung 302 erzeugtes internes auslösendes Ereignis), wie beispielsweise ein periodisches oder kontextabhängiges Signal, veranlasst werden, das angibt, dass die Client-Vorrichtung 302 eine Verbindung mit dem Internet oder einem anderen WAN herstellen kann, oder es kann durch eine Angabe signalisiert werden, dass eine vorherige Verbindung mit einer Host-Vorrichtung z. B. aufgrund einer räumlichen Trennung beendet wurde. Zum Beispiel kann die Client-Vorrichtung 302 konfiguriert sein, periodisch (z. B. jede Minute, jede Stunde usw.) eine WAN-Verbindung anzufordern, um zu prüfen, ob Daten heruntergeladen werden sollen, oder Daten hochzuladen, die durch die Client-Vorrichtung 302 (z. B. durch Sensoren) gesammelt oder (z. B. von dem Benutzer kommend) empfangen wurden. Zusätzlich kann das auslösende Ereignis eintreten, wenn der Benutzer Daten aus dem Internet anfordert oder über die Client-Vorrichtung 302 zu sichernde Daten bereitstellt. Wie festgehalten, kann das auslösende Ereignis eintreten, wenn die Client-Vorrichtung 302 feststellt, dass sie nicht länger mit einer zuvor verbundenen Proxy-Vorrichtung 304 verbunden ist.

B. Proxy-Angebote

Wie festgehalten, können in einigen Ausführungsformen die Proxy-Vorrichtungen 304 ermitteln, ob sie als Hosts für anfordernde Client-Vorrichtungen 302 agieren sollen. Wenn insofern eine Proxy-Vorrichtung 304 eine Verbindungsankündigung 306 von einer Client-Vorrichtung 302 empfängt, kann die Proxy-Vorrichtung 304 solch eine Ermittlung für die bestimmte anfordernde Client-Vorrichtung 302 und/oder für diesen bestimmten Zeitpunkt vornehmen. Zum Beispiel kann eine Proxy-Vorrichtung z. B. auf Grundlage verschiedener Faktoren wählen, zu einem bestimmten Zeitpunkt ein Host für eine Client-Vorrichtung 302 zu sein, aber nicht wählen, zu einem späteren Zeitpunkt ein Host für dieselbe Client-Vorrichtung 302 zu sein. Insofern kann die Proxy-Vorrichtung 304 eine Eignungsmaßzahl berechnen, wie vorstehend festgehalten. Auf Grundlage dieser Eignungsmaßzahl kann die Proxy-Vorrichtung 304 ermitteln, ob sie der Client-Vorrichtung 302, welche die Verbindungsankündigung bereitgestellt hat, eine Proxy-Verbindung (z. B. um als Host zu agieren) anbieten soll. Die Proxy-Vorrichtung 304 kann mit einem Schwellenwert konfiguriert sein, der auf Grundlage verschiedener Faktoren (oder durch einen Benutzer konfiguriert) variieren kann. Wenn die Eignungsmaßzahl über dem Schwellenwert liegt, kann die Proxy-Vorrichtung 304 der Client-Vorrichtung 302 ein Proxy-Angebot 308 bereitstellen. Das Proxy-Angebot 308 kann die Eignungsmaßzahl einschließen.

Mindestens als Reaktion auf das Bereitstellen einer Verbindungsankündigung 306 kann eine Client-Vorrichtung 302 ein oder mehrere Proxy-Angebote 308 von einer oder mehreren Proxy-Vorrichtungen 304 empfangen. Wie festgehalten, kann das Proxy-Angebot 308 die durch die entsprechende Proxy-Vorrichtung 304 berechnete Eignungsmaßzahl einschließen. Die Client-Vorrichtung 302 kann dann in der Lage sein, z. B. auf Grundlage der in dem Proxy-Angebot enthaltenen Eignungsmaßzahl zu ermitteln, ob sie das Proxy-Angebot 308 akzeptieren soll, und über die Proxy-Vorrichtung 304 eine Verbindung mit dem WAN herstellen. Proxy-Angebote 308 können mehreren Client-Vorrichtungen 302 zur selben Zeit oder mindestens innerhalb derselben Zeitperiode bereitgestellt werden. Proxy-Angebote 308 können nach einer bestimmten Menge an Zeit ablaufen, und diese Zeitmenge kann zusammen mit einer Übermittlungszeit in dem Proxy-Angebot 308 eingeschlossen sein.

Dann kann über das LAN eine Datenübertragung 310 zwischen der Client-Vorrichtung 302 und der Proxy-Vorrichtung 304 stattfinden, sobald das Proxy-Angebot 308 durch die Client-Vorrichtung akzeptiert wird. Zum Beispiel können zum Cloud-Dienst 303 oder zu einem anderen WAN-Ort hochzuladende Daten der Client-Vorrichtung 302 über die Proxy-Vorrichtung 304 zuerst von der Client-Vorrichtung 302 zur Proxy-Vorrichtung 304 transferiert 310 werden. Die Proxy-Vorrichtung 304 kann dann diese Daten über die Mobilfunk-/WiFi-Verbindung zum WAN, z. B. zum Cloud-Dienst 303, übertragen 312. Ferner können durch die Client-Vorrichtung 302 herunterzuladende Daten zuerst vom WAN, z. B. vom Cloud-Dienst 303, zur Proxy-Vorrichtung 304 übertragen 312 werden und dann unter Verwendung der LAN-Verbindung zur Client-Vorrichtung übertragen 310 werden.

III. Verwenden von Geschwindigkeit und Richtung

Die Client-Vorrichtungen und die Proxy-Vorrichtungen können sich in Bewegung befinden, und die zwei Vorrichtungen bewegen sich unter Umständen nicht mit gleichen Geschwindigkeiten oder in gleiche Richtungen. Insofern handelt es sich bei einer als Host für eine Client-Vorrichtung 302 agierenden Proxy-Vorrichtung 304 unter Umständen um keinen geeigneten Host-Kandidaten, sobald die zwei Vorrichtungen außerhalb ihrer jeweiligen LAN-Reichweiten sind (z. B. auf Grundlage des Typs verwendeter LAN-Komponenten, der auf den Vorrichtungen verfügbaren Technologien und/oder der verbleibenden Batterie-/Akku-Leistung der Vorrichtungen). Wenn sich zum Beispiel der Benutzer einer Client-Vorrichtung 302 in einem Bus oder anderen öffentlichen Nahverkehrsmittel befindet und über eine Proxy-Vorrichtung 304 eines anderen Benutzers auch im selben Bus mit einem WAN verbunden ist, können sich die zwei Vorrichtungen gemeinsam bewegen. Insofern können sie sich eine gemeinsame Geschwindigkeit und/oder Richtung teilen, da die zwei Benutzer in dem sich bewegenden Fahrzeug sitzen. Solange in dieser Situation die Proxy-Vorrichtung 304 eine WAN-Verbindung besitzt (z. B. eine Mobilfunk-Datenverbindung oder Ähnliches) und die zwei Benutzer im Fahrzeug bleiben, kann die Proxy-Vorrichtung 304 wirksam als Host für die WAN-Verbindung mit der Client-Vorrichtung 302 agieren. Wenn jedoch einer der Benutzer den Bus verlässt, können sich die Geschwindigkeit und die Richtung der Vorrichtungen in solch einer Weise ändern, dass die Proxy-Vorrichtung 304 unter Umständen nicht länger ein geeigneter Host ist (z. B. können sich die zwei Vorrichtungen nach einigen wenigen Meter oder so nicht mehr in Reichweite befinden).

In einigen Ausführungsformen kann die durch eine Client-Vorrichtung, die eine Verbindung anfordert, gesendete Verbindungsankündigung 306 die Geschwindigkeit und den Kurs der Client-Vorrichtung 302 einschließen. Die Geschwindigkeits- und Kursinformationen können durch lokale Sensoren, die in die Client-Vorrichtung 302 und/oder die Proxy-Vorrichtung 304 integriert oder anderweitig damit verbunden sind, erfasst oder anderweitig identifiziert werden. Zum Beispiel kann es sich bei der Client-Vorrichtung 302 um eine intelligente Uhr mit einem Beschleunigungsmesser oder einem anderen Bewegungserfassungssensor handeln, der innerhalb der Client-Vorrichtung 302 integriert ist. Die Client-Vorrichtung 302 kann zudem mit einem eingebauten Bewegungsprozessor oder Coprozessor konfiguriert sein, der die Geschwindigkeit und den Kurs der Client-Vorrichtung 302 erfassen kann. Die Geschwindigkeit kann in jeder geeigneten Maßzahl gemessen werden (z. B. Fuß pro Sekunde, Meter pro Sekunde usw.). Der Kurs kann angeben, dass sich die Client-Vorrichtung 302 (oder ein die Client-Vorrichtung 302 am Körper tragender Benutzer) in einer von vielen relativen Gradzahlen eines Standardkompasses bewegt (z. B. Nord, Ost usw.). Andere Bezugssystemkoordinaten können verwendet werden, um die Richtung (den Kurs) anzugeben. Ferner kann eine Kenntnis der Geschwindigkeit und Richtung der Client-Vorrichtung 302 eine Berechnung des Geschwindigkeitsvektors der Client-Vorrichtung 302 ermöglichen.

In einigen Ausführungsformen kann die Client-Vorrichtung 302 vor einem Senden der Verbindungsankündigung 306 ihre eigene Geschwindigkeit gegenüber einem Schwellenwert überprüfen und kann wählen, die Verbindungsankündigung 306 nicht zu senden, wenn die Geschwindigkeit der Client-Vorrichtung 302 größer als der Schwellenwert ist (z. B. wenn sich die Client-Vorrichtung 302 zu schnell bewegt, um zu versuchen, eine Verbindung mit einer Proxy-Vorrichtung 304 herzustellen). In dem vorstehend bereitgestellten Busbeispiel kann dies jedoch dazu führen, dass keine Verbindung mit einer Proxy-Vorrichtung 304 hergestellt wird, die andernfalls geeignet gewesen wäre. Ferner kann die Prioritätsstufe der Anforderung angeben, wie wichtig es für die Client-Vorrichtung 302 ist, eine Verbindung mit dem Internet herzustellen (z. B. wie lange sie auf eine Verbindung gewartet hat, usw.). In einigen Fällen können es die in der Verbindungsankündigung 306 bereitgestellten Geschwindigkeits- und Kursinformationen den empfangenden Proxy-Vorrichtungen 304 erlauben, zu entscheiden, ob sie anbieten sollen, für die Client-Vorrichtung 302, welche die Verbindungsankündigung 306 bereitgestellt hat, ein Host zu sein. Zum Beispiel kann eine Proxy-Vorrichtung 304 in der Lage sein, auf Grundlage ihrer eigenen Geschwindigkeit und ihres eigenen Kurses, auf Grundlage einer Eignungsmaßzahl und/oder auf Grundlage anderer Faktoren zu ermitteln, ob die Proxy-Vorrichtung 304 einen guten Host einer WAN-Verbindung für die Client-Vorrichtung 302 darstellen würde, auf den zugegriffen werden kann.

A. Client-Vorrichtung

4 ist ein Ablaufplan eines Beispielverfahrens eines Verwendens einer Client-Vorrichtung, um Geschwindigkeits- und Richtungsinformationen innerhalb einer Ankündigungsnachricht bereitzustellen, die eine Verbindung mit einem Netzwerk anfordert. Das Verfahren 400 von 4 kann z. B. durch die Client-Vorrichtung 302 von 3 implementiert werden, indem darauf gespeicherte computerlesbare Anweisungen oder Ähnliches ausgeführt werden. Die Client-Vorrichtung 302 kann mit einer drahtlosen Schnittstelle, einem Speicher, einem Bewegungserfassungssensor und einem mit dem Speicher, dem Bewegungssensor und/oder der drahtlosen Schnittstelle gekoppelten Prozessor konfiguriert sein.

In 402 kann eine Client-Vorrichtung ein Auslösesignal empfangen, das angibt, dass gerade ein Versuch unternommen wird, Daten mit einem Netzwerk auszutauschen. In anderen Worten kann die Client-Vorrichtung den Bedarf ermitteln, Daten mit einem Netzwerk (z. B. einem WAN, wie beispielsweise dem Internet, oder Ähnlichen) auszutauschen. Als verschiedene Beispiele kann das Auslösesignal auf einer periodischen Überprüfung auf Inhalt vom WAN, einer periodischen Überprüfung auf das Hochladen von Daten durch das WAN, einer Auswahl (z. B. durch den Benutzer) von hochzuladenden oder herunterzuladenden Daten, dem Eintreten eines Ereignisses (z. B. Datenerfassung) beim Client oder Ähnlichem beruhen. Zum Beispiel kann der Benutzer gerade versuchen, eine Nachricht von der Client-Vorrichtung zu senden, oder er kann gerade versuchen, Informationen vom Internet herunterzuladen.

In 404 kann die Client-Vorrichtung eine der Client-Vorrichtung zugeordnete Geschwindigkeit und Bewegungsrichtung identifizieren. Die Geschwindigkeit und Bewegungsrichtung können als Reaktion auf einen Empfang oder eine Identifikation des Auslösesignals identifiziert werden, oder sie können routinemäßig (z. B. periodisch) während einer Bewegung identifiziert werden. Zum Beispiel kann, wie festgehalten, die Client-Vorrichtung mit einer oder mehreren Bewegungserfassungsvorrichtungen und/oder Standortverfolgungsvorrichtungen (z. B. einer Vorrichtung des „Global Positioning System” (GPS) oder Ähnlichem) ausgerüstet sein, und sie kann in der Lage sein, ihre eigene Geschwindigkeit und Bewegungsrichtung zu identifizieren. Die Sensordaten können abgerufen oder anderweitig identifiziert werden, wann immer sich die Client-Vorrichtung in Bewegung befindet, z. B. in Vorwegnahme eines Wünschens der Sensordaten. Zusätzlich oder alternativ dazu können die Sensordaten auch als Reaktion auf den Auslöser abgerufen werden.

In 406 kann die Client-Vorrichtung konfiguriert sein, eine Ankündigungsnachricht zum Verbinden mit einem Host, wie beispielsweise der Proxy-Vorrichtung 304 von 3, zu erzeugen, sobald die Geschwindigkeit und Richtung identifiziert sind. Die Ankündigungsnachricht kann die Geschwindigkeit und Richtung der Client-Vorrichtung einschließen. Die Ankündigungsnachricht kann auch eine Anforderung einschließen, dass die Daten mit dem Netzwerk (z. B. dem WAN) ausgetauscht werden.

In 408 kann die Client-Vorrichtung einer Host-Vorrichtung die Ankündigungsnachricht (z. B. über die drahtlose Schnittstelle) zum Anfordern einer drahtlosen Verbindung mit der Host-Vorrichtung 304 übermitteln. Die Ankündigungsnachricht kann in das WAN hochzuladende Nutzdaten einschließen. In verschiedenen Beispielen kann die Ankündigungsnachricht eine Anforderung einschließen, dass Daten auf die Client-Vorrichtung heruntergeladen werden, und kann in einigen Fällen auch einen Ort, an dem sich die Daten befinden können (z. B. einen „Ressource Locator”, eine Adresse oder Ähnliches), und/oder eine Kennung der Daten einschließen.

In einigen Ausführungsformen kann die Client-Vorrichtung einem ersten Benutzer zugeordnet sein, und die Host-Vorrichtung kann einem zweiten Benutzer zugeordnet sein. In einigen Fällen kann es sich bei dem ersten Benutzer und dem zweiten Benutzer um unterschiedliche Benutzer handeln. Ferner kann in einigen Beispielen die Client-Vorrichtung ermitteln, ob sich der erste Benutzer vom zweiten Benutzer unterscheidet (z. B. als Reaktion auf das Auslösesignal), und kann die Anforderung der drahtlosen Verbindung mit der Host-Vorrichtung aufheben, wenn sich der Benutzer nicht vom zweiten Benutzer unterscheidet. Mit anderen Worten muss die Client-Vorrichtung unter Umständen keinen der Schritte durchführen oder muss unter Umständen nicht alle den Schritten in 402, 404, 406 oder 408 zugeordneten Operationen durchführen, wenn es sich bei der potenziellen Host-Vorrichtung um die eigene Vorrichtung des Benutzers handelt (d. h. desselben Benutzers, welcher der Client-Vorrichtung zugeordnet ist), da die zwei Vorrichtungen konfiguriert sein können, automatisch miteinander zu kommunizieren (z. B. zum Bereitstellen von Internetzugang für die Client-Vorrichtung).

B. Proxy-Vorrichtung

Proxy-Vorrichtungen, wie beispielsweise die Proxy-Vorrichtung 304 von 3, können konfiguriert sein, WAN-Zugang (z. B. das Internet) für eine Client-Vorrichtung 302 zu hosten. Zum Beispiel kann eine Client-Vorrichtung 302 eine Verbindungsankündigung bereitstellen, die solch einen WAN-Zugang von der Proxy-Vorrichtung 304 anfordert. Die Proxy-Vorrichtung 304 kann es jedoch abhängig von mehreren Faktoren ablehnen, als ein Host zu agieren. Zusätzlich handelt es sich in einigen Ausführungsformen bei der Proxy-Vorrichtung 304 aus einem oder mehreren Gründen unter Umständen nicht um einen geeigneten Host für die Client-Vorrichtung 302. Insofern kann die Proxy-Vorrichtung 304 bei Empfang einer Verbindungsankündigung von einer Client-Vorrichtung 302 ermitteln, ob sie sich selbst als Host für die anfordernde Client-Vorrichtung 302 anbieten soll.

Wie festgehalten, kann die Ankündigung von der Client-Vorrichtung 302 die Geschwindigkeit und den Kurs der Client-Vorrichtung 302 einschließen. Gleichermaßen kann die Ankündigung auch Informationen einer Stärkeanzeige eines empfangenen Signals (RSSI) und oder eines Signal-Rausch-Verhältnisses (SNR) einschließen, die wirksam die Stärke der potenziellen Kommunikation zwischen der Client-Vorrichtung 302 und der Proxy-Vorrichtung 304 angeben (oder einen Stausteuerungsalgorithmus (CCA) verwenden, um diese zu erfassen). Mit anderen Worten kann es sich in diesem Kontext bei der RSSI und dem SNR um eine Angabe handeln, wie gut die Proxy-Vorrichtung 304 in der Lage sein wird, zu hosten. Wenn zum Beispiel die RSSI niedrig ist, wird die Fähigkeit der Proxy-Vorrichtung 304, die WAN-Verbindung für die Client-Vorrichtung 302 zu hosten, begrenzt sein, selbst wenn die WAN-Verbindung der Proxy-Vorrichtung 304 ausgezeichnet ist. Bei einigen Beispielen können Informationen einer Referenzsignal-Empfangsleistung (Reference Signal Receive Power (RSRP)) die RSSI ersetzen oder zusätzlich zur RSSI bereitgestellt werden.

Bei Empfang der Ankündigung von der Client-Vorrichtung 302 kann die Proxy-Vorrichtung 304 ermitteln, ob sie im Gegenzug ein Proxy-Angebot bereitstellen soll. Wie festgehalten, kann diese Ermittlung auf mehreren Faktoren beruhen, unter anderem auf der Geschwindigkeit und dem Kurs der Client-Vorrichtung 302 (z. B. in Bezug auf die Geschwindigkeit und den Kurs der Proxy-Vorrichtung 304), der RSSI, der Qualität und/oder Stärke der WAN-Verbindung der Proxy-Vorrichtung 304 sowie der Batterie/Akku- und/oder Datennutzungsbudgets der Proxy-Vorrichtung 304 oder einem einen Benutzer der Proxy-Vorrichtung 304 zugeordneten Konto. In einigen Ausführungsformen können bestimmte Faktoren stärker gewichtet werden als andere, und ein oder mehrere Faktoren können als einzige Ermittlungsfaktoren dienen, was im Wesentlichen jede weitere Analyse beendet. In einigen Ausführungsformen muss jeder Faktor separat erfüllt werden, um ein Proxy-Angebot bereitzustellen; in anderen Ausführungsformen müssen jedoch ein oder mehrere Faktoren nicht erfüllt werden. Zum Beispiel kann die Mobilfunkverbindung (oder WAN-Verbindung) der Proxy-Vorrichtung 304 dahingehend als ein allein abbrechender Ermittlungsfaktor agieren, dass im Falle dessen, dass diese Verbindung unter einem Schwellenwertniveau liegt, die Proxy-Vorrichtung 304 ohne Berücksichtigen weiterer Faktoren entscheiden kann, kein Proxy-Angebot bereitzustellen. Auf diese Weise kann ein allein abbrechender Ermittlungsfaktor alle anderen Berücksichtigungsfaktoren übertrumpfen oder auf andere Weise überwiegen. In anderen Beispielen kann jedoch jeder Faktor gleich gewichtet werden und beim Vornehmen der Ermittlung, ob ein Proxy-Angebot bereitgestellt werden soll, mitbetrachtet werden.

In einigen Ausführungsformen kann jeder Faktor sein eigenes Schwellenwertniveau besitzen, das erreicht werden kann, bevor die Proxy-Vorrichtung 304 ein Proxy-Angebot bereitstellt. Zum Beispiel kann es einen separaten Schwellenwert für eine RSSI geben, der zu erreichen ist, sowie einen separaten Schwellenwert für eine Mobilfunkverbindung, der zu erreichen ist. Wenn beide Schwellenwertniveaus nicht erreicht werden (z. B. die RSSI über dem Schwellenwert liegt, die Mobilfunkverbindung jedoch nicht), kann die Proxy-Vorrichtung 304 entscheiden, das Proxy-Angebot nicht zu senden. Wie vorstehend festgehalten, können einige Faktoren jedoch stärker gewichtet werden. Selbst wenn ein bestimmter Faktor unter seinem Schwellenwert liegt, kann auf diese Weise ein anderer Faktor, der stärker gewichtet ist, über seinem Schwellenwert liegen, und die Proxy-Vorrichtung 304 kann entscheiden, das Proxy-Angebot bereitzustellen.

Zusätzlich können in einigen Beispielen die Faktoren kombiniert werden, um eine Eignungsmaßzahl zu bilden, die der Client-Vorrichtung 302 (z. B. als Teil des Proxy-Angebots, wenn eines bereitgestellt wird) bereitgestellt werden kann. Ein einziger Schwellenwert kann verwendet werden, um zu ermitteln, ob ein Proxy-Angebot gesendet werden soll (z. B. können die Faktoren zu einem einzigen Wert (wie der Eignungsmaßzahl) kombiniert werden und können mit einem einzigen Schwellenwert verglichen werden). Schwellenwerte für die festgehaltenen Faktoren können, wie gewünscht, auf Branchenstandards beruhen, durch einen Administrator des Systems eingestellt werden und/oder durch einen Benutzer (z. B. den Benutzer der Client-Vorrichtung 302 oder den Benutzer der Proxy-Vorrichtung 304) konfiguriert werden. Ferner kann in einigen Beispielen jeder Faktor kategorisiert werden (z. B. gut, mittel, schlecht oder hoch/niedrig), und die Ermittlung, ob das Proxy-Angebot gesendet oder akzeptiert werden soll, kann darauf beruhen, dass einige der Faktoren in einer bestimmten Kategorie liegen, alle Faktoren in einer bestimmten Kategorie liegen oder eine Kombination von Ähnlichem.

C. Systemumgebung

5 veranschaulicht eine Client-Vorrichtung und eine Host-Vorrichtung, die in Verbindung mit den Systemen oder als Teil der Systeme 100 und 300 von 1 und 3 verwendet werden können, um die Verwaltung von Proxy-Verbindungen zu implementieren. Obwohl durch diese Figuren zwei Ausführungsformen veranschaulicht werden, können verschiedene Implementierungen jede Anzahl von Client-Vorrichtungen, Host-Vorrichtungen und unterschiedlichen Netzwerke einschließen, die durch die Vorrichtungen in einem bestimmten Aufbau unterstützt werden können.

Es sollte ersichtlich sein, dass die in 5 gezeigten Systeme eine bestimmte Ausführungsform veranschaulichen und dass andere ähnliche Ausführungsformen mehr oder weniger Komponenten als gezeigt besitzen können. Andere Ausführungsformen können zudem unterschiedliche Konfigurationen der veranschaulichten Komponenten einschließen, während sie innerhalb des Umfangs der vorliegenden Offenbarung bleiben.

5 veranschaulicht eine Ausführungsform mit einer Client-Vorrichtung 500, einer Proxy-Vorrichtung 550 und einem Netzwerk 590. Bei der Client-Vorrichtung 500 kann es sich um jede über eine drahtlose Schnittstelle zugängliche Vorrichtung handeln, einschließlich eines Desktop-Computers, eines Laptop-Computers, eines Smartphones, eines Tablet-Computers, einer am Körper tragbaren Vorrichtung (z. B. einer netzwerkfähigen Uhr, eines netzwerkfähigen Hörelements oder eines netzwerkfähigen Halsbandes), einer Netzwerkeinheit (z. B. eines netzwerkfähigen Kühlschrankes oder einer netzwerkfähigen Waschmaschine), einer Medienwiedergabeeinheit, eines persönlichen digitalen Assistenten, eines Schlüsselanhängers, einer Zugangskarte, einer Multifunktionsvorrichtung, eines Spielsystems oder einer beliebigen anderen solchen Client-Vorrichtung. Die Client-Vorrichtung 500 umfasst einen Speicher 504, einen Prozessor 502, eine Eingabevorrichtung 506, eine Anzeige 508 und eine drahtlose Schnittstelle 512. Die Client-Vorrichtung 500 kann zudem mit einem oder mehreren Software-Modulen zur Ausführung bestimmter Funktionen, Algorithmen und/oder Verfahren konfiguriert sein, unter anderem auf ein Geschwindigkeitserfassungsmodul 509, ein Kurserfassungsmodul 510 und ein Ankündigungsmodul 511. Die Proxy-Vorrichtung 550 schließt einen Prozessor 552, einen Speicher 554, eine Eingabevorrichtung 556, eine Anzeige 558, eine drahtlose Schnittstelle 562, eine drahtlose Schnittstelle 564 und eine Basisbandvorrichtung 559 ein. Die Proxy-Vorrichtung 550 kann zudem ein Geschwindigkeits-/Kurs-Modul 560 und ein Proxy-Angebotsmodul 561 einschließen.

Bei der Proxy-(Host)-Vorrichtung 550 kann es sich um jede Kommunikationsvorrichtung handeln, die fähig ist, einer Client-Vorrichtung 500 eine Proxy-Verbindung in einer Art bereitzustellen, die ähnlich dem vorstehend für die Verwaltung von Proxy-Verbindungen von verschiedenen Host-Vorrichtungen zu verschiedenen Client-Vorrichtungen Beschriebenen ist. Bestimmte Ausführungsformen von Host-Vorrichtungen können mehrere Kommunikationsschnittstellen besitzen, sodass als Teil eines durch eine Host-Vorrichtung durchgeführten Datenteilens (Data Sharing) die Host-Vorrichtung mit einem Netzwerk unter Verwendung einer bestimmten Kommunikationsschnittstelle auf Grundlage eines ersten Kommunikationsprotokolls kommuniziert und eine die Host-Vorrichtung mit einer Client-Vorrichtung unter Verwendung einer sich von der ersten Kommunikationsschnittstelle unterscheidenden zweiten Kommunikationsschnittstelle und auf Grundlage eines sich vom ersten Kommunikationsprotokoll unterscheidenden zweiten Kommunikationsprotokolls kommuniziert. Beispiele solcher Host-Vorrichtungen können Smartphones, Desktop-Computer, Laptop-Computer und andere solche netzwerkfähigen Rechenvorrichtungen einschließen.

Die Client-Vorrichtung 500 kann über eine Verbindung 538 mit der Host-Vorrichtung 550 kommunizieren. Gleichermaßen kann die Host-Vorrichtung 550 über eine Verbindung 588 mit dem Netzwerk 590 kommunizieren. In weiteren Ausführungsformen kann die Client-Vorrichtung 500 zudem eine Verbindung mit einem oder mehreren Netzwerken, einschließlich des Netzwerks 590, erzeugen. Insbesondere die Verbindung 538 kann in bestimmten Ausführungsformen als eine drahtlose Peer-zu-Peer-Verbindung (P2P-Verbindung) direkt zwischen der drahtlosen Schnittstelle 512 und der drahtlosen Schnittstelle 562 implementiert sein. In anderen Ausführungsformen kann die Verbindung 538 mehrere zusätzliche Vorrichtungen und Unterverbindungen einschließen, einschließlich mehrerer Zugangspunkte, Netzwerk-Routing-Verbindungen und Kommunikationsserver.

Die Prozessoren 502 und 552 können verschiedene Software-Komponenten ausführen, die in entsprechenden Speichern 504 und 554 gespeichert sind, um verschiedene Funktionen für die Vorrichtungen 500 und 550 durchzuführen, wie beispielsweise, jedoch nicht beschränkt auf, die Module 509, 510, 511, 560 und 561. In einigen Ausführungsformen können die Software-Komponenten auch ein Betriebssystem einschließen. In einigen Fällen kann das Geschwindigkeitserfassungsmodul 509 konfiguriert sein, die Geschwindigkeit der Client-Vorrichtung 500 zu erfassen. Gleichermaßen kann das Kurserfassungsmodul 510 konfiguriert sein, die Richtung (den Kurs) der Client-Vorrichtung 500 zu erfassen. Zusätzlich kann in einigen Beispielen das Ankündigungsmodul 511 konfiguriert sein, zu ermitteln, wann eine Verbindungsankündigung bereitgestellt werden soll, sowie, was in die Ankündigung einzuschließen ist.

Wie festgehalten, kann die Ankündigung die Geschwindigkeit und den Kurs der Client-Vorrichtung 500 sowie andere Informationen einschließen. Das Geschwindigkeits-/Kurs-Modul 560 der Proxy-Vorrichtung 550 kann ähnlich den entsprechenden Geschwindigkeits- und Kursmodulen 509 und 510 der Client-Vorrichtung 500 agieren. In einigen Fällen kann die Client-Vorrichtung ein kombiniertes Geschwindigkeits-/Kurs-Modul oder die zwei gezeigten separaten Module umfassen. Gleichenmaßen kann die Proxy-Vorrichtung 550 separate Geschwindigkeits- und Kurserfassungsmodule statt des gezeigten einzelnen Geschwindigkeits-/Kurs-Moduls 560 einschließen. In jedem Fall kann die Proxy-Vorrichtung und die Client-Vorrichtung 500 in der Lage sein, ihre eigene jeweilige Geschwindigkeit und ihren eigenen jeweiligen Kurs zu erfassen oder anderweitig zu identifizieren. Ferner kann die Proxy-Vorrichtung 550 ein Proxy-Angebots-Modul 561 einschließen. Das Proxy-Modul 561 kann konfiguriert sein, zu ermitteln, ob einer Client-Vorrichtung 500 (z. B. auf Grundlage der vorstehend beschriebenen Faktoren) ein Proxy-Angebot bereitgestellt werden soll.

In einigen Ausführungsformen können Host-Vorrichtungen und/oder Client-Vorrichtungen verschiedene Sensoren einschließen. Eine Kamera kann ein Beispiel eines Sensors darstellen. Sensoren können Beschleunigungsmesser, Kompasse, Gyrometer, Drucksensoren, Audiosensoren, Lichtsensoren, Barometer, Mikrofone und Ähnliches einschließen. Sensoren können verwendet werden, um verschiedenes Vorrichtungsentscheidungstreffen und Filtern zu implementieren, wie beispielsweise Unschärfekompensation für ein Videobild in einem Videoanruf oder Audiofiltern, um zum Filtern von Hintergrundrauschen aus an einem oder mehreren Mikrofonen, wie beispielsweise einem Mikrofon, erfassten Audioinformationen beizutragen.

In einigen Ausführungsformen können eine Client-Vorrichtung 500 oder eine Host-Vorrichtung 550 einen Empfänger des „Global Positioning System” (GPS) oder andere Standortassistenzvorrichtungen oder -module einschließen. Eine Vorrichtung kann ein Satellitennavigationssystem, wie beispielsweise das GPS, verwenden, um die Geschwindigkeitsinformationen, die Kursinformationen, Positionsinformationen, Zeitmessinformationen, Höhe oder andere Navigationsinformationen zu erlangen. Während eines Betriebs kann die GPS-Einheit Signale von GPS-Satelliten empfangen, welche die Erde umkreisen. Die GPS-Einheit analysiert die Signale, um eine Laufzeit- und Entfernungsabschätzung vorzunehmen. Die GPS-Einheit kann die aktuelle Position (den aktuellen Standort) der mobilen Vorrichtung ermitteln. Auf Grundlage dieser Abschätzungen kann die mobile Vorrichtung eine Standortbestimmung, Höhe und/oder aktuelle Geschwindigkeit ermitteln. Bei einer Standortbestimmung kann es sich um geographische Koordinaten, wie beispielsweise Breiten- und Längeninformationen, handeln. Andere Nicht-GPS-Standort-/Bewegungs-Module können zum Ermitteln der aktuellen Position (z. B. von Koordinaten oder anderen geographischen Standortangaben), Geschwindigkeit, Richtung und/oder Bewegung einer Client-Vorrichtung 500 oder Host-Vorrichtung 550 beitragen. Zusätzlich zu GPS kann eine Mobilfunknetz-Positionsbestimmung auf Grundlage von „Zellen-IDs” und eine WiFi-Positionsbestimmungstechnologie auf Grundlage eines WiFi-Netzwerks zur Unterstützung der Standortbestimmung verwendet werden. In einigen Ausführungsformen können Standort-/Bewegungsmodule Sensorinformationen bei den vorstehenden Systemen verwenden, um die aktuelle Position der Host-Vorrichtung zu ermitteln. Die Standortinformationen können dann verwendet werden, um Datenteilverbindungen (Data Sharing Connections) nicht nur für eine aktuelle Host-Vorrichtung, die Daten teilt, sondern auch für andere Host-Vorrichtungen zu verwalten, die auf Grundlage einer Bewegung von Client-Vorrichtung zum Datenteilen verwendet werden können.

IV. Eignungsmaßzahl

Verschiedene Verfahren können durch eine Proxy-Vorrichtung durchgeführt werden, um einer Client-Vorrichtung eine WAN-Verbindung bereitzustellen. Verfahren können durch die Client-Vorrichtung durchgeführt werden, um über eine Proxy-Vorrichtung Daten zu erlangen und/oder dem WAN bereitzustellen.

A. Ermittlung einer Eignungsmaßzahl

Erneut Bezug nehmend auf 5 können eine oder mehrere Proxy-Vorrichtungen 550 eine durch die Client-Vorrichtung 500 (z. B. über die Verbindung 538) bereitgestellte Verbindungsankündigung empfangen. Jede Proxy-Vorrichtung 550 kann dann unter Verwendung des Proxy-Angebots-Moduls 561 eine Ermittlung hinsichtlich dessen vornehmen, ob der anfordernden Client-Vorrichtung 500 eine Proxy-Verbindung angeboten werden soll. Zum Beispiel kann die Proxy-Vorrichtung 550 ihre eigene Geschwindigkeit und ihren eigenen Kurs identifizieren und dies mit der Geschwindigkeit und dem Kurs der Client-Vorrichtung 500 vergleichen, die bzw. der in der Verbindungsankündigung eingeschlossen war. In einigen Ausführungsformen kann die Proxy-Vorrichtung 550 jedoch eine Eignungsmaßzahl berechnen oder anderweitig ermitteln, die benutzt werden kann, um beim Vornehmen der Ermittlung, ob ein Proxy-Angebot gesendet werden soll, zu helfen.

Bei einer Eignungsmaßzahl kann es sich um jede gewünschte Maßzahl oder Kombination von Maßzahlen zum Identifizieren handeln, wie gut eine Proxy-Vorrichtung 550 als ein Proxy für einer Client-Vorrichtung 500 anzubietende Internetkonnektivität agieren wird. Die Eignungsmaßzahl kann die Fähigkeit der Proxy-Vorrichtung 550 in Hinblick auf Faktoren messen, welche die Proxy-Vorrichtung 550 direkter beeinflussen (z. B. externe Netzwerkstaus, Anzahl anderer mit der Proxy-Vorrichtung 550 verbundener Vorrichtungen, Datenbudget der Proxy-Vorrichtung 550, Batterie/Akku-Pegel der Proxy-Vorrichtung 550 usw.) und/oder Faktoren, welche die Client-Vorrichtung 500 direkter beeinflussen (z. B. relative Geschwindigkeit und relativer Kurs der Vorrichtungen, LAN-Signalstärke). Die Eignungsmaßzahl kann auch auf anderen Faktoren beruhen, und es kann sich um einen Prozentsatz (z. B. 10%, 50% usw.) handeln oder es kann sich um einen Wert von einen anderen Wert handeln (z. B. 50/100 oder 1/5). Spezifischer kann es sich bei der Eignungsmaßzahl um einen Wert handeln, der berechnet wird, indem Werte kombiniert werden, die mehreren Faktoren zugeordnet sind, unter anderem Geschwindigkeit und Kurs der Proxy-Vorrichtung 550, Geschwindigkeit und Kurs der Client-Vorrichtung 500, eine Stärkeanzeige eines empfangenen Signals der Verbindungsankündigung, WAN-Netzwerkstau und/oder Verbindungsqualität (z. B. ob es sich bei der Mobilfunkverbindung um 2G, 3G, LTE oder Ähnliches handelt), Datennutzungsbudgets der Proxy-Vorrichtung 550 und/oder Batterie/Akku-Budgets der Proxy-Vorrichtung 550. Jeder Wert kann in einigen Beispielen gewichtet werden, sodass eine relative Wichtigkeit für jeden Faktor berücksichtigt werden kann. Wenn zum Beispiel die Geschwindigkeit und der Kurs der zwei Vorrichtungen den wichtigsten Faktor beim Ermitteln einer Eignungsmaßzahl darstellen, können die Geschwindigkeit und der Kurs am stärksten gewichtet werden.

Die Eignungsmaßzahl kann durch die Proxy-Vorrichtung 550 berechnet werden, nachdem die Proxy-Vorrichtung 550 die Verbindungsankündigung von der Client-Vorrichtung 500 empfangt. Zum Beispiel kann die Eignungsmaßzahl für einen spezifischen Zeitrahmen berechnet werden, der dem Empfang der Verbindungsankündigung zugeordnet ist. Auf diese Weise kann es sich bei der Eignungsmaßzahl um ein geeignetes Maß einer Proxy-Verbindungseignung für diesen spezifischen Zeitrahmen handeln. Wenn zu viel Zeit verstreicht, nachdem die Verbindungsankündigung empfangen wurde, ist die Eignungsmaßzahl unter Umständen nicht länger gültig. Dies ist insbesondere der Fall, wenn die Verbindungsankündigung die Geschwindigkeit und den Kurs der Client-Vorrichtung 500 einschließt und wenn die Eignungsmaßzahl auf dieser Geschwindigkeit und diesem Kurs in Bezug auf die Geschwindigkeit und den Kurs der Proxy-Vorrichtung 550 beruhen soll.

Ein Grund für das Berechnen einer Eignungsmaßzahl besteht darin, der Client-Vorrichtung 500 eine Maßzahl zum Ermitteln bereitzustellen, welche Proxy-Vorrichtung 550 als ein Proxy benutzt werden soll (z. B. wenn mehrere Proxy-Vorrichtungen 550 Proxy-Verbindungen anbieten). Ein weiterer Grund besteht darin, es der Proxy-Vorrichtung 550 zu erlauben, zu entscheiden, ob solch eine Proxy-Verbindung angeboten werden soll. In jedem Fall können die relative Geschwindigkeit und der relative Kurs der Vorrichtungen einen stark gewichteten Faktor darstellen. Insofern kann ein Teil des Berechnens des Eignungsfaktors ein Vergleichen der Geschwindigkeit und des Kurses der Client-Vorrichtung 500 (die bzw. der z. B. mit der Verbindungsankündigung bereitgestellt wurde) mit der Geschwindigkeit und dem Kurs der Proxy-Vorrichtung 550 einschließen. Wie festgehalten, kann in Hinblick auf die Client-Vorrichtung 500 die Geschwindigkeit und der Kurs der Proxy-Vorrichtung 550 unter Verwendung integrierter (oder eingebauter) Beschleunigungsmesser, Bewegungserfassungssensoren und/oder Bewegungsprozessoren identifiziert oder anderweitig ermittelt werden. Der Vergleich der Informationen der relativen Geschwindigkeit und des relativen Kurses kann eine erste Maßzahl zum Berechnen der Eignungsmaßzahl ergeben.

Wie festgehalten, können auch andere Faktoren beim Berechnen der Eignungsmaßzahl benutzt werden. Zum Beispiel kann die Proxy-Vorrichtung 550 konfiguriert sein, die RSSI der Verbindungsankündigung zu identifizieren. Solch ein Wert kann die Stärke der eingehenden und potenziell zukünftigen Übermittlung zwischen der Proxy-Vorrichtung 550 und der Client-Vorrichtung 500 durch das LAN angeben. Zusätzlich können die Qualität, Stärke und/oder Staus des WAN einen Faktor beim Ermitteln der Eignungsmaßzahl darstellen. Wenn zum Beispiel die WAN-Verbindung der Proxy-Vorrichtung 550 schwach ist, wäre durch Bereitstellen einer Proxy-Verbindung für eine Client-Vorrichtung 500 wenig erreicht, selbst wenn die LAN-Verbindung zwischen dieser Client-Vorrichtung 500 und der Proxy-Vorrichtung 550 sehr stark wäre. Weitere Faktoren können die Batterie-/Akku-Pegel und/oder -Budgets der Proxy-Vorrichtung 550 sowie Datennutzungsbudgets der Proxy-Vorrichtung 550 einschließen. Wenn spezifischer die Batterie/der Akku der Proxy-Vorrichtung 550 sehr schwach ist, beeinflusst dies die Eignungsmaßzahl, weil die Proxy-Vorrichtung 550 unter Umständen nicht gut als ein Proxy geeignet ist, wenn ihre Batterie/ihr Akku nicht viel langer reicht. Wenn gleichermaßen ein Dienstanbieter oder Mobilfunkträger, welcher der Proxy-Vorrichtung 550 WAN-Daten bereitstellt, die Menge der Daten begrenzt, welche die Proxy-Vorrichtung 550 empfangen kann, und/oder wenn der Benutzer nur für eine bestimmte Datenmenge bezahlt, können Datennutzungsbudgets beim Ermitteln der Eignung der Proxy-Vorrichtung 550 als ein Proxy ins Spiel kommen. Wenn es zum Beispiel wenige Daten für einen Download durch die Proxy-Vorrichtung 550 gibt (z. B. auf Grundlage von Begrenzungen, Budgets oder Ähnlichem), kann die Eignungsmaßzahl gesenkt werden, um anzugeben, dass diese Proxy-Vorrichtung 550 unter Umständen nicht so geeignet ist wie eine andere Proxy-Vorrichtung 550, die ein höheres Budget besitzt oder von deren Budget noch weniger verbraucht ist. In einigen Ausführungsformen kann jeder Faktor kategorisiert werden, und eine Punktzahl kann für jede Kategorie ermittelt werden (z. B. unter Verwendung der vorstehend festgehaltenen Gewichtungen oder einfach von reinen Zahlen). Die Kategoriepunktzahlen können addiert werden, um die Eignungsmaßzahl zu berechnen. Wenn gewünscht, können andere Arten des Berechnen der Eignungsmaßzahl unter Verwendung beliebiger oder aller festgehaltenen Faktoren benutzt werden.

B. Proxy-Vorrichtung mit Eignungsmaßzahl

Eine Proxy-Vorrichtung, wie beispielsweise die Proxy-Vorrichtung 550 von 5, kann eine Eignungsmaßzahl auf verschiedene Weisen benutzen. Zum Beispiel kann die Proxy-Vorrichtung 550 die Eignung berechnen, um zu ermitteln, ob geeigneten Client-Vorrichtungen (z. B. der Client-Vorrichtung 500 von 5 oder ähnlich) ein Proxy-Angebot oder eine Verbindungsanforderung bereitgestellt werden soll. Zusätzlich kann die Eignungsmaßzahl in das Proxy-Angebot eingeschlossen werden.

6 ist ein Ablaufplan eines Beispielverfahrens eines Verwendens einer Eignungsmaßzahl, um zu ermitteln, ob einer Client-Vorrichtung eine Proxy-Verbindung angeboten werden soll. Das Verfahren 600 von 6 kann z. B. durch eine Proxy-Vorrichtung (z. B. 550 von 5) implementiert werden, indem darauf gespeicherte computerlesbare Anweisungen oder Ähnliches ausgeführt werden. Die Proxy-Vorrichtung kann mit einer ersten drahtlosen Schnittstelle zum Kommunizieren mit einem ersten Netzwerk (z. B. einem LAN mit der Client-Vorrichtung 500 von 5), einer zweiten drahtlosen Schnittstelle zum Kommunizieren mit einem zweiten Netzwerk (z. B. WAN, Internet usw.), einem Speicher, einem Bewegungserfassungssensor und einem mit dem Speicher, dem Bewegungssensor und/oder den drahtlosen Schnittstellen gekoppelten Prozessor konfiguriert sein.

In 602 kann die Proxy-Vorrichtung über die erste drahtlose Schnittstelle eine Ankündigungsnachricht von der Client-Vorrichtung empfangen, die eine Anforderung eines Austauschs von Daten mit dem zweiten Netzwerk einschließt. Zum Beispiel kann die Ankündigungsnachricht eine Anforderung einschließen, Daten hochzuladen oder aus dem Internet herunterzuladen oder Ähnliches. Die Ankündigungsnachricht kann zudem Nutzdaten (z. B. die hochzuladenden Daten) und/oder andere Informationen über auszutauschenden Inhalt einschließen.

In 604 kann die Proxy-Vorrichtung eine Eignungsmaßzahl ermitteln, die eine Fähigkeit für die Proxy-(Host)-Vorrichtung misst, die Daten mit dem zweiten Netzwerk auszutauschen und die Daten zur Zeit des Empfangens der Ankündigungsnachricht mit der Client-Vorrichtung auszutauschen. Die Eignungsmaßzahl kann als Reaktion auf den Empfang der Ankündigungsnachricht ermittelt werden. In einigen Ausführungsformen kann die Eignungsmaßzahl auf vorübergehenden und/oder Bewegungseigenschaften der Client-Vorrichtung beruhen, wie sie aus der Ankündigungsnachricht und/oder den Verbindungseigenschaften der Proxy-Vorrichtung mit dem zweiten Netzwerk ermittelt wurden. Die Eignungsmaßzahl kann für einen spezifischen Zeitrahmen berechnet werden, der dem Empfang der Ankündigungsnachricht zugeordnet ist. Auf diese Weise kann es sich bei der Eignungsmaßzahl um ein geeignetes Maß einer Proxy-Verbindungseignung für diesen spezifischen Zeitrahmen handeln.

In 606 kann die Proxy-Vorrichtung die Eignungsmaßzahl mit einem Schwellenwert vergleichen. Der Vergleich kann ermitteln, ob die Eignungsmaßzahl größer als, gleich dem oder kleiner als der Schwellenwert ist. Solch ein Vergleich kann auch nicht-numerische Werte mit einer beliebigen Rangfolge unter Klassifikationen (z. B. eine Maßzahl-Klassifizierung verglichen mit einer Schwellenwert-Klassifizierung) einbeziehen. In einigen Ausführungsformen handelt es sich bei dem Schwellenwert um einen Standardwert, der statisch oder durch einen Benutzer eingestellt ist. In anderen Ausführungsformen ist der Schwellenwert dynamisch. Zum Beispiel kann der Schwellenwert auf einem Batterie-/Akku-Pegel der Proxy-Vorrichtung oder einer Menge verfügbarer Bandbreite beruhen. Solche Kriterien können auch verwendet werden, um die Eignungsmaßzahl zu ermitteln.

In 608 kann die Proxy-Vorrichtung ermitteln, ob auf Grundlage des Ergebnisses des Vergleichs der Client-Vorrichtung eine Verbindungsanforderung bereitgestellt werden soll. In einigen Beispielen kann die Proxy-Vorrichtung der Client-Vorrichtung die Verbindungsanforderung (z. B. über eine drahtlose Schnittstelle) bereitstellen, wenn die Eignungsmaßzahl den Schwellenwert überschreitet, oder die Verbindungsanforderung der Client-Vorrichtung nicht bereitstellen, wenn die Eignungsmaßzahl den Schwellenwert nicht überschreitet (oder kleiner ist als dieser).

Gemäß einer bestimmten Ausführungsform können vorübergehende oder andere Eigenschaften der Client-Vorrichtung eine Geschwindigkeit der Client-Vorrichtung und/oder eine Bewegungsrichtung der Client-Vorrichtung einschließen. Von der Eignungsmaßzahl kann ermittelt werden, dass sie höher als eine Anfangsmenge ist (z. B. über einem Schwellenwert), wenn die Geschwindigkeit der Client-Vorrichtung und die Bewegungsrichtung der Client-Vorrichtung ähnlich der Geschwindigkeit und Bewegungsrichtung der Host-Vorrichtung sind. Verbindungseigenschaften der Host-Vorrichtung können eine Signalstärke mit dem Netzwerk (z. B. Stärke der Internetverbindung und/oder Stärke der potenziellen lokalen Verbindung mit der Client-Vorrichtung) und/oder einen Stau des Netzwerks (z. B. Intemetstau) einschließen. In einigen Beispielen kann von der Eignungsmaßzahl ermittelt werden, dass sie höher als eine Anfangsmenge ist (z. B. über einem Schwellenwert), wenn die Signalstärke mit dem Netzwerk über einem Signalstärkeschwellenwert liegt und/oder der Stau des Netzwerks unter einem Stauschwellenwert liegt.

C. Client-Vorrichtung mit Eignungsmaßzahl

Wie festgehalten, kann eine Client-Vorrichtung, wie beispielsweise die Client-Vorrichtung 500 von 5, ebenfalls eine Eignungsmaßzahl auf verschiedene Weisen nutzen. Zum Beispiel kann die Client-Vorrichtung 500 die Eignungsmaßzahl in einem Proxy-Angebot empfangen und die Eignungsmaßzahl verwenden, um zu ermitteln, ob ein Proxy-Angebot oder eine Verbindungsanforderung von einer Proxy-Vorrichtung (z. B. der (als „Host” bezeichneten) Vorrichtung 550 von 5 oder ähnlich) akzeptiert werden soll.

7 ist ein Ablaufplan eines Beispielverfahrens eines Verwendens einer Eignungsmaßzahl von einer Proxy-Vorrichtung, um zu ermitteln, ob ein Proxy-Angebot, durch die Proxy-Vorrichtung eine Verbindung mit einem Netzwerk herzustellen, akzeptiert werden soll. Das Verfahren 700 von 7 kann z. B. durch eine Client-Vorrichtung (z. B. 500 von 5) implementiert werden, indem darauf gespeicherte computerlesbare Anweisungen oder Ähnliches ausgeführt werden. Die Client-Vorrichtung kann mit einer drahtlosen Schnittstelle, einem Speicher, einem Bewegungserfassungssensor und einem mit dem Speicher, dem Bewegungssensor und/oder den drahtlosen Schnittstellen gekoppelten Prozessor konfiguriert sein.

In 702 kann die Client-Vorrichtung über die drahtlose Schnittstelle eine Verbindungsanforderung (oder ein Proxy-Angebot) von der Proxy-Vorrichtung empfangen. Die Verbindungsanforderung kann Daten zum Erlangen einer der Proxy-Vorrichtung zugeordneten Eignungsmaßzahl einschließen. Zum Beispiel können es die Daten der Client-Vorrichtung ermöglichen, die Eignungsmaßzahl nachzuschlagen oder anderweitig anzufordern, oder die Daten können es der Client-Vorrichtung ermöglichen, die Eignungsmaßzahl zu berechnen. In einigen Fällen kann es sich bei den Daten um die Eignungsmaßzahl handeln.

In 704 kann die Client-Vorrichtung die Eignungsmaßzahl mit einem der Client-Vorrichtung zugeordneten Eignungsschwellenwert vergleichen. Der Schwellenwert kann durch einen Administrator, Software-Entwickler, Hardware-Hersteller oder den Benutzer der Client-Vorrichtung eingestellt werden. Auf diese Weise können unterschiedliche Eignungsgrade für jede Verbindungsanforderung (oder für jedes Proxy-Angebot) erlaubt werden. Der Schwellenwert kann auf Grundlage von externen und/oder internen Bedingungen dynamisch aktualisiert werden, oder er kann für unterschiedliche Typen von Proxy-Vorrichtung unterschiedlich sein (z. B. können Proxy-Vorrichtungen mit besserer Hardware/neuerer Technologie bevorzugt werden, und somit kann der Schwellenwert für neue Proxy-Vorrichtungen oder Proxy-Vorrichtungen mit neuerer Software niedriger sein). Der Eignungsschwellenwert kann auch auf der Menge an Zeit seit der letzten Verbindung der Client-Vorrichtung mit dem WAN oder dem Internet (z. B. dem Netzwerk) und/oder einer Wichtigkeit der Daten beruhen.

Der Eignungsschwellenwert kann berechnet werden, indem einer oder mehrere von verschiedenen Faktoren berücksichtigt werden, einschließlich der Wichtigkeit der zu übermittelnden Daten. Zum Beispiel können die Daten durch den Benutzer als wichtig angegeben werden (z. B. eine Nachricht an einen anderen Benutzer auf einer Prioritätsliste, eine als dringend gekennzeichnete Nachricht, Daten, die zeitkritisch sind, Daten die eine lange Zeit darauf gewartet haben, übermittelt zu werden, usw.), oder sie können aufgrund der Menge an Zeit, für welche die Client-Vorrichtung versucht hat, sie zu übermitteln, als wichtig bestimmt werden.

In 706 kann die Client-Vorrichtung über die drahtlose Schnittstelle eine Verbindung mit der Proxy-Vorrichtung zum Übermitteln der Daten an das LAN oder an das Internet herstellen, wenn die Eignungsmaßzahl größer ist als der Eignungsschwellenwert. In einigen Beispielen kann der Schwellenwert typ- und/oder zeitabhängig sein. In anderen Worten kann sich der Schwellenwert ändern, wenn die Zeit seit dem letzten Hochladen verstrichen ist, sodass der Schwellenwert umso niedriger werden kann, je länger die Client-Vorrichtung vom WAN getrennt ist, um selbst dann eine Verbindung mit dem WAN zu ermöglichen, wenn die Eignungsmaßzahl nicht ideal ist. Der Schwellenwert kann auch typabhängig sein (wie beispielsweise Hochladetyp oder Ähnliches). Wenn zum Beispiel die Client-Vorrichtung eine Nachricht zu senden hat, kann die Client-Vorrichtung den Schwellenwert absenken oder eine niedrigere Eignungsmaßzahl akzeptieren (z. B. sogar niedriger als der Schwellenwert), um eine Verbindung mit dem WAN herzustellen, um die Nachricht hochzuladen. Einige Daten mit höherer oder niedrigerer Priorität können den Schwellenwert ebenfalls auf unterschiedliche Weisen beeinflussen.

In einigen Ausführungsformen kann es sich bei den in der Verbindungsanforderung eingeschlossenen Daten um die Eignungsmaßzahl selbst handeln, oder sie können die Eignungsmaßzahl einschließen. Alternativ dazu kann die Client-Vorrichtung die Eignungsmaßzahl auf Grundlage (z. B. unter Verwundung) der in der Verbindungsanforderung eingeschlossenen Daten ermitteln. Der Eignungsschwellenwert kann auf der Zeit seit der letzten Verbindung mit dem Netzwerk beruhen, und die Eignungsmaßzahl kann abnehmen, wenn sich die Zeit seit der letzten Verbindung mit dem Netzwerk erhöht. Der Eignungsschwellenwert kann auch auf der Wichtigkeit der Informationen beruhen, und der Eignungsschwellenwert kann abnehmen, wenn die Wichtigkeit der Informationen zunimmt. Ferner kann die Wichtigkeit der Informationen durch den Benutzer der Client-Vorrichtung konfiguriert werden und/oder auf Grundlage des Inhalts der Informationen ermittelt werden (z. B. eine als dringend gekennzeichnete Nachricht, eine Nachricht mit einem Zeitstempel der alt wird, eine Nachricht an einen Benutzer in einer Prioritätsliste, als wichtig gekennzeichnete Informationen usw.).

Gemäß einer bestimmten Ausführungsform können Funkvorrichtungen der Client-Vorrichtung konfiguriert sein, Verbindungsmaßzahlen zu berichten, wie beispielsweise, jedoch nicht beschränkt auf, RSSI-Maßzahlen, Geschwindigkeitsmaßzahlen der Host-Vorrichtung, Richtungsmaßzahlen der Host-Vorrichtung, Signal-Rausch-Verhältnis-Maßzahlen und/oder Stausteuerungsalgorithmus-Maßzahlen. In einigen Beispielen kann die Eignungsmaßzahl auf einer oder mehreren der Verbindungsmaßzahlen beruhen. Die RSSI-Maßzahlen können in der Verbindungsanforderung von der Host-Vorrichtung eingeschlossen sein, und die Host-Vorrichtung kann fähig sein, die Eignungsmaßzahl zu erhöhen, wenn sich die Maßzahlen einer Stärkeanzeige eines empfangenen Signals verringern. Die Host-Vorrichtung kann auch fähig sein, die Eignungsmaßzahl zu erhöhen, wenn die Geschwindigkeitsmaßzahlen der Host-Vorrichtung und/oder die Richtungsmaßzahlen der Host-Vorrichtung einer Geschwindigkeit und einer Richtung der Client-Vorrichtung ähnlicher werden (z. B. wenn sich die Geschwindigkeit und Richtung der zwei Vorrichtungen einander mehr angleichen, was sie potenziell für die Kommunikation kompatibler macht). Eine Ähnlichkeit von Geschwindigkeit und Richtung kann auf einem vordefinierten oder dynamischen Schwellenwert beruhen. Die Signal-Rausch-Verhältnis-Maßzahlen können eine der Kommunikation mit der Host-Vorrichtung zugeordnete Menge an Signalstärke in Hinblick auf ein Rauschen definieren, das während der Kommunikation mit der Host-Vorrichtung erfasst wird, und die Host-Vorrichtung kann fähig sein, die Eignungsmaßzahl zu erhöhen, wenn sich die Signal-Rausch-Verhältnis-Maßzahlen erhöhen. Ferner können die Stausteuerungsalgorithmus-Maßzahlen eine der Kommunikation zwischen der Client-Vorrichtung und der Host-Vorrichtung zugeordnete berechnete Menge an Stau definieren, und die Host-Vorrichtung kann zudem fähig sein, die Eignungsmaßzahl zu erhöhen, wenn sich die Stausteuerungsalgorithmus-Maßzahlen erhöhen.

D. Zusätzliche Ausführungsformen

8 ist ein Blockdiagramm, das Beispielausführungsformen einer Client-Vorrichtung 800 veranschaulicht, die fähig ist, mindestens einige der mindestens unter Bezugnahme auf die Client-Vorrichtungen von 1 bis 7 beschriebenen Funktionen durchzuführen. Zum Beispiel kann die Client-Vorrichtung 800 konfiguriert sein, vorstehend in Hinblick auf das Verfahren 400 und/oder das Verfahren 700 von 4 bzw. 7 beschriebene Operationen und/oder Ausführungsformen durchzuführen. In einigen Ausführungsformen kann die Client-Vorrichtung 800 mit einem Anwendungsverwalter und/oder Anwendungsprozessor 802 konfiguriert sein. Der Prozessor 802 kann für ein Ermitteln verantwortlich sein, ob ausreichende Konnektivität für eine Sitzung besteht (z. B. ob die Client-Vorrichtung 800 wahrscheinlich in der Lage sein wird, eine Verbindung mit einer Proxy-Vorrichtung herzustellen). Der Prozessor 802 kann auch die beste Proxy-Vorrichtung für eine Datenübertragung auswählen, wenn es mehrere durch die Client-Vorrichtung empfangene Proxy-Angebote oder Verbindungsanforderungen gibt. Der Prozessor 902 kann auch ermitteln, welche Funkzugangstechnologie (Radio Access Technology (RAT)) für den Dateitransport verwendet werden soll, wenn eine Verbindung mit einer Proxy-Vorrichtung hergestellt wird (z. B. ob BT (klassisch und/oder „Low-Energy”) oder WiFi für den Datentransport verwendet werden soll). BT oder WiFi wird verwendet, um mit der Proxy-Vorrichtung zu kommunizieren.

Die Client-Vorrichtung 800 kann zudem mit einer BT-Funkeinheit 804 und einer WiFi-Funkeinheit 806 sowie einem Bewegungsprozessor 808 ausgerüstet sein. Die BT-Funkeinheit 804 kann den Proxy-Antworten zugeordnete RSSI-Maßzahlen, durch die Proxy-Vorrichtung berichtete Eignungsmaßzahlen und/oder durch die Proxy-Vorrichtung berichtete Geschwindigkeits- und Kursinformationen verfolgen. Diese Maßzahlen können dem Prozessor 802 berichtet werden. Die BT-Funkeinheit 804 kann auch Ankündigungen für Downlink-Daten gemäß einer Teleskop-Maßzahl senden (z. B. zur Proxy-Vorrichtung), Ankündigungen für Uplink-Daten auf Abruf senden (z. B. zur Proxy-Vorrichtung) und/oder Verbindungen für die Übertragung von Daten zwischen der Client-Vorrichtung 800 und der Proxy-Vorrichtung einrichten. Die WiFi-Funkeinheit 806 kann zudem RSSI-Maßzahlen verfolgen und berichten (z. B. dem Prozessor 802) und kann auch SNR- und/oder CCA-Maßzahlen verfolgen und berichten. Die WiFi-Funkeinheit 806 kann zudem konfiguriert sein, eine Verbindung zwischen der Client-Vorrichtung 800 und der Proxy-Vorrichtung einzurichten und/oder Daten zwischen den beiden zu übertragen. Der Bewegungsprozessor 808 kann konfiguriert sein, fahrzeugbezogene, Lauf-, Geh-, stationäre usw. Maßzahlen sowie Kurs-/Richtungsmaßzahlen der Client-Vorrichtung 800 zu identifizieren, zu erfassen oder anderweitig zu berechnen.

9 ist ein Blockdiagramm, das Beispielausführungsformen einer Proxy-Vorrichtung 900 veranschaulicht, die fähig ist, mindestens einige der mindestens unter Bezugnahme auf die Proxy-Vorrichtungen von 1 bis 7 beschriebenen Funktionen durchzuführen. In einigen Ausführungsformen kann die Proxy-Vorrichtung 900 mit einem Proxy-Verwalter 902 konfiguriert sein. Der Proxy-Verwalter 902 kann für ein Berechnen einer Eignungsmaßzahl verantwortlich sein (z. B. wenn neue Ereignisse ankommen) und/oder eine Proxy-Batterie-/eine Proxy-Akku- und eine Datennutzung gegenüber dem Budget verfolgen (z. B. auf Grundlage eines Kontos bei einem Dienstanbieter oder Ähnlichem). Der Proxy-Verwalter 902 kann auch für ein Auswählen einer geeigneten RAT verantwortlich sein. In einigen Ausführungsformen kann es sich bei einer Antwort auf eine Ankündigung von einer Client-Vorrichtung (z. B. der Client-Vorrichtung 800 von 8 oder einer beliebigen der in Hinblick auf 1 bis 7 beschriebenen Client-Vorrichtungen) um ein Angebot handeln, als ein Proxy zu dienen (z. B. ein Proxy-Angebot). Wie festgehalten, kann die Eignungsmaßzahl durch den Proxy-Verwalter 902 verwendet werden, um zu ermitteln, ob er freiwillig als ein Proxy dienen soll. In einigen Ausführungsformen kann eine anfängliche Kommunikation zwischen der Client-Vorrichtung und der Proxy-Vorrichtung 900 über BTLE oder Ähnliches erfolgen; der Proxy-Verwalter 902 kann jedoch feststellen, die RATs zu wechseln und eine andere Technologie (oder Funk) für zukünftige Kommunikationen zu benutzen. Mit anderen Worten kann eine BT-Funkeinheit 904 eingehende Ankündigungen von Client-Vorrichtungen empfangen, die Proxy-Vorrichtung 900 kann jedoch unter Verwendung einer WiFi-Funkeinheit 906 mit einem Proxy-Angebot antworten. Die Proxy-Verbindung kann dann die WiFi-Funkeinheit 906 benutzen, obwohl die anfängliche Kommunikation über BTLE erfolgte. Das entgegengesetzte Szenario oder alternative Szenarien können auf Wunsch ebenfalls implementiert werden.

Wie vorstehend festgehalten, kann die Proxy-Vorrichtung 900 sowohl mit einer BT-Funkeinheit 904 als auch einer WiFi-Funkeinheit 906 sowie einem Bewegungsprozessor 908 und einer Mobilfunkeinheit 910 ausgerüstet sein. In einigen Ausführungsformen können die Funkeinheiten dem Proxy-Verwalter 902 Änderungen von Maßzahlen als Ereignisse berichten. Die BT-Funkeinheit 904 kann RSSI-Maßzahlen, die Ankündigungen von einer Client-Vorrichtung zugeordnet sind, eine Änderungsrate von RSSI-Ankündigungen und/oder die Geschwindigkeit und den Kurs der Client-Vorrichtung verfolgen. Diese Maßzahlen können dem Proxy-Verwalter 902 berichtet werden. Die BT-Funkeinheit 904 kann zudem auf Ankündigungen auf Grundlage der Eignungsmaßzahl antworten und/oder die Geschwindigkeit und den Kurs der Proxy-Vorrichtung 900 in Antworten (z. B. Proxy-Angebote) einschließen. Die WiFi-Funkeinheit 906 kann zudem RSSI-Maßzahlen verfolgen und berichten (z. B. dem Proxy-Verwalter 902) und kann auch SNR- und/oder CCA-Maßzahlen verfolgen und berichten. Der Bewegungsprozessor 908 kann konfiguriert sein, fahrzeugbezogene, Lauf-, Geh-, stationäre usw. Maßzahlen sowie Kurs-/Richtungsmaßzahlen der Proxy-Vorrichtung 900 zu identifizieren, zu erfassen oder anderweitig zu berechnen. Ferner kann eine Mobilfunkeinheit 910 LTE-, RSRP-, WCDMA-Maßzahlen usw. sowie aktive Mobilfunk-RAT-Maßzahlen verfolgen (z. B. zum Ermitteln, welche Mobilfunktechnologie verwendet werden soll, wenn mehrere Technologien verfügbar sind).

V. Vorrichtungen

10 veranschaulicht zusätzliche Beispiele von Client-Vorrichtungen und Proxy-(Host)-Vorrichtungen, die in Verbindung mit oder als Teil der Systeme 100, 300 oder 500 von 1, 3 bzw. 5 verwendet werden können, um die Verwaltung von Proxy-Verbindungen zu implementieren. Obwohl durch diese Figuren zwei Ausführungsformen veranschaulicht werden, können verschiedene Implementierungen jede Anzahl von Client-Vorrichtungen, Host-Vorrichtungen und unterschiedlichen Netzwerke einschließen, die durch die Vorrichtungen in einem bestimmten Aufbau unterstützt werden können.

Es sollte ersichtlich sein, dass die in 10 gezeigten Systeme mehrere Beispielausführungsformen veranschaulichen, dass jedoch andere ähnliche Ausführungsformen mehr oder weniger Komponenten als gezeigt besitzen können. Andere Ausführungsformen können zudem unterschiedliche Konfigurationen der veranschaulichten Komponenten einschließen, während sie innerhalb des Umfangs der Innovationen hierin bleiben.

10 veranschaulicht eine Ausführungsform mit einer Client-Vorrichtung 1000, einer Proxy-(Host)-Vorrichtung 1050 und einen Netzwerk 1090. Bei der Client-Vorrichtung 1000 kann es sich um jede über eine drahtlose Schnittstelle zugängliche Vorrichtung handeln, einschließlich eines Desktop-Computers, eines Laptop-Computers, eines Smartphones, eines Tablet-Computers, einer am Körper tragbaren Vorrichtung (z. B. einer netzwerkfähigen Uhr, eines netzwerkfähigen Hörelements oder eines netzwerkfähigen Halsbandes), einer Netzwerkeinheit (z. B. eines netzwerkfähigen Kühlschrankes oder einer netzwerkfähigen Waschmaschine), einer Medienwiedergabeeinheit, eines persönlichen digitalen Assistenten, eines Schlüsselanhängers, einer Zugangskarte, einer Multifunktionsvorrichtung, eines Spielsystems oder einer beliebigen anderen solchen Client-Vorrichtung.

In einigen Ausführungsformen versuchen die zwei Vorrichtungen die entsprechenden Daten so schnell und effizient wie möglich hochzuladen und/oder herunterzuladen, sobald eine Client-Vorrichtung 1000 oder eine Proxy-Vorrichtung 1050 entscheidet, eine Proxy-Verbindung herzustellen. Dies liegt daran, dass es eine Möglichkeit gibt, dass die Verbindung manchmal aufhört (endet oder unterbrochen wird), bevor die Übermittlung vollständig ist, da sich die zwei Vorrichtungen bewegen können und sich unter Umständen nicht gemeinsam bewegen. Zum Beispiel kann es für einen Benutzer mit einer Client-Vorrichtung 1000 möglich sein, an einem Benutzer mit einer Proxy-Vorrichtung 1050 vorbeizugehen und die Client-Vorrichtung 1000 durch die Proxy-Vorrichtung 1050 auf das Internet zugreifen zu lassen. Wenn die Benutzer langsam gehen (z. B. in einer überfüllten Umgebung, während sie auf den öffentlichen Nahverkehr warten, in einem Park oder während einer oder beide an einer Ampel oder einem Fußgängerüberweg warten), können die zwei Vorrichtungen eine Verbindung herstellen und Daten übermitteln, während sich die zwei Benutzer in einer wirksamen Kommunikationsreichweite voneinander befinden. In einigen Ausführungsformen können durch die zwei Vorrichtungen Nicht-Standard-Kommunikationsprotokolle benutzt werden, um eine schnellere Verbindung und Datenübertragung zu ermöglichen.

Wenn in einigen Ausführungsformen die Client-Vorrichtung 1000 und/oder die Proxy-Vorrichtung 1050 ihre jeweiligen Geschwindigkeiten berechnen und/oder bereitstellen, können sie im Gegensatz zu einer reinen Geschwindigkeit (z. B. Fuß pro Sekunde oder Ähnliches) eine Geschwindigkeitsklassifizierung oder -kategorie (z. B. langsam, mittel, schnell usw.) bereitstellen. Insofern kann ein Vergleichen einer Geschwindigkeit und eines Kurses relative Vergleiche einschließen, sodass die zwei Vorrichtungen innerhalb einer Kategorie übereinstimmen und nicht notwendigerweise exakt übereinstimmen müssen.

Zusätzlich kann in einigen Ausführungsformen eine Proxy-Vorrichtung 1050 mehrere Verbindungsankündigungen (auch als „Ankündigungsnachrichten” oder „Verbindungsanforderungen” bezeichnet) von mehreren Client-Vorrichtungen empfangen. Die Proxy-Vorrichtung 1050 kann einfach auf die erste Ankündigung antworten, die sie empfängt, sich dessen bewusst oder nicht, dass sie weitere Ankündigungen empfangen wird, oder einfach als eine Effizienz (z. B. könnte sie konfiguriert sein, immer auf die nächste empfangene Ankündigung zu antworten). In einigen Fällen kann die Proxy-Vorrichtung 1050 zudem Änderungen zwischen Ankündigungen verfolgen. Zum Beispiel kann auf Grundlage einer Vorrichtungs-ID oder Ähnlichem die Proxy-Vorrichtung 1050 in der Lage sein, zwischen Ankündigungen von unterschiedlichen Client-Vorrichtungen zu unterscheiden, Gesamtänderungen innerhalb des Satzes von Ankündigungen (z. B. von allen Client-Vorrichtungen) zu identifizieren und/oder Änderungen innerhalb der Ankündigungen von jeder bestimmten Client-Vorrichtung 1000 zu identifizieren. Insofern kann die Proxy-Vorrichtung 1050 die RSSI- oder anderen Informationen in der Ankündigung verfolgen, die angeben, dass sich die Eignung zu einem Verbinden mit einer bestimmten Client-Vorrichtung 1000 unter Umständen gerade verbessert. In einigen Fällen kann die Proxy-Vorrichtung 1050 ein Proxy-Angebot bereitstellen, selbst wenn die Faktoren nicht ideal sind (oder unter den Schwellenwerten zum Bereitstellen eines Proxy-Angebots liegen), da sie folgern kann, dass sich die Bedingungen verbessern und letztendlich gut genug sein werden, eine solide Proxy-Verbindung anzubieten. In einigen Beispielen kann sich die Proxy-Vorrichtung 1050 wie ein Router verhalten.

Bei der Client-Vorrichtung 1000 kann es sich um jede über eine drahtlose Schnittstelle zugängliche Vorrichtung handeln, einschließlich eines Desktop-Computers, eines Laptop-Computers, eines Smartphones, eines Tablet-Computers, einer am Körper tragbaren Vorrichtung (z. B. einer netzwerkfähigen Uhr, eines netzwerkfähigen Hörelements oder eines netzwerkfähigen Halsbandes), einer Netzwerkeinheit (z. B. eines netzwerkfähigen Kühlschrankes oder einer netzwerkfähigen Waschmaschine), einer Medienwiedergabeeinheit, eines persönlichen digitalen Assistenten, eines Schlüsselanhängers, einer Zugangskarte, einer Multifunktionsvorrichtung, eines Spielsystems oder einer beliebigen anderen solchen Client-Vorrichtung. Die Client-Vorrichtung 1000 umfasst einen Speicher 1004, einen Prozessor 1002, eine Eingabevorrichtung 1006, eine Anzeige 1008 und eine drahtlose Schnittstelle 1012. Die Host-Vorrichtung 1050 schließt einen Prozessor 1052, einen Speicher 1054, eine Eingabevorrichtung 1056, eine Anzeige 1058, eine drahtlose Schnittstelle 1062, eine drahtlose Schnittstelle 1064 und eine Basisbandvorrichtung 1059 ein.

Bei der Host-Vorrichtung 1050 kann es sich um jede Kommunikationsvorrichtung handeln, die fähig ist, einer Client-Vorrichtung 1000 ein Datenteilen in einer Art bereitzustellen, die ähnlich dem vorstehend für ein Datenteilen von verschiedenen Host-Vorrichtungen an verschiedene Client-Vorrichtungen Beschriebenen ist. Bestimmte Ausführungsformen von Host-Vorrichtungen können mehrere Kommunikationsschnittstellen besitzen, sodass als Teil eines durch eine Host-Vorrichtung durchgeführten Datenteilens (Data Sharing) die Host-Vorrichtung mit einem Netzwerk unter Verwendung einer bestimmten Kommunikationsschnittstelle auf Grundlage eines ersten Kommunikationsprotokolls kommuniziert und eine die Host-Vorrichtung mit einer Client-Vorrichtung unter Verwendung einer sich von der ersten Kommunikationsschnittstelle unterscheidenden zweiten Kommunikationsschnittstelle und auf Grundlage eines sich vom ersten Kommunikationsprotokoll unterscheidenden zweiten Kommunikationsprotokolls kommuniziert. Beispiele solcher Host-Vorrichtungen können Smartphones, Desktop-Computer, Laptop-Computer und andere solcher netzwerkfähigen Rechenvorrichtungen einschließen.

Die Client-Vorrichtung 1000 kann über eine Verbindung 1038 (auch als das zweite Netzwerk bezeichnet, wobei es sich bei dem ersten Netzwerk um eine Netzwerkverbindung 1088 handelt) mit der Host-Vorrichtung 1050 kommunizieren. Gleichermaßen kann die Host-Vorrichtung 1050 über eine Verbindung 1088 mit dem Netzwerk 1090 kommunizieren. In weiteren Ausführungsformen kann die Client-Vorrichtung 1000 (z. B. über eine separate drahtlose Schnittstelle und/oder über die Proxy-Verbindung 1038) auch eine Verbindung mit einem oder mehreren anderen Netzwerken einschließlich eines Netzwerks 1090 erzeugen. In einigen Beispielen kann die Verbindung 1038 (oder mindestens die zwei drahtlosen Schnittstellen 1012, 1062) zum Bereitstellen oder anderweitigen Übermitteln der Ankündigungsnachricht 1092 (z. B. von der Client-Vorrichtung 1000 zur Proxy-Vorrichtung 1050) und/oder des Proxy-Angebots 1094 (z. B. von der Proxy-Vorrichtung 1050 zur Client-Vorrichtung 1000) benutzt werden.

Unterschiedliche Ausführungsformen können die Verbindung 1038, die Verbindung 1088 oder Aspekte dieser Verbindungen unter Verwendung von einem oder mehreren Kommunikationsprotokollen oder einer oder mehreren Kommunikationstechnologien implementieren, einschließlich „Time Division multiple Access” (TDMA), „Code Division multiple Access” (CDMA), „Global System for mobile Communications” (GSM), „Enhanced Data GSM Environment” (EDGE), „Wideband Code Division multiple Access” (W-CDMA), „Long Term Evolution” (LTE), LTE-Advanced, WiFi (wie beispielsweise IEEE 802.11a, IEEE 802.11b, IEEE 802.11g und/oder IEEE 802.11n), Bluetooth, Wi-MAX, „Voice over Internet Protocol” (VoIP), Nahfeldkommunikationsprotokoll (Near Field Communication Protocol (NFC)), ein Protokoll für E-Mail, Sofortnachrichtenvermittlung und/oder einen „Short Message Service” (SMS) oder jedes andere geeignete Kommunikationsprotokoll, einschließlich Kommunikationsprotokollen, die zum Einreichungsdatum dieses Dokuments noch nicht entwickelt sind. Eine Host- oder Client-Vorrichtung kann eine Drahtlos-Schaltlogik als Teil von drahtlosen Schnittstellen, wie beispielsweise der drahtlosen Schnittstelle 1012, der drahtlosen Schnittstelle 1062 und der drahtlosen Schnittstelle 1064 einschließen, die abhängig von der für die Kommunikation erforderlichen Reichweite über mehrere unterschiedliche Typen drahtloser Netzwerke kommunizieren können. Zum Beispiel kann ein Drahtlos-Transceiver kurzer Reichweite (z. B. Bluetooth), ein Drahtlos-Transceiver mittlerer Reichweite (z. B. WiFi) und/oder ein Drahtlos-Transceiver großer Reichweite (z. B. GSM/GPRS, UMTS, CDMA2000 1x/EV-DO und LTE/LTE-Advanced) abhängig vom Typ der Kommunikation oder der Reichweite der Kommunikation verwendet werden.

Insbesondere die Verbindung 1038 kann in bestimmten Ausführungsformen als eine drahtlose Peer-zu-Peer-Verbindung (P2P-Verbindung) direkt zwischen der drahtlosen Schnittstelle 1012 und der drahtlosen Schnittstelle 1062 implementiert sein. In anderen Ausführungsformen kann die Verbindung 1038 mehrere zusätzliche Vorrichtungen und Unterverbindungen einschließen, einschließlich mehrerer Zugangspunkte, Netzwerk-Routing-Verbindungen und Kommunikationsserver.

Die Drahtlos-Schaltlogik kann in Verbindung mit drahtlosen Schnittstellen, wie beispielsweise den drahtlosen Schnittstellen 1012, 1062 und 1064, verwendet werden, um Informationen über drahtlose Verbindungen, wie beispielsweise die Verbindung, zu senden und zu empfangen. Jede hierin beschriebene Vorrichtung kann zusätzlich eine herkömmliche Schaltlogik, wie beispielsweise ein Antennensystem, einen HF-Transceiver, einen oder mehrere Verstärker, einen Tuner, einen oder mehrere Oszillatoren, einen digitalen Signalprozessor, einen CODEC-Chipsatz, einen Speicher usw., einschließen, um verschiedene beschriebene drahtlose Verbindungen zu ermöglichen, wie hierin beschrieben.

Die Drahtlos-Schaltlogik kann über Peripherieeinheitenschnittstellen mit Prozessoren, wie beispielsweise dem Prozessor 1002 und dem Prozessor 1052, gekoppelt sein. Durch die Drahtlos-Schaltlogik empfangene Sprach- und Dateninformationen können über die Peripherieeinheitenschnittstellen an einen oder mehrere Prozessoren gesendet werden. Ein oder mehrere Prozessoren, wie beispielsweise die Prozessoren 1002 und 1052, können konfigurierbar sein, verschiedene Datenformate für ein oder mehrere im Speicher einer Vorrichtung gespeicherte Anwendungsprogramme zu verarbeiten.

Die Prozessoren 1002 und 1052 können verschiedene Software-Komponenten ausführen, die in entsprechenden Speichern 1004 und 1054 gespeichert sind, um verschiedene Funktionen für die Vorrichtungen 1000 und 1050 durchzuführen. In einigen Ausführungsformen schließen die Software-Komponenten ein Betriebssystem, ein Kommunikationsmodul (oder einen Anweisungssatz) und andere Anwendungen (oder Anweisungssätze) ein. In unterschiedlichen Ausführungsformen kann es sich bei einem Prozessor um eine einzelne integrierte Schaltung, einen Satz mehrerer integrierter Schaltungen oder jede Logik-Hardware handeln, die verwendet werden kann, um Verarbeitungsfunktionalität zu implementieren.

Bei einem durch einen Prozessor ausgeführten Betriebssystem kann es sich um jedes geeignete Betriebssystem handeln. Das Betriebssystem kann verschiedene Prozeduren, Anweisungssätze, Software-Komponenten und/oder Treiber zum Steuern und Verwalten allgemeiner Systemaufgaben (z. B. Speicherverwaltung, Datenspeichervorrichtungs-Steuerung, Energieverwaltung usw.) einschließen und ermöglicht eine Kommunikation zwischen verschiedenen Hardware- und Software-Komponenten.

Bei einem Speicher, wie hierin beschrieben, einschließlich des Speichers 1004 und des Speichers 1054, kann es sich um jedes computerlesbare Medium und ferner jede Vorrichtung oder jedes Medium handeln, die bzw. das Code und/oder Daten zur Verwendung durch einen oder mehrere Prozessoren oder eine oder mehrere Vorrichtungskomponenten speichern kann. Dies kann eine Speicherhierarchie einschließen, unter anderem Cache, Hauptspeicher und sekundären Speicher. Die Speicherhierarchie kann unter Verwendung jeder Kombination von RAM (z. B. SRAM, DRAM, DDRAM), ROM, FLASH, magnetischen und/oder optischen Datenspeichervorrichtungen, wie beispielsweise Plattenlaufwerken, Magnetband, CDs (Compact Disks) und DVDs (Digital Video Discs), implementiert werden. In einigen Ausführungsformen können Peripherieeinheitenschnittstellen, ein oder mehrere Prozessoren und eine Speichersteuereinheit auf einem einzigen Chip innerhalb jeder hierin beschriebenen Vorrichtung implementiert sein. In einigen anderen Ausführungsformen können sie auf separaten Chips implementiert sein.

Jede hierin beschriebene Vorrichtung, wie beispielsweise die Host-Vorrichtung 1050 und die Client-Vorrichtung 1000, kann zudem Energiesysteme einschließen, um die verschiedenen Hardware-Systeme mit Energie zu versorgen. Energiesysteme können ein Energieverwaltungssystem, eine oder mehrere Energiequellen (z. B. eine Batterie/einen Akku, Wechselstrom (AC)), ein Wiederaufladesystem, eine Stromausfall-Erfassungsschaltung, einen Energiewandler oder -inverter, einen Energiestatusanzeiger (z. B. eine lichtemittierende Diode (LED)) und beliebige andere Komponenten einschließen, die der Erzeugung, Verwaltung und Verteilung von Energie in mobilen Vorrichtungen zugeordnet sind.

In einigen Ausführungsformen können Host-Vorrichtungen und/oder Client-Vorrichtungen verschiedene Sensoren einschließen. Eine Kamera kann ein Beispiel eines Sensors darstellen. Solche Kameravorrichtungen können zusammen mit anderen Sensoren als Eingabevorrichtung als Teil der Eingabevorrichtung 1056 betrachtet werden. Eine Kamera kann verwendet werden, um AV-Daten für Videoanrufe oder für Bilder zu erzeugen, die über durch eine Host-Vorrichtung bereitgestelltes Datenteilen übermittelt werden können. In einigen Ausführungsformen können Vorrichtungen zudem vielfältige andere Sensoren einschließen. Sensoren können Beschleunigungsmesser, einen Kompass, ein Gyrometer, Drucksensoren, Audiosensoren, Lichtsensoren, Barometer, Mikrofone und Ähnliches einschließen. Sensoren können verwendet werden, um verschiedenes Vorrichtungsentscheidungstreffen und Filtern zu implementieren, wie beispielsweise Unschärfekompensation für ein Videobild in einem Videoanruf oder Audiofiltern, um zum Filtern von Hintergrundrauschen aus an einem oder mehreren Mikrofonen erfassten Audioinformationen beizutragen.

In einigen Ausführungsformen können eine Client-Vorrichtung 1000 oder eine Proxy-Vorrichtung 1050 einen Empfänger des „Global Positioning System” (GPS) oder andere Standortbestimmungsassistenzvorrichtungen oder -Module einschließen. Eine Vorrichtung kann ein Satellitennavigationssystem, wie beispielsweise das GPS, verwenden, um Positionsinformationen, Zeitmessinformationen, Höhe oder andere Navigationsinformationen zu erlangen. Während eines Betriebs kann die GPS-Einheit Signale von GPS-Satelliten empfangen, welche die Erde umkreisen. Die GPS-Einheit analysiert die Signale, um eine Laufzeit- und Entfernungsabschätzung vorzunehmen. Die GPS-Einheit kann die aktuelle Position (den aktuellen Standort) der mobilen Vorrichtung ermitteln. Auf Grundlage dieser Abschätzungen kann die mobile Vorrichtung eine Standortbestimmung, Höhe und/oder aktuelle Geschwindigkeit ermitteln. Bei einer Standortbestimmung kann es sich um geographische Koordinaten, wie beispielsweise Breiten- und Längeninformationen, handeln. Andere Nicht-GPS-Standort-/Bewegungsmodule können zum Ermitteln der aktuellen Position (z. B. Koordinaten oder andere geographische Standortangaben) und Bewegung einer Client-Vorrichtung 1000 oder Host-Vorrichtung 1050 beitragen. Zusätzlich zu GPS kann eine Mobilfunknetz-Positionsbestimmung auf Grundlage von „Zellen-IDs” und eine WiFi-Positionsbestimmungstechnologie auf Grundlage eines WiFi-Netzwerks zur Unterstützung der Standortbestimmung verwendet werden. In einigen Ausführungsformen können Standort-Bewegungs-Module Sensorinformationen bei den vorstehenden Systemen verwenden, um die aktuelle Position der Host-Vorrichtung zu ermitteln. Die Standortinformationen können dann verwendet werden, um Datenteilverbindungen (Data Sharing Connections) nicht nur für eine aktuelle Host-Vorrichtung, die Daten teilt, sondern auch für andere Host-Vorrichtungen zu verwalten, die auf Grundlage einer Bewegung von Client-Vorrichtung zum Datenteilen verwendet werden können.

Der Prozessor 1002 und der Prozessor 1052 können eine oder mehrere Anwendungen auf ihren jeweiligen Vorrichtungen ausführen, einschließlich, ohne Einschränkung, eines Browsers, eines Adressbuchs, einer Kontaktliste, E-Mail-Sofortnachrichtenvennittlung, Textverarbeitung, Tastaturemulation, Widgets, JAVA-fähiger Anwendungen, Verschlüsselung, Verwaltung digitaler Rechte, Spracherkennung, Sprachwiedergabe, einer Musikwiedergabeeinheit (die aufgezeichnete Musik wiedergibt, die in einer oder mehreren Dateien, wie beispielsweise MP3- oder AAC-Dateien, gespeichert ist) usw. Die eine oder mehreren Anwendungen können zudem eine spezifische Anwendung zum Verwalten von Datenteil-Kommunikation einschließen.

Es kann andere Module oder Anweisungssätze geben, wie beispielsweise ein Grafikmodul, ein Zeitmodul usw. Zum Beispiel kann das Grafikmodul verschiedene herkömmliche Software-Komponenten zum Rendern, Animieren und Anzeigen grafischer Objekte (unter anderem Text, Webseiten, Symbole, Digitalbilder, Animationen und Ähnliches) auf einer Anzeigeoberfläche einschließen. In einem weiteren Beispiel kann es sich bei einem Zeitmessermodul um einen Software-Zeitmesser handeln. Das Zeitmessermodul kann auch in Hardware implementiert sein. Das Zeitmodul kann verschiedene Zeitmesser für eine beliebige Anzahl von Ereignissen unterhalten.

Ein E/A-Teilsystem, einschließlich verschiedener Eingabevorrichtungen, kann mit einem Anzeigesystem, wie beispielsweise der Anzeige 1008 oder der Anzeige 1058, gekoppelt sein. Diese Anzeigen können berührungsempfindlich sein und daher als Anzeigen und Eingabevorrichtungen arbeiten. Eine berührungsempfindliche Anzeige der Client-Vorrichtung 1000 kann somit sowohl als die Eingabevorrichtung 1006 als auch die Anzeige 1008 arbeiten. Eine berührungsempfindliche Anzeige des Hosts 1050 kann als die Anzeige 1058 und die Eingabevorrichtung 1056 arbeiten. Die Anzeige kann für den Benutzer als eine grafische Benutzeroberfläche (User Interface (UI)) eine visuelle Ausgabe darstellen. Die visuelle Ausgabe kann Text, Grafik, Video und jede Kombination davon einschließen. Die visuelle Ausgabe kann teilweise oder in ihrer Gesamtheit Benutzerschnittstellenobjekten entsprechen. Eine Anzeige kann LED-Technologie (lichtemittierende Dioden), LCD-Technologie (Flüssigkristallanzeige) oder LPD-Technologie (lichtemittierende Polymeranzeige) einschließen, obwohl in anderen Ausführungsformen andere Anzeigetechnologien verwendet werden können.

In einigen Ausführungsformen kann ein E/A-Teilsystem eine Anzeige und Benutzereingabevorrichtungen, wie beispielsweise eine Tastatur, eine Maus und/oder ein Trackpad, als Teil der einen oder mehrerer Eingabevorrichtungen 1006 oder der einen oder mehreren Eingabevorrichtungen 1056 einschließen. In einigen Ausführungsformen kann das E/A-Teilsystem eine berührungsempfindliche Anzeige einschließen. Eine berührungsempfindliche Anzeige kann auch Eingaben vom Benutzer auf Grundlage von haptischem oder Tastkontakt akzeptieren. In einigen Ausführungsformen bildet eine berührungsempfindliche Anzeige eine berührungsempfindliche Oberfläche, die Benutzereingaben akzeptiert. Die berührungsempfindliche Anzeige/Oberfläche (zusammen mit beliebigen zugeordneten Modulen und/oder Anweisungssätzen) erfasst einen Kontakt (und jede Bewegung oder jedes Abbrechen des Kontakts) auf der berührungsempfindlichen Anzeige und wandelt den erfassten Kontakt in eine Interaktion mit Benutzerschnittstellenobjekten um, wie beispielsweise einer oder mehreren programmierbaren Tasten (Soft Keys), die auf dem berührungsempfindlichen Bildschirm angezeigt werden, wenn der Kontakt auftritt. In einigen Ausführungsformen entspricht ein Kontaktpunkt zwischen der berührungsempfindlichen Anzeige und dem Benutzer einem oder mehreren Fingern des Benutzers. Der Benutzer kann unter Verwendung eines beliebigen geeigneten Objekts oder beliebiger geeigneter Gliedmaßen, wie beispielsweise eines Eingabestifts, Stifts, Fingers und so fort, Kontakt mit der berührungsempfindlichen Anzeige aufnehmen. Eine Oberfläche einer berührungsempfindlichen Anzeige kann unter Verwendung jeder geeigneten Berührungsempfindlichkeitstechnologie, einschließlich kapazitiver, resistiver und Infrarottechnologien und Technologien akustischer Oberflächenwellen, sowie anderer Näherungssensor-Anordnungen oder anderer Elemente zum Ermitteln eines oder mehrerer Kontaktpunkte mit der berührungsempfindlichen Anzeige einen Kontakt und jede Bewegung oder jeden Abbruch davon erfassen.

Ferner können die Eingabevorrichtungen einer bestimmten Client-Vorrichtung oder Host-Vorrichtung mit einer oder mehreren anderen physischen Steuervorrichtungen (nicht gezeigt), wie beispielsweise Druckschaltflächen oder -tasten, Tasten, Schaltern, Wippen, Tastwahlblöcken, Schiebeschaltern, Joysticks, LEDs usw., zum Steuern oder Durchführen verschiedener Funktionen, wie beispielsweise Energiesteuerung, Lautsprecherlautstärkensteuerung, Klingeltonlautstärke, Tastatureingabe, Bildlauf, Halten, Menü, Bildschirmsperre, Löschen und Beenden von Kommunikation und Ähnlichem, gekoppelt sein, In einigen Ausführungsformen können die Vorrichtungen zusätzlich zum berührungsempfindlichen Bildschirm ein vom Bildschirm separates Touchpad zum Aktivieren oder Deaktivieren bestimmter Funktionen einschließen. In einigen Ausführungsformen handelt es sich bei dem Touchpad um einen berührungsempfindlichen Bereich der Vorrichtung, der im Gegensatz zum berührungsempfindlichen Bildschirm keine visuellen Ausgaben anzeigt. Bei dem Touchpad kann es sich um eine berührungsempfindliche Oberfläche, die von der berührungsempfindlichen Anzeige separat ist, oder eine Erweiterung der durch die berührungsempfindliche Anzeige gebildeten berührungsempfindlichen Oberfläche handeln.

In einigen Ausführungsformen können einige oder alle hierin beschriebenen Operationen unter Verwendung einer auf der mobilen Vorrichtung des Benutzers ausgeführten Anwendung durchgeführt werden. Schaltungen, Logikmodule, Prozessoren und/oder weitere Komponenten können konfiguriert sein, verschiedene hierin beschriebene Operationen durchzuführen. Dem Fachmann ist ersichtlich, dass abhängig von der Implementierung eine solche Konfiguration durch Gestaltung, Einrichtung, Verbindung miteinander und/oder Programmieren der bestimmten Komponenten erreicht werden kann, und dass wiederum abhängig von der Implementierung eine konfigurierte Komponente für eine andere Operation umkonfigurierbar sein kann oder nicht. Zum Beispiel kann ein programmierbarer Prozessor durch Bereitstellen eines geeigneten ausführbaren Codes konfiguriert werden, kann eine dedizierte Logikschaltung durch geeignetes Verbinden von Logikgattern und anderen Schaltungselementen konfiguriert werden und so weiter.

Computerprogramme, die verschiedene Merkmale der vorliegenden Offenbarung enthalten, können auf verschiedenen computerlesbaren Datenspeichermedien codiert sein; geeignete Medien schließen Magnetplatten- oder -band, optische Datenspeichermedien, wie beispielsweise eine Compact Disk (CD) oder DVD (Digital Versatile Disk), Flash-Speicher und Ähnliches ein. Mit dem Programmcode codierte computerlesbare Datenspeichermedien können mit einer kompatiblen Vorrichtung gepackt oder separat von anderen Vorrichtungen bereitgestellt werden. Zudem kann Programmcode über drahtgebundene optische und/oder drahtlose Netzwerke entsprechend einer Vielfalt von Protokollen codiert und übermittelt werden, einschließlich des Internets, wodurch eine Verbreitung z. B. über Internet-Download, ermöglicht wird.

Zusätzlich zu vorstehend detailliert geschilderten Client-Vorrichtungen, wie beispielsweise den Client-Vorrichtungen 1000, und Host-Vorrichtungen, wie beispielsweise der Host-Vorrichtung 1050, können Aspekte von Netzwerken, wie beispielsweise des Netzwerks 1090, und Netzwerkverbindungen, wie beispielsweise der Netzwerkverbindung 1038, auch unter Verwendung verschiedener Vorrichtungen und Vorrichtungskomponenten implementiert werden. Während es sich zum Beispiel in bestimmten Ausführungsformen bei der Verbindung 1038 einfach um eine drahtlose P2P-Verbindung direkt zwischen der drahtlosen Schnittstelle 1012 und der drahtlosen Schnittstelle 1062 handeln kann, kann in anderen Ausführungsformen ein Kommunikationsnetzwerk verwendet werden, um die Verbindung 1038 zu implementieren. Solch eine Verbindung kann einen oder mehrere Zugangspunkte, Router, Servercomputer, eine oder mehrere Datenspeichervorrichtungen oder andere Vorrichtungen einschließen, um die Netzwerkverbindung 1038 zu implementieren. Jede dieser Vorrichtungen kann einen Prozessor, einen Speicher und oder eine Eingabe/Ausgabe-Struktur einschließen, wie vorstehend detailliert geschildert. Gleichermaßen können andere Netzwerkverbindungen Mobilfunkmasten, Schaltnetzwerke, Paketverarbeitungsvorrichtungen zusätzlich zu den vorstehend detailliert geschilderten Servercomputern und anderen Netzwerkinfrastrukturen einschließen, die alle Verarbeitungs-, Speicher- und Netzwerkschnittstellenkomponenten einschließen können.

In einigen Ausführungsformen können Verfahren, Systeme, Vorrichtungen und computerlesbare Medien konfiguriert sein, (durch eine Client-Vorrichtung, die eine drahtlose Schnittstelle zum Kommunizieren mit der Host-Vorrichtung, einen Speicher, einen Bewegungserfassungssensor und einen mit dem Speicher, dem Bewegungserfassungssensor und der drahtlosen Schnittstelle gekoppelten Prozessor umfasst) ein Auslösesignal zu empfangen, das angibt, dass ein Versuch, mit einem Netzwerk Daten auszutauschen, durchgeführt werden soll; als Reaktion auf das Auslösesignal über den Bewegungserfassungssensor eine der Client-Vorrichtung zugeordnete Geschwindigkeit und Bewegungsrichtung zu identifizieren; eine Ankündigungsnachricht zum Verbinden mit der Host-Vorrichtung zu erzeugen und der Host-Vorrichtung über die drahtlose Schnittstelle die Ankündigungsnachricht zum Anfordern einer drahtlosen Verbindung mit der Host-Vorrichtung bereitzustellen. In einigen Ausführungsformen kann die Ankündigungsnachricht die Geschwindigkeit und die Richtung und eine Anforderung, dass die Daten mit dem Netzwerk ausgetauscht werden, einschließen. In einigen Ausführungsformen kann ein Verbindungssignal von der Host-Vorrichtung kommend empfangen werden, das ein Angebot für die Client-Vorrichtung angibt, eine Verbindung mit der Host-Vorrichtung herzustellen.

In einigen Ausführungsformen kann das Verbindungssignal eine der Host-Vorrichtung entsprechende zweite Geschwindigkeit und zweite Richtung umfassen. In einigen Ausführungsformen kann auf Grundlage der zweiten Geschwindigkeit und der zweiten Richtung eine Verbindung mit der Host-Vorrichtung hergestellt werden. In einigen Ausführungsformen kann die Client-Vorrichtung einem ersten Benutzer zugeordnet sein, und die Host-Vorrichtung kann einem zweiten Benutzer zugeordnet sein, und der erste Benutzer kann sich vom zweiten Benutzer unterscheiden. In einigen Ausführungsformen kann mindestens als Reaktion auf das Auslösesignal ermittelt werden, ob sich der erste Benutzer vom zweiten Benutzer unterscheidet. In einigen Ausführungsformen kann die Anforderung der drahtlosen Verbindung mit der Host-Vorrichtung aufgehoben werden, wenn sich der erste Benutzer nicht vom zweiten Benutzer unterscheidet. In einigen Ausführungsformen kann das Auslösesignal auf Grundlage einer Menge an Zeit seit einer letzten Verbindung mit dem Netzwerk periodisch empfangen werden, oder bei dem Auslösesignal kann es sich um eine Angabe einer Auswahl handeln, die Daten mit dem Netzwerk auszutauschen. In einigen Ausführungsformen kann die drahtlose Schnittstelle eine Bluetooth-Funkeinheit und/oder eine WiFi-Funkeinheit umfassen.

In einigen Ausführungsformen können Verfahren, Systeme, Vorrichtungen und computerlesbare Medien konfiguriert sein, (durch eine Client-Vorrichtung, die eine drahtlose Schnittstelle zum Kommunizieren mit der Host-Vorrichtung, einen Speicher, einen Bewegungserfassungssensor und einen mit dem Speicher, dem Bewegungserfassungssensor und der drahtlosen Schnittstelle gekoppelten Prozessor umfasst) über die drahtlose Schnittstelle eine Verbindungsanforderung von der Host-Vorrichtung zu empfangen, wobei die Verbindungsanforderung Daten zum Erlangen einer der Host-Vorrichtung zugeordneten Eignungsmaßzahl einschließt; die Eignungsmaßzahl mit einem der Client-Vorrichtung zugeordneten Eignungsschwellenwert zu vergleichen und über die drahtlose Schnittstelle eine Verbindung mit der Host-Vorrichtung zum Übermitteln der Daten an das Netzwerk herzustellen, wenn die Eignungsmaßzahl größer ist als der Eignungsschwellenwert. Der Eignungsschwellenwert kann auf einer Zeit seit einer letzten Verbindung mit dem Netzwerk und/oder einer Wichtigkeit von mit dem Netzwerk auszutauschenden Informationen beruhen.

In einigen Ausführungsformen können die in der Verbindungsanforderung eingeschlossenen Daten die Eignungsmaßzahl einschließen. In einigen Ausführungsformen kann die Eignungsmaßzahl auf Grundlage der in der Verbindungsanforderung eingeschlossenen Daten ermittelt werden. In einigen Ausführungsformen kann der Eignungsschwellenwert auf der Zeit seit der letzten Verbindung mit dem Netzwerk beruhen, und der Eignungsschwellenwert kann abnehmen, wenn sich die Zeit seit der letzten Verbindung mit dem Netzwerk erhöht. In einigen Ausführungsformen kann der Eignungsschwellenwert auf der Wichtigkeit der Informationen beruhen, und der Eignungsschwellenwert kann abnehmen, wenn die Wichtigkeit der Informationen zunimmt. In einigen Ausführungsformen kann die Wichtigkeit der Informationen durch einen Benutzer der Client-Vorrichtung konfiguriert und/oder auf Grundlage von Inhalt der Informationen ermittelt werden. In einigen Ausführungsformen kann die Client-Vorrichtung zudem einen Bewegungserfassungssensor zum Erfassen einer Geschwindigkeit und Bewegungsrichtung der Client-Vorrichtung vor dem Empfang der Verbindungsanforderung umfassen. In einigen Ausführungsformen kann die Geschwindigkeit und Bewegungsrichtung der Client-Vorrichtung der Host-Vorrichtung zur Verwendung beim Berechnen der Eignungsmaßzahl bereitgestellt werden. In einigen Ausführungsformen kann die Client-Vorrichtung einem ersten Benutzer zugeordnet sein, und die Host-Vorrichtung kann einem sich vom ersten Benutzer unterscheidenden zweiten Benutzer zugeordnet sein.

In einigen Ausführungsformen kann die drahtlose Schnittstelle eine Bluetooth-Funkeinheit und/oder eine WiFi-Funkeinheit umfassen. In einigen Ausführungsformen können die Bluetooth-Funkeinheit und die WiFi-Funkeinheit konfiguriert sein, Verbindungsmaßzahlen zu berichten, umfassend der Kommunikation mit der Host-Vorrichtung zugeordnete Maßzahlen einer Stärkeanzeige eines empfangenen Signals, Geschwindigkeitsmaßzahlen der Host-Vorrichtung, Richtungsmaßzahlen der Host-Vorrichtung, der Kommunikation mit der Host-Vorrichtung zugeordnete Signal-Rausch-Verhältnis-Maßzahlen und/oder der Kommunikation mit der Host-Vorrichtung zugeordnete Stausteuerungsalgorithmus-Maßzahlen. In einigen Beispielen kann die Eignungsmaßzahl auf mindestens einer der Verbindungsmaßzahlen beruhen. In einigen Ausführungsformen können die Maßzahlen einer Stärkeanzeige eines empfangenen Signals in der Verbindungsanforderung von der Host-Vorrichtung eingeschlossen sein, und die Host-Vorrichtung kann fähig sein, die Eignungsmaßzahl zu erhöhen, wenn sich die Maßzahlen der Stärkeanzeige eines empfangenen Signals verringern. In einigen Ausführungsformen kann die Host-Vorrichtung fähig sein, die Eignungsmaßzahl zu erhöhen, wenn die Geschwindigkeitsmaßzahlen der Host-Vorrichtung und die Richtungsmaßzahlen der Host-Vorrichtung einer Geschwindigkeit und einer Richtung der Client-Vorrichtung ähnlicher werden. In einigen Ausführungsformen können die Signal-Rausch-Verhältnis-Maßzahlen eine der Kommunikation mit der Host-Vorrichtung zugeordnete Menge an Signalstärke in Hinblick auf ein Rauschen definieren, das während der Kommunikation mit der Host-Vorrichtung erfasst wird, und die Host-Vorrichtung kann fähig sein, die Eignungsmaßzahl zu erhöhen, wenn sich die Signal-Rausch-Verhältnis-Maßzahlen erhöhen. In einigen Ausführungsformen können die Stausteuerungsalgorithmus-Maßzahlen eine der Kommunikation mit der Host-Vorrichtung zugeordnete berechnete Menge an Stau definieren, und die Host-Vorrichtung kann fähig sein, die Eignungsmaßzahl zu erhöhen, wenn sich die Stausteuerungsalgorithmus-Maßzahlen erhöhen.

In einigen Ausführungsformen können Verfahren, Systeme, Vorrichtungen und computerlesbare Medien konfiguriert sein, (durch eine Host-Vorrichtung, die eine drahtlose Schnittstelle, einen Speicher und einen mit dem Speicher und der drahtlosen Schnittstelle gekoppelten Prozessor umfasst) über die drahtlose Schnittstelle eine Verbindungsanforderung von der Client-Vorrichtung zu empfangen, wobei die Ankündigungsnachricht eine Anforderung eines Austauschs von Daten mit dem Netzwerk einschließt; als Reaktion auf das Empfangen der Ankündigungsnachricht, eine Eignungsmaßzahl zu ermitteln, die eine Fähigkeit für die Host-Vorrichtung angibt, die Daten mit dem zweiten Netzwerk auszutauschen und die Daten zu einer Zeit des Empfangen der Ankündigungsnachricht mit der Client-Vorrichtung auszutauschen; die Eignungsmaßzahl mit einem Schwellenwert zu vergleichen und auf Grundlage des Vergleichs zu ermitteln, ob der Client-Vorrichtung eine Verbindungsanforderung bereitgestellt werden soll. In einigen Ausführungsformen kann die Eignungsmaßzahl auf Grundlage einer oder mehrerer Eigenschaften der Client-Vorrichtung ermittelt werden, wie sie aus der Ankündigungsnachricht und/oder einer oder mehrerer Verbindungseigenschaften der Host-Vorrichtung mit dem Netzwerk ermittelt wurden. In einigen Ausführungsformen kann die Verbindungsanforderung der Client-Vorrichtung bereitgestellt werden, wenn die Eignungsmaßzahl den Schwellenwert überschreitet. In einigen Ausführungsformen kann die Verbindung zwischen der Client-Vorrichtung und dem Netzwerk mindestens als Reaktion auf eine Angabe ermöglicht werden, dass die Client-Vorrichtung die Verbindungsanforderung akzeptiert. In einigen Ausführungsformen kann ermittelt werden, der Client-Vorrichtung die Verbindungsanforderung bereitzustellen, wenn die Eignungsmaßzahl größer ist als der Schwellenwert. In einigen Ausführungsformen kann die Verbindungsanforderung der Client-Vorrichtung unter Umständen nicht bereitgestellt werden, wenn die Eignungsmaßzahl kleiner ist als der Schwellenwert.

In einigen Ausführungsformen kann die Host-Vorrichtung zudem einen Bewegungserfassungssensor zum Erfassen einer Geschwindigkeit und Bewegungsrichtung der Host-Vorrichtung vor dem Empfang der Ankündigungsnachricht umfassen, und die Eignungsmaßzahl kann ferner auf mindestens einem von der Geschwindigkeit und/oder der Richtung der Bewegung der Host-Vorrichtung beruhen. In einigen Ausführungsformen kann die Client-Vorrichtung einem ersten Benutzer zugeordnet sein, und die Host-Vorrichtung kann einem zweiten Benutzer zugeordnet sein, und der erste Benutzer kann sich vom zweiten Benutzer unterscheiden. In einigen Ausführungsformen kann ermittelt werden, der Client-Vorrichtung die Verbindungsanforderung nicht bereitzustellen, wenn sich ein der Client-Vorrichtung zugeordneter erster Benutzer nicht von einem der Host-Vorrichtung zugeordneten zweiten Benutzer unterscheidet. In einigen Ausführungsformen können die eine oder mehreren Eigenschaften der Client-Vorrichtung mindestens eines von einer Geschwindigkeit der Client-Vorrichtung und/oder einer Richtung der Client-Vorrichtung umfassen. In einigen Ausführungsformen können die eine oder mehreren Verbindungseigenschaften der Host-Vorrichtung dem Empfang der Ankündigungsnachricht zugeordnete Maßzahlen einer Stärkeanzeige eines empfangenen Signals, dem Empfang der Ankündigungsnachricht zugeordnete Signal-Rausch-Verhältnis-Maßzahlen und/oder dem Empfang der Ankündigungsnachricht zugeordnete Stausteuerungsalgorithmus-Maßzahlen umfassen.

In einigen Ausführungsformen kann der Schwellenwert auf einer Wichtigkeit oder Priorität der Daten der Client-Vorrichtung beruhen. In einigen Ausführungsformen kann die Wichtigkeit oder Priorität der Daten der Client-Vorrichtung in der Ankündigungsnachricht empfangen werden. In einigen Ausführungsformen können die eine oder mehreren Verbindungseigenschaften der Host-Vorrichtung eine Änderung einer Maßzahl einer Stärkeanzeige eines empfangenen Signals von einer ersten Ankündigung zu einer zweiten Ankündigung, die von der Client-Vorrichtung kommend empfangen werden, umfassen. In einigen Ausführungsformen kann die Host-Vorrichtung zudem eine zweite Netzwerkschnittstelle zum Herstellen einer Verbindung mit dem Netzwerk umfassen, und die zweite Netzwerkschnittstelle kann eine Mobilfunkeinheit umfassen. In einigen Ausführungsformen können die eine oder mehreren Eigenschaften der Client-Vorrichtung eine Geschwindigkeit der Client-Vorrichtung und/oder eine Bewegungsrichtung der Client-Vorrichtung umfassen. In einigen Ausführungsformen kann von der Eignungsmaßzahl ermittelt werden, dass sie höher als eine Anfangsmenge ist, wenn die Geschwindigkeit der Client-Vorrichtung und die Bewegungsrichtung der Client-Vorrichtung ähnlich einer zweiten Geschwindigkeit und einer zweiten Bewegungsrichtung sind, wobei die zweite Geschwindigkeit und die zweite Bewegungsrichtung der Host-Vorrichtung entsprechen. In einigen Ausführungsformen können die eine oder mehreren Verbindungseigenschaften der Host-Vorrichtung eine Signalstärke bei dem Netzwerk und/oder einen Stau des Netzwerks umfassen. In einigen Ausführungsformen kann von der Eignungsmaßzahl ermitteln werden, dass sie höher als eine Anfangsmenge ist, wenn die Signalstärke bei dem Netzwerk über einem Signalstärkeschwellenwert liegt und/oder der Stau des Netzwerks unter einem Stauschwellenwert liegt.

Obwohl die Offenbarung in Hinblick auf spezifische Ausführungsformen beschrieben wurde, versteht es sich, dass die Offenbarung alle Modifikationen und Äquivalente innerhalb des Umfangs der folgenden Ansprüche abdecken soll.

11 ist ein Beispielblockdiagramm, das eine Vorrichtung zeigt, bei der es sich um eine Host-Vorrichtung, eine Client-Vorrichtung oder einen Server handeln kann. Eine mobile Vorrichtung 1100 schließt allgemein ein computerlesbares Medium 1102, ein Verarbeitungssystem 1104, ein Eingabe/Ausgabe-Teilsystem (E/A-Teilsystem) 1106, eine Drahtlos-Schaltlogik 1108 und eine Audioschaltlogik 1110 ein, die einen Lautsprecher 1150 und ein Mikrofon 1152 einschließt. Diese Komponenten können durch einen oder mehrere Kommunikationsbusse oder eine oder mehrere Signalleitungen 1103 gekoppelt sein. Bei der Vorrichtung 1100 kann es sich um jede tragbare elektronische Vorrichtung handeln, einschließlich eines handgeführten Computers, eines Tablet-Computers, eines Mobiltelefons, eines Laptop-Computers, einer Tablet-Vorrichtung, einer Medienwiedergabevorrichtung, eines persönlichen digitalen Assistenten (PDA), eines Schlüsselanhängers, eines Autoschlüssels, einer Zugangskarte, einer Multifunktionsvorrichtung, eines Mobiltelefons, einer tragbaren Spielvorrichtung oder Ähnlichem, einschließlich einer Kombination aus zwei oder mehreren dieser Elemente. In verschiedenen Ausführungsformen können eine erste Vorrichtung 600 oder eine zweite Vorrichtung 650 oder irgendein anderer/irgendein anderes/irgendeine andere Vorrichtung, Server, Zugangspunkt, Netzwerkelement oder eine andere Rechenvorrichtung oder ein anderes Element ganz oder teilweise unter Verwendung der Elemente von 11 implementiert werden.

Es sollte ersichtlich sein, dass die in 11 gezeigte Architektur nur ein bestimmtes Beispiel einer Architektur für die mobile Vorrichtung 1100 darstellt und dass die Vorrichtung 1100 mehr oder weniger Komponenten als gezeigt oder eine andere Konfiguration von Komponenten besitzen kann. Die verschiedenen in 11 gezeigten Komponenten können in Hardware, Software oder einer Kombination aus sowohl Hardware als auch Software implementiert sein, einschließlich einer oder mehrerer Signalverarbeitungs- und/oder anwendungsspezifischer integrierter Schaltungen (Application Specific Integrated Circuits).

Die Drahtlos-Schaltlogik 1108 wird verwendet, um Informationen über eine drahtlose Verbindung oder ein drahtloses Netzwerk zu einer herkömmlichen Schaltlogik von einer oder mehreren anderen Vorrichtungen, wie beispielsweise einem Antennensystem, einem HF-Transceiver, einem oder mehreren Verstärkern, einem Tuner, einem oder mehreren Oszillatoren, einem digitalen Signalprozessor, einem CODEC-Chipsatz, einem Speicher usw., zu senden und zu empfangen. In einigen Ausführungsformen ist die Drahtlos-Schaltlogik 1108 zum Herstellen und Unterhalten von Kommunikationen mit anderen Vorrichtungen unter Verwendung eines oder mehrerer Kommunikationsprotokolle fähig. Eine mobile Vorrichtung kann eine Drahtlos-Schaltlogik einschließen, die abhängig von der für die Kommunikation erforderlichen Reichweite über mehrere unterschiedliche Typen von drahtlosen Netzwerken kommunizieren kann.

Die Drahtlos-Schaltlogik 1108 ist mit dem Verarbeitungssystem 1104 über die Peripherieeinheitenschnittstelle 1116 gekoppelt. Die Schnittstelle 1116 kann herkömmliche Komponenten zum Herstellen und Unterhalten einer Kommunikation zwischen Peripherieeinheiten und dem Verarbeitungssystem 1104 einschließen. Durch die Drahtlos-Schaltlogik 1108 (z. B. in Spracherkennungs- oder Sprachbefehlsanwendungen) empfangene Sprach- und Dateninformationen werden über die Peripherieeinheitenschnittstelle 1116 an einen oder mehrere Prozessoren 1118 gesendet. Der eine oder die mehreren Prozessoren 1118 sind konfigurierbar, verschiedene Datenformate für ein oder mehrere auf dem Medium 1102 gespeicherte Anwendungsprogramme 1134 zu verarbeiten.

Die Peripherieeinheitenschnittstelle 1116 koppelt die Eingabe- und Ausgabeperipherieeinheiten der Vorrichtung mit dem Prozessor 1118 und dem computerlesbaren Medium 1102. Der eine oder die mehreren Prozessoren 1118 kommunizieren mit dem computerlesbaren Medium 1102 über eine Steuereinheit (Controller) 1120. Bei dem computerlesbaren Medium 1102 kann es sich um jede Vorrichtung oder jedes Medium handeln, die bzw. das Code und/oder Daten zur Verwendung durch einen oder mehrere der Prozessoren 1118 speichern kann. Das Medium 1102 kann eine Speicherhierarchie einschließen, die einen Cache, Hauptspeicher und sekundären Speicher einschließt. Die Speicherhierarchie kann unter Verwendung jeder Kombination von RAM (z. B. SRAM, DRAM, DDRAM), ROM, FLASH, magnetischen und/oder optischen Datenspeichervorrichtungen, wie beispielsweise Plattenlaufwerken, Magnetband, CDs (Compact Disks) und DVDs (Digital Video Discs), implementiert werden. In einigen Ausführungsformen können die Peripherieeinheitenschnittstelle 1116, der eine oder die mehreren Prozessoren 1118 und die Speichersteuereinheit 1120 auf einem einzigen Chip implementiert sein, wie beispielsweise dem Verarbeitungssystem 1104. In einigen anderen Ausführungsformen können sie auf separaten Chips implementiert sein.

Die mobile Vorrichtung 1100 schließt zudem ein Energiesystem 1142 ein, um die verschiedenen Hardware-Komponenten mit Energie zu versorgen. Das Energiesystem 1142 kann ein Energieverwaltungssystem, eine oder mehrere Energiequellen (z. B. eine Batterie/einen Akku, Wechselstrom (AC)), ein Wiederaufladesystem, eine Stromausfall-Erfassungsschaltung, einen Energiewandler oder -inverter, einen Energiestatusanzeiger (z. B. eine lichtemittierende Diode (LED)) und beliebige andere Komponenten einschließen, die der Erzeugung, Verwaltung und Verteilung von Energie in mobilen Vorrichtungen zugeordnet sind.

In einigen Ausführungsformen schließt die mobile Vorrichtung 1100 eine Kamera 1144 ein. In einigen Ausführungsformen schließt die mobile Vorrichtung 1100 Sensoren 1146 ein. Sensoren können Beschleunigungsmesser, Kompasse, Gyrometer, Drucksensoren, Audiosensoren, Lichtsensoren, Barometer und Ähnliches einschließen. Die Sensoren 1146 können verwendet werden, um Standortaspekte zu erfassen, wie beispielsweise akustische oder Lichtsignaturen eines Standorts.

In einigen Ausführungsformen kann die mobile Vorrichtung 1100 einen Empfänger des „Global Positioning System” (GPS) einschließen, der manchmal als eine GPS-Einheit 1148 bezeichnet wird. Eine mobile Vorrichtung kann ein Satellitennavigationssystem, wie beispielsweise das GPS, verwenden, um Positionsinformationen, Zeitmessinformationen, Höhe oder andere Navigationsinformationen zu erlangen. Während eines Betriebs kann die GPS-Einheit Signale von GPS-Satelliten empfangen, welche die Erde umkreisen. Die GPS-Einheit analysiert die Signale, um eine Laufzeit- und Entfernungsabschätzung vorzunehmen. Die GPS-Einheit kann die aktuelle Position (den aktuellen Standort) der mobilen Vorrichtung ermitteln. Auf Grundlage dieser Abschätzungen kann die mobile Vorrichtung eine Standortbestimmung, Höhe und/oder aktuelle Geschwindigkeit ermitteln. Bei einer Standortbestimmung kann es sich um geographische Koordinaten, wie beispielsweise Breiten- und Längeninformationen, handeln.

Der eine oder die mehreren Prozessoren 1118 führen verschiedene Software-Komponenten aus, die im Medium 1102 gespeichert sind, um verschiedene Funktionen für die Vorrichtung 1100 durchzuführen. In einigen Ausführungsformen können die Software-Komponenten ein Betriebssystem 1122, ein Kommunikationsmodul (oder einen Anweisungssatz) 1124, ein Standort/Bewegungs-Modul (oder einen Anweisungssatz) 1126 und weitere Anwendungen (oder Anweisungssätze) 1134 einschließen, wie beispielsweise eine Automobilstandortbestimmungs-App und eine Navigations-App. In einigen Beispielen können die weiteren Anwendungen 1134 Anwendungen einschließen, welche die vorstehend beschriebene Funktionalität ermöglichen, namentlich die Verwaltung von durch das Geschwindigkeitserfassungsmodul 5011, das Kurserfassungsmodul 510, das Ankündigungsmodul 511, das Geschwindigkeits-/Kurs-Modul 560 und/oder das Proxy-Angebotsmodul 561 von 5.

Bei dem Betriebssystem 1122 kann es sich um jedes geeignete Betriebssystem handeln, einschließlich iOS, Mac OS, Darwin, RTXC, LINUX, UNIX, OS X, WINDOWS oder ein eingebettetes Betriebssystem, wie beispielsweise VxWorks. Das Betriebssystem kann verschiedene Prozeduren, Anweisungssätze, Software-Komponenten und/oder Treiber zum Steuern und Verwalten allgemeiner Systemaufgaben (z. B. Speicherverwaltung, Datenspeichervorrichtungssteuerung, Energieverwaltung usw.) einschließen und ermöglicht eine Kommunikation zwischen verschiedenen Hardware- und Software-Komponenten.

Das Kommunikationsmodul 1124 ermöglicht eine Kommunikation mit anderen Vorrichtungen über einen oder mehrere externe Anschlüsse 1136 oder über eine Drahtlos-Schaltlogik 1108 und schließt verschiedene Software-Komponenten zum Abwickeln von Daten ein, die von der Drahtlos-Schaltlogik 1108 und/oder dem externen Anschluss 1136 kommend empfangen wurden. Der externe Anschluss 1136 (z. B. USB, FireWire, ein Lightning-Steckverbinder, ein 60-Pin-Steckverbinder usw.) ist dafür ausgelegt, direkt an andere Vorrichtungen oder indirekt über ein Netzwerk (z. B. das Internet, Wireless LAN usw.) gekoppelt zu werden.

Das Standort-/Bewegungsmodul 1126 kann dazu beitragen, die aktuelle Position (z. B. Koordinaten oder eine andere geographische Standortangabe) und Bewegung (z. B. die vorstehend beschriebenen Geschwindigkeits- und Kursinformationen) der mobilen Vorrichtung 1100 zu bestimmen. Moderne Positionsbestimmungssysteme schließen satellitengestützte Positionsbestimmungssysteme, wie beispielsweise GPS, Mobilfunknetz-Positionsbestimmung auf Grundlage von „Zellen-IDs” sowie WiFi-Positionsbestimmungstechnologie auf Grundlage eines WiFi-Netzwerks ein. Typischerweise ist GPS am genauesten, verbraucht jedoch oftmals mehr Energie als die anderen Positionsbestimmungssysteme. GPS beruht zudem auf der Sichtbarkeit mehrerer Satelliten, um eine Positionsabschätzung zu ermitteln, die in Innenräumen oder in „Straßenschluchten” unter Umständen nicht sichtbar sind (oder schwache Signale besitzen). In einigen Ausführungsformen empfängt das Standort-/Bewegungs-Modul 1126 Daten von der GPS-Einheit 1148 und analysiert die Signale, um die aktuelle Position, Geschwindigkeit und/oder den aktuellen Kurs der mobilen Vorrichtung zu ermitteln. In einigen Ausführungsformen kann das Standort-/Bewegungs-Modul 1126 einen aktuellen Standort, eine aktuelle Geschwindigkeit und/oder einen aktuellen Kurs unter Verwendung von WiFi- oder Mobilfunktechnologie ermitteln. Zum Beispiel können der Standort, die Geschwindigkeit und/oder der Kurs der mobilen Vorrichtung unter Verwendung von Informationen von nahen Zellenanlagen und/oder von WiFi-Zugangspunkten mit zusätzlicher Kenntnis von deren Standorten abgeschätzt werden. Den WiFi- oder Mobilfunksender identifizierende Informationen werden an der Drahtlos-Schaltlogik 1108 empfangen und an das Standort-/Bewegungsmodul 1126 weitergeleitet. In einigen Ausführungsformen empfängt das Standortmodul die eine oder die mehreren Sender-IDs. In einigen Ausführungsformen kann eine Folge von Sender-IDs mit einer Referenzdatenbank (z. B. einer Zellen-ID-Datenbank oder WiFi-Referenzdatenbank) verglichen werden, welche die Sender-IDs Positionskoordinaten entsprechender Sender zuordnet oder damit korreliert und geschätzte Positionskoordinaten für die mobile Vorrichtung 1100 auf Grundlage von zumindest zum Teil der Positionskoordinaten der entsprechenden Sender berechnet. Ungeachtet der spezifischen verwendeten Standortbestimmungstechnologie empfängt das Standort-/Bewegungsmodul 1126 Informationen, aus denen eine Standortbestimmung abgeleitet werden kann, interpretiert diese Informationen und gibt Standortinformationen, wie beispielsweise geographische Koordinaten, Breite/Länge oder andere Standortbestimmungsdaten, zurück.

Die eine oder mehreren Anwendungen 1134 auf der mobilen Vorrichtung können beliebige auf der Vorrichtung 1100 installierte Anwendungen einschließen, einschließlich, ohne Einschränkung, eines Browsers, eines Adressbuchs, einer Kontaktliste, E-Mail-Sofortnachrichtenvennittlung, Textverarbeitung, Tastaturemulation, Daten-Routing, Proxy-Verbindungsverwaltern, Widgets, JAVA-fähiger Anwendungen, Verschlüsselung, Verwaltung digitaler Rechte, Spracherkennung, Sprachwiedergabe, einer Musikwiedergabeeinheit (die aufgezeichnete Musik wiedergibt, die in einer oder mehreren Dateien, wie beispielsweise MP3- oder AAC-Dateien, gespeichert ist) usw.

Es kann weitere Module oder Anweisungssätze (nicht gezeigt) geben, wie beispielsweise ein Grafikmodul, ein Zeitmodul usw. Zum Beispiel kann das Grafikmodul verschiedene herkömmliche Software-Komponenten zum Rendern, Animieren und Anzeigen grafischer Objekte (unter anderem Text, Webseiten, Symbole, Digitalbilder, Animationen und Ähnliches) auf einer Anzeigeoberfläche einschließen. In einem weiteren Beispiel kann es sich bei einem Zeitmessermodul um einen Software-Zeitmesser handeln. Das Zeitmessermodul kann auch in Hardware implementiert sein. Das Zeitmodul kann verschiedene Zeitmesser für eine beliebige Anzahl von Ereignissen unterhalten.

Das E/A-Teilsystem 1106 kann mit einem Anzeigesystem (nicht gezeigt) gekoppelt sein, bei dem es sich um eine berührungsempfindliche Anzeige handeln kann. Die Anzeige zeigt dem Benutzer eine visuelle Ausgabe in einer GUI an. Die visuelle Ausgabe kann Text, Grafik, Video und jede Kombination davon einschließen. Die visuelle Ausgabe kann teilweise oder in ihrer Gesamtheit Benutzerschnittstellenobjekten entsprechen. Eine Anzeige kann LED-Technologie (lichtemittierende Dioden), LCD-Technologie (Flüssigkristallanzeige) oder LPD-Technologie (lichtemittierende Polymeranzeige) einschließen, obwohl in anderen Ausführungsformen andere Anzeigetechnologien verwendet werden können.

In einigen Ausführungsformen kann das E/A-Teilsystem 1106 eine Anzeige und Benutzereingabevorrichtungen, wie beispielsweise eine Tastatur, eine Maus und/oder ein Trackpad, einschließen. In einigen Ausführungsformen kann das E/A-Teilsystem 1106 eine berührungsempfindliche Anzeige einschließen. Eine berührungsempfindliche Anzeige kann auch Eingaben vom Benutzer auf Grundlage von haptischem oder Tastkontakt akzeptieren. In einigen Ausführungsformen bildet eine berührungsempfindliche Anzeige eine berührungsempfindliche Oberfläche, die Benutzereingaben akzeptiert. Die berührungsempfindliche Anzeige/Oberfläche (zusammen mit beliebigen zugeordneten Modulen und/oder Anweisungssätzen im Medium 1102) erfasst einen Kontakt (und jede Bewegung oder ein Abbrechen des Kontakts) auf der berührungsempfindlichen Anzeige und wandelt den erfassten Kontakt in eine Interaktion mit Benutzerschnittstellenobjekten, wie beispielsweise einer oder mehreren programmierbaren Tasten (Soft Keys), die auf dem berührungsempfindlichen Bildschirm angezeigt werden, um, wenn der Kontakt auftritt. In einigen Ausführungsformen entspricht ein Kontaktpunkt zwischen der berührungsempfindlichen Anzeige und dem Benutzer einem oder mehreren Fingern des Benutzers. Der Benutzer kann unter Verwendung eines beliebigen geeigneten Objekts oder beliebiger geeigneter Gliedmaßen, wie beispielsweise eines Eingabestifts, Stifts, Fingers und so fort, Kontakt mit der berührungsempfindlichen Anzeige aufnehmen. Eine Oberfläche einer berührungsempfindlichen Anzeige kann unter Verwendung jeder geeigneten Berührungsempfindlichkeitstechnologie, einschließlich kapazitiver, resistiver und Infrarottechnologien und Technologien akustischer Oberflächenwellen, sowie anderer Näherungssensor-Anordnungen oder anderer Elemente zum Ermitteln eines oder mehrerer Kontaktpunkte mit der berührungsempfindlichen Anzeige einen Kontakt und jede Bewegung oder jeden Abbruch davon erfassen.

Ferner kann das E/A-Teilsystem mit einer oder mehreren anderen physischen Steuervorrichtungen (nicht gezeigt), wie beispielsweise Druckschaltflächen oder -tasten, Tasten, Schaltern, Wippen, Tastwahlblöcken, Schiebeschaltern, Joysticks, LEDs usw., zum Steuern oder Durchführen verschiedener Funktionen, wie beispielsweise Energiesteuerung, Lautsprecherlautstärkensteuerung, Klingeltonlautstärke, Tastatureingabe, Bildlauf, Halten, Menü, Bildschirmsperre, Löschen und Beenden von Kommunikation und Ähnlichem, gekoppelt sein. In einigen Ausführungsformen kann die Vorrichtung 1100 zusätzlich zum berührungsempfindlichen Bildschirm ein (nicht gezeigtes) Touchpad zum Aktivieren oder Deaktivieren bestimmter Funktionen aufweisen. In einigen Ausführungsformen handelt es sich bei dem Touchpad um einen berührungsempfindlichen Bereich der Vorrichtung, der im Gegensatz zum berührungsempfindlichen Bildschirm keine visuellen Ausgaben anzeigt. Bei dem Touchpad kann es sich um eine berührungsempfindliche Oberfläche, die von der berührungsempfindlichen Anzeige separat ist, oder eine Erweiterung der durch die berührungsempfindliche Anzeige gebildeten berührungsempfindlichen Oberfläche handeln.

In einigen Ausführungsformen können einige oder alle hierin beschriebenen Operationen unter Verwendung einer auf der mobilen Vorrichtung des Benutzers ausgeführten Anwendung durchgeführt werden. Schaltungen, Logikmodule, Prozessoren und/oder weitere Komponenten können konfiguriert sein, verschiedene hierin beschriebene Operationen durchzuführen. Dem Fachmann ist ersichtlich, dass abhängig von der Implementierung eine solche Konfiguration durch Gestaltung, Einrichtung, Verbindung miteinander und/oder Programmieren der bestimmten Komponenten erreicht werden kann, und dass wiederum abhängig von der Implementierung eine konfigurierte Komponente für eine andere Operation umkonfigurierbar sein kann oder nicht. Zum Beispiel kann ein programmierbarer Prozessor durch Bereitstellen eines geeigneten ausführbaren Codes konfiguriert werden, kann eine dedizierte Logikschaltung durch geeignetes Verbinden von Logikgattern und anderen Schaltungselementen konfiguriert werden und so weiter.

Computerprogramme, die verschiedene Merkmale der vorliegenden Offenbarung enthalten, können auf verschiedenen computerlesbaren Datenspeichermedien codiert sein; geeignete Medien schließen Magnetplatten- oder -band, optische Datenspeichermedien, wie beispielsweise eine Compact Disk (CD) oder DVD (Digital Versatile Disk), Flash-Speicher und Ähnliches ein. Mit dem Programmcode codierte computerlesbare Datenspeichermedien können mit einer kompatiblen Vorrichtung gepackt oder separat von anderen Vorrichtungen bereitgestellt werden. Zudem kann Programmcode über drahtgebundene optische und/oder drahtlose Netzwerke entsprechend einer Vielfalt von Protokollen codiert und übermittelt werden, einschließlich des Internets, wodurch eine Verbreitung z. B. über Internet-Download, ermöglicht wird.

Obwohl die Offenbarung in Hinblick auf spezifische Ausführungsformen beschrieben wurde, versteht es sich, dass die Offenbarung alle Modifikationen und Äquivalente innerhalb des Umfangs der folgenden Ansprüche abdecken soll.