WO2018234375A1 - Verfahren zum verlagern von datenverarbeitungsanwendungen von einer ersten recheneinheit zu einer zweiten recheneinheit - Google Patents

Verfahren zum verlagern von datenverarbeitungsanwendungen von einer ersten recheneinheit zu einer zweiten recheneinheit Download PDF

Info

Publication number
WO2018234375A1
WO2018234375A1 PCT/EP2018/066398 EP2018066398W WO2018234375A1 WO 2018234375 A1 WO2018234375 A1 WO 2018234375A1 EP 2018066398 W EP2018066398 W EP 2018066398W WO 2018234375 A1 WO2018234375 A1 WO 2018234375A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
communication
data processing
network
connection
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/EP2018/066398
Other languages
English (en)
French (fr)
Inventor
Helge ZINNER
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aumovio Germany GmbH
Original Assignee
Continental Automotive Technologies GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Continental Automotive Technologies GmbH filed Critical Continental Automotive Technologies GmbH
Publication of WO2018234375A1 publication Critical patent/WO2018234375A1/de
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration

Definitions

  • the invention relates to a method for relocating data processing applications from a first arithmetic unit to a second arithmetic unit in a local data network with an Ethernet-like bit transmission layer and an IP-based network layer.
  • a method for relocating data processing applications from a first processing unit to a second processing unit in a local data network is disclosed.
  • Bit transfer layer and an IP-based or
  • MOST-based network layer comprises at least the following method steps, namely:
  • the procedure is started.
  • a data processing application is moved over a first data connection from the first arithmetic unit to the second arithmetic unit.
  • the communication endpoints of the data processing application and / or specific communication characteristics are entered in a database.
  • the inventive method the Mög ⁇ possibilities of the lower network layers, that is, the application-layer remote network layers which Hard ⁇ ware layers or hardware oriented layers, serving communication architecture are displacements of data processing applications possible faster than would be the case in a process that attaches to the upper network layers, ie the software layers or software-related layers.
  • Another advantage of the method is that although a data processing application is moved, it is not necessary to build an entirely new communi ⁇ nikationsrange. Rather, a communication line already in use for communication with the application affected by the relocation can at least partly be used further.
  • Another advantage of the present method is that data processing applications, even when relocated to other computational units, continue to be discoverable and addressable.
  • An arithmetic unit can be, for example, a single arithmetic core or processor core, a virtual or logical arithmetic core (thread), a processor with one or more cores (central processing unit, CPU), a computer module or computation node or computer or server with one or more processors (Node), an electronic control unit (ECU) with one or more processors or with one or more computer modules, a computer implemented by means of an FPGA or a computer implemented with one or more graphics processors (GPU), for example a GPGPU (General Purpose Computation on Graphics Processing Unit) or a coprocessor, for example, a stream processor, a core or thread of a computing unit composed of CPU and one or more coprocessors
  • GPU graphics processors
  • An arithmetic unit may additionally have one or more switches.
  • a computing unit may be provided for specific computing tasks ⁇ or without specific tasks for universal computing tasks.
  • a data network is also to be understood as a computer network.
  • a local data network in a motor vehicle is to be understood as a data network having fixed network components in this vehicle.
  • a local vehicle network in the form of a local computer network LAN LAN is an abbreviation for the English term local area network
  • LAN local computer network
  • WAN Wide Area Network
  • WAN wide area network
  • a local area data network in a motor vehicle may be designed to use several different network types, e.g. two or more from the selection Ethernet, FlexRay, LVDS and MOST.
  • a local area data network in a motor vehicle may be designed to accommodate both wired network portions, e.g. in the form of an Ethernet network, as well as network parts which are designed as a radio network, e.g.
  • WLAN Wireless Local Area Network
  • WiMAX WiMAX
  • external network subscribers and non-built-in network participants such as For example, mobile devices, such as mobile phones, portable computers or consumer electronics, be part of the local data network of the vehicle, but a local data network of the vehicle is characterized in all variants in that it has network components, which are installed in the vehicle and clearly associated with the vehicle.
  • the method proposed here is provided in particular for use in a motor vehicle having a plurality of arithmetic units in a local data network. But also industrial plants come as a field of application in question.
  • Sub-data network is understood to be a data network for the purposes of the present application, which (also called “transfer layer” or “network access”) at least one physika ⁇ metallic network layer and having a network layer (also called “network layer”) with the network protocol.
  • a Data network is Ethernet as the physical network layer with the Internet Protocol (IP) as the network layer network protocol is exemplary in nature and is illustrative, but without limiting the present process thereto.
  • IP Internet Protocol
  • Switching components in a data network can include, for example, switches (also known as multiport bridges), network routers (even simply routers, switches that can route network packets), wireless access points, and wireless routers (ie wireless routers) Networks, which may be, for example, a combination of wireless access point, switch and router) but also network bridges (bridges), repeaters and / or hubs (also multiport repeater).
  • switches also known as multiport bridges
  • network routers even simply routers, switches that can route network packets
  • wireless access points ie wireless routers
  • Networks which may be, for example, a combination of wireless access point, switch and router but also network bridges (bridges), repeaters and / or hubs (also multiport repeater).
  • Communication characteristics of a data connection are, for example: parameters for the tunneling protocol, Ur ⁇ hop communication endpoint target communication endpoint, Communication Level (to be exceeded which in order from old to move to the new communication endpoint), network components to be used along the / the communication path / s, which for Mediation between old and new endpoint can be used.
  • a communication endpoint may be, for example, a so-called IP socket.
  • An IP socket consists of an IP address and a network port.
  • Communication endpoints enable data processing applications to communicate with other data processing applications.
  • a communication endpoint can also have information beyond an IP socket. In this case, however, an IP socket would be part of a communication endpoint.
  • a further development of the present method is to store one or more of the following parameters in a database in addition to the communication end points assigned to the data processing applications: execution duration, Execution priority, CPU instance, or hardware requirements of a data processing application.
  • the method proposed here can also be executed if not all involved computing units can execute the method. Rather, it is sufficient if the arithmetic unit, from which a data processing application is moved to another arithmetic unit, controls the method. In particular, it is therefore not necessary for the arithmetic unit, to which the data processing application is relocated in the course of the method, to master the method proposed here. But it is also not a hindrance if the receiving processing unit controls the process. Furthermore, it is not necessary for third processors to access the data processing application to be moved or moved starting from the relocation method proposed herein.
  • the first data connection must include at least one physical data connection.
  • a typical case in which a method proposed herein may be performed is when a computing unit in a given situation does not have sufficient computational resources to run a particular computing application or can be foreseen to have such a situation in the future will occur or can occur.
  • the effect of the method proposed here on a third, possibly external data processing application may include that for this data processing application, even after the relocation of another application, it appears that the relocated application continues to run on the original computing unit. In terms of consistency and reliability of applications, this results in advantages.
  • the duration of the displacement by means of the method proposed here can be, for example, 100 ms.
  • Minimum quality of service which can be met or exceeded, means meeting one or more of the following network communications quality requirements: latency requirements (including latency, that is end-to-end transmission delay) ) of communication, requirements for the rate of packets sent per time or the rate of packets sent in relation to received packets, requirements for packet loss limits or a
  • Variance of the duration of data packets may for example be required for the latency, the latency of a new communication path to a DA ten kausanassemble after their displacement is not greater than the latency of a communication path to the data ⁇ processing application before their relocation.
  • additional mechanisms such as a direct forwarding of data frames without checking the Fra ⁇ mes (data frames consist of destination and source hardware address, data flow control information checksums Integrity check and user data), a change in the priority of the data packets, deviating traffic shapers or different ones
  • Traffic shaping is a way of managing queues than the other path.
  • ⁇ play a latency of more than 2 may ms 7 hops (as hops is referred to the communication path in data networks, which lies between two network devices or network components.)
  • AVB mechanisms Audio / Video Bridging
  • 100 yS 5 Hops for TSN Mechanisms TSN stands for Time Sensitive Networking
  • a quality requirement For example, the quota may be such that the quota or quota at the sender after relocation must be identical to the quota before relocation. Otherwise, when ⁇ play, a delay and consequently an accumulation of data packets could be done.
  • the criteria of data throughput, data rate, jitter and packet loss rate it may be required, for example as a quality requirement, that these criteria satisfy the same requirements in detail or also in any combinations after the relocation as before the relocation. For example, there may be a requirement that after the transfer not higher transmission speeds are achieved than before the relocation. As measures to comply with defined quality requirements, for example, it can be used: that the quality characteristics of the communication path are determined before the relocation
  • Bit transmission layer come for example Ethernet,
  • Ethernet-like technologies are Ethernet-like technologies.
  • the data processing application is not relocated to another arithmetic unit, but displaced within the arithmetic unit.
  • the first and the second arithmetic unit are therefore identical.
  • Such cases may act as if it is actually a shift from a first to a second, physically separate computing units, for example, when a plurality of execution environments are ⁇ leads to a computing unit or more operating systems or more virtual processing units are hardware-or software-simulated or emulated.
  • IP Internet Protocol
  • the inventive method fulfills the special requirements with respect to Anfor ⁇ speed of the configuration of a network connection, speed of data transfers, a high reliability of the network connections that are required for use in a motor vehicle.
  • Another particular requirement for use in a motor vehicle, which is achieved by the method according to the invention, is to enable a low energy consumption of the network subscribers.
  • a particular advantage of transmitting only the current execution parameters of a data processing application is that the amount of data transferred is smaller than in the case of transmission of the data processing application itself.
  • transmission of only the current execution parameters may involve the transmission variant be the smallest or smallest possible data attack. In some cases, the transmission of only the current execution parameter may be the minimum necessary for at least reasonable and / or efficient transmission of a data processing application. Advantages of low to transfer data size and low demands on available data transmission band ⁇ wide and / or a low transmission time or it can also allow a lower prioritization of transmission, ie move into the priorities down.
  • a particular advantage of transmitting only the current execution parameters may be that a relocated data processing application can continue to run without loss of time.
  • a particular advantage of transmitting the current execution parameters and the data processing application may be that that an execution of the data processing application can be restarted defined.
  • the second data link is a tunnel connection, which connects the end point of the communication at ⁇ application prior to the shift to the communication end point of the application after the displacement by means of encapsulation.
  • a tunnel connection already exists before it is needed. This allows you to switch to this tunnel connection without additional delay as soon as it is needed.
  • Another particular advantage can be an increase in security, because a tunnel connection represents a secured end-to-end connection.
  • a tunneling protocol is provided for establishing the tunnel connection, which has information on the data acquisition.
  • a particular advantage of creating a tunneling protocol for establishing a tunneling connection is that for an entity that sends data to the relocated data processing application and whose data is transported over the tunneling connection, the formation of the tunnel does not
  • the determined communication characteristics are taken into account when creating the tunnel connection.
  • the features of the tunnel connection are entered in the database.
  • a particular advantage in this case may be that the features of a tunnel connection may continue to be available even in the event of errors or disturbances or resets and need not be determined again.
  • the database is present on the first arithmetic unit.
  • the second data connection and / or a possible tunnel connection can be controlled locally by the first arithmetic unit.
  • a communication path according to the particular communication characteristics is reserved for the second data connection.
  • the first data connection and the second data connection extend at least partially via the same communication path.
  • a further advantage is that, at least over the part of the communication paths which is the same for the first and the second data connection, an expected integrity of the data during a data transmission is high.
  • the communication characteristics of the second data connection are determined and entered into the database before the application is relocated.
  • the data transmitted via the second data connection is transmitted encrypted at least over a partial path of the connection.
  • the second data connection maintains or exceeds at least a predetermined minimum quality of service over the period of its activity. This makes it possible particularly advantageous to determine, for example, a time upper limit, for example, for a successful transmission of a predetermined amount of data and thus better plan this.
  • the second data connection over the period of its activity at least one satisfies or exceeds predetermined minimum quality of service, all the switching components along the communication paths of the second data connection ensure compliance with the predetermined minimum quality of service. This advantageously makes it possible to better plan communication along these paths and thus to ensure successful execution of data processing applications and communications over certain periods of time.
  • the instance of the data processing application on the first arithmetic unit is deactivated as soon as the second data connection is entered in the database.
  • This makes it possible in a particularly advantageous manner to release the resources previously used by the instance of the data processing application on the first arithmetic unit, for example computing capacity, for another use, to further relieve an exemplary controller of the arithmetic unit, to save electrical energy because the instance is no longer active, and if necessary, perform a diagnosis of the disabled instance.
  • the data processing application is shifted back to the first arithmetic unit when the second data connection is not active. Since the arithmetic unit originally planned for execution of the data processing application is the first arithmetic unit, a backsliding represents a return to the initial state. Particular advantages are that this state may be better tested and possibly the performance of a data processing application without being forwarded to a second arithmetic unit is more efficient.
  • data processing applications which are executed within the current computing unit are handled in the same way as data processing applications relocated to another processor. This means that also data processing applications executed in the current processing unit are entered in the database. This has the particular advantages that more predictable timing in communication with all applications is possible and non-relocated applications can be addressed identically to relocated applications, and thus even identical timing can be achieved for relocated and executed in the current processing unit applications.
  • Another particularly advantageous embodiment of the method according to the invention is carried out in a local data network in a motor vehicle. This makes it particularly advantageous to relocate relevant for the execution of a motor vehicle data processing applications.
  • Figure 1 is a schematic flow diagram of the erfindungsge ⁇ MAESSEN method for relocation of a data processing application
  • Figure 2 is a schematic flow diagram of a method according to Invention ⁇ further wherein a tunneling protocol is created comprising a preparation of a tunnel protocol,
  • FIG. 3 shows a schematic flow diagram of a method according to the invention having a possible return displacement to the original computing unit
  • FIG. 4 shows a schematic flow diagram of a method according to the invention comprising detailed sub-steps with regard to the determination of communication characteristics and FIG optionally a possible reservation of a communication path and optionally a creation of a tunnel protocol.
  • Figure 5 is a schematic representation of the operation of the method according to the invention.
  • FIG. 1 shows a method for relocating data processing applications from a first arithmetic unit to a second arithmetic unit in a local data network with a packet-based bit transmission layer and an IP-based or MOST-based network layer in a schematic flow chart.
  • the method is first started 110.
  • a data processing application is shifted over a first data connection from the first arithmetic unit to the second arithmetic unit.
  • subsequently com- munikations characterizing a at least one second movement of such data ⁇ bond, which connects the communication end point of verar ⁇ beitungsanassemble before the shift to the communication end point of the data processing application according to the displacement determined 150.
  • FIG. 2 shows a method according to the invention in which also a tunneling protocol is created 165 in a schematic flow diagram.
  • a tunneling protocol is additionally created 165.
  • the tunneling protocol can, for example, contain information about the data encapsulation.
  • FIG. 3 shows the schematic flow diagram of a process OF INVENTION ⁇ to the invention, in which a return displacement of the Application 230, that is, the relocation of the previously relocated data processing application from the second processing unit back to the first processing unit, is possible.
  • processing application after entering the communication end points of the data-processing and / or communication characteristics in a database 170 first checks 210 whether the second Since ⁇ ten kau active or is still active. If the second data connection is still active, the verarbei ⁇ processing application remains in its displaced state 220. When the second data connection is not active, the retimed data ⁇ processing application is moved back to the first processing unit 230. alternatives of the method are conceivable in which the Data processing application is shifted to other computing units as the first or second arithmetic unit. The check whether the second data connection is active or not can be made once or repeatedly.
  • the check whether the second data connection is active or not can be made once or repeatedly.
  • verification can also depend on certain triggers, which are provided or can be specified, for example, in a data processing program.
  • alternatives of the method are conceivable in which, depending on criteria other than the activity of the second data connection, a further relocation of the application takes place.
  • criteria may, for example, the activity of the As ⁇ ten kausancrypt, relevance or priority of the data processing application, the computational load on the first, second or further processing units, bottlenecks or potassium pazticiansverottisthinknism be in the data network.
  • FIG. 4 shows a method according to the invention with optional, detailed substeps with respect to the determination of
  • Communication characteristics and, optionally, a possible reservation of a communication path and, optionally, a creation of a tunneling protocol in a schematic flowchart are example divided into sub-steps possible: whether the verar ⁇ beitungsanassemble is transferred to a computing unit with a different network address is first checked 151.
  • the process step in which communication characteristics of at least a second data ⁇ compound which the communication end point of the movement of such data ⁇ processing application before the shift to the communication onsendyak the data processing application for the relocation connects example divided into sub-steps possible: whether the verar ⁇ beitungsanassemble is transferred to a computing unit with a different network address is first checked 151.
  • Subnet is a common example of IP addresses subdivision of the address space
  • the destination communication end point is the relocation in this nomenclature such that a data processing application is assigned the start communication end point before its relocation their relocation the target communication endpoint.
  • a network address can be an address with a network port or no network port.
  • a Kommunikati ⁇ onsend Vietnamese contain a socket, which for example, an arithmetic unit may be assigned for example, a data processing application from an operating system.
  • network layers can be used to look at the different layers of a data network, such as when describing a network using terms of a layered architectural model.
  • switching components along the communication path (s) of the second data connection may be determined 155.
  • Switching components are, for example, routers or switches, as described above. In this case, all components of a path can be determined, or even only those components which are technically capable of implementing a measure to ensure a quality of service request, for example a reservation of a communication path or the reservation of a certain data transmission bandwidth for a particular data processing application.
  • the components may be determined along a communication path or along several candidate paths.
  • communication parameters of the second data connection can be determined 156.
  • Examples of such communication parameters may be data rate, latency, priority of the communication, jitter, packet loss, (planned or actual) connection duration , data amount, number of paths, redundancy of the paths, Bit error rate, data frame size and synchronization accuracy.
  • This step may be followed directly by the step of entry into the database 170. But it can also be the next step an optional reservation of the new communication path, the determined communication characteristics taken into ⁇ into account are 160.
  • the step of registration in the database 170 may once again directly follow or it can optionally as Another intermediate step is the creation of a tunnel protocol 165, whereby at least some of the determined communication characteristics can be taken into account.
  • FIG. 5 illustrates the mode of operation of the method according to the invention on the basis of a schematic illustration, for example for an external third data processing DVA_x, which is executed on an external third processor RE_x.
  • the third processor unit and thus also the third data processing application
  • the third verarbei ⁇ tung has application with the data processing application DVA (not shown) communicates, which was carried out in the computing unit REL database DB (REL).
  • the verarbei ⁇ processing application DVA (not shown) has been moved to the second computing unit RE2 to a database DB of the first arithmetic unit rel (RE2).
  • first arithmetic unit RE1 and the second arithmetic unit RE2 there is a tunnel connection with a communication endpoint Tul on the first arithmetic unit RE1 and a communication endpoint Tu2 on the second arithmetic unit RE2, wherein the tunneling connection the communication endpoints of the data processing application DVA (not shown) before their relocation and the DVA X data processing application after its relocation.
  • DVA data processing application
  • an external third communication link KV_x from the perspective of an external third processor RE_x or an external third data processing application DVA_x as before and after the inventive relocation of a data processing application, for example, are perceived identically because using the Tunnelver- bond from the communication end point Tul on the first re ⁇ unit area RE1 to communication endpoint Tu2 on the second arithmetic unit RE2 a tunnel communication link KV_t causes a forwarding.
  • an external third processing unit RE_x and / or an external third data processing application DVA_x it might appear that it is still communicating with the computing unit even after a data processing application DVA (not shown) has been moved from a first processing unit RE1 to a second computing unit RE2 RE1, which acts only as a forwarding point and the relocated data processing application DVA X actually lies after the relocation to the second processing unit RE2.
  • the forwarding can take place through the interaction of tunnel connections and databases.
  • the external third processing unit RE_x and / or an external third data processing application DVA_x are capable of recognizing on which arithmetic unit a data processing application is executed and / or whether a relocation has taken place.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

