IPFS service method fusing ICN network
By integrating the ICN network with the IPFS network through an identifier and address separation architecture, and leveraging the flexible routing and resource management capabilities of the ICN network, the incompatibility between the IPFS network and the ICN network is resolved, thereby improving the quality of IPFS services and data availability.
Patent Information
- Application Number
- CN202410875249.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-07-02
- Publication Date
- 2026-01-06
AI Technical Summary
The existing IPFS network is incompatible with the ICN network, which makes it impossible to effectively integrate in distributed scenarios and make it unsuitable for service scenarios on the existing IPFS network.
The ICN network, which adopts an identifier and address separation architecture, integrates IPFS and ICN networks through the IPFS-ICN gateway. It leverages the flexible routing and resource management capabilities of the ICN network to transform IPFS service request packets and obtain services within the ICN network.
It improves the quality of IPFS services, ensures compatibility with existing IPFS networks, and enhances data availability and node resolution efficiency.
Smart Images

Figure CN121284119A_ABST
Abstract
Description
Technical Field
[0001] This application belongs to the field of computer network technology, and specifically relates to an IPFS service method that integrates ICN network. Background Technology
[0002] The HTTP protocol has had a profound impact on people's internet behavior. However, with the emergence of new network application scenarios such as 5G and IoT, not only has traffic surged, but the distribution of network data has also become more fragmented and decentralized. The browser / server (B / S) and client / server (C / S) architectures followed by HTTP are gradually revealing their drawbacks. IPFS (InterPlanetary File System), as a new P2P distributed data system, implements an open-source, content-addressable peer-to-peer network through a distributed hash table (DHT), providing distributed data storage and delivery. As one of the most watched distributed file systems, IPFS has unique advantages in its application ecosystem and design philosophy, but it still has some performance and availability shortcomings. As an overlay layer of the IP network, the availability of IPFS is limited by the application layer resolution mechanism based on DHT and the end-to-end communication of the IP network.
[0003] Because the content-centric routing and addressing methods of the Information Center Network (ICN) architecture are highly compatible with the IPFS concept, many studies in recent years have focused on how to solve the problems faced by IPFS based on IP networks using the ICN architecture. Onur Ascigil et al. deployed IPFS on top of the Named Data Network (NDN) to improve the utilization of IPFS network link resources and effectively reduce redundant data transmission. However, NDN-based solutions are incompatible with IPFS's flat naming scheme and existing IPFS networks based on the TCP / IP network architecture. Zeng et al. utilized the parsing and caching capabilities of the ICN architecture to significantly improve the data availability and node resolution efficiency of the IPFS network, but they did not clearly define the matching mechanism between the IPFS and ICN identifiers or the processing flow of IPFS services, making it impossible to integrate with existing IPFS networks.
[0004] In summary, existing research on the integration of IPFS and ICN networks is still incomplete, exhibiting incompatibility with existing IPFS networks and being unsuitable for service scenarios of IPFS networks in existing distributed environments. Summary of the Invention
[0005] The purpose of this application is to overcome the shortcomings of the existing technology, in which the ICN network is incompatible with the existing IPFS network.
[0006] To achieve the above objectives, this application proposes an IPFS service method that integrates an ICN network, involving an ICN network with a separation of identity and address architecture, an IPFS network, and an IPFS-ICN gateway;
[0007] The ICN network uses identifiers independent of network addresses to uniquely identify entities within the network, and uses an identifier resolution system to maintain the mapping relationship between identifiers and network addresses;
[0008] The content identifiers in the ICN network follow the same naming rules as those in the IPFS network; the same content has the same identifier in both the IPFS and ICN networks.
[0009] The IPFS-ICN gateway serves as both an ICN network node and an IPFS peer.
[0010] The method includes:
[0011] Step 1) After receiving the IPFS request message, the IPFS-ICN gateway extracts the content identifier from the message and constructs an ICN request message based on the content identifier. The fields carried in the header of the ICN request message include: the node identifier of the IPFS-ICN gateway and the content identifier in the IPFS request message.
[0012] Step 2) The IPFS-ICN gateway saves IPFS session information and maintains the mapping relationship between content identifiers and corresponding IPFS session information;
[0013] Step 3) The IPFS-ICN gateway obtains the corresponding network service from the ICN network through the ICN request message. If successful, proceed to step 4); otherwise, proceed to step 5.
[0014] Step 4) The IPFS-ICN gateway receives the ICN response message, obtains the corresponding IPFS session information based on the content identifier in the message, constructs an IPFS response message, and forwards it to the IPFS request node;
[0015] Step 5) The IPFS-ICN gateway obtains the corresponding IPFS session information based on the content identifier, constructs the original IPFS request message, and forwards it to other IPFS peers through the IPFS network.
[0016] As an improvement to the above method, nodes in the ICN network can be aware of network and resource status and re-address ICN messages as needed or along the route; the identifier resolution system provides identifier registration, deregistration and resolution services.
[0017] As an improvement to the above method, the IPFS-ICN gateway possesses a unique IPFS node identifier and node address; wherein, the IPFS node identifier is generated in a manner that conforms to IPFS requirements; the functions of the IPFS-ICN gateway include:
[0018] It has IPFS node capabilities, supports communication and authentication with other IPFS nodes, and handles service requests from other nodes within the IPFS network;
[0019] It has ICN network node capabilities, supports communication and authentication with other ICN network nodes, and can initiate, receive and forward any ICN message.
[0020] As an improvement to the above method, the types of the content identifier include: data identifier and function identifier;
[0021] The entities within the network include: data, functions, users, network devices, and network services.
[0022] As an improvement to the above method, the IPFS request message types include IPFS data request messages and IPFS computation request messages; wherein...
[0023] The IPFS data request message is used to retrieve data within the IPFS network;
[0024] The IPFS compute request message is used to request the function compute service in the IPFS network;
[0025] The IPFS request message carries the following information: data identifier, function identifier, node identifier, resource requirement description, and request task parameters.
[0026] As an improvement to the above method, the types of ICN request messages include ICN data request messages and ICN calculation request messages; wherein,
[0027] The ICN data request message is used to obtain data within the ICN network. The fields carried in the message header include: the node identifier and data identifier of the IPFS-ICN gateway.
[0028] The ICN Compute Request message is used to request Function Compute service within the ICN network. The fields carried in the message header include: the node identifier of the IPFS-ICN gateway, the data identifier, the function identifier, and the mapping of the IPFS resource requirement description in the ICN.
[0029] As an improvement to the above method, the IPFS session information includes: the IPFS node identifier, IP address and port of the IPFS request node, as well as IPFS communication protocol related configuration information.
[0030] As an improvement to the above method, the network services include: data service requests and computing service requests.
[0031] As an improvement to the above method, the IPFS-ICN gateway determines ICN request failure by: receiving an ICN failure response message or the ICN request message timing out.
[0032] As an improvement to the above method, the content identifiers in the ICN network support naming based on the hash value of the content itself.
[0033] Compared with existing technologies, the advantages of this application are:
[0034] 1. This method enables the IPFS-ICN gateway to intercept IPFS service request packets, utilize the flexible routing and resource management capabilities of the ICN network to complete IPFS service requests, and improve the quality of IPFS services.
[0035] 2. This method can ensure compatibility with the existing IPFS network and ecosystem. Attached Figure Description
[0036] Figure 1 The diagram shows the network architecture of the IPFS service method integrating the ICN network; IPFS Network; IPFS Node; ICN Network; Storage Resource; Computing Resource;
[0037] Figure 2 The diagram shows the service flow after the integration of the ICN network and the IPFS network. Detailed Implementation
[0038] The technical solution of this application will be described in detail below with reference to the accompanying drawings.
[0039] This invention discloses an IPFS service method integrating an ICN network. Based on ICN technology that separates identifiers and addresses, this method joins the IPFS network by deploying an IPFS program on an IPFS-ICN gateway. The IPFS-ICN gateway simultaneously forms the IPFS network with traditional IPFS nodes and the ICN network with other ICN network nodes, acting as both an ICN network node and an IPFS peer. When receiving an IPFS request message, the IPFS-ICN gateway converts it into an ICN request message and obtains the corresponding network service within the ICN network. The ICN service scheduling strategy is based on perceived network and computing resource status, allowing for on-demand, route-based scheduling of ICN messages. This mechanism enables IPFS service requests to leverage ICN network capabilities, transferring requests from the IPFS endpoint to the ICN network for improved network scheduling and resource management. The ICN network can perform routing and addressing based on the existing TCP / IP network and flat identifiers, ensuring compatibility with the existing IPFS network and ecosystem while improving the service quality of existing IPFS.
[0040] The ICN network adopts an architecture that separates identifiers from addresses. It uses identifiers independent of network addresses to uniquely identify entities within the network, and an identifier resolution system maintains the mapping between identifiers and network addresses. The identifier resolution system provides registration, deregistration, and resolution services for identifiers. Entities within the network include, but are not limited to: data, functions, users, network devices, and network services. Network services include, but are not limited to: data service requests and computation service requests. Content identifiers in the ICN network can be named using the hash value of the content itself, consistent with the naming rules for content identifiers in the IPFS network. The same content has the same identifier in both the IPFS and ICN networks. Content identifier types include: data identifiers and function identifiers. Nodes in the ICN network are aware of network and resource status and can re-address ICN packets on demand and along the route.
[0041] ICN request messages include data request messages and compute request messages. ICN data request messages are used to retrieve data within the ICN network, and the header fields include: the IPFS-ICN gateway node identifier and the data identifier. ICN compute request messages are used to request Function Compute services within the ICN network, and the header fields include: the IPFS-ICN gateway node identifier, the data identifier, the function identifier, and the mapping of the IPFS resource requirement description within the ICN.
[0042] The IPFS-ICN gateway acts as both an ICN network node and an IPFS peer, possessing a unique IPFS node identifier and address. The node identifier generation method conforms to IPFS requirements. The functions of the IPFS-ICN gateway include:
[0043] It has IPFS node capabilities, enabling it to communicate and authenticate with other IPFS nodes and handle service requests from other nodes within the IPFS network;
[0044] It possesses the capabilities of an ICN network node, enabling it to communicate and authenticate with other ICN network nodes, and to initiate, receive, and forward any ICN message.
[0045] IPFS request messages include data request messages and compute request messages. Data request messages are used by IPFS nodes to retrieve data within the IPFS network; compute request messages are used by IPFS nodes to request the Function Compute service within the IPFS network. The content carried in an IPFS request message includes, but is not limited to: data identifier, function identifier, node identifier, resource requirement description, and requested task parameters.
[0046] IPFS session information includes, but is not limited to: the IPFS node identifier, IP address, and port of the IPFS request node, and IPFS communication protocol-related configuration information.
[0047] IPFS service methods that integrate with ICN networks include:
[0048] Step 1) After receiving the IPFS request message, the IPFS-ICN gateway extracts the content identifier from the message and constructs an ICN request message based on the content identifier. The fields carried in the header of the ICN request message include: the node identifier of the IPFS-ICN gateway and the content identifier in the IPFS request message.
[0049] Step 2) The IPFS-ICN gateway saves IPFS session information and maintains the mapping relationship between content identifiers and corresponding IPFS session information;
[0050] Step 3) The IPFS-ICN gateway obtains the corresponding network service from the ICN network through the ICN request message. If the acquisition is successful, proceed to step 4); otherwise, proceed to step 5. The IPFS-ICN gateway determines the failure of the ICN request in ways including but not limited to: receiving an ICN failure response message and the ICN request message timeout.
[0051] Step 4) The IPFS-ICN gateway receives the ICN response message, obtains the corresponding IPFS session information based on the content identifier in the message, constructs an IPFS response message, and forwards it to the IPFS request node;
[0052] Step 5) The IPFS-ICN gateway determines that the ICN request has failed, obtains the corresponding IPFS session information based on the content identifier, constructs the original IPFS request message, and forwards it to other IPFS peers through the IPFS network.
[0053] like Figure 1 The diagram shows the network architecture of the IPFS service method that integrates the ICN network. The IPFS-ICN gateway forms the IPFS network together with the IPFS nodes, and also forms the ICN network together with other ICN network nodes. The IPFS-ICN gateway is an ICN network node based on ICN technology.
[0054] like Figure 2 The diagram shown is a service flow chart after the integration of the ICN network and the IPFS network.
[0055] The method for integrating IPFS services with the ICN network includes the following steps:
[0056] S1001: IPFS-ICN gateway ICN_1 receives IPFS request packet IPFS_Packet_1 sent by IPFS peer IPFS_1;
[0057] S1002: Extract the CID field CID_1 of IPFS content from IPFS_Packet_1 using ICN_1;
[0058] S1003: ICN_1 constructs an ICN calculation request message ICN_Packet_1, in which the header of ICN_Packet_1 carries the following fields: CID_1 and the node identifier of ICN_1, ICN_Peer_ID_1;
[0059] S1004: ICN_1 stores the mapping relationship between CID_1 and IPFS session information;
[0060] S1005: ICN_1 obtains the corresponding network services from the ICN network by forwarding ICN_Packet_1 to the ICN network;
[0061] If network services are successfully obtained from the ICN network, proceed to S1006; otherwise, proceed to S1008.
[0062] S1006: ICN_1 receives the ICN response message ICN_Packet_2 and obtains the IPFS session information based on the CID_1 contained in the message;
[0063] S1007: ICN_1 constructs an IPFS response message IPFS_Packet_2 and forwards it to the original IPFS request node IPFS_1; service terminates.
[0064] S1008: ICN_1 obtains IPFS session information based on CID_1;
[0065] S1009: ICN_1 constructs the original IPFS request packet IPFS_Packet_1;
[0066] S1010: ICN_1 forwards IPFS_Packet_1 to other IPFS peers via the IPFS network; service terminated.
[0067] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of this application and are not intended to limit it. Although this application has been described in detail with reference to the embodiments, those skilled in the art should understand that modifications or equivalent substitutions to the technical solutions of this application do not depart from the spirit and scope of the technical solutions of this application, and should all be covered within the scope of the claims of this application.
Claims
1. An IPFS service method of a converged ICN network, involving an ICN network of an identity and address separation architecture, an IPFS network, and an IPFS-ICN gateway; The ICN network uses an identifier irrelevant to a network address to uniquely identify an entity within the network, and uses an identifier resolution system to maintain a mapping relationship between the identifier and the network address; The content identifier in the ICN network is consistent with the naming rule of the content identifier in the IPFS network; the same content has the same identifier in the IPFS and the ICN network; The IPFS-ICN gateway simultaneously serves as an ICN network node and an IPFS peer; The method comprises: Step 1) After receiving an IPFS request message, the IPFS-ICN gateway extracts a content identifier in the message, and constructs an ICN request message based on the content identifier, wherein the fields carried in the header of the ICN request message include a node identifier of the IPFS-ICN gateway and the content identifier in the IPFS request message; Step 2) The IPFS-ICN gateway saves IPFS session information, and maintains a mapping relationship between the content identifier and the corresponding IPFS session information; Step 3) The IPFS-ICN gateway obtains corresponding network services from the ICN network through the ICN request message, and if the obtaining is successful, the process proceeds to step 4), otherwise, the process proceeds to step 5); Step 4) The IPFS-ICN gateway receives an ICN response message, obtains corresponding IPFS session information according to the content identifier in the message, constructs an IPFS response message, and forwards the message to an IPFS request node; Step 5) The IPFS-ICN gateway obtains corresponding IPFS session information according to the content identifier, constructs an original IPFS request message, and forwards the message to other IPFS peers through the IPFS network. 2.The IPFS service method of a converged ICN network according to claim 1, wherein, The nodes in the ICN network can perceive network and resource states, and readdress ICN messages on demand or on the fly; the identifier resolution system provides registration, deregistration, and resolution services for the identifiers. 3.The IPFS service method of a converged ICN network according to claim 1, wherein, The IPFS-ICN gateway has a unique IPFS node identifier and a node address; wherein the IPFS node identifier is generated in a manner consistent with the requirements of the IPFS; the IPFS-ICN gateway has the following functions: It has IPFS node capabilities, supports communication and identity verification with other IPFS nodes, and processes service requests from other nodes in the IPFS network; It has ICN network node capabilities, supports communication and identity verification with other ICN network nodes, and can initiate, receive, and forward any ICN message.
4. The IPFS service method of a converged ICN network according to claim 1, characterized in that: The type of the content identifier includes a data identifier and a function identifier; The entities within the network include data, functions, users, network devices, and network services. 5.The IPFS service method of a converged ICN network according to claim 1, wherein, The type of the IPFS request message includes an IPFS data request message and an IPFS computing request message; wherein The IPFS data request message is used to obtain data in the IPFS network; The IPFS computing request message is used for requesting a function computing service in an IPFS network. The content carried in the IPFS request message includes a data identifier, a function identifier, a node identifier, a resource requirement description and a request task parameter. 6.The IPFS service method of a converged ICN network according to claim 1, wherein, The type of the ICN request message includes an ICN data request message and an ICN computing request message; wherein, The ICN data request message is used for obtaining data in an ICN network, and the fields carried in the message header include a node identifier of an IPFS-ICN gateway and a data identifier; The ICN computing request message is used for requesting a function computing service in an ICN network, and the fields carried in the message header include a node identifier of an IPFS-ICN gateway, a data identifier, a function identifier and a mapping of an IPFS resource requirement description in the ICN. 7.The IPFS service method of a converged ICN network according to claim 1, wherein, The IPFS session information includes an IPFS node identifier, an IP address and a port of an IPFS request node and IPFS communication protocol related configuration information. 8.The IPFS service method of a converged ICN network according to claim 1, wherein, The network service includes a data service request and a computing service request. 9.The IPFS service method of a converged ICN network according to claim 1, wherein, The manner in which the IPFS-ICN gateway judges ICN request failure includes receiving an ICN failure response message or ICN request message timeout. 10.The IPFS service method of a converged ICN network according to claim 1, wherein, The content identifier in the ICN network supports naming in the form of a content itself hash value.
