CN104753797B - A kind of content center network dynamic routing method based on selectivity caching - Google Patents

A kind of content center network dynamic routing method based on selectivity caching Download PDF

Info

Publication number
CN104753797B
CN104753797B CN201510167265.5A CN201510167265A CN104753797B CN 104753797 B CN104753797 B CN 104753797B CN 201510167265 A CN201510167265 A CN 201510167265A CN 104753797 B CN104753797 B CN 104753797B
Authority
CN
China
Prior art keywords
packet
router
interest bag
data
interest
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.)
Expired - Fee Related
Application number
CN201510167265.5A
Other languages
Chinese (zh)
Other versions
CN104753797A (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.)
Shenzhen Graduate School Tsinghua University
Original Assignee
Shenzhen Graduate School Tsinghua University
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 Shenzhen Graduate School Tsinghua University filed Critical Shenzhen Graduate School Tsinghua University
Priority to CN201510167265.5A priority Critical patent/CN104753797B/en
Publication of CN104753797A publication Critical patent/CN104753797A/en
Application granted granted Critical
Publication of CN104753797B publication Critical patent/CN104753797B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

A kind of content center network dynamic routing method based on selectivity caching, wherein in the interest bag during user is asked from during terminal user is transferred to data set provider, cache routing device is determined by the information in the router that is passed through dynamically modification interest bag;The distance between the distance between when interest bag eventually arrives at data set provider, interest bag is determined and recorded from terminal user to data set provider, and the cache routing device of packet returned from terminal user to caching;When from data set provider returned data bag, data set provider copies to the information in interest bag on selection cache routing device in the packet of return;In packet return course, often reach a router and enter Mobile state renewal to its information, according to result is updated, data pack buffer is on cache routing device.The present invention can make full use of the spatial cache of router in network, realize load balance, can effectively be route in the case where not bringing extra burden to the network bandwidth.

Description

