Data transmission system having a storage function within a network

The data transmission system addresses the inefficiencies of existing IP network technologies by incorporating a network with storage functions, utilizing ID-based transport layer protocol messages and self-decision making nodes for efficient data block transmission and caching.

JP7648766B2Active Publication Date: 2025-03-18INST OF ACOUSTICS CHINESE ACAD OF SCI +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023535901
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-01-24
Publication Date
2025-03-18
Estimated Expiration
2042-01-24

AI Technical Summary

Technical Problem

Existing IP network technology systems struggle with mobility, scalability, and data delivery efficiency, particularly in ICN networks where traditional end-to-end transport layer protocols are not applicable.

Method used

A data transmission system with storage functions within a network, comprising a data request node, a data source service node, and an intermediate transmission node, each with unique identifiers and network addresses, and equipped with units processing ID-based transport layer protocol messages, enabling self-decision making data storage and processing.

Benefits of technology

The system achieves efficient data block transmission and caching/storage during transmission by maintaining unchanged data block IDs and processing message fields at intermediate nodes, enhancing network flexibility and data delivery efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007648766000004
    Figure 0007648766000004
  • Figure 0007648766000005
    Figure 0007648766000005
  • Figure 0007648766000006
    Figure 0007648766000006
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 to 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, the existing IP network technology system combining IP identifiers and addresses is gradually showing inherent defects in terms of mobility, scalability, data delivery efficiency, etc. ICN (Information Centric Network) technology, which is characterized by the separation of identifiers and addresses, realizes content close service through in-network caching, and provides an efficient and flexible data acquisition mode for big data processing in eMBB, URLLC and mMTC scenarios of 5G new mobile communication networks. In the ICN network, intermediate transmission nodes may be the response nodes of content requests, so the transmission system based on the traditional end-to-end transport layer protocol cannot be applied to the ICN network.

[0004] NDN (Named Data Network) or CCN (Content Centric Network) is a type of ICN network that performs hop-by-hop routing based on names for addressing, and is a revolutionary architecture that combines addressing and routing, and is difficult to deploy and deploy in existing networks. Other addressing and routing separation methods, such as MobilityFirst, map network entities and data names to one identifier and bind the ID to the network address (NA) to which it belongs, and are compatible with existing network architectures, such as IP networks, and are implementable in existing networks. Here, the ID is for addressing, and the NA is for routing. Therefore, how to fully utilize the memory and computing capabilities of intermediate transmission nodes in a network to provide a data transmission system with storage function in the network while being compatible with existing network routing mechanisms is an issue that needs to be resolved quickly. Summary of the Invention [Means for solving the problem]

[0005] In view of the above problem, the present invention aims to provide a data transmission system with 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 node is assigned an identifier (ID) unique in one entire network and at least one network address (NA), and each node includes a unit for processing a transport layer protocol message based on the ID. A transmission object of the data transmission system is a data block having an ID identifier unique 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 a data request, and is for providing a transmission service of the content of a data block identified by an ID when the data block is stored in the node, and for generating and sending 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 information obtained from the message and the network state of the node, and is for providing a transmission service of the content of a data block identified by the ID when the data block is stored in the node, and generating and sending 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. During the transmission process, the data block ID and the data request node ID are maintained unchanged. 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 carried by a message field, but may also be carried by a message payload.

[0007] As an improvement of the above system, the source address in the data request message is the network address of the data request node corresponding to the data request node ID, the destination address is the address of the node where the data block identified by the data block ID is stored and can provide the content transmission service of 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 the node where the data block identified by the data block ID is stored and can provide the content transmission service of the data block, the destination address is the address of the 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.

[0009] In an improvement of 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 a data requesting node, a location close to a data source, a location close to a network core, and combinations thereof. The value of the cache indication field represents an indication of a caching behavior on a transmission path of the content of the data block in the message to which the field belongs, including but not limited to a number of times the data block has been cached on the transmission path and a number of times caching needs to be performed. The value of the QoS indication field represents an indication of a QoS need during transmission, caching, and storage of the content of the data block, including but not limited to delay, throughput, and reliability.

[0010] As an improvement of 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 states 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 through analyzing the message, including but not limited to header field information of the message and instruction information to be carried in 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 supplying capability of the current intermediate transmission node itself, including but not limited to available cache space, available storage 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, including but not limited to the network address of the adjacent intermediate transmission node, available storage space and network distance to this node. The number of adjacent intermediate transmission nodes is not limited to one, and the state 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 set of transmission processing information, NV is the set of network states, n is the number of the post-processing operation, and the value d n of the determination function D n 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 of the above system, the neighbor forwarding operation includes modifying a destination address in the message to an address of a neighbor node before forwarding, and may forward the original message, or may modify related indication 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 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, 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 the content transmission service of the data block.

