Application layer deterministic control method and system
By registering equipment at the application layer of the industrial Internet network and building application dependency graphs, and dynamically adjusting resources, the problem of "network edge cloud" control is solved, and the consistency service quality assurance and dynamic collaborative control of the entire network is achieved.
Patent Information
- Application Number
- CN202211079727.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-09-05
- Publication Date
- 2025-01-10
- Estimated Expiration
- 2042-09-05
AI Technical Summary
In the existing industrial Internet network, the "network edge cloud" control is not closed loop, and the deep coordination and joint deterministic configuration between various devices cannot be achieved, and the resources cannot be adjusted according to the application deterministic needs, resulting in the processing delay of complex computing applications. Uncontrollable.
A deterministic control method and system at the application layer is proposed. By registering industrial terminal equipment, network control equipment, edge computing equipment and cloud computing center at the network application layer, the application dependency graph is constructed, and network resources are allocated first and edge resources are then allocated. , and the policy is initialized and configured in the priority order of reassigning cloud resources, and dynamically adjust resources to achieve dynamic collaborative control.
Achieve service quality assurance with the whole network consistency, automatically build the application layer deterministic control chain, establish the correlation between applications, dynamically disassemble the application requirements into the whole network scheduling scheme and its configuration, and realize the dynamic 'net edge-end cloud' Coordinated control.
Smart Images

