Data transmission system with storage function within a network

JP2023554345A5Active Publication Date: 2024-12-25INST OF ACOUSTICS CHINESE ACAD OF SCI +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2023535901
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2022-01-24
Publication Date
2024-12-25
Estimated Expiration
2042-01-24

AI Technical Summary

Technical Problem

Existing IP network technologies face challenges with mobility, scalability, and data delivery efficiency, particularly in ICN networks, where traditional end-to-end transport layer protocols are not applicable, and there is a need to leverage intermediate transmission nodes for storage and computing power while maintaining compatibility with existing network architectures.

Method used

A data transmission system with a storage function that includes data request, data source service, and intermediate transmission nodes, each with unique identifiers and network addresses, processing transport layer protocol messages and making self-determined decisions for caching and forwarding based on message content and network state, utilizing header fields for preference, cache, and QoS instructions.

Benefits of technology

Enables efficient data block transmission and caching during network communication, optimizing data delivery by utilizing intermediate nodes for storage and computing resources, while maintaining compatibility with existing network routing mechanisms.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

The present invention discloses a data transmission system with storage function within a network, comprising: a data request node, a data source service node, and an intermediate transmission node, each of which is assigned an identifier (ID) unique across an entire network and at least one network address (NA), and each of which is equipped with a unit for processing transport layer protocol messages based on the ID; the data request node is for generating and sending data request messages and receiving data response messages; the data source service node is configured to respond to data requests, and, when a data block identified by the ID is stored in the node, is for providing a transmission service for the content of the data block and for generating and sending a data response message; the intermediate transmission node processes the transport layer protocol messages based on the ID and has a self-determining data storage function, and may determine subsequent processing actions according to information obtained from the message and the network status of the node, and may respond to data requests, and, when a data block identified by the ID is stored in the node, is for providing a transmission service for the content of the data block and for generating and sending a data response message.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] [CROSS-REFERENCE TO RELATED APPLICATIONS] This application claims priority from Chinese Patent Application No. 202011473017.0, entitled "Data Transmission System with In-Network Storage Function," filed on December 15, 2020, the entire contents of which are incorporated herein by reference.

[0002] The present invention relates to computer network technology, and more particularly to a data transmission system having a storage function within a network. [Background technology]

[0003] With the rapid development of the Internet of Things and the mobile Internet, existing IP network technology systems that combine IP identifiers and addresses are gradually revealing inherent shortcomings in areas such as mobility, scalability, and data delivery efficiency. ICN (Information Centric Network) technology, which features the separation of identifiers and addresses, enables content proximity service through in-network caching, providing an efficient and flexible data retrieval mode for big data processing in 5G mobile communication networks, including eMBB, URLLC, and mMTC. In ICN networks, intermediate transmission nodes may act as response nodes for content requests, and therefore transmission systems based on traditional end-to-end transport layer protocols are inapplicable to ICN networks.

[0004] Named Data Network (NDN) or Content Centric Network (CCN), a type of ICN network, is a revolutionary architecture that combines addressing and routing through name-based hop-by-hop routing. However, it is difficult to deploy and implement in existing networks. Other addressing and routing separation methods, such as MobilityFirst, map network entity and data names to a single identifier and bind the ID to its associated network address (NA). This approach is compatible with existing network architectures, such as IP networks, and is implementable in existing networks. Here, the ID is for addressing, and the NA is for routing. Therefore, a pressing issue is how to fully utilize the memory and computing capabilities of intermediate transmission nodes in a network to provide a data transmission system with in-network storage functionality while remaining compatible with existing network routing mechanisms. Summary of the Invention [Means for solving the problem]

[0005] In response to the above problems, the present invention provides a data transmission system with in-network storage functionality. The data transmission system includes a data request node, a data source service node, and an intermediate transmission node. Each node is assigned an identifier (ID) unique across the entire network and at least one network address (NA), and each node includes a unit for processing transport layer protocol messages based on the ID. The transmission object of the data transmission system is a data block having an ID identifier unique across the entire network. The data request node is configured to generate and send a data request message and receive a data response message. The data source service node is configured to respond to a data request, and when a data block identified by the ID is stored in the node, provides a transmission service for the content of the data block and generates and sends a data response message. The intermediate transmission node processes the transport layer protocol message based on the ID, and has a self-decision making data storage function, and may determine subsequent processing actions or respond to data requests according to the information obtained from the message and the network status of the node, and when a data block identified by the ID is stored in the node, provide a transmission service for the content of the data block, and generate and send a data response message.

[0006] As an improvement to the above system, the header fields of the ID-based transport layer protocol message include, but are not limited to, a data block ID, a data request node ID, a source address, a destination address, a message type, and a decision processing instruction field. The data block ID and the data request node ID are maintained unchanged during the transmission process. The message types include, but are not limited to, a data request message and a data response message. The decision processing instruction field includes, but is not limited to, a preference instruction field, a cache instruction field, a QoS instruction field, and combinations thereof. The corresponding instruction information included in the decision processing instruction field is not limited to being transmitted by a message field, but may also be transmitted by a message load.