Die Erfindung betrifft ein Verfahren zum Verlagern von Datenverarbeitungsanwendungen von einer ersten Recheneinheit zu einer zweiten Recheneinheit in einem lokalen Datennetzwerk mit einer paketbasierten Bit-Übertragungsschicht und einer IP-basierten oder MOST-basierten Vermittlungsschicht. Um ein Verfahren zu schaffen, mit welchem schnell (und unterbrechungsfrei) Datenverarbeitungsanwendungen von einer Recheneinheit auf eine andere Recheneinheit in einem lokalen Datennetzwerk zur Ausführung verlagert werden können, wird ein Verfahren vorgeschlagen, welches zumindest folgende Verfahrensschritte umfasst, nämlich: Zunächst wird das Verfahren gestartet. Dann wird eine Datenverarbeitungsanwendung über eine erste Datenverbindung von der ersten Recheneinheit zur zweiten Recheneinheit verlagert. Es werden Kommunikationscharakteristika zumindest einer zweiten Datenverbindung, welche den Kommunikationsendpunkt der Anwendung vor der Verlagerung mit dem Kommunikationsendpunkt der Anwendung nach der Verlagerung verbindet, bestimmt. Danach werden die Kommunikationsendpunkte der Datenverarbeitungsanwendung und/oder bestimmten Kommunikationscharakteristika in eine Datenbank eingetragen.

