-
Die Erfindung betrifft ein Verfahren zur Verteilung eines Datenpakets, das insbesondere Software und/oder Daten enthält, für ein Remote Update an viele Endgeräte wie etwa ein Kraftfahrzeugsteuergerät.
-
Um die Software und die Daten eines Fahrzeuges auf dem aktuellsten Stand zu halten, müssen regelmäßig Updates der Software und der Daten durchgeführt werden. Dabei müssen häufig große Datenmengen in das Fahrzeug bzw. auf die Head Unit des Fahrzeugs eingespielt werden, bspw. für Updates von Navigationsdaten. Dies erfolgt heute über ein mobiles Speichermedium, etwa eine DVD, die für das Update in ein entsprechendes Laufwerk eingelegt wird oder über einen drahtgebundenen Flash-Vorgang, beispielsweise bei einer Diagnose. Um den Komfort für den Kunden und die Aktualität der Daten im Fahrzeug zu erhöhen, gehen Tendenzen dahin, die Updates in Zukunft drahtlos als Remote Updates durchzuführen, wodurch sich ferner Kosten einsparen lassen.
-
Bei der Durchführung von Remote Updates über drahtlose Zugangsnetze (z. B. UMTS/HSDPA- oder LTE-Mobilfunknetze) stellt die zu übertragende Datenmenge ein großes Problem dar. Dies gilt sowohl für Software, beispielsweise für Flashware zur Neuprogrammierung eines Fahrzeugsteuergeräts, als auch für Daten, die von einem Fahrzeugsteuergerät genutzt werden, beispielsweise Navigationskarten für ein Navigationssystem, das in der Head Unit des Fahrzeug-Infotainmentsystems umfasst ist. Beispielsweise umfassen die Navigationsdaten zukünftiger Head-Unit-Generationen mehrere 10 GBytes.
-
Bei einer herkömmlichen Übertragung dieser Daten über Mobilfunknetze erfolgt eine Punkt-zu-Punkt-Übertragung von einem Update-Server, der etwa ein Update-Server des Fahrzeugherstellers sein kann, zu jedem einzelnen Fahrzeug, so dass beim Update von n Fahrzeugen die Daten n Mal über das Mobilfunknetz übertragen werden müssen. Dies ist ineffizient, unpraktikabel und teuer.
-
Generell ist ferner die Übertragung von Updates über Broadcast-Kanäle bekannt, wobei ein Update nur ein Mal über die Luftschnittstelle übertragen und von mehreren Fahrzeugen gleichzeitig empfangen wird. Allerdings fehlt bei der Verwendung von Broadcast-Medien für Remote Updates der Rückkanal vom Fahrzeug zum Update-Server, so dass ein Fahrzeug dem Update-Server nicht mitteilen kann, dass es das Remote Update korrekt empfangen hat. Dabei besteht insbesondere, wenn das Remote Update nur ein einziges Mal über die Luftschnittstelle übertragen wird, die Gefahr, dass nur ein geringer Anteil der Fahrzeuge das Remote Update korrekt empfängt, da die Übertragung eines Datenpakets mit großen Datenmengen einige Zeit in Anspruch nimmt. Da es unwahrscheinlich ist, dass alle Fahrzeuge während der gesamten Zeit empfangsbereit sind, werden die meisten Fahrzeuge einen größeren Teil der Daten „verpassen”. Dieses Problem wird mit wachsender Datenmenge umso größer.
-
Auch wenn die Daten mehrfach übertragen werden und ein Rückkanal über eine reguläre Mobilfunkverbindung eingerichtet wird, wodurch der Update-Server erfahren kann, wann alle Fahrzeuge das Update korrekt empfangen haben, ist der korrekte Empfang des Datenpakets nicht sichergestellt. So muss jedes Fahrzeug jeden Teil des Updates mindestens ein Mal empfangen haben. Auch dies wird häufig sehr lange dauern, insbesondere wenn Fahrzeuge nur kurze Zeit am Tag empfangsbereit sind. Hinzu kommt, dass ein Fahrzeug möglicherweise die erste Hälfte des Updates mehrmals empfängt, während ihm in der zweiten Hälfte ein Teil komplett fehlt.
-
Ausgehend von diesem Stand der Technik ist es Aufgabe der vorliegenden Erfindung, ein verbessertes Verfahren zur Durchführung eines Remote Updates einer Vielzahl von Endgeräten zu schaffen, das eine vollständige und korrekte Übermittlung eines Datenpakets an eine Vielzahl von Endgeräten effizient und kostengünstig ermöglicht.
-
Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Anspruchs 1 gelöst. Weiterbildungen sind in den Unteransprüchen ausgeführt.
-
Das erfindungsgemäße Verfahren dient der Verteilung eines Datenpakets, das sowohl Software als auch Datenupdates umfassen kann, um ein Remote Update an einer Vielzahl von Endgeräten durchzuführen. Diese Endgeräte können in einem Fahrzeug vorliegen, es kann sich aber auch um Endgeräte wie Smartphones handeln.
-
Das Verfahren ermöglicht die effiziente Übertragung von Softwareupdates und Datenupdates über Broadcast-Kanäle. Dazu umfasst das Verfahren in einer ersten Ausführungsform die Schritte:
- – Codieren des Datenpakets durch einen Update-Server mittels eines Fountain Codes zu einem endlosen Datenstrom, Übertragen des endlosen Datenstroms mittels einer Luftschnittstelle an ein Broadcast-Medium, etwa terrestrische Systeme wie DVB-T oder satellitengestützte Systeme,
- – Bereitstellen des endlosen Datenstroms der Vielzahl von Endgeräten durch das Broadcast-Medium,
- – Empfangen einer Mehrzahl von Teilpaketen des Datenstroms mittels einer Empfangsvorrichtung des Endgeräts,
- – Decodieren der Teilpakete und Rekonstruieren des Datenpakets aus den Teilpaketen durch die Empfangsvorrichtung. Das Update kann dann durch das Endgerät mit dem Datenpaket durchgeführt werden.
-
Durch die Verwendung eines Fountain Codes zur Erzeugung des Datenstroms kann vorteilhaft sichergestellt werden, dass eine große Anzahl an Endgeräten das Datenpaket für das Update komplett erhält, auch wenn die Endgeräte nicht permanent empfangsbereit sind. Durch die Verwendung des Fountain Codes reicht es aus, dass die Endgeräte während ihrer Empfangsbereitschaft jeweils nur Teilpakete aus dem Datenstrom empfangen, aus denen sie das komplette Datenpaket rekonstruieren können. Die Anzahl der Endgeräte, die das Update nicht oder nur unvollständig erhalten, kann optimiert, also verkleinert werden.
-
Weiterhin kann in einer weiteren Ausführungsform des Verfahrens durch das Aufbauen eines Rückkanals von dem Endgerät zu dem Update-Server eine Empfangsmeldung von dem Endgerät an den Update-Server über den erfolgreichen Empfang des Datenpakets durch das Endgerät übermittelt werden. Der Rückkanal kann über eine Mobilfunkverbindung oder ein drahtloses lokales Netzwerk, z. B. WLAN insbesondere als Punkt-zu-Punkt-Rückkanal aufgebaut werden.
-
Dabei kann der Update-Server nach Empfang der Empfangsmeldungen der Endgeräte die Dauer der Übertragung des Datenstroms in Abhängigkeit einer Anzahl der erhaltenen Empfangsmeldungen steuern, wobei die Übertragung des Datenstroms nach Erhalten einer voreingestellten Mindestanzahl von Empfangsmeldungen abgebrochen wird.
-
Ferner kann der Server die Übertragung des Datenpakets an jedes Endgerät unter Verwendung der Empfangsmeldungen dokumentieren.
-
Bei den Endgeräten kann es sich insbesondere um mobile Endgeräte handeln. Die vorliegende Erfindung ist insbesondere auf ein Steuergerät eines Kraftfahrzeugs als Endgerät fokussiert; das erfindungsgemäße Verfahren ist aber auch zur Verteilung von Datenpaketen auf eine Vielzahl anderer, beliebiger Endgeräte wie etwa Smartphones geeignet. Bei dem Fahrzeug-Steuergerät kann es sich insbesondere um eine zentrale Recheneinheit des Fahrzeugs, die Head Unit handeln.
-
Das mit dem erfindungsgemäßen Verfahren verteilte Datenpaket kann ein oder mehrere Software-Programm(e) und/oder Metadaten und/oder Navigationsdaten für das Remote Update umfassen.
-
Als Broadcast-Medium kommen eine terrestrische Funkstrecke, insbesondere eine DVB- oder DAB-Verbindung, aber auch eine satellitengestützte Funkstrecke alternativ oder zusätzlich in Frage.
-
Der Fountain Code kann ein Raptor Code sein.
-
Diese und weitere Vorteile werden durch die nachfolgende Beschreibung unter Bezug auf die begleitenden Figuren dargelegt. Der Bezug auf die Figuren in der Beschreibung dient der Unterstützung der Beschreibung und dem besseren Verständnis des Gegenstands. Die Figuren sind lediglich eine schematische Darstellung einer Ausführungsform der Erfindung.
-
Dabei zeigen:
-
1 eine schematische Systemarchitektur,
-
2 eine schematische Darstellung der Übertragung eines Remote Update Datenpakets mittels Fountain Codes.
-
Die Erfindung bezieht sich auf ein Verfahren zur effizienten Übertragung von Softwareupdates und Datenupdates über Broadcast-Kanäle.
-
Um die Software und Daten eines Fahrzeuges auf dem aktuellsten Stand zu halten, müssen regelmäßig entsprechende Updates durchgeführt werden. Die kostensparende drahtlose Übermittlung der Updates bedeutet eine Erhöhung des Komforts für den Kunden und der Aktualität der Daten im Fahrzeug. Mit dem erfindungsgemäßen Verfahren können auch große Datenmengen über drahtlose Netze effizient übertragen werden. Drahtlose Remote Updates von Fahrzeugsteuergeräten werden durch die zunehmende Vernetzung der Fahrzeuge mit dem Internet in Zukunft stark an Bedeutung gewinnen. Mit dem erfindungsgemäßen Verfahren kann sowohl ein Update der Software des Steuergerätes erfolgen, als auch ein Update von Daten im Steuergerät. Ein Beispiel stellt das Update von Kartenmaterial dar, das typischerweise einen großen Umfang von mehr als 1 GByte hat, was die Übertragung über Mobilfunknetze erheblich erschwert, da hierbei die Daten Punkt-zu-Punkt an die Fahrzeuge übertragen werden müssen. Dies führt zu einer sehr großen Anzahl an Übertragungen derselben Daten über ein Mobilfunknetz, was wiederum zu erheblichen Kosten führt. Die vorliegende Erfindung löst dieses Problem durch die Übertragung der Daten über ein Broadcast-Medium. Hierdurch können viele Fahrzeuge gleichzeitig die Daten empfangen. Da nicht alle Fahrzeuge gleichzeitig empfangsbereit sein werden (z. B. geparkte Fahrzeuge) werden die Daten bei diesem Verfahren mehrfach übertragen, was erfindungsgemäß durch den Einsatz von Fountain-Codes besonders effizient gestaltet wird.
-
Die grundlegende Systemarchitektur zur Übertragung von Updates über Broadcast-Kanäle ist in 1 skizziert. Ein Update wird von dem Update-Server US über die Luftschnittstelle R an einen Satelliten BM übertragen, der das Datenpaket aussendet, so dass es von mehreren Fahrzeugen, die hier die Endgeräte EG sind, gleichzeitig empfangen werden kann. Es können dabei verschiedene Broadcast-Technologien verwendet werden. Neben den dargestellten satellitengestützten Technologien kommen auch terrestrische Funkübertragungen wie DVB-T und DAB in Frage.
-
Die Übertragung eines Remote Update Datenpakets RUD ist in 2 skizziert. Wird das Datenpaket RUD mit x Bytes nur einmal übertragen, so empfängt das Endgerät lediglich ein Teil des Datenpakets RUD während es in der Zeit Δt1 empfangsbereit ist. Das Update kann damit nicht durchgeführt werden. Auch bei der mehrfach wiederholten Übertragung des RUD kann das Endgerät nur während der drei Empfangsfenster Δt1, Δt2, Δt3 Teile des Datenpakets empfangen. Der Empfang des kompletten Datenpakets ist dabei allerdings vom Zufall abhängig; in uneffizienter Weise kann es hier vorkommen, dass beispielsweise nur die Hälfte aller benötigten Daten empfangen wird, diese jedoch mehrfach. So kann es sehr lange dauern, bis ein Endgerät alle Daten des Updates vollständig erhalten hat, insbesondere wenn das Endgerät nur kurze Zeit am Tag empfangsbereit ist.
-
Erfindungsgemäß werden diese Aufgaben durch die Verwendung von Fountain Codes (Rateless Codes) gelöst.
-
Dabei werden große Datenmengen mit Hilfe eines Fountain-Codes codiert und anschließend über ein drahtloses Broadcast-Medium übertragen. Die Übertragung mittels eines Broadcast-Mediums wie eines Satellitenkanals oder eines DVB-T-Kanals ermöglicht die effiziente Versorgung vieler Endgeräte, resp. Fahrzeuge mit denselben Daten. Die Verwendung der Fountain-Codes ermöglicht dabei einen effizienten Empfang der Daten in der kürzest möglichen Zeit sowie einen effizienten gestückelten Empfang der Daten z. B. über mehrere Tage verteilt.
-
Damit wird die Effizienz für drahtlose Remote Updates gesteigert. Teilweise wird hierdurch das Remote Update überhaupt erst praktikabel. Damit werden Kosten gespart und der Komfort für den Kunden erhöht. Die Erfindung ist nicht auf die Verwendung im Automotive-Bereich beschränkt, sondern kann allgemein im Consumer-Electronic-Bereich z. B. auch für Updates von Smartphones verwendet werden.
-
Im Detail bezieht sich das erfindungsgemäße Verfahren darauf, dass auf dem Update-Server US (vgl. 1) ein Datenpaket bereitgestellt wird, welches auf alle Fahrzeuge EG, bzw. auf den Steuergeräten der Fahrzeuge, die mit einem entsprechenden Empfänger ausgerüstet sind, installiert werden soll. Der Update-Server US kodiert dieses Datenpaket RUD mit Hilfe eines Fountain Codes FC (vgl. 2). Dabei handelt es sich um einen Code aus der Klasse der Rateless Codes, mit dessen Hilfe das Datenpaket RUD in einen endlosen Datenstrom EDS gewandelt wird. Der neu generierte endlose Datenstrom EDS hat die Eigenschaft, dass der Empfänger EG x + ε beliebige Bytes des endlosen Datenstromes EDS in Teilpaketen TP1, TP2, TP3 empfangen kann, um daraus das ursprüngliche Datenpaket RUD wiederherzustellen. Der Parameter ε beschreibt dabei die Effizienz der Codierung.
-
Dieses Verfahren ist von großem Vorteil gegenüber der konventionellen Übertragung, bei der der Empfänger ganz bestimmte Bytes empfangen muss, d. h., dass der Empfänger zu ganz bestimmten Zeiten empfangsbereit sein muss. Dahingegen kann der Empfänger EG bei der Übertragung mittels Fountain Codes FC zu beliebigen Zeiten Δt1, Δt2, Δt3 empfangsbereit sein, solange er nur genügend Daten TP1, TP2, TP3 empfängt. Um das ursprüngliche Datenpaket RUD wiederherzustellen, ist es aber unerheblich, welche Daten TP1, TP2, TP3 er empfängt. Im Beispiel aus 2 kann der Empfänger EG während der drei Empfangsfenster Δt1, Δt2, Δt3 genügend Daten TP1, TP2, TP3 aus dem endlosen Datenstrom EDS empfangen, um das gesendete Datenpaket RUD wiederherzustellen. Hierdurch ergibt sich ein entscheidender Vorteil gegenüber der konventionellen Übertragung.
-
In einer Weiterbildung des erfindungsgemäßen Verfahrens wird zusätzlich ein Rückkanal vom Fahrzeug, bzw. dem Endgerät zum Update-Server über ein konventionelles Mobilfunknetz aufgebaut. Hierdurch kann der Empfänger dem Update-Server signalisieren, wenn er die Daten korrekt empfangen hat. Dies ermöglicht es dem Update-Server, die Übertragung der Daten intelligent zu steuern. Beispielsweise könnte der Update-Server die Übertragung des Datenpaketes stoppen, sobald ein bestimmter Prozentsatz aller Fahrzeuge den Empfang des Datenpaketes bestätigt hat.
-
Das beschriebene erfindungsgemäße Verfahren lässt sich nicht ausschließlich auf Remote Updates bei Fahrzeugen anwenden, sondern kann ebenso für Remote Updates bei anderen Endgeräten angewendet werden, z. B. bei Remote Updates für Smartphones.
-
Für die effiziente Verteilung eines Datenpaketes für ein Remote Update an eine große Zahl von Endgeräten, etwa Empfangsvorrichtungen in Fahrzeugsteuergeräten wird das Remote Update Datenpaket mittels eines Fountain Codes codiert und der so erhaltene codierte Datenstrom wird über ein Broadcast-Medium übertragen. Durch eine Empfangsvorrichtung in einem Fahrzeugsteuergerät kann eine beliebige Folge hinreichend vieler Teilpakete des codierten Datenstromes empfangen und daraus das ursprüngliche Datenpaket rekonstruiert werden. Bei dem Fahrzeugsteuergerät kann es sich um die Head Unit handeln, die als zentrale Recheneinheit des Infotainmentsystems mit einer entsprechenden Kommunikationseinrichtung für den Broadcast-Empfang ausgerüstet sein kann.
-
Ferner kann die Head Unit zum Aufbau eines Punkt-zu-Punkt-Rückkanals vom Fahrzeug zum Update-Server über eine konventionelle Mobilfunkverbindung eine Mobilfunkschnittstelle aufweisen, um dem Update-Server den erfolgreichen Empfang des Datenpaketes für ein bestimmtes Fahrzeug zu signalisieren. Anstelle der konventionellen Mobilfunkverbindung kann auch eine andere Punkt-zu-Punkt-Datenverbindung verwendet werden, z. B. über ein drahtloses lokales Netzwerk, WLAN.
-
Der Update-Server kann die Empfangsbestätigungen zur Steuerung der Dauer der Übertragung des Datenstromes und/oder zur Dokumentation der erfolgreichen Übertragung für jedes einzelne Fahrzeug verwenden.
-
Das Datenpaket kann eine oder mehrere Software-Programme (z. B. Flashware) enthalten. Ein Datenpaket kann alternativ oder zusätzlich auch Metadaten und/oder Navigationsdaten enthalten.
-
Das Broadcast-Medium kann eine terrestrische Funkstrecke, z. B. eine DVB-T- oder eine DAB-Verbindung oder eine satellitengestützte Funkstrecke sein.