Apparatus and method for network and computing resource management for service-oriented communication in a software-defined network architecture
Patent Information
- Application Number
- EP2023702319
- Authority / Receiving Office
- EP · EP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2022-02-22
- Filing Date
- 2023-01-26
- Publication Date
- 2025-01-01
AI Technical Summary
In software-defined network (SDN) architectures, existing technologies face challenges in efficiently managing network and computing resources for service-oriented communication, leading to bottlenecks and overloads, which affect data line usage and control device performance.
An SDN controller monitors network traffic, evaluates data on computing resource usage and service-oriented communication, and configures network and computing resources to optimize resource allocation, preventing bottlenecks by dynamically assigning service instances to control devices and adjusting message paths.
This approach ensures that communication networks are adaptable to service requirements, preventing bottlenecks and overloads by optimizing resource usage and message routing, thereby enhancing network efficiency.
Smart Images

Figure 1.1
Abstract
Description
[0001] Description
[0002] title
[0003] Apparatus and method for network and computing resource management for service-oriented communication in a software-defined network architecture
[0004] State of the art
[0005] The invention relates to an apparatus and a method for network and computing resource management for service-oriented communication in a software-defined network architecture.
[0006] Disclosure of the invention
[0007] The method for network and computing resource management for service-oriented communication in a software-defined network architecture (SDN) provides that an SDN controller monitors network traffic in a communication network, wherein the SDN controller receives data about computing resource usage and about service-oriented communication in the communication network, wherein the SDN controller determines a network and computing resource configuration based on the result of an evaluation of the data, and the SDN controller configures the network and computing resources based on the network and computing resource configuration. Through service-oriented communication, the services that need to communicate with each other automatically find each other in the communication network 100. Through the network and computing resource management of the SDN controller, the communication network is adapted to the requirements of the services.
[0008] Preferably, depending on the result of the data analysis, an assignment of service instances to control units and paths for messages exchanged between the instances are determined, which characterize the network and computing resource configuration. This avoids bottlenecks on data lines and overloaded control units in the communication network.
[0009] For example, if the result of the data analysis reveals a bottleneck on a data line of the communication network to which a network switch of the communication network forwards messages, this network switch is configured by the network configuration not to forward these messages to the data line.
[0010] For example, if the result of the data evaluation reveals an overloaded control unit on which an instance of a service is running, the instance is configured by the resource configuration not to send an offer for the service or to leave an incoming request for the service unanswered.
[0011] For example, if the evaluation of the data reveals that an overloaded control unit is running an instance of a service, at least one network switch is configured by the network configuration not to forward any offer for the service from this instance.
[0012] A device for network and computing resource management for service-oriented communication in a software-defined network architecture (SDN) provides that an SDN controller is configured to monitor network traffic in a communication network, wherein the SDN controller is configured to receive data about computing resource usage and about service-oriented communication in the communication network, wherein the SDN controller is configured to determine a network and computing resource configuration depending on the result of an evaluation of the data, and wherein the SDN controller is configured to configure the network and computing resources depending on the network and computing resource configuration. This device enables the communication network to be adapted to the requirements of the services.The SDN controller is preferably designed to determine, depending on the result of the data evaluation, an assignment of instances of services to control devices and paths for messages that the instances exchange with each other, which characterize the network and computing resource configuration.
[0013] For example, if the result of the data evaluation reveals a bottleneck on a data line of the communication network to which a network switch of the communication network forwards messages, the SDN controller is designed to configure this network switch via the network configuration so that these messages are not forwarded to the data line.
[0014] For example, if the result of the data evaluation detects an overloaded control unit on which an instance of a service is running, the SDN controller is designed to configure the instance through the resource configuration to not send an offer for the service or to leave an incoming request for the service unanswered.
[0015] For example, if the result of the data evaluation detects an overloaded control unit on which an instance of a service is running, the SDN controller is designed to configure at least one network switch via the network configuration not to forward any offer for the service from this instance.
[0016] In one example, the communication network comprises control devices, at least one network switch and / or at least one gateway of a vehicle, an industrial system, or an Internet of Things system, wherein the SDN controller is configured to install, update, activate, or deactivate instances of services on control devices according to the network and / or computing resource configuration, and / or wherein the SDN controller is configured to configure at least one network switch and / or at least one gateway to forward or not forward messages from and / or to services or their instances according to the network and / or computing resource configuration. A computer program may be provided, wherein the computer program comprises computer-readable instructions, upon the execution of which by a computer, the method runs.
[0017] Further advantageous embodiments can be found in the following description and the drawing. The drawing shows:
[0018] Fig. 1 schematically shows part of a communication network with a software-defined network architecture,
[0019] Fig. 2 Steps in a method for network and computing resource management for service-oriented communication in the software-defined network architecture.
[0020] Figure 1 shows a schematic representation of part of a communication network 100.
[0021] The communication network 100 is a software-defined communication network (SDN) with a software-defined network architecture (SDN). The control of the communication network 100 is decoupled from the functions for forwarding messages within the communication network 100. The control is programmable independently of the forwarding functions.
[0022] The communications network 100 comprises a service-oriented architecture. The underlying infrastructure, i.e., the hardware, of the communications network 100 is abstracted from services, i.e., software, that run in the communications network 100. An instance of a service runs on a suitable device in the infrastructure. An instance is a source or destination of a message. A message from a source is forwarded to its destination via a path in the infrastructure defined by the SDN architecture.
[0023] In the example, the communication network 100 comprises a first control unit 102, which is connected to a second network switch 106 via a first network switch 104. The second network switch 106 is connected to a third network switch 108 and a fourth network switch 110. The second network switch 106 is connected to a second control unit 112.
[0024] The third network switch 108 is connected to a third control unit 114.
[0025] The fourth network switch 110 is connected to a fourth control unit 116.
[0026] In the example, the control units and network switches are arranged in a vehicle 118.
[0027] The communication network 100 comprises, in a first part of the communication network 100, data lines 120 of a first network type. The control units and network switches are configured to communicate via the data lines 120 according to a first protocol of the first network type. In the example, the first network type is a technology for wired data networks that interconnects software and / or hardware. In the example, the data lines 120 are LAN cables, and the protocol is Ethernet. Ethernet enables data exchange between the control units as end devices.
[0028] A respective data line 120, ie a LAN cable, physically connects the second control unit 112 to the second network switch 106, the third control unit 114 physically to the third network switch 108, and the fourth control unit 116 physically to the fourth network switch 110. In the example, no physical data line to one of the other control units or network switches is provided between the second control unit 112, the third control unit 114, or the fourth control unit 116.
[0029] A data line 120 is arranged between the second network switch 106 and the third network switch 108, as well as between the third network switch 108 and the fourth network switch 110. A data line 120 is arranged between the second network switch 106 and the first network switch 102, as well as between the third network switch 108 and the first network switch 102, and between the fourth network switch 110 and the first network switch 102.
[0030] In the example, no active network device is provided in any of the data lines 120. The second control unit 112, the third control unit 114, and the fourth control unit 116 are connected to a second part of the communications network 100. The second control unit 112, the third control unit 114, and the fourth control unit 116 are configured to communicate via lines 122 of a second network type according to a second protocol of the second network type. In the example, the second network type is a technology for wired data networks that interconnects software and / or hardware. In the example, the lines 122 are twisted cable pairs, and the protocol is the Controller Area Network Protocol. The Controller Area Network Protocol allows data exchange between these control units as end devices according to a predetermined scheme. In the example, the lines 122 do not include any active network devices.
[0031] In the example, the first control unit 102 is not connected to the second part of the network via one of the lines 122.
[0032] In the example, the second control unit 112 offers a first instance 124 of a first service. In the example, the third control unit 114 offers a second instance 126 of the first service. In the example, the fourth control unit 116 offers a first instance 128 of a second service. In the example, the first control unit 102 offers a second instance 130 of the second service. In the example, the second control unit 112 offers a single instance 132 of a third service in the communication network 100. In the example, the first control unit 102 offers a single instance 134 of a fourth service in the communication network 100. In the example, the third control unit 114 offers a single instance 136 of a fifth service in the communication network 100.
[0033] In the example, an SDN controller 138 is provided on the first control unit 102, which is configured to control the SDN. The SDN controller 138 is implemented, in particular, in a logically centralized, software-based manner.
[0034] In the example, the SDN controller 138 is configured to transfer the service instances to a respective control unit on which the service is to be executed. In the example, the SDN controller 138 is configured to activate the instance on the control unit or control units on which the service is to be executed. In the example, the SDN controller 138 is configured to deactivate the instance on the control unit or control units on which the service is not to be executed.
[0035] A service that requires another service for its function is designed in the example to find this other service in the communication network 100. For example, the service is designed to search for a request for this other service via the communication network 100. In the example, an instance of this service is designed to find an instance of the other service. The service or instance is designed to send the request, in particular as a broadcast, into the communication network 100. A service that offers its function to other services is designed in the example to offer itself via the communication network 100. For example, the service is designed to offer its offer via the communication network 100. In the example, the service or an instance of this service is designed to send the offer, in particular as a broadcast, into the communication network 100.
[0036] A data stream between a source and a destination, i.e., messages sent from one instance to another, is forwarded in the communications network 100. If too many data streams simultaneously travel over the same data line 120 or the same network switch, a bottleneck can occur. If too many instances of different services are used on one of the control units, that control unit can become overloaded.
[0037] The following procedure prevents bottlenecks from occurring and / or overloading a control unit. In the process, the SDN controller 138 performs network and computing resource management.
[0038] In the example, the SDN controller 138 is configured to monitor the network traffic in the communications network 100. In the example, the SDN controller 138 is configured to receive offers and / or requests occurring in the network traffic. In the example, the SDN controller 138 is configured to evaluate received offers and / or requests. In the example, the SDN controller 138 is configured to detect an existing or potential bottleneck on a data line 120. In the example, the SDN controller 138 is configured to deactivate the forwarding of messages from data streams via the data line 120 if this would cause the data line 120 to become overloaded.
[0039] In the example, the SDN controller 138 is configured to detect whether a control unit is overloaded or would be overloaded by activating an instance. In the example, the SDN controller 138 is configured to control the use of the instances and / or the assignment of the instances to the control units in the communication network 100 in such a way as to prevent the control unit from becoming overloaded.
[0040] The procedure is described using the example of the process shown schematically in Figure 2.
[0041] In a step 202, the SDN controller 138 monitors the network traffic in the communication network 100, wherein the SDN controller 138 receives data about computing resource usage and about service-oriented communication in the communication network 100.
[0042] In the example, the SDN controller 138 monitors the network traffic and collects data that includes, for example, the following:
[0043] Knowledge about available service instances and their assignment to the control units. This data is available, for example, as part of the offers and / or requests occurring in network traffic. Messages according to the Scalable Service-Oriented Middleware over Internet Protocol (SOME / IP) protocol or the Data Distribution Service (DDS) are intended as offers or requests, for example.
[0044] Requirements for the communications network 100 and computing resources. This information can be derived, for example, from a description of a service. For example, the description includes information on the quality of the service. The description is included, for example, in the offer and / or request, particularly according to SOME / IP or DDS.
[0045] Network topology. The network topology is determined using a separate protocol, such as the Link-Layer Discovery Protocol (LLDP).
[0046] Computing resource availability at the control units. This information is known, for example, through an internal scheduling model or is communicated by the control units, particularly regularly or irregularly, or upon request by the SDN controller 138. It can be provided that the control unit also communicates this information triggered by an event. The event could be, for example, a temporary unavailability of an instance of the service on the control unit.
[0047] In a step 204, the SDN controller 138 determines the network and computing resource configuration depending on a result of an evaluation of the data.
[0048] In the example, the SDN controller 138 determines an assignment of instances of services to control devices and paths for messages that the instances exchange with each other, ie the paths for the corresponding data streams.
[0049] In the example, the allocation is determined depending on the computing resource availability of the control units in such a way that no control unit offering a service is overloaded.
[0050] In the example, the assignment is determined depending on at least one network resource of the communication network 100 in such a way that no bottleneck occurs at the data lines 120 or network switches in the communication network 100.
[0051] For example, an optimization problem is formulated and solved. The optimization problem can be formulated as a constraint satisfaction problem (CSP) or heuristically. In the example, the solution to the optimization problem represents the assignment of instances to control units and / or paths to pairs of instances.
[0052] In a step 206, the network and computing resources are configured by the SDN controller 138 depending on the network and computing resource configuration.
[0053] In the example, the SDN controller 138 implements a result of an evaluation of the data, in particular the solution to the optimization problem, in the communication network 100.
[0054] In the example, the SDN controller sends 138 instructions that do the following:
[0055] The SDN controller 138 programs tables to look up in the network switches to route messages between the pairs of instances via the designated paths.
[0056] The SDN controller 138 configures instances to communicate with each other. One example provides a protocol for this purpose, which the SDN controller 138 uses to inform an instance whether it should be active or deactivated. Another example provides an extension to SOME / IP or DDS, which the SDN controller 138 uses to instruct an instance either not to send an offer or not to respond to a request. In this example, the SDN controller 138 instructs the instance not to send an offer or not to respond to a request that runs on the otherwise overloaded control unit.
[0057] If a service has two instances, the SDN controller 138 instructs the network switches to discard a broadcast offering the service from one of the instances. In this example, the SDN controller 138 instructs the network switches to discard the broadcast from the instance running on the otherwise overloaded control device.
[0058] For example, if there is a bottleneck between the second
[0059] Network switch 106 and the third network switch 108, for the first instance 124 of the first service on the second control unit 112 and the second instance 126 of the first service on the third control unit 114, the network switches are configured to discard the broadcast with the offer of the first service from the second instance 126 of the first service, i.e., from the third control unit 114. Discarding in this context means that if the broadcast is received at a network switch, it is not forwarded by this network switch. A similar procedure is followed for the second service, for example, if it is detected that a bottleneck would arise from its data stream.
[0060] For example, if there is an overload of one of the control units on which one of several instances of a service is offered, the SDN controller 138 instructs the network switches to discard a broadcast with which the service is offered by the instance running on the overloaded control unit.
[0061] In the case of the first instance 124 of the first service on the second control unit 112 and the second instance 126 of the first service on the third control unit 114, the network switches are configured, for example, in the event of an overload on the second control unit 112, to discard the broadcast offering the first service from the first instance 124 of the first service, i.e., from the second control unit 112. Discarding, in this context, means that the broadcast, if received at a network switch, is not forwarded by that network switch.
[0062] The method and device can be used in vehicle architectures, in particular their gateways or switches, control units, vehicle computers, and systems at an edge of the communication network 100. The method and device can be used in industrial systems or Internet of Things systems, in particular their gateways or switches.
Claims
Claims 1. A method for network and computing resource management for service-oriented communication in a software-defined network architecture (SDN), characterized in that an SDN controller (138) monitors network traffic in a communication network (100) (202), wherein the SDN controller (138) receives data about computing resource usage and service-oriented communication in the communication network (100), wherein the SDN controller (138) determines a network and computing resource configuration based on the result of an evaluation of the data (204), and the SDN controller (138) configures the network and computing resources based on the network and computing resource configuration (206).
2. Method according to claim 1, characterized in that, depending on the result of the evaluation of the data, an assignment of instances of services to control units and paths for messages that the instances exchange with each other are determined (204), which characterize the network and computing resource configuration.
3. Method according to one of the preceding claims, characterized in that if, as a result of the evaluation of the data, a bottleneck is detected on a data line (120) of the communication network (100) to which a network switch of the communication network (100) forwards messages, this network switch is configured by the network configuration (206) not to forward these messages to the data line (120).
4. Method according to one of the preceding claims, characterized in that if, as a result of the evaluation of the data, an overloaded control unit is detected on which an instance of a service is running, the The instance is configured through the resource configuration not to send an offer for the service or to leave an incoming request for the service unanswered.
5. Method according to one of the preceding claims, characterized in that if, as a result of the evaluation of the data, an overloaded control unit is detected on which an instance of a service is running, at least one network switch is configured by the network configuration to not forward any offer for the service from this instance.
6. Device for network and computing resource management for service-oriented communication in a software-defined network architecture, SDN, characterized in that an SDN controller (138) is configured to monitor network traffic in a communication network (100), wherein the SDN controller (138) is configured to receive data about computing resource usage and service-oriented communication in the communication network (100), wherein the SDN controller (138) is configured to determine a network and computing resource configuration (204) depending on the result of an evaluation of the data, and wherein the SDN controller (138) is configured to configure the network and computing resources depending on the network and computing resource configuration.
7. Device according to claim 6, characterized in that the SDN control (138) is configured to determine, depending on the result of the evaluation of the data, an assignment of instances of services to control units and paths for messages that the instances exchange with each other, which characterize the network and computing resource configuration.
8. Device according to one of claims 6 or 7, characterized in that the SDN control (138) is configured when, as a result of the evaluation of the data, a bottleneck is detected on a data line (120) of the communication network (100) to which a network switch is connected. of the communication network (100) forwards messages, to configure this network switch through the network configuration not to forward these messages to the data line (120).
9. Device according to one of claims 6 to 8, characterized in that the SDN control (138) is configured, if as a result of the evaluation of the data an overloaded control unit is detected on which an instance of a service is running, to configure the instance by means of the resource configuration to not send an offer for the service or to leave an incoming request for the service unanswered.
10. Device according to one of claims 6 to 9, characterized in that the SDN control (138) is configured, if as a result of the evaluation of the data an overloaded control unit is detected on which an instance of a service is running, to configure at least one network switch by the network configuration to not forward any offer for the service from this instance.
11. Device according to one of claims 6 to 10, characterized in that the communication network (100) comprises control units (102, 112, 114, 116), at least one network switch (104, 106, 108, 110) and / or at least one gateway of a vehicle (118), an industrial system or an Internet of Things system, wherein the SDN controller (138) is configured to activate or deactivate instances of services according to the network and / or computing resource configuration on control units (102, 112, 114, 116) and / or wherein the SDN controller (138) is configured to configure at least one network switch (104, 106, 108, 110) and / or at least one gateway to forward or not forward messages to and / or from services or their instances according to the network and / or computing resource configuration.
12. Computer program, characterized in that the computer program comprises computer-readable instructions, the execution of which by a computer results in the execution of the method according to one of claims 1 to 5.