-
Die
vorliegende Erfindung betrifft im Allgemeinen eine Weise zur Durchführung von
Datensynchronisierungsoperationen, um Datenbankkopien zu synchronisieren,
die an getrennten Teilen eines Funkkommunikationssystems geführt werden.
Insbesondere betrifft die vorliegende Erfindung eine Vorrichtung
und ein zugehöriges
Verfahren, durch das wählbar
zu steuern ist, wann Synchronisierungsoperationen durchgeführt werden.
-
Ein
Benutzer eines mobilen Knotens, an dem eine Datenbankkopie geführt wird,
verzögert
wählbar eine
Leistung bzw. Performance der Synchronisierungsoperationen für eine gewählte Verzögerungsperiode.
Und wenn Auswahl getroffen wird, die Leistung der Synchronisierungsoperationen
zu verzögern,
wird eine Verzögerungsperiode
gewählt,
welche die Länge
der Verzögerung
definiert. Die Verzögerung
wird gewählt
durch den Benutzer, zum Beispiel wenn der Benutzer den mobilen Knoten
für einen
anderen Zweck verwenden will, d. h. um eine andere Anwendung durchzuführen. Ein
Beginn der Synchronisierungsoperationen wird verzögert, um die
Möglichkeit
zu reduzieren, dass eine gleichzeitige Ausführung der Synchronisierungsoperationen
und der anderen Anwendungen die Operation der anderen Anwendung
verlangsamt oder anderweitig stört. Und
durch passende Auswahl der Verzögerungsperiode
wird veranlasst, dass die Synchronisierungsoperationen ausgeführt werden
während
Perioden einer verringerten Benutzung des Funkkommunikationssystems.
-
Hintergrund der Erfindung
-
Die
Verfügbarkeit
von Kommunikationssystemen ist eine praktische Notwendigkeit für viele
Aspekte der modernen Gesellschaft. Daten werden während eines
Betriebs eines Kommunikationssystems kommuniziert, und eine derartige
Kommunikation der Daten bewirkt Datenkommunikationsdienste. Einige
Kommunikationssysteme sind in einer Weise konstruiert, welche die
Kommunikation von Daten ermöglicht
und eine entsprechende Bewirkung bzw. Herbeiführung von Kommunikationsdiensten über signifikante
Entfernungen. Versuche werden im Allgemeinen gemacht, um die Rate
zu maximieren, mit der die Daten in dem Kommunikationssystem kommuniziert
werden und auch um die Genauigkeit der Daten zu maximieren, die
kommuniziert werden. Da die Rate der Datenkommunikation und die
Genauigkeit ihrer Kommunikation manchmal in Konflikt stehen, wird
manchmal eine Balance zu erreichen versucht während des Betriebs eines Kommunikationssystems.
-
Ein
Kommunikationssystem wird gebildet aus, im Minimum, einem Satz von
Kommunikationsstationen, die über
einen Kommunikationskanal miteinander verbunden sind. Zumindest
eine der Kommunikationsstationen des Satzes bildet eine sendende
Station. Und eine andere der Kommunikationsstationen des Satzes
bildet eine empfangende Station. Und ein Kommunikationsdienst wird
durch die Kommunikation von Daten von einer sendenden Station zu
einer empfangenden Station bewirkt. Kommunikationsstationen von
verschiedenen Kommunikationssystemen sehen eine Zweiwegkommunikation
vor, wobei die Kommunikationsstationen sowohl übertragende als auch empfangende
Teile umfassen, die jeweils Daten übertragen und empfangen können.
-
Wie
es Fortschritte in den Technologien ermöglichen, werden Verbesserungen
von existierenden Kommunikationssystemen implementiert, und neue
Typen von Kommunikationssystemen werden entwickelt und eingesetzt.
Verschiedene technologische Fortschritte haben, wenn implementiert,
die Bewirkung bzw. Herbeiführung
von neuen Typen von Kommunikationsdiensten ermöglicht.
-
Ein
Funkkommunikationssystem ist ein beispielhafter Typ eines Kommunikationssystems.
In einem Funkkommunikationssystem werden Daten auf Funkkanälen kommuniziert,
die zwischen den sendenden und empfangenden Stationen eines Kommunikationssystems
ausgebildet sind. Da Funkkanäle benutzt
werden, auf denen die Daten kommuniziert werden, wird eine leitungsgebundene
Verbindung vermieden, die herkömmlicherweise
erforderlich ist in einem herkömmlichen
verdrahteten Kommunikationssystem, um die sendenden und empfangenden Stationen
miteinander zu verbinden. Eine Kommunikation kann somit in einem
Funkkommunikationssystem bewirkt werden, selbst wenn keine verdrahteten Verbindungen
ausgebildet werden können.
-
Funk-
sowie andere Kommunikationssysteme werden regelmäßig verwendet, um Daten zu kommunizieren,
die nachfolgend durch datenverarbeitende Techniken verarbeitet werden.
Fortschritte in Technologien werden auch auf die Verarbeitung der
Daten angewendet. Und Kommunikationsvorrichtungen und Kommunikationssysteme,
in denen die Kommunikationsvorrichtungen verwendet werden, sind
verfügbar,
durch die verschiedene datenverarbeitende Operationen und Kommunikationsdienste durchzuführen sind.
Zusätzliche
Anwendungen und Dienste, die neue Datenverarbeitungs- und Kommunikationstechnologien
implementieren, werden wahrscheinlich in zunehmendem Maße verfügbar, wenn Fortschritte
in den Technologien dies ermöglichen.
-
Beispielhafte
Vorrichtungen, die sowohl eine Datenverarbeitung als auch Kommunikationsdienste durchführen können, umfassen
Vorrichtungen, die als persönliche
digitale Assistenten (PDAs – personal digital
assistants) bezeichnet werden. Persönliche digitale Assistenten
sind im Allgemeinen von kleinerer Größe, was ihre Tragbarkeit durch
einen Benutzer erlaubt. Persönliche
digitale Assistenten sehen eine Speicherung und Verarbeitung von
Daten vor. Datenbanken werden auf den persönlichen digitalen Assistenten
gespeichert und die Daten, die in den Datenbanken gespeichert werden,
sind wählbar
abrufbar zur Betrachtung durch den Benutzer der Vorrichtung. Und
ebenso ist die Verarbeitung der Daten auf ausgewählte Weise manchmal erlaubt.
Typischerweise werden die Daten in eine Reihe von Datensätze formatiert,
wobei jeder Datensatz ein oder mehrere Datenfeld(er) enthält. Wenn
die Vorrichtung durch den Benutzer bedient wird, kann der Benutzer
wählbar die
Datensätze
oder Teile davon abrufen. Verarbeitungsvorgänge, die an der Vorrichtung
auf den Daten oder Datenfeldern davon durchführbar sind, umfassen zum Beispiel
Sortieroperationen. Und der Benutzer kann typischerweise die Daten
andern, hinzuzufügen
oder anderweitig ändern,
die an den Datenbanken der Vorrichtung gespeichert sind.
-
Die
Daten, die an der Vorrichtung gespeichert sind, werden manchmal
auch an einer anderen Speichervorrichtung gesichert (back-up). In
dem Fall eines Verlusts der Daten an der Vorrichtung ist eine Kopie
der Daten von dem Ort abrufbar, an dem die Daten gesichert sind.
Einige herkömmliche
persönliche
digitale Assistenten haben ihre Datenbanken gesichert an einem Personalcomputer
oder einer anderen Rechnerstation. Das Backup-Verfahren wird normalerweise
ausgeführt
durch Verbinden der Vorrichtung und der Rechnerstation über ein
festes Kabel, damit die Daten gesichert werden können. Die Daten, die entweder
an der Vorrichtung oder an dem gesicherten Ort gespeichert sind,
sind aktualisierbar, d. h. veränderbar,
auf eine asynchrone Weise.
-
Durch
Ermöglichen
von asynchronen Änderungen
an den Datenbankkopien, das heißt,
der Datenbank und ihrer gesicherten Kopie, bleiben die Datenbanken
nicht länger
tatsächliche
Kopien voneinander. Jede Hinzufügung,
Löschung
oder andere Änderung
eines Datenteils verursacht, dass die Daten, die an einer der Datenbankkopien
gespeichert sind, nicht länger
in vollständiger
Konformität
zu den anderen der Datenbankkopien sind.
-
Synchronisierungsoperationen
werden durchgeführt,
um die Datenbankkopien zurück
in vollständige
Konformität
zueinander zu setzen. Wenn Synchronisierungsoperationen durchgeführt werden, werden
die Daten verglichen, die an den jeweiligen Kopien gespeichert sind,
zum Beispiel auf einer Datensatz- zu-Datensatz-
oder Datenfeld-zu-Datenfeld-Basis. Wenn festgestellt wird, dass
die entsprechenden Daten an den getrennten Datenbankkopien nicht
miteinander übereinstimmen,
wird veranlasst, dass die Daten zurück in eine vollständige Übereinstimmung
zueinander platziert werden. Wenn die Datenbankkopien über eine
Funkluftschnittstelle anstatt über
eine verdrahtete Verbindung verbunden sind, werden Datensynchronisierungsoperationen
problematischer als wenn die gleichen Operationen durchgeführt werden,
wenn die Datenbanken über
eine verdrahtete Verbindung miteinander verbunden sind. Bandbreite-Begrenzungen
sind in Funkkommunikationssystemen aufgrund von begrenzten Bandbreitenzuteilungen
von Bandbreitenkapazitäten
in solchen Systemen typischerweise restriktiver.
-
Aufgrund
einer begrenzten Bandbreite-Verfügbarkeit
in einem Funkkommunikationssystem kann eine Vorrichtung, an der
eine Datenbankkopie geführt
wird, nicht imstande sein, verwendet zu werden gemäß anderen
Anwendungen, wenn eine Synchronisierungsoperation durchgeführt wird,
um die Datenbankkopie mit einer entfernt gespeicherten Datenbankkopie
zu synchronisieren. Und wenn die Datenbanken groß sind, ist das Synchronisierungsverfahren übermäßig lang,
insbesondere, wenn die Bandbreite, die auf der Funkluftschnittstelle
verfügbar
ist, um die Synchronisierungsoperationen durchzuführen, begrenzt
ist.
-
EP 0917077 A2 lehrt
eine drahtlose entfernte Synchronisierung von Daten zwischen einem
PC und einem PDA.
-
Wenn
eine Weise vorgesehen werden könnte,
durch die ein Benutzer der Vorrichtung steuern könnte, wann die Synchronisierungsoperationen durchgeführt werden,
wäre eine
verbesserte Verwendung der Vorrichtung möglich.
-
Es
ist hinsichtlich dieser Hintergrundinformation, welche die Synchronisierung
von Daten von Datenbanken über
eine Funkluftschnittstelle betrifft, dass die signifikanten Verbesserungen
der vorliegenden Erfindung entwickelt wurden.
-
Die
vorliegende Erfindung wird in den unabhängigen Ansprüchen dargelegt.
Die vorliegende Erfindung sieht dementsprechend vorteilhafterweise eine
Vorrichtung und ein zugehöriges
Verfahren vor, durch das Datensynchronisierungsoperationen erleichtert
werden, um Datenbankkopien zu synchronisieren, die an getrennten
Teilen eines Funkkommunikationssystems geführt werden.
-
Durch
Betrieb eines Ausführungsbeispiels der
vorliegenden Erfindung wird eine Weise vorsehen, durch die wählbar gesteuert
werden kann, wann die Synchronisierungsoperationen durchgeführt werden.
Eine Auswahl wird zum Beispiel getroffen, so dass die Leistung der
Synchronisierungsoperationen nicht die Leistung an dem mobilen Knoten
anderer Anwendungen stören.
Und eine Auswahl wird weiter wählbar
getroffen, um die Synchronisierungsoperationen während Perioden durchzuführen, die
verringerte Pegel einer Kommunikationsaktivität auf der Funkluftschnittstelle
zeigen, wie während
Zeitperioden mitten in der Nacht.
-
Ein
Benutzer des mobilen Knotens, an dem eine Datenbankkopie geführt wird,
verzögert
wählbar eine
Leistung der Synchronisierungsoperationen für eine ausgewählte Verzögerungsperiode
durch Betätigung
eines Benutzer-Betätigers
bzw. -Aktuators. Wenn der Benutzer wählt, die Leistung der Synchronisierungsoperationen
zu verzögern
durch geeignetes Betätigen
des Aktuators, wird eine weitere Auswahl der Verzögerungsperiode
getätigt.
Eine Auswahl der Verzögerungsperiode
wird zum Beispiel automatisch getätigt oder durch weitere Benutzerbetätigung eines
Aktuators, um die Verzögerungsperiode zu
wählen.
-
Wenn
der Benutzer wählt,
dass die Vorrichtung eine Anwendung durchführt, d. h. eine Anwendung anders
als die Synchronisierungsoperationen, kann der Benutzer präventiv eine
Verzögerung
in den Synchronisierungsoperationen wählen. Das heißt, vor
der Initiierung von Synchronisierungsoperationen wählt der
Benutzer, eine Leistung aller folgenden Synchronisierungsoperationen
zu verzögern,
die ansonsten initiiert und durchgeführt würden.
-
Der
Aktuator ist auch wählbar
durch den Benutzer betätigbar,
wenn bestimmt wird, dass Synchronisierungsoperationen erforderlich
sind. Der Benutzer wird, zum Beispiel, alarmiert hinsichtlich der Bestimmung,
dass die Synchronisierungsoperationen erforderlich sind, und der
Benutzer wird aufgefordert, den Aktuator zu betätigen in dem Fall, dass die Synchronisierungsoperationen
verzögert
werden sollen. Wenn der Aktuator durch den Benutzer in einer geeigneten
Zeit betätigt
wird, nachfolgend auf die Aufforderung des Benutzers, werden die
Synchronisierungsoperationen während
einer gewählten
Zeitperiode verzögert.
Die gewählte
Zeitperiode ist weiter auswählbar,
entweder automatisch oder als Reaktion auf eine weitere Benutzerbetätigung eines
Aktuators. Auch dadurch verhindert die Verzögerung der Synchronisierungsoperationen
die Möglichkeit,
dass eine gleichzeitige Leistung der Synchronisierungsoperationen
zusammen mit einer Leistung einer anderen Anwendung eine optimale
Leistung der anderen Anwendung stört.
-
Der
Benutzer kann auch in einer Implementierung die Leistung der Synchronisierungsoperationen
beenden, nachfolgend auf ihren Beginn. Zum Beispiel kann während der
Leistung der Synchronisierungsoperationen der Benutzer des mobilen
Knotens entscheiden, dass der mobile Knoten eine andere Anwendung
durchführen
soll. Eine gleichzeitige Leistung von sowohl der Synchronisierungsoperationen
als auch der Operationen der anderen Anwendung kann für den Benutzer
des mobilen Knotens merkbar erscheinen, die Leistung der anderen
Anwendung zu verlangsamen. Durch Ermöglichen dem Benutzer des mobilen
Knotens, zu wählen,
eine Leistung der Synchronisierungsoperationen zu verzögern, werden
die Leistungen der Synchronisierungsoperationen beendet, um dadurch
einen Betrieb der anderen Anwendung ohne Störung zu ermöglichen. Die Synchronisierungsoperationen
werden wieder gestartet oder anderweitig zu einer späteren Zeit,
um eine gewählte
Zeitperiode verzögert,
durchgeführt.
-
In
einem anderen Aspekt der vorliegenden Erfindung wird eine Benutzeranzeige
an dem mobilen Knoten vorgesehen, die Indicia in einer menschlichwahrnehmbaren
Form anzeigt. Die Anzeige zeigt zum Beispiel eine erste Anzeige
an, um eine anzuzeigen, dass die Synchronisierungsoperationen durchgeführt werden
müssen.
Und die Anzeige, die auf der Benutzeranzeige angezeigt wird, bildet
zumindest einen Teil der Aufforderung, den Benutzer des mobilen Knotens
aufzufordern, zu wählen,
ob eine Leistung der Synchronisierungsoperationen verzögert werden soll.
-
In
einem anderen Aspekt der vorliegenden Erfindung wird eine Auswahl
der gewählten
Zeitperiode, für
welche die Leistung der Synchronisierungsoperationen verzögert werden
soll, als eine feste Verzögerungslänge gewählt. Das
heißt,
in einer Implementierung ist eine Auswahl der Verzögerungsperiode
eine Verzögerungsperiode
mit einer Zeitlänge,
die bei Benutzerbetätigung
des Aktuators, bei Bestimmung der Notwendigkeit, Synchronisierungsoperationen
durchzuführen,
oder anderen Beginn-Indicia beginnt. In einer anderen Implementierung
definiert die gewählte
Verzögerungsperiode
eine Zeitperiode, deren Ende in einem Zeitfenster ist. Zum Beispiel wird
die gewählte
Zeitperiode, während
der die Synchronisierungsoperationen verzögert werden, gewählt, um
die Synchronisierungsoperationen zu veranlassen, zu einer bestimmten
Zeit oder in einem bestimmten Zeitfenster zu beginnen. Die Länge der Zeitperiode
der Verzögerung
ist in dieser Implementierung abhängig von dem Beginn der Zeitperiode. Zum
Beispiel werden Synchronisierungsoperationen, in einer Implementierung,
wenn sie verzögert
werden, in eine späte
Nachtstunde verzögert,
während der
eine Benutzung eines Funkkommunikationssystems, in dem der mobile
Knoten betriebsfähig
ist, verringerte Pegel einer Belastung zeigt. Die Länge der Zeitperiode
ist abhängig
davon, wann die Auswahl getätigt
wird, um die Synchronisierungsoperationen zu verzögern.
-
Dadurch
kann, durch Versehen des Benutzers des mobilen Knotens mit der Fähigkeit
der Auswahl einer Verzögerung
der Leistung der Synchronisierungsoperationen, der Benutzer veranlassen, dass
eine andere Anwendung an dem mobilen Knoten auf eine optimale Weise
durchgeführt
wird. Eine Verzögerung
der Synchronisierungsoperationen ist weiter auswählbar, um zu veranlassen, dass
die Synchronisierungsoperationen während Perioden durchgeführt werden,
während
denen das Funkkommunikationssystem, in dem der mobile Knoten betriebsfähig ist,
geringere Pegel an Benutzung zeigt. Eine Auswahl wird dadurch getroffen,
nicht nur um die Synchronisierungsoperationen zu Zeiten durchzuführen, wenn
die Leistung nicht eine Leistung anderer Anwendungen an dem mobilen
Knoten stört,
sondern zu Zeiten, während
der Belastungsbedingungen in den Funkkommunikationssystemen eine
optimale Leistung der Synchronisierungsoperationen ermöglichen.
-
In
diesen und anderen Aspekten wird folglich eine Vorrichtung und ein
zugehöriges
Verfahren für ein
Funkkommunikationssystem vorgesehen. Das Funkkommunikationssystem
hat einen Netzwerkteil, an dem eine Netzwerk-Kopie-Datenbank geführt wird, und einen mobilen
Knoten, an dem eine Mobil-Kopie-Datenbank
geführt
wird. Eine Benutzersteuerung der Leistung der Synchronisierungsoperationen,
durch die Werte der Netzwerk-Kopie-Datenbank und der Mobil-Kopie-Datenbank
synchronisiert werden, wird erleichtert. Ein Benutzer-Aktuator wird an
dem mobilen Knoten aufgenommen. Der Benutzer-Aktuator ist wählbar betätigbar durch den Benutzer,
um zumindest eine Verzögerung
in der Leistung der Synchronisierungsoperationen zu wählen. Ein Verzögerungs-Selektor
ist ausgebildet, um zumindest Anzeigen der Betätigung des Benutzer-Aktuators
durch den Benutzer zu empfangen. Der Verzögerungs-Selektor ist zumindest wählbar betriebsfähig, als
Reaktion auf zumindest die Anzeigen einer Betätigung des Benutzer-Aktuators,
zumindest eine gewählte
Verzögerungsperiode
zu wählen,
um welche die Leistung der Synchronisierungsoperationen zu verzögern ist.
-
Eine
vollständigere
Einschätzung
der vorliegenden Erfindung und deren Umfang kann aus den beigefügten Zeichnungen,
die unten kurz zusammengefasst werden, der folgenden detaillierten
Beschreibung der momentan bevorzugten Ausführungsbeispiele der vorliegenden
Erfindung und den angefügten
Ansprüchen
erlangt werden.
-
Kurze Beschreibung der Zeichnungen
-
1 zeigt
ein funktionales Blockdiagramm eines Funkkommunikationssystems,
in dem ein Ausführungsbeispiel
der vorliegenden Erfindung betriebsfähig ist.
-
2 zeigt
ein Flussdiagramm, das repräsentativ
ist für
eine Operation eines Ausführungsbeispiels
der vorliegenden Erfindung.
-
3 zeigt
ein Flussdiagramm, das ebenso repräsentativ ist für eine Operation
eines Ausführungsbeispiels
der vorliegenden Erfindung.
-
4 zeigt
graphische Darstellungen von beispielhaften Systembenutzungspegeln,
dargestellt als eine Funktion von Uhrzeit, und die Verzögerungsperioden,
die während
einer beispielhaften Operation eines Ausführungsbeispiels der vorliegenden
Erfindung gewählt
werden.
-
5 zeigt
ein Verfahrensflussdiagramm, das repräsentativ ist für ein Betriebsverfahren
eines Ausführungsbeispiels
der vorliegenden Erfindung.
-
Detaillierte Beschreibung
-
Zuerst
unter Bezugnahme auf 1 sieht ein Funkkommunikationssystem,
allgemein bei 10 gezeigt, den Kommunikationsknoten 12 und
einen Netzwerkteil des Kommunikationssystems vor. Daten werden während des
Betriebs des Kommunikationssystems über Funkkanäle kommuniziert, hier dargestellt
durch den Pfeil 14, definiert auf einer Funkluftschnittstelle,
die sich zwischen dem mobilen Knoten und dem Netzwerkteil erstreckt.
-
Das
Kommunikationssystem 10 ist repräsentativ für einen von verschiedenen Typen
von Funkkommunikationssystemen, einschließlich zum Beispiel eines Bündelfunk-Systems,
eines zellularen Kommunikationssystems oder eines anderen Typs von
Funkkommunikationssystem, in denen Kommunikationen über Funkkanäle bewirkbar
sind. Und in der beispielhaften Implementierung bildet das Funkkommunikationssystem
ein Multibenutzer-Kommunikationssystem. Während nur ein einzelner mobiler Knoten
in der Zeichnung gezeigt wird, können
andere mobile Knoten analog als darin betriebsfähig dargestellt werden.
-
Daten
werden wählbar
während
des Betriebs des Kommunikationssystems an den und von dem mobilen
Knoten über
die Funkkanäle 14 kommuniziert.
Die Daten, die von dem mobilen Knoten stammen, werden auf Funk-Uplink-
oder Rückwärtsverbindungs-Kanälen kommuniziert.
Und Daten, die durch den Netzwerkteil des Kommunikationssystems an
den mobilen Knoten gesendet werden, werden auf Funk-Downlink- oder
Vorwärtsverbindungs-Kanälen an den
mobilen Knoten kommuniziert.
-
In
der beispielhaften Implementierung umfasst der Netzwerkteil eine
Basis-Transceiver-Station (BTS – base transceiver
station) 16. In einem tatsächlichen Kommunikationssystem
sind eine Vielzahl von Basis-Transceiver-Stationen typischerweise positioniert
an voneinander getrennten Orten in einem Gebiet, das durch das Kommunikationssystem umspannt
werden soll. Eine einzelne Basis-Transceiver-Station 16 wird
zu Zwecken der Erklärung
gezeigt. Die Basis-Station 16 definiert einen Abdeckungsbereich,
der hier als Zelle bezeichnet wird. Wenn der mobile Knoten in der
Zelle positioniert ist oder sich anderweitig in dem Abdeckungsbereich
der Basis-Transceiver-Station befindet, kann der mobile Knoten im
Allgemeinen mit der Basis-Transceiver-Station kommunizieren, in
deren Abdeckungsbereich der mobile Knoten positioniert ist. Aufgrund
der Mobilität
des mobilen Knotens kann der mobile Knoten zu unterschiedlichen
Zeiten in Abdeckungsbereichen von unterschiedlichen Basis-Transceiver-Stationen positioniert
werden.
-
Der
Netzwerkteil des Kommunikationssystems umfasst auch ein Relaiselement 22,
das zwischen der Basis-Transceiver-Station und einem Daten-Server 24 positioniert
ist, hier ein BlackberryTM-Unternehmens-Server
(BES – Blackberry
enterprise server). Der Daten-Server 24 ist wiederum mit einem
Synchronisierungs-Server 28 verbunden. Und ein Administrations(admin)-Server 32 ist
ebenfalls mit dem Synchronisierungs-Server verbunden. Der Administrations-Server
sieht zum Beispiel administrative Dienste für das Kommunikationssystem
vor. Die Administrationsdienste umfassen zum Beispiel eine administrative
Steuerung, durch die der Betrieb des Synchronisierungs-Servers gesteuert
wird.
-
Der
Synchronisierungs-Server ist betriebsfähig mit Netzwerk-basierten
Datenbanken verbunden, von denen die Datenbank 34 repräsentativ
ist. Die Datenbank 34 ist zum Beispiel repräsentativ
für eine LotusTM Notes Datenbank, eine MicrosoftTM Exchange Verbinder-Datenbank oder eine
andere geeignete Datenbank. Der Inhalt der Datenbank ist wählbar abrufbar.
Und in der beispielhaften Implementierung ist die Datenbank formatiert,
aus einer Vielzahl von Datensätzen
gebildet zu sein, die jeweils aus einem oder mehreren Datenfeld(ern)
gebildet werden. Die Daten, die an der Datenbank 34 gespeichert
werden, werden formatiert zum Beispiel gemäß einem Textformat, wie XML
(extensible mark-up language). XML-formatierter Text füllt wählbar ausgewählte Datenfelder
der Datensätze,
was die Datenbanksuche bildet.
-
Der
mobile Knoten umfasst Transceiver-Schaltungen, die hier dargestellt
werden als bestehend aus einem Empfangsteil 38 und von
einem Sendeteil 42. Der mobile Knoten enthält auch
eine Speicherentität,
an der eine Datenbank 44 geführt wird. Die Datenbank 44 entspricht
der Datenbank 34, die an dem Netzwerkteil des Kommunikationssystems
enthalten ist. Die Datenbanken 34 und 44 sind Kopien
voneinander, d. h. die Datenbanken 34 und 44 bilden
Datenbankkopien voneinander. Wie oben angeführt, sind jedoch asynchrone Änderungen
an der einen oder der anderen der Datenbankkopien möglich. In
dem Fall solch einer asynchronen Änderung bleiben die Datenbankkopien
nicht länger
in einer vollständigen Übereinstimmung
zueinander und Synchronisierungsoperationen werden durchgeführt, um
die Datenbankkopien zurück
in vollständige Übereinstimmung
zueinander zu bringen. Gemäß einer
Synchronisierungsoperation werden Datenverschiedenheiten festgestellt,
und eine Korrektur wird für
die Verschiedenheit durchgeführt.
Jedoch insbesondere, wenn die Datenbanken relativ groß sind, sind
die Synchronisierungsoperationen zeitraubend und verbrauchen Funkressourcen.
Zusätzlich
kann die Leistung der Synchronisierungsoperationen eine Leistung
anderer Anwendungen stören,
wie merkliches Verlangsamen, wenn gleichzeitig durchgeführt an dem
mobilen Knoten.
-
Der
mobile Knoten umfasst dementsprechend eine Vorrichtung, allgemein
bei 48 gezeigt, eines Ausführungsbeispiels der vorliegenden
Erfindung, die einen Betrieb des mobilen Knotens erleichtert durch
wählbares
Ermöglichen
einem Benutzer des mobilen Knotens, eine Leistung der Synchronisierungsoperationen
zu verzögern.
Durch Verzögern der
Synchronisierungsoperationen findet weniger wahrscheinlich eine
Störung
der Leistung von Benutzer-gewählten
Anwendungen statt, wenn die Synchronisierungsoperationen um eine
gewählte
Verzögerung
verzögert
werden.
-
Die
Vorrichtung 48 umfasst eine Benutzerschnittstelle 52,
hier einschließlich
Benutzer-Aktuatoren 54 und eine Benutzer-Ausgabe und Anzeige 56. Die
Benutzer-Aktuatoren 54 sind zum Beispiel Betätigungs-Tasten
einer Benutzer-Aktuator-Tastatur,
die einen Teil eines herkömmlichen
mobilen Knotens bildet. Und die Benutzeranzeige der Benutzer-Ausgabe und
Anzeige bildet zum Beispiel ein ansonsten herkömmliches Anzeige-Element des
mobilen Knotens.
-
Die
Vorrichtung umfasst weiter einen Synchronisierungs-(SYNC)-Bestimmer
(determiner) 58 und einen Verzögerungs-Selektor 62.
Der Bestimmer und der Selektor bilden funktionale Entitäten, die
auf jede gewünschte
Weise zu implementieren sind, wie durch Algorithmen, die durch Verarbeitungsvorrichtungen
ausführbar
sind.
-
Hier
ist der Synchronisierungs-Bestimmer 58 mit der Datenbank 44 und
dem Empfangsteil 38 verbunden. Und der Verzögerungs-Selektor
ist verbunden mit dem Synchronisierungs-Bestimmer und den Benutzer-Aktuatoren 54,
hier die Benutzer-Aktuatoren 54-1 und 54-2.
-
Der
Benutzer-Aktuator 54-1 bildet einen Aktuator, der durch
den Benutzer des mobilen Knotens betätigbar ist, um eine Verzögerung der
Leistung der Synchronisierungsoperationen zu wählen. In einer Implementierung
ist der Aktuator durch den Benutzer jederzeit betätigbar,
d. h. vor einer Bestimmung, dass Synchronisierungsoperationen erforderlich
sind, nach einer Bestimmung, dass Synchronisierungsoperationen erforderlich
sind, aber vor ihrem Beginn, und nachfolgend auf den Beginn der
Synchronisierungsoperationen.
-
Eine
Anzeige über
eine Betätigung
des Aktuators wird an den Verzögerungs-Selektor geliefert. Der
Verzögerungs-Selektor
ist betriebsfähig,
den Grad an Verzögerung
zu wählen,
um den die Synchronisierungsoperationen verzögert werden sollen, und eine
Anzeige der gewählten
Verzögerung
auf der Zeile 66 zum Zurücksenden an den Netzwerkteil
des Kommunikationssystems zu erzeugen. Der Grad an Verzögerung,
der durch den Selektor gewählt
wird, wird auf eine von verschiedenen Weisen gewählt. Eine Betätigung des
Benutzer-Aktuators 54-2 durch den Benutzer liefert Benutzer-gewählte Verzögerungsperioden,
Anzeigen davon werden an den Verzögerungs-Selektor geliefert.
Alternativ wird die Verzögerung
automatisch durch den Selektor gewählt.
-
Der
Synchronisierungs-Bestimmer arbeitet, um festzustellen, dass Synchronisierungsoperationen
erforderlich sind. Wenn die Notwendigkeit für Synchronisierungsoperationen
zuerst an dem Netzwerkteil erfasst wird und an den mobilen Knoten
kommuniziert wird, werden solche Anzeigen an den Synchronisierungs-Bestimmer
geliefert über
den Empfangsteil 38 auf der Zeile 68. Der Bestimmer
arbeitet auch, um Bestimmungen zu bilden, dass die Synchronisierungsoperationen
benötigt
werden, durch Verglichen von Inhalten der Datenbank 44 mit
ihrer Kopie 34, als Reaktion zu Anzeigen, die an den mobilen
Knoten gesendet werden. Anzeigen von Bestimmungen, die durch den
Synchronisierungs-Bestimmer gemacht werden, werden an die Benutzeranzeige
geliefert zur Anzeige darauf. In einer Implementierung wird der
Benutzer aufgefordert, eine Verzögerung
der Leistung der Synchronisierungsoperationen zu wählen, als
Reaktion auf die Anzeige, die auf der Anzeige 56 gemacht
wird.
-
Durch
Ermöglichen
dem Benutzer des mobilen Knotens, zu wählen, dass die Synchronisierungsoperationen
verzögert
werden, ist der Benutzer in der Lage, die Möglichkeit auszuschließen, dass
die Leistung der Synchronisierungsoperationen zusammen mit einer
Benutzer-gewählten
Anwendung die Leistung der Benutzergewählten Anwendung verlangsamt.
-
2 zeigt
ein Flussdiagramm, das allgemein bei 72 gezeigt wird, repräsentativ
für einen
beispielhaften Betrieb eines Ausführungsbeispiels der vorliegenden
Erfindung. Der Betrieb des Verfahrens, das in Bezug auf das Flussdiagramm 72 beschrieben wird,
wird zumindest zum Teil an einem mobilen Knoten ausgeführt, wie
dem mobilen Knoten 12, der in 1 gezeigt
wird.
-
Zuerst
wird, nach Eintritt, wie durch den Startblock 74 angezeigt,
eine Bestimmung gemacht, wie durch den Entscheidungsblock 76 angezeigt,
ob ein Benutzer gewählt
hat, Synchronisierungsoperationen zu verzögern. Wenn dem so ist, wird
der Ja-Abzweig zu Block 78 und einer Verzögerung genommen.
Dann, wie durch den Entscheidungsblock 82 angezeigt, wird
eine Bestimmung gemacht, ob die Verzögerungsperiode abgelaufen ist.
Wenn nicht, wird der Nein-Abzweig zurück zu dem Entscheidungsblock
genommen. Andernfalls wird der Ja-Abzweig zu dem Block 84 genommen
und die Synchronisierungsoperationen werden durchgeführt.
-
Wenn
an dem Entscheidungsblock 76 eine Bestimmung gemacht wird,
dass der Benutzer keine Verzögerung
der Synchronisierungsoperationen gewählt hat, wird der Nein-Abzweig
zu dem Block 86 genommen, und der Status der Synchronisierung wird überwacht.
Und Bestimmungen werden gemacht, wie durch den Entscheidungsblock 88 angezeigt,
ob eine Synchronisierung erforderlich ist. Wenn nicht, wird ein
Nein-Abzweig zurück
zu dem Block 86 genommen. Andernfalls wird der Ja-Abzweig
zu dem Block 92 genommen und der Benutzer wird aufgefordert,
wenn gewünscht,
eine Verzögerung
der Leistung der Synchronisierungsoperationen zu wählen.
-
3 zeigt
ein Flusssteuerungsdiagramm, allgemein gezeigt bei 78,
das repräsentativ
für Operationen
ist, durch welche die Verzögerungsperiode gewählt wird,
durch die Synchronisierungsoperationen verzögert werden, in dem in 2 gezeigten Prozess.
-
Zuerst
nach dem Start, angezeigt durch den Startblock 102, wird
eine Bestimmung gemacht an dem Entscheidungsblock 104,
ob Synchronisierungsoperationen am Laufen sind. Wenn dem so ist, wird
der Ja-Abzweig zu
dem Block 106 genommen und die Synchronisierungsoperationen
werden beendet. Dann und wie durch den Entscheidungsblock 108 angezeigt
wird eine Bestimmung gemacht, ob die Länge der Verzögerung Benutzer-gewählt ist. Wenn
dem so ist, wird der Ja-Abzweig zu dem Block 112 genommen
und die Synchronisierungsoperationen werden während der Periode verzögert, die
von dem Benutzer gewählt
ist. Und bei Ablauf der Verzögerungsperiode
und wie durch den Block 114 angezeigt werden die Synchronisierungsoperationen durchgeführt. Andernfalls,
wenn der Benutzer die Verzögerungsperiode
nicht gewählt
hat, wird der Nein-Abzweig von dem Entscheidungsblock 108 zu dem
Block 116 genommen und eine Verzögerungsperiode wird gewählt als
Reaktion auf eine Ausführung
eines Verzögerungsalgorithmus.
Der Verzögerungsalgorithmus
arbeitet zum Beispiel, um die Leistung der Synchronisierungsoperationen
zu verzögern,
um in einem Zeitfenster einer verringerten Systembenutzung zu sein,
wie während
des späten Abends
und sehr früh
am Morgen.
-
Wenn
andererseits eine Bestimmung an dem Entscheidungsblock 104 gemacht
wird, dass die Synchronisierungsoperationen nicht am Laufen sind, wird
der Nein-Abzweig
von hier zu dem Entscheidungsblock 108 genommen.
-
Die
Verzögerungsperiode
wird entweder als eine Benutzer-gewählte Verzögerung oder als eine Verzögerung gewählt, die
durch einen geeigneten Verzögerungsalgorithmus
berechnet wird. Der Verzögerungsalgorithmus
setzt in einem anderen Ausführungsbeispiel
nur eine „Setzen
Verzögerung"-Zeit und in einem
anderen Ausführungsbeispiel,
wie vorher angemerkt, wird die Verzögerungsperiode gewählt, um
zu veranlassen, dass die Synchronisierungsoperationen zu einer gewählten Uhrzeit
oder in einem Fenster von Zeitperioden beginnen.
-
4 zeigt
graphisch eine beispielhafte Auswahl einer Verzögerungsperiode, die gewählt wird
unter Berücksichtigung
der Belastungscharakteristiken (LC – load characteristics) des
Kommunikationssystems, in dem die Synchronisierungsoperationen durchgeführt werden
sollen. Das Diagramm 122 ist repräsentativ für beispielhafte Belastungscharakteristiken
in dem Kommunikationssystem, die als Funktion der Uhrzeit dargestellt
werden. Während der
normalen Arbeitsstunden ist die Belastung in dem Kommunikationssystem
relativ hoch und in den Perioden mitten in der Nacht ist die Belastung
in dem Kommunikationssystem relativ niedrig. Gemäß einem beispielhaften Ausführungsbeispiel
der vorliegenden Erfindung, wenn gewählt wird, die Synchronisierungsoperationen
zu verzögern,
ist die Verzögerung
für eine
Periode, angezeigt durch den Abschnitt 124, um den Start
der Synchronisierungsoperationen zu verzögern, bis eine Periode geringer
Belastung durch das Kommunikationssystem gezeigt wird. Die Zeitlänge der
Zeitverzögerung
ist abhängig
von der Zeit, zu der gewählt
wird, die Synchronisierungsoperationen zu verzögern, während das Ende der Zeitperiode
eine gesetzte Zeit ist. In einer Implementierung fällt das
Ende der Verzögerungsperiode
in ein Fenster von Zeitperioden, so dass in einem Multi-Benutzer-System Synchronisierungsoperationen
nicht durch viele mobile Knoten gleichzeitig beginnen. Dadurch gebraucht
die Operation eines Ausführungsbeispiels
der vorliegenden Erfindung weiter vorteilhafterweise die Zeitperioden
in einem Kommunikationssystem, die relativ niedrige Pegel einer
Belastung zeigen.
-
5 zeigt
ein Verfahrensflussdiagramm, allgemein gezeigt bei 132,
das repräsentativ
ist für das
Betriebsverfahren eines Ausführungsbeispiels der
vorliegenden Erfindung. Die Verfahren erleichtert eine Benutzersteuerung
der Leistung von Synchronisierungsoperationen in einem Funkkommunikationsnetzwerk.
Das Funkkommunikationsnetzwerk hat einen Netzwerkteil, an dem eine
Netzwerk-Kopie-Datenbank geführt
wird, und einen mobilen Knoten, an dem eine Mobil-Kopie-Datenbank
geführt
wird. Die Synchronisierungsoperationen werden durchgeführt, um
Werte der Netzwerk-Kopie-Datenbank
und der Mobil-Kopie-Datenbank zu synchronisieren.
-
Zuerst,
und wie durch den Block 134 angezeigt, wird eine Auswahl
getroffen an dem mobilen Knoten, um die Leistung der Synchronisierungsoperationen
zu verzögern.
-
Danach,
und wie durch den Block 136 angezeigt, wird zumindest eine
ausgewählte
Verzögerungsperiode
gewählt,
um welche die Leistung der Synchronisierungsoperationen zu verzögern ist.
-
Danach,
und wie durch den Block 138 angezeigt, wird der Beginn
der Synchronisierungsoperationen initiiert nachfolgend auf den Ablauf
der gewählten
Verzögerung.
-
Dadurch
kann ein Benutzer wählbar
eine Leistung von Synchronisierungsoperationen verzögern. Und
die Verzögerung
wird derart gewählt,
dass Synchronisierungsoperationen während einer bevorzugten Zeitperiode
durchgeführt
werden.
-
Die
vorhergehenden Beschreibungen sind von bevorzugten Beispielen zur
Implementierung der Erfindung, und der Umfang der Erfindung sollte
nicht unbedingt durch diese Beschreibung begrenzt sein. Der Umfang
der vorliegenden Erfindung wird durch die folgenden Ansprüche definiert.