Figure CN115460204B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of industrial Internet technology, and in particular to an application layer deterministic control method and system. Background Art
[0002] The Industrial Internet connects various elements in the enterprise intranet and forms a digital and intelligent production model. It is the result of the deep integration of industrial systems, network technology, computing technology, sensor technology and other fields. There are a large number of devices with different functions in the enterprise internal network. "Network-Edge-End-Cloud" mainly refers to deterministic networks, edge computing devices, industrial terminal devices and cloud platforms. In traditional industrial networks, there are generally only resource coordination between "network-terminal" and "edge computing-cloud platform", and control closed loops with complex dependencies and covering multiple device applications are not supported. When application tasks need to implement complex control closed loops in "Network-Edge-End-Cloud" according to a certain order, the existing architecture cannot achieve deep collaboration and joint deterministic configuration between various devices. When there are dependencies between multiple applications in "Network-Edge-End-Cloud" and the control chain involves edge computing or cloud computing platforms, the existing architecture cannot adjust related resources according to the application deterministic requirements and cannot guarantee the processing latency of complex computing applications. Summary of the invention
[0003] The present invention provides an application layer deterministic control method and system to solve the problems of non-closed-loop control determinism and difficulty in dynamic collaborative control of the "network edge end cloud" control in existing industrial Internet networks, and is particularly suitable for enterprise Internet.
[0004] To solve the above problems, the present invention is achieved as follows:
[0005] In the first aspect, the present invention proposes an application layer deterministic control method for a network including industrial terminal devices, network control devices, edge computing devices, and cloud computing centers, comprising the following steps: registering the deterministic applications of the industrial terminal devices, network control devices, edge computing devices, and / or cloud computing centers on the network application layer; at the network application layer, constructing an application dependency graph based on the collaborative relationship between each of the deterministic applications, wherein the application dependency graph is a data structure that describes the association between deterministic applications on multiple devices; at the network application layer, the deterministic requirements proposed by the deterministic applications are configured for policy initialization in the priority order of first allocating network resources, then allocating edge resources, and then allocating cloud resources.
[0006] Preferably, the application layer deterministic control method further includes: at the network application layer, monitoring the applications opened in the deterministic network: if a new event is found, making specific operation decisions based on the event category and event parameters; if there is a data flow for communication between deterministic applications, processing the data flow according to the priority order of control data flow, application layer deterministic data flow, 2-3 layer deterministic data flow and ordinary data flow.
[0007] Preferably, the step of registering the deterministic applications of industrial terminal devices, network control devices and edge computing devices on the network application layer further includes: registering the deterministic application of the network control device on the network application layer, and configuring clock synchronization between the deterministic application of the network control device and the network application layer; determining whether the type of device to be added for registration is an industrial terminal device or an edge computing device, registering the deterministic applications of the industrial terminal device and the edge computing device on the network application layer respectively, establishing different parameter lists for the two devices, and the parameter lists at least include the basic information of the device itself; synchronizing the clock of the network application layer to the device to be added for registration.
[0008] Preferably, at the network application layer, an automatic learning method is used to construct a global application dependency graph based on the collaborative relationship between each of the deterministic applications, specifically: a pre-operation process is initiated to the network application layer through a registered deterministic application, and pre-operation information is reported, wherein the pre-operation information at least includes an application layer deterministic service number, a timestamp, a deterministic requirement letter, and a status symbol; an independent application dependency graph data structure is established through the network application layer for the received pre-operation information according to a quintuple and an application layer deterministic service number, the data structure is sorted according to the timestamp, and the parent node and the child node in the data structure are determined according to the address information to form a directed acyclic graph; the network application layer regularly monitors network events, and if pre-operation information uploaded by a new deterministic application is received, the application dependency graph is dynamically changed.
[0009] Alternatively, preferably, at the network application layer, according to the collaborative relationship between the deterministic applications, a global application dependency graph is constructed using a manual input method.
[0010] Preferably, the method further comprises: in response to an event occurring in a deterministic service, uploading the event to a network application layer by a device that recognizes the event, and scheduling and reconfiguring resources for the changed deterministic service through the network application layer.
[0011] Preferably, the step of making specific operational decisions based on event categories and event parameters further includes: determining the event category of a newly discovered event: if it is a control event, identifying the event parameters of the control event through the network application layer, adopting corresponding strategies, and obtaining corresponding decision results; if it is a sensitive business event, identifying whether it is an application layer deterministic event or a 2-3 layer deterministic event, and determining whether it is a periodic event or a sudden event based on the distribution characteristics of each event, implementing incremental system configuration updates for periodic events, and changing the network configuration for sudden events; if it is a monitoring event, using a pre-set strategy to change the network configuration through the network application layer.
[0012] Preferably, the step of performing data flow processing further includes: preferentially determining whether the data flow belongs to a control data flow; if it belongs to a control data flow, preferentially uploading it to the network application layer through an upload channel, and updating statistical data on a device corresponding to the data flow; if it does not belong to a control data flow, then determining whether it belongs to a sensitive business data flow; if it belongs to a sensitive business data flow, adopting a deterministic technical processing method of the network device; if it does not belong to a sensitive business data flow, then determining whether it is a monitoring data flow or a normal data flow, and processing it according to the corresponding flow table entry.
[0013] Preferably, the quintuple of pre-operation information and the application layer deterministic service number already exist in the application layer deterministic control chain, and the status symbol corresponding to the pre-operation information is a start status symbol, and the step of dynamically changing the application dependency graph includes: when the quintuple of the pre-operation information and the application layer deterministic service number already exist in the existing application layer deterministic control chain, and the status symbol corresponding to the pre-operation information is a start status symbol, generating a new first set connection according to the pre-operation information, wherein the pre-operation information includes at least one of protocol field information, information actively filled in by the application, and simulation data; if the existing application layer deterministic control chain does not have a first set connection with a status symbol of a start status symbol, then creating a new first set connection; A one-way communication metadata is obtained, the payload of the pre-operation information is extracted, the deterministic service quality parameters of the one-way communication metadata are updated, and the one-way communication metadata is added to the application dependency graph of the existing application layer deterministic control chain, wherein the deterministic service quality parameters include at least one of the delay, bandwidth, packet loss rate, computational complexity, and priority information required by the application; if there is a first set connection with a state of a start state symbol in the existing application layer deterministic control chain, the timestamp is compared with the first set connection with the state of the start state symbol, the one-way communication metadata with a smaller timestamp value is retained, the payload of the pre-operation information is extracted, and the deterministic service quality parameters of the one-way communication metadata are updated.
[0014] Preferably, the five-tuple of pre-operation information and the application layer deterministic service number already exist in the application layer deterministic control chain, and the state symbol corresponding to the pre-operation information is an end state symbol, and the step of dynamically changing the application dependency graph comprises: extracting the five-tuple and the application layer deterministic service number in any one of the pre-operation information from the pre-operation information queue; when the five-tuple and the application layer deterministic service number of the pre-operation information already exist in the c i , and the status symbol corresponding to the pre-run information is the end status symbol, add the non-repeated application layer deterministic control chain in the source device application and the destination device application of the pre-run information into c i The corresponding application dependency graph generates a second set according to the pre-run information and adds the second set to E com , complete the application dependency graph change, extract the payload of the pre-run information, and update e i Deterministic quality of service parameters.
[0015] Preferably, the five-tuple of pre-operation information and the application layer deterministic service number already exist in the application layer deterministic control chain, and the state symbol corresponding to the pre-operation information is a relay state symbol, and the step of dynamically changing the application dependency graph comprises: extracting the five-tuple and the application layer deterministic service number in any one of the pre-operation information from the pre-operation information queue; when the five-tuple and the application layer deterministic service number of the pre-operation information already exist in the c i , and when the status symbol corresponding to the pre-run information is a relay status symbol, add a non-repeated application layer deterministic control chain in the source device application and the destination device application of the pre-run information into c i The corresponding application dependency graph generates a third set based on the pre-run information and adds the third set to E com , extract the payload of the pre-run information, and update e i Deterministic quality of service parameters.
[0016] Preferably, the unique identification information formed by the five-tuple of pre-operation information and the application layer deterministic service number does not exist in any application layer deterministic control chain, and the step of dynamically changing the application dependency graph comprises: extracting the five-tuple and the application layer deterministic service number in any pre-operation information from the pre-operation information queue; when at least one of the five-tuple and the application layer deterministic service number of the pre-operation information does not exist in any existing c i First, a new application layer deterministic control chain is established, and then the source device application and the destination device application of the pre-running information are added to the application dependency graph corresponding to the new application layer deterministic control chain. Then, a fourth set is generated according to the pre-running information, and the fourth set is added to E com .
[0017] Among them, c iis the application layer deterministic control chain with application layer deterministic service number i in the existing application layer deterministic control chain set, i is the element number, e i is the one-way communication metadata numbered i, E com It is a one-way communication collection between two devices.
[0018] In the second aspect, an embodiment of the present invention further provides an application layer deterministic middleware server for implementing any method of the embodiment of the present invention, comprising: a first sending module, for sending registration success information to deterministic applications of industrial terminal devices, network control devices, edge computing devices and / or cloud computing centers; a first determination module, for registering deterministic applications of industrial terminal devices, network control devices, edge computing devices and / or cloud computing centers on the network application layer; constructing an application dependency graph based on the collaborative relationship between each of the deterministic applications; initializing the policy configuration for the deterministic requirements proposed by the deterministic applications in the priority order of first allocating network resources, then allocating edge resources, and then allocating cloud resources; a first receiving module, for receiving registration request information sent by deterministic applications of industrial terminal devices, network control devices, edge computing devices and / or cloud computing centers.
[0019] In the third aspect, an embodiment of the present invention further provides an application layer deterministic middleware agent device, which is used to implement any method of the embodiment of the present invention, a second sending module, used to send registration request information to the application layer deterministic middleware server; a second determination module, used to obtain configuration information of the deterministic application; a second receiving module, used to receive registration success information sent by the application layer deterministic middleware server.
[0020] In a fourth aspect, an embodiment of the present invention further provides an application layer deterministic control system, using the application layer deterministic middleware server described in any embodiment of the present invention and the application layer deterministic middleware agent device described in any embodiment of the present invention.
[0021] The present application also proposes a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the method described in any embodiment of the present application is implemented.
[0022] Furthermore, the present application also proposes an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method described in any embodiment of the present application when executing the computer program.
[0023] At least one of the above-mentioned technical solutions adopted in the embodiments of the present application can achieve the following beneficial effects: The present invention provides an application layer deterministic control method and system for "network edge end cloud" collaboration, which can firstly solve the problem that the current "network edge end cloud" applications cannot achieve consistent service quality assurance across the entire network; secondly, it can automatically build an application layer deterministic control chain and establish associations between applications; thirdly, it can dynamically decompose application requirements into network-wide scheduling plans and their configurations to achieve dynamic collaborative control of "network edge end cloud". BRIEF DESCRIPTION OF THE DRAWINGS
[0024] The drawings described herein are used to provide a further understanding of the present invention and constitute a part of the present invention. The exemplary embodiments of the present invention and their descriptions are used to explain the present invention and do not constitute an improper limitation of the present invention. In the drawings:
[0025] Figure 1 This is an embodiment of the method of the present invention;
[0026] Figure 2 An implementation example of the application registration process;
[0027] Figure 3 An embodiment of a method flow for generating an application dependency graph;
[0028] Figure 4 An implementation example of a method flow for processing deterministic system events at the application layer;
[0029] Figure 5 It is an implementation example of a data stream processing method flow;
[0030] Figure 6 This is a system embodiment of the present invention. DETAILED DESCRIPTION
[0031] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the specific embodiments of the present invention and the corresponding drawings. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without making creative work are within the scope of protection of the present invention.
[0032] The Industrial Internet connects various elements in the enterprise intranet and forms a digital and intelligent production model. It is the result of the deep integration of industrial systems, network technology, computing technology, sensor technology and other fields. There are a large number of devices with different functions in the enterprise internal network. "Network edge end cloud" mainly refers to deterministic networks, edge computing devices, industrial terminal devices and cloud platforms.
[0033] Among them, deterministic networks are networks that provide deterministic service guarantees for the services they carry, represented by TSN (Time-Sensitive Network) and DIP (Deterministic IP). Data packets (frames) transmitted in such networks have strict latency, latency jitter, packet loss rate, reliability and throughput. Edge computing devices refer to terminal devices close to the production line or data source, which have core capabilities such as network, computing, storage, and application. They are represented by edge gateways, edge controllers, and edge all-in-one machines, and their applications provide faster services than cloud platforms. Industrial terminal devices are devices that perform one or more operations of detection, control, and analysis on each link of the production line during the production process. Cloud platform refers to the cloud computing platform, a collection of cloud infrastructure and service software provided by cloud service providers. Deterministic control chain refers to the multiple communications and calculations between multiple applications in the "network edge end cloud" in the industrial production process, forming a fixed and determined business process, and a set of behaviors composed of all controls and feedback in this process.
[0034] In traditional industrial networks, there is generally only resource coordination between "network-terminal" and resource coordination between "edge computing-cloud platform". When application tasks need to implement complex control closed loops in the "edge-end-cloud" according to a certain order, the existing architecture cannot achieve deep collaboration and joint deterministic configuration between various types of devices. The collaboration of "edge-end-cloud" requires the implementation of monitoring and control interfaces between these devices. On this basis, the global view and management of the enterprise intranet are achieved through dedicated equipment, and resource scheduling strategies for the "edge-end-cloud" control chain can be formulated and executed. This patent proposes an application-layer deterministic centralized control architecture, which uses application-layer deterministic policy middleware to perform "edge-end-cloud" collaboration in the enterprise intranet, unify state synchronization and control signaling, and make dynamic decisions on important events in the network.
[0035] Determinism means ensuring low latency, low jitter, zero packet loss rate, and high reliability of the service. Taking deterministic networks as an example, the synchronous scheduling of devices across the entire network requires mechanisms such as time synchronization, centralized control, and resource reservation. However, existing deterministic networks are mainly 2-3 layer technologies. Although the network part can guarantee the deterministic indicators of the transmission process, when there are dependencies between multiple applications and the control chain involves edge computing or cloud computing platforms, if the relevant resources cannot be adjusted according to the application deterministic requirements, the processing delay of complex computing applications cannot be guaranteed. As industrial Internet services become more and more complex, the current application collaborative control of enterprise intranets is not closed-loop. Specifically, there are the following shortcomings:
[0036] First, there is a lack of a service negotiation mechanism that covers all related applications of industrial terminals, deterministic networks, edge computing, and cloud computing, making it impossible to achieve consistent service quality assurance across the entire network.
[0037] Second, there is no global service for "network-edge-end-cloud" collaboration. The existing framework only classifies applications and schedules data flows based on priority. There is no identification, storage, or decision-making method based on the relationship between applications.
[0038] Third, there is no closed-loop control chain for status monitoring and scheduling control of various applications in the "network edge and terminal cloud", and the delay of computing tasks is uncontrollable, which makes it impossible to implement business-oriented determinism requirements.
[0039] The innovation of the present invention lies in: the present invention innovatively proposes an application layer deterministic control system for "network edge end cloud" collaboration to solve the problem of non-closed loop control of "network edge end cloud" in the industrial Internet network. First, the present invention uniformly formulates strategies for each device of the "network edge end cloud" through the application layer deterministic middleware, solving the problem that the existing methods cannot achieve consistent service quality assurance for the entire network; second, the present invention dynamically adjusts the application dependency graph to establish an application layer deterministic control chain for each deterministic requirement of the device, and applies closed-loop management in real time; third, the present invention dynamically disassembles application requirements into full-network scheduling plans and their configurations to achieve dynamic collaborative control of the "network edge end cloud".
[0040] The technical solutions provided by various embodiments of the present invention are described in detail below in conjunction with the accompanying drawings.
[0041] Figure 1 This is an embodiment of the method of the present invention.
[0042] An application layer deterministic control method is used for a network including an industrial terminal device, a network control device, an edge computing device, and a queue, and specifically includes the following steps 101 to 103:
[0043] Step 101: Register deterministic applications of one or more devices among industrial terminal devices, network control devices, edge computing devices, and cloud computing centers on a network application layer.
[0044] In step 101, an application layer deterministic middleware architecture is provided, and the components include a centralized application layer deterministic middleware and various "network edge end cloud" devices. All devices such as industrial terminal devices, network control devices, edge computing devices and queues are interconnected through a deterministic network. After installing the application layer deterministic agent (Agent) on each device, the industrial applications running on each industrial device are registered to the middleware. The data flows of all applications will be classified and scheduled according to the application layer deterministic data flow, 2-3 layer deterministic data flow, and ordinary business data flow. Each application layer deterministic control chain will be pre-run before the formal operation of the business, and the application dependency relationship will be built through the business flow number, timestamp, and device address.
[0045] In step 101, application layer determinism means constraining the service quality of the complex control chain covering various device applications at the application layer of the network so that key indicators such as latency, throughput, and reliability have certain upper and lower bounds. During the use of the system, these key indicators will not change with the change of the application data volume and its computing power to a degree that is sufficient to affect business operations.
[0046] In step 101, the deterministic applications of industrial terminal devices, network control devices, edge computing devices and cloud computing centers actively initiate registration with the network application layer through the application layer deterministic middleware server, and report their basic information to the application layer deterministic middleware server through the application layer deterministic agent of each device itself, that is, each application layer deterministic agent device, including but not limited to the application name, application task number, application determinism requirements and timestamp.
[0047] In step 101, the deterministic applications of industrial terminal devices, network control devices, edge computing devices, and cloud computing centers are registered to the application layer deterministic middleware server, and the basic information of all applications and tasks that support determinism are registered to ensure that all applications and tasks can be identified. In the application layer deterministic control system, only registered applications are managed deterministically, and non-deterministic applications are not managed by the application layer deterministic middleware.
[0048] Step 102: construct an application dependency graph based on the collaborative relationship between the deterministic applications.
[0049] In step 102, the application dependency graph is a data structure that describes the association between applications on multiple devices. An application can have multiple application dependency graphs in parallel. Each application dependency graph describes an application control chain, and the application control chain is a closed loop. The application dependency graph consists of a set of one-way communications with a time relationship and a set of "edge-end-cloud" nodes. A communication process is uniquely described by the number and timestamp of the one-way communication. The application dependency graph in the embodiment of the present invention is a global application dependency graph.
[0050] In step 102, the application layer deterministic middleware server may construct a global application dependency graph by using a manual input method according to the collaborative relationship between the deterministic applications.
[0051] For example, the user inputs a set of one-way communications in the application layer deterministic control chain and edits the relevant communication order, adds the target nodes of all one-way communications, sets the node order and the tasks on the nodes.
[0052] In step 102, an automatic learning method can also be used to construct a global application dependency graph, where the pre-run process is initiated by the registered application, and all relay nodes upload pre-run information to the application layer deterministic middleware server, thereby automatically forming an application dependency graph corresponding to the application control chain. During system operation, the middleware periodically monitors events in the system to dynamically change the application dependency graph.
[0053] In step 102, after completing the application registration, the corresponding application dependency graph is constructed according to the calling relationship between the applications. After the application layer deterministic middleware fully records the relationship between the applications, it can further carry out global planning, otherwise each device itself cannot obtain the global application dependency relationship. When constructing the application dependency graph, it will start from the initiating application of a certain task, and upload the corresponding event every time it passes through a device. After receiving the final termination event, the monitoring of the application and task in step 104 can be started.
[0054] Step 103: At the network application layer, the deterministic requirements of deterministic applications are configured by initializing the policy in the order of allocating network resources first, then allocating edge resources, and then allocating cloud resources.
[0055] In step 103, the priority order of allocating network resources first, then edge resources, and finally cloud resources is adopted. The policy is initialized according to the configuration issued by the application layer deterministic middleware server. The configuration of existing applications and tasks is preferred. When a serious incident occurs, the configuration is updated. The agent of each device has a dedicated configuration interface and parameters.
[0056] In step 103, after the description of the application dependency graph is completed, the deterministic configuration of each one-way communication and the deterministic configuration of each device node need to be determined according to the deterministic requirements of a certain business. The policy initialization configuration adopts the priority order of allocating network resources first, then allocating edge resources, and finally allocating cloud resources, as follows:
[0057] Step 103A: Classify and judge the events. Only when the configuration initialization or reconfiguration of the device or application is involved, enter the following process.
[0058] Step 103B: Update the application dependency graph and system status.
[0059] Step 103C: compare the application dependency graph of the business with the existing configuration in the database, and select the existing strategy for configuration.
[0060] Step 103D: If there is no similar configuration, then analyze the service level that each link can support based on the current network resource scheduling situation, and analyze the worst performance of the network based on the network calculation model. If the network can meet the requirements of deterministic demand, prioritize the highest priority that does not affect existing services.
[0061] Step 103E: Translate the deterministic requirements of the application task into the configuration of the network controller CNC (centralized network configuration) or CUC (centralized user configuration), send it to the network control device, and receive the execution result feedback from the network control device.
[0062] Step 103F: If the network control device reports that the configuration is successful, the service requirements of the device corresponding to the deterministic demand are calculated, and the relevant control parameters are sent to the edge computing device, and the computing task priority and configuration are adjusted accordingly. Otherwise, the previous configuration is canceled, and the process returns to step 103D, and the policy weight or parameter is adjusted according to the configuration result, and the configuration is recalculated. Receive the execution result feedback from the edge computing device.
[0063] Step 103G: If the edge computing device is also configured successfully, search the application dependency graph to determine whether the cloud computing device needs to be configured, and translate the remaining indicator requirements into cloud computing device task requirements.
[0064] It should be noted that the specific translation algorithm may adopt a translation algorithm in the prior art.
[0065] In step 103, further, when an accident occurs in the deterministic service, the accident is uploaded to the application layer deterministic middleware through the device that identifies the accident, and the resource scheduling and reconfiguration of the changed deterministic service are performed through the application layer deterministic middleware.
[0066] Specifically, when an application layer deterministic service is turned on, off, changed, abnormal, or erroneous, an event is triggered by the application layer deterministic agent on the device that identifies the key indicator, and the event is uploaded to the application layer deterministic middleware. The application layer deterministic middleware schedules and reconfigures resources for the changed service according to the event. If the resources are sufficient, only the service configuration involved in the control chain is initialized or reconfigured. If serious resource preemption occurs on several devices, multiple control chains are reconfigured based on the principle of minimization.
[0067] Step 104: At the network application layer, monitor the applications enabled in the deterministic network.
[0068] In step 104, the applications started in the deterministic network are monitored by the application layer deterministic middleware server.
[0069] In step 104, if a new event is found, a specific operation decision is made based on the event category and event parameters; if there is a data flow for communication between deterministic applications, the data flow is processed according to the priority order of control data flow, application layer deterministic data flow, 2-3 layer deterministic data flow and ordinary data flow.
[0070] In step 104, the application layer deterministic control system controls typical events, including but not limited to control events, sensitive business events, and / or monitoring events. The application layer deterministic agent corresponding to each device discovers and uploads the events, and the application layer deterministic middleware receives and processes the events, and controls the configuration updates of various types of devices according to the deterministic management strategy.
[0071] In step 104, for the data flow processing priority of the application layer deterministic control system, in terms of network, it is classified and processed according to the application layer deterministic data flow, 2-3 layer deterministic data flow, and ordinary data flow. By adding a marking method for the application layer deterministic data flow, the control chain can be finely managed and scheduled. In terms of computing, after receiving the computing task, according to the deterministic requirements of the task, the computing task is completed under the determined service quality requirements by adjusting the processor, number of processes, GPU, etc.
[0072] In step 104, it is first determined whether the data flow belongs to the control data flow. If it belongs to the control data flow, it is first uploaded to the application layer deterministic middleware through the upload channel, and the statistical data is updated on the device corresponding to the data flow. The upload channel can be a dedicated line, VPN or Ethernet; if it does not belong to the control data flow, it is then determined whether it belongs to the sensitive business data flow. If it belongs to the sensitive business data flow, the deterministic technical processing method of the network device is adopted. When there are application layer deterministic data flows, 2-layer time-sensitive network data flows, and 3-layer deterministic network data flows at the same time, the business data flow with a higher layer number has a higher priority; if it does not belong to a sensitive business data flow, it is then determined whether it is a monitoring data flow or a normal data flow, and processed according to the corresponding flow table entry.
[0073] After receiving each specific event in step 104, the application layer deterministic middleware will process it. Unless the application relationship dependency graph is deleted or the corresponding task is completely terminated, the process of discovering and processing events will continue to monitor and loop.
[0074] The purpose of the present invention is to realize the industrial network deployment, application layer deterministic software registration, network event monitoring, application layer deterministic decision-making, and network configuration distribution required for "network edge terminal cloud" collaboration through an application layer deterministic middleware for "network edge terminal cloud" collaboration, so as to provide an effective infrastructure and technical means for the subsequent realization of global collaboration of complex applications.
[0075] Figure 2This is an implementation example of the application registration process.
[0076] After completing the deployment of all network devices in the deterministic network, you can deploy other devices with application layer determinism. In order to ensure the flexible scalability and security of the entire system, various terminal devices actively register with the application layer deterministic middleware. After the application layer deterministic middleware reviews and approves it, the application is listed in the deterministic application table.
[0077] The process of registering various terminal devices includes the following steps 201 to 210:
[0078] Step 201: Build a deterministic network and run CUC or CNC.
[0079] In step 201, industrial terminal devices, edge computing devices, network control devices and cloud computing centers are all interconnected through a deterministic network. Then, according to the capability level of the deterministic network, the application layer deterministic middleware server can choose to directly use the CNC or CUC interface for control, which can be further compatible with the existing network.
[0080] Step 202: Run the application layer deterministic middleware server and use the configuration module to initialize the application layer deterministic middleware.
[0081] In step 202, the application layer deterministic middleware (software) is run on the application layer deterministic middleware server, and the application layer deterministic middleware is initialized using a configuration template. Several typical templates can be preset in the application layer deterministic middleware to speed up the deployment efficiency. The configuration module searches for templates stored locally or on the cloud platform, and selects a template that meets the requirements for configuration based on a classification or matching algorithm.
[0082] Step 203: Register the CUC or CNC to the application layer deterministic middleware.
[0083] Step 204: Complete clock synchronization and configuration synchronization between the application layer deterministic middleware and the network control device.
[0084] In steps 203 and 204, the network control device is first registered with the application layer deterministic middleware. After the relevant registration is completed, the clock synchronization and configuration synchronization of the application layer deterministic middleware and the network control device are completed, and the relevant interfaces follow the relevant parameters of the network controller.
[0085] Step 205: Determine whether there are any devices that need to be added to the application list of the application layer deterministic middleware server and participate in the end-network-edge collaboration.
[0086] In step 205, if it is determined whether to add edge computing devices or industrial terminal devices, the devices will be added according to the scale of the production line, and the industrial terminal devices or edge computing devices will be processed separately.
[0087] Step 206A: If the device to be added to participate in the end-network-edge collaboration is an industrial terminal device, configure the industrial terminal device and install the corresponding application layer deterministic middleware agent.
[0088] Step 207A: register the newly added deterministic application of the industrial terminal device to the application layer deterministic middleware.
[0089] Step 206B: If the device to be added to participate in the end-network-edge collaboration is an edge computing device, configure the edge computing device and install the corresponding application layer deterministic middleware agent.
[0090] Step 207B: register the deterministic application of the newly added edge computing device to the application layer deterministic middleware.
[0091] In steps 205, 206A, 206B, 207A, and 207B, determine whether the device type to be registered is an industrial terminal device or an edge computing device, and register the deterministic applications of the industrial terminal device and the edge computing device to the application layer deterministic middleware, respectively. Different parameter lists are established for the two devices, and the parameter lists at least include basic information of the device itself, basic information of the application, application determinism requirements, and task determinism requirements. If all tasks of the same application are of the same category, the task determinism requirement is the default value. If there are differences in service quality among tasks of the same application, it is necessary to provide a task determinism requirement that is not lower than the application determinism requirement in terms of performance indicators when each task is created.
[0092] In step 206B and step 207B, after the deterministic application is registered with the application layer deterministic middleware, each specific business will upload its basic information and deterministic requirements. Edge computing devices and industrial terminal devices will use different parameter lists to describe the resources, functions and services of various types of devices.
[0093] Step 208: Complete clock synchronization and configuration synchronization between the application layer deterministic middleware and the newly added device.
[0094] In step 208, the clock of the application layer deterministic middleware is synchronized to each newly added device, and the basic information of the middleware is sent to each device to provide initial configuration coordination.
[0095] Step 209: Determine whether there are any unregistered devices.
[0096] In step 209, if there are still unregistered devices, proceed to step 205 to continue adding devices.
[0097] Step 210: If there is no unregistered device, complete the application registration of the application layer deterministically.
[0098] In step 210, monitoring of the newly added device is also started.
[0099] Figure 3 An embodiment of a method flow for generating an application dependency graph.
[0100] In the embodiment of the present invention, in order to achieve application layer determinism, it is necessary to build a complete set of application layer deterministic control chains involving multiple applications, where each control chain corresponds to a task of an application, thereby performing closed-loop service quality management on the entire application layer deterministic control chain. The application dependency graph can be constructed by manual input and automatic learning. The embodiment of the present invention uses the automatic learning method to construct the application dependency graph.
[0101] First, a pre-operation process is initiated to the application layer deterministic middleware through a registered deterministic application, and pre-operation information is reported. The pre-operation information at least includes an application layer deterministic service number, a timestamp, a deterministic requirement letter and a status symbol.
[0102] Before running the application layer deterministic service, the application layer deterministic application initiates the pre-run process. Each registered application involved will upload a message to the application layer deterministic middleware, and the middleware will add the message to the pre-run information queue.
[0103] Secondly, the application layer deterministic middleware establishes an independent application dependency graph data structure for the received pre-operation information based on the quintuple and the application layer deterministic service number, sorts it according to the timestamp, and determines the parent node and child node in the data structure according to the address information to form a directed acyclic graph.
[0104] Finally, the application layer deterministic middleware periodically monitors network events, and if pre-running information uploaded by a new deterministic application is received, the application dependency graph is dynamically changed.
[0105] Specifically, the entire process of the application layer deterministic control chain is reported through the pre-operation link before the formal production activities are carried out. After all devices are registered with the middleware server, the received pre-operation information will be reported to the application layer deterministic middleware. The pre-operation information uses a special data structure and contains load estimation information. The initiating device of the application layer deterministic control chain can be an industrial terminal device, an edge computing device, or a cloud device. The pre-operation message will send simulated business data. The payload part of the data needs to include but is not limited to the application layer deterministic business number, timestamp, deterministic requirement information, and status symbol. Additional information can be added according to the business characteristics. For any next device, after receiving the pre-operation information, the information needs to be reported to the application layer deterministic middleware server. The application layer deterministic middleware server listens to these reported information, and establishes an independent application dependency graph data structure based on the five-tuple (taking Ethernet in this document as an example, the five-tuple includes the destination MAC, source MAC, destination IP, source IP, and port number). The application dependency graph uniquely corresponds to the application that matches the five-tuple. After receiving each new reported information, it is sorted according to the timestamp, and the updated application layer deterministic control chain is determined according to the application layer deterministic service number. The parent node and child node in the data structure are updated in combination with the source device and the destination device. Finally, a directed acyclic graph is formed. Since the business of the industrial production line is relatively fixed, the application layer deterministic control chain can be executed for a long time. After the application layer deterministic control chain receives the information with the status symbol of termination, the requirements of the application layer deterministic control chain will be converted, disassembled and issued.
[0106] Suppose we create a new application dependency graph G app , G app ={E com ,V dev}, where E com It is a collection of metadata of a one-way communication between two devices. The metadata of a one-way communication is an abstract expression of the directed communication between two applications, and the description includes but is not limited to the deterministic requirements, service type, SLA information and communication overhead of this communication. com ={e1,e2......,e m}, the additional information of each one-way communication describes the deterministic service quality constraint requirements, e1, e2..., e m is the specific one-way communication metadata contained in the set, which are the one-way communication metadata numbered 1, the one-way communication metadata numbered 2, ..., the one-way communication metadata numbered m, where m is the number of one-way communication metadata in the set, V dev It is a collection of industrial terminal devices and edge computing devices.
[0107] The set of application layer deterministic control chains in the current enterprise internal network is C app={c1,c2......,c n}, an application layer deterministic control chain corresponds to a task of an application, which is expressed by an application dependency graph. i The deterministic business number of is i, which is used to record the cross-application control process of application business i, and n is the total number of application layer deterministic control chains in the application layer deterministic control chain set. Each control chain has a corresponding G app , that is, c i ={H i ,i,G app}, where H i It is the five-tuple information of the application corresponding to the deterministic control chain of the application layer.
[0108] When the application layer deterministic middleware server receives a new upload data packet P in , triggers the application dependency graph generation or update algorithm.
[0109] That is, traverse and sequentially extract pre-operation information from the pre-operation information queue of the application layer deterministic middleware, and extract the five-tuple H in the pre-operation information. in and the application layer deterministic service number; determine the H in the pre-operation information in Whether it is related to C app A c that already exists in i consistent, and whether the application layer deterministic service number of the pre-run information is equal to i.
[0110] If both are consistent, then determine the status symbol of the pre-run information: if the existing application layer deterministic control chain does not have a first set connection with a status symbol of the start status symbol, then create a new one-way communication metadata e i , extract the payload of the pre-operation information, update the deterministic service quality parameters of the one-way communication metadata, and then i Add to the application dependency graph of the existing application layer deterministic control chain, the deterministic service quality parameter includes at least one of the delay, bandwidth, packet loss rate, computational complexity, and priority information required by the application. If there is a first set connection with a start state symbol in the existing application layer deterministic control chain, compare the timestamp with the first set connection with a start state symbol, retain the one-way communication metadata with a smaller timestamp value, extract the payload of the pre-run information, and update the one-way communication metadata. i Deterministic quality of service parameters.
[0111] When the status symbol is an end status symbol, a non-repeated application layer deterministic control chain in the source device application and the destination device application of the pre-run information is added to the c iThe corresponding application dependency graph generates a second set according to the pre-run information and adds the second set to E com , notify the application layer deterministic middleware to complete the application dependency graph change, extract the payload of the pre-run information, and update e i Deterministic quality of service parameters.
[0112] When the status symbol is S rly When the pre-run information is generated, a non-repeated application layer deterministic control chain is added to the source device application and the destination device application. i The corresponding application dependency graph generates a third set based on the pre-run information and adds the third set to E com , extract the payload of the pre-run information, and update e i When the status symbol is not one of the above three states, the unknown status symbol is recorded by the application layer deterministic middleware.
[0113] Otherwise, if at least one of the two is different, first establish a new application layer deterministic control chain, then add the source device application and the destination device application of the pre-run information into the application dependency graph corresponding to the new application layer deterministic control chain, and then generate a fourth set based on the pre-run information, and add the fourth set into E com .
[0114] Among them, E com is a collection of one-way communications between two devices, c i is the application layer deterministic control chain with application layer deterministic service number i in the existing application layer deterministic control chain set, i is the application layer deterministic service number, S rly It is the status symbol carried in the information reported by the relay node during the pre-operation process, that is, the relay status symbol, e i It is the one-way communication metadata numbered i.
[0115] In the embodiment of the present invention, the above-mentioned application dependency graph generation algorithm specifically includes the following steps 301 to 322:
[0116] Step 301: Extract a pre-running message P from the message queue in .
[0117] Step 302: From P in Extract the quintuple H from in , extract the application layer deterministic service number id.
[0118] In steps 301 and 302, the pre-operation information is traversed and sequentially extracted from the pre-operation information queue of the application layer deterministic middleware, and the five-tuple and the application layer deterministic service number in the pre-operation information are extracted.
[0119] It should be noted that steps 301 to 322 are cyclically executed steps, and all pre-operation messages need to be traversed from the pre-operation information queue, and the first pre-operation message is first extracted in sequence.
[0120] Step 303: Determine H in Does it exist in C app c i , and whether id is equal to i.
[0121] Step 304: If H is satisfied in It exists in C app c i , and id and i are equal, continue to identify the status symbol.
[0122] Step 305: From step 304, the status symbol is identified as S start .
[0123] In step 305, S start It is the status symbol carried by the first report information at the start of pre-operation, that is, the start status symbol.
[0124] Step 306: According to P in A first set of connections E1 is generated.
[0125] In step 306, the first aggregate connection is an aggregate of one-way communications between two devices.
[0126] Step 307: If c i There is no state S in start E1 connection, add the G corresponding to ci app , go directly to step 318.
[0127] In step 307, S start Indicates the status symbol carried in the first report information of the start of pre-run.
[0128] Step 308: If c i The state is S start E1 connection, with the current status as S start The E1 connections with the smaller timestamp are retained and directly proceed to step 318.
[0129] Step 309: From step 304, the status symbol is identified as S end .
[0130] In step 309, S end It is the termination status symbol indicating the end of pre-run, that is, the end status symbol.
[0131] Step 310: P inThe source device application and the destination device application are not repeated and added into c i The corresponding G app .
[0132] Step 311: According to P in Generate a second set E2 and add E2 to E com .
[0133] Step 312: Notify the application layer deterministic middleware c i Completed, proceed to step 318.
[0134] Step 313: From step 304, the status symbol is identified as S rly .
[0135] In step 313, S rly It indicates the status symbol carried in the information reported by the relay node during the pre-operation process.
[0136] Step 314: P in The source device application and the destination device application are not repeated and added into c i The corresponding G app .
[0137] Step 315: According to P in Generate the third set E3 and add E3 to E com . Go to step 318.
[0138] Step 316: From step 304, it is identified that the status symbol is an unknown status symbol.
[0139] Step 317: Record the unknown status symbol and proceed to step 318.
[0140] Step 318: Extract P in The timestamp of the
[0141] Step 319, traverse c i E com , find the set E with the largest timestamp j .
[0142] Step 320: If at least one of the following is satisfied: in Not present in C app c i , id and i are not equal, then a new application layer deterministic control chain c is created new .
[0143] Step 321: P in The source device application and the destination device application are not repeated and added into c new The corresponding G app .
[0144] Step 322: According to P in Generate the fourth set E4 and add E4 to E com .
[0145] Figure 4 The present invention is an implementation example of a method flow for application layer deterministic system event processing.
[0146] In the embodiment of the present invention, the application layer deterministic middleware will continuously monitor all events occurring in the entire system, and upon receiving a new event, determine the category of the event.
[0147] Determine the event category of the newly discovered event: if it is a control event, identify the event parameters of the control event through the application layer deterministic middleware, adopt the corresponding strategy, and obtain the corresponding decision result; if it is a sensitive business event, identify whether it is an application layer deterministic event or a 2-3 layer deterministic event, and determine whether it is a periodic event or a sudden event based on the distribution characteristics of each event, implement incremental system configuration updates for periodic events, and change the network configuration for sudden events; if it is a monitoring event, use the application layer deterministic middleware to change the network configuration using a pre-set strategy.
[0148] The application layer deterministic middleware will continuously monitor all events that occur in the entire system. When a new event is received, the application layer deterministic system event processing method specifically includes the following steps 401 to 408:
[0149] The application layer deterministic middleware will continuously monitor all events that occur in the entire system. When a new event is received, it is necessary to determine the type of event. In this system, there are three main types of events, including control events, sensitive business events, and monitoring events. Each type of event represents a different message type.
[0150] Step 401: Determine the type of event.
[0151] Step 402: From step 401, it is identified that it is a control event.
[0152] In step 402, the control event includes at least one of the following states: pre-operation, registration or response, state synchronization, clock synchronization, and configuration delivery.
[0153] Step 403: Identify the state of the control event through a classifier.
[0154] Step 404: Make specific decisions for each state of the control event.
[0155] In steps 401 to 404, the control event is mainly to manage the operation in the network, registration response status synchronization, etc. After receiving the event information, the application layer deterministic middleware decides the specific operation and configuration according to the event type and event parameters, identifies different events through the classifier, and determines the decision result of each event according to the application layer deterministic middleware strategy corresponding to the event.
[0156] Step 405: From step 401, it is identified as a sensitive business event.
[0157] In step 405, the sensitive service events include: application layer deterministic events or layer 2-3 deterministic events.
[0158] Step 406: Determine the distribution characteristics of sensitive business events.
[0159] Step 407: Implement incremental system configuration updates for periodic events.
[0160] Step 408: Change the network configuration in response to the sudden event.
[0161] In steps 405 to 408, there are two types of sensitive business events, one is the application layer deterministic event, and the other is the 2-3 layer deterministic event. According to the distribution characteristics of each event, it is further divided into periodic events and sudden events. Periodic events are information reported regularly and will not bring huge changes to the entire network, so incremental system configuration updates will be implemented. Sudden events are relatively discrete, indicating that the device application or data in the network has suddenly changed, so it is necessary to further consider large-scale changes to the network configuration.
[0162] Step 409: From step 401, it is identified as a monitoring event.
[0163] In step 409, monitoring events include: events from network device monitoring, edge computing device monitoring, and application monitoring.
[0164] Step 410: Change the network configuration based on the monitoring event.
[0165] In steps 409 to 410, monitoring events are performed on various devices and applications in the network. The processing method mainly depends on the strategy adopted by the middleware, and generally no reconfiguration is required.
[0166] Figure 5 The present invention is a data stream processing method flow embodiment.
[0167] If there is communication between deterministic applications of the same device or different devices, the data flow messages of the communication between the deterministic applications will be processed according to the classification of control data flow, application layer deterministic data flow, 2-3 layer deterministic data flow and ordinary data flow.
[0168] Prioritize to judge whether the data flow belongs to the control data flow. If it belongs to the control data flow, it is preferentially uploaded to the application layer deterministic middleware through the upload channel, and the statistical data is updated on the device corresponding to the data flow. If it does not belong to the control data flow, it is then judged whether it belongs to the sensitive business data flow. If it belongs to the sensitive business data flow, the deterministic technical processing method of the network device is adopted. If it does not belong to the sensitive business data flow, it is then judged whether it is in the monitoring data flow or the ordinary data flow, and processed according to the corresponding flow table entry.
[0169] The deterministic application data stream processing method specifically includes the following steps 501 to 507:
[0170] Step 501: Determine whether the data flow is a control data flow.
[0171] Step 502: If it is a control data stream, use an upload channel to transmit the control data stream and update the statistical data.
[0172] Step 503: If it is not a control data flow, continue to determine whether the data flow is a sensitive business data flow.
[0173] Step 504: If it is a sensitive business data flow, it is processed using the deterministic technology used by the network device.
[0174] Step 505: If it is not a sensitive business data flow, determine whether the data flow is a monitoring data flow.
[0175] Step 506: If it is a monitoring data flow, process the data packet according to the flow table entry of the monitoring data flow.
[0176] Step 507: If it is not a monitoring data flow, it is processed as a normal data flow and the data packet is processed according to the flow table entry of the normal data flow.
[0177] In steps 501 to 507, after the application layer deterministic control system is established, various events use a self-describing method to explain how to handle reported events from different devices. Event data and communication data are processed independently. Application layer deterministic communication data is added to the application layer deterministic system, so the priorities of different types of data need to be re-standardized.
[0178] After receiving the data of a data stream, it is first determined whether the data stream belongs to the control data stream, because from the perspective of quantity and probability distribution, the control data is relatively small, and its importance and real-time nature are relatively high. It can be classified and processed by filters such as Sketch and Bloom. Control data is preferentially transmitted to the application layer deterministic middleware through the upload channel. At the same time, the corresponding statistical data is updated on the corresponding device.
[0179] If it is not a control data flow, it will be determined whether it is a sensitive business data flow. If it is, it will be processed using the deterministic technology of the network equipment. If it is TSN, gating will be used, and if it is DIP, some corresponding data encapsulation will be performed.
[0180] If it is not a sensitive business data flow, it is then determined whether it is a monitoring data flow or a normal data flow. Both types will be processed according to the flow table entries on the network device, and the two will be configured separately in terms of priority QoS (Quacity of Service) guarantee and other aspects.
[0181] Figure 6 This is an embodiment of the system of the present invention, which is an industrial Internet application layer deterministic system for realizing a deterministic control chain between "network edge end cloud".
[0182] An application layer deterministic control system, using the method described in any one of the embodiments of the present invention, comprises: an application layer deterministic middleware server 1, an industrial terminal device 2, a network control device 3, an edge computing device 4 and a cloud computing center 5.
[0183] The application layer deterministic middleware server and the industrial terminal device, network control device, edge computing device and queue are connected via a deterministic network; the industrial terminal device, network control device, edge computing device and cloud computing center are connected via a deterministic network.
[0184] The application layer deterministic middleware server is used to load the application layer deterministic middleware. Through the application layer deterministic middleware, the deterministic applications of industrial terminal devices, network control devices, edge computing devices and cloud computing centers are registered, a global application dependency graph is constructed and policy initialization configuration is performed.
[0185] Furthermore, the application layer deterministic middleware server includes:
[0186] A first sending module sends registration success information to the industrial terminal device, the network control device, the edge computing device and / or the deterministic application of the cloud computing center;
[0187] The first determination module is used to register the deterministic applications of industrial terminal devices, network control devices, edge computing devices and / or cloud computing centers on the network application layer; construct an application dependency graph based on the collaborative relationship between the deterministic applications; and perform policy initialization configuration for the deterministic requirements of the deterministic applications in the order of allocating network resources first, then edge resources, and then cloud resources;
[0188] The first receiving module is used to receive registration request information sent by industrial terminal equipment, network control equipment, edge computing equipment and / or deterministic applications in a cloud computing center.
[0189] In an embodiment of the present invention, the industrial terminal device network control device, the edge computing device and the cloud computing center are all application layer deterministic middleware agent devices, and application layer deterministic middleware agent software is installed on each device.
[0190] For example, an application layer deterministic middleware agent device for implementing the functions of industrial terminal equipment includes: a second sending module for sending registration request information to an application layer deterministic middleware server; a second determination module for obtaining configuration information of a deterministic application; and a second receiving module for receiving registration success information sent by the application layer deterministic middleware server.
[0191] It should be noted that the application layer deterministic middleware agent device used to implement edge computing devices and cloud computing centers has the same function as the application layer deterministic middleware agent device used to implement the functions of industrial terminal equipment, which will not be repeated here.
[0192] In an embodiment of the present invention, the application layer deterministic control system is implemented through a centralized control architecture, including a system of application layer deterministic middleware and various application layer deterministic agents.
[0193] The application layer deterministic middleware is responsible for policy management, status display, data management and other functions, and can realize application registration management, decision-making closed-loop scheduling, status synchronization, data flow monitoring, protocol conversion, configuration update and message queue. The application layer deterministic agent monitors the status of applications and devices, and can regularly report resource information in a combination of active and passive methods. After receiving the application layer deterministic configuration, it calls the application to perform related operations. After all "network edge end cloud" devices install their own application layer deterministic agents, they register with the middleware through the application layer deterministic agent and upload basic information and deterministic requirements.
[0194] The application layer deterministic middleware server includes an application dependency module, which generates an application dependency graph based on a directed acyclic graph to describe the deterministic application layer deterministic control chain of the application and dynamically maintain the dependency relationship between applications. According to the deterministic requirements of each business, based on the application layer deterministic control chain of the "edge-cloud" device, the application layer deterministic middleware formulates a unified strategy, splits it into the "edge-cloud" device deterministic configuration, and sends it to all devices.
[0195] In the industrial Internet network architecture, deterministic networks are used to ensure deterministic communication between devices, including but not limited to the use of TSN, DIP and other networks.
[0196] Application layer deterministic middleware server: This device provides application layer deterministic services, maintains the application registry, and establishes and manages the application layer deterministic control chain. This server is the clock synchronization master device in the entire architecture. It synchronizes the status information of the managed devices regularly and receives the network monitoring results uploaded by the network controller. For the entire application layer deterministic control chain, it converts the deterministic protocol of each application into the configuration information of each device, and then sends it to the target device through the middleware interface.
[0197] Industrial terminal equipment: This type of equipment controls and monitors production lines. The applications carried on it are generally dedicated programs for specific production tasks. After installing the application layer deterministic agent, a deterministic service requirement description will be sent to the application layer deterministic middleware. This type of device assigns an identifier to the deterministic application initiated by itself, which is used to establish the application layer deterministic business and be uniquely identified in the entire network. Generally, this type of device acts as the initiator of the deterministic control chain.
[0198] Network control devices: These devices manage deterministic networks, maintain a global view of the network, and schedule forwarding tables and forwarding queues on network devices such as switches and routers.
[0199] Edge computing devices: This type of device receives requests and data from industrial terminal devices, and feeds back to other devices after algorithm processing, providing computing resources and storage resources.
[0200] Cloud computing center: This type of platform provides cloud infrastructure and its service software, supplementing the computing power and storage of edge computing devices.
[0201] Application layer deterministic agent: This type of software is installed on all devices participating in the application layer deterministic control chain. It is responsible for submitting registration applications, regularly reporting device status and application information, maintaining clock synchronization, and receiving and executing deterministic configurations on the host device.
[0202] The present application also proposes a computer-readable storage medium on which a computer program is stored. When the program is executed by a processor, the method described in any embodiment of the present application is implemented.
[0203] Furthermore, the present application also proposes an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the method described in any embodiment of the present application when executing the computer program.
[0204] Those skilled in the art will appreciate that embodiments of the present invention may be provided as methods, systems, or computer program products. Therefore, the present invention may take the form of a complete hardware embodiment, a complete software embodiment, or an embodiment combining software and hardware. Moreover, the present invention may take the form of a computer program product implemented on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.
[0205] The present invention is described with reference to flowcharts and / or block diagrams of methods, devices (systems), and computer program products according to embodiments of the present invention. It should be understood that each process and / or block in the flowchart and / or block diagram, as well as the combination of processes and / or blocks in the flowchart and / or block diagram, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, an embedded processor, or other programmable data processing device to produce a machine, so that the instructions executed by the processor of the computer or other programmable data processing device generate instructions for implementing the processes in the flowchart and / or block diagram. Figure 1 A process or multiple processes and / or boxes Figure 1 A device that provides the functions specified in a block or multiple blocks.
[0206] It should also be noted that the terms "include", "comprises" or any other variations thereof are intended to cover non-exclusive inclusion, so that a process, method, commodity or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, commodity or device. In the absence of more restrictions, the elements defined by the sentence "comprises a ..." do not exclude the existence of other identical elements in the process, method, commodity or device including the elements.
[0207] The above description is only an embodiment of the present invention and is not intended to limit the present invention. For those skilled in the art, the present invention may have various modifications and variations. Any modification, equivalent substitution, improvement, etc. made within the spirit and principle of the present invention should be included in the scope of the claims of the present invention.
Claims
1. An application layer deterministic control method for a network including industrial terminal equipment, network control equipment, edge computing equipment, and cloud computing center, characterized in that: The following steps are involved: Register the deterministic applications of industrial terminal devices, network control devices, edge computing devices and / or cloud computing centers on the network application layer; At the network application layer, an application dependency graph is constructed according to the collaborative relationship between the deterministic applications. The application dependency graph is a data structure that describes the association between deterministic applications on multiple devices. It is composed of a one-way communication set and a node set with a time sequence relationship. Each communication process is uniquely described by the one-way communication number and timestamp. At the network application layer, the deterministic configuration of each one-way communication and each device node is determined according to the deterministic requirements of the business. The deterministic requirements of deterministic applications are initialized by allocating network resources first, then edge resources, and then cloud resources in the order of priority.
2. The application layer deterministic control method according to claim 1, characterized in that: Also includes: At the network application layer, monitor the applications enabled in the deterministic network: If a new event is discovered, make specific operational decisions based on the event category and event parameters; If there are data flows for communication between deterministic applications, the data flows are processed according to the priority order of control data flows, application layer deterministic data flows, layer 2-3 deterministic data flows, and common data flows.
3. The application layer deterministic control method according to claim 1, characterized in that: The step of registering the deterministic applications of the industrial terminal device, the network control device, and the edge computing device on the network application layer further includes: Registering the deterministic application of the network control device in the network application layer, and performing clock synchronization configuration on the deterministic application of the network control device and the network application layer; Determine whether the device type to be registered is an industrial terminal device or an edge computing device, register the deterministic applications of the industrial terminal device and the edge computing device at the network application layer respectively, and establish different parameter lists for the two devices respectively. The parameter lists contain at least the basic information of the device itself. Synchronize the clock of the network application layer to the added registered device.
4. The application layer deterministic control method according to claim 1, characterized in that: At the network application layer, according to the collaborative relationship between the deterministic applications, an automatic learning method is used to construct a global application dependency graph, specifically: Initiate a pre-operation process to the network application layer through the registered deterministic application, and report the pre-operation information, wherein the pre-operation information at least includes the application layer deterministic service number, timestamp, deterministic requirement information and status symbol; Establishing an independent application dependency graph data structure for the received pre-operation information according to the five-tuple and the application layer deterministic service number through the network application layer, sorting the pre-operation information according to the timestamp, and determining the parent node and the child node in the data structure according to the address information to form a directed acyclic graph; The network application layer regularly monitors network events, and if pre-running information uploaded by a new deterministic application is received, the application dependency graph is dynamically changed.
5. The application layer deterministic control method according to claim 1, characterized in that: At the network application layer, a global application dependency graph is constructed using a manual input method according to the collaborative relationship between the deterministic applications.
6. The application layer deterministic control method according to claim 1, characterized in that: The method further comprises: in response to an event occurring in a deterministic service, uploading the event to a network application layer through a device that recognizes the event, and scheduling and reconfiguring resources for the changed deterministic service through the network application layer.
7. The application layer deterministic control method according to claim 2, characterized in that: The step of making a specific operation decision according to the event category and event parameters further comprises: Determine the event category for the newly discovered event: If it is a control event, the event parameters of the control event are identified through the network application layer, and the corresponding strategy is adopted to obtain the corresponding decision result; If it is a sensitive business event, identify whether it is an application layer deterministic event or a 2-3 layer deterministic event. Based on the distribution characteristics of each event, determine whether it is a periodic event or an emergency event. Implement incremental system configuration updates for periodic events and change network configuration for emergency events. In case of monitoring events, the network configuration is changed by using pre-set policies at the network application layer.
8. The application layer deterministic control method according to claim 2, characterized in that: The step of performing data stream processing further comprises: Prioritize determining whether the data flow belongs to a control data flow. If it belongs to a control data flow, prioritize uploading it to the network application layer through an upload channel, and update statistical data on the device corresponding to the data flow. If it does not belong to the control data flow, then determine whether it belongs to the sensitive business data flow. If it belongs to the sensitive business data flow, use the deterministic technical processing method of the network equipment; If it does not belong to sensitive business data flow, it is determined whether it is a monitoring data flow or a normal data flow, and processed according to the corresponding flow table entry.
9. The application layer deterministic control method according to claim 4, characterized in that: The five-tuple of pre-operation information and the application layer deterministic service number already exist in the application layer deterministic control chain, and the state symbol corresponding to the pre-operation information is a start state symbol. The step of dynamically changing the application dependency graph includes: Extracting a five-tuple and an application layer deterministic service number in any pre-operation information from the pre-operation information queue; When the quintuple of the pre-operation information and the application layer deterministic service number already exist in the application layer deterministic control chain, and the state symbol corresponding to the pre-operation information is the start state symbol, a new first set connection is generated according to the pre-operation information, wherein the pre-operation information includes at least one of protocol field information, information actively filled in by the application, and simulation data; If the existing application layer deterministic control chain does not have the first set connection whose status symbol is the start status symbol, a new one-way communication metadata is created, the payload of the pre-operation information is extracted, the deterministic service quality parameter of the one-way communication metadata is updated, and the one-way communication metadata is added to the application dependency graph of the existing application layer deterministic control chain, where the deterministic service quality parameter includes at least one of the delay, bandwidth, packet loss rate, computational complexity, and priority information required by the application; If there is a first set connection with a start status symbol in the existing application layer deterministic control chain, the timestamp is compared with the first set connection with a start status symbol, the one-way communication metadata with a smaller timestamp value is retained, and then the payload of the pre-operation information is extracted, and the deterministic service quality parameters of the one-way communication metadata are updated.
10. The application layer deterministic control method according to claim 4, characterized in that: The five-tuple of pre-operation information and the application layer deterministic service number already exist in the application layer deterministic control chain, and the state symbol corresponding to the pre-operation information is an end state symbol. The step of dynamically changing the application dependency graph includes: Extracting a five-tuple and an application layer deterministic service number in any pre-operation information from the pre-operation information queue; When the five-tuple of pre-run information and the application layer deterministic service number already exist in c i , and the status symbol corresponding to the pre-run information is the end status symbol, add the non-repeated application layer deterministic control chain in the source device application and the destination device application of the pre-run information into c i The corresponding application dependency graph generates a second set according to the pre-run information and adds the second set to E com , complete the application dependency graph change, extract the payload of the pre-run information, and update e i Deterministic quality of service parameters; Among them, c i It is the application layer deterministic control chain with application layer deterministic service number i in the existing application layer deterministic control chain set, where i is the element number and e i is the one-way communication metadata numbered i, E com It is a one-way communication collection between two devices.
11. The application layer deterministic control method according to claim 4, characterized in that: The five-tuple of pre-operation information and the application layer deterministic service number already exist in the application layer deterministic control chain, and the state symbol corresponding to the pre-operation information is a relay state symbol. The step of dynamically changing the application dependency graph includes: Extracting a five-tuple and an application layer deterministic service number in any pre-operation information from the pre-operation information queue; When the five-tuple of pre-run information and the application layer deterministic service number already exist in c i , and when the status symbol corresponding to the pre-run information is a relay status symbol, add a non-repeated application layer deterministic control chain in the source device application and the destination device application of the pre-run information into c i The corresponding application dependency graph generates a third set based on the pre-run information and adds the third set to E com , extract the payload of the pre-run information, and update e i Deterministic quality of service parameters; Among them, c i It is the application layer deterministic control chain with application layer deterministic service number i in the existing application layer deterministic control chain set, where i is the element number and e i is the one-way communication metadata numbered i, E com It is a one-way communication collection between two devices.
12. The application layer deterministic control method according to claim 4, characterized in that: The unique identification information formed by the five-tuple of pre-operation information and the application layer deterministic service number does not exist in any application layer deterministic control chain. The step of dynamically changing the application dependency graph includes: Extracting a five-tuple and an application layer deterministic service number in any pre-operation information from the pre-operation information queue; When at least one of the five-tuple of the pre-run information and the application layer deterministic service number does not exist in any existing c i First, a new application layer deterministic control chain is established, and then the source device application and the destination device application of the pre-running information are added to the application dependency graph corresponding to the new application layer deterministic control chain. Then, a fourth set is generated according to the pre-running information, and the fourth set is added to E com ; Among them, c i is the application layer deterministic control chain with application layer deterministic service number i in the existing application layer deterministic control chain set, i is the element number, E com It is a one-way communication collection between two devices.
13. An application layer deterministic middleware server, used to implement the method according to any one of claims 1 to 12, characterized in that: Include: A first sending module is used to send registration success information to the industrial terminal device, the network control device, the edge computing device and / or the deterministic application of the cloud computing center; The first determination module is used to register the deterministic applications of industrial terminal devices, network control devices, edge computing devices and / or cloud computing centers on the network application layer; construct an application dependency graph based on the collaborative relationship between the deterministic applications; and perform policy initialization configuration for the deterministic requirements of the deterministic applications in the order of allocating network resources first, then edge resources, and then cloud resources; The first receiving module is used to receive registration request information sent by industrial terminal equipment, network control equipment, edge computing equipment and / or deterministic applications in a cloud computing center.
14. An application layer deterministic middleware proxy device, used to implement the method according to any one of claims 1 to 12, characterized in that: Include: A second sending module is used to send registration request information to the application layer deterministic middleware server; A second determination module, used to obtain configuration information of a deterministic application; The second receiving module is used to receive the registration success information sent by the application layer deterministic middleware server.
15. An application layer deterministic control system, characterized in that: It comprises: the application layer deterministic middleware server as claimed in claim 13 and the application layer deterministic middleware agent device as claimed in claim 14.
16. A computer-readable storage medium having a computer program stored thereon, wherein when the program is executed by a processor, the method according to any one of claims 1 to 12 is implemented.
17. An electronic device, characterized in that: The method comprises a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the method according to any one of claims 1 to 12 when executing the computer program.
Citation Information
Patent Citations
Vehicle-road cloud collaborative networking architecture and method based on deterministic network architecture
CN111083671A
Industrial heterogeneous network scheduling method oriented to TSN and non-TSN interconnection
CN111600754A