CN110062045A - A kind of caching method and device of content router - Google Patents

A kind of caching method and device of content router Download PDF

Info

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
Application number
CN201910327612.4A
Other languages
Chinese (zh)
Other versions
CN110062045B (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.)
Beijing University of Posts and Telecommunications
Original Assignee
Beijing University of Posts and Telecommunications
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 Beijing University of Posts and Telecommunications filed Critical Beijing University of Posts and Telecommunications
Priority to CN201910327612.4A priority Critical patent/CN110062045B/en
Publication of CN110062045A publication Critical patent/CN110062045A/en
Application granted granted Critical
Publication of CN110062045B publication Critical patent/CN110062045B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/742Route cache; Operation thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5682Policies or rules for updating, deleting or replacing the stored data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing 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

A kind of caching method and device of content router
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.
CN201910327612.4A 2017-06-29 2017-06-29 Caching method and device of content router Active CN110062045B (en)

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
CN201910327612.4A Active CN110062045B (en) 2017-06-29 2017-06-29 Caching method and device of content router
CN201710517235.1A Active CN107454142B (en) 2017-06-29 2017-06-29 A kind of non-obstruction content buffering method and device of content router

Family Applications After (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) CN110062045B (en)

Cited By (1)

* Cited by examiner, † Cited by third party
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 (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110399539A (en) * 2018-04-19 2019-11-01 中兴通讯股份有限公司 A kind of data processing method, equipment and computer readable storage medium
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (9)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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
CN107454142B (en) 2019-06-07
CN107454142A (en) 2017-12-08
CN110062045B (en) 2020-04-17

Similar Documents

Publication Publication Date Title
CN107454142B (en) A kind of non-obstruction content buffering method and device of content router
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
You et al. Dipit: A distributed bloom-filter based pit table for ccn nodes
US8799507B2 (en) Longest prefix match searches with variable numbers of prefixes
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
CN113454957B (en) Memory management method and device
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
JP2000083055A (en) Router
CN114710444A (en) Data center flow statistical method and system based on tower abstract and evictable flow table
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
CN107204926B (en) Rapid route searching method for preprocessing cache
KR100493099B1 (en) Route lookup and routing/forwarding table management for high-speed internet protocol router
TWI778716B (en) Method and system for packet processing according to a table lookup
US9444731B2 (en) Methods and systems for data packet routing

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