[0017] As an improvement of the above system, the modified forwarding is to modify the destination address in the message before forwarding, and the modified corresponding address is filled in by the output value of a selection function G(CNA), and the formula representing the selection function is 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 the name resolution system, but is not limited thereto. G(CNA) may be one or more defined according to the application and network needs. Output value NA 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. Effect 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 a non-changing 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 description of the drawings]

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

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

[0022] As shown in Fig. 1, the data transmission system with storage function in a network according to the present invention is composed of nodes such as a data request node, a data source service node, and an intermediate transmission node capable of processing transport layer messages and having self-determined data storage function. Each node is assigned an identifier (ID) unique in one whole 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 in the whole network. Both the intermediate transmission node and the data source service node of the system can respond to a request initiated by the data request node. Every node of the system is equipped with a unit module for processing transport layer protocol messages based on the ID.

[0023] A data request node of the system has the function of generating and sending a data request message and receiving a data response message, and a 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 in the data transmission system and the node network address, 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 that one data block ID corresponds to multiple network addresses, for example, the data block ID-c in the figure corresponds to two network addresses NA-s and NA-t3.

[0025] The transport layer protocol message header field of the present invention may include, but is 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 request node ID are kept unchanged during the transmission. The message type includes, but is 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 request node corresponding to the data request node ID. The destination address is the address of the node where the data block identified by the ID is stored and can provide the content transmission service of the data block. The destination address may change during the 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 can provide the content transmission service of 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 of 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 of a 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 instruction field represents an instruction of a QoS need during the transmission, caching, and storage of the content of the data block, including but not limited to the needs of delay, throughput, reliability, etc.

[0029] The decision processing instruction information in the message field may be carried by the message payload. Figure 3 is a schematic diagram of a message carrying the information by the message payload. Using the 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 FIG. 4. The module includes a transport layer protocol message processing module, a determination module, and a post-processing module. The transport layer protocol message processing module is responsible for receiving and identifying a transport layer protocol message based on an ID, analyzing the message, and obtaining information such as a data block ID, a data request node ID, a source address, a destination address, a message type, and a determination processing instruction contained in the transport layer protocol message header field or load, and constructing a transmission processing information set based on the information and transmitting it to the determination module. The transport layer protocol message processing module is also responsible for transmitting 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 for determining whether to perform the corresponding post-processing operation.

[0032] The decision module may be characterized by the computation of a set of decision functions, each of which corresponds to a set of post-processing operations, the value of which is for determining whether to execute the corresponding post-processing operation, although each decision function may use a different functional form. A decision function may correspond to one post-processing operation or to multiple post-processing operations. Without loss of generality, assuming that there are N post-processing operations (N≧1), for the former, the decision function D of the nth post-processing operation may be 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 nIt is used to determine whether to execute the post - processing operation with number n.

[0033] Regarding the latter, the post - processing operations are 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] The post - processing module determines whether to execute post - processing operations such as direct transfer, caching, storage, adjacent transfer, and modified transfer based on the output of the decision module. 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 neighbor node before forwarding, and may forward the original message, or may modify the relevant indication information in the message before forwarding. The neighbor node of the current node is another intermediate transmission node selected based on the distance to the current node, which may be, but is not limited to, the network distance or the geographical distance. The destination address of the neighbor forwarding modification may be written according to the output value of the neighbor 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-and-forward process modifies the destination address in the message before forwarding it, and the modified corresponding address is written with the output value of the selection function G(CNA). The formula for 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 request node network address set corresponding to a data request node ID. The set may be obtained by querying a name resolution system, but is not limited thereto. G(CNA) may be one or more defined according to application and network needs.

[0039] Decision function D n(X) may adopt a two-stage decision-making method, which firstly judges some relatively independent decision items such as the cache / storage needs of data blocks, the cache / storage capacity of the current node, the selection and cache capacity of adjacent nodes, etc., once, and then makes a joint decision based on the judged results. That is, the decision function may be expressed as a joint decision function for a series of decision item judgment 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 the inputs of the decision functions 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 a data block in a message needs to be cached at the current intermediate transmission node, and its output value may be characterized as, 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 cache capability 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 decision function for determining whether the current intermediate transmission node can forward the message to the neighbor 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 forwarded to an adjacent intermediate transmission node and cached. N; it cannot be forwarded to an adjacent intermediate transmission node for caching.