Description

Beschreibung
Verfahren zum Verlagern von Datenverarbeitungsanwendungen von einer ersten Recheneinheit zu einer zweiten Recheneinheit
Die Erfindung betrifft ein Verfahren zum Verlagern von Datenverarbeitungsanwendungen von einer ersten Recheneinheit zu einer zweiten Recheneinheit in einem lokalen Datennetzwerk mit einer Ethernet-artigen Bit-Übertragungsschicht und einer IP-basierten Vermittlungsschicht.
Durch die voranschreitende Digitalisierung hält eine zunehmend steigende Anzahl von elektronischen Geräten und Funktionen auch in sicherheitskritischen, sicherheitsintensiven und zeitkri- tischen Anwendungsbereichen Einzug wie beispielsweise Leit¬ technik für Gebäude und Industrieanlagen, Verkehrs- und
Energieinfrastruktur, Kraftfahrzeuge, Schienenfahrzeuge und Medizintechnik . Dabei kommen zunehmend auch verteilte Rechnerarchitekturen, d.h. sich aus mehreren Recheneinheiten und weiteren Bestandteilen zusammensetzende Architekturen, die über eine physikalische Übertragungsschicht in einem Netzwerk verbunden sind, in Frage oder zum Einsatz. Die verteilten Recheneinheiten und Be- standteile werden dabei üblicherweise mit kabelgebundenen oder kabellosen Datennetzwerken zur Datenkommunikation verbunden. Hierbei ist eine fortschreitende Entwicklung fort von statischen Bus-Systemen und starr festgelegten Netzwerkadressen hin zu Datennetzwerken und Systemfunktion, bei denen eine flexiblere Topologie (und damit auch flexiblere Verbindungsmöglichkeiten und Adressierungsmöglichkeiten) sowie eine Flexibilisierung von Datenverarbeitungsanwendungen angestrebt wird. Beispielswiese die Ethernet-Technologie und verwandte Technologien sind häufig diskutierte Möglichkeiten, die als physikalische Übertra- gungsschicht genutzt werden können. Zwar sind verteilte Rechnerarchitekturen auf dem Gebiet von Servern und High Performance Computing bereits bekannt, jedoch bieten diese Gebiete keine Lösungen für die Problemstellung sicherheitskritischer, sicherheitsintensiver und zeitkriti- scher Funktionen: Hier stellen kurzzeitige Verbindungsabbrüche und das Anhalten von Teilrechnungen keine Schwierigkeit dar. Die Reaktionszeiten solcher Systeme sind um Größenordnungen zu langsam, um sicherheitskritische Funktionen zu erfüllen. Zudem verfügen sie zumeist über eine starre Topologie und sind auf eine Zentralinstanz angewiesen sowie zeichnen sich dadurch aus, dass sie sehr viel Platz und Energie für den Betrieb benötigend. Weiterhin sind damit zumeist hohe Anschaffungskosten verbunden.
Die gestiegenen Datenmengen und Anzahlen von beteiligten Netzwerkbestandteilen (sowohl Instanzen von Datenverarbeitungsanwendungen, d.h. Programme, als auch Geräte, d.h.
Hardware) verlangt auch im Gebiet sicherheitskritischer, sicherheitsintensiver und zeitkritischer Funktionen zunehmend nach neuen Strategien, die Arbeitslast auf die beteiligten Geräte zu verteilen, sodass die Anforderungen möglichst effizient erfüllt werden.
In Folge der gestiegenen Anzahl von Datenverarbeitungsanwendungen, welche unter Umständen nicht gleichmäßig über die Zeit hinweg, sondern beispielsweise auch nur episodenweise oder punktuell - und damit verbunden ggf. auch mit kurzfristig großen Spitzen von Datenströmen - umgehen können müssen, steigen auch zunehmend die Anforderungen an die ausführenden Datenverarbeitungsarchitekturen. Es zeichnet sich dabei als gangbarer Weg ab, eine bedarfsgerechte Verteilung von auszuführenden Da¬ tenverarbeitungsanwendungen einzelfallspezifisch in der jeweiligen konkreten Situation vorzunehmen.
Dabei tritt das Problem auf, dass aus konventionellen Rech- nerarchitekturen bekannte Methoden zur Abarbeitung von Datenverarbeitungsanwendungen oder deren Anforderungen zumindest Verbindungsabbrüche, Verbindungsunterbrechungen und/oder Zeitverzögerungen auftreten, wenn nicht sogar Schlimmeres.
Im Detail: Wenn eine Anwendung von einer Recheneinheit auf eine andere verlagert wird, ändern sich der Kommunikationsendpunkt der Anwendung und Kommunikationspfade von und zu der Anwendung. Damit einhergehende Verzögerungen oder Verbindungsabbrüche sind für eine sicherheitskritische, sicherheitsintensive oder zeitkritische Funktion nicht hinnehmbar.
Daher ist es eine Aufgabe der vorliegenden Anmeldung, ein Verfahren zu schaffen, mit welchem schnell (und unterbre¬ chungsfrei) Datenverarbeitungsanwendungen von einer Recheneinheit auf eine andere Recheneinheit in einem lokalen Da¬ tennetzwerk zur Ausführung verlagert werden können.
Diese Aufgabe wird durch ein Verfahren gemäß Anspruch 1 gelöst. Ausgestaltungen und Weiterbildungen des Erfindungsgedankens sind Gegenstand von abhängigen Ansprüchen.
Es wird ein Verfahren zum Verlagern von Datenverarbeitungsanwendungen von einer ersten Recheneinheit zu einer zweiten Recheneinheit in einem lokalen Datennetzwerk offenbart.
Das Verfahren zum Verlagern von Datenverarbeitungsanwendungen von einer ersten Recheneinheit zu einer zweiten Recheneinheit in einem lokalen Datennetzwerk mit einer paketbasierten
Bit-Übertragungsschicht und einer IP-basierten oder
MOST-basierten Vermittlungsschicht umfasst zumindest folgende Verfahrensschritte, nämlich:
Zunächst wird das Verfahren gestartet. Dann wird eine Daten¬ verarbeitungsanwendung über eine erste Datenverbindung von der ersten Recheneinheit zur zweiten Recheneinheit verlagert. Es werden Kommunikationscharakteristika zumindest einer zweiten Datenverbindung, welche den Kommunikationsendpunkt der An¬ wendung vor der Verlagerung mit dem Kommunikationsendpunkt der Anwendung nach der Verlagerung verbindet, bestimmt. Danach werden die Kommunikationsendpunkte der Datenverarbeitungsanwendung und/oder bestimmten Kommunikationscharakteristika in eine Datenbank eingetragen. Mit dem erfindungsgemäßen Verfahren wird ermöglicht, dass Daten verlustfrei und fehlerfrei die verlagerte Datenverarbei¬ tungsanwendung erreichen, wobei die Kommunikation einer dritten Instanz mit der Datenverarbeitungsanwendung, welche verlagert wird, unterbrechungsfrei fortgesetzt werden kann. Weiterhin wird ermöglicht, dass die Verlagerung so abläuft, dass daraus keine für die dritte Instanz spürbaren Änderungen eintreten.
Dadurch, dass das erfindungsgemäße Verfahren sich der Mög¬ lichkeiten der unteren Netzwerkschichten, d.h. der der An- wendungsschicht fernen Netzwerkschichten, welche Hard¬ ware-Schichten oder Hardware-nahe Schichten sind, der Kommunikationsarchitektur bedient, sind Verlagerungen von Datenverarbeitungsanwendungen schneller möglich, als dies bei einem Verfahren der Fall wäre, welches in den oberen Netzwerkschichten, d.h. den Software-Schichten oder Software-nahen Schichten, ansetzt .
Ein weiterer Vorteil des erfindungsgemäßen Verfahrens liegt darin, dass obwohl eine Datenverarbeitungsanwendung verschoben wird, es ist nicht notwendig ist, eine gänzlich neue Kommu¬ nikationsstrecke aufzubauen. Vielmehr kann eine zur Kommunikation mit der von der Verlagerung betroffenen Anwendung bereits in Verwendung befindliche Kommunikationsstrecke zumindest teilweise weiter genutzt werden.
Ein anderer Vorteil des vorliegenden Verfahrens liegt darin, dass Datenverarbeitungsanwendungen, auch wenn sie auf andere Recheneinheiten verlagert wurden, weiterhin auffindbar und adressierbar sind.
Besondere Ausführungsformen sind Gegenstand der Unteransprüche. Die im hier vorgeschlagenen Verfahren erwähnten Recheneinheiten sind elektronische Recheneinheiten. Eine Recheneinheit kann beispielsweise ein einzelner Rechenkern oder Prozessorkern (Core) , ein virtueller oder logischer Rechenkern (Thread) , ein Prozessor mit einem oder mehreren Kernen (Central Processing Unit, CPU) , ein Rechnermodul oder Rechenknoten oder Rechner oder Server mit einem oder mehreren Prozessoren (Node) , ein Steuergerät (Electronic Control Unit, ECU) mit einem oder mehreren Prozessoren oder mit einem oder mehreren Rechnermodulen, eine mittels eines FPGA realisierte Recheninstanz oder eine mit einem oder mehreren Grafikprozessoren (GPU) realisierte Recheneinheit, beispielsweise eine GPGPU (General Purpose Computation on Graphics Processing Unit) oder ein Coprozessor, beispielsweise ein Streamprozessor, ein Kern oder Thread einer aus CPU und einem oder mehreren Coprozessoren zusammengesetzten Recheneinheit
(Accelerated Processing Unit APU) oder ein MikroController sein. Eine Recheneinheit kann zusätzlich ein oder mehrere Switches aufweisen. Eine Recheneinheit kann für spezifische Rechen¬ aufgaben oder auch ohne spezifische Aufgaben für universelle Rechenaufgaben vorgesehen sein.
Unter einem Datennetzwerk ist auch ein Rechnernetz zu verstehen.
Unter einem lokalen Datennetzwerk in einem Kraftfahrzeug ist ein Datennetzwerk zu verstehen, das ortsfeste Netzwerkkomponenten in diesem Fahrzeug aufweist. So kann beispielsweise ein lokales Fahrzeugnetzwerk in Form eines lokalen Rechnernetzes LAN (LAN ist eine Abkürzung für den englischen Begriff local area network) im Fahrzeug realisiert sein. Man könnte auch lokales Fahrzeug- netzwerk anstelle von lokales Datennetzwerk in einem Kraftfahrzeug sagen, wobei dann ein Datennetzwerk von einer Ausdehnung bedeutend kleiner als die typischen Ausdehnungen eines großräumigen Datennetzwerks (Auch Weitverkehrsnetz WAN genannt. WAN ist eine Abkürzung für den englischen Begriff wide area network. ) gemeint ist, das sich am Ort des Fahrzeugs befindet und höchstens wenige hundert Meter darüber hinaus für eine übliche Netz¬ werkkommunikation ausreichende Signalstärke aufweist. Ein lokales Datennetzwerk in einem Kraftfahrzeug kann so gestaltet sein, dass darin nur eine Form von Bitübertragungsschichten vorkommt, z.B. in Form eines reinen Ethernet-Netzwerkes .
Weiterhin kann ein lokales Datennetzwerk in einem Kraftfahrzeug so gestaltet sein, dass darin mehrere verschiedene Netzwerktypen zur Verwendung kommen, z.B. zwei oder mehrere aus der Auswahl Ethernet, FlexRay, LVDS und MOST. Weiterhin kann ein lokales Datennetzwerk in einem Kraftfahrzeug so gestaltet sein, dass es sowohl kabelbehaftete Netzwerkanteile, z.B. in Form eines Ethernet-Netzwerkes , als auch Netzwerkteile aufweist , welche als Funknetzwerk gestaltet sind, z.B. als WLAN (WLAN ist eine Zusammenziehung der Abkürzung des englischen Begriffs „wireles" für kabellos und der oben aufgeführten Abkürzung LAN) oder gemäß Bluetooth-Standard oder auch gemäß einer WiMAX-Technologie . Dabei können zwar auch fahrzeugexterne Netzwerkteilnehmer und nicht im Fahrzeug verbaute Netzwerkteilnehmer wie beispielsweise mobile Geräte, z.B. Mobiltelefone, tragbare Computer oder Unterhaltungselektronik, Teil des lokalen Datennetzwerk des Fahrzeugs sein, doch ein lokales Datennetzwerk des Fahrzeugs zeichnet sich in allen Varianten dadurch aus, dass es Netzwerkkomponenten aufweist, welche im Fahrzeug verbaut und eindeutig dem Fahrzeug zugeordnet sind.
Das hier vorgeschlagene Verfahren ist insbesondere für die Verwendung in einem Kraftfahrzeug mit mehreren Recheneinheiten in einem lokalen Datennetzwerk vorgesehen. Aber auch Industrieanlagen kommen als Verwendungsgebiet in Frage.
Unter Datennetzwerk ist im Sinne der vorliegenden Anmeldung ein Datennetzwerk zu verstehen, welches mindestens eine physika¬ lische Netzwerkschicht (auch „Übertragungsschicht" oder „Netzzugang" genannt) und eine Vermittlungsschicht (auch „Netzwerkschicht" genannt) mit Netzwerkprotokoll aufweist. Ein Beispiel für ein solches Datennetzwerk ist Ethernet als phy- sikalische Netzwerkschicht mit dem Internet Protocol (IP) als Netzwerkprotokoll der Vermittlungsschicht. Diese Beschreibung ist von beispielhaftem Charakter und dient der Illustration, ohne jedoch das vorliegende Verfahren darauf zu beschränken.
Vermittlungskomponenten in einem Datennetzwerk können bei- spielsweise Switches (auch Multiportbridges : Netzwerkweichen bzw. Verteiler), Netzwerkrouter (auch einfach nur Router; Vermittlungsgeräte, die Netzwerkpakete weiterleiten können) , drahtlose Zugangspunkte (Wireless Access Points ) und WLAN-Router (d.h. Router für kabellose Netzwerke, welche beispielsweise eine Kombination aus Wireless Access Point, Switch und Router sein können) aber auch Netzwerkbrücken (Bridges) , Repeater und/oder Hubs (auch Multiportrepeater) sein.
Kommunikationscharakteristika einer Datenverbindung sind beispielsweise: Parameter für das Tunnelprotokoll, Ur¬ sprungs-Kommunikationsendpunkt, Ziel-Kommunikationsendpunkt, Kommunikationslevel (welche überschritten werden, um vom alten zum neuen Kommunikationsendpunkt zu gelangen) , zu verwendende Netzwerkkomponenten entlang des/der Kommunikationspfad/e, welche zur Vermittlung zwischen altem und neuen Endpunkt eingesetzt werden.
Ein Kommunikationsendpunkt kann beispielsweise ein sogenannter IP-Socket sein. Ein IP-Socket setzt sich aus einer IP-Adresse und einem Netzwerk-Port zusammen. Mittels Kommunikationsendpunkten können Datenverarbeitungsanwendungen mit anderen Datenverarbeitungsanwendungen kommunizieren. Ein Kommunikationsendpunkt kann aber auch über ein IP-Socket hinausgehende Informationen aufweisen. In diesem Fall wäre ein IP-Socket jedoch Bestandteil eines Kommunikationsendpunktes. Es sind darüber hinaus auch
Kommunikationsendpunkte möglich, welche kein IP-Socket sind und auch keinen IP-Socket umfassen.
Eine Weiterbildung des vorliegenden Verfahrens besteht darin, zusätzlich zu den den Datenverarbeitungsanwendungen zugeordneten Kommunikationsendpunkten einen oder mehrere der folgenden Parameter in einer Datenbank abzulegen: Ausführungsdauer, Ausführungspriorität, CPU-Instanz oder Hardwareanforderungen einer Datenverarbeitungsanwendung .
Das hier vorgeschlagene Verfahren ist auch ausführbar, wenn nicht alle beteiligten Recheneinheiten das Verfahren ausführen können. Vielmehr ist es ausreichend, wenn die Recheneinheit, von der eine Datenverarbeitungsanwendung auf eine andere Recheneinheit verlagert wird, das Verfahren beherrscht. Insbesondere ist es also nicht notwendig, dass die Recheneinheit, auf die im Verlauf des Verfahrens die Datenverarbeitungsanwendung verlagert wird, das hier vorgeschlagene Verfahren beherrscht. Es ist aber auch nicht hinderlich, wenn die empfangende Recheneinheit das Verfahren beherrscht. Es ist weiterhin nicht notwendig, dass dritte Recheneinheiten, von denen Ausgehend ein Zugriff auf die zu verschiebende oder verschobene Datenverarbeitungsanwendung erfolgt, das hier vorgeschlagene Verfahren zur Verlagerung ausführen können.
Die erste Datenverbindung muss mindestens eine physikalische Datenverbindung umfassen.
Ein typischer Fall, in dem ein hier vorgeschlagenes Verfahren ausgeführt werden kann, ist beispielsweise gegeben, wenn eine Recheneinheit in einer gegebenen Situation nicht ausreichend Rechenressourcen für das Ausführen einer bestimmten Datenverarbeitungsanwendung zur Verfügung hat oder abzusehen ist bzw. geschätzt werden kann, dass eine derartige Situation in der Zukunft eintreten wird oder eintreten kann.
Die Wirkung des hier vorgeschlagenen Verfahrens auf eine dritte, ggf. externe Datenverarbeitungsanwendung kann einschließen, dass es für diese Datenverarbeitungsanwendung auch nach dem Verlagern einer anderen Anwendung so aussieht, als würde die verlagerte Anwendung weiterhin auf der ursprünglichen Recheneinheit ausgeführt. Im Sinne der Konsistenz und der Ver- lässlichkeit von Anwendungen ergeben sich dadurch Vorteile. Die Dauer der Verlagerung mittels des hier vorgeschlagenen Verfahrens kann beispielsweise 100 ms betragen.
Unter einer minimalen Dienstgüte, welche eingehalten oder übertroffen werden kann, ist die Einhaltung von einzelnen oder mehreren der folgenden Qualitätsanforderungen an die Netzwerkkommunikation zu verstehen: Anforderungen an die Latenz (auch Latenzzeit, das ist die Verzögerung der En- de-zu-Ende-Übertragung) der Kommunikation, Anforderungen in Bezug auf die Quote von gesendeten Paketen pro Zeit oder die Quote von gesendeten Paketen im Verhältnis zu empfangenen Paketen, Anforderungen an Obergrenzen für Paketverlust oder eine
Paktverlustrate (packet loss) , Anforderungen an den minimalen Datendurchsatz (d.h. die pro Zeit übertragene Datenmenge) / die minimale Datenrate, Anforderungen an die maximal zulässige
Varianz der Laufzeit von Datenpaketen (Jitter) . Als Anforderung für die minimale Dienstgüte, welche eingehalten oder übertroffen werden soll, kann für die Latenz beispielsweise angefordert sein, dass die Latenz eines neuen Kommunikationspfads zu einer Da- tenverarbeitungsanwendung nach deren Verlagerung nicht größer ist als die Latenz eines Kommunikationspfades zu der Daten¬ verarbeitungsanwendung vor deren Verlagerung. Hierzu kann es beispielsweise erforderlich sein (wegen eines evtl. längeren Weges) zusätzliche Mechanismen zu nutzen wie beispielsweise eine direkte Weiterleitung von Datenframes ohne Prüfung des Fra¬ mes (Datenframes bestehen aus Ziel- und Quell-Hardware-Adresse, Datenfluss-Steuerinformationen, Prüfsummen zur Integritätsprüfung und Nutzdaten) , eine Änderung der Priorität der Datenpakete, abweichende Traffic-Shaper bzw. abweichendes
Traffic-Shaping (unter Traffic-Shaping versteht man eine Art der Warteschlangenverwaltung) als auf dem anderen Pfad. Bei¬ spielsweise kann eine Latenz von maximal 2 ms über 7 Hops (Als Hops bezeichnet man den Kommunikationspfad in Datennetzwerken, der zwischen zwei Netzwerkgeräten oder Netzwerkkomponenten liegt.) für AVB-Mechanismen (AVB steht für Audio/Video Bridging) oder 100 yS über 5 Hops für TSN-Mechanismen (TSN steht für Time Sensitive Networking) gefordert sein. Eine Güteanforderung an die Quote kann beispielsweise dergestalt sein, dass die Quote oder die Quote beim Sender nach der Verlagerung identisch mit der Quote vor der Verlagerung sein muss. Andernfalls könnte bei¬ spielsweise eine Verzögerung und demzufolge eine Anhäufung von Datenpaketen erfolgen. Auch in Hinsicht auf die Kriterien Datendurchsatz, Datenrate, Jitter und Paketverlustrate kann beispielsweise als Güteanforderung verlangt sein, dass diese Kriterien im Einzelnen oder auch in beliebigen Kombinationen nach der Verlagerung den gleichen Anforderungen genügen wie vor der Verlagerung. Beispielsweise kann auch eine Anforderung lauten, dass nach der Verlagerung nicht höhere Übertragungsgeschwindigkeiten erreicht werden als vor der Verlagerung. Als Maßnahmen zur Einhaltung von definierten Güteanforderungen kann beispielsweise zum Einsatz kommen: Dass die Gütecharakteristika des Kommunikationspfades vor der Verlagerung ermittelt werden
(Latenz, Jitter, Zeitsynchronisationsgenauigkeit, Bitfehler¬ rate, tolerierbare Paketverlustrate, ob eine Anforderung von verloren gegangenen Paketen möglich ist, ... ) , eine Erhöhung der Datenrate, beispielsweise von 100 Mbit/s auf 1000 Mbit/s, ein abweichendes Weiterleitungsverfahren in Vermittlungskompo¬ nenten (beispielsweise „Cut-Through" statt „Store&Forward" ) , eine Vergabe einer abweichenden Netzwerkpriorität an Datenpakete oder Datenframes, eine Änderung in Bezug auf das Traffic-Shaping . Unter einem Kommunikationsendpunkt sind diejenigen Informa¬ tionen zu verstehen, die eine Datenverarbeitungsanwendung zur Adressierung beispielsweise einer anderen Datenverarbei¬ tungsanwendung braucht. Solche Informationen können beispielsweise Netzwerkadressdaten, Netzwerk-Ports, Soft- ware-Ports und Software-Sockets sein.
Als lokales Datennetzwerk mit einer paketbasierten
Bit-Übertragungsschicht kommen beispielsweise Ethernet,
FlexRay, MOST (kurz für: Media Oriented Systems Transport) , LVDS, WiFi oder auch Kombinationen aus verschiedenen Übertragungsschicht-Protokollen, wie z.B. Ethernet und FlexRay, in Frage. Im Allgemeinen kommen auch alle Arten von Ethernet-artigen Bit-Übertragungsschichten in Frage. Unter Ethernet-artigen sind mit Ethernet ähnliche Technologien zu verstehen.
Bei einer Variante des erfindungsgemäßen Verfahrens wird die Datenverarbeitungsanwendung nicht auf eine andere Recheneinheit verlagert, sondern innerhalb der Recheneinheit verlagert. In diesem Fall sind die erste und die zweite Recheneinheit also identisch. Solche Fälle können wirken, als handele es sich tatsächlich um eine Verlagerung von einer ersten auf eine zweite, physikalisch separate Recheneinheiten, wenn beispielsweise mehrere Ausführungsumgebungen auf einer Recheneinheit ausge¬ führt werden oder mehrere Betriebssysteme oder mehrere virtuelle Recheneinheiten hardwareseitig oder softwareseitig simuliert oder emuliert werden.
Unter einer IP-basierten Vermittlungsschicht ist eine Ver¬ mittlungsschicht zu stehen, welche das Internet Protocol (kurz: IP) als Netzwerkprotokoll einsetzt. Bei einer Reservierung eines Kommunikationspfades für eine
Datenverbindung wird diese Reservierung, deren Parameter und / oder die zu reservierenden Kapazitäten an eine, mehrere oder alle Vermittlungskomponenten entlang des/der Kommunikationspfade/s kommuniziert. Dabei werden bereits bestimmte Kommunikations- Charakteristika berücksichtigt und es werden die Kapazitäten gemäß den bestimmten Kommunikationscharakteristika reserviert.
Das erfindungsgemäße Verfahren erfüllt die besonderen Anfor¬ derungen bezüglich Geschwindigkeit des Aufbaus einer Netz- werkverbindung, Geschwindigkeit von Datenübertragungen, einer hohen Zuverlässigkeit der Netzwerkverbindungen die für eine Verwendung in einem Kraftfahrzeug gefordert sind. Eine weitere besondere Anforderung für die Verwendung in einem Kraftfahrzeug, die von erfindungsgemäßen Verfahren erfüllt wird, liegt darin, einen geringen Energieverbrauch der Netzwerkteilnehmer zu ermöglichen . In einer besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens werden die gesamte Datenverarbei¬ tungsanwendung und gegenwärtige Ausführungsparameter der Datenverarbeitungsanwendung übermittelt oder es werden zum Verlagern der Datenverarbeitungsanwendung gegenwärtige Ausführungsparameter der Datenverarbeitungsanwendung übermittelt. Ein besonderer Vorteil davon, nur die gegenwärtigen Ausführungsparameter einer Datenverarbeitungsanwendung zu übertragen liegt darin, dass die für die Übertragung anfallende Datenmenge kleiner ist, als im Fall von einer Übertragung auch der Datenverarbeitungsanwendung selbst. In manchen Fällen kann die Übertragung nur der gegenwärtigen Ausführungsparameter die Übertragungsvariante mit dem kleinsten oder kleinstmöglichen Datenanfall sein. In manchen Fällen kann in der Übertragung nur der gegenwärtigen Ausführungsparameter das Minimum liegen, das mindestens für eine sinnvolle und / oder funktionierende Übertragung einer Datenverarbeitungsanwendung notwendig ist. Vorteile einer geringen zu übertragenden Datenmenge liegen in geringen Anforderungen an verfügbare Datenübertragungsband¬ breite und / oder einer geringen Übertragungsdauer oder aber es kann auch einer geringeren Priorisierung der Übertragung ermöglichen, d.h. in den Prioritäten nach unten rücken. Ein besonderer Vorteil einer Gestaltung, die beide Fälle, d.h. die Übertragung nur der Gegenwärtige Ausführungsparameter oder aber die Übertragung der gesamten Datenverarbeitungsanwendung und der gegenwärtigen Ausführungsparameter gestattet, ermöglicht eine Auswahl der Übertragungsvariante, beispielsweise anhand von äußeren Umständen wie zur Verfügung stehender Datenbandbreite für die Übertragung oder maximale Übertragungsdauer oder aber auch die Datenverarbeitungsanwendung auf eine Recheneinheit zu übertragen, die bis zur Übertragung nicht über die Datenverarbeitungsanwendung verfügte. Ein besonderer Vorteil einer Übertragung nur der gegenwärtigen Ausführungsparameter kann darin liegen, dass eine verlagerte Datenverarbeitungsanwendung ohne Zeitverlust weiter ausgeführt werden kann. Ein besonderer Vorteil einer Übertragung der gegenwärtigen Ausführungsparameter und der Datenverarbeitungsanwendung kann darin liegen, dass eine Ausführung der Datenverarbeitungsanwendung definiert neugestartet werden kann.
Bei einer besonders vorteilhaften Ausführungsform des erfin- dungsgemäßen Verfahrens ist die zweite Datenverbindung eine Tunnelverbindung, welche den Kommunikationsendpunkt der An¬ wendung vor der Verlagerung mit dem Kommunikationsendpunkt der Anwendung nach der Verlagerung mittels Datenkapselung verbindet . Besondere Vorteile können entstehen, wenn eine Tunnelverbindung bereits besteht, bevor sie benötigt wird. Dadurch kann ohne zusätzliche Verzögerung auf diese Tunnelverbindung gewechselt werden, sobald sie benötigt wird. Ein weiterer besonderer Vorteil kann in einer Erhöhung der Sicherheit liegen, denn eine Tunnelverbindung stellt eine abgesicherte Ende-zu-Ende-Verbindung dar.
In einer weiteren besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens wird zur Etablierung der Tunnelverbindung ein Tunnelprotokoll, das Angaben zur Datenkap- seiung aufweist, erstellt.
Ein besonderer Vorteil einer Erstellung eines Tunnelprotokolls zur Etablierung einer Tunnelverbindung liegt darin, dass für eine Instanz, welche Daten zur verlagerten Datenverarbeitungsanwendung sendet und deren Daten über die Tunnelverbindung transportiert werden, die Entstehung des Tunnels zu keinen
Veränderungen führt, weil die sendende Instanz zur Aufrecht¬ erhaltung der Kommunikation keine neue Kommunikationsverbindung aufbauen muss, sondern wie zuvor weiter senden kann. Bei einer besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens werden bei der Erstellung der Tunnelverbindung die ermittelten Kommunikationscharakteristika berücksichtigt .
Dadurch kann besonders vorteilhaft ermöglicht werden, eine optimale Dienstgüte der zweiten Datenverbindung zu gewährleisten, die für die Tunnelverbindung zu verwendenden Netzwerkkomponenten und / oder Dienstgütemerkmale auf verbesserte Weise auszuwählen oder eine mögliche zusätzliche Redundanz bei der Kommunikation der Tunnelverbindung zu schaffen, indem beispielsweise ein mehrfaches Senden von Datenpaketen erfolgt. Bei einer anderen besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens erfolgt eine Eintragung der Merkmale der Tunnelverbindung in die Datenbank.
Ein besonderer Vorteil hierbei kann darin liegen, dass die Merkmale einer Tunnelverbindung auch bei Fehlern oder Störungen oder Resets weiter verfügbar sein können und nicht erneut ermittelt werden müssen.
In einer besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens liegt die Datenbank auf der ersten Recheneinheit vor.
Dadurch wird besonders vorteilhaft ermöglicht, dass die zweite Datenverbindung und / oder eine mögliche Tunnelverbindung lokal von der ersten Recheneinheit aus gesteuert werden kann. Bei einer weiteren besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens wird für die zweite Datenverbindung ein Kommunikationspfad gemäß den bestimmten Kommunikations- charakteristika reserviert.
Durch das Reservieren eines Kommunikationspfades wird besonders vorteilhaft ermöglicht, dass eine Datenübertragung über die zweite Datenverbindung gesichert wird. Dieser Vorteil zeigt sich weiterhin darin, dass eine Datenübertragung über eine zweite Datenverbindung ermöglicht wird, obwohl die zweite Datenverbindung in dieser Form nicht im Voraus geplant gewesen ist, sondern erst unter bestimmten Umständen aufgebaut wird.
Bei einer weiteren besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens verlaufen die erste Datenverbindung und die zweite Datenverbindung zumindest teilweise über den gleichen Kommunikationspfad.
Da die Übertragungsdauer über den gleichen Kommunikationspfad bereits aus der ersten Datenverbindung bekannt ist, ist er besonders vorteilhaft somit auch für die zweite Datenverbindung bekannt. Ein weiterer Vorteil liegt darin, dass zumindest über den Teil der Kommunikationspfade, der für die erste und die zweite Datenverbindung gleich ist, eine zu erwartende Integrität der Daten während einer Datenübertragung hoch ist.
Bei einer weiteren besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens werden die Kommunikationscha- rakteristika der zweiten Datenverbindung bestimmt und in die Datenbank eingetragen, bevor die Anwendung verlagert wird.
Dadurch wird besonders vorteilhaft ermöglicht, einerseits die Verlagerung vorausschauend zu planen und andererseits die Kommunikationscharakteristika der zweiten Datenverbindung unmittelbar mit der Verlagerung bereits verfügbar zu haben.
Bei einer weiteren besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens werden die über die zweite Datenverbindung übertragenen Daten zumindest über eine Teilstrecke der Verbindung hinweg verschlüsselt übertragen.
Dadurch wird besonders vorteilhaft ermöglicht, die eine erhöhte Sicherheit über die verschlüsselte Strecke zu gewährleisten, wodurch potentiellen Angreifern das unerwünschte Lesen der übertragenen Daten auf der verschlüsselten Strecke erschwert wird .
Bei einer weiteren besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens hält die zweite Datenverbindung über den Zeitraum ihrer Aktivität hinweg mindestens eine vorbestimmte minimale Dienstgüte ein oder übertrifft diese. Dadurch wird besonders vorteilhaft ermöglicht, beispielsweise eine zeitliche Obergrenze beispielsweise für eine erfolgreiche Übertragung einer vorbestimmten Datenmenge zu ermitteln und somit diese besser zu planen. Bei einer weiteren besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens , bei dem die zweite Datenverbindung über den Zeitraum ihrer Aktivität hinweg mindestens eine vorbestimmte minimale Dienstgüte einhält oder übertrifft, sichern alle Vermittlungskomponenten entlang der Kommunikationspfade der zweiten Datenverbindung die Einhaltung der vorbestimmten minimalen Dienstgüte zu. Dadurch wird besonders vorteilhaft ermöglicht, eine Kommunikation entlang dieser Pfade besser zu planen und somit eine erfolgreiche Ausführung von Datenverarbeitungsanwendungen und Kommunikationsvorgängen über bestimmte Zeiträume zu gewährleisten. Bei einer weiteren besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens wird die Instanz der Datenverarbeitungsanwendung auf der ersten Recheneinheit inaktiviert, sobald die zweite Datenverbindung in die Datenbank eingetragen ist. Dadurch wird besonders vorteilhaft ermöglicht, die zuvor durch die Instanz der Datenverarbeitungsanwendung auf der ersten Recheneinheit verwendeten Ressourcen, beispielweise Rechenkapazitäten, für eine andere Verwendung freizugeben, weiterhin einen beispielsweisen Controller der Recheneinheit zu entlasten, elektrische Energie einzusparen, weil die Instanz nicht weiter aktiv ist, und ggf. eine Diagnose der inaktivierten Instanz aus zuführen .
Bei einer weiteren besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens wird die Datenverarbeitungsan- wendung zurück auf die erste Recheneinheit verlagert, wenn die zweite Datenverbindung nicht aktiv ist. Da die ursprünglich zur Ausführung der Datenverarbeitungsanwendung geplante Recheneinheit die erste Recheneinheit ist, stellt eine Rückverlagerung eine Rückkehr zum Ausgangszustand dar. Besondere Vorteile bestehen dabei darin, dass dieser Zustand möglicherweise besser getestet ist und dass möglicherweise die Leistungsfähigkeit einer Datenverarbeitungsanwendung ohne eine Weiterleitung an eine zweite Recheneinheit leistungsfähiger ist. Bei einer besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens werden Datenverarbeitungsanwendungen, welche innerhalb der gegenwärtigen Recheneinheit ausgeführt werden, genauso behandelt wie auf eine andere Recheneinheit verlagerte Datenverarbeitungsanwendungen. Das bedeutet, dass auch in der gegenwärtigen Recheneinheit ausgeführte Datenverarbeitungsanwendungen in die Datenbank eingetragen werden. Daraus ergeben sich die besonderen Vorteile, dass besser planbares Timing bei der Kommunikation mit allen Anwendungen möglich ist und nicht verlagerte Anwendungen identisch zu verlagerten Anwendungen angesprochen werden können, mithin sogar identisches Timing für verlagerte und in der gegenwärtigen Recheneinheit ausgeführte Anwendungen erreicht werden kann.
Eine weitere besonders vorteilhaften Ausführungsform des erfindungsgemäßen Verfahrens wird in einem lokalen Datennetzwerk in einem Kraftfahrzeug ausgeführt. Dadurch wird besonders vorteilhaft ermöglicht, für die Ausführung eines Kraftfahrzeugs relevante Datenverarbeitungsanwendungen zu verlagern.
Die Erfindung wird nachfolgend anhand der Figuren der Zeichnung näher erläutert, wobei gleiche oder ähnliche Elemente mit denselben Bezugszeichen versehen sind. Es zeigt:
Figur 1 ein schematisches Ablaufdiagramm des erfindungsge¬ mäßen Verfahrens zur Verlagerung einer Datenverarbeitungsanwendung,
Figur 2 ein schematisches Ablaufdiagramm eines erfindungs¬ gemäßen Verfahrens bei dem außerdem ein Tunnelprotokoll erstellt wird aufweisend eine Erstellung eines Tunnelprotokolls,
Figur 3 ein schematisches Ablaufdiagramm eines erfindungs¬ gemäßen Verfahrens aufweisend eine mögliche Rückverlagerung auf die ursprüngliche Recheneinheit,
Figur 4 ein schematisches Ablaufdiagramm eines erfindungs- gemäßen Verfahrens aufweisend detaillierte Teilschritte be- züglich der Ermittlung von Kommunikationscharakteristika sowie optional eine mögliche Reservierung eines Kommunikationspfades und optional eine Erstellung eines Tunnelprotokolls.
Figur 5 eine schematische Darstellung der Wirkungsweise des erfindungsgemäßen Verfahrens .
Figur 1 zeigt ein Verfahren zum Verlagern von Datenverarbeitungsanwendungen von einer ersten Recheneinheit zu einer zweiten Recheneinheit in einem lokalen Datennetzwerk mit einer pa- ketbasierten Bit-Übertragungsschicht und einer IP-basierten oder MOST-basierten Vermittlungsschicht in einem schematischen Ablaufdiagramm. Dabei wird das Verfahren zunächst gestartet 110. Im nächsten Schritt 130 wird eine Datenverarbeitungsanwendung über eine erste Datenverbindung von der ersten Recheneinheit zur zweiten Recheneinheit verlagert. Darauf folgend werden Kom- munikationscharakteristika zumindest einer zweiten Datenver¬ bindung, welche den Kommunikationsendpunkt der Datenverar¬ beitungsanwendung vor der Verlagerung mit dem Kommunikationsendpunkt der Datenverarbeitungsanwendung nach der Verla- gerung verbindet, bestimmt 150. Danach werden die Kommunika¬ tionsendpunkte der Datenverarbeitungsanwendung und/oder die Kommunikationscharakteristika in eine Datenbank eingetragen 170. Figur 2 zeigt ein erfindungsgemäßes Verfahren bei dem außerdem ein Tunnelprotokoll erstellt wird 165 in einem schematischen Ablaufdiagramm. Hierbei wird zusätzlich zwischen dem Bestimmen der Kommunikationscharakteristika 150 und dem Eintragen der Kommunikationsendpunkte der Datenverarbeitungsanwendung und/oder der Kommunikationscharakteristika in eine Datenbank 170 zusätzlich ein Tunnelprotokoll erstellt 165. Das Tunnelprotokoll kann beispielsweise Angaben zur Datenkapselung aufweisen. Bei der Erstellung der Tunnelverbindung können die ermittelten Kommunikationscharakteristika berücksichtigt werden.
Figur 3 zeigt das schematische Ablaufdiagramm eines erfin¬ dungsgemäßen Verfahrens, bei dem eine Rückverlagerung der Anwendung 230, d.h. die erneute Verlagerung der zuvor verlagerten Datenverarbeitungsanwendung von der zweiten Recheneinheit zurück auf die erste Recheneinheit, möglich ist. Dazu wird nach dem Eintragen der Kommunikationsendpunkte der Datenverarbei- tungsanwendung und/oder der Kommunikationscharakteristika in eine Datenbank 170 zunächst überprüft 210, ob die zweite Da¬ tenverarbeitung aktiv ist oder noch aktiv ist. Wenn die zweite Datenverbindung noch aktiv ist, verbleibt die Datenverarbei¬ tungsanwendung in ihrem verlagerten Zustand 220. Wenn die zweite Datenverbindung nicht aktiv ist, wird die verlagerte Daten¬ verarbeitungsanwendung zurück auf die erste Recheneinheit verlagert 230. Alternativen des Verfahrens sind denkbar, bei denen die Datenverarbeitungsanwendung auf andere Recheneinheiten als die erste oder die zweite Recheneinheit verlagert wird. Die Überprüfung, ob die zweite Datenverbindung aktiv ist oder nicht, kann einmalig oder wiederholt erfolgen. Die
Überprüfung kann aber auch von bestimmten Auslösern abhängen, welche beispielsweise in einem Datenverarbeitungsprogramm vorgesehen sind oder festgelegt werden können. Weiterhin sind Alternativen des Verfahrens denkbar, bei denen in Abhängigkeit von anderen Kriterien als der Aktivität der zweiten Datenverbindung eine weitere Verlagerung der Anwendung erfolgt. Solche Kriterien können beispielsweise die Aktivität der Da¬ tenverarbeitungsanwendung, die Relevanz oder Priorität der Datenverarbeitungsanwendung, die Rechenauslastung der ersten, der zweiten oder weiterer Recheneinheiten, Engpässe oder Ka- pazitätsverteilungsgegebenheiten im Datennetzwerk sein.
Figur 4 zeigt ein erfindungsgemäßes Verfahren mit optionalen, detaillierten Teilschritten bezüglich der Ermittlung von
Kommunikationscharakteristika sowie, optional, eine mögliche Reservierung eines Kommunikationspfades und, außerdem optional, eine Erstellung eines Tunnelprotokolls in einem schematischen Ablaufdiagramm. Hierbei ist der Verfahrensschritt, in dem Kommunikationscharakteristika zumindest einer zweiten Daten¬ verbindung, welche den Kommunikationsendpunkt der Datenver¬ arbeitungsanwendung vor der Verlagerung mit dem Kommunikati- onsendpunkt der Datenverarbeitungsanwendung nach der Verlagerung verbindet, beispielhaft in mögliche Unterschritte aufgeteilt: Zunächst wird überprüft 151, ob die Datenverar¬ beitungsanwendung auf eine Recheneinheit mit einer abweichenden Netzwerkadresse verlagert wird. Hierbei kann dazwischen un¬ terschieden werden, ob es sich um eine Netzwerkadresse im gleichen Subnetz (Das Subnetz ist eine beispielsweise bei IP-Adressen übliche Unterteilung des Adressraumes) wie das der ersten Recheneinheit handelt. Es kann sich um die gleiche Netzwerkadresse handeln, beispielsweise wenn mehrere virtuelle Recheneinheiten auf der gleichen physischen Hardware ausgeführt werden. Wird auf eine zweite Recheneinheit mit einer abweichenden Netzwerkadresse verlagert, so wird die zweite Recheneinheit bestimmt und die Netzwerkadresse des Verlagerungszieles be- stimmt, d.h. die Netzwerkadresse nach der Verlagerung 152. In einem nächsten Schritt wird der Kommunikationsendpunkt, der der Anwendung nach deren Verlagerung zugeordnet ist, bestimmt 153. Man könnte diesen Kommunikationsendpunkt auch den
Ziel-Kommunikationsendpunkt nennen, im Unterschied zum Kom- munikationsendpunkt der Datenverarbeitungsanwendung vor deren Verlagerung, den man auch als den Start-Kommunikationsendpunkt bezeichnen kann: Die Verlagerung erfolgt in dieser Nomenklatur derart, dass einer Datenverarbeitungsanwendung vor ihrer Verlagerung der Start-Kommunikationsendpunkt zugeordnet ist und nach ihrer Verlagerung der Ziel-Kommunikationsendpunkt. Ein
Kommunikationsendpunkt eine Netzwerkadresse Adresse enthalten. Eine Netzwerkadresse kann eine Adresse mit einem Netzwerkport oder ohne Netzwerkport sein. Weiterhin kann ein Kommunikati¬ onsendpunkt ein Socket enthalten, welches beispielsweise einer Datenverarbeitungsanwendung von einem Betriebssystem beispielsweise einer Recheneinheit zugewiesen werden kann. In einem nächsten Schritt kann bestimmt werden, welche Netzwerkschichten von der zweiten Datenverbindung durchschritten werden 154. In anderen Worten: Es kann bestimmt werden, welche Netzwerk- schichten des Datennetzwerks durchschritten werden, um vom Kommunikationsendpunkt der Datenverarbeitungsanwendung vor deren Verlagerung zum Kommunikationsendpunkt der Datenverar- beitungsanwendung nach deren Verlagerung zu gelangen. Unter Netzwerkschichten kann man beispielsweise die verschiedenen Schichten eines Datennetzwerks ansehen, beispielsweise wenn man ein Netzwerk mithilfe Begriffe eines Schichtenarchitek- tur-Modells beschreibt. Vorzugsweise kann anhand des OSI-Modells (Die Abkürzung OSI steht für den englischen Begriff „Open Systems Interconnection" . Das Modell wird üblicherweise im Englischen als „Open Systems Interconnection Model" bezeichnet.) bestimmt werden, welche Netzwerkschichten des Datennetzwerks durch- schritten werden. In einem nächsten Schritt können Vermittlungskomponenten entlang des/der Kommunikationspfade/s der zweiten Datenverbindung bestimmt werden 155. Vermittlungskomponenten sind, wie oben beschrieben, beispielsweise Router oder Switches. Dabei können alle Komponente eines Pfades bestimmt werden oder auch nur die Komponenten, welche technisch in der Lage sind, eine Maßnahme zur Gewährleistung einer Dienstgüteanforderung umzusetzen, beispielsweise eine Reservierung eines Kommunikationspfades oder die Reservierung einer gewissen Datenübertragungsbandbreite für eine bestimmte Datenverar- beitungsanwendung. Die Komponenten können entlang eines Kommunikationspfades oder auch entlang mehrerer in Frage kommender Pfade bestimmt werden. In einem nächsten Schritt können Kommunikationsparameter der zweiten Datenverbindung bestimmt werden 156. Beispiele für solche Kommunikationsparameter können Datenrate, Latenz, Priorität der Kommunikation, Jitter, Packet Loss, (geplante oder tatsächliche) Verbindungsdauer, Daten¬ menge, Anzahl der Pfade, Redundanz der Pfade, Bitfehlerrate, Datenframe-Größe und Synchronisationsgenauigkeit sein. Auf diesen Schritt kann direkt der Schritt der Eintragung in die Datenbank 170 folgen. Es kann aber auch als nächster Schritt eine optionale Reservierung des neuen Kommunikationspfades erfolgen, wobei die ermittelten Kommunikationscharakteristika berück¬ sichtigt werden 160. Auf den Schritt der Reservierung des Kommunikationspfades kann nun wieder direkt der Schritt der Eintragung in die Datenbank 170 folgen oder es kann optional als weiterer Zwischenschritt eine Erstellung eines Tunnelprotokolls erfolgen 165, wobei zumindest teilweise die ermittelten Kom- munikationscharakteristika berücksichtigt werden können.
In Figur 5 wird die Wirkungsweise des erfindungsgemäßen Ver- fahrens anhand einer schematischen Darstellung beispielsweise für eine externe, dritte Datenverarbeitung DVA_x, welche auf einer externen dritten Recheneinheit RE_x ausgeführt wird, illustriert. Dabei kann extern sowohl bedeuten, dass sich die dritte Recheneinheit (und damit auch die dritte Datenverar- beitungsanwendung) im lokalen Fahrzeugnetzwerk als auch in einer vom Fahrzeug entfernten Anordnung, beispielsweise auf einem Server oder in einer Datencloud. Die dritte Datenverarbei¬ tungsanwendung hat mit der Datenverarbeitungsanwendung DVA (nicht gezeigt) kommuniziert, welche auf der Recheneinheit REl mit Datenbank DB (REl) ausgeführt wurde. Die Datenverarbei¬ tungsanwendung DVA (nicht gezeigt) wurde von der ersten Recheneinheit REl auf die zweite Recheneinheit RE2 mit einer Datenbank DB(RE2) verlagert. Zwischen der ersten Recheneinheit REl und der zweiten Recheneinheit RE2 besteht eine Tunnel- Verbindung mit einem Kommunikationsendpunkt Tul auf der ersten Recheneinheit REl und einem Kommunikationsendpunkt Tu2 auf der zweiten Recheneinheit RE2, wobei die Tunnelverbindung die Kommunikationsendpunkte der Datenverarbeitungsanwendung DVA (nicht gezeigt) vor ihrer Verlagerung und der Datenverarbei- tungsanwendung DVAX nach ihrer Verlagerung miteinander verbindet. Wenn nun die externe dritte Datenverarbeitungsanwendung nach der Verlagerung der Datenverarbeitungsanwendung DVAX mit der verlagerten Datenverarbeitungsanwendung DVAX kommuniziert, wird sie durch die Tunnelverbindung vom Kommunikationsendpunkt Tul vor der Verlagerung auf der ersten Recheneinheit weitergeleitet und gelangt zum Kommunikationsendpunkt Tu2 nach der Verlagerung auf der zweiten Recheneinheit RE2. Auf diese Weise ermöglicht ein erfindungsgemäßes Verfahren schnell (und un¬ terbrechungsfrei) eine Datenverarbeitungsanwendung von einer Recheneinheit auf eine andere Recheneinheit in einem lokalen Datennetzwerk zu verlagern. Dabei ist eine Verlagerung so zu verstehen, dass die verlagerte Datenverarbeitungsanwendung auf den beteiligten Recheneinheiten ausgeführt wird oder zumindest ausgeführt werden kann. Bestimmte Weiterbildungen des erfindungsgemäßen Verfahrens ermöglichen zudem die Einhaltung von bestimmten Dienstgüteanforderungen. Dadurch kann ermöglicht werden, dass die Dienstgüteanforderungen vor der Verlagerung der Datenverarbeitungsanwendung auch nach der Verlagerung noch erfüllt werden. Und es kann ermöglicht werden, dass für die externe, dritte Datenverarbeitungsanwendung die Verlagerung ohne negative Folgen erfolgt. Dabei kann beispielsweise eine externe dritte Kommunikationsverbindung KV_x aus der Sicht einer externen dritten Recheneinheit RE_x oder einer externen dritten Datenverarbeitungsanwendung DVA_x als vor und nach einer erfindungsgemäßen Verlagerung einer Datenverarbeitungsanwendung identisch wahrgenommen werden, weil mithilfe der Tunnelver- bindung vom Kommunikationsendpunkt Tul auf der ersten Re¬ cheneinheit RE1 zum Kommunikationsendpunkt Tu2 auf der zweiten Recheneinheit RE2 eine Tunnelkommunikationsverbindung KV_t eine Weiterleitung bewirkt. Somit könnte es für eine externe dritte Recheneinheit RE_x und / oder eine externe dritte Datenver- arbeitungsanwendung DVA_x so erscheinen, als kommunizierten sie auch nach einer Verlagerung einer Datenverarbeitungsanwendung DVA (nicht gezeigt) von einer ersten Recheneinheit RE1 auf eine zweite Recheneinheit RE2 weiterhin mit der Recheneinheit RE1, wobei diese nur noch als Weiterleitungsstelle agiert und die verlagerte Datenverarbeitungsanwendung DVAX tatsächlich nach der Verlagerung auf der zweiten Recheneinheit RE2 liegt. Dabei kann die Weiterleitung durch das Zusammenwirkung von Tunnelverbindungen und Datenbanken erfolgen. Dabei kann beispielsweise auf der ersten Recheneinheit ein Umverpacken von eingehenden Datenframes zur Weiterleitung an die Datenverarbeitungsanwendung DVAX nach deren Verlagerung erfolgen. In einer anderen Variante sind die externe dritte Recheneinheit RE_x und / oder eine externe dritte Datenverarbeitungsanwendung DVA_x dazu in der Lage, zu erkennen, auf welcher Recheneinheit eine Daten- Verarbeitungsanwendung ausgeführt ist und / oder ob eine Verlagerung stattgefunden hat.

Claims

Patentansprüche
1. Verfahren zum Verlagern von Datenverarbeitungsanwendungen von einer ersten Recheneinheit zu einer zweiten Recheneinheit in einem lokalen Datennetzwerk mit einer paketbasierten Bit-Übertragungsschicht und einer IP-basierten oder MOST-basierten Vermittlungsschicht, umfassend zu¬ mindest folgende Verfahrensschritte, nämlich:
a. Das Verfahren wird gestartet,
b. eine Datenverarbeitungsanwendung wird über eine erste Datenverbindung von der ersten Recheneinheit zur zweiten Recheneinheit verlagert,
c. Kommunikationscharakteristika zumindest einer zweiten Datenverbindung, welche den Kommunikationsendpunkt der Datenverarbeitungsanwendung vor der Verlagerung mit dem Kommunikationsendpunkt der Da¬ tenverarbeitungsanwendung nach der Verlagerung verbindet, werden bestimmt,
d. die Kommunikationsendpunkte der Datenverarbei¬ tungsanwendung und/oder die Kommunikationscharakteristika werden in eine Datenbank eingetragen.
2. Verfahren nach Anspruch 1, wobei
a. die gesamte Datenverarbeitungsanwendung und gegenwärtige Ausführungsparameter der Datenverarbeitungsanwendung übermittelt werden
oder
b. wobei zum Verlagern der Datenverarbeitungsanwendung gegenwärtige Ausführungsparameter der Datenverarbeitungsanwendung übermittelt werden.
3. Verfahren nach einem der vorangehenden Ansprüche, wobei die zweite Datenverbindung eine Tunnelverbindung ist, welche den Kommunikationsendpunkt der Anwendung vor der Verla¬ gerung mit dem Kommunikationsendpunkt der Anwendung nach der Verlagerung mittels Datenkapselung verbindet. Verfahren nach Anspruch 3, wobei zur Etablierung der Tunnelverbindung ein Tunnelprotokoll, das Angaben zur Datenkapselung aufweist, erstellt wird.
Verfahren nach Anspruch 3 oder 4, wobei bei der Erstellung der Tunnelverbindung die ermittelten Kommunikationscharakteristika berücksichtigt werden.
Verfahren nach einem der Ansprüche 3 - 5, wobei eine Eintragung der Merkmale der Tunnelverbindung in die Datenbank erfolgt.
Verfahren nach einem der vorangehenden Ansprüche, wobei die Datenbank auf der ersten Recheneinheit vorliegt.
Verfahren nach einem der vorangehenden Ansprüche, wobei allen beteiligten Recheneinheiten eine Kopie der Datenbank vorliegt .
Verfahren nach einem der vorangehenden Ansprüche, wobei für die zweite Datenverbindung ein Kommunikationspfad gemäß den bestimmten Kommunikationscharakteristika reserviert wird .
Verfahren nach einem der vorangehenden Ansprüche, wobei die erste Datenverbindung und die zweite Datenverbindung zumindest teilweise über den gleichen Kommunikationspfad verlaufen .
Verfahren nach einem der vorangehenden Ansprüche, wobei die Kommunikationscharakteristika der zweiten Datenverbindung bestimmt und in die Datenbank eingetragen werden, bevor die Anwendung verlagert wird.
Verfahren nach einem der vorangehenden Ansprüche, wobei die über die zweite Datenverbindung übertragenen Daten zumindest über eine Teilstrecke der Verbindung hinweg verschlüsselt übertragen werden. Verfahren nach einem der vorangehenden Ansprüche, wobei die zweite Datenverbindung über den Zeitraum ihrer Aktivität hinweg mindestens eine vorbestimmte minimale Dienstgüte einhält oder diese übertrifft.
Verfahren nach Anspruch 13, wobei alle Vermittlungskomponenten entlang der Kommunikationspfade der zweiten Datenverbindung die Einhaltung der vorbestimmten minimalen Dienstgüte zusichern.
Verfahren nach einem der vorangehenden Ansprüche, wobei die Instanz der Datenverarbeitungsanwendung auf der ersten Recheneinheit inaktiviert wird, sobald die zweite Da¬ tenverbindung in die Datenbank eingetragen ist.
Verfahren nach einem der vorangehenden Ansprüche, wobei die Datenverarbeitungsanwendung zurück auf die erste Recheneinheit verlagert wird, wenn die zweite Datenver¬ bindung nicht aktiv ist.
Verfahren nach einem der vorangehenden Ansprüche, wobei Datenverarbeitungsanwendungen, welche innerhalb der lokalen Recheneinheit ausgeführt werden, genauso behandelt werden wie auf eine andere Recheneinheit verlagerte Da¬ tenverarbeitungsanwendungen .
Verfahren nach einem der vorangehenden Ansprüche, welches in einem lokalen Datennetzwerk in einem Kraftfahrzeug ausgeführt wird.
PCT/EP2018/066398 2017-06-23 2018-06-20 Verfahren zum verlagern von datenverarbeitungsanwendungen von einer ersten recheneinheit zu einer zweiten recheneinheit Ceased WO2018234375A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102017210671.9A DE102017210671A1 (de) 2017-06-23 2017-06-23 Verfahren zum Verlagern von Datenverarbeitungsanwendungen von einer ersten Recheneinheit zu einer zweiten Recheneinheit
DE102017210671.9 2017-06-23

Publications (1)

Publication Number Publication Date
WO2018234375A1 true WO2018234375A1 (de) 2018-12-27

Family

ID=62684832

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2018/066398 Ceased WO2018234375A1 (de) 2017-06-23 2018-06-20 Verfahren zum verlagern von datenverarbeitungsanwendungen von einer ersten recheneinheit zu einer zweiten recheneinheit

Country Status (2)

Country Link
DE (1) DE102017210671A1 (de)
WO (1) WO2018234375A1 (de)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100287548A1 (en) * 2009-05-06 2010-11-11 Vmware, Inc. Long Distance Virtual Machine Migration
EP2942709A1 (de) * 2013-12-31 2015-11-11 Huawei Technologies Co., Ltd. Lebendmigrationsverfahren für virtuelle maschine, speicherdatenverarbeitungsverfahren für virtuelle maschine, server und virtuelles maschinensystem
WO2016069382A1 (en) * 2014-10-26 2016-05-06 Microsoft Technology Licensing, Llc Virtual overlay mobility using label based underlay network forwarding

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100287548A1 (en) * 2009-05-06 2010-11-11 Vmware, Inc. Long Distance Virtual Machine Migration
EP2942709A1 (de) * 2013-12-31 2015-11-11 Huawei Technologies Co., Ltd. Lebendmigrationsverfahren für virtuelle maschine, speicherdatenverarbeitungsverfahren für virtuelle maschine, server und virtuelles maschinensystem
WO2016069382A1 (en) * 2014-10-26 2016-05-06 Microsoft Technology Licensing, Llc Virtual overlay mobility using label based underlay network forwarding

Also Published As

Publication number Publication date
DE102017210671A1 (de) 2018-12-27

Similar Documents

Publication Publication Date Title
EP1941674B1 (de) Teilnehmer und kommunikationscontroller eines kommunikationssystems und verfahren zur realisierung einer gateway-funktionalität in einem teilnehmer eines kommunikationssystems
DE69922690T2 (de) Fehlertolerante netze
EP1554839B1 (de) Verfahren und knoten zur parallelen nutzung eines kommunikationsnetzwerkes für echtzeitanwendungen und nicht-echtzeitanwendungen
DE60318651T2 (de) Verfahren und Vorrichtung zur dynamischen Konfigurationsverwaltung
DE60303309T2 (de) Snmp systemeinzelabbild eines am netzwerk angeschlossenen speichers
DE102013209118A1 (de) Beibehaltung und Änderung von Netzwerküberlastungsbenachrichtigungen während der Übertragung von Netzwerkdaten zwischen einem physischen Netzwerk und einem virtuellen Netzwerk
DE112015004243B4 (de) Ethernet-Interfacemodul
EP3777054B1 (de) Verfahren zum betreiben eines ethernet-bordnetzes eines kraftfahrzeugs, steuereinheit und ethernet-bordnetz
EP3577871B1 (de) Verfahren und vorrichtung zur modularen lenkung eines avb-streams
EP3618384B1 (de) Verfahren zur simulation einer verarbeitung von reservierungsanfragen für multicast-datenströme in kommunikationsnetzen und simulationssystem
DE102019219475A1 (de) Verfahren zur Optimierung der Zeitsynchronisation zwischen über ein Kommunikationsnetzwerk verbundenen Netzwerkgeräten
EP2556651B1 (de) Verfahren und vorrichtung zum austausch von daten zwischen zwei geräten eines automatisierungsnetzwerks
DE112021000731T5 (de) Verfahren zum Aufbau eines vertrauenswürdigen softwaredefinierten Netzwerks auf Basis von Blockchain
DE102005060085A1 (de) Verfahren, Kommunikationsnetzwerk und Steuereinheit zum zyklischen Übertragen von Daten
DE202015009265U1 (de) Einheitliche api zur programmierung beider server und des fabric für die feinoptimieirung von netzwerken
DE102013215035B3 (de) Soft-Redundanzprotokoll
WO2013138833A1 (de) Verfahren und apparat zur bildung von software fault-containment units (swfcus) in einem verteilten echtzeitsystem
WO2018234375A1 (de) Verfahren zum verlagern von datenverarbeitungsanwendungen von einer ersten recheneinheit zu einer zweiten recheneinheit
DE102021111950B4 (de) Verfahren zur Koordination des Zugriffs auf Ressourcen eines verteilten Computersystems, Computersystem und Computerprogramm
EP3167593B1 (de) Vorrichtung, verfahren und computerprogrammprodukt zur sicheren datenkommunikation
DE102023120013A1 (de) Smart nic/dpu translation agent für vendor-specific communication
EP1629637B1 (de) Übertragung von nachrichten in einem verteilten, zeitgesteuerten echtzeitsystem
DE10055066A1 (de) Verfahren zum multidirektionalen Austausch von Informationen zwischen Teilnehmern auf Ethernet Basis
DE112016007522T5 (de) Fehlertolerante Betriebsgruppe bei einem verteilten Netzwerk
DE102021204789A1 (de) Verfahren und system zur zusicherung garantierter dienstgüte in fahrzeugen

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18732771

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18732771

Country of ref document: EP

Kind code of ref document: A1