[0007] As an improvement to the above system, the source address in the data request message is the network address of the data requesting node corresponding to the data requesting node ID, the destination address is the address of the node that stores the data block identified by the data block ID and can provide content transmission service for the data block, and the destination address changes during transmission as the node providing the transmission service and its network address change.

[0008] As an improvement to the above system, the source address of the data response message is the address of a node that stores the data block identified by the data block ID and can provide content transmission service for the data block, and the destination address is the address of the data requesting node corresponding to the data requesting node ID. The source address changes during transmission as the node providing the transmission service and its network address change.

[0009] In an improvement to the above system, the value of the preference indication field represents an indication of an optimal network location for caching or storing the data block, including, but not limited to, a location close to the data requesting node, a location close to the data source, a location close to the network core, and combinations thereof. The value of the cache indication field represents an indication of caching behavior on the transmission path of the content of the data block in the message to which the field belongs, including, but not limited to, the number of times the data block has been cached on the transmission path and the number of times caching needs to be performed. The value of the QoS indication field represents an indication of QoS needs during the transmission, caching, and storage of the content of the data block, including, but not limited to, delay, throughput, and reliability.

[0010] As an improvement to the above system, the intermediate transmission node comprises a decision unit, the input of which is a set of transmission processing information and a set of network status of the node, and the output of which is for deciding whether to perform a corresponding post-processing operation.

[0011] As an improvement to the above system, the transmission processing information set is composed of information obtained by the intermediate transmission node by analyzing the message, including, but not limited to, message header field information and instruction information for message load. The network status set includes the intermediate transmission node's own status and neighboring node status, where the self status indicates the current intermediate transmission node's own resource supply capability, including, but not limited to, available cache space, available storage space, and available bandwidth. The neighboring node status indicates related status information of another intermediate transmission node adjacent to the current intermediate transmission node, including, but not limited to, the network address of the neighboring intermediate transmission node, available storage space, and network distance to this node. The number of neighboring intermediate transmission nodes is not limited to one, and the status is obtained by active detection or passive detection.

[0012] As an improvement to the above system, the determination unit may be characterized by the calculation of a set of determination functions, where a set of determination functions corresponds to a set of post-processing operations, and the value of the determination function is used to determine whether to execute the corresponding post-processing operation. Each determination function uses a different function form, and one determination function corresponds to one or more post-processing operations. Assuming there are N post-processing operations, for the former case, the expression for the determination function D n (X) is as follows. D n (X)=d n Here, n = 1, 2, …, N, the input of the function is X ∈ (PV ∪ NV), PV is the transmission processing information set, NV is the network state set, n is the number of the post-processing operation, and the value d n of the determination function D n (X) is used to determine whether to execute the post-processing operation numbered n. For the latter case, the post-processing operations are divided into M subgroups (1 ≤ M < N), one determination function corresponds to one subgroup, and each subgroup contains k l post-processing operations. That is, it is as follows.

Number

[0013] As an improvement to the above system, the post-processing operation defines the transfer processing behavior of the intermediate transfer node for the received transport layer protocol message, including but not limited to direct transfer, caching, storage, adjacent transfer, and modified transfer.

[0014] As an improvement to the above system, the neighbor forwarding operation may include modifying the destination address in the message to the address of a neighbor node before forwarding, and forwarding the original message, or modifying related instruction information in the message before forwarding, where the neighbor node is another intermediate transmission node selected based on a distance to the current node, the distance including but not limited to a network distance or a geographical distance.

[0015] As an improvement to the above system, the address of the adjacent node is written according to the output value of an adjacent node selection function SN(Y), the formula for which is as follows: SN(Y)={NA i ,i=1,…,I} The function selects an appropriate neighboring node from another intermediate transmission node adjacent to the current intermediate transmission node according to the neighboring node state, and does not restrict the function form. The input Y is the neighboring node state, and the output value NA i is the network address of the i-th adjacent node that satisfies the selection condition of the selection function, and I is the total number of adjacent nodes that satisfy the selection condition of the selection function.

[0016] As an improvement to the above system, a name resolution system is disposed outside the data transmission system to manage and maintain the mapping relationship between the ID and network address of each node in the data transmission system, and between the data block ID and the network address of the node where the data block is stored. One data block ID may correspond to multiple network addresses, thereby providing a resolution service from ID to NA. The node where the data block is stored is a data source service node or an intermediate transmission node that can store the data block identified by the ID and provide a content transmission service for the data block.

[0017] As an improvement to the above system, the modified forwarding is to modify the destination address in the message before forwarding, and the modified corresponding address is written by the output value of the selection function G(CNA), which is expressed as follows: G(CNA)={NA j ,NA j ∈CNA,j=1,…,J} Here, CNA is the network address set of the node where the data block identified by the ID is stored, or the data requesting node network address set corresponding to the data requesting node ID. The set may be obtained by querying a name resolution system, but is not limited to this. One or more G(CNA) may be defined according to the application and network needs. Output value NA j is the network address of the jth node where the data block identified by the ID is stored, and J is the total number of nodes where the data block identified by the ID is stored. [Effects of the Invention]

