HINTERGRUND DER ERFINDUNG
Unter Datenprotokollierung ist in der vorliegenden Erfindung der Prozess
zur Erfassung von Daten von mobilen Einheiten zu verstehen, der zur Gewinnung von
Betreiberdaten über die Verwendung der mobilen Einheit durchgeführt wird.
Zum Beispiel stellen die Position, der Standort und die Geschwindigkeit eines Fahrzeugs
in ihrem zeitlichen Verlauf brauchbare Protokolldaten dar, die zur Berechnung von
Haftpflichtversicherungen für dieses Fahrzeug genutzt werden können. Bei
einem anderen Beispiel liefert die zeit- und standortabhängige Signalstärke
eines mobilen Kommunikationssystems brauchbare Protokolldaten, anhand derer eine
Telefongesellschaft ihre Sendestationen planen kann. Solche Daten werden durch ein
integriertes mobiles System gesammelt, das Informationen zu Position und Signalstärke
von Quellen nutzt, die das Netz selbst (z.B. GSM) und globale Ortungssatelliten
(GPS) beinhalten. Protokolldaten werden zunächst in dem integrierten mobilen
System gespeichert und später an das zentrale System übertragen. Die Übertragung
erfolgt über ein Mobilfunknetz oder eine andere drahtlose Technologie.
Die Übertragung der Protokolldaten kann auf Abruf erfolgen und
wenn die Einheit bereit ist, fordert sie die Verfügung über den Übertragungskanal
an. Ein solches System wird in der US-Patentschrift 6 263 268 beschrieben, wo ein
mobiles Kraftfahrzeug-Telemetriesystem dargelegt wird, dass in ein Fahrzeug eingebaut
werden kann. Das System beinhaltet eine Diagnostikeinheit zur Überwachung der
Betriebsfunktionen eines Fahrzeugs und einen Server, der mit der Diagnostikeinheit
in Verbindung steht, um Betriebsdaten zu empfangen. Die Betriebsdaten werden in
den Server hochgeladen, wenn diese bereitstehen.
In der Internationalen Patentanmeldung 02/03 350 wird ein weiteres
bedarfsgesteuertes Abrufsystem (Download on demand) mit einem Verfahren und einem
System zur Überwachung von Mobiltelefonverbindungen beschrieben. Das Verfahren
ruft von einer mobilen Einheit in einem Fahrzeug kontinuierlich das Verkehrsaufkommen
und die Fahrzeuggeschwindigkeit auf Straßen innerhalb des Sendebereichs eines
Mobilfunknetzes ab. Die Daten werden direkt von der oberen Kommunikationsebene in
einem Mobilfunknetz abgerufen, sodass die Daten nicht nach einem Zeitplan oder nach
Vereinbarung von der mobilen Einheit heruntergeladen werden.
Ein Problem beim Herunterladen von Protokolldaten auf Anforderung
besteht darin, dass eine Konfliktsituation eintreten kann, wenn mehrere Einheiten
die Verfügung über einen einzelnen Kanal zum Herunterladen (Download)
anfordern und zur gleichen Zeit herunterzuladen versuchen. Zu jedem Zeitpunkt ist
nur eine Anforderung je Kanal erfolgreich, während die anderen Anforderungen
erfolglos bleiben. Die erfolglosen Anforderungen nutzen zum Herunterladen bestimmte
Ressourcen, sodass für irreguläre Anforderungen mehr Ressourcen genutzt
werden als für reguläre Anforderungen. Eine Möglichkeit zur Regelung
des Herunterladens besteht darin, die Anforderungen so zu planen, dass sie zu bestimmten
Zeitpunkten ankommen.
In der US-Patentanmeldung 0 028 313 werden ein verteiltes Telemetrieverfahren
und -system beschrieben, bei denen die Erfassung von Parameterwerten durch Mobiltelefonbenutzer
erfolgt, indem die Parameterwerte zusammen mit Standortdaten der Benutzer an ein
Servicesystem übertragen werden. Die Aufgabe eines Abfrageterminplaners besteht
unter anderem darin zu organisieren, wann der gewünschte Wert erfasst werden
soll. Der Wert wird sofort oder nach Auslösung durch beispielsweise einen geplanten
Zeitpunkt an das Servicesystem gesendet.
In WO 01/31 945 wird ein anderes Verfahren zur Ablaufplanung von Übertragungen
beschrieben.
Das Problem bei der geplanten Datenprotokollierung durch Fernübertragung
besteht darin, dass das gleichzeitige Heraufladen (Upload) durch mehrere Einheiten
zur Überlastung eines Servers führen kann, der solche Protokolldaten sammelt,
wenn die Bandbreite von der vorhergesagten Bandbreite abweicht.
ZUSAMMENFASSUNG DER ERFINDUNG
Gemäß einem ersten Aspekt der vorliegenden Erfindung wird
ein Datenprotokollierungsverfahren nach Anspruch 1 bereitgestellt.
Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird
ein Datenprotokollierungssystem nach Anspruch 8 zum Übertragen von Protokolldaten
von einer Vielzahl ferner Einheiten über ein Funknetz an einen Server bereitgestellt.
Gemäß einem dritten Aspekt der vorliegenden Erfindung wird
ein Computerprogrammprodukt nach Anspruch 9 zum Übertragen von Protokolldaten
von einer Vielzahl ferner Einheiten über ein Funknetz an einen Server bereitgestellt.
Gemäß einem vierten Aspekt der vorliegenden Erfindung wird
ein Dienst nach Anspruch 10 zum Zusammenführen der Protokolldaten von einer
Vielzahl ferner Einheiten über ein Funknetz in einem Server und zum Liefern
der zusammengeführten Protokolldaten auf Anforderung an einen anfordernden
Benutzer des Dienstes bereitgestellt.
Gemäß einem fünften Aspekt der vorliegenden Erfindung
wird nach Anspruch 11 ein anfordernder Benutzer des Dienstes zum Empfangen konsolidierter
Protokolldaten durch einen Internetdienst von einer Vielzahl ferner Einheiten über
ein Funknetz bereitgestellt.
Vorteilhafterweise wird bei der Berechnung des Übertragungszeitraums
die Übertragungskapazität des Servers berücksichtigt.
Besonders vorteilhaft wird, ausgehend von früheren Daten der
Übertragungskapazität des Servers während eines ähnlichen Zeitraums,
eine Schätzung durchgeführt.
Vorzugsweise wird für eine bestimmte Einheit mehr als nur ein
Übertragungszeitraum berechnet, sodass die Daten heruntergeladen werden können.
Eine solche Einheit unterliegt variablen Signalstärkebedingungen.
Besonders bevorzugt teilt die Einheit dem Server vor Übertragungsbeginn
den tatsächlichen Übertragungsumfang mit. Wenn der tatsächliche Übertragungsumfang
deutlich vom vorhergesagten Übertragungsumfang abweicht, berechnet der Server
den Ablaufplan neu.
Von Vorteil ist, dass der Server den zeitlichen Verlauf der Funksignalstärke
für jeden Client speichert.
Besonders vorteilhaft ist es, dass der Server basierend auf der Signalstärke
zu einem früheren Zeitpunkt, zum Beispiel zum selben Zeitpunkt der Vorwoche,
eine Schätzung der zu erwartenden Funksignalstärke für einen bestimmten
Client vornimmt. Wenn die Signalstärke für die gesamte oder den größten
Teil der geplanten Übertragung ausreicht, kann der Server von einer geringen
Unterbrechungswahrscheinlichkeit ausgehen. Wenn es hingegen in dieser früheren
Übertragung zu einer Unterbrechung gekommen ist, kann der Server von einer
hohen Unterbrechungswahrscheinlichkeit ausgehen.
Von Vorteil ist, dass der Server den zeitlichen Verlauf der Funkpositionsdaten
für jeden Client speichert und eine Schätzung der zu erwartenden Funksignalstärke
vornimmt, indem er ausgehend von der aktuellen Position, Fahrtrichtung und Reisegeschwindigkeit
eine zu erwartende Position schätzt.
Noch vorteilhafter ist, dass das Verfahren ferner Folgendes umfasst:
Erfassen der aktuellen Funksignalstärke vor der Übertragung von Protokolldaten;
und
Neuplanung des Übertragungszeitraums, wenn die aktuelle Funksignalstärke
einen vorgegebenen Schwellenwert unterschreitet.
Vorzugsweise wird das Verfahren nach Vorgabe einer definierten Priorität
durchgeführt.
Noch bevorzugter wird die Priorität der Einheit durch deren Funksignalstärke
definiert.
Von Vorteil ist, dass die Priorität einer Einheit durch das Volumen
der zu übertragenden Daten definiert wird.
Noch vorteilhafter ist, dass ein Reservekanal für Serviceinformationen
bereitgestellt wird. Wenn eine Einheit erkennt, dass sie noch nicht abgerufen wurde,
aber jetzt Daten übertragen muss, kann sie von sich aus den Server kontaktieren,
um eine höhere Priorität zum Abrufen anzufordern. Für diese Anforderung
und die Datenübertragung muss ein anderer Übertragungskanal zum Server
genutzt und sichergestellt werden, dass andere Tasks mit niedrigerer Priorität
die Anforderung nicht blockieren.
Von Vorteil ist, dass einige Einheiten nicht nach Plan, sondern auf
Anforderung herunterladen. Dadurch können die Vorteile des Herunterladens auf
Anforderung sowie der angepassten Ablaufplanung genutzt werden. Bestimmte Einheiten
können deaktiviert werden, sodass sie in diesem Zustand nicht in das Ablauf-
und Planungssystem einbezogen werden müssen. Sie werden als nicht geplante
Einheiten betrachtet, und die Protokolldaten werden auf Anforderung und bei Verfügbarkeit
heruntergeladen.
BESCHREIBUNG DER ZEICHNUNGEN
Zum vollständigen Verständnis dieser sowie weiterer Aspekte
der vorliegenden Erfindung wird im Folgenden eine Ausführungsart der Erfindung
lediglich beispielhaft unter Bezug auf die beiliegenden Zeichnungen beschrieben,
wobei:
1 eine schematische Darstellung der vorliegenden Ausführungsart
der Erfindung ist;
2 eine schematische Darstellung einer durch die vorliegende
Ausführungsart der Erfindung gespeicherten Struktur der Profildaten ist;
3 eine schematische Darstellung einer durch die vorliegende
Ausführungsart der Erfindung gespeicherten Struktur der Plandaten ist; und
4 ein Verfahren gemäß einer ersten Ausführungsart
der vorliegenden Erfindung ist.
BESCHREIBUNG DER AUSFÜHRUNGSARTEN
1 zeigt ein Datenprotokollierungssystem,
das Folgendes umfasst: einen Server 300, der über ein mobiles Netz
mit einer Vielzahl ferner Clienteinheiten 100A ... N verbunden ist. Die
erste Einheit wird mit 100A, die zweite mit 100B und so weiter
bis 100N bezeichnet, wobei N in der Größenordnung von Millionen
liegt. Jede Einheit 100A ... N umfasst Folgendes: Profildaten
102; eine Einheitenprofilauswertungseinheit 104; Protokolldaten
106; eine Einheitensteuerung 108; und eine Datenaustauscheinheit
110. Der Server 300 umfasst Folgendes: Profildaten 301;
eine Einheitenprofilauswertungseinheit 302; einen Terminplaner
304; einen Ablaufplan 306; eine Aktualisierungskomponente
308; eine Datenaustauscheinheit 310; eine Bandbreitenvorhersageeinheit
311; und eine Uploadkomponente 312. Die Protokolldaten werden
in einem Datenspeicher 400 gespeichert.
Die Einheitenprofilauswertungseinheit 302 speichert jedes
von den Clienteinheiten erfasste Einheitenprofil 102.
Ein Einheitenprofil 102 beinhaltet Geräteeigenschaften,
aber nicht die Daten zum Herunterladen selbst. Gemäß 2
umfasst das Einheitenprofil 102 bei der bevorzugten Ausführungsart
für jede Einheit zwei Profile:
Erstens ein Konnektivitätsprofil 103A; und zweitens ein Downloadprofil
103B.
Das Konnektivitätsprofil 103A beinhaltet den zeitlichen
Verlauf der Signalstärke des GSM-Signals und umfasst eine Datenstruktur mit
einem Feld Datum und Uhrzeit und einem Feld GSM-Signal. Bei einer weiteren Ausführungsart
wird die geografische Position der Einheit in das Konnektivitätsprofil einbezogen,
wobei dieses von GPS-Daten oder trigonometrischen Daten von GSM-Empfängern
abgeleitet wird. Der Status der Einheit wird im Wochenverlauf aufgezeichnet, weil
sich hier am wahrscheinlichsten ein Muster zeigt. Bei anderen Ausführungsarten
kann jedoch statt dessen oder zusätzlich auch ein längerer Zeitraum gewählt
werden. Eine Datenerfassung über einen Tag wird normalerweise als Minimum angesehen,
obwohl der Zeitraum theoretisch auch kürzer sein kann, während die Daten
von drei Wochen bessere Durchschnittswerte liefern. Wenn Daten von mehr als vier
Wochen gesammelt werden, werden die Speicherressourcen der Einheitenprofilauswertungseinheit
302 zu stark beansprucht.
Die Menge der zuvor gesammelten Daten erlaubt zumindest eine Schätzung
der nächsten herunterzuladenden Datenmengen. Die Einheitenprofilauswertungseinheit
302 liefert Informationen an den Einheitenterminplaner 304, damit
dieser eine Abschätzung der Verbindungszeit vornehmen kann. Darüber hinaus
liefert sie auch Informationen zur GSM-Signalstärke, sodass ungeeignete Verbindungszeiten
abgeschätzt werden können.
Im Downloadprofil 103B ist für jede Einheit ein Datensatz
von jedem Datendownload gespeichert, der den Downloadzeitpunkt und die Menge der
beim Herunterladen gesammelten Daten umfasst.
Der Terminplaner 304 erstellt den Plan 306 durch
Zuweisen von Zeiträumen für jede einzelne Einheit zunächst aufgrund
des Datenumfangs, der bei der Übertragung für jede Einheit zu erwarten
ist. Der Terminplaner 304 empfängt von der Datenaustauscheinheit
310 die aktuelle Netzauslastung und von der Komponente 311 die
Bandbreitevorhersageinformationen. Wenn der Terminplaner 304 erkennt, dass
die aktuelle Netzauslastung größer oder wesentlich geringer ist als die
zum Erstellen des Plans 306 verwendete Netzauslastung, aktualisiert der
Terminplaner 304 den Plan 306. Der Terminplaner 304 arbeitet
im Wesentlichen mit 80%iger Kapazitätsauslastung, sodass Überlastungen
vorgebeugt werden kann und der Plan nicht ständig geändert werden muss.
Der Plan 306 (siehe 3) ist eine
Datenstruktur, in der für jede Einheit ein Downloadplan gespeichert ist. Für
jedes Herunterladen gibt es in der Datenbank einen Datensatz mit vier Feldern: 1)
Übertragungszeitraum (Start- und Endzeitpunkt); 2) Einheitenkennung; und 3)
Übertragungsumfang.
Die Aktualisierungskomponente 308 hält eine Einheit
bezüglich ihres geplanten Zeitpunkts auf dem neuesten Stand, indem sie Nachrichten
mit den neuesten Einzelheiten zum zeitlichen Ablauf und wichtige Änderungen
am Plan 306 übermittelt. Die Aktualisierungskomponente hält eine
offline geschaltete Einheit auf dem Laufenden und informiert diese über die
Datenaustauscheinheit 310, sobald sie online geht.
Die Aktualisierungskomponente 308 setzt sich mit dem Terminplaner
304 in Verbindung, wenn die Einheit keinen freien Speicher mehr hat oder
zu lange kein Herunterladen durchgeführt hat. Der Terminplaner 304
trägt eine Änderung in den Plan 306 ein, informiert die Aktualisierungskomponente
308 und aktualisiert den Plan 306 mit der Bestätigung von
den Einheiten 100A ... N.
Die Bandbreitenvorhersagekomponente 311 überwacht die
laufenden Downloadaktivitäten von aktuellen Datenübertragungen, die über
die Datenaustauscheinheit 310 abgewickelt werden. Anhand dieser Informationen
kann die aktuelle Downloadbandbreite überwacht und für künftige Planungen
gespeichert werden. Diesen Daten dienen dann zum Erstellen einer Vorhersage der
Netzkapazität für den Terminplaner 304, der daraufhin die Datenübertragung
durch Abschalten von Einheiten drosseln oder die verfügbare Bandbreite durch
Zuschalten weiterer Einheiten besser nutzen kann. Bei einer anderen Ausführungsart
erhält die Bandbreitenkomponente Vorhersageinformationen von einem Netzbetreiber.
Die Uploadeinheit 312 ermittelt, wann Clienteinheiten mit
neuer Software aktualisiert werden müssen. Ausgehend vom Plan 306
stellt die Uploadeinheit fest, welcher andere Datenverkehr möglicherweise die
Datenübertragungsleitungen 210, 206 nutzt. Der Plan
306 wirkt sich auf Entscheidung aus, wann Software zu den Clienteinheiten
hochgeladen werden soll, da jedes Herunterladen die „effektive" Datenübertragungsbandbreite
für das Hinaufladen von Daten verringert.
Im Folgenden wird die Clienteinheit 100A beschrieben. Die
Clienteinheiten 100B ... N weisen dieselben Komponenten, aber eine andere
Kennung auf. Jede Einheit 100A ... N umfasst Folgendes: Profildaten
102; eine Einheitenprofilauswertungseinheit 104; Protokolldaten
106, eine Einheitensteuerung 108; und eine Datenaustauscheinheit
110.
Die durch die Einheitenprofilkomponente 104 gespeicherten
Profildaten 102 enthalten ein Profil der Konnektivität und der Datenmengen
für die Einheit. Diese Profildaten 102 werden zum Server
300 gesendet, damit der Terminplaner 304 die Ablaufplanung und
die Prioritäten planen kann.
Das Datenprotokoll 106 enthält die zum Server
300 zu übertragenden Protokolldaten, kann aber auch noch andere spezielle
Daten enthalten, die von der Einheitensteuerung verwendet werden. Die entscheidende
Aufgabe besteht darin, Protokolldaten 106 vom Client über den Server
300 zum Datenspeicher 400 zu übertragen.
Die Einheitensteuerung 108 ist für die Koordinierung
der Protokolldaten 106 zuständig und steuert den Datendownload zum
Server 300 und die Ankündigung der Datenvolumina. Diese Einheitensteuerung
108 löst ausgehend von dem vom Server 300 empfangenen geplanten
Zeitpunkt die Datenverbindung und die Übertragung der Datenmengen aus. Die
Einheitensteuerung 108 empfängt die Ablaufinformation des Plans
306 von der Aktualisierungskomponente 308. Vor Beginn des Herunterladens
der Protokolldaten führt die Einheitensteuerung 108 zur Überprüfung
der endgültigen Einstellungen über die Aktualisierungskomponente
308 und den Datenaustauschmechanismus 310/110 eine Kommunikation
mit dem Terminplaner 304 durch. Im Idealfall wird jeder Client
100A ... N durch dieselbe Version der Einheitensteuerung 108 gesteuert,
es kann jedoch auch vorkommen, dass bestimmte Einheiten durch die Uploadeinheit
312 aktualisiert wurden, während andere die ältere Version verwenden.
Softwareaktualisierungen können zwischen dem Server 300 und den Clients
100A ... N über dieselben Kommunikationsleitungen wie die Daten übertragen
werden.
Unter Bezug auf 4 wird das Verfahren
400 der Ausführungsart beschrieben. Der Terminplaner 304
wählt in Schritt 402 aus den verfügbaren Einheiten in den Profildaten
301 eine erste Clienteinheit aus. Jede Einheit hat zuvor Kontakt zum Server
aufgenommen und sich in den Profildaten 301 als verfügbar registriert.
Jede Einheit sendet Informationen über ihre zukünftig erwarteten Downloadgrößen,
die dann in einem Downloadprofil 103B gespeichert werden. Die Einheitenprofilauswertungseinheit
302 erzeugt für jede neu registrierte Einheit neue Profildatenstrukturen
und speichert die Kontaktdaten der Einheit im Einheitenprofil. In der betreffenden
Datenstruktur des Downloadprofils ist jede künftige Downloadgröße
gespeichert.
In Schritt 404 entnimmt der Terminplaner 304 den
Downloadprofilen den Übertragungsumfang für Protokolldaten.
In Schritt 406 berechnet der Terminplaner 304 aus
der Verfügbarkeit der Downloadbandbreite des Servers 300 und der in
Schritt 404 geschätzten Übertragungsgröße der Protokolldaten
den künftigen Übertragungszeitraum der Einheit. Von der Berechnung sind
bestimmte Zeiträume ausgenommen, die in Schritt 410 wegen zu geringer
Signalstärke ausgeschlossen wurden.
In Schritt 408 schätzt der Terminplaner 304
anhand des Konnektivitätsprofils der Einheit die Signalstärke. Die einfachste
Ausführungsart verwendet hierzu die Signalstärke einer vorhergehenden
Woche, während eine andere Ausführungsart die gemittelte Signalstärke
der letzten zwei oder drei Wochen verwendet.
In Schritt 410 vergleicht der Terminplaner 304 das
geschätzte Signal mit einem Schwellenwert. Wenn die geschätzte Signalstärke
den Schwellenwert unterschreitet, reicht die Signalstärke nicht für eine
sichere Datenübertragung aus, und das Verfahren springt zurück zu Schritt
406, um einen neuen Übertragungszeitraum zu berechnen.
In Schritt 412 speichert der Terminplaner 304 den
Übertragungszeitraum im Plan 306. Zu diesem Zeitpunkt sendet die Aktualisierungseinheit
308 den Übertragungszeitraum an die betreffende Einheit.
Dann führt der Terminplaner 304 in Schritt
413 für jede Einheit 100A ... N die Schritte 402
bis 412 aus, sodass der Plan 306 für jede Einheit
100A ... N einen geplanten Zeitpunkt und eine geplante Downloadgröße
enthält.
In Schritt 414 wählt der Plan 306 eine Einheit
aus, deren Übertragungszeitraum gerade bevorsteht.
In Schritt 415 erhält der Terminplaner 304
durch eine Verbindung über die Datenaustauscheinheit
110/310 mit der Einheitensteuerung 108 einen aktuellen
Übertragungsumfang. Die Einheitensteuerung fragt die Protokolldaten
106 ab und gibt den Wert zurück.
In Schritt 416 berechnet der Terminplaner 304 den
Übertragungszeitraum zu diesem späteren Zeitpunkt neu.
In Schritt 418 erhält der Terminplaner 304
vor der Übertragung die aktuelle Signalstärke.
In Schritt 420 prüft der Terminplaner 304,
ob die erhaltene Signalstärke einen Schwellenwert unterschreitet. Ein typischer
Schwellenwert kann bei 20 % der maximalen Signalstärke liegen, jedoch hängt
dieser Wert von den realen Betriebsbedingungen ab. Wenn der erhaltene Wert der Signalstärke
20 % unterschreitet, wird die aktuelle Übertragung abgebrochen. Da ein neuer
Übertragungszeitraum benötigt wird, springt das Verfahren zurück
zu Schritt 406. Wenn der erhaltene Wert der Signalstärke gleich oder
größer als 20 % ist, geht das Verfahren weiter zu Schritt 422.
Sobald in Schritt 422 die Signalstärke bestätigt
worden ist, werden die Protokolldaten über den Datenaustauschmechanismus
310/110 übertragen. Bei der bevorzugten Ausführungsart
startet die Einheitensteuerung 108 zum geplanten Zeitpunkt die Kommunikation
und die Übertragung der Protokolldaten. Bei einer anderen Ausführungsart
startet der Terminplaner das Herunterladen, wenn er die Signalstärke ermittelt.
Dann führt der Terminplaner 304 in Schritt
423 für jede Position im Plan 306 die Schritte
414 bis 422 aus, sodass jede Einheit ihre Protokolldaten überträgt,
wenn die Signalstärke ausreichend ist.
Obwohl die Ausführungsarten in Bezug auf einen einzelnen Server
beschrieben wurden, kann die Lösung auf zwei oder mehr Server erweitert werden.