Medical data forwarding and caching system and method based on cache support network
Patent Information
- Application Number
- CN202011494226.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2020-12-17
- Publication Date
- 2025-02-11
- Estimated Expiration
- 2040-12-17
AI Technical Summary
In the cache support network, the distribution efficiency of medical image data is low, resulting in a longer delay in obtaining medical image data, affecting the efficiency of doctors' diagnosis and treatment.
A traffic scheduling strategy based on multipath forwarding is designed to control the forwarding rate of requests through the backlog difference of adjacent queue lengths, and combined with a threshold-based request packet loss mechanism to reduce network load. At the same time, a cache priority function was designed to prioritize medical image data with a higher priority, improving the efficiency of data content search.
By improving the distribution efficiency of medical image data, the acquisition delay of medical image data is reduced, the service quality and overall throughput of medical networks are improved, and the collapse of medical system is avoided.
Smart Images

Figure CN112422449B_ABST
Abstract
Description
Technical Field
[0001] The present invention belongs to the technical field of cache support network, and in particular relates to a medical data forwarding and caching system and method based on a cache support network. Background Art
[0002] In recent years, the application of medical equipment has produced a large number of medical images, providing a large amount of basic diagnosis and treatment data for the medical imaging department. These medical image data contain information such as the structure and pathology of the human body, and have become an important reference for doctors to make diagnosis and treatment decisions. Doctors' analysis and processing of these medical image resources are of great reference significance for the diagnosis and treatment of similar cases. However, before analyzing and processing medical image resources, resources need to be obtained as soon as possible, which requires a large amount of medical image data to be responded to quickly. Therefore, the distribution of medical image data has received widespread attention.
[0003] Cache-enabled network architecture has great potential in improving content distribution efficiency. Cache-enabled networks allow base stations (BSs) and mobile devices to cache popular content so that the content that users want to obtain can be accessed from nearby nodes, which reduces energy consumption and transmission latency. This is very consistent with our problem, so we apply the cache-enabled network architecture to the medical system. When doctors are diagnosing and treating, they can obtain resources from nearby routing nodes that have cached the medical imaging data. Therefore, a good caching strategy can better improve the performance of the medical system and enable local online reading.
[0004] The purpose of caching medical imaging data is to improve user experience and enable local online reading. Therefore, it is important to decide which files are popular to cache based on the number of times medical imaging data is obtained per unit time. Generally speaking, only very common medical imaging (CT, MRI, etc.) data are frequently requested by most doctors. On the other hand, how to effectively place medical imaging data that is requested many times at the edge of the network is also an important issue, which affects the benefits of collaborative diversity and content distribution. In addition, the caching strategy, that is, deciding which medical imaging data to cache and when to cache or how to update the cached data, is crucial to the overall performance of the cache-enabled medical system.
[0005] In a cache-supported network medical system, in order to achieve the routing of medical imaging data, the forwarding of medical imaging data requests is also of great significance for the rapid search of medical imaging data content. When a doctor requests a medical imaging data, how to forward the request to the network node or medical system server that has cached the medical imaging data is crucial to the hit rate of the request. The request hit rate is related to the waiting delay for obtaining medical imaging data. The higher the hit rate, the lower the waiting delay. Therefore, how to forward medical imaging data requests and cache medical imaging data is a problem we need to solve. Summary of the invention
[0006] The technical problem to be solved by the present invention is to provide a medical data forwarding and caching system and method based on a cache support network, so as to solve the problem of distribution efficiency of medical imaging data in the cache support network.
[0007] The technical solution adopted by the present invention to solve the above technical problems is: a medical data forwarding and caching system based on a cache support network, characterized in that: the request control subsystem and the data queue subsystem jointly complete the forwarding of requests, the return and caching of data content, the search process of all data objects constitutes the request control subsystem, and the return process of data on the opposite link constitutes the data queue subsystem, wherein,
[0008] The request control subsystem consists of a request queue and a request discard queue. The request queue records requests from local users and requests forwarded by neighboring nodes. The request discard queue records requests that are discarded when the request queue length exceeds a threshold.
[0009] The data queue subsystem consists of a data queue and a virtual data queue. The data queue records the data generated locally and to be forwarded and the data transferred from neighboring nodes. The virtual data queue records the virtual data generated locally and to be forwarded and the virtual data transferred from neighboring nodes.
[0010] A medical data forwarding and caching method based on a cache support network, comprising:
[0011] (1) For a data object k to be searched, the control subsystem is requested to find the source node or the node in the network that has cached the data object k. The specific operation process is as follows:
[0012] 1.1 Node a receives a request to search for data object k locally or in a virtual data queue;
[0013] 1.2 Check whether the content corresponding to data object k is stored in the memory of node a. If yes, node a destroys the request packet and returns the content of data object k to the data requester along the reverse path; otherwise, all nodes execute the request forwarding strategy and request discard strategy until they reach the source node or the node that has cached the content of data object k;
[0014] (2) When the request packet reaches the source node or node b that has cached the content of data object k, the data queue subsystem completes the return of data object k on the reverse link. The specific operation process is as follows:
[0015] 2.1 Node b deletes the request packet about data object k;
[0016] 2.2 Node b generates the same number of data packets as the request packets;
[0017] 2.3 All nodes allocate data and virtual data transmission rates according to the corresponding relationship between data transmission rate and request forwarding rate;
[0018] 2.4 Node a adds the request in the virtual data queue back to the request queue.
[0019] The request forwarding strategy in step 1.2 is:
[0020] (1) Based on Calculate the weight of data object k on link (i, j)
[0021] (2) Based on Calculate adaptive link weight
[0022] (3) Calculate the forwarding rate of the request for data object k on link (i, j) Specifically: If but otherwise
[0023] Where (·x) + represents max(·x, 0); represents the difference between the request queue backlogs of node i and node j regarding data object k in time slot t, that is, the weight of data object k on link (i, j); represents the cache variable of node i about data object k in time slot t, if It means that node i caches data object k. If This means that node i does not cache data object k; represents the length of data object k waiting to be forwarded in the request queue of node i in time slot t; C ij (t) represents the transmission capacity of link (i, j) in time slot t; It represents the request forwarding rate from node i to node j regarding data object k in time slot t.
[0024] The request discarding strategy in step 1.2 is specifically:
[0025] (1) Based on the request queue and request discard queue The length of the calculation node n about the request discard rate of data object k Specifically: If but otherwise
[0026] (2) Calculate the final discard rate of node n regarding data object k if but otherwise
[0027] in, represents the length of data object k waiting to be forwarded in the request queue of node n in time slot t; represents the length of data object k waiting to be finally discarded in the request discard queue of node n in time slot t; d max Indicates the maximum value of the request discarded, and the maximum link capacity C max and the maximum request arrival rate A max About; Va k Indicates the threshold of the request queue length.
[0028] The corresponding relationship between the data transmission rate and the request forwarding rate in step 2.3 is:
[0029] (1) If the sum of the rates at which all neighboring nodes of node j forward data object k is No larger than the data queue Backlog, then for all i∈Γ + (j), all have the data transmission rate on link (j,i) Equal to the request forwarding rate on link (i,j) Virtual data rate on link (j,i) is 0;
[0030] in, It indicates the sum of data objects k forwarded by node j from neighboring nodes in time slot t; represents the length of data object k waiting to be forwarded in the data queue of node j in time slot t; Γ + (j) represents the import node set of the node; represents the data transmission rate from node j to node i regarding data object k in time slot t; represents the virtual data transmission rate from node j to node i regarding data object k in time slot t;
[0031] (2) If the sum of the rates at which all neighboring nodes of node j forward data object k is Larger than data queue If the backlog is too large, then set the auxiliary variable σ, and in is the set of neighbor nodes whose request rate forwarding to node j is not 0; then for all i∈Γ + (j) Where (·x) + denotes max(·x,0), the virtual data rate on link (j,i)
[0032] The cache method is: is the available cache set of node n in time slot t, for each k∈K in time slot t n (t), calculate its priority function
[0033] (1) If the cardinality of the available cache set of node n is not greater than its cache size B n , that is, |K n (t)|≤B n , then node n will cache set K n (t) contains data objects, i.e. Update the cache variable to right Update the cache variable to
[0034] (2) If the cardinality of node n’s available cache set is greater than its cache size B n , that is, |K n (t)|>B n ,Will As a set of priority functions of node n, and reorder F from large to small n (t), node n cache set F n (t) before B n The data object corresponding to the element.
[0035] The beneficial effects of the present invention are as follows: in order to solve the problem of distribution efficiency of medical imaging data in a cache-supported network, a traffic scheduling strategy based on multi-path forwarding is designed, the forwarding rate of requests is controlled by the backlog difference of adjacent queue lengths, and a threshold-based request packet loss mechanism is combined to reduce or avoid medical system crashes and improve the service quality of the network; a cache priority function is designed according to the form of queue backlog, and medical imaging data with a higher priority is preferentially cached, so as to achieve efficient search of data content, reduce network congestion, and improve the overall network throughput. BRIEF DESCRIPTION OF THE DRAWINGS
[0036] Figure 1 It is a schematic diagram of the structure of the queue system of the present invention;
[0037] Figure 2 The figure is a schematic diagram of the overall process of the method of the present invention. DETAILED DESCRIPTION
[0038] The forwarding of medical imaging data requests and the caching of content are crucial factors affecting the performance of medical networks. The present invention provides a medical data forwarding and caching system and method based on a cache-supported network. The specific system and method are described in detail below.
[0039] (I) Composition structure
[0040] The queue system structure in the present invention consists of two subsystems (such as Figure 1 The two subsystems are the request control subsystem and the data queue subsystem. The two subsystems jointly complete the forwarding of requests, the return of data content and the caching process. The dynamic correspondence between the data transmission rate and the request forwarding rate in the system is: in order to maintain the stability of the system, the sum of the data transmission rate and the virtual data transmission rate on the link (i, j) must be equal to the request forwarding rate on the reverse link (j, i).
[0041] 1. Request control subsystem
[0042] The request control subsystem consists of a request queue and a request discard queue. The request queue records requests from local users and requests forwarded by neighboring nodes. The request discard queue records requests that have exceeded the threshold Va due to the length of the request queue. k For a data object k that needs to be searched, the request control subsystem can find the source node or the network node that has cached the data object k. The specific operation process is as follows:
[0043] (1) Node a receives a request to search for data object k locally or a request to search for data object k in a virtual data queue;
[0044] (2) Check whether the memory of node a stores the content corresponding to data object k. If yes, execute (4); otherwise, execute (3);
[0045] (3) All nodes execute the request forwarding strategy and request discarding strategy until they reach the source node or node b that has cached the content of data object k;
[0046] (4) Node b destroys the request packet and returns the content of data object k to the data requester along the reverse path.
[0047] The search process of all data objects constitutes the request control subsystem, and the return process of data on the reverse link constitutes the data queue subsystem.
[0048] 2. Data queue subsystem
[0049] The data queue subsystem consists of a data queue and a virtual data queue. The data queue records the data generated locally and to be forwarded and the data transferred from neighboring nodes. The virtual data queue records the virtual data generated locally and to be forwarded and the virtual data transferred from neighboring nodes. In order to make the corresponding relationship of the rate effective, a virtual data queue is created. When the request packet arrives at the source node or the content node b that has cached the data object k, the specific operation process is as follows:
[0050] (1) Node b deletes the request packet about data object k;
[0051] (2) Node b generates the same number of data packets as the request packets;
[0052] (3) All nodes allocate data and virtual data transmission rates based on the correspondence between data transmission rate and request forwarding rate;
[0053] (4) Node a adds the request in the virtual data queue back to the request queue.
[0054] (II) Forwarding and caching algorithms
[0055] 1. Network Model
[0056] The cache-enabled medical network is modeled as a directed graph with N nodes and L links. If a request is transmitted through link (i, j), then the corresponding data will be transmitted on the opposite link (j, i), Γ + (n) and Γ - (n) are the import and export sets of node n respectively; time is divided into slots, is the capacity information of the link in time slot t. Each node n has a storage space to cache important medical imaging data. The cache size of each node n is denoted as B n , and assume that the cache size is limited. The content of medical imaging data is identified as K data objects, denoted as is defined as the cache status information of the entire network in time slot t, where Indicates that node n caches data object k in time slot t, Indicates that node n does not cache data object k in time slot t; represents the arrival rate of requests from node n about data object k in time slot t, where A max is a constant.
[0057] 2. Request forwarding strategy
[0058] (1) Based on Calculate the weight of data object k on link (i, j)
[0059] (2) Based on Calculate adaptive link weight
[0060] (3) Calculate the forwarding rate of each data object request k on link (i, j) if but Otherwise calculate
[0061] Among them, (·x) + represents max(·x, 0); It represents the difference between the request queue backlogs of node i and node j regarding data object k in time slot t, and is also the weight of data object k on link (i, j); represents the cache variable of node i about data object k in time slot t, if It means that node i caches data object k. If This means that node i does not cache data object k; represents the length of data object k waiting to be forwarded in the request queue of node i in time slot t; C ij (t) represents the transmission capacity of link (i, j) in time slot t; It represents the request forwarding rate from node i to node j regarding data object k in time slot t.
[0062] 3. Request discard policy
[0063] Based on the request queue and request discard queue The length of the calculation node n about the request discard rate of data object k if but otherwise Calculate the final discard rate of node n regarding data object k if but otherwise
[0064] in, represents the length of data object k waiting to be forwarded in the request queue of node n in time slot t; represents the length of data object k waiting to be finally discarded in the request discard queue of node n in time slot t; d max Indicates the maximum value of the request discarded, and the maximum link capacity C max and the maximum request arrival rate A max related.
[0065] 4. The corresponding relationship between data transmission rate and request forwarding rate:
[0066] (1) If the sum of the rates at which all neighboring nodes of node j forward data object k is No larger than the data queue Backlog, then for all i∈Γ + (j), all have the data transmission rate on link (j,i) Equal to the request forwarding rate on link (i,j) Virtual data rate on link (j,i) is 0;
[0067] in, It indicates the sum of data objects k forwarded by node j from neighboring nodes in time slot t; represents the length of data object k waiting to be forwarded in the data queue of node j in time slot t; represents the data transmission rate from node j to node i regarding data object k in time slot t; represents the virtual data transmission rate from node j to node i regarding data object k in time slot t.
[0068] (2) If the sum of the rates at which all neighboring nodes of node j forward data object k is Larger than data queue Backlog, then set an auxiliary variable σ, and in is the set of neighbor nodes whose request rate forwarding to node j is not 0; then for all i∈Γ + (j) Where (·x) + denotes max(·x,0), the virtual data rate on link (j,i)
[0069] 5. Cache replacement strategy
[0070] The premise for a node to cache is that it can obtain the data content to be cached within the current time slot. is the available cache set of node n in time slot t. n (t), calculate the priority function
[0071] (1) If the cardinality of the available cache set of node n is not greater than its cache size, that is, |K n (t)|≤B n , then node n will cache set K n (t) contains data objects, i.e. Update the cache variable to right Update the cache variable to
[0072] (2) If the cardinality of the available cache set of node n is greater than its cache size, that is, |K n (t)|>B n ,Will As a set of priority functions of node n, and reorder F from large to small n (t). Then node n will cache the set F n (t) before B n The data object corresponding to the element.
[0073] 6. Queue Update Rules
[0074] Update request queue:
[0075]
[0076] in, represents the request length of data object k waiting to be forwarded in the request queue of node n in time slot t+1; represents the cache variable of node n about data object k in time slot t; represents the request length of data object k waiting to be forwarded in the request queue of node n in time slot t; represents the total number of requests about data object k that node n wants to forward to its neighbor nodes in time slot t; represents the request discard rate of node n regarding data object k in time slot t; represents the rate at which requests for data object k arrive at node n in time slot t; Indicates that node n is from the virtual data queue in time slot t The number of requests about data object k to be added in; Represents the total number of requests about data object k forwarded by node n’s neighbor nodes in time slot t.
[0077] Update request discard queue:
[0078]
[0079] in, represents the request length of data object k waiting to be finally discarded in the request discard queue of node n in time slot t+1; represents the request length of data object k waiting to be finally discarded in the request discard queue of node n in time slot t; represents the final discard rate of node n's requests for data object k in time slot t; Represents the request queue in time slot t Discard to request discard queue The actual number of requests for data object k.
[0080] Update data queue:
[0081]
[0082] in, represents the data length of data object k waiting to be transmitted in the data queue of node n in time slot t+1; represents the data length of data object k waiting to be transmitted in the data queue of node n in time slot t; represents the total amount of data about data object k that node n wants to forward to its neighbor nodes in time slot t; It represents the data consumed by local requests of node n in time slot t; Represents the total amount of data about data object k transmitted by neighboring nodes of node n in time slot t.
[0083] Update the virtual data queue:
[0084]
[0085] in, represents the virtual data length of data object k waiting to be transmitted in the virtual data queue of node n in time slot t+1; represents the virtual data length of data object k waiting to be transmitted in the virtual data queue of node n in time slot t; represents the total amount of virtual data about data object k that node n needs to forward to its neighbor nodes in time slot t; Represents the total amount of virtual data about data object k transmitted by neighboring nodes of node n in time slot t.
Claims
1. A medical data forwarding and caching system based on a cache support network, characterized in that: the request control subsystem and the data queue subsystem jointly complete the forwarding of requests, the return and caching of data content, the search process of all data objects constitutes the request control subsystem, and the return process of data on the opposite link constitutes the data queue subsystem, wherein, The request control subsystem consists of a request queue and a request discard queue. The request queue records requests from local users and requests forwarded by neighboring nodes. The request discard queue records requests that are discarded when the request queue length exceeds a threshold. The data queue subsystem consists of a data queue and a virtual data queue. The data queue records the data generated locally and to be forwarded and the data transferred from neighboring nodes. The virtual data queue records the virtual data generated locally and to be forwarded and the virtual data transferred from neighboring nodes. For a data object k that needs to be searched, the control subsystem is requested to find the source node or the node in the network that has cached the data object k. The specific operation process is as follows: 1.1 Node a receives a request to search for data object k locally or a request to search for data object k in a virtual data queue; 1.2 Check whether the content corresponding to data object k is stored in the memory of node a. If yes, node a destroys the request packet and returns the content of data object k to the data requester along the reverse path; otherwise, all nodes execute the request forwarding strategy and request discard strategy until they reach the source node or the node that has cached the content of data object k; When the request packet reaches the source node or node b that has cached the content of data object k, the data queue subsystem completes the return of data object k on the reverse link. The specific operation process is as follows: 2.1 Node b deletes the request packet about data object k; 2.2 Node b generates the same number of data packets as the request packets; 2.3 All nodes allocate data and virtual data transmission rates according to the corresponding relationship between data transmission rate and request forwarding rate; 2.4 Node a adds the request in the virtual data queue back to the request queue; The request forwarding strategy in step 1.2 is: (1) Based on Calculate the weight of data object k on link (i, j) (2) Based on Calculate adaptive link weight (3) Calculate the forwarding rate of the request for data object k on link (i, j) Specifically: If but otherwise Where (·x) + represents max(·x, 0); represents the difference between the request queue backlogs of node i and node j regarding data object k in time slot t, that is, the weight of data object k on link (i, j); represents the cache variable of node i about data object k in time slot t, if It means that node i caches data object k. If This means that node i does not cache data object k; represents the length of data object k waiting to be forwarded in the request queue of node i in time slot t; C ij (t) represents the transmission capacity of link (i, j) in time slot t; represents the request forwarding rate from node i to node j regarding data object k in time slot t; The cache method is: is the available cache set of node n in time slot t, for each k∈K in time slot t n (t), calculate its priority function (1) If the cardinality of the available cache set of node n is not greater than its cache size B n , that is, |K n (t)|≤B n , then node n will cache set K n (t) contains data objects, i.e. Update the cache variable to right Update the cache variable to (2) If the cardinality of node n’s available cache set is greater than its cache size B n , that is, |K n (t)|>B n ,Will As a set of priority functions of node n, and reorder F from large to small n (t), node n cache set F n (t) before B n The data object corresponding to the element, in, represents the length of data object k waiting to be forwarded in the request queue of node n in time slot t; Represents the total number of requests about data object k that node n wants to forward to its neighbor nodes in time slot t.
2. The method for forwarding and caching medical data based on a cache support network according to claim 1, characterized in that: The request discarding strategy in step 1.2 is specifically: (1) Based on the request queue and request discard queue The length of the calculation node n about the request discard rate of data object k Specifically: If but otherwise (2) Calculate the final discard rate of node n regarding data object k if but otherwise in, represents the length of data object k waiting to be forwarded in the request queue of node n in time slot t; represents the length of data object k waiting to be finally discarded in the request discard queue of node n in time slot t; d max Indicates the maximum value of the request discarded, and the maximum link capacity C max and the maximum request arrival rate A max About; Va k Indicates the threshold of the request queue length.
3. The method for forwarding and caching medical data based on a cache-supported network according to claim 1, characterized in that: The corresponding relationship between the data transmission rate and the request forwarding rate in step 2.3 is: (1) If the sum of the rates at which all neighboring nodes of node j forward data object k is No larger than the data queue Backlog, then for all i∈Γ + (j), all have the data transmission rate on link (j,i) Equal to the request forwarding rate on link (i,j) Virtual data rate on link (j,i) is 0; in, It indicates the sum of data objects k forwarded by node j from neighboring nodes in time slot t; represents the length of data object k waiting to be forwarded in the data queue of node j in time slot t; Γ + (j) represents the import node set of the node; represents the data transmission rate from node j to node i regarding data object k in time slot t; represents the virtual data transmission rate from node j to node i regarding data object k in time slot t; (2) If the sum of the rates at which all neighboring nodes of node j forward data object k is Larger than data queue If the backlog is too large, then set the auxiliary variable σ, and in is the set of neighbor nodes whose request rate forwarding to node j is not 0; then for all i∈Γ + (j) Where (·x) + denotes max(·x,0), the virtual data rate on link (j,i)
Citation Information
Patent Citations
Efficient coding-aware routing method based on cache management
CN104486040A
Time allocation optimization method for wireless power supply network
CN106973440A