[0018] The advantages of the present invention are as follows:

[0019] According to the system of the present invention, transmission of data blocks between a data request node and an intermediate transmission node or a data source service node is realized based on an unchanging data block ID and a data request node ID, and caching and storage of data blocks during transmission is realized by determining and processing message fields by the intermediate transmission node. [Brief explanation of the drawings]

[0020] [Figure 1] 1 is a schematic diagram illustrating the configuration of a data transmission system having a storage function within a network according to the present invention. [Figure 2] FIG. 10 is a schematic diagram of a message in which decision process instruction information is included in a message field. [Figure 3]FIG. 10 is a schematic diagram of a message in which decision processing instruction information is included in the message load. [Figure 4] FIG. 2 is a functional module diagram of an intermediate transmission node. [Figure 5] Schematic diagram A of a data request and response process. [Figure 6] Schematic diagram B of the data request and response process. DETAILED DESCRIPTION OF THE INVENTION

[0021] The technical solution of the present invention will be described in detail below with reference to the drawings.

[0022] As shown in Figure 1, the data transmission system with storage function in a network according to the present invention comprises nodes such as a data request node, a data source service node, and intermediate transmission nodes capable of processing transport layer messages and having self-determining data storage functions. Each node is assigned an identifier (ID) unique across the entire network and at least one network address (NA). The transmission object of the system is a data block (e.g., ID-c in the figure) with an ID unique across the entire network. Both the intermediate transmission node and the data source service node of the system can respond to requests initiated by the data request node. All nodes of the system include a unit module for processing transport layer protocol messages based on the ID.

[0023] The data request node of the system has the function of generating and sending a data request message and receiving a data response message, and the data source service node of the system has the function of generating and sending a data response message in response to the data request message.

[0024] Outside the system, a name resolution system is responsible for managing and maintaining the mapping relationship between each node ID and the node network address in the data transmission system, and between the data block ID and the node network address where the data block is stored, and providing the resolution service from ID to NA. The mapping relationship may be such that one data block ID corresponds to multiple network addresses, for example, data block ID-c in the figure corresponds to two network addresses NA-s and NA-t3.

[0025] The transport layer protocol message header fields of the present invention may include, but are not limited to, a data block ID, a data request node ID, a source address, a destination address, a message type, and a decision processing instruction field. Figure 2 is a schematic diagram of the message in an IPv6 network.

[0026] The data block ID and the data requesting node ID are maintained unchanged during transmission. Message types include, but are not limited to, a data request message and a data response message. The decision processing instruction field includes, but is not limited to, a preference instruction, a cache instruction, and a QoS instruction, and may be a combination thereof. The source address of the data request message is the network address of the data requesting node corresponding to the data requesting node ID. The destination address is the address of the node where the data block identified by the ID is stored and which can provide content transmission services for the data block. The destination address may change during transmission as the node providing the transmission service and its network address change.

[0027] The source address of the data response message is the address of the node where the data block identified by the ID is stored and which can provide content transmission service for the data block. The destination address is the address of the data requesting node corresponding to the data requesting node ID. The source address may change during transmission as the node providing the transmission service and its network address change.

[0028] In the decision processing instruction field, the value of the preference instruction field represents an instruction for a preferred network location for caching or storing the data block, including, but not limited to, a location close to the data request node, a location close to the data source, a location close to the network core, and combinations thereof. The value of the cache instruction field represents an instruction for caching behavior along the transmission path of the content of the data block in the message to which the field belongs, including, but not limited to, the number of times the data block has been cached along the transmission path and the number of times caching needs to be performed. The value of the QoS instruction field represents an instruction for QoS needs during the transmission, caching, and storage of the content of the data block, including, but not limited to, needs for delay, throughput, reliability, etc.

[0029] The decision processing instruction information in the message field may be transmitted by message load. Figure 3 is a schematic diagram of a message transmitting the information by message load. Using a TLV (Tag, Length, Value) encoding format, tags 1, 2, and 3 correspond to information such as QoS instruction, preference instruction, and cache instruction, respectively.

[0030] The functional module diagram of the intermediate transmission node is shown in Figure 4. The modules include a transport layer protocol message processing module, a determination module, and a post-processing module. The transport layer protocol message processing module receives and identifies a transport layer protocol message based on an ID, analyzes the message, and obtains information such as a data block ID, data request node ID, source address, destination address, message type, and determination processing instruction contained in the transport layer protocol message header field or payload. Based on this, the transport layer protocol message processing module constructs a transmission processing information set and transmits it to the determination module. The transport layer protocol message processing module also transmits the message processed by the post-processing module to the network layer for transmission.

[0031] The input of the decision module is a set of transmission processing information transmitted from the transport layer protocol message processing module and a set of network status of the current node, and its output result is transmitted to the post-processing module to determine whether to perform the corresponding post-processing operation.

