CN110062045A - A kind of caching method and device of content router - Google Patents
A kind of caching method and device of content router Download PDFInfo
- Publication number
- CN110062045A CN110062045A CN201910327612.4A CN201910327612A CN110062045A CN 110062045 A CN110062045 A CN 110062045A CN 201910327612 A CN201910327612 A CN 201910327612A CN 110062045 A CN110062045 A CN 110062045A
- Authority
- CN
- China
- Prior art keywords
- packet
- keyword
- target
- request
- interest packet
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
- H04L45/742—Route cache; Operation thereof
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5682—Policies or rules for updating, deleting or replacing the stored data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
The embodiment of the present application provides the caching method and device of a kind of content router, this method are as follows: parse the packet header of received first object interest packet request, obtain keyword and offset, judge whether the I/O waiting list in CS is less than and has set threshold value, if yes, first object data packet is pushed to the server for sending the request of first object interest packet, if NO, judge in pending query requests table (PIT) with the presence or absence of the keyword, for in PIT, there is no keywords, it sends keyword in FIB, keyword is subjected to routing forwarding by upstream router using FIB;The second target packet sent is received, is sent it to after the corresponding server in port according to PIT and deletes the mapping relations record, keyword is added in the data structure of Bloom filter;The problem of being able to solve CS frequent congestion using the side of the embodiment of the present application.
Description
The application be on June 29th, 2017 applying date, application No. is 201710517235.1 and entitled " a kind of
The divisional application of the non-obstruction content buffering method and device of content router ".
Technical field
This application involves high-performance router design fields, more particularly to a kind of caching method of content router
And device.
Background technique
CCN (Content-Centric Networking, content center network) network is ground by U.S.'s Palo Alto
Study carefully center (Palo Alto Research Center, abbreviation PARC) proposition.It is based on IP, with host different from traditional
Main network structure, CCN network focuses on content itself, and directly can be addressed and route by it.In CCN network,
The communication authority of client end host will be the name based on content and is no longer IP address, base of the content router as network
Infrastructure, for realizing the high speed forward for returning to message to content request message and content.There is net due to content router
It is interior can cache contents the characteristics of, it is possible to easily obtain buffered content, it is not necessary to every time from upper except CNN router
It swims router and obtains content;The feature enables content requests directly by the router response in net and no longer only end is led
Machine reduces network congestion, and improves content distribution efficiency.Although the framework of this innovation can obtain good data
Distribute efficiency, but it has overturned the end to end argument in classical IP network, gives the data plane of router certain storage
Ability, this also brings some performance burdens for it, so that the forwarding of the data grouping of CCN network is compared to traditional IP network
Become extremely complex.Therefore, the performance for improving data plane plays vital work in large-scale CCN network deployment
With.
It mainly include three component parts: forwarding information table FIB (forwarding in a CCN content router
Information base), pending query requests table (PIT) (pending interest table) and content memorizer CS (content
Store), as shown in Figure 1.CCN router has been divided into three assembly lines when handling data grouping by these three component parts.
There are mainly two types of the types of data grouping in network: interest packet (Interest) and data packet (Data).User terminal sends interest
Request content in network is wrapped, and the form that the content returned will be packaged into data packet is taken back.Content can be stored in net
On CCN router in network, in this way, subsequent identical request need not just be forwarded to server-side, and directly on routing node just
It can be processed.
Referring to Fig. 1, process flow of the brief introduction tradition CCN content router to data grouping are as follows: when interest packet reaches the road CCN
When by device, first look for whether CS has its requested content, if so, then router can read corresponding contents and be encapsulated
It is directly returned at data packet, otherwise, interest packet can enter PIT and search whether that there are the prefixes of identical request content name.Such as
Fruit exists, and illustrates that upstream router has initiated request before the content, there is no need to swim forwarding again up, and only needs
The interface message record for increasing the inbound port of interest packet request newly in PIT, otherwise other than adding relative recording in PIT,
It also needs upstream to continue to forward by FIB by interest packet.
When data packet returns to current router from upstream router, router can search the record of PIT first, if
Interest packet requests the ingress port information write down before capable of finding, and just forwards to downstream data packet from these interfaces and routes
Device, while the caching of content can be also carried out according to certain cache policy in CS, if can not find respective record in PIT,
Then directly abandon the data packet.It follows that data packet always takes the path opposite with corresponding interest packet.
From the foregoing, it will be observed that the data packet of traditional CCN is primarily present in CS, nearly all interest packet stream amount will all exist first
Dissection process is carried out in CS, and partial discharge just can successively be forwarded in PIT, FIB and handle, in addition, the processing speed ratio of CS
PIT, FIB are slow, therefore are bound to cause the frequent congestion of CS.
Summary of the invention
The caching method and device for being designed to provide a kind of content router of the embodiment of the present application solve CS and frequently gather around
The problem of plug.
Specific technical solution is as follows:
A kind of caching method of content router, which comprises
The packet header of received first object interest packet request is parsed, the keyword and partially of first object interest packet request is obtained
Shifting amount, wherein packet header includes the prefix and offset of the content name of institute's request content, and the prefix is as the keyword;
Judge whether the I/O waiting list in CS is less than and has set threshold value;
If being less than and having set threshold value, according to the keyword and offset of first object interest packet request, searched for from CS
Content corresponding with the keyword of first object interest packet request, and first object data packet is pushed to and sends the first mesh
Mark interest packet request server, wherein include in first object data packet searched in CS it is emerging with the first object
The corresponding content of keyword of interest packet request;
If judging in pending query requests table (PIT) not less than threshold value has been set with the presence or absence of first object interest packet request
Keyword;
If it does not exist, the mapping between the keyword and inbound port for increasing the first object interest packet request in PIT
The keyword that the first object interest packet is requested is forwarded in forwarding information table FIB by relation record, will be described using FIB
Upstream router carries out routing forwarding to the keyword of first object interest packet request, wherein the inbound port is described first
The request of target interest packet enters the port of router;
If it exists, judge to record in PIT with the presence or absence of the mapping relations;
If it does not exist, increase the mapping relations record in PIT;
Receive the second target packet that upstream router is sent, wherein include upstream in second target packet
The corresponding content of keyword for the first object interest packet request that router is sent;
The packet header of the second target packet is parsed, the keyword of second target packet is obtained, by second mesh
The keyword of mark data packet is forwarded in PIT;
According to the mapping relations record recorded in PIT, the inbound port is sent by second target packet
The mapping relations record is deleted after corresponding server, and the keyword of second target packet is added to the grand filtering of cloth
In the data structure of device.
Further, it is recorded according to the mapping relations recorded in PIT, sends second target packet to
The mapping relations record is deleted after the corresponding server of the inbound port, and the keyword of second target packet is added
After into the data structure of Bloom filter, the method also includes:
The second target packet is stored in CS using the offset that the first object interest packet is requested.
Further, according to the first object interest packet request keyword and offset, from CS search with it is described
The corresponding content of keyword of first object interest packet request, and first object data packet is pushed to and sends first object interest
Wrap the server of request, wherein include asking with the first object interest packet of searching in CS in first object data packet
The corresponding content of the keyword asked, comprising:
According to the keyword that the first object interest packet is requested, first object I/O is instructed using the main thread of CS and is passed
It is sent in sub thread, wherein the first object I/O instruction is the pass that search is requested with the first object interest packet from CS
The instruction of the corresponding content of key word;
The first object data packet that sub thread is retrieved by the offset that the first object interest packet is requested is received, it will
The first object data packet is pushed to the server for sending the first object interest packet request, wherein first object data
It include the content corresponding with the keyword of first object interest packet request searched in CS in packet.
Further, the second target packet is stored in CS using the offset that the first object interest packet is requested
In, comprising:
According to second target packet, the second target I/O instruction is transmitted in sub thread using the main thread of CS,
Wherein, the second target I/O instruction is the instruction being stored in the second target packet in CS;
Second target packet is carried out by the offset that the first object interest packet is requested using sub thread
Storage.
Further, in the packet header for parsing the second target packet, the keyword of second target packet is obtained, it will
After the keyword of second target packet is forwarded in PIT, further includes:
Judge the keyword that whether there is second target packet in the PIT;
It is recorded if it is, executing according to the mapping relations recorded in PIT, sends second target packet to
The mapping relations record is deleted after the corresponding server of the inbound port, and the keyword of second target packet is added
To the step in the data structure of Bloom filter;
If it has not, second target packet is abandoned.
A kind of buffer storage of content router, described device include:
Interest packet request analysis module obtains the first mesh for parsing the packet header of received first object interest packet request
Mark the keyword and offset of the request of interest packet, wherein packet header includes the prefix and offset of the content name of institute's request content,
The prefix is as the keyword;
I/O waiting list judgment module, whether the I/O waiting list for judging in CS, which is less than, has set threshold value;If being less than
Threshold value has been set, content search module is triggered, if triggering first judgment module not less than threshold value has been set;
The content search module, keyword and offset for being requested according to the first object interest packet, from CS
It is middle to search for content corresponding with the keyword that the first object interest packet is requested, and first object data packet is pushed to transmission
The server of first object interest packet request, wherein include being searched in CS with described first in first object data packet
The corresponding content of keyword of target interest packet request;
The first judgment module is asked in pending query requests table (PIT) with the presence or absence of the first object interest packet for judging
The keyword asked;If it does not exist, upstream router module is triggered, if presence, triggers mapping relations judgment module;
The upstream router module, for increasing the keyword of first object interest packet request in PIT and entering
Mapping relations record between port, the keyword that the first object interest packet is requested is forwarded in forwarding information table FIB,
Upstream router carries out routing forwarding to the keyword for being requested the first object interest packet using FIB, wherein described to enter to hold
Mouth is the port that first object interest packet request enters router;
The mapping relations record judgment module, record in PIT with the presence or absence of the mapping relations for judging;If no
In the presence of the first PIT module of triggering;
The first PIT module, for increasing the mapping relations record in PIT;
Packet-receiving module, for receiving the second target packet of upstream router transmission, wherein second mesh
Mark the corresponding content of keyword of the first object interest packet request sent in data packet including upstream router;
Parsing module obtains the keyword of second target packet for parsing the packet header of the second target packet,
The keyword of second target packet is forwarded in PIT;
2nd PIT module, for being recorded according to the mapping relations recorded in PIT, by second target packet
The mapping relations record is deleted after being sent to the corresponding server of the inbound port, by the key of second target packet
Word is added in the data structure of Bloom filter.
The caching method and device of a kind of content router provided by the embodiments of the present application, can be by parsing received the
The packet header of one target interest packet request obtains the keyword and offset of the request of first object interest packet, utilizes Bloom filter
Judge that the corresponding content of keyword of the first object interest packet request whether there is in content memorizer CS;If it is,
According to the keyword and offset of first object interest packet request, search is requested with the first object interest packet from CS
The corresponding content of keyword, and by first object data packet be pushed to send first object interest packet request server;It should
Method solves the problems, such as the frequent congestion of CS, to take full advantage of PIT, FIB, reduces the queuing delay of flow, improves
The overall performance of content router.Certainly, any product or method for implementing the application must be not necessarily required to reach above simultaneously
All advantages.Certainly, any product or method for implementing the application must be not necessarily required to reach above-described simultaneously
All advantages.
Detailed description of the invention
In order to illustrate the technical solutions in the embodiments of the present application or in the prior art more clearly, to embodiment or will show below
There is attached drawing needed in technical description to be briefly described, it should be apparent that, the accompanying drawings in the following description is only this
Some embodiments of application for those of ordinary skill in the art without creative efforts, can be with
It obtains other drawings based on these drawings.
Fig. 1 is flow chart of the tradition CCN content router to data packet transaction;
Fig. 2 is the non-obstruction content buffering method process for the first content router that present specification embodiment provides
Figure;
Fig. 3 is that CCN router packet handles mathematical model schematic diagram;
Fig. 4 is the non-obstruction content buffering method process for second of content router that present specification embodiment provides
Figure;
Fig. 5 is the non-obstruction content buffering method process for the third content router that present specification embodiment provides
Figure;
Fig. 6 is the structure of the non-obstruction content caching device for second of content router that present specification embodiment provides
Schematic diagram
Fig. 7 is a kind of electronic equipment schematic diagram that present specification embodiment provides.
Specific embodiment
Below in conjunction with the attached drawing in the embodiment of the present application, technical solutions in the embodiments of the present application carries out clear, complete
Site preparation description, it is clear that described embodiments are only a part of embodiments of the present application, instead of all the embodiments.It is based on
Embodiment in the application, it is obtained by those of ordinary skill in the art without making creative efforts every other
Embodiment shall fall in the protection scope of this application.
Fig. 2 is the process of the non-obstruction content buffering method for the first content router that present specification embodiment provides
Figure, which comprises
S101 parses the packet header of received first object interest packet request, obtains the key of first object interest packet request
Word and offset, wherein packet header includes the prefix and offset of the content name of institute's request content, and the prefix is as the pass
Key word;
Wherein, the packet header of the received first object interest packet request of above-mentioned parsing can be by receiving first object interest packet
Request is obtained using the packet header of header parser module (Packet parser) the parsing first object interest packet request of state machine
The keyword of first object interest packet request;The header parser module of above-mentioned state machine is one and receives first object for parsing
The module of interest packet request;
Above-mentioned interest packet is a kind of type of data packet, possesses a content name, while the title is encrypted signature.Interest
Packet is it can be appreciated that in CCN network, and user tells the demand of network oneself by sending interest packet, and network is according to these letters
Breath is to look for content packet required for user.It only needs to indicate data name when user's request data, without stating which goes
Obtain related resource;
Above-mentioned packet header is the stem (packet header) of data grouping, name prefix, offset including content;
Above-mentioned offset refers to the byte number being moved forward or rearward from designated position, and offset is for looking for from file
When to data used.
S102 judges the corresponding content of keyword of the first object interest packet request in content using Bloom filter
It whether there is in memory CS, if it has not, S104 is executed, if it is, executing S103;
Wherein, above-mentioned Bloom filter (Bloom Filter) is a very long binary vector and a series of reflects at random
Function is penetrated, Bloom filter is for retrieving an element whether in a set, if it is, the element is not necessarily being gathered
In;If it has not, the element is not centainly in set;That is, the Bloom filter in present specification is described for judging
The corresponding content of keyword of first object interest packet request is with the presence or absence of in CS (content store);Bloom filter
Advantage is space efficiency and query time all considerably beyond general algorithm.
Although it is inserted into it is noted that the query result of Bloom filter cannot obtain the storage address of content
All it is constant with query time, is based on this, CS can quickly judges that the content of request whether there is on this router.Separately
Outside, compared to other index data structures, such as hash table and binary tree, the EMS memory occupation of Bloom filter is smaller.So
Design data grouping first passes through the inquiry of Bloom filter in scheme, if it is judged that in set, then carry out content storage
The lookup of address and asynchronous reading of content operate;If not, request quickly can be sent to PIT and continue subsequent point by CS
The processing of group.
The setting of Bloom filter (Bloom Filter) is to make up the performance of traditional CCN router in the presence of easy
The defect of congestion, for the purpose that more clearly description present specification is invented, now specific reasoning is as follows:
As shown in Figure 1, according to traditional CCN content router to the process flow of data grouping it is found that CCN router is taken out
As the queue-pipelining processing for both direction, each direction is made of several queues and information desk, as shown in Figure 3.Packet
Can next be gone with certain forwarding probability selection when leaving each queue where, packet can by queue block and be lined up
It waits, can be also dropped because queue is fully loaded.
It makes the following assumptions:
(1) each part in framework be abstracted into a first in, first out (First Input First Output,
FIFO packet buffering is responsible in queue and one-server), queue, and information desk is then to carry out packet processing.
(2) it is a Poisson flow that packet, which reaches each queue,.
(3) it wraps and obeys quantum condition entropy in the service time of each information desk.
(4) each part in framework can be seen as the queuing system of a M/M/1.
(5) transmission rate of the packet between two parts be smoothly, be able to use open queuing network (Jackson network,
Jackson network derives from James R Jackson.1963.Jobshop-like queueing
Systems.Management science 10,1 (1963), 131-142) CCN packet process flow is modeled.
The flow that above-mentioned Poisson flow can be understood as reaching is known as Poisson flow according to the process that following condition is inputted, then
Following condition are as follows:
1) stationarity, section [a, a+t) in have k number according to be grouped into come probability it is unrelated with starting point a, with the time
Length t is related.
2) markov property, the probability distribution that number of data packets is reached in disjoint intervals are independent from each other.
3) universality, length be t time interval at least reach two data groupings probability be t high-order it is infinite
In a small amount.
4) finiteness, the probability that limited data grouping is reached in any finite interval is 1.
In the model established using CCN packet process flow, CS and PIT are interior there are two the queue in direction, respectively correspond emerging
The processing queue of interest packet and data packet, and the queue in only one direction FIB, only handle interest packet.Some symbols in model
Is defined as: λ is interest packet average arrival rate, TiFor the average throughput of i-th of queue, μiFor the average service of i-th of information desk
Rate, α are the CS hit rate of interest packet, and β is the PIT hit rate of interest packet, and θ is the FIB hit rate of interest packet, and τ is interest Bao Ping
It leaving away rate, λ ' is data packet average arrival rate,For data pack buffer rate, τ ' wraps rate of averagely leaving away, ρ to be data cachedi
For the utilization rate of i-th of information desk.
According to Jackson network it is found that for each queue, after system is in steady state, the average arrival rate of packet
It should be equal to rate of averagely leaving away.Assuming that the interest packet average arrival rate for being externally entering CCN router is λ, have:
Similarly, for data packet, have:
If not considering packet loss, the response of an a data packet always interest packet just can guarantee the balance of flow.Institute
With, the rate τ that leaves away of interest packet should be approximately equal to the arrival rate λ ' of data packet, then has:
τ≈λ′ (3)
Joint type (1), formula (2) and formula (3), the system that can be calculated are in handling up for each queue after stable state
Rate:
The M/M/1 queuing system recorded according to document " performance analysis of communication base " is theoretical, the utilization rate of each information desk
ρiAre as follows:
Obviously, queue overload overflows in order to prevent, it is desirable that the throughput T of queue under steady stateiNo more than information desk
Service rate μi, i.e., the utilization rate of information desk is no more than 1.
Wherein, above-mentioned throughput indicates the data volume for passing through some network (or channel, interface) within the unit time.
Above-mentioned overload, which is overflowed, alreadys exceed preset capacity for the data volume of queue for storing, prevent follow-up data is from normal
It stores and is dropped.
It brings formula (4) into formula (5), following inequality can be obtained:
It follows that the maximum throughput rate of router is exactly the maximum arrival rate of the 1st queue interest packet, by it is following about
Beam:
Due to α, β, θ andIt is less than 1 parameter, so the service rate of CS causes entire router known to formula (7)
Performance there is bottleneck, unless its service rate μ1Greater than the service rate of other queues.That is, if service rate μ1No
Sufficiently large, then CS will overload the enqueue of interest packet, and other queues will be continually in idle condition, so that entirely
Router is not efficient enough.
In addition, normally, CS has more frequent accessing operation compared to PIT and FIB, this will lead to the service rate of CS
It is hardly higher than the service rate of PIT and FIB.
Therefore, present specification needs to improve the service rate of CS, makes it higher than the service rate of PIT and FIB.
Above-mentioned another embodiment: after S102, further includes: judge whether the I/O waiting list in CS is less than
If threshold value, threshold value is set if being less than, has executed S103, if executing S104 not less than threshold value has been set;
Above-mentioned I/O waiting list be in order to when initiation I/O instruction cannot be immediately performed when, to the I/O instruct into
The data structure of row storage can be realized by linear list or chained list.
It should be noted that when a CCN router need reading of content it is requested more when, it will be lined up etc.
Wait may cause congestion, this will also tend to decline CS process performance, at this time if a part request is forwarded to load pressure
The little upstream router processing of power, can be improved the treatment effeciency of the whole network instead.Then, an I/O waiting list is designed, when
The content of interest packet request is judged after being present on this router by Bloom filter, and it is corresponding different will to enter this queue waiting
Walk the initiation of read operation.And certain length threshold can be arranged in this queue, if the length of current queue reaches threshold value, just
The request of spilling is sent to PIT, gives upstream router processing.Although that is, interest packet at CS can successful hit,
Since CS has been fully loaded at this time, these interest packets will overflow, and be forwarded to it in a manner of a kind of do one's best and route road
It is handled in the router of a light load on diameter.
S103, according to the keyword and offset of first object interest packet request, the search and described first from CS
The corresponding content of keyword of target interest packet request, and first object data packet is pushed to transmission first object interest packet and is asked
The server asked, wherein include being requested with the first object interest packet of being searched in CS in first object data packet
The corresponding content of keyword;
Wherein, the above-mentioned search content corresponding with the keyword that the first object interest packet is requested from CS is understood that
There to be the content to match with the keyword of first object interest packet request in CS.
It should be noted that first object interest packet, which requests corresponding server to can be understood as user, sends first object
The server of interest packet request.
Specifically,
According to the keyword that the first object interest packet is requested, first object I/O is instructed using the main thread of CS and is passed
It is sent in sub thread, wherein the first object I/O instruction is the pass that search is requested with the first object interest packet from CS
The instruction of the corresponding content of key word;
The first object data packet that sub thread is retrieved by the offset that the first object interest packet is requested is received, it will
The first object data packet is pushed to the server of the transmission first object interest packet request wherein, first object data packet
In include searched in CS with the corresponding content of keyword of first object interest packet request.
Wherein, the main thread of above-mentioned CS is the thread being just created when the program starting of CS structure.
Above-mentioned I/O instruction can be understood as the instruction for entering data into or exporting.
It should be noted that because in network the inner capacities that needs to cache be it is very huge, have to using big
The storage medium of capacity builds CS, and just becomes extremely important for CS to the I/O operation efficiency of these contents.Mostly
Several I/O requests are obstructive types, this causes the control of program until can just release after the completion of I/O, so that CS
The processing of subsequent interest packet is needed to be influenced by the I/O access time delay of front, caused by access time delay be unnecessary.Very
Obviously, in the network flow treatment process of high speed, this obstruction mode will be inefficient, increase the flat of data grouping
Equal queuing delay.Therefore, it in order to return to control immediately, proposes to operate using asynchronous I/O, the asynchronous I/O operation are as follows:
As soon as after main thread, which initiates an I/O, to be instructed, as soon as the instruction is handled by newly-built sub thread, and the control energy of main thread
It returns to handle next request immediately.Have benefited from this, it, with that can be with after CS successfully has issued the instruction of asynchronous reading
The processing for immediately continuing with subsequent interest packet waits the I/O to instruct end of operation without blocking;And when CS receives asynchronous reading
When operating the notice completed, then it is encapsulated into data packet return.
S104 judges with the presence or absence of the keyword of first object interest packet request in pending query requests table (PIT), if not depositing
Executing S105, and if it exists, execute S106
Wherein, it can be understood as PIT with the presence or absence of the keyword of first object interest packet request in above-mentioned judgement PIT
In may have in advance and the identical keyword of keyword of first object interest packet request.
S105, the mapping relations between the keyword and inbound port for increasing the first object interest packet request in PIT
The keyword that the first object interest packet is requested is forwarded in forwarding information table FIB by record, using FIB by described first
Upstream router carries out routing forwarding to the keyword of target interest packet request, wherein the inbound port is the first object
The request of interest packet enters the port of router;
Wherein, above-mentioned mapping relations include the keyword of first object interest packet request, inbound port and therebetween
Corresponding relationship;
Above-mentioned PIT is the map information for recording key and corresponding inbound port, and above-mentioned inbound port can be understood as
When each target interest packet request enters the port of CCN router, the port has mapping relations with corresponding keyword,
That is, the corresponding keyword in port that each target interest packet request enters router.
Wherein, during upstream router is routing forwarding, the next hop router that is shown according to routing table.
Upstream router carries out routing forwarding to the above-mentioned keyword for being requested the first object interest packet using FIB
A kind of embodiment can be with are as follows: using the keyword of first object interest packet request, searches for from FIB and upstream routes
Device forwards the exit port of the corresponding CCN router of keyword of the first object interest packet request, will according to the exit port
Upstream router carries out routing forwarding to the keyword of the first object interest packet request.
It should be noted that by judging there is content identical with the keyword in PIT, to decide whether to described
Keyword, that is, first object interest packet request keyword carries out routing forwarding.That is, interest packet can be into PIT lookup
No there are the prefixes of identical request content name, if it does, upstream router has been initiated before illustrating the content
Request there is no need to swim forwarding again up, and need to only increase the mapping relations including ingress port information record newly in PIT
Record also needs upstream to continue to forward by FIB by interest packet otherwise other than adding relative recording in PIT.
In addition, by the way that keyword identical with the keyword is not present known to retrieval in PIT, not only need by it is described enter
Port information is added in PIT, so that the first object data packet that will be searched is sent to the corresponding server of the inbound port
In;FIB is sent by the keyword that the first object interest packet is requested, is upper in order to be passed through the keyword using FIB
It swims router and carries out routing forwarding, so as to the first object with the keyword match of first object interest packet request of search
Data packet.
It is noted that increasing mapping relations in PIT, also means that and increase the ingress port information, mesh
Be for the corresponding server of the delivery port for finding first object data packet, that is to say, that first object data packet is root
It is transmitted according to the ingress port information record of PIT record.
S106 judges to record in PIT with the presence or absence of the mapping relations;If being not present, S107 is executed;
Wherein, above-mentioned judgement can be understood as to deposit in advance in PIT in PIT with the presence or absence of mapping relations record
Have and keyword keyword identical with inbound port mapping relations, inbound port and the two of first object interest packet request
Between mapping relations.
S107 increases the mapping relations record in PIT;
Based on situation described above, the purpose for increasing the mapping relations record in PIT increases also in PIT
The corresponding server of delivery port of first object data packet is added as finding, that is to say, that first object data packet is basis
What the ingress port information record of PIT record was transmitted.
S108 receives the second target packet that upstream router is sent, wherein include in second target packet
The corresponding content of keyword for the first object interest packet request that upstream router is sent;
Based on the above situation, according to matching in CS there is no the keyword requested with the first object interest packet
Hold or CS in I/O waiting list expired, require to seek to search for from upstream router, wherein the second target data
Packet is exactly the content to match with the keyword of first object interest packet request obtained by upstream router.
S109 parses the packet header of the second target packet, obtains the keyword of second target packet, by described the
The keyword of two target packets is forwarded in PIT;
Wherein, the packet header of above-mentioned the second target packet of parsing can use the header parser module of state machine to the second mesh
The packet header of mark data packet is parsed;
It should be noted that when obtaining the second target packet sent by upstream router, it is also desirable to described the
The packet header of two target packets is parsed, in order to by the content of second target packet and interest packet request into
Row matching, also for quickly caching the second target packet.
After S109, further includes:
Judge the keyword that whether there is second target packet in the PIT;
If it is, executing S110;
If it has not, second target packet is abandoned.
S110 is recorded according to the mapping relations that record in PIT, by second target packet be sent to it is described enter
The mapping relations record is deleted after the corresponding server in port, and the keyword of second target packet is added to Bu Long
In the data structure of filter.
Wherein, the above-mentioned keyword by second target packet is added to the mesh in the data structure of Bloom filter
Be data structure in order to update Bloom filter, in case whether having in next target interest packet request inquiry CS therewith
With the keyword when content matched.
The above-mentioned deletion mapping relations record is in order not to repeat to give the same inbound port feelings that indifferent to packet is requested again
The second target packet is pushed under condition.
It can be seen that the problem of this method is by increasing Bloom filter, not only solving CS frequent congestion, also fully
PIT and FIB is utilized, reduces the queuing delay of flow, improves the overall performance of content router.
Based on the above situation, after the keyword for obtaining second target packet, the second number of targets can be utilized
It compares and matches with the PIT keyword stored according to the keyword of packet, obtain the keyword with second target packet
The information matched, at the same be quickly found out send it is emerging with the port information i.e. first object of stating the matched router of the second target packet
Interest packet request enters the port information of router;
Above-mentioned a kind of embodiment are as follows: after S110, the method can also include:
Second target packet is stored in CS using the offset that the first object interest packet is requested.
Wherein, it is convenient when being for the request inquiry of interest packet next time second target packet to be stored in CS,
Abundant CS content.
Specifically,
According to second target packet, the second target I/O instruction is transmitted in sub thread using the main thread of CS,
Wherein, the second target I/O instruction is the instruction being stored in the second target packet in CS;
Second target packet is carried out by the offset that the first object interest packet is requested using sub thread
Storage.
It can be seen that above-mentioned embodiment is grasped in the network flow treatment process of high speed by using asynchronous I/O
Make and increase Bloom filter, the problem of reducing the average queuing delay of data grouping, not only solve CS frequent congestion, also
It is sufficiently used PIT and FIB, reduces the queuing delay of flow, improves the overall performance of content router.
Fig. 4 is the non-obstruction content buffering method for second of content router for realizing that present specification embodiment provides
Flow chart, which comprises
S201 parses the packet header of received first object interest packet request, obtains the key of first object interest packet request
Word and offset, wherein packet header includes the prefix and offset of the content name of institute's request content, and the prefix is as the pass
Key word;
S202 judges whether the I/O waiting list in CS is less than and has set threshold value;Threshold value has been set if being less than, has executed S203, if
Not less than threshold value has been set, S204 is executed;
S203, according to the keyword and offset of first object interest packet request, the search and described first from CS
The corresponding content of keyword of target interest packet request, and first object data packet is pushed to transmission first object interest packet and is asked
The server asked, wherein include being requested with the first object interest packet of being searched in CS in first object data packet
The corresponding content of keyword;
Specifically, according to the keyword that the first object interest packet is requested, using the main thread of CS by first object I/O
Instruction is transmitted in sub thread, wherein the first object I/O instruction is asked to search for from CS with the first object interest packet
The instruction of the corresponding content of the keyword asked;
The first object data packet that sub thread is retrieved by the offset that the first object interest packet is requested is received, it will
The first object data packet is pushed to the server for sending the first object interest packet request, wherein first object data
It include the content corresponding with the keyword of first object interest packet request searched in CS in packet.
S204 judges in pending query requests table (PIT) with the presence or absence of the keyword of first object interest packet request;If not depositing
Executing S205, and if it exists, execute S206;
S205, the mapping relations between the keyword and inbound port for increasing the first object interest packet request in PIT
The keyword that the first object interest packet is requested is forwarded in forwarding information table FIB by record, using FIB by described first
Upstream router carries out routing forwarding to the keyword of target interest packet request, wherein the inbound port is the first object
The request of interest packet enters the port of router;
S206 judges to record in PIT with the presence or absence of the mapping relations;If it does not exist, S207 is executed;
S207 increases the mapping relations record in PIT;
S208 receives the second target packet that upstream router is sent, wherein include in second target packet
The corresponding content of keyword for the first object interest packet request that upstream router is sent;
S209 parses the packet header of the second target packet, obtains the keyword of second target packet, by described the
The keyword of two target packets is forwarded in PIT;
After S209, comprising:
Judge the keyword that whether there is second target packet in the PIT;
It is recorded if it is, executing according to the mapping relations recorded in PIT, sends second target packet to
The mapping relations record is deleted after the corresponding server of the inbound port, and the keyword of second target packet is added
To the step in the data structure of Bloom filter;
If it has not, second target packet is abandoned.
S210 is recorded according to the mapping relations that record in PIT, by second target packet be sent to it is described enter
The mapping relations record is deleted after the corresponding server in port, and the keyword of second target packet is added to Bu Long
In the data structure of filter.
After S210, comprising: deposited the second target packet using the offset that the first object interest packet is requested
Storage is in CS.
Specifically,
According to second target packet, the second target I/O instruction is transmitted in sub thread using the main thread of CS,
Wherein, the second target I/O instruction is the instruction being stored in the second target packet in CS;
Second target packet is carried out by the offset that the first object interest packet is requested using sub thread
Storage.
Fig. 5 is the process of the non-obstruction content buffering method for the third content router that present specification embodiment provides
Figure, which comprises
S301 parses the packet header of received first object interest packet request, obtains the key of first object interest packet request
Word and offset, wherein packet header includes the prefix and offset of the content name of institute's request content, and the prefix is as the pass
Key word;
S302 judges the corresponding content of keyword of the first object interest packet request in content using Bloom filter
It whether there is in memory CS, if it does not exist, execute S305, and if it exists, execute S303;
S303 judges whether the I/O waiting list in CS is less than and has set threshold value, has set threshold value if being less than, has returned and execute
S304, if executing S305 not less than threshold value has been set;
S304, according to the keyword and offset of first object interest packet request, the search and described first from CS
The corresponding content of keyword of target interest packet request, and first object data packet is pushed to transmission first object interest packet and is asked
The server asked, wherein include being requested with the first object interest packet of being searched in CS in first object data packet
The corresponding content of keyword;
S305 judges in pending query requests table (PIT) with the presence or absence of the keyword of first object interest packet request;If not
In the presence of execution S306, and if it exists, execute S307;
S306, the mapping relations between the keyword and inbound port for increasing the first object interest packet request in PIT
The keyword that the first object interest packet is requested is forwarded in forwarding information table FIB by record, using FIB by described first
Upstream router carries out routing forwarding to the keyword of target interest packet request, wherein the inbound port is the first object
The request of interest packet enters the port of router;
S307 judges to record in PIT with the presence or absence of the mapping relations;If it does not exist, S208 is executed;
S308 increases the mapping relations record in PIT;
S309 receives the second target packet that upstream router is sent, wherein include in second target packet
The corresponding content of keyword for the first object interest packet request that upstream router is sent;
S310 parses the packet header of the second target packet, obtains the keyword of second target packet, by described the
The keyword of two target packets is forwarded in PIT;
S311 judges the keyword that whether there is second target packet in the PIT;If it is, S312 is executed,
If it has not, S313;
S312 sends second target packet to according to the ingress port information of PIT record and corresponding keyword
The mapping relations record is deleted after the corresponding server of the inbound port, and the keyword of second target packet is added
Into the data structure of Bloom filter;
S313 abandons second target packet.
It can be seen that this method not only solves CS frequency by increasing the limitation of Bloom filter and I/O waiting list
The problem of numerous congestion, is also sufficiently used PIT and FIB, reduces the queuing delay of flow, improves the whole of content router
Body performance.
Fig. 6 is the structure of the non-obstruction content caching device for second of content router that present specification embodiment provides
Schematic diagram, described device include:
Interest packet request analysis module 501 obtains first for parsing the packet header of received first object interest packet request
The keyword and offset of target interest packet request, wherein packet header includes the prefix and offset of the content name of institute's request content
Amount, the prefix is as the keyword;
I/O waiting list judgment module 502, whether the I/O waiting list for judging in CS, which is less than, has set threshold value;If small
In having set threshold value, content search module 503 is triggered, if triggering first judgment module 504 not less than threshold value has been set;
The content search module 503, keyword and offset for being requested according to the first object interest packet, from
Content corresponding with the keyword that the first object interest packet is requested is searched in CS, and first object data packet is pushed to hair
The server for sending first object interest packet to request, wherein include being searched in CS with described the in first object data packet
The corresponding content of keyword of one target interest packet request;
The first judgment module 504, for judging in pending query requests table (PIT) with the presence or absence of the first object interest packet
The keyword of request;If it does not exist, upstream router module 505 is triggered, if presence, triggers mapping relations judgment module 506;
The upstream router module 505, for increase in PIT the keyword of first object interest packet request with
Mapping relations record between inbound port, is forwarded to forwarding information table FIB for the keyword that the first object interest packet is requested
In, upstream router carries out routing forwarding to the keyword for being requested the first object interest packet using FIB, wherein described
Inbound port is the port that first object interest packet request enters router;
The mapping relations record judgment module 506, record in PIT with the presence or absence of the mapping relations for judging;
If it does not exist, the first PIT module 507 is triggered;
The first PIT module 507, for increasing the mapping relations record in PIT;
Packet-receiving module 508, for receiving the second target packet of upstream router transmission, wherein described the
It include the corresponding content of keyword for the first object interest packet request that upstream router is sent in two target packets;
Parsing module 509 obtains the key of second target packet for parsing the packet header of the second target packet
The keyword of second target packet is forwarded in PIT by word;
2nd PIT module 510, for being recorded according to the mapping relations recorded in PIT, by second target data
Packet deletes the mapping relations record after being sent to the corresponding server of the inbound port, by the pass of second target packet
Key word is added in the data structure of Bloom filter.
Described device further include:
Second target packet is stored in by memory module, the offset for being requested using the first object interest packet
In CS.
Second judgment module, the keyword for judging to whether there is second target packet in the PIT;If
It is to trigger the 2nd PIT module;If it has not, triggering discard module;
The discard module, for abandoning second target packet.
The content search module 503 includes:
First main thread submodule, the keyword for being requested according to the first object interest packet, utilizes the main line of CS
First object I/O instruction is transmitted in sub thread by journey, wherein first object I/O instruction for from CS search with it is described
The instruction of the corresponding content of keyword of first object interest packet request;
First sub thread submodule is retrieved for receiving sub thread by the offset that the first object interest packet is requested
The first object data packet is pushed to the service for sending the first object interest packet request by the first object data packet arrived
Device, wherein include the keyword pair with first object interest packet request searched in CS in first object data packet
The content answered.
The memory module includes:
Second main thread submodule, for according to second target packet, using the main thread of CS by the second target
I/O instruction is transmitted in sub thread, wherein the second target I/O instruction is that the second target packet is stored in CS
Instruction;
Second sub thread submodule, the offset for being requested using sub thread by the first object interest packet is to institute
The second target packet is stated to be stored.
A kind of electronic equipment provided by the embodiments of the present application, as shown in fig. 7, comprises processor 601, communication interface 602,
Memory 603 and communication bus 604, wherein processor 601, communication interface 602, memory 603 are complete by communication bus 604
At mutual communication,
Memory 603, for storing computer program;
Processor 601 when for executing the program stored on memory 603, realizes following steps:
The packet header of received first object interest packet request is parsed, the keyword and partially of first object interest packet request is obtained
Shifting amount, wherein packet header includes the prefix and offset of the content name of institute's request content, and the prefix is as the keyword;
Judge whether the I/O waiting list in CS is less than and has set threshold value;
If being less than and having set threshold value, according to the keyword and offset of first object interest packet request, searched for from CS
Content corresponding with the keyword of first object interest packet request, and first object data packet is pushed to and sends the first mesh
Mark interest packet request server, wherein include in first object data packet searched in CS it is emerging with the first object
The corresponding content of keyword of interest packet request;
If judging in pending query requests table (PIT) not less than threshold value has been set with the presence or absence of first object interest packet request
Keyword;
If it does not exist, the mapping between the keyword and inbound port for increasing the first object interest packet request in PIT
The keyword that the first object interest packet is requested is forwarded in forwarding information table FIB by relation record, will be described using FIB
Upstream router carries out routing forwarding to the keyword of first object interest packet request, wherein the inbound port is described first
The request of target interest packet enters the port of router;
If it exists, judge to record in PIT with the presence or absence of the mapping relations;
If it does not exist, increase the mapping relations record in PIT;
Receive the second target packet that upstream router is sent, wherein include upstream in second target packet
The corresponding content of keyword for the first object interest packet request that router is sent;
The packet header of the second target packet is parsed, the keyword of second target packet is obtained, by second mesh
The keyword of mark data packet is forwarded in PIT;
According to the mapping relations record recorded in PIT, the inbound port is sent by second target packet
The mapping relations record is deleted after corresponding server, and the keyword of second target packet is added to the grand filtering of cloth
In the data structure of device.
It can be seen that executing electronic equipment provided in this embodiment can be not only solved by increasing Bloom filter
The problem of CS frequent congestion, it is also sufficiently used PIT and FIB, the queuing delay of flow is reduced, improves content router
Overall performance.
The embodiment of the non-obstruction content buffering method of above-mentioned related content router and preceding method embodiment portion
Divide the test mode of the non-obstruction content buffering method of the content router provided identical, which is not described herein again.
The communication bus that above-mentioned electronic equipment is mentioned can be Peripheral Component Interconnect standard (Peripheral Component
Interconnect, PCI) bus or expanding the industrial standard structure (Extended Industry Standard
Architecture, EISA) bus etc..The communication bus can be divided into address bus, data/address bus, control bus etc..For just
It is only indicated with a thick line in expression, figure, it is not intended that an only bus or a type of bus.
Communication interface is for the communication between above-mentioned electronic equipment and other equipment.
Memory may include random access memory (Random Access Memory, RAM), also may include non-easy
The property lost memory (Non-Volatile Memory, NVM), for example, at least a magnetic disk storage.Optionally, memory may be used also
To be storage device that at least one is located remotely from aforementioned processor.
Above-mentioned processor can be general processor, including central processing unit (Central Processing Unit,
CPU), network processing unit (Network Processor, NP) etc.;It can also be digital signal processor (Digital Signal
Processing, DSP), it is specific integrated circuit (Application Specific Integrated Circuit, ASIC), existing
It is field programmable gate array (Field-Programmable Gate Array, FPGA) or other programmable logic device, discrete
Door or transistor logic, discrete hardware components.
A kind of computer readable storage medium is stored with computer program in the computer readable storage medium, described
Following steps are realized when computer program is executed by processor:
The packet header of received first object interest packet request is parsed, the keyword and partially of first object interest packet request is obtained
Shifting amount, wherein packet header includes the prefix and offset of the content name of institute's request content, and the prefix is as the keyword;
Judge whether the I/O waiting list in CS is less than and has set threshold value;
If being less than and having set threshold value, according to the keyword and offset of first object interest packet request, searched for from CS
Content corresponding with the keyword of first object interest packet request, and first object data packet is pushed to and sends the first mesh
Mark interest packet request server, wherein include in first object data packet searched in CS it is emerging with the first object
The corresponding content of keyword of interest packet request;
If judging in pending query requests table (PIT) not less than threshold value has been set with the presence or absence of first object interest packet request
Keyword;
If it does not exist, the mapping between the keyword and inbound port for increasing the first object interest packet request in PIT
The keyword that the first object interest packet is requested is forwarded in forwarding information table FIB by relation record, will be described using FIB
Upstream router carries out routing forwarding to the keyword of first object interest packet request, wherein the inbound port is described first
The request of target interest packet enters the port of router;
If it exists, judge to record in PIT with the presence or absence of the mapping relations;
If it does not exist, increase the mapping relations record in PIT;
Receive the second target packet that upstream router is sent, wherein include upstream in second target packet
The corresponding content of keyword for the first object interest packet request that router is sent;
The packet header of the second target packet is parsed, the keyword of second target packet is obtained, by second mesh
The keyword of mark data packet is forwarded in PIT;
According to the mapping relations record recorded in PIT, the inbound port is sent by second target packet
The mapping relations record is deleted after corresponding server, and the keyword of second target packet is added to the grand filtering of cloth
In the data structure of device.
It can be seen that when executing the application program stored in computer readable storage medium provided in this embodiment, it can
The problem of by increasing Bloom filter, not only solving CS frequent congestion, it is also sufficiently used PIT and FIB, reduces stream
The queuing delay of amount improves the overall performance of content router.
The embodiment of the non-obstruction content buffering method of above-mentioned related content router and preceding method embodiment portion
Divide the test mode of the non-obstruction content buffering method of the content router provided identical, which is not described herein again.
It should be noted that, in this document, relational terms such as first and second and the like are used merely to a reality
Body or operation are distinguished with another entity or operation, are deposited without necessarily requiring or implying between these entities or operation
In any actual relationship or order or sequence.Moreover, the terms "include", "comprise" or its any other variant are intended to
Non-exclusive inclusion, so that the process, method, article or equipment including a series of elements is not only wanted including those
Element, but also including other elements that are not explicitly listed, or further include for this process, method, article or equipment
Intrinsic element.In the absence of more restrictions, the element limited by sentence "including a ...", it is not excluded that
There is also other identical elements in process, method, article or equipment including the element.
Each embodiment in this specification is all made of relevant mode and describes, same and similar portion between each embodiment
Dividing may refer to each other, and each embodiment focuses on the differences from other embodiments.Especially for device reality
For applying example, since it is substantially similar to the method embodiment, so being described relatively simple, related place is referring to embodiment of the method
Part explanation.
The foregoing is merely the preferred embodiments of the application, are not intended to limit the protection scope of the application.It is all
Any modification, equivalent replacement, improvement and so within spirit herein and principle are all contained in the protection scope of the application
It is interior.
Claims (9)
1. a kind of caching method of content router, which is characterized in that the described method includes:
The packet header for parsing received first object interest packet request obtains keyword and the offset of the request of first object interest packet
Amount, wherein packet header includes the prefix and offset of the content name of institute's request content, and the prefix is as the keyword;
Judge whether the I/O waiting list in CS is less than and has set threshold value;
If being less than and having set threshold value, according to the keyword and offset of first object interest packet request, search and institute from CS
State first object interest packet request the corresponding content of keyword, and by first object data packet be pushed to send first object it is emerging
The server of interest packet request, wherein include being searched in CS in first object data packet with the first object interest packet
The corresponding content of the keyword of request;
If judging in pending query requests table (PIT) not less than threshold value has been set with the presence or absence of the key of first object interest packet request
Word;
If it does not exist, the mapping relations between the keyword and inbound port for increasing the first object interest packet request in PIT
The keyword that the first object interest packet is requested is forwarded in forwarding information table FIB by record, using FIB by described first
Upstream router carries out routing forwarding to the keyword of target interest packet request, wherein the inbound port is the first object
The request of interest packet enters the port of router;
If it exists, judge to record in PIT with the presence or absence of the mapping relations;
If it does not exist, increase the mapping relations record in PIT;
Receive the second target packet that upstream router is sent, wherein include that upstream routes in second target packet
The corresponding content of keyword for the first object interest packet request that device is sent;
The packet header of the second target packet is parsed, the keyword of second target packet is obtained, by second number of targets
It is forwarded in PIT according to the keyword of packet;
According to the mapping relations record recorded in PIT, it is corresponding that the inbound port is sent by second target packet
Server after delete mapping relations record, the keyword of second target packet is added to Bloom filter
In data structure.
2. the method as described in claim 1, which is characterized in that recorded according to the mapping relations recorded in PIT, by institute
It states after the second target packet is sent to the corresponding server of the inbound port and deletes the mapping relations record, by described second
After the keyword of target packet is added in the data structure of Bloom filter, the method also includes:
The second target packet is stored in CS using the offset that the first object interest packet is requested.
3. the method as described in claim 1, which is characterized in that according to the keyword of first object interest packet request and partially
Shifting amount, searches for corresponding with the keyword that the first object interest packet is requested content from CS, and by first object data packet
It is pushed to the server for sending the request of first object interest packet, wherein include searching in first object data packet in CS
Content corresponding with the keyword of first object interest packet request, comprising:
According to the keyword that the first object interest packet is requested, first object I/O instruction is transmitted to using the main thread of CS
In sub thread, wherein the first object I/O instruction is the keyword that search is requested with the first object interest packet from CS
The instruction of corresponding content;
The first object data packet that sub thread is retrieved by the offset that the first object interest packet is requested is received, it will be described
First object data packet is pushed to the server for sending the first object interest packet request, wherein in first object data packet
Including the content corresponding with the keyword of first object interest packet request searched in CS.
4. method as claimed in claim 3, which is characterized in that using the offset of first object interest packet request by the
Two target packets are stored in CS, comprising:
According to second target packet, the second target I/O instruction is transmitted in sub thread using the main thread of CS,
In, the second target I/O instruction is the instruction being stored in the second target packet in CS;
The offset requested using sub thread by the first object interest packet stores second target packet.
5. such as method of any of claims 1-4, which is characterized in that in the packet header for parsing the second target packet,
The keyword for obtaining second target packet, after the keyword of second target packet is forwarded in PIT, also
Include:
Judge the keyword that whether there is second target packet in the PIT;
It is recorded, is sent second target packet to described according to the mapping relations recorded in PIT if it is, executing
The mapping relations record is deleted after the corresponding server of inbound port, and the keyword of second target packet is added to cloth
Step in the data structure of grand filter;
If it has not, second target packet is abandoned.
6. a kind of buffer storage of content router, which is characterized in that described device includes:
It is emerging to obtain first object for parsing the packet header of received first object interest packet request for interest packet request analysis module
The keyword and offset of interest packet request, wherein packet header includes the prefix and offset of the content name of institute's request content, described
Prefix is as the keyword;
I/O waiting list judgment module, whether the I/O waiting list for judging in CS, which is less than, has set threshold value;It has been set if being less than
Threshold value triggers content search module, if triggering first judgment module not less than threshold value has been set;
The content search module, keyword and offset for being requested according to the first object interest packet, is searched from CS
Rope content corresponding with the keyword that the first object interest packet is requested, and first object data packet is pushed to transmission first
The server of target interest packet request, wherein include being searched in CS in first object data packet with the first object
The corresponding content of keyword of interest packet request;
The first judgment module, for judging in pending query requests table (PIT) with the presence or absence of first object interest packet request
Keyword;If it does not exist, upstream router module is triggered, if presence, triggers mapping relations judgment module;
The upstream router module, for increasing the keyword and inbound port of the first object interest packet request in PIT
Between mapping relations record, by the first object interest packet request keyword be forwarded in forwarding information table FIB, utilize
Upstream router carries out routing forwarding to the keyword that FIB requests the first object interest packet, wherein the inbound port is
The first object interest packet request enters the port of router;
The mapping relations record judgment module, record in PIT with the presence or absence of the mapping relations for judging;If not depositing
Triggering the first PIT module;
The first PIT module, for increasing the mapping relations record in PIT;
Packet-receiving module, for receiving the second target packet of upstream router transmission, wherein second number of targets
According to the corresponding content of keyword in packet including the first object interest packet request that upstream router is sent;
Parsing module obtains the keyword of second target packet, by institute for parsing the packet header of the second target packet
The keyword for stating the second target packet is forwarded in PIT;
2nd PIT module sends second target packet for being recorded according to the mapping relations recorded in PIT
The mapping relations record is deleted after to the corresponding server of the inbound port, and the keyword of second target packet is added
It is added in the data structure of Bloom filter.
7. device as claimed in claim 6, which is characterized in that described device further include:
Second target packet is stored in CS by memory module, the offset for being requested using the first object interest packet
In;
Second judgment module, the keyword for judging to whether there is second target packet in the PIT;If it is,
Trigger the 2nd PIT module;If it has not, triggering discard module;
The discard module, for abandoning second target packet.
8. device as claimed in claim 6, which is characterized in that the content search module includes:
First main thread submodule, the keyword for being requested according to the first object interest packet will using the main thread of CS
First object I/O instruction is transmitted in sub thread, wherein the first object I/O instruction is the search and described first from CS
The instruction of the corresponding content of keyword of target interest packet request;
First sub thread submodule is retrieved by the offset that the first object interest packet is requested for receiving sub thread
The first object data packet is pushed to the server for sending the first object interest packet request by first object data packet,
Wherein, include in first object data packet searched in CS with the first object interest packet request keyword it is corresponding
Content.
9. device as claimed in claim 7, which is characterized in that the memory module includes:
Second main thread submodule, for being referred to the second target I/O using the main thread of CS according to second target packet
Order is transmitted in sub thread, wherein the second target I/O instruction is the instruction being stored in the second target packet in CS;
Second sub thread submodule, offset for being requested using sub thread by the first object interest packet is to described the
Two target packets are stored.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910327612.4A CN110062045B (en) | 2017-06-29 | 2017-06-29 | Caching method and device of content router |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710517235.1A CN107454142B (en) | 2017-06-29 | 2017-06-29 | A kind of non-obstruction content buffering method and device of content router |
CN201910327612.4A CN110062045B (en) | 2017-06-29 | 2017-06-29 | Caching method and device of content router |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710517235.1A Division CN107454142B (en) | 2017-06-29 | 2017-06-29 | A kind of non-obstruction content buffering method and device of content router |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110062045A true CN110062045A (en) | 2019-07-26 |
CN110062045B CN110062045B (en) | 2020-04-17 |
Family
ID=60488533
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710517235.1A Active CN107454142B (en) | 2017-06-29 | 2017-06-29 | A kind of non-obstruction content buffering method and device of content router |
CN201910327612.4A Active CN110062045B (en) | 2017-06-29 | 2017-06-29 | Caching method and device of content router |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710517235.1A Active CN107454142B (en) | 2017-06-29 | 2017-06-29 | A kind of non-obstruction content buffering method and device of content router |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN107454142B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115002036A (en) * | 2022-05-26 | 2022-09-02 | 国网河北省电力有限公司电力科学研究院 | NDN network congestion control method, electronic device and storage medium |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110138555B (en) * | 2019-05-21 | 2020-11-20 | 长沙能川信息科技有限公司 | Encryption and decryption method for FBX format three-dimensional model |
CN110460633A (en) * | 2019-06-29 | 2019-11-15 | 天津大学 | A kind of internet of things networking internodal data synchronization transfer method of content oriented |
CN111611348A (en) * | 2020-05-25 | 2020-09-01 | 河南科技大学 | ICN network information name searching method based on learning bloom filter |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379029A (en) * | 2012-04-24 | 2013-10-30 | 华为技术有限公司 | Method, device and system for forwarding routing of content network |
CN103491003A (en) * | 2012-06-14 | 2014-01-01 | 华为技术有限公司 | Content router and message processing method of content router |
CN103765832A (en) * | 2011-09-01 | 2014-04-30 | 华为技术有限公司 | A generalized dual-mode data forwarding plane for information-centric network |
CN104052667A (en) * | 2013-03-15 | 2014-09-17 | 华为技术有限公司 | Packet processing method and device |
EP2562978B1 (en) * | 2011-08-12 | 2014-10-08 | Alcatel Lucent | Content router of a content centric network |
CN104468396A (en) * | 2014-10-31 | 2015-03-25 | 北京邮电大学 | CCN flow management system |
CN104604205A (en) * | 2012-02-21 | 2015-05-06 | 华为技术有限公司 | Method and apparatus for adaptive forwarding strategies in content-centric networking |
CN105260429A (en) * | 2015-09-30 | 2016-01-20 | 河南科技大学 | ICN network information name searching method based on multiple Bloom filters |
CN105723666A (en) * | 2014-12-16 | 2016-06-29 | 北京大学深圳研究生院 | Content-based routing method and system |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103905327B (en) * | 2012-12-25 | 2017-05-17 | 中国科学院声学研究所 | Stream state information based content-centric network congestion control method and system thereof |
CN103118013B (en) * | 2013-01-16 | 2015-12-23 | 西安电子科技大学 | The method of packet incidentally reverse interest bag in content center network |
CN103095724B (en) * | 2013-02-05 | 2015-12-23 | 西安电子科技大学 | The method that the multiple interest packet compression of a kind of content center network sends and processes |
CN103428093B (en) * | 2013-07-03 | 2017-02-08 | 北京邮电大学 | Route prefix storing, matching and updating method and device based on names |
CN104320451A (en) * | 2014-10-21 | 2015-01-28 | 北京邮电大学 | Content-centric networking supporting web server cache system and processing method |
US9716664B2 (en) * | 2014-12-03 | 2017-07-25 | Cisco Technology, Inc. | Tracking queuing delay and performing related congestion control in information centric networking |
CN106657181B (en) * | 2015-10-30 | 2020-02-21 | 中国科学院声学研究所 | Data pushing method based on content-centric network |
CN106534360A (en) * | 2016-12-13 | 2017-03-22 | 重庆大学 | Content centric network routing method based on software definition |
-
2017
- 2017-06-29 CN CN201710517235.1A patent/CN107454142B/en active Active
- 2017-06-29 CN CN201910327612.4A patent/CN110062045B/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2562978B1 (en) * | 2011-08-12 | 2014-10-08 | Alcatel Lucent | Content router of a content centric network |
CN103765832A (en) * | 2011-09-01 | 2014-04-30 | 华为技术有限公司 | A generalized dual-mode data forwarding plane for information-centric network |
CN104604205A (en) * | 2012-02-21 | 2015-05-06 | 华为技术有限公司 | Method and apparatus for adaptive forwarding strategies in content-centric networking |
CN103379029A (en) * | 2012-04-24 | 2013-10-30 | 华为技术有限公司 | Method, device and system for forwarding routing of content network |
CN103491003A (en) * | 2012-06-14 | 2014-01-01 | 华为技术有限公司 | Content router and message processing method of content router |
CN104052667A (en) * | 2013-03-15 | 2014-09-17 | 华为技术有限公司 | Packet processing method and device |
CN104468396A (en) * | 2014-10-31 | 2015-03-25 | 北京邮电大学 | CCN flow management system |
CN105723666A (en) * | 2014-12-16 | 2016-06-29 | 北京大学深圳研究生院 | Content-based routing method and system |
CN105260429A (en) * | 2015-09-30 | 2016-01-20 | 河南科技大学 | ICN network information name searching method based on multiple Bloom filters |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115002036A (en) * | 2022-05-26 | 2022-09-02 | 国网河北省电力有限公司电力科学研究院 | NDN network congestion control method, electronic device and storage medium |
CN115002036B (en) * | 2022-05-26 | 2023-07-25 | 国网河北省电力有限公司电力科学研究院 | NDN network congestion control method, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN107454142A (en) | 2017-12-08 |
CN107454142B (en) | 2019-06-07 |
CN110062045B (en) | 2020-04-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10445380B2 (en) | System and method for direct storage access in a content-centric network | |
CN100521655C (en) | Dynamic sharing device of physical queue based on the stream queue | |
US6421342B1 (en) | Packet forwarding apparatus and method using pipelined node address processing | |
US6854117B1 (en) | Parallel network processor array | |
You et al. | Dipit: A distributed bloom-filter based pit table for ccn nodes | |
CN107454142B (en) | A kind of non-obstruction content buffering method and device of content router | |
US8799507B2 (en) | Longest prefix match searches with variable numbers of prefixes | |
US9385957B1 (en) | Flow key lookup involving multiple simultaneous cam operations to identify hash values in a hash bucket | |
Varvello et al. | On the design and implementation of a wire-speed pending interest table | |
US7480242B2 (en) | Pass/drop apparatus and method for network switching node | |
JP2001509978A (en) | Fast Variable Length Best Match Lookup in Switching Devices | |
WO2002076042A1 (en) | Cache entry selection method and apparatus | |
CN108710629B (en) | Top-k query method and system based on named data network | |
US9391896B2 (en) | System and method for packet forwarding using a conjunctive normal form strategy in a content-centric network | |
CN109905720B (en) | Cache replacement method based on video-on-demand system under named data network | |
WO2020168563A1 (en) | Memory management method and apparatus | |
KR101384794B1 (en) | Message routing platform | |
Pan et al. | Nb-cache: Non-blocking in-network caching for high-performance content routers | |
US20050114393A1 (en) | Dynamic forwarding method using binary search | |
Ooka et al. | Design of a high-speed content-centric-networking router using content addressable memory | |
JP2000083055A (en) | Router | |
CN107707479A (en) | The lookup method and device of five-tuple rule | |
Ndikumana et al. | Scalable aggregation-based packet forwarding in content centric networking | |
Kurihara et al. | List interest: Packing interests for reduction of router workload in ccn 1.0 | |
KR100493099B1 (en) | Route lookup and routing/forwarding table management for high-speed internet protocol router |
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 |