A kind of content center network dynamic routing method based on selectivity caching
Technical field
The present invention relates to computer network, the dynamic road of more particularly to a kind of content center network based on selectivity caching By method.
Background technology
The current network architecture is that the seventies of last century six are set up.At the beginning of internet is set up, internet is mainly used It is mutual trust between contact between major research mechanism and government organs, therefore each main frame of internet.And Internet is initially mainly used in the shared of data and service between heavy-duty machines, and network topology is fairly simple, and service type is also very Single, therefore, the communication being confined in the purposes of internet at that time, internet between each main frame employs point-to-point communication Mode.
With the development of science and technology and society, in today's society, hardware device production cost is constantly reduced, and terminal device is in day Popularization often is continuously available in life, internet is gradually penetrated into different social sectors.It is widely used in internet While production and living, its function and purposes also there occurs deep change.In current internet, with YouTube, The contents such as P2P share the gradually popular of application, and content is shared using produced flow ratio shared in network total flow It is increasing.On the one hand, for content shares application, the simply data that user is concerned about in itself, and are not relevant for data and deposited The particular location put;On the other hand, current Internet architecture is still based on point-to-point communication, so while we are not It is concerned about the position of data storage, but data must be mapped to their deposit position by we first, then go again corresponding Position is gone to obtain data.Which results in the separation of target and method, add us and obtain the complexity of data.Meanwhile, with The situation that possibility in the continuous expansion of the scale of network, network occurs becomes to become increasingly complex, new network security problem layer Go out not poor.In order to ensure the normal operation of network, on the basis of original system, we introduce various to network Mechanism so that network becomes to become increasingly complex, the management of network also becomes more and more difficult.
In order to fundamentally solve the above problems, the characteristics of for current network, there has been proposed a kind of new network body Architecture, referred to as names data network (Named Data Networking).It is different from traditional IP network, in name data In network, data and non-host is most basic routing object.The characteristics of name data network is most basic is, when we are in request When some data, we directly ask this data in itself, and are no longer by accessing the position that this data is deposited To obtain this data.Also allow us to combine the concrete property of current network in addition, reconfiguring network, introduce some new Mechanism sets up simpler effective network security model to simplify the framework of network.In this sense, data network is named Many chance and hope have been contained in the proposition of network.
The characteristics of naming data network is as follows:
1) each packet has a unique name.When we will obtain some packet, Wo Mengen According to this packet of the name requests of this packet, rather than this packet is mapped to its deposit position, Ran Houtong Cross and access its deposit position to obtain this packet.In addition, name data network employs the name structure of stratification, than The form as ndn/video/transformer, can so effectively reduce the scale of routing table by polymerizeing.
2) each router has data cached function.When a data pass through a router, this Individual router can select to cache this data.When user sends a request, this request can be in network It is middle to be propagated.If this request reaches a router, this router finds that it has cached the data asked, this Individual router will return to this data, therefore this request is just met.
There are two kinds of different data types in name data network, be packet (Data packet) and interest bag respectively (Interest packet).When a user will ask a data, he is firstly the need of the name for knowing this data Word, then this user generates an interest bag according to this name, and this interest bag is sent into its agent router. When this agent router receives this interest bag, agent router can be emerging to this according to the routing policy of itself Interesting bag is route.If this interest bag reaches a router and this router houses this interest bag and asked Packet if, this packet will be returned, and otherwise this interest bag will eventually be transmitted to asked data The source server of bag, and fetch from source server asked packet.The process that one interest bag is transmitted in a network In, the router in network can safeguard corresponding information for this interest bag;When this interest bag has eventually arrived at what is asked When the deposit position of packet, this packet will be returned along the path that original interest bag is reached.
The router of name data network mainly has three kinds of data structures, is data warehouse (Data Store) respectively, etc. Treat interest table (Pending Interest Table) and routing table (Routing Table).Wherein, data warehouse is mainly used in Data cached bag, waits interest table to be used for the interest bag and polymerization interest bag for recording forwarding, and routing table is then used to forward interest Bag.The repeating process of interest bag in a network is as follows:
1) when a router receives an interest bag, it searched first in its data warehouse either with or without with The packet of this interest bag matching.If the packet matched with this interest bag, what it was just reached from this interest bag Port returns to this packet, and terminates the propagation of this interest bag.
If 2) packet that this interest bag is asked is not present in the data warehouse of this router, this road It will be searched by device in its wait interest table either with or without the list item matched with this interest bag.If its wait interest table In have with this interest bag match list item, that just illustrates to have received identical interest bag before this router, and This interest bag is forwarded.Therefore the arrival port of this interest bag will be added to matching by this router Wait interest table list item port list in and terminate the propagation of this interest bag.
If 3) list item not matched in interest table is waited with this interest bag, that just illustrates this router first It is secondary to receive such interest bag, therefore this router searches its routing table according to the forwarding strategy of its own.If There is the routing iinformation of matching in this routing table, this router will transfer this interest bag from corresponding port Go, and a list item is added in its wait interest table, the arrival port of this interest bag, which is added to this, waits interest In the port list of table list item.
If 4) routing iinformation not matched in the routing table of this router with this interest bag, this router Error reporting will be sent by this data packet discarding, and to its upper hop, tell its current router can not forward this Interest bag.
The communication process of packet in a network is as follows:
1) when a router receives a packet, it can decide whether to this according to its cache policy Individual packet is cached.If cache policy shows that this router needs to cache this packet, this road Its data warehouse will be checked by device.If this buffered packet of its data warehouse, this router is just The packet in its data warehouse can be updated, such as refreshes the life cycle of this packet, (can not also update);Otherwise This router will be by this data pack buffer into its data warehouse.If it needs to cache this packet, still Its data warehouse is full, and original packet will be replaced out by this router according to certain strategy.
2) then, this router considers to forward this packet.This router searches its wait interest table, if There is the list item data packet matched with this in its wait interest table, this router will be by this packet from this list item Port list in each port forward.
If 3) the not no list item data packet matched with this in the wait interest table of this router, this router will Abandon this packet.
4) data network is named to be to the data in network firstly the need of two fundamental problems of solution for actual deployment Cache policy and to these caching data routing policy.It presently, there are three kinds of popular cache policies:
A) universal cache policy.During using this cache policy, packet from data set provider (be probably router Be probably source server) reach user during, each router that it is passed through can be delayed to this packet Deposit.This cache policy has proven to poorly efficient, because it not only results in the severely redundant and frequent of the data of caching Replace, cause the data much cached also to have little time to be used again just and be replaced out.
B) highest centre degree cache policy.During using this cache policy, each node that we are given in network first Calculate a centre degree (betweenness centrality).Statistical confirmation, in real network, the middle degree of a node Reflect the number of the shortest path by this node.So the higher node of centre degree, by the number of its shortest path Mesh is also more.In a packet from during data set provider is transferred to user, we always exist this data buffer storage On middle degree highest node, the possibility that so buffered data are accessed again is maximum.But this cache way One has the disadvantage that according to such cache way the high node of middle degree can be caused that over-burden, and centre degree is relatively low The upper spatial cache of node is but idle, and causes the spatial cache of router in network not to be fully used.
C) away from supplier's priority cache strategy.This is a kind of probability cache way.Passed in packet from data set provider It is defeated to during terminal user, we assign one to each router in the transmission path of packet and cache this number According to the probability of bag;The distant router of range data supplier has than larger probability to cache this packet.It is this The thought of cache policy is that we are always buffered in packet priority close to the position of terminal user, can so use distance Spatial cache on the closer router of source server caches the data apart from the closer user of source server.But this Planting the validity of cache logic can not be widely recognized.Because we can consider that we preferentially should delay data completely In the presence of close to the position of data set provider, so this data can be accessed by more users, thus can obtain higher profit With rate.
There is currently two kinds to compare by the two kinds of routing policies approved is static routing strategy and link state routing protocols respectively By strategy.
1) static routing strategy.This routing policy gives no thought in name data network and cached on router Data.Router is whenever receiving an interest bag, always by this interest bag to the side of the source server for the packet asked To forwarding.If this interest bag reaches a router, and this router cache this interest bag is asked Packet, this router will return to this packet.
2) Link State route strategy.This routing policy is actually ospf protocol in name data network Using.Its way is that this router all can be this whenever the content in the data warehouse of a router is changed Individual information announcement is into the whole network.Therefore each router in network both knows about the number cached in the router of any one in network According to.On the premise of each router both knows about the topological structure of the whole network in a network, a router can pass through Dijkstra Algorithm calculates the next-hop corresponding to the optimal path for reaching each packet.But this method is to be difficult in actual deployment Application, because the packet in network continually can be cached and replaced, if caching and replacing each time and be all logical to the whole network Huge network traffics can be produced if announcement in a network, huge burden is carried out to Netowrk tape.And exist in a network a large amount of Packet (number than router is much bigger) in the case of, dijkstra's algorithm is run in units of packet to count The cost for calculating shortest path is very big.
Due to lacking effective caching and replacement policy, name data network is difficult to realize deployment in real network.Seek A kind of effective caching and replacement policy is looked for have become a urgent problem to be solved in name data network.
The content of the invention
It is a primary object of the present invention to there is provided in a kind of content based on selectivity caching in view of the shortcomings of the prior art Heart network dynamic method for routing.
To achieve the above object, the present invention uses following technical scheme:
A kind of content center network dynamic routing method based on selectivity caching, wherein:
For the configuration of routers static routing table and dynamic routing table in name data network, the service of record source is respectively used to The routing iinformation of the data cached in the data and router deposited in device;By the definition of name of packet into including the packet Source server the packet that is divided into of identifier, the name of the source file of the packet, the source file of the packet number, And sequence number of the packet in the packet that its source file is produced;
In the interest bag during user is asked from during terminal user is transferred to data set provider, by the road passed through Cache routing device is determined by the information in device dynamically modification interest bag;When interest bag eventually arrives at data set provider, Interest bag the distance between is determined and recorded from terminal user to data set provider, and the number returned from terminal user to caching The distance between cache routing device according to bag;When from data set provider returned data bag, data set provider is by interest bag In on select cache routing device information copy in the packet of return;In packet return course, one is often reached Router, the router enters Mobile state renewal to the information recorded in packet, using updating result, data pack buffer really On fixed cache routing device.
In a specific aspect, the structure of the name of packet in name data network is exactly defined.By packet Definition of name into " server-name/file-name/packet-number/packet-sequence " form, wherein " Server-name " is the identifier of the source server of this packet, and " file-name " is the source file of this packet Name, " packet-number " is the number of packet that is divided into of source file of this packet, " packet-sequence " It is sequence number of this packet in the packet that its source file is produced.By such naming method, not only on this Incorporate in the name of packet the message part of the source server of individual packet, and the source file of this packet has been produced The number of raw packet is added in the name of this packet, such to be designed with beneficial to being stored in source server Data and the packet being buffered in router are route.
In another specific aspect, the routing table in router has been respectively classified into static routing table and dynamic routing table, The routing iinformation of the data cached in the data and router deposited respectively in record source server.
In another specific aspect, it is proposed that cache routing device is determined using Hash and local decision and realizes that caching is negative Carry the buffering scheme of balance.In this buffering scheme, only wrapped in each interest and add increasing on four domains, each packet Two domains are added, then interest bag from terminal user during data set provider is transferred to, in dynamic modification interest bag This four domain determines cache routing device;Data set provider is when returned data bag, and it will be slow on selection in interest bag The information for depositing router is copied in the packet of return.Packet these information in return course can be dynamically modified, from And by data pack buffer on predetermined router.By such mode, the caching in network is not only effectively reduced Redundancy (because in packet from during data set provider is transferred to terminal user, it at most can only be buffered once), and And realize the caching load balance on router.
In another specific aspect, it is proposed that one is the packet that caches sets up dynamic routing information in router side Case.It is only that routing iinformation, the route of foundation are set up by the packet of this router in the scheme of dynamic routing information is set up Information not only includes the position that these packets are deposited, but also the distance of the deposit position including them and current router, And the quantity that the packet with same prefix is cached on target location.Scheme is setting up the same of routing iinformation for packet When do not give Netowrk tape to carry out extra burden.It was found that the caching of the packet from same file is with the characteristic gathered, So at most only setting up a dynamic routing list item on a router for a file, this largely maintains road By the accuracy of information while significantly reduce the scale of dynamic routing table.
In another specific aspect, it is proposed that a forwarding strategy based on probability.This forwarding strategy is dynamic routing The forwarding port that table and static routing table are provided calculates the expectation of the forward delay of an acquisition target data, Ran Houxuan respectively The minimum port of expectation of forward delay is selected to forward interest bag.
To sum up, the present invention proposes a kind of progress selectivity caching in name data network and the strategy of dynamic routing, The caching of data in name data network and route are organically combined together, set up during data cached for data Dynamic routing information.By the present invention, the spatial cache of router in network is not only taken full advantage of, load balance is realized, And the data in router have been carried out with effective route in the case where not bringing extra burden to the network bandwidth.This Outside, it is also proposed that a kind of turn for making full use of the routing iinformation on the data in router and in source server based on probability Hair strategy, to reduce the delay required for one data of end-user request to the full extent.The present invention is only needed to interest bag Very limited amount of modification is carried out with packet, then passes through certain cache policy again, it is possible to is realized to being cached in router Data effective routing, and extra flow will not be introduced to network.
Brief description of the drawings
Fig. 1 a and Fig. 1 b are the lattice that the embodiment of the present invention selectively caches interest bag and packet in dynamic routing scheme Formula;
Fig. 2 is the dynamic routing schematic diagram in selectively caching dynamic routing scheme of the embodiment of the present invention;
Fig. 3 is the buffering scheme and dynamic routing schematic diagram of the embodiment of the present invention;
Wherein client1To client4For terminal user, youtube, serner are data set provider, R1To R14For route Device.
Embodiment
Embodiments of the present invention are elaborated below.It is emphasized that what the description below was merely exemplary, The scope being not intended to be limiting of the invention and its application.
Refering to Fig. 1 a to Fig. 3, embodiments of the invention mainly include two aspects, and one is that packet is cached simultaneously Dynamic routing information is set up for it, another is that packet is forwarded using these routing iinformations.Now by both schemes It is described below respectively.
1. related data structures
In the present invention, the name of our regulation packets is " server-name/file-name/packet- Number/sequence-number " form.It is assumed that each unique source server of packet only one of which; For any one effective packet, this packet can be acquired in its source server.Here " Server-name " is exactly the identifier of the source server of this packet, and it can directly use in present IP network and service The IP address of device.In name data network, the size of a packet is limited, but a file sometimes can be very Greatly, so we are frequently necessary to a file being divided into several packets, " file-name " is this packet here The filename of source file, " packet-number " is the number for the packet that this source file is divided into, " packet- Sequence " is sequence number of this packet in the packet that source file is produced.Here " file-name " field can also It is hierarchical structure.If the name of a packet is " youtube/video/transformer/1000/0 ", that is just The identifier for illustrating the source server of this packet is " youtube ", and the filename of its source file is " video/ Transformer ", this file is divided into 1000 packets, and this packet is the packet of serial number 0 therein.
We construct two routing tables in the router, are dynamic routing table and static routing table respectively.Static routing Table have recorded the routing iinformation for the shortest path for going to each source server, be exactly specifically to go to each source server most Next-hop corresponding to short path, and the distance from current router to source server.Static routing table can use IP network In method constructed;Because static routing table is not the main innovation point of the present invention, we no longer enter to it here Row is further to be discussed, and its building method is stayed in chapter 6.Dynamic routing table then have recorded on being cached in router Data routing iinformation.The structure of dynamic routing table is as shown in table 1.
The structure of the dynamic routing table of table 1
In dynamic routing table, " prefix " is the prefix of the name of packet, in our invention, what we used The name prefix of packet is " server-name/file-name/packet-number " part.In table 1, before corresponding to Sew " prefix1" there is a triple (face1, number1, distance1), illustrate there is number1It is individual that there is prefix prefix1 Packet be buffered on some router, this router can pass through port face1Reach, this router and current The distance of router is distance1.The specific configuration method of dynamic routing table we will describe below.
2. data cached wrap and set up dynamic routing information
As illustrated in figs. 1A and ib, we with the addition of four domains in the head of the interest bag of name data network, respectively It is URD, ARD, WT and HV;We add two domains on the head of packet simultaneously, are URD and ARD respectively.We are fixed in advance One hash function h of justice.H can be hashed into any two character string one equally distributed random number between [0,1]. One router has three attributes, is its identifier ID (IDtifier), the capacity C P of its data warehouse respectively And its popularity PP (PoPularity) (CaPacity).
When a user will ask a packet, it needs to produce an interest bag and by four of this interest bag Domain URD, ARD, WT and HV are set to 0, and this interest bag then is sent into its agent router.This interest bag whenever to When up to a router, the value in the URD domains of this interest bag can all be increased by 1 by this router first.Therefore one it is emerging The value in the URD domains of interest bag have recorded current router to the distance of terminal user.Here distance and the length in path we all Represented with hop count.When there is weights on link, we can be easy to draw by extending method discussed here Corresponding conclusion.Then its data warehouse of this query router, checks whether it can provide this interest bag and be asked Data.We discuss that it can not provide the situation of this packet that interest bag is asked first.In this case, this Router needs suitably to handle this interest bag, is then forwarded this interest bag.This router is first The WT values of this interest bag are assigned to w1, the HV values of this interest bag are assigned to v1, i.e.,
w1=I.WT, v1=I.HV.
Then this, the volume of its data warehouse and the business of popularity are assigned to w to this router2, its identifier V is assigned to the cryptographic Hash of the name of this packet2, i.e.,
Here w2It is the weights of this one packet of router cache.The capacity of the data warehouse of this router is got over Greatly, the probability of this one packet of router cache is bigger, therefore its weights are bigger;, whereas if a route The popularity of device is higher, more by its data, to reach the caching load balance of router, its one packet of caching Probability is just smaller, therefore its weights are just smaller.Here we assign the middle degree of a router as its popularity;Statistics Data illustrate router middle degree and by its shortest path quantity in all shortest paths of network it is shared Ratio there is very strong correlation, so simply think middle the degree and process this router of router here The number of shortest path ratio shared in all shortest path is directly proportional in a network.
Then we define two variable αs1And α2And it is as follows to their assignment:
If w1< w2, then
Otherwise,
Then, we compare α1v1And α2v2.If α2v2> α1v1, then we current router is elected as to asked number According to cache routing device when returning.Then the ARD values of this packet are set to the URD values of the interest bag after updating by we.ARD Value is meant that distance of the router apart from terminal user for the data cached bag that we select.Meanwhile, we are by interest bag HV values are updated to v2, the WT values of interest bag are updated to w2Value, i.e.,:
URD=ARD, HV=v2, WT=w2
Algorithm above can be described as follows
So, when interest bag eventually arrives at data set provider, the URD of interest bag have recorded from terminal user to number According to the distance between supplier (in terms of hop count), and ARD have recorded the data returned from terminal user to the caching that we select The distance between router (hereinafter referred to as cache routing device) of bag, delays in addition, the WT of interest bag have recorded cache routing device The business for depositing the weights of a packet, the i.e. capacity of its data warehouse and popularity, HV have recorded the packet of this return Name and caching router identifier cryptographic Hash.
Below we demonstrate that selecting cache routing device in this manner, we can realize that the caching load of router is flat Weighing apparatus, so as to make full use of the spatial cache of router in network.
Because when user initially produces interest bag I, interest bag I WT values are 0, so when I reaches the agency of user This router will temporarily be chosen as caching the router of returned data bag, therefore the WT in interest bag I when router What is recorded is the weights of one packet of caching of this agent router, and that HV is recorded is name and the agency of this interest bag The cryptographic Hash of the identifier of router.Currently assume that currently selected fixed cache routing device is R1, then this interest bag WT record Be R1The weights of a packet are cached, i.e.,Its HV records are R1Identifier and I name cryptographic Hash, That is h (R1.ID, I.name).Present interest bag I reaches a new router RkAnd RkThe data that I is asked can not be provided Bag, thus according to algorithm 1, RkTo v1, w1, v2, w2Assignment is as follows:
v1← I.HV, w1←I.WT
If w1< w2, then we make
It is uniformly distributed it is known that any two character string can be hashed into one by hash function h in [0,1] Random number, so v1And v2It is two separate and equally distributed random numbers in [0,1].Router RkReselect slow When depositing router, R1Selected probability is
And RkThe probability for being chosen as new cache routing device is
So R1And RkThe ratio between probability of cache routing device is chosen to be for w1∶w2, i.e. R1And RkCache a given number (added in short " for w according to the ratio of the weights of bag1∶w2”).It can easily be proven that according to algorithm 1, working as w1> w2When also have identical knot By.
Still further, it is assumed that the router on path from user to data set provider is respectively R1, R2..., Rn, the side of being Just for the sake of, the weight that they cache a data-oriented bag is designated as w by we respectively1, w2..., wn, then they be chosen to be slow The ratio between probability of packet of return is deposited for w1∶w2∶...∶wn
It is assumed that be directly proportional by the path and its popularity of each router, and the data flow on every paths Amount is equal.For two router R1And R2, their popularity is respectively PP1And PP2, the capacity point of their data warehouse Wei not CP1And CP2, then they cache the ratio between given probability for packet and beIt is assumed that they cache one The probability of packet is respectivelyWithWherein δ is a constant.It is assumed that passing through R1And R2On number of path difference For PP1ρ and PP2ρ, is λ by the data traffic on each path.Then it is buffered in R1And R2On number-of-packet purpose ratio It is worth and is
I.e. under this simplified model, the data and the volume of the data warehouse of this router cached on each router Proportional, then we realize the load balance on router.
Dynamic routing information is set up for the ease of the packet after us for caching in the router, we are by number here When being hashed into a random number according to the name of bag and the identifier of router, we actually use the name of packet " server-name/file-name/packet-number " part of word, so all packets of same source file Name prefix and the identifier of router carry out Hash and can all obtain an identical cryptographic Hash, from same file And the packet transmitted on same paths can all select identical cache routing device.
When interest bag eventually arrives at the supplier of asked packet, packet supplier is interest bag URD and ARD value is assigned to the URD domains and ARD domains of returned data bag respectively, and the port reached from this interest bag is by this number Gone back according to bag forwarding.
Packet often reaches a router, and this router all can subtract 1 the URD values of packet, i.e. this packet 1 is reduced with the distance of terminal user.Then this router compares the URD values and ARD values of packet, if this packet URD values and ARD values it is equal if, it is slow that just illustrates that this packet has had arrived at that interest bag selectes in communication process Router is deposited, therefore the copy of this packet is buffered in locally by this router.Else if this packet URD values are less than ARD values, and that just illustrates that this packet was buffered on router before, and this data The distance of the router and current router that wrap caching is ARD-URD, and this router can be by the arrival of this packet Port is reached., whereas if the URD values of this packet are more than ARD values, that just illustrates this packet from each forwarding port The backup of forwarding will be all buffered in router afterwards, and the distance of cache routing device and current router is all URD- ARD, therefore corresponding to each forwarding port of this packet, we set up corresponding route letter for this packet Breath.
When this router by this data pack buffer local or set up after routing iinformation for this packet, this Individual router can inquire about its wait interest table, if there is the list item of matching in its wait interest table, it will be from this The copy of this packet is forwarded in each port in the port list of list item.
We handle the method for a packet as shown in algorithm 2.
As can be seen that we are when the packet cached in for router sets up dynamic routing information from algorithm above Wait, for the packet from same file being buffered on same router, we are at most that it sets up a route List item is (because the prefix of dynamic routing list item is the " server-name/file-name/packet- of the name of packet Number " parts).On the one hand because we can seldom ask a single packet in real life, and it is typically all to ask Seek whole file;On the other hand, the identifier of packet name and router is being carried out Hash one random number of generation by us When we use " server-name/file-name/packet-number " part of the name of packet, institute Identical cryptographic Hash can be obtained with the packet of same source file, by the packet of the same source file of same paths It can be buffered on identical router.Therefore the caching of packet shows the property gathered, then we only need to for The packet from same file being buffered on same router sets up a route table items.Further, for convenience Realize, a router, which only have recorded from its each port, can reach how many packets, and reach these packets Average distance.On the basis of so we largely maintain dynamic routing information, dynamic road is considerably reduced By the scale of table.
3. table of query and routing is to forward interest bag
When a router receives an interest bag, this router considers to forward this interest bag.Because existing There are a static routing table and a dynamic routing table in the routing table, the number on being stored in source server is have recorded respectively According to the routing iinformation with the data being buffered in router.It is contemplated that comprehensively utilizing both routing iinformations, do not increasing net Under conditions of network burden, the delay of one packet of end-user request is reduced as far as possible.
Assuming that router R have received the source clothes that interest bag I, R know asked packet by queries static routing table The corresponding forwarding port of business device is face1, it is dist from the router R distances for reaching source server1.It is assumed that a data Bag can be always found in its source server.If so router R by interest bag I from port face1Forward, then road 2dist is contemplated to be by what device R fetched the delay that asked packet needs1.Assuming that router R inquires about its dynamic routing Table, it is known that the distance from current router to some router that may have cached the packet asked is dist2, forward end Mouth is face2, there is m and the packet asked has the data pack buffer of identical prefix on destination router, and Understand that the source file of asked packet has altogether according to I name and generate n packet.So if R is by this interest Wrap from port face2Forwarded, if the data pack buffer asked is on destination router, that router R fetches institute The delay of the packet of request is 2dist2, such case occur probability beIf the packet asked is not present in On destination router, then router R is received after error reporting, it needs to ask this to the source server of packet again Packet, so the delay that router R fetches asked packet is 2dist1+2·dist2, it is general that such case occurs Rate isSo router R is from port face2Being desired for for asked packet is fetched during forwarding interest bag
So we can just calculate from each port (including static routing table provide port and dynamic routing table carry The port of confession) fetch when forwarding this interest bag asked packet delay expectation.We always prioritizing selection postpone Minimum port forwards this interest bag.So we can be just minimized on probability needed for we ask a packet The delay wanted.
The embodiment of the present invention only needs to carry out very limited amount of modification to interest bag and packet, then again by certain Cache policy, it is possible to realize to the effective routing of the data cached in router, and extra stream will not be introduced to network Amount.During specific implementation, following several modules are divided into:
(1) the name form of packet is provided
In our scheme, our the clear stipulaties name form of packet, i.e. the name of packet is " Server-name/file-name/packet-number/packet-sequence " form, wherein " server-name " It is the identifier of the source server of packet.It is assumed that each packet has a unique source to service in our schemes Device, and any one effective packet can be found in its source server.So when we take one it is emerging When interest bag, we, which are always able to know that, where goes to obtain asked packet." file-name " of packet name Field is the title of the source file of this packet.This field can be stratification.The owner of this file can be with Any one mode gives this file designation." packet-number " field is the number for the packet that source file is divided into." Packet-sequence " fields are sequence number of this packet in the packet that source file is generated.We with this field come Distinguish the different packets of same file.Because we tend not to a file to be stored in a router completely On, the partial data bag in the packet of a file has many times only been cached on a router.So we " This field of packet-number " is added in the name of packet, so when we house on a router it is some When the packet of same file, we just can effectively estimate that we to what extent save this file Data, and if individual user ask the packet of this file when, this router can provide this number Have much according to the possibility of bag.Because this four fields of packet are all known to the owner of packet, in number Easily it can be named when creating this packet according to the bag owner to this packet.Generally, if source File is divided into n packet, and " packet-number " field of these packets is the n, " packet- of these packets Sequence " value is respectively from 0 to n-1.
(2) routing table is divided into static routing table and dynamic routing table
Different from the routing table in traditional name data network, in our scheme, we are the road in router By showing really to divide into static routing table and dynamic routing table, the road to the data in source server and router is each responsible for By.Static routing table list item is the form of (server-name, face, distance), wherein " server-name " is one The identifier of source server, " face " is to go to the forwarding port corresponding to the path of this source server, and " distance " is From current router to the distance of this source server.Notice a packet name top prefix exactly it The identifier of source server, and a packet can always be found in its source server, so when a route When device takes an interest bag, if this is an effective interest bag, the name of this interest bag it is top Prefix is just necessarily present in static routing table, so in the case of not on the dynamic routing information of this interest bag, This interest bag can be forwarded to the source server of asked packet by this router as in an ip network.Depositing It is current router to source by " distance " attribute in the case of on the dynamic routing information for the packet asked The distance of server, current router can also determine that it is the port or dynamic routing table offer provided with static routing table Port forward this interest bag.
Static routing table can easily be realized with existing technology and infrastructure.One optional scheme is, With BGP, agreement in the IP network such as OSPF after having calculated the routing table in an IP network, is serviced for each source Device, we obtain its IP address by DNS service, and then we just can determine that arrival is gone to by inquiring about IP route table Port corresponding to the optimal path of each source server and from current router to the distance of this server.Or I Directly with the IP address of a source server as the identifier of this source server, so we just can be IP route table It is used as the static routing table of name data network.Because the building method of static routing table is more directly perceived, we are not It assign the construction of static routing table as innovative point of the invention.
The structure of dynamic routing table is as shown in table 1.Each list item of dynamic routing table corresponds to the prefix of a packet, Here prefix we use " server-name/file-name/packet-number " of the name of a packet Part, therefore each source file at most corresponds to a dynamic routing table list item in same dynamic routing table.Dynamic road Corresponding to each prefix " prefix " in table has a dynamic routing information list, this list by several (face, Number, distance) as triple constitute.In each such triple, " face " represents which passes through Port can reach the router for having cached these packets, and how many number with prefix " prefix " " number " represents Destination router is buffered according to coating, " distance " represents the distance between current router and destination router.Here Not necessarily one single router of destination router;Perhaps from some port of current router several Router has all cached the packet with prefix " prefix ", but we are only to the packet dimension cached on these routers A triple is protected, " distance " of this triple is current router putting down to all packets of these routers Equal distance.Dynamic routing table needs to construct by our cache policies proposed below and dynamic routing information Constructing Policy.
(3) form of interest bag and packet is defined
The structure of interest bag and packet is as illustrated in figs. 1A and ib.We add four domains in interest bag, respectively It is URD, ARD, HV and WT.Wherein URD represents current router to the distance of terminal user, and ARD represents that we are selected at present Cache routing device is to the distance of terminal user, and HV represents the " server-name/file-name/ of the name of this packet The cryptographic Hash of packet-number " partly with the identifier of caching router, WT represents that cache routing device caches a packet Weights.When a user produces an interest bag, URD, ARD, HV and the WT of the interest bag of this new generation tetra- The value in domain is all 0.In this packet from during terminal user is transferred to the supplier of packet, our cache policy New router can constantly be selected as cache routing device, so this four domains of interest bag can be constantly updated.
We add two other domain URD and ARD in the packet.As interest bag, the meaning point in the two domains Not Wei current router and caching router to terminal user distance.When interest bag eventually arrives at the offer of requested data bag When person, URD and ARD have recorded terminal user to packet supplier and the distance of the cache routing device of packet respectively. Then, packet supplier respectively copies to the URD domains of interest bag and the value in ARD domains URD domains and the ARD of the packet of return In domain.When this packet is returned, the value meeting hop-by-hop in URD domains is reduced, and the value in ARD domains then keeps constant.So this Individual packet often reaches a router, this router can easily calculate current router and caching router it Between distance.We exactly make use of this information to construct dynamic routing information to cache packet in the router.
(4) attribute of router is defined
In our scheme, it is assumed that each router has three attributes, it is the mark of this router respectively Symbol, the capacity of the data warehouse of this router and the popularity of this router.The unique terrestrial reference of identifier of one router This router is known.It is more a small number of that the capacity of the data warehouse of this router determines that this data warehouse is at best able to caching According to bag, when also to cache new data after the data warehouse of router has been expired, it is necessary to certain in data warehouse A little packets are replaced out.The popularity of one router then indicates the number in the path by this router, so as to enter One step indicates the quantity of the packet by this router.A packet is given, the volume of a router is bigger, I To wish that it caches the probability of this packet bigger, and the popularity of a router is higher, it is intended that it caches this The probability of packet is smaller.We can be simply considered that the popularity of a router is the number on the side connected with it, or We can also borrow the concept in social networks to person, the middle degree (betweenness centrality) of a router It is used as the popularity of this router.
(5) cache routing device selection strategy
In a packet from during the supplier of packet is transferred to terminal user, this packet at most can be by It is buffered on this paths on a unique router.This router is to be transferred to data from terminal user in interest bag Determined during bag supplier.When a user produces an interest bag, URD, ARD, the HV of this interest bag, Value with WT is all 0.Then when this interest bag reaches a new router, this router can be emerging this The URD values increase by 1 of interest bag, the URD domains of so this interest bag just have recorded the distance from terminal user to current router.So Afterwards, this router starts a query at its data warehouse, if being not present what this interest bag was asked in its data warehouse Packet, this router is accomplished by handling this interest bag accordingly, and this interest bag is then forwarded again.Route Device is as follows to the processing procedure of packet:
The value in the HV domains of this interest bag is assigned to v by this router1, the value in the WT domains of this interest bag is assigned to w1, so Afterwards " server-name/file-name/packet-number " of the name of this interest bag partly with this router The cryptographic Hash of identifier is assigned to v2, the weights of the caching of this router this packet be its data warehouse capacity and The business of popularity is assigned to w2.Then this router gives two variable αs1And α2Assignment is as follows:
If w1< w2, then
Otherwise,
Then this router compares α1v1And α2v2Value, if α2v2≥α1v1, then this router is just chosen as newly Cache routing device, then it the ARD of this interest bag value is updated to URD value, the HV values of this interest bag are updated For v2, the WT values of this interest bag are updated to w2.We can prove, each router popularity and by its Path number is proportional, and under the equal-sized hypothesis of data traffic on every paths, this selection that we are proposed The scheme of cache routing device can reach (one word " caching " of addition) load balance of router in network, that is, each road The data volume and the volume of its data warehouse cached on device is proportional.
(6) transmission packet and dynamic routing information is set up for it
In name data network, each router maintains a wait interest table.Wait each of interest table Individual list item is all the form of (name, face_list).Here " name " is the name of this interest bag, and " face_list " is Name is the arrival port list of the interest bag of " name ".
If a router receives an interest bag and this router can not provide what this interest bag was asked Packet, this router will first check for whether having the list item matched with this interest bag in its wait interest table.Such as Really there is the list item matched with this interest bag in its wait interest table, then it will direct arriving this interest bag It is added to up to port in the port list of this list item, without forwarding this interest bag;Otherwise this router will be this Interest bag is forwarded from suitable port, and newly-built wait interest table list item, the name of this packet and it Arrival port be stored in this list item.So when the packet that this interest bag is asked is returned, this data Bag often reaches a router, and this router can all inquire about its wait interest table.For the wait interest table list item of matching Port list in each port, this router all can therefrom forward the copy of this packet.By means of etc. Interest table is treated, it is precisely original corresponding interest bag institute that a packet returns to terminal user's paths traversed from supplier The path of process.
In our scheme, before a router forwards a packet, this router is needed first to this Individual packet carries out extra processing, and still dynamic routing letter is set up for this packet to determine cache this packet Breath.One packet often reaches a router, and the URD values of this packet are subtracted 1 by this router first, so this number Current router is have recorded to the distance of terminal user according to the URD values of bag.Notice that the ARD values record of this packet is former Carry out cache routing device selected among interest bag transmitting procedure to the distance of terminal user.This router can compare this interest The URD and ARD of bag value, if the URD values and ARD values of this packet are equal, that just illustrates that this packet has arrived at The selected cache routing device of original interest bag, so this router will cache the copy of this packet Come.Otherwise, if the URD of this packet value is more than the ARD of this packet value, that just illustrates that this packet does not have also Have and reach originally selected cache routing device, that is to say, that be buffered in the router that this packet will be afterwards, And the distance of cache routing device and current router is URD-ARD.Because this packet will be emerging by the wait from matching Forwarded in each port of the port list of interesting list item, so these cache routing devices can be by the wait interest of matching Each port in the port list of list item is reached.If URD value is less than ARD value, that has just illustrated this packet It was buffered on router before, and the distance of cache routing device to current router is URD-ARD, this caching Router can be reached by the arrival port of this packet.
It is now assumed that it is understood that the distance of the cache routing device of a packet to current router is distancex, This cache routing device can pass through port facexReach." the server-name/ of our the simple names by this packet File-name/packet-number " is partly designated as prefixx.It is known that in the dynamic routing table of router, correspondence It is the list of triple as one (face, number, distance) in each prefix prefix, wherein face is represented Having cached the router of packet with prefix prefix can be reached by which port, and number represents how many has Prefix prefix packet has been buffered on destination router, and distance represents current router to destination router Distance.If not on prefix prefix in current routerxRoute table items, this router be prefix prefixxBuild Found a dynamic routing list item, and one triple (face of insertion in this dynamic routing list itemx, 1, distancex).Such as Had existed in fruit dynamic routing table on prefixxDynamic routing list item, then this router will be examined further Look into this list item either with or without presence and forwarding port facexCorresponding triple, if there is no corresponding triple, this Router will add a triple (face in this route table itemsx, 1, distancex).Otherwise, if existed One corresponds to forwarding port facexTriple, it is assumed that this triple be (facex, numberxx, distancexx), It is as follows that this router will update this triple:
numberxx←numberxx+1
(7) interest bag forwarding strategy
When one router receives an interest bag, if the packet that this interest bag is asked is one effective Packet, the source server that reaches asked packet should be just maintained in the static routing table of this router Routing iinformation.If each router forwards this interest bag according to the routing iinformation in their static routing table, that This interest bag most reaches the source server of asked packet at last.Contained when in a router on being asked Packet dynamic routing information when, it is contemplated that making full use of the routing iinformation in static routing table and dynamic routing Routing iinformation in table reduces the delay required for end-user request this packet as far as possible.
In our interest bag forwarding strategy, we employ a kind of forwarding strategy based on probability.If static road The forwarding port provided by table is face1, the distance from current router to source server is distance1If, that we from Port face1This interest bag is forwarded, the delay required for we fetch asked packet is 2distance1.We Know that the route table items of each in dynamic routing table correspond to the " server-name/file- of the name of a packet Name/packet-number " parts, and each dynamic routing list item both correspond to one (face, number, Distance the list of triple as).Assuming that the port that dynamic routing table is provided is face2, current router to target The distance of router is distance2, there are m to be surrounded by the data pack buffer of identical name prefix in target with this interest Router, and source file has altogether and generates n packet.If we are from face2Forward this interest bag, it is assumed that asked Packet is present on destination router, and the delay required for we fetch this packet is 2distance2, and ask The probability that the packet asked is present on destination router isIf the packet asked is not present in destination router On, then current router also needs to ask this to the source server of packet after the error reporting that can not find packet is received Individual packet, the delay required for fetching packet this when is 2distance1+2·distance2, such case hair Raw probability isSo if we using dynamic routing table provide routing iinformation come if forwarding this interest bag We fetch being desired for for the delay required for packet So each port that we can provide to dynamic routing table and static routing table in this way calculates and obtains target The expectation of delay required for packet, then we select the minimum port of delay desired to forward this interest bag.
In fig. 2, terminal user client3An interest bag is generated to ask the name to be
The interest bag of " youtube/transformer/100/2 ".When this interest bag reaches R3When, R3By looking into It is 4 to ask static routing table to know that it arrives the distance of source server, so required for it asks this packet to source server Postpone as 8;R3Inquiry dynamic routing table knows that the packet for having 40 prefixes to be " youtube/transformer/100 " is delayed There is some router, this router can be by going to R2Port reach, this router is apart from R3Distance be 1. We are from the name of interest bag it is known that source file has altogether and is divided into 100 packets, if so R3To R2Forward this Individual interest bag, R3That fetches the delay required for asked packet is desired for 6.8.So R3This interest bag will be forwarded To R2
(8) packet is set not cache
In our buffering scheme, packet is transferred to terminal user from data set provider each time, and this packet is all It is buffered on a router that can be in its transmission path.During simulated experiment, it has been found that this buffering scheme Still serious caching redundancy can be caused, reason is that when using this buffering scheme, a data coating is connected to same side After user on edge router requests repeatedly, this packet will be buffered on this edge router.And In real network, it is ratio that the user that a data are coated with same LAN accesses repeatedly this within one section of comparison short time It is more universal, as a result have led to router of many data in competition proximal subscribers, and the caching of the router away from user Space is not utilized sufficiently then, so alleviating this we have proposed a kind of easy scheme in the actual deployment Problem.
When the supplier of packet receives an interest bag, before returned data bag, it can first check for this The URD and ARD of individual interest bag value.If this interest bagValue exceeded certain threshold value, that just illustrates this The supplier for the cache routing device range data bag that interest bag is selected in transmitting procedure is too near, therefore superfluous in order to avoid caching Remaining, the ARD values of this packet are set to -1 by we.When later router receives this packet, its ARD values are found For -1 when, these routers will not cache this packet, also will not for this packet set up dynamic router letter Breath.In our experiment, the threshold value that we select is golden section i.e. 0.618.If so data set provider discovery pair It is surrounded by an interestThen the ARD values of returned data bag will be set to -1 by this data set provider, therefore Router on the return path of this packet will not both cache this packet, also will not set up dynamic for this packet Routing iinformation.In figure 3, terminal user client1A packet is asked, therefore he have issued an interest bag.This Interest bag is finally met on server, and among the transmitting procedure of interest bag, R1It is chosen for cache routing Device.When server receives this interest bag, he has found that the ARD values of this interest bag are that 4, URD values are 5, thereforeTherefore the ARD values of returned data bag are set to -1 by server, on the return path of this packet Router will not both cache this router, also will not set up routing iinformation for this router.Terminal user client3Please A packet is sought, selected cache routing device is R1, because cache routing device range data supplier is too near, The ARD values of the packet of return are set to -1 by server, therefore the packet returned will not be buffered.
(9) to the improvement of wait interest table
During dynamic routing table being constructed in the manner described above, the dynamic routing information that we set up Can still there is obvious error.Such as in figure 3, if terminal user have issued an interest bag to ask some data Bag, this interest bag is finally met on server.In interest bag from client2During being transferred to server, Our cache policy have selected router R10As cache routing device.This when, terminal user client1Also generate One interest bag is to ask identical packet.R is reached in the packet of return4Before, client1Interest bag also reach R4, then R4The arrival port of this interest bag is added corresponding list item in its wait interest table.When the packet of return Reach R4When, according to the mechanism of name data network itself, R4Can be from arrival R7And R8Port forward respectively it is a this The copy of packet.It was noted that the information in this packet on cache routing device is according to from client2Arrive What server path was set up, and selected cache routing device is R10, so for being transmitted to R7Packet copy, when it Reach router R7When, the value that the URD of its discovery packet value is 2, ARD is 1, so it can't cache this number According to bag, but corresponding dynamic routing information is established for this packet, this routing iinformation points to and goes to client1End Mouthful.But it is understood that R7It there will be no router afterwards to cache this packet, then R7It has recorded the route letter of mistake Breath.In order to solve this problem, we (will be also applied in actual deployment) in simulation laboratory, and we are to waiting interest table Structure carried out certain change.
name1 (face1,distance1),(face2,distance2),…
name2 (face3,distance3),(face4,distance4),…
The structure of interest table is waited in this programme of table 2
The structure of wait interest table in this programme is as shown in table 2.When a router receives an interest bag, and this When individual router can not provide this packet that interest bag is asked, if no and this interest in its wait interest table It can set up the relevant information of corresponding list item and record on this interest bag for this interest bag if wrapping corresponding list item, Or if had in its wait interest table with this corresponding list item of interest bag, this router will be direct The relevant information on this interest bag is recorded, then this interest bag is abandoned.In our scheme, we are one emerging The information of interest bag record not only includes the arrival port of this interest bag, but also including this interest bag and produces its terminal The distance of user, is exactly specifically the value of the URD entrained by this interest bag.In table 2, corresponding to name1There is one two Tuple (face1, distance1), this explanation router have received an interest bag, and the name of this interest bag is name1, it Arrival port be face1, the URD values of this interest bag are distance1
So when a router receives a packet, it considers to forward this packet.This router Its wait interest table can be inquired about, if it obtains there are a two tuple (face in the wait interest table list item with its matchingx, distancex), and distancexLess than or equal to the URD of this packet value, this router will be from port facexThe ARD values of the copy forwarded are set to -1, therefore corresponding to port facexFollow-up router all without cache this Individual packet, also will not set up corresponding dynamic routing information for this packet.
The data that the present invention can be introduced in not to network under conditions of extra flow for caching in the router are built Vertical routing iinformation, one is provided effectively to solve the routing issues of the data in name data network to being cached in router Scheme, considerably reduces the delay of one packet of end-user request, greatly reduces the load of source server, and The utilization rate of the data cached in router is also greatly improved.Proved by simulated experiment, under best-case, compared to IP network The delay of one packet of end-user request reduces 34%, and the load of source server reduces 80%, is each buffered Packet is averagely used 0.8 time.And use the universal cache policy in the name data network initially proposed and static road By strategy when, the delay of one packet of end-user request reduces 19%, and the load of source server reduces 43%, each Individual buffered data have averagely been buffered 0.04 time.It can be seen that it is proposed that scheme performance will far superior to name data network Universal cache policy and static routing strategy in network.In addition, this programme can also make the data and route cached in router The data warehouse capacity of device is proportional, effectively realizes the caching load balance of router in network.
Above content is to combine specific/preferred embodiment made for the present invention be further described, it is impossible to recognized The specific implementation of the fixed present invention is confined to these explanations.For general technical staff of the technical field of the invention, Without departing from the inventive concept of the premise, it can also make some replacements or modification to the embodiment that these have been described, And these are substituted or variant should all be considered as belonging to protection scope of the present invention.

Claims (10)

1. a kind of content center network dynamic routing method based on selectivity caching, it is characterised in that
For the configuration of routers static routing table and dynamic routing table in name data network, it is respectively used in record source server The routing iinformation of the data cached in the data and router of storage;By the definition of name of packet into the source comprising the packet The number for the packet that the identifier of server, the name of the source file of the packet, the source file of the packet are divided into and Sequence number of the packet in the packet that its source file is produced;
In the interest bag during user is asked from during terminal user is transferred to data set provider, by the router passed through Dynamic changes the information in interest bag to determine cache routing device;When interest bag eventually arrives at data set provider, interest Bag the distance between is determined and recorded from terminal user to data set provider, and the packet returned from terminal user to caching The distance between cache routing device;When from data set provider returned data bag, data set provider will close in interest bag Copied in the information of selection cache routing device in the packet of return;In packet return course, a route is often reached Device, the router enters Mobile state renewal to the information recorded in packet, and according to result is updated, data pack buffer is identified On cache routing device.
2. content center network dynamic routing method as claimed in claim 1, it is characterised in that
Wrapped in each interest of name data network added with four domains, added with two domains on each packet, in interest Bag determines caching from during terminal user is transferred to data set provider by this four domains in dynamic modification interest bag Router;When interest bag eventually arrives at the supplier of asked packet, packet supplier is interest bag two The value in domain is assigned to two corresponding domains of returned data bag respectively, and the port reached from this interest bag turns this packet Beam back, wherein interest bag two domains corresponding with packet are respectively to represent between terminal user to data set provider The domain of distance, and the cache routing device of selected data cached bag is represented apart from the domain of the distance of terminal user.
3. content center network dynamic routing method as claimed in claim 2, it is characterised in that
Four domains added in each interest bag I head are URD, ARD, WT and HV respectively;The two of the head addition of packet The distance between individual domain, is URD and ARD respectively, and wherein URD have recorded from terminal user to data set provider, and ARD have recorded choosing The cache routing device of fixed data cached bag apart from terminal user distance, WT have recorded cache routing device cache a packet Weights, the i.e. capacity of its data warehouse and popularity business, HV have recorded the packet of return name and caching router Identifier cryptographic Hash;Any two character string can be hashed into one in [0,1] by pre-defining hash function a h, h Between equally distributed random number, name data network in router possess three attributes, be its identifier ID, data respectively The capacity C P and popularity PP in warehouse,
When user asks a packet, produce an interest bag and by four domain URD of the interest bag, ARD, WT and HV is set to 0, and the interest bag is when a router is reached, and the router increases the value in the URD domains of the interest bag 1, and when inquiring its data warehouse and can not provide the packet that interest bag is asked, the router is by interest bag I's WT values are assigned to w1, interest bag I HV values are assigned to v1, i.e.,
w1=I.WT, v1=I.HV,
Then the business of the volume of its data warehouse and popularity is assigned to w2, by the Hash of its identifier He the name of the packet Value is assigned to v2, i.e.,
<mrow> <msub> <mi>w</mi> <mn>2</mn> </msub> <mo>=</mo> <mfrac> <mrow> <mi>R</mi> <mo>.</mo> <mi>C</mi> <mi>P</mi> </mrow> <mrow> <mi>R</mi> <mo>.</mo> <mi>P</mi> <mi>P</mi> </mrow> </mfrac> <mo>,</mo> <msub> <mi>v</mi> <mn>2</mn> </msub> <mo>=</mo> <mi>h</mi> <mrow> <mo>(</mo> <mi>R</mi> <mo>.</mo> <mi>I</mi> <mi>D</mi> <mo>,</mo> <mi>I</mi> <mo>.</mo> <mi>n</mi> <mi>a</mi> <mi>m</mi> <mi>e</mi> <mo>)</mo> </mrow> <mo>,</mo> </mrow>
w2As the weights of one packet of router cache,
Define two variable αs1And α2And it is as follows to their assignment:
If w1< w2, then
<mrow> <msub> <mi>&amp;alpha;</mi> <mn>1</mn> </msub> <mo>=</mo> <mfrac> <mrow> <mn>2</mn> <msub> <mi>w</mi> <mn>1</mn> </msub> </mrow> <mrow> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>+</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> </mrow> </mfrac> <mo>,</mo> <msub> <mi>&amp;alpha;</mi> <mn>2</mn> </msub> <mo>=</mo> <mn>1</mn> <mo>,</mo> </mrow>
Otherwise,
<mrow> <msub> <mi>&amp;alpha;</mi> <mn>1</mn> </msub> <mo>=</mo> <mn>1</mn> <mo>,</mo> <msub> <mi>&amp;alpha;</mi> <mn>2</mn> </msub> <mo>=</mo> <mfrac> <mrow> <mn>2</mn> <msub> <mi>w</mi> <mn>2</mn> </msub> </mrow> <mrow> <msub> <mi>w</mi> <mn>1</mn> </msub> <mo>+</mo> <msub> <mi>w</mi> <mn>2</mn> </msub> </mrow> </mfrac> <mo>,</mo> </mrow>
Then, α is compared1v1And α2v2If, α2v2> α1v1, then current router is elected as when asked data are returned slow Router is deposited, the ARD values of the packet are set to the URD values of the interest bag after updating, the HV values of interest bag are updated to v2, will The WT values of interest bag are updated to w2Value, i.e.,:
ARD=URD, HV=v2, WT=w2
4. content center network dynamic routing method as claimed in claim 3, it is characterised in that
Packet is in return course, and packet often reaches a router, and the URD values of packet are subtracted 1 by the router, i.e., should The distance of packet and terminal user reduce 1, and then the router compares the URD values and ARD values of packet, if this data The URD values and ARD values of bag are equal, and the copy of the packet is buffered in locally by the router;If the URD of the packet Value is less than ARD values, shows that the packet was buffered on router before, and the router of the data pack buffer Distance with current router is ARD-URD, and the router can be reached by the arrival port of the packet;If the data The URD values of bag are more than ARD values, then illustrate that the router that the packet will be after is buffered, and the road of data pack buffer It is URD-ARD by the distance of device and current router, the port that the router can be forwarded by the packet is reached.
5. content center network dynamic routing method as claimed in claim 4, it is characterised in that
After the data pack buffer locally or for the packet is being set up routing iinformation by the router, the query router Its wait interest table safeguarded, if the list item for having matching in the wait interest table have recorded the forwarding letter of the packet Breath, then forward the copy of a packet from each port in the port list of the list item.
6. the content center network dynamic routing method as described in any one of claim 1 to 5, it is characterised in that
Each router safeguards a wait interest table, when router receives an interest bag and the router can not provide this The packet that interest bag is asked, the router first checks it waits whether having the table matched with this interest bag in interest table , if had in the wait interest table and the interest bag matching list item, directly the arrival port of the interest bag is added Enter into the port list of the list item, without forwarding the interest bag;Otherwise the router turns the interest bag from suitable port Send out, and newly-built wait interest table list item, the name of the packet and its arrival port are stored in this list item In;When packet that the interest bag is asked is returned, the packet often reaches a router, query router its etc. Interest table is treated, for each port in the port list of the wait interest table list item of matching, the router all can be from transfer Send out the copy of the packet.
7. the content center network dynamic routing method as described in any one of claim 1 to 5, it is characterised in that
Dynamic routing information is set up for the packet by current router, the routing iinformation of foundation includes the position that packet is deposited Put, the distance of deposit position and current router, and the quantity that the packet with same prefix is cached on deposit position.
8. content center network dynamic routing method as claimed in claim 7, it is characterised in that
When the identifier of the name of packet and router is carried out into Hash one random number of generation, packet is used " server-name/ in name " server-name/file-name/packet-number/sequence-number " File-name/packet-number " parts, it is the name prefix of dynamic routing list item, so that, the number of same source file Identical cryptographic Hash can be obtained on same router according to bag, is passed from same file and on same paths Defeated packet will be buffered on identical router;
When the packet cached in for router sets up dynamic routing information, for being buffered in coming from same router The packet of same file, is at most that it sets up a route table items;Further, a router only records every from its A port, which can reach how many, has the packet of same prefix, and reaches the average distance of these packets.
9. the content center network dynamic routing method as described in any one of claim 1 to 5, it is characterised in that
Using a forwarding strategy based on probability, the forwarding port provided by dynamic routing table and static routing table is counted respectively The expectation of the forward delay of an acquisition target data is calculated, then selects the minimum port of the expectation of forward delay to forward interest Bag.
10. content center network dynamic routing method as claimed in claim 9, it is characterised in that
When a router receives an interest bag, this router considers to forward this interest bag, because road now Have a static routing table and a dynamic routing table in table, have recorded respectively on the data that are stored in source server and The routing iinformation of the data of caching in the router;
It is assumed that when router R have received interest bag I, router R learns asked packet by queries static routing table The corresponding forwarding port of source server be face1, it is dist from the router R distances for reaching source server1;If router R By interest bag I from port face1Forwarding, then what router R fetched the delay that asked packet needs is contemplated to be 2 dist1;If router R inquires about its dynamic routing table, learning from current router to some may cache what is asked The distance of the router of packet is dist2, forwarding port is face2, there are m to have with the packet asked before identical The data pack buffer sewed knows the source file one of asked packet according to interest bag I name on destination router N packet is generated altogether;If router R is by this interest bag from port face2Forwarded, and the packet asked It has been buffered on destination router, then the delay that router R fetches asked packet is 2dist2, such case generation Probability beIf the packet asked is not present on destination router, then router R is received after error reporting, Need to ask this packet to the source server of packet again, the delay that router R fetches asked packet is 2 dist1+2·dist2, such case occur probability be
Router R is from port face2The delay that asked packet is fetched during forwarding interest bag is desired for:
<mrow> <mfrac> <mi>m</mi> <mi>n</mi> </mfrac> <mo>&amp;CenterDot;</mo> <mn>2</mn> <msub> <mi>dist</mi> <mn>1</mn> </msub> <mo>+</mo> <mfrac> <mrow> <mi>n</mi> <mo>-</mo> <mi>m</mi> </mrow> <mi>n</mi> </mfrac> <mo>&amp;CenterDot;</mo> <mrow> <mo>(</mo> <mn>2</mn> <msub> <mi>dist</mi> <mn>1</mn> </msub> <mo>+</mo> <mn>2</mn> <msub> <mi>dist</mi> <mn>2</mn> </msub> <mo>)</mo> </mrow> <mo>,</mo> </mrow>
Each port in calculating the port that the port provided from static routing table and dynamic routing table are provided forwards this emerging The expectation of the delay of asked packet is fetched during interest bag, and prioritizing selection postpones minimum port to forward this interest Bag.
CN201510167265.5A 2015-04-09 2015-04-09 A kind of content center network dynamic routing method based on selectivity caching Expired - Fee Related CN104753797B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510167265.5A CN104753797B (en) 2015-04-09 2015-04-09 A kind of content center network dynamic routing method based on selectivity caching

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510167265.5A CN104753797B (en) 2015-04-09 2015-04-09 A kind of content center network dynamic routing method based on selectivity caching

Publications (2)

Publication Number Publication Date
CN104753797A CN104753797A (en) 2015-07-01
CN104753797B true CN104753797B (en) 2017-08-25

Family

ID=53592931

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510167265.5A Expired - Fee Related CN104753797B (en) 2015-04-09 2015-04-09 A kind of content center network dynamic routing method based on selectivity caching

Country Status (1)

Country Link
CN (1) CN104753797B (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105188088B (en) * 2015-07-17 2019-07-12 中国科学院信息工程研究所 Caching method and device based on content popularit and node replacement rate
CN105245448B (en) * 2015-10-08 2018-05-08 中南民族大学 Name multi-service Multi-path route optimization method in data network
CN105357278B (en) * 2015-10-18 2018-06-19 北京工业大学 Name the port owned by the government caching method of data mobile ad-hoc network
CN107181775B (en) * 2016-03-10 2020-09-04 北京大学 Routing method and routing device in content-centric network
CN107196985B (en) * 2016-03-15 2020-08-07 华为技术有限公司 Data management method and device and network equipment
EP3244590B1 (en) * 2016-05-13 2018-09-26 Koninklijke KPN N.V. Network node, endpoint node and method of receiving an interest message
CN108449387A (en) * 2018-02-24 2018-08-24 中国科学院信息工程研究所 Content node in content distributing network and content distribution method
CN108650070A (en) * 2018-05-11 2018-10-12 全球能源互联网研究院有限公司 A kind of System and method for of information centre's network phasor measurement unit communication
CN109587718B (en) * 2018-12-19 2020-02-07 江山雷钧智能制造技术有限公司 Regional router control system based on mobile terminal positioning
CN109768932B (en) * 2019-03-04 2020-12-11 常熟理工学院 Method for implementing named data network
CN109905482B (en) * 2019-03-12 2021-07-30 北京工业大学 Caching method based on video live broadcast system in named data network
CN110086857B (en) * 2019-04-15 2022-01-14 哈尔滨工程大学 Information center network cache deployment method based on cache node state and position
CN110149274B (en) * 2019-05-20 2020-06-16 北京理工大学 Named data network comprehensive routing method based on position information and content push
CN110493885B (en) * 2019-08-21 2020-12-08 北京理工大学 Named data network continuous data pushing method for data fragmentation
CN110581883B (en) * 2019-08-22 2021-05-04 北京邮电大学 Content distribution method, content distribution device, content request device, and routing node
CN111262785B (en) * 2020-01-16 2021-09-28 北京工业大学 Multi-attribute probability caching method in named data network
CN111294394B (en) * 2020-01-19 2022-09-27 扬州大学 Self-adaptive caching strategy method based on complex network junction
CN111628933A (en) * 2020-05-22 2020-09-04 哈尔滨工程大学 Path caching method based on content relevance in information center network
CN111786976B (en) * 2020-06-22 2021-05-25 上海交通大学 Interest packet flooding attack detection system based on path aggregation in NDN (named data networking) network
CN112039781B (en) * 2020-09-09 2022-09-09 北京同创神州航天科技有限公司 Named data network forwarding method based on flow control
CN112866106B (en) * 2020-12-31 2023-04-18 网络通信与安全紫金山实验室 Interest packet caching method, device, equipment and storage medium
CN113660162B (en) * 2021-08-09 2024-04-09 陕西悟空云信息技术有限公司 Semi-centralized routing method and system for proximity cache perception
CN114418165A (en) * 2021-12-02 2022-04-29 杭州衣科信息技术股份有限公司 Optimal path analysis method based on dynamic road network information
CN115250265B (en) * 2022-08-15 2023-05-16 中国联合网络通信集团有限公司 Domain Name System (DNS) data synchronization method and device and domain name system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645846A (en) * 2009-09-02 2010-02-10 中兴通讯股份有限公司 Route exchange equipment and data cache method thereof
CN103118013A (en) * 2013-01-16 2013-05-22 西安电子科技大学 Method of sending data package and incidentally sending reverse interest package in content center network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645846A (en) * 2009-09-02 2010-02-10 中兴通讯股份有限公司 Route exchange equipment and data cache method thereof
CN103118013A (en) * 2013-01-16 2013-05-22 西安电子科技大学 Method of sending data package and incidentally sending reverse interest package in content center network

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
《CCN中选择性缓存机制的研究》;刘外喜,余顺争,胡晓;《计算机学报》;20140215;第37卷(第2期);全文 *
《命名数据网络中的邻居缓存路由策略》;叶润生,徐明伟;《计算机科学与探索》;20120715;第6卷(第7期);全文 *

Also Published As

Publication number Publication date
CN104753797A (en) 2015-07-01

Similar Documents

Publication Publication Date Title
CN104753797B (en) A kind of content center network dynamic routing method based on selectivity caching
Yeh et al. VIP: A framework for joint dynamic forwarding and caching in named data networks
Zhang et al. A survey of caching mechanisms in information-centric networking
Li et al. A chunk caching location and searching scheme in content centric networking
CN104247371B (en) The neighbours based on title in network centered on information have found and multi-hop service discovery
CN105812462B (en) A kind of ICN method for routing based on SDN
CN105262833B (en) A kind of the cross-layer caching method and its node of content center network
KR20140067881A (en) Method for transmitting packet of node and content owner in content centric network
CN109905480A (en) Probability cache contents laying method based on content center
Hou et al. Bloom-filter-based request node collaboration caching for named data networking
CN105656788B (en) CCN content buffering method based on popularity statistics
Xu et al. A dominating-set-based collaborative caching with request routing in content centric networking
CN108965479B (en) Domain collaborative caching method and device based on content-centric network
CN108769252A (en) A kind of ICN network pre-cache methods based on request content relevance
CN111200627A (en) Method and device for determining transfer starting port of information center network
CN112399485A (en) CCN-based new node value and content popularity caching method in 6G
WO2020007073A1 (en) Content caching method in information center network virtualization
CN108289062A (en) A kind of information centre&#39;s network structure based on software definition
Kumar et al. Cpndd: Content placement approach in content centric networking
Chaudhary et al. eNCache: Improving content delivery with cooperative caching in Named Data Networking
CN108141463A (en) For Internet of Things resource discovering and the distributive resources list based on ICN of routing
CN108093056A (en) Information centre&#39;s wireless network virtualization nodes buffer replacing method
CN107302571B (en) The routing of information centre&#39;s network and buffer memory management method based on drosophila algorithm
Cui et al. Enhanced VIP algorithms for forwarding, caching, and congestion control in named data networks
Ahmed et al. $\alpha $ Route: Routing on Names

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170825

Termination date: 20200409

CF01 Termination of patent right due to non-payment of annual fee