[0032] The decision module may be characterized by the calculation of a set of decision functions, each corresponding to a set of post-processing operations, and the value of the decision function determines whether to execute the corresponding post-processing operation, although each decision function may have a different functional form. One decision function may correspond to one post-processing operation or multiple post-processing operations. Without loss of generality, assuming there are N (N≧1) post-processing operations, for the former, the decision function D of the nth post-processing operation is n The formula for (X) is as follows: D n (X)=d n where n = 1, 2, ..., N, the input of the function is X∈(PV∪NV), PV is the transmission processing information set, NV is the network state set, n is the number of the post-processing operation, and the decision function D n (X) value d nIt is for determining whether to execute the post - processing operation with number n.

[0033] Regarding the latter, the post - processing operation is divided into M subgroups (1 ≦ M < N), one decision function corresponds to one subgroup, and each subgroup contains k l post - processing operations. That is, it is as follows.

Number

[0034] Based on the output of the decision module, the post - processing module determines whether to execute post - processing operations such as direct transfer, caching, storage, adjacent transfer, and modified transfer. Among them, direct transfer directly transfers the message without modifying the message.

[0035] Caching stores the content of the data block in the message in the local intermediate transfer node, and transfers the original message, or transfers the message after modifying the relevant instruction information in the message.

[0036] Storage stores the content of the data block in the message in the local intermediate transfer node.

[0037] Neighbor forwarding modifies the destination address in the message to the address of the neighboring node before forwarding, and may forward the original message, or may modify the relevant indication information in the message before forwarding. The neighboring node of the current node is another intermediate transmission node selected based on its distance to the current node, which may be, but is not limited to, network distance or geographic distance. The destination address of the neighbor forwarding modification may be written based on the output value of the neighboring node selection function SN(Y), as follows: SN(Y)={NA i ,i=1,…,I} The function selects an appropriate other transmission node from the transmission nodes adjacent to the current intermediate transmission node according to the adjacent node state, and does not restrict the function form. The input Y is the adjacent node state, and the output value NA i is the network address of the adjacent intermediate transmission node that satisfies the selection condition of the selection function.

[0038] The modify forwarding modifies the destination address in the message before forwarding, and the modified corresponding address is written by the output value of the selection function G(CNA). The formula representing the selection function is as follows: G(CNA)={NA j ,NA j ∈CNA,j=1,…,J} Here, CNA is a node network address set corresponding to a data block ID where the data block identified by the ID is stored, or a data requesting node network address set corresponding to a data requesting node ID. The set may be obtained by querying a name resolution system, but is not limited to this. One or more G(CNA)s may be defined according to application and network needs.

[0039] Decision function D n(X) may adopt a two-stage decision method, in which several relatively independent decision items such as the cache / storage needs of the data block, the cache / storage capacity of the current node, the selection and cache capacity of the neighboring node, etc. are first determined once, and then a joint decision is made based on the determined results. That is, the decision function may be expressed as a joint decision function for a series of decision item decision function output values, as follows: D n (X)=JD n [F1(X),F2(X),…,F i (X),…] Here, J.D. n (·) is the joint decision function for the nth post-processing action, and its input triggers the decision related to the nth post-processing action, F1(X),F2(X),…,F i (X),... are the output values, but JD n (·) and F i The form of (X) is not restricted.

[0040] The decision function for the relevant decision items may be expressed as follows:

[0041] F C (X) denotes a cache decision function for determining whether the content of the data block in the message needs to be cached at the current intermediate transmission node, and its output value may be characterized by, but is not limited to, a Boolean value. Fc(X)=Y; must be cached in the current node. N: No need to cache in the current node.

[0042] F CA (X) denotes a cacheability determination function for determining whether the current intermediate transmission node is capable of caching the data block, and its output value may be characterized by, but is not limited to, a Boolean value. F CA (X)=Y; the current node has the ability to cache. N: The current node does not have the ability to cache.

[0043] F CN (X) denotes a neighbor cache determination function, which is used to determine whether the current intermediate transmission node can forward a message to a neighboring intermediate transmission node for caching, and its output value may be characterized by, but is not limited to, a Boolean value. F CN (X)=Y; it can be transferred to an adjacent intermediate transmission node and cached. N: Cannot be forwarded to an adjacent intermediate transmission node and cached.

[0044] F S (X) denotes a storage decision function for determining whether the content of the data block in the message needs to be stored at the current intermediate transmission node, and its output value may be characterized by, but is not limited to, a Boolean value. F S (X)=Y; must be stored in the current node. N; no need to store in the current node.

[0045] F SA (X) denotes a storage capability determination function, which is used to determine whether the current intermediate transmission node is capable of storing the data block, and its output value may be characterized by, but is not limited to, a Boolean value. F SA (X)=Y; the current node has the ability to remember. N: The current node does not have the ability to remember.

[0046] F MD (X) denotes a destination address determination function, which is used to determine whether to modify the destination address, and its output value may be characterized by a Boolean value, but is not limited to this. F MD (X)=Y; Modify the destination address. N: Do not modify the destination address.