[0044] F S (X) denotes a storage decision function for determining whether the content of a data block in a message needs to be stored at the current intermediate transmission node, and its output value may be characterized as, 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 for determining 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 memorize. N; the current node does not have the ability to remember.

[0046] F MD (X) denotes a destination address decision function for deciding whether to modify the destination address, and its output value may be characterized by, but is not limited to, a Boolean value. 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, but is not limited to, a Boolean value. F MS (X)=Y; correct source address. N; do not modify the source address.

[0048] F i (X) is any other decision function required depending on 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 adjacent 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 transfer operations: JD5(X)=(F MD (X)==Y)∪(F MS (X)==Y), may be also possible.

[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 or not 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 of the intermediate transmission nodes during initialization, the data source service node is assigned a network address NA-s, a data block with 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 in 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., that the current node should always cache, then in the transport layer protocol message header field, the message type field values ​​are set to 0 and 1, where 0 indicates a data request message and 1 indicates a data response message.

[0053] (101) The data requesting 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, which indicates that the message is a data request message, and then reads the destination address. Since the destination address of the message is not the address of the current node, the message is directly forwarded. Here, the message is forwarded to the intermediate transmission node 2 according to the routing mechanism of the network itself to which the message 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, which indicates that the message is a data request message, and then reads the destination address. Since the destination address of the message is not the current node address, the message is directly forwarded. Here, the message is forwarded to the data source service node according to the routing mechanism of the network itself to which the message 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 reads the message type as 0, indicating that the message is a data request message, and then reads the destination address. Here, the destination address NA-s of the message is the network address of the current node, so that the module 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, the module encapsulates the content 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 the message 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 reads that the message type is 1, which indicates that the message is a data response message, 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 caching is required, and the current node does not have any cached or stored data blocks, so F CA (X)=Y, and based on this, a 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 it. 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 reads that the message type is 1, which indicates that the message is a data response message, 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 there is a need to cache, and the current node does not have any cache or storage capacity for the data block, so F CA (X)=Y, and based on this, a 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 indication information in the message before forwarding it. 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 reads that the message type is 1, indicating that it is a data response message, and then 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 content of the data block, and provides the content of the read data block to the upper layer application.

[0063] During 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 transmits a resolution 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. 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 a resolution 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, 1 and data request node 1 according to the routing mechanism of the network to which it belongs, but it may also be transmitted along the route of intermediate transmission nodes 2, 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 data block corresponding to ID-c may be divided into smaller data pieces and encapsulated into multiple packets for transmission, since the size of the data block may be larger than the maximum length of the network layer message. The time of transmission may be, but is not limited to, continuous transmission or transmission according to the request situation of the data request node.

[0068] 6, one data request node 2 is added based on FIG. 5, and the data request node 2 is assigned an identifier ID-r2 that is unique in the entire network and a network address NA-r2. In addition, assuming that the data request node 1 has already obtained a data block identified by ID-c according to the process request in FIG. 5, and the data block has also been cached and registered in the intermediate transmission nodes 3, 1, the specific implementation process of the data request node 2 requesting the data block identified by ID-c is as follows:

[0069] (201) The data requesting node 2 sends a resolution request including the 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, in which 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 and reply to one address, 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 the message type as 0, which indicates that the message is a data request message, and then reads the destination address. 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 reads the message type as 0, which indicates that the message is a data request message, and then reads the destination address. Here, since the destination address of the data request message is the current node address, a data response message is generated 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, the source address is set to NA-t3, and the decision processing instruction field information includes at least a cache instruction. Then, the content of the data block corresponding to ID-c is encapsulated and the message is sent, and the message is forwarded to the intermediate transmission node 1 according to the routing mechanism of the network itself 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 reads that the message type is 1, which indicates that the message is a data response message, 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 Suppose that if (X)=Y, then caching is required, and the current node is now capable of caching. 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, and 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 itself 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 reads that the message type is 1, indicating that it is a data response message, and then 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 content of the data block, and provides the content 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 solution 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 modification or equivalent replacement made to the technical solution of the present invention does not depart from the spirit and scope of the technical solution 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 Value of (X) 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.

Citation Information

Patent Citations

  • Network Node, Endpoint Node and Method of Receiving an Interest Message

    US20190306234A1