CN113660162A - Semi-centralized routing method and system for sensing adjacent cache - Google Patents

Semi-centralized routing method and system for sensing adjacent cache Download PDF

Info

Publication number
CN113660162A
CN113660162A CN202110909109.7A CN202110909109A CN113660162A CN 113660162 A CN113660162 A CN 113660162A CN 202110909109 A CN202110909109 A CN 202110909109A CN 113660162 A CN113660162 A CN 113660162A
Authority
CN
China
Prior art keywords
content
node
cache
packet
requesting
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110909109.7A
Other languages
Chinese (zh)
Other versions
CN113660162B (en
Inventor
孙军涛
姜静
郑凌
杜剑波
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shaanxi Wukong Cloud Network Technology Co ltd
Original Assignee
Shaanxi Wukongyun Information Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shaanxi Wukongyun Information Technology Co ltd filed Critical Shaanxi Wukongyun Information Technology Co ltd
Priority to CN202110909109.7A priority Critical patent/CN113660162B/en
Publication of CN113660162A publication Critical patent/CN113660162A/en
Application granted granted Critical
Publication of CN113660162B publication Critical patent/CN113660162B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/12Shortest path evaluation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention relates to a near cache sensing semi-centralized routing method, which mainly solves the problem that a central control node in the prior art is high in load. According to the invention, the load of the directory server is identified, and data is transmitted by adopting different methods, so that the purposes of reducing the load of the directory server and improving the user experience are achieved. The invention also relates to a near cache perception semi-centralized routing system which comprises a plurality of terminal nodes, a plurality of routers and a directory server, wherein the terminal nodes can directly carry out information communication and information transmission with the directory server, the terminal nodes can also carry out information communication and information transmission with the directory server through the routers, and the routers can also carry out information transmission.

Description

Semi-centralized routing method and system for sensing adjacent cache
Technical Field
The invention relates to a network technology, in particular to a near cache sensing semi-centralized routing method and a near cache sensing semi-centralized routing system.
Background
Modern internet is evolving toward high speed and broadband and is developing into an integrated service transmission network combining a plurality of services such as data, voice, image, and real-time multimedia information. According to network index statistics and prediction issued by Cisco, the data traffic of the global IP network reaches the level of 396EB per month in average by 2022, which is improved by more than 2 times compared with 2017.
Among massive network services, network audio and video services with high real-time requirements gradually become mainstream of internet applications, and are expected to account for 82% of total data traffic in 2022. The need for mass replication and dissemination of multimedia content has led to the popularity and commercialization of Content Delivery Networks (CDNs). A typical content distribution network requires the deployment of multiple content servers at different geographic locations to build a distributed caching system. By utilizing the distributed cache system, the user can obtain the content from the edge node nearby, the problem of network congestion caused by the traditional IP network centralized service is avoided, and the service obtaining speed is improved. And according to the dynamic content request of the user, the content caching and transmission strategy is dynamically adjusted, so that the network traffic load is balanced, and the user experience is improved.
The core idea of the CDN network is to forward a user request to a cache node at the edge of the network in a DNS redirection manner, thereby reducing access latency. A special directory server is required in the conventional CDN network, and is used for processing a content request and content redirection of a user, and is still a centralized network service to some extent. Centralized directory servers tend to be a performance bottleneck, and failure or overloading of a central node can cause degradation in overall network performance. Therefore, when the central node fails, the edge node should have certain ad hoc network routing capability and capability of sensing the content of the adjacent cache, so that the pressure of the central node is relieved, and the network performance is improved.
Existing ad hoc network routing methods are mainly classified into two types:
firstly, a cache node issues an announcement of the existing cache content to a peripheral node, and a content request node establishes a routing path according to the announcement content;
secondly, the content request node actively detects the cached content from the peripheral nodes, thereby establishing content routing.
The common characteristic of the two schemes is that the cache node needs to transmit all cache content information owned by the cache node to peripheral nodes, which causes huge network bandwidth overhead. The problem to be solved at present is how to simplify the transmission of ad hoc network routing information and reduce network overhead under the CDN architecture.
Disclosure of Invention
The invention provides a near cache sensing semi-centralized routing method and a system thereof, aiming at solving the problem that the transmission of routing information of a traditional ad hoc network can cause huge network bandwidth overhead.
A proximity cache aware semi-centralized routing method is characterized in that:
step 1, a terminal node requesting content sends a content request packet CEN _ REQ to a directory server, where the content request packet CEN _ REQ at least includes the following information: the method comprises the steps of setting a retransmission time T simultaneously according to a packet type, a name of a request content, a terminal node address of the request content, an address of a directory server and a timestamp;
step 2, after receiving the content request packet CEN _ REQ, the directory server determines which cache nodes in the network cache the content requested by the content request packet CEN _ REQ by searching a routing information table maintained by the directory server, and positions the content request to a cache node which has a light load and is close to the cache node by using a weighted minimum connection algorithm, wherein the cache node is called a destination node;
the directory server then sends a content reply packet CEN _ REP to the terminal node that requested the content, wherein the content reply packet CEN _ REP includes at least the following information: the type of the package, the name of the requested content, the address of the terminal node requesting the content, the address of the directory server, the address of the content provider, and a timestamp;
step 3.1, if the terminal node requesting the content receives the content response packet CEN _ REP returned by the directory server within the retransmission time T, establishing a path from the terminal node requesting the content to the destination node according to the information contained in the content response packet CEN _ REP, and returning the requested content to the terminal node requesting the content through the path;
and 3.2, if the terminal node requesting the content does not receive the response of the directory server within the retransmission time T, starting a neighboring cache sensing routing mechanism, actively detecting the cache copy of the neighboring node within a certain range by the terminal node requesting the content, finding the neighboring cache content according to a distributed routing strategy, establishing a path from the terminal node requesting the content to a destination node according to the cache copy information actively detected by the terminal node requesting the content, and returning the requested content to the terminal node requesting the content through the path.
Further, in step 1, the terminal node that needs to request the content sends a content request packet CEN _ REQ to the central directory server through the router;
in step 2, the directory server then sends a content reply packet CEN _ REP to the terminal node requesting the content through the router;
in step 3.1, if the terminal node requesting the content receives the content response packet CEN _ REP returned by the directory server via the router within the retransmission time T, the terminal node requesting the content establishes a path from the terminal node requesting the content to the destination node via the router according to the information contained in the content response packet CEN _ REP;
in step 3.2, if the terminal node requesting the content does not receive the response of the directory server within the retransmission time T, the neighboring cache aware routing mechanism is started, and the terminal node requesting the content actively detects the cache copy of the neighboring node within a certain range through the router.
Further, the step 2 is specifically as follows:
step 2.1, the directory server receives the content request packet CEN _ REQ;
step 2.2, the directory server has all cache nodes in the network and a routing information table of the corresponding relation of cache contents, and the routing information table is updated periodically; the directory server checks whether the content name in the content request packet CEN _ REQ is stored in the routing information table, if so, step 2.3 is executed; otherwise, discarding the request packet CEN _ REQ;
step 2.3, if only one cache node stores the request content, the cache node is used as a content provider, a content response packet CEN _ REP is constructed by utilizing the address of the cache node, the current time and other information, wherein the address of the content provider is the searched cache node address, and the step 2.5 is carried out; otherwise, turning to step 2.4;
step 2.4, if a plurality of cache nodes store the requested content, selecting the cache node with lighter load and closer distance as a content provider by using a weighted minimum connection method; specifically, M cache nodes are provided to store requested content, and the numbers thereof are 1, 2, …, and M, respectively; let ADDRiIndicating the address of cache node i, LiThe number of connections currently allocated to the cache node i; setting the address of the source request node as ADDR _ SRC; let the weight of the cache node i be Wi=Di×(Li+1), wherein DiThe distance between the terminal node requesting the content and the cache node i is defined as the result of XOR operation between the address of the terminal node requesting the content and the address of the cache node i, i.e. Di=ADDR_SRC xor ADDRi(ii) a W is to beiSorting from small to large, selecting the node with the minimum weight as a content provider, constructing a content response packet CEN _ REP by using the information of the node address, the current time and the like, and turning to the step 2.5;
and 2.5, returning the content response packet CEN _ REP to the terminal node requesting the content, and ending the operation.
Further, the mechanism for starting the neighbor cache aware routing specifically includes:
step 3.2.1, each cache node maintains a neighboring cache routing information table, and the routing information table stores the mapping relation between cache contents and cache node addresses and forwarding end network interface numbers; the cache node starts the adjacent cache detection;
step 3.2.2, the terminal node requesting the content searches a local adjacent cache routing information table and judges whether a path to the requested content exists or not; if yes, a path from the terminal node requesting the content to the destination node is established according to the address of the destination node, and the step 3.2.12 is switched to; otherwise, turning to step 3.2.3;
step 3.2.3, the terminal node requesting the content sends a content detection packet DIST _ REQ to all the cache nodes near the terminal node through the router directly connected, wherein the content detection packet DIST _ REQ at least comprises the following information: the method comprises the steps of packet type, the name of requested content, the address of a terminal node of the requested content, broadcast Depth Depth, random number Nonce and timestamp;
step 3.2.4, the cache node receives the content detection packet DIST _ REQ, and firstly records the information of the router network interface number, the terminal node address requesting the content, the content name and the like which come from the content detection packet so as to return the content response packet; turning to step 3.2.5;
step 3.2.5, the cache node compares whether its Nonce value is equal to the Nonce value of the content detection packet recorded before; if the two are equal, it indicates that there is a broadcast-back loop, then discard the probe packet DIST _ REQ, go to step 3.2.12; otherwise, turning to the step 3.2.6;
step 3.2.6, searching the cache directory of the cache node, and judging whether to store the content name requested by the content detection packet; if the content exists, the searched cache node is used as a content provider, and a content response packet DIST _ REP is constructed; the content response packet DIST _ REP contains at least the following information: the packet type, the name of the requested content, the address of the requesting terminal node, the address of the content provider, and the current timestamp; returning a content response packet DIST _ REP to the terminal node requesting the content, turning to step 3.2.9; otherwise, turning to step 3.2.7;
step 3.2.7, searching a neighboring cache routing information table, and judging whether the name of the requested content exists; if so, constructing a content detection request packet DIST _ REP according to the search result and returning to the terminal node requesting the content, and turning to step 3.2.9; otherwise, go to step 3.2.8;
step 3.2.8, by searching the adjacent cache routing information table, if the requested content name is not found, then judging whether the broadcast Depth is greater than 1; if the Depth field is less than or equal to 1, it indicates that the broadcast hop count has reached the preset value, then the probe packet is discarded, and go to step 3.2.12; otherwise, subtracting 1 from the Depth field, and broadcasting the request packet to the network interfaces of all the other cache nodes except the network interface of the cache node where the detection packet arrives;
step 3.2.9, after receiving the content reply packet DIST _ REP, the along-the-way cache node extracts the relevant information and updates the adjacent cache route information table of the along-the-way cache node; if a plurality of response packets with the same content name are received, selecting a cache node with lower time delay as a content provider to update an adjacent cache routing table according to timestamp information carried by the response packets;
step 3.2.10, after the terminal node requesting content receives the content response packet DIST _ REP, the terminal node extracts the relevant information and updates the adjacent cache route information table of the terminal node requesting content in the same way as step 3.2.9;
step 3.2.11, according to the information contained in the response packet, establishing the path from the terminal node requesting the content to the destination node;
at step 3.2.12, the entries in the neighboring cache routing information table of each cache node are time-sensitive, and if the time for an entry to exist exceeds the update interval, it is deleted as a stale entry.
Further, in the content request packet CEN _ REQ, specifically, Type is a packet Type, and a value thereof is set to 1, which indicates a CEN _ REQ packet; seq is a serial number, is generated by the cache node generating the request packet, and is used together with the cache node address to mark one request packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; ServerAddr is the directory server address; TimeStamp is the current TimeStamp.
Further, in the content probe request packet DIST _ REQ, Type is a packet Type, and a value of 3 indicates a DIST _ REQ packet; seq is a serial number, is generated by the cache node generating the request packet, and is used together with the cache node address to mark one request packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; depth is the broadcast Depth; nonce is a random number generated when the packet is generated; TimeStamp is the current TimeStamp;
in the content detection response packet DIST _ REP, Type is a packet Type, and the value of Type is 4, which represents a DIST _ REP packet; seq is a serial number, is generated by the cache node which generates the response packet, and is used together with the cache node address to mark a request packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; ContentProviderAddr is the address of the content provider; the Nonce value is consistent with the Nonce value of the received request packet; TimeStamp is the current TimeStamp.
Further, in the content response packet CEN _ REP, setting the value to 2 indicates a CEN _ REP packet; seq is a serial number, generated by the directory server, for marking a response packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; ServerAddr is the directory server address; ContentProviderAddr is the address of the content provider; TimeStamp is the current TimeStamp.
A proximity cache aware semi-centralized routing system, characterized by: the system comprises a plurality of terminal nodes, a plurality of routers and a directory server;
the terminal node is connected with the directory server through a router; the terminal nodes and the routers transmit information directly, the terminal nodes transmit information through the routers and the directory server, and the routers connected with each other transmit information.
Furthermore, the terminal node and the router both have a content caching function, the terminal node and the router form a caching node, the directory server has a complete list of caching contents and caching node addresses and a corresponding relationship between all caching nodes in the network and the caching contents thereof, and stores the information as a routing information table, and the routing information is updated and maintained regularly.
The beneficial effects are as follows:
(1) the invention has a distributed content caching structure, realizes the functions of centralized and distributed content caching and routing, and has the advantages of reducing network redundant flow and improving network performance.
(2) The invention has a distributed content caching structure, realizes the caching function of the recently requested content, and has the advantage of reducing the network access delay.
(3) The invention has a structure of a content detection request packet, the structure realizes the detection function of the cache content in a certain range, and can find the cache content of the adjacent node to be beneficial to realizing the routing decision of the shortest path.
(4) The invention has the information table of the adjacent cache routing, the information table stores the content which is not cached by the current node but is cached by the adjacent node, realizes the functions of addressing and routing the cache content, and has the advantages of reducing the redundant flow of the network and improving the network performance.
Drawings
FIG. 1 is a system design diagram of one embodiment of the present invention;
FIG. 2 is a diagram illustrating a structure of a content request packet CEN _ REQ according to the present invention;
FIG. 3 is a schematic diagram of a CEN _ REP packet according to the present invention;
fig. 4 is a schematic diagram illustrating a structure of a content probe request packet DIST _ REQ packet according to the present invention;
FIG. 5 is a diagram illustrating a structure of a DIST _ REP packet according to the present invention;
FIG. 6 is a flow chart of a directory server weighted minimum linking method in the method of the present invention.
FIG. 7 is a flow chart of the proximity cache detection mechanism of the present invention.
The reference numerals are specifically as follows:
1. directory server, 2 router, 3 terminal node.
Detailed Description
The invention is described in further detail below with reference to the figures and the detailed description.
As shown in fig. 1, a proximity cache aware semi-centralized routing system includes a plurality of end nodes 3, a plurality of routers 2, and a directory server 1.
The terminal node 3 and the router 2 both have a content caching function, and the directory server 1 has a complete list of cache contents and cache node addresses and a corresponding relationship between all cache nodes in the network and cache contents thereof, and stores the cache contents and cache node addresses as a routing information table, and the routing information is periodically updated and maintained.
The caching nodes include end nodes 3 and routers 2. Different terminal nodes 3 transmit information instructions through the router 21, the terminal nodes 3 can directly transmit the information instructions to each other with the directory server 1, and the adjacent routers 2 can directly transmit the information instructions to each other. The routers 2 are arranged through intelligent networking, and the transmission efficiency among the routers 2 is improved.
The neighboring node means: and the cache nodes are directly and indirectly connected with the terminal node 3 or the router 2, but the hop count of the cache node connection is limited, and if the Depth field of the cache node is less than or equal to 1, the hop count reaches the upper limit.
A semi-centralized routing method for proximity cache sensing is mainly applied to a distributed cache system, and comprises the following specific steps:
as shown in fig. 1, the terminal node 3 includes a terminal node T1, a terminal node T2, a terminal node T3, a terminal node T4, a terminal node T5 and a terminal node T6. Suppose that end node T1 needs to request a content named File 1. In step 1, the terminal node T1 that needs to request content sends a content request packet CEN _ REQ to the central directory server 1, where the transmission path is shown as a solid line in fig. 1, where the content request packet CEN _ REQ at least includes the following information: the packet type, the name of the requested content, the address of the requesting end node 3, the address of the directory server 1, a timestamp, while the end node T1 sets a retransmission time T.
And 2, after receiving the content request packet CEN _ REQ, the directory server 1 determines which cache nodes in the network cache the content requested by the request packet CEN _ REQ by searching a routing information table maintained by the directory server, and positions the content request to a cache node which has a light load and is close to the cache node, namely a destination node, by using a weighted minimum connection algorithm. Assuming the terminal node T6 as the content provider, the directory server 1 then sends a reply packet CEN _ REP to the terminal node T1, which includes at least the following information: packet type, name of requested content, requesting end node 3 address, directory server 1 address, content provider address, timestamp.
Step 3.1, if the requesting end node T1 receives the response packet CEN _ REP returned by the directory server 1 within the retransmission time T, then according to the information contained in the response packet, a path from the requesting end node T1 to the destination node is established, that is, the end node T1 will request the content from the end node T6 through the router 2, and the requested content is transmitted from the end node T6 to the end node T1 through the router 2.
Step 3.2, if the request terminal node T1 does not receive the response from the directory server 1 within the retransmission time T, the proximity cache aware routing mechanism is started, and the terminal node T1 will actively detect the cache copy of the proximity node within a certain range through the router 2, and discover the proximity cache content according to the distributed routing policy. As shown by the dotted line in fig. 1, the end node T1 broadcasts the content probe request packet DIST _ REQ to the peripheral cache nodes via the router 2. While the terminal node T3 has the required content File1, the terminal node T3 replies a content probe response packet DIST _ REP to the terminal node T1 through the router 2. After the end node T1 receives the response packet, it establishes a path from the end node T1 to the destination node according to the information contained in the response packet, i.e., the end node T1 requests the router 2 for content from the end node T3. As shown in fig. 2, in the content request packet CEN _ REQ, Type is packet Type, and a value thereof is set to 1, indicating a CEN _ REQ packet; seq is a sequence number, generated by the node that generated the request packet, used with the node address to mark a request packet. ContentName is the requested content name; SourceAddr is the address of the requesting node; ServerAddr is the directory server 1 address; TimeStamp is the current TimeStamp.
As shown in fig. 3, in the content reply packet CEN _ REP, setting the value thereof to 2 indicates a CEN _ REP packet; seq is a serial number, generated by the directory server 1, for marking a response packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; ServerAddr is the directory server 1 address; ContentProviderAddr is the address of the content provider; TimeStamp is the current TimeStamp.
As shown in fig. 4, in the content probe request packet DIST _ REQ, Type is a packet Type, and a value of 3 indicates a DIST _ REQ packet; seq is a serial number, is generated by the cache node generating the request packet, and is used together with the cache node address to mark one request packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; depth is the broadcast Depth; nonce is a random number generated when the packet is generated; TimeStamp is the current TimeStamp.
As shown in fig. 5, in the content probe response packet DIST _ REP, Type is a packet Type, and a value of 4 indicates a DIST _ REP packet; seq is a serial number, is generated by the cache node which generates the response packet, and is used together with the cache node address to mark a request packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; ContentProviderAddr is the address of the content provider; the Nonce value is consistent with the Nonce value of the received request packet; TimeStamp is the current TimeStamp.
As shown in fig. 6, the step 2 is specifically as follows:
step 2.1, the directory server 1 receives the content request packet CEN _ REQ;
and 2.2, the directory server 1 has a routing information table of the corresponding relation between all cache nodes in the network and cache contents thereof, and the routing information table is updated periodically. The directory server 1 checks whether the content name in the CEN _ REQ is stored in the routing information table, and if so, performs step 2.3; otherwise, the request packet CEN _ REQ is discarded;
step 2.3, if only one cache node stores the request content, the cache node is used as a content provider, a content response packet CEN _ REP is constructed by utilizing the address of the cache node, the current time and other information, wherein the address of the content provider is the searched cache node address, and the step 2.5 is carried out; otherwise, turning to step 2.4;
and 2.4, if a plurality of cache nodes store the requested content, selecting the cache node with lighter load and closer distance as a content provider by using a weighted minimum connection method. Specifically, M cache nodes are provided to store requested content, and the numbers thereof are 1, 2, …, and M, respectively; let ADDRiIndicating the address of cache node i, LiThe number of connections currently allocated to the cache node i; setting the address of the source request node as ADDR _ SRC; let the weight of the cache node i be Wi=Di×(Li+1), wherein DiFor terminal nodes 3 toThe distance between the cache nodes i is defined as the result of the XOR operation between the address of the terminal node 3 and the address of the cache node i, i.e. Di=ADDR_SRC xor ADDRi. W is to beiAnd (5) sorting from small to large, selecting the node with the minimum weight value as a content provider, constructing a content response packet CEN _ REP by using the information of the node address, the current time and the like, and turning to the step 2.5.
And 2.5, returning the content response packet CEN _ REP to the terminal node 3, and ending the operation.
Referring to fig. 7, said step 3.2 further comprises:
and 3.2.1, each cache node maintains an adjacent cache routing information table, and the routing table stores the mapping relation between cache contents and cache node addresses and forwarding port numbers. The cache node starts the adjacent cache detection;
step 3.2.2, the terminal node 3 searches a local adjacent cache routing information table and judges whether a path to the requested content exists or not; if yes, a path from the request terminal node 3 to the destination node is established according to the address of the destination node, and the step 3.2.12 is switched to; otherwise, turning to step 3.2.3;
step 3.2.3, the terminal node 3 sends a content detection packet DIST _ REQ to all cache nodes near itself through the router 2 directly connected, where the content detection packet DIST _ REQ at least includes the following information: the type of the packet, the name of the requested content, the address of the requesting terminal node 3, the broadcast Depth Depth, the random number Nonce and the timestamp;
step 3.2.4, the cache node receives the content detection packet DIST _ REQ, and firstly records the information of the network interface number of the router 2, the address of the terminal node 3, the content name and the like which the content detection packet arrives, so as to facilitate the return of the content response packet; turning to step 3.2.5;
step 3.2.5 the cache node compares whether its Nonce value is equal to the Nonce value of the previously recorded content probe packet. If the two are equal, it indicates that there is a broadcast-back loop, then discard the probe packet DIST _ REQ, go to step 3.2.12; otherwise, go to step 3.2.6.
And 3.2.6, searching the cache directory of the cache node and judging whether to store the content name requested by the content detection packet. If the content exists, the searched cache node is used as a content provider, and a content response packet DIST _ REP is constructed. The content response packet DIST _ REP contains at least the following information: packet type, name of the requested content, requesting end node 3 address, content provider address, current timestamp. Returning the content response packet DIST _ REP to the terminal node 3, going to step 3.2.9; otherwise, turning to step 3.2.7;
step 3.2.7, searching a neighboring cache routing information table, and judging whether the name of the requested content exists; if so, constructing a content detection request packet DIST _ REP according to the search result and returning to the terminal node 3, and turning to step 3.2.9; otherwise, go to step 3.2.8;
in step 3.2.8, if the requested content name is not found, it is determined whether the broadcast Depth is greater than 1. If the Depth field is less than or equal to 1, it indicates that the broadcast hop count has reached the preset value, then the probe packet is discarded, and go to step 3.2.12; otherwise, subtracting 1 from the Depth field, and broadcasting the request packet to the network interfaces of all the other cache nodes except the network interface of the cache node where the detection packet arrives;
step 3.2.9, after receiving the content reply packet DIST _ REP, the nodes along the way extract the relevant information, and update the adjacent cache routing information table of the nodes along the way; if a plurality of response packets with the same content name are received, selecting a node with lower time delay as a content provider to update the adjacent cache routing table according to the timestamp information carried by the response packets;
step 3.2.10, after the source request terminal node 3 receives the content response packet DIST _ REP, it extracts the relevant information and updates the adjacent cache route information table of the terminal node 3 in the same way as step 3.2.9;
step 3.2.11, according to the information contained in the response packet, a path from the requesting terminal node 3 to the destination node is established.
At step 3.2.12, the entries in the neighboring cache routing information table of each node are time-sensitive, and if the time for which an entry exists exceeds the update interval, it is deleted as a stale entry.

Claims (9)

1. A method for proximity cache aware semi-centralized routing, comprising:
step 1, a terminal node (3) requesting content sends a content request packet CEN _ REQ to a directory server (1), wherein the content request packet CEN _ REQ at least comprises the following information: the method comprises the steps of setting a retransmission time T simultaneously according to the packet type, the name of the requested content, the address of a terminal node (3) requesting the content, the address of a directory server (1) and a timestamp;
step 2, after receiving the content request packet CEN _ REQ, the directory server (1) determines which cache nodes in the network cache the content requested by the content request packet CEN _ REQ by searching a routing information table maintained by the directory server, and positions the content request to a cache node which has a lighter load and is closer to the network by using a weighted minimum connection algorithm, wherein the cache node is called a destination node;
the directory server (1) then sends a content reply packet CEN _ REP to the terminal node (3) requesting the content, wherein the content reply packet CEN _ REP comprises at least the following information: packet type, name of the requested content, address of the terminal node (3) requesting the content, directory server (1) address, content provider address, timestamp;
step 3.1, if the terminal node (3) requesting the content receives the content response packet CEN _ REP returned by the directory server (1) within the retransmission time T, establishing a path from the terminal node (3) requesting the content to the destination node according to the information contained in the content response packet CEN _ REP, and returning the requested content to the terminal node (3) requesting the content through the path;
and 3.2, if the terminal node (3) requesting the content does not receive the response of the directory server (1) within the retransmission time T, starting a proximity cache sensing routing mechanism, actively detecting the cache copy of the proximity node within a certain range by the terminal node (3) requesting the content, discovering the proximity cache content according to a distributed routing strategy, establishing a path from the terminal node (3) requesting the content to a destination node according to the cache copy information actively detected by the terminal node (3) requesting the content, and returning the requested content to the terminal node (3) requesting the content through the path.
2. The method of claim 1, wherein the method comprises:
in the step 1, a terminal node (3) needing to request content sends a content request packet CEN _ REQ to a central directory server (1) through a router (2);
in step 2, the directory server (1) then sends a content reply packet CEN _ REP to the terminal node (3) requesting the content through the router (2);
in step 3.1, if the terminal node (3) requesting the content receives the content response packet CEN _ REP returned by the directory server (1) via the router (2) within the retransmission time T, the router (2) establishes a path from the terminal node (3) requesting the content to the destination node according to the information contained in the content response packet CEN _ REP;
in step 3.2, if the terminal node (3) requesting the content does not receive the response of the directory server (1) within the retransmission time T, the neighboring cache aware routing mechanism is started, and the terminal node (3) requesting the content actively probes the cache copy of the neighboring node within a certain range through the router (2).
3. The method of claim 2, wherein the method comprises:
the step 2 is specifically as follows:
step 2.1, the directory server (1) receives the content request packet CEN _ REQ;
step 2.2, the directory server (1) has all cache nodes in the network and a routing information table of the corresponding relation of cache contents, and the routing information table is updated periodically; the directory server (1) checks whether the content name in the content request packet CEN _ REQ is stored in the routing information table, and if so, executes step 2.3; otherwise, discarding the request packet CEN _ REQ;
step 2.3, if only one cache node stores the request content, the cache node is used as a content provider, a content response packet CEN _ REP is constructed by utilizing the address of the cache node, the current time and other information, wherein the address of the content provider is the searched cache node address, and the step 2.5 is carried out; otherwise, turning to step 2.4;
step 2.4, if a plurality of cache nodes store the requested content, selecting the cache node with lighter load and closer distance as a content provider by using a weighted minimum connection method; specifically, M cache nodes are provided to store requested content, and the numbers thereof are 1, 2, …, and M, respectively; let ADDRiIndicating the address of cache node i, LiThe number of connections currently allocated to the cache node i; setting the address of the source request node as ADDR _ SRC; let the weight of the cache node i be Wi=Di×(Li+1), wherein DiThe distance between the terminal node (3) requesting the content and the cache node i is defined as the result of the XOR operation between the address of the terminal node (3) requesting the content and the address of the cache node i, namely Di=ADDR_SRC xor ADDRi(ii) a W is to beiSorting from small to large, selecting the node with the minimum weight as a content provider, constructing a content response packet CEN _ REP by using the information of the node address, the current time and the like, and turning to the step 2.5;
and 2.5, returning the content response packet CEN _ REP to the terminal node (3) requesting the content, and ending the operation.
4. The method of claim 2, wherein the method comprises:
the mechanism for starting the neighbor cache aware routing is specifically as follows:
step 3.2.1, each cache node maintains a neighboring cache routing information table, and the routing information table stores the mapping relation between cache contents and the address of the cache node and the network interface number of the forwarding end; the cache node starts the adjacent cache detection;
step 3.2.2, the terminal node (3) requesting the content searches a local adjacent cache routing information table and judges whether a path to the requested content exists or not; if yes, establishing a path from the terminal node (3) requesting the content to the destination node according to the address of the destination node, and turning to step 3.2.12; otherwise, turning to step 3.2.3;
step 3.2.3, the terminal node (3) requesting the content sends a content detection packet DIST _ REQ to all the cache nodes near itself through the router (2) directly connected, wherein the content detection packet DIST _ REQ at least includes the following information: the type of the packet, the name of the requested content, the address of the terminal node (3) requesting the content, the broadcast Depth, the random number Nonce, and the timestamp;
step 3.2.4, the cache node receives the content detection packet DIST _ REQ, and firstly records the information of the interface number of the router (2) where the content detection packet arrives, the address of the terminal node (3) requesting the content, the content name and the like so as to return the content response packet; turning to step 3.2.5;
step 3.2.5, the cache node compares whether its Nonce value is equal to the Nonce value of the content detection packet recorded before; if the two are equal, it indicates that there is a broadcast-back loop, then discard the probe packet DIST _ REQ, go to step 3.2.12; otherwise, turning to the step 3.2.6;
step 3.2.6, searching a cache directory of the cache node, and judging whether to store the content name requested by the content detection packet; if the content exists, the searched cache node is used as a content provider, and a content response packet DIST _ REP is constructed; the content response packet DIST _ REP contains at least the following information: packet type, name of the requested content, address of the requesting terminal node (3), address of the content provider, current timestamp; returning a content response packet DIST _ REP to the terminal node (3) requesting the content, turning to step 3.2.9; if not, turning to step 3.2.7;
step 3.2.7, searching a neighboring cache routing information table, and judging whether the name of the requested content exists; if so, constructing a content detection request packet DIST _ REP according to the search result and returning to the terminal node (3) requesting the content, and turning to step 3.2.9; otherwise, go to step 3.2.8;
step 3.2.8, by searching the adjacent cache routing information table, if the requested content name is not found, then judging whether the broadcast Depth is greater than 1; if the Depth field is less than or equal to 1, it indicates that the broadcast hop count has reached the preset value, then the probe packet is discarded, and go to step 3.2.12; otherwise, subtracting 1 from the Depth field, and broadcasting the request packet to the network interfaces of all the cache nodes except the network interface of the cache node to which the detection packet arrives;
step 3.2.9, after receiving the content reply packet DIST _ REP, the along-the-way cache node extracts the relevant information and updates the adjacent cache route information table of the along-the-way cache node; if a plurality of response packets with the same content name are received, selecting a cache node with lower time delay as a content provider to update an adjacent cache routing table according to timestamp information carried by the response packets;
step 3.2.10, after the terminal node (3) requesting content receives the content response packet DIST _ REP, the terminal node extracts the relevant information and updates the adjacent cache route information table of the terminal node (3) requesting content in the same way as step 3.2.9;
step 3.2.11, according to the information contained in the response packet, establishing the path from the terminal node (3) requesting the content to the destination node;
at step 3.2.12, the entries in the neighboring cache routing information table of each cache node are time-sensitive, and if the time for an entry to exist exceeds the update interval, it is deleted as a stale entry.
5. The method of claim 3, wherein the method comprises: specifically, in the content request packet CEN _ REQ, Type is a packet Type, and a value thereof is set to 1, which indicates a CEN _ REQ packet; seq is a serial number, is generated by the cache node generating the request packet, and is used together with the cache node address to mark one request packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; ServerAddr is the address of the directory server (1); TimeStamp is the current TimeStamp.
6. The method of claim 4, wherein the method comprises: in the content detection request packet DIST _ REQ, Type is a packet Type, and the value of Type is 3, which indicates a DIST _ REQ packet; seq is a serial number, is generated by the cache node generating the request packet, and is used together with the cache node address to mark one request packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; depth is the broadcast Depth; nonce is a random number generated when the packet is generated; TimeStamp is the current TimeStamp;
in the content detection response packet DIST _ REP, Type is a packet Type, and the value of Type is 4, which represents a DIST _ REP packet; seq is a serial number, is generated by the cache node which generates the response packet, and is used together with the cache node address to mark a request packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; ContentProviderAddr is the address of the content provider; the Nonce value is consistent with the Nonce value of the received request packet; TimeStamp is the current TimeStamp.
7. The method of claim 3, wherein the method comprises: in the content response packet CEN _ REP, setting the value to 2 indicates the CEN _ REP packet; seq is a serial number, generated by the directory server (1), for marking a response packet; ContentName is the requested content name; SourceAddr is the address of the requesting node; ServerAddr is the address of the directory server (1); ContentProviderAddr is the address of the content provider; TimeStamp is the current TimeStamp.
8. A proximity cache aware semi-centralized routing system according to any one of claims 2 to 7, wherein: the system comprises a plurality of terminal nodes (3), a plurality of routers (2) and a directory server (1);
the terminal node (3) is connected with the directory server (1) through the router (2); the terminal nodes (3) and the routers (2) directly transmit information, the terminal nodes (3) transmit information with the directory server (1) through the routers (2), and the routers (2) connected with each other transmit information.
9. The proximity cache aware semi-centralized routing system of claim 8, wherein: the terminal nodes (3) and the routers (2) have a content caching function, the terminal nodes (3) and the routers (2) form caching nodes, the directory server (1) has a complete list of caching contents and caching node addresses and corresponding relations between all caching nodes in the network and the caching contents of the caching nodes, the information is stored as a routing information table, and the routing information is updated and maintained regularly.
CN202110909109.7A 2021-08-09 2021-08-09 Semi-centralized routing method and system for proximity cache perception Active CN113660162B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110909109.7A CN113660162B (en) 2021-08-09 2021-08-09 Semi-centralized routing method and system for proximity cache perception

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110909109.7A CN113660162B (en) 2021-08-09 2021-08-09 Semi-centralized routing method and system for proximity cache perception

Publications (2)

Publication Number Publication Date
CN113660162A true CN113660162A (en) 2021-11-16
CN113660162B CN113660162B (en) 2024-04-09

Family

ID=78478632

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110909109.7A Active CN113660162B (en) 2021-08-09 2021-08-09 Semi-centralized routing method and system for proximity cache perception

Country Status (1)

Country Link
CN (1) CN113660162B (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102695239A (en) * 2012-06-18 2012-09-26 哈尔滨工业大学 Service discovery system applied to embedded platform and service discovery method
CN103634692A (en) * 2013-12-06 2014-03-12 南京理工大学连云港研究院 CDN (content distribution network) and P2P (peer-to-peer) based hybrid stream media video-on-demand system
CN104753797A (en) * 2015-04-09 2015-07-01 清华大学深圳研究生院 Content center network dynamic routing method based on selective caching
US20170302563A1 (en) * 2014-09-23 2017-10-19 Institute Of Acoustics,Chinese Academy Of Sciences Content-centric network on-demand distance vector route method
CN108337173A (en) * 2018-03-23 2018-07-27 中国电子科技集团公司第五十四研究所 Distributed address (ADDR mapped system and method based on local cache and structural P 2 P
CN108833536A (en) * 2018-06-14 2018-11-16 北京云端智度科技有限公司 A kind of adaptive CDN network caching technology
CN110933692A (en) * 2019-12-02 2020-03-27 山东大学 Optimized cache system based on edge computing framework and application thereof

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102695239A (en) * 2012-06-18 2012-09-26 哈尔滨工业大学 Service discovery system applied to embedded platform and service discovery method
CN103634692A (en) * 2013-12-06 2014-03-12 南京理工大学连云港研究院 CDN (content distribution network) and P2P (peer-to-peer) based hybrid stream media video-on-demand system
US20170302563A1 (en) * 2014-09-23 2017-10-19 Institute Of Acoustics,Chinese Academy Of Sciences Content-centric network on-demand distance vector route method
CN104753797A (en) * 2015-04-09 2015-07-01 清华大学深圳研究生院 Content center network dynamic routing method based on selective caching
CN108337173A (en) * 2018-03-23 2018-07-27 中国电子科技集团公司第五十四研究所 Distributed address (ADDR mapped system and method based on local cache and structural P 2 P
CN108833536A (en) * 2018-06-14 2018-11-16 北京云端智度科技有限公司 A kind of adaptive CDN network caching technology
CN110933692A (en) * 2019-12-02 2020-03-27 山东大学 Optimized cache system based on edge computing framework and application thereof

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
姜静: "《基于聚类的超密集网络干扰抑制方法》", 《西安邮电大学学报》, vol. 24, no. 6 *
杜剑波等: "《基于NOMA的车辆边缘计算网络优化策略》", 《物联网学报》, vol. 5, no. 1 *

Also Published As

Publication number Publication date
CN113660162B (en) 2024-04-09

Similar Documents

Publication Publication Date Title
US9906436B2 (en) Scalable name-based centralized content routing
US6856991B1 (en) Method and apparatus for routing data to a load balanced server using MPLS packet labels
US7830896B2 (en) Server load balancing using IP option field approach to identify route to selected server
EP2466810B1 (en) Method and router for a service dependent routing
US9847930B2 (en) System and method for directing clients to optimal servers in computer networks
US7047315B1 (en) Method providing server affinity and client stickiness in a server load balancing device without TCP termination and without keeping flow states
US7447798B2 (en) Methods and systems for providing dynamic domain name system for inbound route control
US20090259667A1 (en) Method, device and system for distributing file data
US9137045B2 (en) Ethernet multicast method and device
US20100124233A1 (en) Method for sending message, access router and data cache system
KR20170038148A (en) System and method for stateless information-centric networking
US8539041B2 (en) Method, apparatus, and network system for acquiring content
CN103546375A (en) Content routing method and device
EP1324546A1 (en) Dynamic content delivery method and network
EP1433051B1 (en) System and method for information object routing in computer networks
WO2017071591A1 (en) Icn based distributed resource directory for iot resource discovery and routing
CN111797341B (en) Programmable switch-based in-network caching method
CN113660162B (en) Semi-centralized routing method and system for proximity cache perception
US20220166708A1 (en) Method and apparatus for selecting packet path to support producer mobility in information-centric networking
CN114650296B (en) Information center network copy selection method
WO2023097856A1 (en) Popularity-based channel-associated collaborative caching method in icn
CN117499483A (en) Caching-based on-satellite network big data forwarding method
CN115250265B (en) Domain Name System (DNS) data synchronization method and device and domain name system
CN116233147A (en) Efficient edge caching method based on NDN
Kohama et al. Scalable Naming in ICN

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240401

Address after: 1403, enterprise headquarters building, No.2 Saigao City Plaza, 170 Weiyang Road, Xi'an Economic and Technological Development Zone, Shaanxi 710000

Patentee after: Shaanxi Wukong Cloud Network Technology Co.,Ltd.

Country or region after: China

Address before: 1403, enterprise headquarters building, No.2 Saigao City Plaza, 170 Weiyang Road, Xi'an Economic and Technological Development Zone, Shaanxi 710000

Patentee before: Shaanxi wukongyun Information Technology Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right