[0047] FMS (X) denotes a source address judgment function for judging whether to modify the source address, and its output value may be characterized by a Boolean value, but is not limited to this. F MS (X)=Y; Modify the source address. N: Do not modify the source address.

[0048] F i (X) is any other decision function required depending on the application or network needs.

[0049] Thus, the cooperation decision function for post-processing operations such as direct forwarding, cache, store, adjacent forwarding, and modified forwarding is: (1) Regarding direct transfer operations, JD1(X)=[(F C (X)==N)∩(F S (X)==N)]∪[(F C (X)==Y)∩(F CA (X)==N)∩(F CN (X)==N)] (2) Regarding cache operation, JD2(X)=(F C (X)==Y)∩(F CA ==Y) (3) Regarding memory operations, JD3(X)=(F C (X)==Y)∩(F CA (X)==Y)∩(F CN (X)==Y) (4) Regarding neighbor forwarding operations, JD4(X)=[(F C (X)==Y)∩(F CA (X)==Y)∩(F CN (X)==Y)]∪[(F S (X)==Y)∩(F SA (X)==Y)] (5) Regarding corrective forwarding operations, JD5(X)=(F MD (X)==Y)∪(F MS (X)==Y), may be.

[0050] If the output value of the joint decision function is "true", a corresponding post-processing operation is performed. The output of the function may be a continuous value. A comparison with a threshold value determines whether to perform the corresponding post-processing operation.

[0051] A specific embodiment of the data request and response process in the transmission system according to the present invention is shown in FIG. 5 and FIG.

[0052] Referring to FIG. 5, without loss of generality, assuming that no data blocks are cached or stored in any intermediate transmission node during initialization, the data source service node is assigned a network address NA-s, a data block with an ID-c identifier is stored, and the mapping relationship between ID-c and the data source service node address NA-s has already been registered in the name resolution system. The data request node 1 is assigned an identifier ID-r1 that is unique across the entire network and a network address NA-r1. The intermediate transmission nodes 1, 2, and 3 are assigned network addresses NA-t1, NA-t2, and NA-t3, respectively. The decision function in the decision module of the node uses a two-stage decision scheme. The cache decision function F C (X) is F C Assuming that (X)=Y, i.e., the current node always needs to cache, the values ​​of the message type field in the transport layer protocol message header field are set to 0 and 1, where 0 indicates a data request message and 1 indicates a data response message.

[0053] (101) The data request node 1 sends a resolution request including the data block ID-c to the name resolution system, and the name resolution system returns the data source service node address NA-s where the data block ID-c is stored.

[0054] (102) The transport layer protocol message processing module of the data requesting node 1 generates and sends a data request message to initiate a request for the data block. In the data request message, the message type is set to 0, the data block ID is set to ID-c, the data requesting node ID is set to ID-r1, the destination address is set to NA-s, and the source address is set to NA-r1. The message is forwarded to the intermediate transmission node 1 according to the routing mechanism of the network itself to which it belongs.

[0055] (103) The transport layer protocol message processing module of the intermediate transmission node 1 receives the data request message, identifies and analyzes the message, and reads that the message type is 0, indicating that it is a data request message. Then, it reads the destination address. Since the destination address of the message is not the address of the current node, it directly forwards the message to the intermediate transmission node 2 according to the routing mechanism of the network to which it belongs.

[0056] (104) The transport layer protocol message processing module of the intermediate transmission node 2 receives the data request message, identifies and analyzes the message, and reads that the message type is 0, indicating that it is a data request message. Then, it reads the destination address. Since the destination address of the message is not the current node address, it directly forwards the message to the data source service node according to the routing mechanism of the network to which it belongs.

[0057] (105) The transport layer protocol message processing module of the data source service node receives the data request message, identifies and analyzes the message, and if it finds that the message type is 0, indicating that it is a data request message, it reads the destination address. Here, since the destination address NA-s of the message is the network address of the current node, it generates a data response message in response to the data request. In the data response message, the message type is set to 1, the data block ID is set to ID-c, the data request node ID is set to ID-r1, the destination address is set to NA-r1, and the source address is set to NA-s. If the decision processing instruction field information includes at least a cache instruction, it encapsulates the contents of the data block corresponding to ID-c and sends the message. Here, the message is forwarded to the intermediate transmission node 3 according to the routing mechanism of the network itself to which it belongs.

[0058] (106) The transport layer protocol message processing module of the intermediate transmission node 3 receives the data response message, identifies and analyzes the message, and if it finds that the message type is 1, which indicates that the message is a data response message, it reads the decision processing instruction information and transmits it to the decision module. The decision module C (X) and F CA Calculate (X). F C If (X)=Y, then it needs to be cached, and the current node has no cached or stored data block and is capable of caching. CA (X)=Y, and based on this, the cooperation decision function JD2(X)=Y for the cache operation is calculated. That is, the decision result is to perform the cache operation. Therefore, the post-processing module performs the cache operation to cache the content of the data block, and then performs step (107), and forwards the original message, or may modify the cache indication information in the message before forwarding. The message is forwarded to the intermediate transmission node 1 according to the routing mechanism of the network itself to which it belongs.

[0059] (107) The intermediate transmission node 3 registers the mapping relationship between the data block ID and the network address NA-t3 of the intermediate transmission node 3 in the name resolution system.

[0060] (108) The transport layer protocol message processing module of the intermediate transmission node 1 receives the data response message, identifies and analyzes the message, and if it finds that the message type is 1, which indicates that the message is a data response message, it reads the decision processing instruction information and transmits it to the decision module. The decision module C (X) and F CA Calculate (X). F C If (X)=Y, then it needs to be cached, and the current node has no cached or stored data block and is capable of caching. CA (X)=Y, and based on this, the cooperation decision function JD2(X)=Y for the cache operation is calculated. That is, the decision result is to perform the cache operation. Therefore, the post-processing module performs the cache operation, caches the content of the data block, and then performs step (109), and forwards the original message, or may modify the cache instruction information in the message before forwarding. The message is forwarded to the data request node 1 according to the routing mechanism of the network itself to which it belongs.

[0061] (109) The intermediate transmission node 1 registers the mapping relationship between the data block ID and the network address NA-t1 of the intermediate transmission node 1 in the name resolution system.

[0062] (110) The transport layer protocol message processing module of the data request node 1 receives the data response message, identifies and analyzes the message, and if it finds that the message type is 1, indicating that it is a data response message, it reads the destination address. Here, since the destination address NA-r1 of the message is the network address of the current node, it reads the contents of the data block and provides the contents of the read data block to the upper layer application.

[0063] During the execution of the above step (105), step (105a) may be executed to update the destination address before sending the message.

[0064] (105a) The data source service node sends an analysis request including the identifier ID-r1 of the data request node 1 to the name analysis system, and the name analysis system returns the address NA-r1 corresponding to ID-r1 to update the destination address. During the execution of the above step (106), step (106a) may be executed to update the destination address before forwarding the message.

[0065] (106a) The intermediate transmission node 3 sends an analysis request including the identifier ID-r1 of the data request node 1 to the name resolution system, and the name resolution system returns the address NA-r1 corresponding to ID-r1 to update the destination address. Regarding the above step (108), the intermediate transmission node 1 may update the destination address during execution before forwarding the message, and this step is similar to (106a), so a detailed description is omitted here.

[0066] From step (105) in the above process, the data response message is transmitted in the order of intermediate transmission nodes 3 and 1 and data request node 1 according to the routing mechanism of the network itself to which it belongs, but it may also be transmitted along the route of intermediate transmission nodes 2 and 1 and data request node 1 according to the routing mechanism of the network itself.

[0067] In step (105) of the above process, when the data source service node transport layer protocol message processing module encapsulates the data response message, the size of the data block may be larger than the maximum length of the network layer message, so the data block corresponding to ID-c may be divided into smaller data pieces, encapsulated into multiple packets, and transmitted. The transmission time may be, but is not limited to, continuous transmission or transmission according to the request situation of the data request node.

[0068] 6 is based on FIG. 5 and adds one data request node 2, which is assigned an identifier ID-r2 and a network address NA-r2 that are unique across the entire network. Assuming that the data request node 1 has already obtained the data block identified by ID-c in response to the process request in FIG. 5, and that the data block has also been cached and registered in the intermediate transmission nodes 3 and 1, the specific implementation process by which the data request node 2 requests the data block identified by ID-c is as follows:

[0069] (201) The data requesting node 2 sends a resolution request including data block ID-c to the name resolution system, and the name resolution system replies with a network address set CNA including the data source service node address NA-s where the data block ID-c is stored, and the addresses NA-r3 and NA-r1 of the intermediate transmission nodes 3 and 1. Assuming that NA-r3 is selected, the name resolution system may select one address and reply, and does not limit the selection method, and is assumed to reply NA-r3.

[0070] (202) The transport layer protocol message processing module of the data requesting node 2 generates and sends a data request message to initiate a request for the data block. In the data request message, the message type is set to 0, the data block ID is set to ID-c, the data requesting node ID is set to ID-r2, the source address is set to NA-r1, and the destination address is set to NA-r3. The message is forwarded to the intermediate transmission node 1 according to the routing mechanism of the network itself to which it belongs.

[0071] (203) The transport layer protocol message processing module of the intermediate transmission node 1 receives the data request message, identifies and analyzes the message, and reads that the message type is 0, indicating that it is a data request message, and then reads the destination address. Here, since the destination address of the data request message is not the current node address, the message is directly forwarded to the intermediate transmission node 3 according to the routing mechanism of the network to which the message belongs.

[0072] (204) The transport layer protocol message processing module of the intermediate transmission node 3 receives the data request message, identifies and analyzes the message, and if it determines that the message type is 0, indicating that it is a data request message, it reads the destination address. Here, since the destination address of the data request message is the current node address, it generates a data response message in response to the data request. In the data response message, the message type is set to 1, the data block ID is set to ID-c, the data request node ID is set to ID-r2, the destination address is set to NA-r2, and the source address is set to NA-t3, and the decision processing instruction field information includes at least a cache instruction. Then, it encapsulates the contents of the data block corresponding to ID-c and sends the message, which is then forwarded to the intermediate transmission node 1 according to the routing mechanism of the network to which the message belongs.

[0073] (205) The transport layer protocol message processing module of the intermediate transmission node 1 receives the data response message, identifies and analyzes the message, and if it finds that the message type is 1, which indicates that the message is a data response message, it reads the decision processing instruction information and transmits it to the decision module. The decision module C (X) and F CA Calculate (X) and F C If (X)=Y, then it is necessary to cache, and assuming that the current node currently has the ability to cache, F CA (X)=Y, and based on this, calculate the cooperation decision function JD2(X)=Y for the cache operation. That is, the decision result is to perform the cache operation. Therefore, the post-processing module performs the cache operation to cache the content of the data block. Since the data block has already been cached in the current node, there is no need to cache it. At the same time, the original message can be forwarded, or the cache indication information in the message can be modified before forwarding. The message is forwarded to the data request node 2 according to the routing mechanism of the network to which it belongs.

[0074] (206) The transport layer protocol message processing module of the data request node 2 receives the data response message, identifies and analyzes the message, and if it finds that the message type is 1, indicating that it is a data response message, it reads the destination address. Here, since the destination address NA-r2 of the data response message is the network address of the current node, it reads the contents of the data block and provides the contents of the read data block to the upper layer application.

[0075] The above steps (204) and (205) may update the destination address during execution before forwarding the message, and this step is similar to step (106a), so a detailed description is omitted here.

[0076] Finally, it should be noted that the above embodiments are merely for illustrating the technical solutions of the present invention, and are not limited thereto. Although the present invention has been described in detail with reference to the embodiments, those skilled in the art will understand that any modifications or equivalent replacements made to the technical solutions of the present invention shall not depart from the spirit and scope of the technical solutions of the present invention, and all of them should be included in the scope of the claims of the present invention.

Claims

1. A data transmission system having a storage function in a network, The data transmission system includes a data request node, a data source service node, and an intermediate transmission node, each of which is assigned a unique node ID and at least one network address (NA) in one entire network, and each of which is provided with a unit for processing a transport layer protocol message based on an ID including a node ID and a data block ID; and the transmission object of the data transmission system is a data block having a unique data block ID in the entire network; The data request node is for generating and sending a data request message and receiving a data response message; the data source service node is configured to respond to data requests, and to provide a transmission service of the contents of a data block identified by an ID when the data block is stored in the node, and to generate and transmit a data response message; The intermediate transmission node processes the transport layer protocol message based on the ID, and has a self-determining data storage function, i.e., has a function of determining the processing for subsequent forwarding and storing the transport layer protocol message based on the information contained in the message and the network state of the node, and may respond to a data request, and if a data block identified by the ID is stored in the node, provides a transmission service of the content of the data block in response to the data request, and generates and transmits a data response message, the network state indicating the resource supplying capabilities of the node and its neighboring nodes, including the node's storage, available bandwidth, cache, and network distance; a message type including a data request message and a data response message; the decision processing instruction field including a preference instruction field, a cache instruction field, a QoS instruction field, and a combination thereof; the preference instruction field representing instruction information of an optimal network location for caching or storing a data block; the cache instruction field representing instruction information of a caching behavior on a transmission path of the content of the data block in the message to which the field belongs; and the QoS instruction field representing instruction information of QoS needs during transmission, caching, and storage of the content of the data block; and the corresponding instruction information included in the decision processing instruction field is not limited to being transmitted by a message header field, but may also be transmitted by a message payload.

2. A data transmission system with storage function within a network as described in claim 1, characterized in that the source address in the data request message is the network address of a data requesting node corresponding to the data requesting node ID, the destination address is the address of a node in which a data block identified by a data block ID is stored and which can provide content transmission services for the data block, and the destination address changes during transmission as the node providing the transmission service and its network address change.

3. A data transmission system with storage function within a network as described in claim 1, characterized in that the source address of the data response message is the address of a node where a data block identified by a data block ID is stored and which can provide a content transmission service for the data block, the destination address is the address of a data requesting node corresponding to the data requesting node ID, and the source address changes during transmission as the node providing the transmission service and its network address change.

4. the value of the preference indication field represents an indication of an optimal network location for caching or storing the data block, including a location closer to the data requesting node, a location closer to the data source, a location closer to the network core, and combinations thereof; The value of the cache instruction field represents cache behavior instruction information on the transmission path of the content of the data block in the message to which the field belongs, and includes the number of times the data block has been cached on the transmission path and the number of times caching needs to be performed; 2. The data transmission system with storage function in a network as described in claim 1, characterized in that the value of the QoS indication field represents indication information of QoS needs during transmission, caching and storage of the contents of the data block, including delay, throughput and reliability.

5. 2. The data transmission system with storage function in a network as described in claim 1, characterized in that the intermediate transmission node comprises a decision unit, and inputs of the decision unit are a transmission processing information set and a network state set of the node, the transmission processing information set is composed of information obtained by the intermediate transmission node by analyzing a message, and includes header field information of the message and instruction information to be transmitted to the message payload, the network state set includes self information and adjacent node information of the intermediate transmission node, the self state is for indicating the resource supply capability of the current intermediate transmission node itself, including available cache space, available memory space and available bandwidth, and the output of the decision unit is for determining whether to perform a corresponding post-processing operation.

6. The data transmission system with storage function in a network as described in claim 5, characterized in that the transmission processing information set is composed of information obtained by the intermediate transmission node by analyzing the message, and includes header field information of the message and instruction information to be transmitted to the message payload; the network state set includes the intermediate transmission node's own state and adjacent node state, the self state is for indicating the resource supply capability of the current intermediate transmission node itself, and includes available cache space, available memory space and available bandwidth; the adjacent node state is for indicating related state information of another intermediate transmission node adjacent to the current intermediate transmission node, and includes the network address of the adjacent intermediate transmission node, available memory space and network distance to this node; the number of adjacent intermediate transmission nodes is not limited to one, and the adjacent node state is obtained by active detection or passive detection.

7. The decision unit may be characterized by calculating a set of decision functions, where the set of decision functions corresponds to a set of post-processing operations, and the value of the decision function is for determining whether to perform the corresponding post-processing operation, where each decision function uses a different functional form, and where one decision function corresponds to one or more post-processing operations; Assuming there are N post-processing operations, the decision function D of the n-th post-processing operation in terms of the former n The formula representing (X) is as follows: D n (X)=d n Here, n = 1, 2, ..., N, the input of the function is X ∈ (PV ∪ NV), PV is the transmission processing information set, NV is the network state set, n is the number of the post-processing operation, and the decision function D n (X) value d n for determining whether to perform a post-processing operation numbered n; For the latter, the post-processing operations are divided into M subgroups, where 1≦M<N, one decision function corresponds to one subgroup, and each subgroup has k i post-processing operations, namely: [0010] Here, 1≦k i ≦N, decision function D l The expression for (X) is D l (X) = [d l1 , d l2 , ..., d lkl ], l=1,2,...,M,d l1 , d l2 , ..., d lkl is the lth decision function D l 7. A data transmission system with storage function in a network as claimed in claim 5 or 6, characterized in that the output values ​​of (X) are output values ​​of (X), each value corresponding to one post-processing operation in the l-th subgroup.

8. The data transmission system with storage capability in a network as described in claim 5, characterized in that the post-processing operation specifies the forwarding processing behavior of an intermediate transmission node for a received transport layer protocol message, and includes direct forwarding, caching, storing, adjacent forwarding and modified forwarding.

9. The data transmission system with storage function in a network described in claim 8, characterized in that the adjacent forwarding includes modifying the destination address in the message to the address of an adjacent node before forwarding, and may also forward the original message or modify related instruction information in the message before forwarding, wherein the adjacent node is another intermediate transmission node selected based on a distance from the current node, the distance including a network distance or a geographical distance.

10. The address of the adjacent node is written according to the output value of an adjacent node selection function SN(Y), the formula representing the function is as follows: SN(Y)={NA i ,i=1,…,I} The function selects an appropriate neighboring node from another intermediate transmission node adjacent to the current intermediate transmission node according to the neighboring node state, does not restrict the function form, and its input Y is the neighboring node state, output value NA i 10. A data transmission system with storage function in a network as described in claim 9, characterized in that: i is the network address of the i-th adjacent node that satisfies the selection condition of the selection function, and I is the total number of adjacent nodes that satisfy the selection condition of the selection function.

11. The data transmission system with storage function within a network as described in claim 8, characterized in that a name resolution system is arranged outside the data transmission system to manage and maintain a mapping function between the ID and network address of each node in the data transmission system, and between the data block ID and the network address of the node in which the data block is stored, and one data block ID may correspond to multiple network addresses, thereby providing a resolution service from ID to NA, and the node in which the data block is stored is a data source service node or an intermediate transmission node that can store a data block identified by the ID and provide a content transmission service for the data block.

12. The modification and forwarding is to modify the destination address in the message before forwarding, and the modified corresponding address is written by the output value of a selection function G(CNA), the formula of which is as follows: G(CNA)={NA j , N j ∈CNA,j=1,…,J} Here, CNA is a set of network addresses of the node in which the data block identified by the ID is stored, or a set of network addresses of the data requesting node corresponding to the data requesting node ID, which may be obtained by querying a name resolution system; G(CNA) may be one or more defined according to application and network needs; and the output value NA j A data transmission system with storage function within a network as described in claim 11, characterized in that j is the network address of the jth node in which the data block identified by the ID is stored, and j is the total number of nodes in which the data block identified by the ID is stored.