CN103856575B - For method and computer implemented system Aliasing to data object in the name data network including multiple routers - Google Patents

For method and computer implemented system Aliasing to data object in the name data network including multiple routers Download PDF

Info

Publication number
CN103856575B
CN103856575B CN201310636522.6A CN201310636522A CN103856575B CN 103856575 B CN103856575 B CN 103856575B CN 201310636522 A CN201310636522 A CN 201310636522A CN 103856575 B CN103856575 B CN 103856575B
Authority
CN
China
Prior art keywords
data object
router
name
alias
request
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.)
Active
Application number
CN201310636522.6A
Other languages
Chinese (zh)
Other versions
CN103856575A (en
Inventor
R·B·迪尔麦格哈尼
高凤晙
李康源
V·帕帕斯
R·拉格哈文德拉
宋旸
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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
Priority claimed from US13/707,120 external-priority patent/US9426053B2/en
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN103856575A publication Critical patent/CN103856575A/en
Application granted granted Critical
Publication of CN103856575B publication Critical patent/CN103856575B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

The invention provides for(In name data network)Entity to naming data object Aliasing and for naming data network(For example, the name figure of name data network)System, method and computer program product.In various examples, the Aliasing of name data object can be realized using the form of system, method and/or algorithm in one or more name data networks.In other examples, name figure can be realized using the form of system, method and/or algorithm in one or more name data networks.

Description

For Aliasing to data object in the name data network including multiple routers Method and computer implemented system
Technical field
The present invention relates generally to(Name in data network)The Aliasing field of data object.
The entity of the invention generally further related to for naming data network(For example, the name figure for naming data network) Field.
In various examples, the Aliasing of name data object can be using the form of system, method and/or algorithm one Realized in individual or multiple name data networks.
In other examples, name figure can be using the form of system, method and/or algorithm in one or more name numbers Realized according in network.
Background technology
There is provided Aliasing in some programming languages.Data Position in this Aliasing usual description memory can pass through Distinct symbols title in program is come the situation that accesses.Therefore, data are changed by a title implicitly to have modified and institute The value for the title correlation for having had Aliasing, this may not be that programmer is desired.
Also provided in some relevant databases Aliasing(For example, replacement title for relevant database, passing through Communication protocol, the mark of Hostname and database instance, multiple realities of single relevant database in remote system Body).
Name data network(It is otherwise referred to as herein " NDN ")It is request(For example from user or agency)Use such as example Such as the title of alphanumeric character(Relative to the machine address in traditional IP)It is routed to data entity(Or data pair As)Example.In NDN examples, user(Or user)To data producer request name data(This request is sometimes referred to as “interest”).According to the title of data in request, the request of user passes through one or more routers(One may be passed through Or multiple NDN agencies)Forwarded to data producer.Then, data producer is responded with the data asked.
Fig. 1 shows the example of traditional name data network architecture 100.As shown in this example, user 101A, 101B With 101C by act on behalf of 105A, 105B, 105C, 105D, 105E, 105F, 105G and/or 105H and the producer 103A, 103B and 103C is interacted.
Referring now still to Fig. 1, communication between the various entities(For example, request, response, data object)(With the reality of inter-entity Line is represented)Can be two-way.In addition, communication can pass through internet, in-house network, LAN, wide area network and/or any other Desired communication channel is performed.
It should be noted that although Fig. 1 shows that various entities are communicated, it is to be understood that, Fig. 1 actually refers to by each reality Body possesses, rents, operating, use the communication of the progress such as the, computer system holding and/or control.
However, in this NDN architectures 100, single object can be referred to various ways.In this point, requestor (For example, user, user, agency)It and may ambiguously know the title of specified data object.Therefore, data object is route May route of non-ideal use perform(For example, not utilizing some buffers).
The content of the invention
The present invention relates generally to for(In name data network)To the Aliasing system of name data object, method and Computer program product.
The present invention generally further relates to name figure(For naming data network)Field.
In one embodiment there is provided a kind of method realized in computer system network, for including multiple roads It is Aliasing to data object in the name data network of device, wherein, at least the first data object is related at least the first alias Connection, this method includes:Content at least one name data object request of the first data object is detected by the first router With the content of at least one response to the name data object request;And please based in part on this by the first router The content detected of at least one summed in the response implicitly learns the first alias.
In another embodiment there is provided a kind of method realized in computer system network, for including multiple Data object route is carried out based on name data object request in the name data network of router, this method includes:First Name data object request is received at router;The data object for determining to be named by name data object request by the first router Whether in the buffer of the first router;If the data object named by name data object request is in the first router In buffer, then responded by the first router with the data object;If the data named by name data object request Object is determined to be ordered by the alias associated with name data object not in the buffer of the first router, then by the first router Whether the alias copy of the data object of name is in the buffer of the first router;If named by name data object request Data object is not in the buffer of the first router, and the data pair named by the alias associated with name data object The alias copy of elephant is then responded in the buffer of the first router by the first router with alias copy;If by ordering Name data object request name data object not in the buffer of the first router, and by name data object it is related The alias copy of the data object of the alias name of connection then determines number not in the buffer of the first router by the first router It is whether known according to the position at the alias copy the second router of object;If the data pair named by name data object request As not in the buffer of the first router, and the data object named by the alias associated with name data object is other Name copy is not in the buffer of the first router, and position of the alias copy at the second router of data object is Know, then from the first router data object request will be named to be route to the position of the second router.
In another embodiment there is provided a kind of method realized in computer systems, for including multiple routes Data object is accessed in the name data network of device, this method includes:Name data object request is received at the first router, It identifies the first data object;At least a portion of name figure is received at the first router, wherein, name map logo dependency number According to object, associated data object includes the first data object, the associated data object that name figure provide and identified each Corresponding node, each node represents the position at a router;First data object is obtained by the first router;When When one data object is acquired, based in part on the name figure received at least one is obtained by the first router other The associated data object identified.
In another embodiment there is provided a kind of computer-readable recording medium, it, which visibly embodies, to be held by computer Capable is used for Aliasing to data object programmed instruction in the name data network including multiple routers, wherein, at least First data object is associated with least the first alias, and programmed instruction realizes following steps upon execution:Examined by the first router Survey to the content of at least one name data object request of the first data object and to the name data object request at least The content of one response;And by the first router being examined based in part at least one in the request and the response The content of survey implicitly learns the first alias.
In another embodiment there is provided a kind of computer-readable recording medium, it, which visibly embodies, to be held by computer Capable is used in the name data network including multiple routers based on name data object request progress data object route Programmed instruction, programmed instruction realizes the following steps upon execution:Name data object request is received at the first router;By Whether the first router determines the data object named by name data object request in the buffer of the first router;If The data object named by name data object request is in the buffer of the first router, then by the first router data Object is responded;If the data object named by name data object request is not in the buffer of the first router, Whether determined by the first router by the alias copy of data object named with the associated alias of name data object the In the buffer of one router;If the data object named by name data object request is not in the buffer of the first router In, and by the alias copy of data object named with the associated alias of name data object the first router caching In device, then responded by the first router with alias copy;If the data object named by name data object request is not In the buffer of the first router, and the alias pair of the data object by the alias name associated with name data object This is then determined the alias copy the second router of data object not in the buffer of the first router by the first router Whether position is known;If the data object named by name data object request is not in the buffer of the first router, and And the alias copy for the data object named by the alias associated with name data object is not in the buffer of the first router In, and position of the alias copy at the second router of data object is known, then will name number by the first router It is route according to object requests to the position of the second router.
In another embodiment there is provided a kind of computer-readable recording medium, it, which visibly embodies, to be held by computer The capable programmed instruction for being used to access data object in the name data network including multiple routers, programmed instruction is being performed Shi Shixian the following steps:Name data object request is received at the first router, it identifies the first data object;In the first via At least a portion of name figure is received by device, wherein, map logo associated data object is named, associated data object includes first Data object, name figure provides each corresponding node of the associated data object with being identified, and each node is represented one Position at individual router;First data object is obtained by the first router;When the first data object is acquired, by the first via By device at least one other associated data object identified is obtained based in part on the name figure received.
In another embodiment there is provided a kind of computer implemented system, for including the name of multiple routers Aliasing to data object in data network, the system includes:The first router, wherein, the first router is configured as detection Content at least one name data object request of the first data object and at least one to the name data object request The content of individual response;The first router is configured as being examined based in part at least one in the request and the response The content of survey implicitly learns the first alias.
In another embodiment there is provided a kind of computer implemented system, for including the name of multiple routers Data object route is carried out based on name data object request in data network, the system includes:The first router, wherein, the One router is configured as receiving name data object request;The first router is configured to determine that by name data object request Whether the name data object of name is in the buffer of the first router;If the first router is configured as by name data The data object of object requests name is in the buffer of the first router, then with the data named by name data object request Object is responded;If the first router is configured as the data object named by name data object request not in the first via In the buffer of device, it is determined that whether the alias copy for the data object named by the alias associated with name data object In the buffer of the first router;If the first router is configured as the data object named by name data object request Not in the buffer of the first router, and the alias of the data object by the alias name associated with name data object Copy is then responded in the buffer of the first router with alias copy;If the first router is configured as by naming Data object request name data object not in the buffer of the first router, and by with name data object it is associated Alias name data object alias copy not in the buffer of the first router, then data are determined by the first router Whether the position at the alias copy the second router of object is known;If the first router is configured as by name data object The data object of name is asked not in the buffer of the first router, and is ordered by the alias associated with name data object Name data object alias copy not in the buffer of the first router, and data object alias copy on the second tunnel It is known by the position of device, then data object request will be named to be route to the position of the second router.
In another embodiment there is provided a kind of computer implemented system, for including the name of multiple routers Data object is accessed in data network, the system includes:The first router, wherein, the first router is configured as receiving name Data object request, it identifies the first data object;The first router is configured as receiving at least a portion of name figure, its In, map logo associated data object is named, associated data object includes the first data object, and name figure provides the phase with being identified Each corresponding node of data object is closed, each node represents the position at a router;The first router by with It is set to the first data object of acquisition;When the first router is configured as the first data object and is acquired, based in part on The name figure received obtains at least one other associated data object identified.
Brief description of the drawings
According to following detailed description of the accompanying drawings, various objects, features and advantages of the invention are for the general of this area Logical technical staff becomes apparent, wherein:
Fig. 1 describes the block diagram of traditional name data architecture;
The flow chart that Fig. 2 descriptions route and forwarded according to an embodiment of the invention;
Fig. 3 descriptions block diagram relevant according to an embodiment of the invention with naming figure;
Fig. 4 descriptions block diagram relevant according to an embodiment of the invention with naming figure;
Fig. 5 describes the flow chart of method according to an embodiment of the invention;
Fig. 6 A and 6B describe the flow chart of method according to an embodiment of the invention;
Fig. 7 describes the flow chart of method according to an embodiment of the invention;
Fig. 8 describes the block diagram of system according to an embodiment of the invention;
Fig. 9 describes the block diagram of system according to an embodiment of the invention;
Figure 10 describes the block diagram of system according to an embodiment of the invention.
Embodiment
For illustrative purposes, term " data object " is intended to refer to the byte sequence of designated length.This data object It for example can be the demandable single addressable content of user.In another example, data object can be one of file Divide or file or file set or the byte sequence of dynamic generation.In another example, data object can be Audio file, video file or webpage.In another example, data object can be a part for big file(For example, electric Shadow file may be logically divided into some, wherein each part individually can be addressed and download).
For illustrative purposes, term " name figure " is intended to refer to the figure with data entity and/or structure, and it includes many Relation between individual name data object and these name data objects.
It is as the described herein that there is provided the machine that the relation between name data object is created, safeguarded and solved in NDN System.These relations can be static(In this case, relation can be preconfigured)And/or it is dynamic(In this feelings Under condition, relation can for example be learnt by network).One example of the relation between this name object is alias, i.e. same Data object can be addressed in several ways.For example, user can ask to download all notes relevant with the people that name is Alice Record.Another user be may wish to download same data, i.e. Alice record, but Alice may be referred to as to Bob manager. Various embodiments provide and this name object relationship are created, safeguarded and solved by NDN(Alias is an example)To be had Effect is obtained.
As the described herein, various embodiments can realize the route that dynamic alias is perceived, wherein, NDN agencies with Dynamic mode infers data object alias, if the data object asked(Or data object alias)Not in the slow of the agency In storage, then agency's forwarding request.
As the described herein, various embodiments provide using Alias information to perform road in name data network By/transfer(This allows the network to observe and infers data object alias).In various examples, this embodiment is not end points Driving, but performed in NDN Agencies.
As the described herein, in various embodiments, NDN agencies observe and infer syntax/semantic relation of title, i.e., " alias ".One exemplary static alias of " Alice " is " Charlie daughter ".One exemplary dynamic of " Alice " is other Name is " Bob manager ".In one example, " New York Huo Sang(Hawthorne)Weather " semantic alias be " postcode 10532 weather ".
As the described herein, in various embodiments, data object is buffered in the alias table structure at agent entity In.In one example, if request pleases oneself to aliasing, following request is not forwarded.In addition, route can be with It is based not only on asked data object title to perform, and can be held based on the knowledge of the data object alias of router OK.
Explanation sets up alias table now(For example, in memory and/or buffer)Various examples.In this point, NDN Agency/router can set up alias table one of in several ways:(a)Static-publisher is to one or more title pipes Manage server registration data object alias(Then, data object alias for example can be transmitted to form table);(b)Data label Name-act on behalf of observed data object requests/response, and alias is set up to the data object with same signature;(c)Standardization-generation Reason to identify the alias of desired data, for example, is simplified using query criteria using Boolean expression.
The common example that explanation route and forwarded now.In this example embodiment, when data object request is reached:(a) If agency has data object or its alias in its associated buffer, data object is forwarded to requestor-no Then,(b)If knowledge of the agency with alias, acts on behalf of and nearest data object position is routed requests to according to alias(Generation Reason also adds Alias information Alias information is broadcast into other agencies)-- otherwise,(c)If agency does not count in both the buffers According to object or Alias information, then the next-hop for forwarding requests to path is acted on behalf of.
In one example, exchanging mechanism can determine that the next-hop on path.In this example embodiment, interchanger is configured as root Next-hop interchanger is forwarded the packet to according to the destination address in packet.End-to-end path passes through in data center network The Routing Protocol used in (" DCN ") is determined.The overview of current mechanism is provided in following file:http:// Www.cs.cmu.edu/~xzhang1/doc/datacenter-routing.pdf
Referring now to Fig. 2, illustrate request, response and/or number are route and forwarded between user, agency and/or the producer According to the more specifically example of object.As shown in this example,(For data object)Name request of data by user carry out and Agency receives(See mark number 201).According to the data object asked(In figure referred to as " data ")Whether on agency/road At device exist Lai(For example, by agency/router)Make decision(See mark number 203).If answer is "Yes", agency/ Router is responded with data(See mark number 205).If answer is "No", judge(For example, by agency/router)Not Whether name data exist at agency/router(See mark number 207).If the answer at mark number 207 is "Yes", generation Reason/router is responded with Alias data(See mark number 209).
Referring back to mark number 207, if answer is "No", judge(For example, by agency/router)Name data Position whether be known(See mark number 211).If the answer at mark number 211 is "No", judge(For example, by Agency/router)Whether the position of Alias data is known(See mark number 213).If the answer at mark number 213 is "No", then broadcast to all output interfaces(For example, by agency/router)Name request of data(See mark number 215).
Referring back to mark number 211, if answer is "Yes", judge(For example, by agency/router)Alias data Position whether be known(See mark number 217).If the answer at mark number 217 is "No", request of data is named It is forwarded(For example, proxied/router)To the next-hop towards data(See mark number 219).If at mark number 217 Answer is "Yes", then judges(For example, by agency/router)Alias data whether than initial data closer to(See mark number 221). In this context, " closer to " refers to route distance.For example, if hop count is measuring for route, distance is other for k-hop Name than distance be k+1 jump object closer to.If the answer at mark number 211 is "No", name request of data is forwarded (For example, proxied/router)To the next-hop towards data(See mark number 219).If the answer at mark number 221 is "Yes", then name request of data to be forwarded(For example, proxied/router)To the next-hop towards Alias data(See mark number 223).
It is as the described herein that there is provided the mechanism for creating name figure(It is described in more detail below).In one embodiment In, one name data object of client application requests, network not only obtains asked data object, and obtains name figure (It is partial or complete).As an example, when browse request webpage, the webpage with some embedded URL can be downloaded, then, Browser issues the request of each to these data objects.In one embodiment, network automatically obtains name figure(Nothing Need the auxiliary of browser application), therefore, it is possible to realize faster response time and data object and relation one or more Caching in intermediate router.
As the described herein, new entity is introduced in NDN examples, i.e. name figure.Name figure includes naming data Object and the relation existed between name data object.There are several technologies to create name figure, they will be more detailed below Carefully discuss.Name figure can create in a static manner in NDN and/or create and update in a dynamic way.
The figure that one specific examples of name figure are obtained in being the one-to-one relationship between name object and its alias. According to syntax and semantic context, name object can have one or more alias.Data publisher can announce object of standardization name Claim and alias list, it is then by the name server present in NDN architectures(For example, with reference to Figure 10 controller 1050)Parsing.As discussed previously with respect to Alice and Bob example, data publisher can announce Alice record and alias list, Such as Bob manager and Charlie employee.When user asks the record of Bob manager, name resolution server(For example, Figure 10 controller 1050)The request of this couple of Alice record can be parsed.Forwarding request and the middle NDN routers of response These alias are practised, to allow these router buffers to meet the request in future.
Name figure is also(Or alternatively)Can be according to the dependence and/or relation existed between name data object To build.Dependence and/or relation can be explicitly or implicitly.In a specific examples, the webpage with embedded URL can To be formed(Static)Name figure.In another specific examples, the available large data objectses of some are used as(For example, electric Video display frequency)Name figure can be formed.Another specific examples of name figure are the data objects of the tree belonged in Hierarchical name scheme. In addition to these explicit relations, can also there is implicit between data object(And may be short-term)Relation, it can be with(Example Such as by router)Observed according to the request to naming data object(Name figure can in a dynamic way be created according to this relation Build and/or update).For example, router can observe name object requests and response, and collect between them in time of origin Relation on proximity, to create the graph of a relation between name object, it represents simultaneous between different name objects Possibility.
When client request data object, the request is routed to the producer, and the route according to configuration in a network Agreement, data object is obtained from the intermediate router in both the buffers with the data object.Use name described here Figure mechanism, router is not only responded with the data object asked, and is schemed with name(Partial or complete)Rung Should.
Illustrate Fig. 3 and Fig. 4 now.In the example shown in Fig. 3, there are router R1, R2, R3 and R4(See mark numbers 301, 303rd, 305 and 307).Router R1, R2, R3 and R4 pass through NDA networks or architecture(See mark number 309)Communicated.Separately Outside, various data objects are located in the buffer of each router.Specifically, in this example embodiment, in router R2, R3 and R4 There is data object 0 on each(See mark 320A, 320B and 320C).In addition, in each of router R2, R3 and R4 There is data object 1(See mark 322A, 322B and 322C).In addition, there is data object 2 at router R2(See mark number 324A).In addition, having data object 3 in each of router R3 and R4(See mark 326A and 326B).In addition, on road There is data object 4 by device R4(See mark 328A).
Referring now still to Fig. 3, it is seen that in this example router R1 have in router R1 local caches not The request of the object 0 of presence(In one example, the request warp-wise all-router may have been broadcasted).R1 Routing Protocol is returned Go back to one or more paths for obtaining data object 0.When R1 issues the request to data object 0 on selected path, often Individual returned up to router is used for the name figure of data object 0 present in its buffer.If router can not route life The entire content of name figure, then the router creates the subgraph of name figure, and route the composition of the subgraph.Asking on selected path At the end of asking, R1 has to scheme with servicing the router identical of its data and naming(For example, 0,1,2 from R2), but due to another Outer request is for related data object(For example, 1,3,4), therefore, R1 is set up for data object 0 in a dynamic way Name figure, as shown in Figure 4(It describes name Figure 40 0 of dynamic creation example).
In addition, routing decision can be by name figure influence.For example(Return to Fig. 3), when the request to data object 0 is entered by R1 During row, R1 may be selected to obtain object 0 from R2, R3 or R4.It is therefore, simple to determine because R1 can obtain " strong correlation data object " Plan can be made by R1, such as obtain data object 0 from R2.Another decision strategy is, for example, to obtain data pair from both R2 and R3 As 0, to obtain more relevant component and reach load balance.
In context discussed herein, the implication of " strong correlation data object " is as follows.It suppose there is two objects 0 and 1. In the case that object 0 is acquired, if object 1 is also high by the probability of acquisition later, for example, the follow-up data of film, then this two Individual object is " strong correlation ".For example, 0.8 probability threshold value can be used for from those be not strong correlation data object in remove strong Associated data object pair.This information can be obtained for example by special forecast analysis and/or historical information.
Referring now to Fig. 5, show in computer system(Or network)The method of middle realization, in name data network In it is Aliasing to data object.As shown in figure 5, computer system may include multiple routers, at least the first data object can be with At least the first alias is associated.In addition, as shown in figure 5, this method includes:Step 501- is detected by the first router and counted to first What the content according at least one name data object request of object and at least one to the name data object request were responded Content;Step 503- by the first router based in part on by the first router based in part on the request and the sound The content detected of at least one in answering implicitly learns the first alias.
In a specific examples, request and response two can be based at least partially on by learning the first alias by the first router The content detected of person.
In one example, any step can be performed in the sequence or perform by another sequence.
Referring now to Fig. 6 A and 6B, show in computer system(Or network)The method of middle realization, for including many Data object route based on name data object request in the name data network of individual router.As shown in Figure 6 A and 6B, should Method includes:Step 601- receives name data object request at the first router;Step 603- is determined by the first router Whether the data object named by name data object request is in the buffer of the first router;If step 605- is by naming The data object of data object request name is then entered in the buffer of the first router by the first router with the data object Row response;If the data object that step 607- is named by name data object request is not in the buffer of the first router, Then by the first router determine by the alias copy of data object named with the associated alias of name data object whether In the buffer of the first router;If the data object that step 609- is named by name data object request not the first via by In the buffer of device, and by the alias copy of data object named with the associated alias of name data object in the first via In the buffer of device, then responded by the first router with alias copy;If step 611- please by name data object The data object of name is sought not in the buffer of the first router, and is named by the alias associated with name data object Data object alias copy not in the buffer of the first router, then the alias of data object is determined by the first router Whether position of the copy at the second router be known;If the data object that step 613- is named by name data object request Not in the buffer of the first router, and the alias of the data object by the alias name associated with name data object Copy not in the buffer of the first router, and data object position of the alias copy at second router Know, then from the first router data object request will be named to be route to the position of the second router.
In one example, any step can be performed in the sequence or perform by another sequence.
Referring now to Fig. 7, show in computer system(Or network)The method of middle realization, for including multiple routers Name data network in access data object.As shown in fig. 7, this method includes:Step 701- is received in the first router and ordered Name data object request, it identifies the first data object;Step 703- receives at least a portion of name figure in the first router, Wherein, map logo associated data object is named, associated data object includes the first data object, and name figure is provided with each being marked The corresponding node of associated data object of knowledge, each node represents the position at a router;Step 705- is by the first via First data object is obtained by device;Step 707- is when the first data object is acquired, by the first router root at least in part At least one other associated data object identified is obtained according to the name figure received.In one embodiment, by One router obtains the when that at least one other associated data object identified need not be acquired with the first data object Between it is identical exactly.
In one example, any step can be performed in the sequence or perform by another sequence.
Reference picture 8, shows computer implemented system, for the logarithm in the name data network including multiple routers It is Aliasing according to object.As shown in figure 8, the system includes the first router 801.The first router can be configured as detection to first The content of at least one name data object request of data object and at least one response to the name data object request Content;The first router can be configured as implicitly learning the first alias based in part on the content detected.
Referring again to Fig. 8, it can be seen that the system may be used also(Or selectively)Offer is including the name of multiple routers Data object route is carried out according to name data object request in data network.That is, the first router 801 can:It is configured as Receive name data object request;It is configured to determine that the data object named by name data object request whether in the first via In the buffer of device;If being configured as the caching of the data object named by name data object request in the first router In device, then responded with the data object named by name data object request;If be configured as by name data object The data object of name is asked not in the buffer of the first router, it is determined that by the alias associated with name data object Whether the alias copy of the data object of name is in the buffer of the first router;If be configured as by name data object The data object of name is asked not in the buffer of the first router, and is ordered by the alias associated with name data object The alias copy of the data object of name is then responded in the buffer of the first router with alias copy;Be configured as The data object named by name data object request of fruit not in the buffer of the first router, and by with name data pair The alias copy for the data object named as associated alias determines data object not in the buffer of the first router Whether position of the alias copy at the second router be known;If being configured as the data named by name data object request Object is not in the buffer of the first router, and by the data object named with the associated alias of name data object Alias copy not in the buffer of the first router, and data object position of the alias copy at the second router Know, then data object request will be named to be route to the position of the second router.
Referring again to Fig. 8, it can be seen that the system may be used also(Or selectively)Offer is including the name of multiple routers Data object is accessed in data network, wherein, the first router 801 can:It is configured as receiving name data object request, it is marked Know the first data object;It is configured as receiving at least a portion of name figure, wherein, name map logo associated data object, phase Closing data object includes the first data object, and name figure provides node corresponding with the associated data object each identified, often Individual node represents the position at a router;It is configured as obtaining the first data object;It is configured as the first data pair During as being acquired, at least one other related data pair identified is obtained based in part on the name figure received As.
Referring now still to Fig. 8, any communication can be performed by network 803.Network 803 may include internet, in-house network, local Net, wide area network and/or any other desired communication channel.
Referring now to Fig. 9, the figure shows the hardware configuration of computer system 900 according to an embodiment of the invention.Such as Shown in figure, the hardware configuration has at least one processor or CPU(CPU)911.CPU911 can be total by system Line 912 is interconnected to random access memory(RAM)914th, read-only storage(ROM)916th, input/output(I/O)Adapter 918 (For the ancillary equipment of such as disk cell 921 and tape drive 940 to be connected into bus 912), user interface adapter 922(For keyboard 924, mouse 926, loudspeaker 928, microphone 932 and/or other user interface facilities to be connected into bus 912), for system 900 to be connected into data processing network, internet, in-house network, LAN(LAN)Deng communication adapter 934 and for bus 912 to be connected into display device 938 and/or printer 939(For example, digital-code printer etc.)Display fit Orchestration 936.
Referring now to Figure 10, the exemplary name data network architecture 1000 according to embodiment is shown.Such as example Shown, user 1001A, 1001B and 1001C pass through interchanger(Or router)1005A、1005B、1005C、1005D、1005E、 1005F, 1005G and/or 1005H and the producer 1003A, 1003B and 1003C are interacted.
In addition, controller 1050 may include for providing route, title management, strategy and/or the mechanism of safety.
Referring now still to Figure 10, the communication between various entities(For example, request, response, data object)(By the solid line of inter-entity Represent)Can be two-way.In addition, the communication between various entities and controller 1050 can be two-way(It may be noted that control Device 1050 processed can be communicated with the user of any desired quantity, interchanger, router and/or the producer).In addition, communication can Performed by internet, in-house network, LAN, wide area network and/or any other desired communication channel.
It should be noted that although Figure 10 shows that various entities are communicated, it is to be understood that, Figure 10 actually refers to by every Individual entity possesses, rents, operating, use the communication of the progress such as the, computer system holding and/or control.
In one embodiment there is provided a kind of method realized in computer systems, for including multiple routes It is Aliasing to data object in the name data network of device, wherein, at least the first data object is associated with least the first alias, This method includes:Detected by the first router at least one name content of data object request of the first data object and right The content of at least one response of the name data object request;And by the first router based in part on the request and The content detected of at least one in the response implicitly learns the first alias.
In one example, this method includes the first data object is associated with the first alias.
In another example, being associated includes registering the first alias to title management server.
In another example, this method also includes propagating the first alias at least the second router.
In another example, request and response are route by the first router.
In another example, implicitly learn based at least one following:(a)It is determined that related to the content detected The data object signature of connection;(b)The query criteria associated with the content detected.
In another embodiment there is provided a kind of method realized in computer system network, for including many Data object route is carried out according to name data object request in the name data network of individual router, this method includes: Name data object request is received at one router;The data pair for determining to be named by name data object request by the first router As if it is no in the buffer of the first router;If the data object named by name data object request is in the first router Buffer in, then responded by the first router with the data object;If the number named by name data object request According to object not in the buffer of the first router, then determined by the first router by the alias associated with name data object Whether the alias copy of the data object of name is in the buffer of the first router;If named by name data object request Data object not in the buffer of the first router, and data by being named with the associated alias of name data object The alias copy of object is then responded in the buffer of the first router by the first router with alias copy;If by The data object of data object request name is named not in the buffer of the first router, and by with naming data object phase The alias copy of the data object of the alias name of association is then determined not in the buffer of the first router by the first router Whether position of the alias copy of data object at the second router be known;If the number named by name data object request According to object not in the buffer of the first router, and by the data object of the alias name associated with name data object Alias copy not in the buffer of the first router, and position of the alias copy at the second router of data object , it is known that then from the first router data object request will be named to be route to the position of the second router.
In one example, this method also includes:If the data object named by name data object request is not In the buffer of one router, then determine the data object named by name data object request on the 3rd tunnel by the first router It is whether known by the position of device;Wherein, if the data object named by name data object request is in third router Position, it is known that and third router position of the position than the second router closer to the first router, then by the first via From device by name position from data object request to third router route, rather than the second router position.
In another embodiment there is provided a kind of method realized in computer systems, for including multiple routes Data object is accessed in the name data network of device, this method includes:Name data object request is received at the first router, It identifies the first data object;At least a portion of name figure is received at the first router, wherein, name map logo dependency number According to object, associated data object includes the first data object, and name figure provides corresponding with the associated data object each identified Node, each node represents the position at a router;First data object is obtained by the first router;When the first number When being acquired according to object, by the first router based in part on the name figure received obtains the institute that at least one is other The associated data object of mark.
In one example, the first router receives whole name figure.
In another example, this method also includes based in part on the name figure received being made by the first router Go out at least one routing decision.
In another embodiment there is provided a kind of computer-readable recording medium, it visibly embodies can be by computer What is performed is used for Aliasing to data object programmed instruction in the name data network including multiple routers, wherein, extremely Few first data object is associated with least the first alias, and programmed instruction realizes following steps upon execution:By the first router Detect to the content of at least one name data object request of the first data object and to the name data object request extremely The content of a few response;And by institute of the first router based in part at least one in the request and the response The content of detection implicitly learns the first alias.
In one example, programmed instruction is also realized the first data object step associated with the first alias upon execution Suddenly.
In another example, being associated includes registering the first alias to title management server.
In another example, programmed instruction also realizes propagate the first alias at least the second router upon execution Step.
In another example, request and response are route by the first router.
In another example, implicitly learn based at least one following:(a)It is determined that related to the content detected The data object signature of connection;(b)The query criteria associated with the content detected.
In another embodiment there is provided a kind of computer-readable recording medium, it visibly embodies can be by computer What is performed is used in the name data network including multiple routers based on name data object request progress data object road By programmed instruction, programmed instruction realizes the following steps upon execution:Name data object request is received at the first router; Determine the data object named by name data object request whether in the buffer of the first router by the first router;Such as The data object that fruit is named by name data object request is then counted in the buffer of the first router by the first router with this Responded according to object;If the data object named by name data object request is not in the buffer of the first router, Then by the first router determine by the alias copy of data object named with the associated alias of name data object whether In the buffer of the first router;If the data object named by name data object request is not in the caching of the first router In device, and alias copy the delaying in the first router of the data object by the alias name associated with name data object In storage, then responded by the first router with alias copy;If the data object named by name data object request Not in the buffer of the first router, and the alias of the data object by the alias name associated with name data object Copy is then determined the alias copy the second router of data object not in the buffer of the first router by the first router Position it is whether known;If the data object named by name data object request is not in the buffer of the first router, And the alias copy for the data object named by the alias associated with name data object is not in the caching of the first router In device, and position of the alias copy at the second router of data object is known, then will be named by the first router Data object request is route to the position of the second router.
In one example, programmed instruction also realizes following steps upon execution:If ordered by name data object request The data object of name is then determined to be named by name data object request not in the buffer of the first router by the first router Position of the data object at third router it is whether known;Wherein, if the data named by name data object request Position of the object at third router, it is known that and third router position of the position than the second router closer to first Router, then will name data object request to be route to the position of third router from the first router, rather than secondary route The position of device.
In another embodiment there is provided a kind of computer-readable recording medium, it, which visibly embodies, to be held by computer The capable programmed instruction for being used to access data object in the name data network including multiple routers, programmed instruction is being performed Shi Shixian the following steps:Name data object request is received at the first router, it identifies the first data object;In the first via At least a portion of name figure is received by device, wherein, map logo associated data object is named, associated data object includes first Data object, name figure provides each corresponding node of the associated data object with being identified, and each node is represented one Position at individual router;First data object is obtained by the first router;When the first data object is acquired, by the first via By device at least one other associated data object identified is obtained based in part on the name figure received.
In another example, programmed instruction is also realized to be based at least partially on by the first router and received upon execution Name figure to make at least one routing decision the step of.
In one example, the first router receives whole name figure.
In another embodiment there is provided a kind of computer implemented system, for including the name of multiple routers Aliasing to data object in data network, the system includes:The first router, wherein, the first router is configured as detection Content at least one name data object request of the first data object and at least one to the name data object request The content of individual response;The first router is configured as being examined based in part at least one in the request and the response The content of survey implicitly learns the first alias.
In another embodiment there is provided a kind of computer implemented system, for including the name of multiple routers Data object route is carried out based on name data object request in data network, the system includes:The first router, wherein, the One router is configured as receiving name data object request;The first router is configured to determine that by name data object request Whether the name data object of name is in the buffer of the first router;If the first router is configured as by name data The data object of object requests name is in the buffer of the first router, then with the data named by name data object request Object is responded;If the first router is configured as the data object named by name data object request not in the first via In the buffer of device, it is determined that whether the alias copy for the data object named by the alias associated with name data object In the buffer of the first router;If the first router is configured as the data object named by name data object request Not in the buffer of the first router, and the alias of the data object by the alias name associated with name data object Copy is then responded in the buffer of the first router with alias copy;If the first router is configured as by naming Data object request name data object not in the buffer of the first router, and by with name data object it is associated Alias name data object alias copy not in the buffer of the first router, then data are determined by the first router Whether the position at the alias copy the second router of object is known;If the first router is configured as by name data object The data object of name is asked not in the buffer of the first router, and is ordered by the alias associated with name data object Name data object alias copy not in the buffer of the first router, and data object alias copy on the second tunnel It is known by the position of device, then data object request will be named to be route to the position of the second router.
In another embodiment there is provided a kind of computer implemented system, for including the name of multiple routers Data object is accessed in data network, the system includes:The first router, wherein, the first router is configured as receiving name Data object request, it identifies the first data object;The first router is configured as receiving at least a portion of name figure, its In, map logo associated data object is named, associated data object includes the first data object, and name figure provides the phase with being identified Each corresponding node of data object is closed, each node represents the position at a router;The first router by with It is set to the first data object of acquisition;When the first router is configured as the first data object and is acquired, based in part on The name figure received obtains at least one other associated data object identified.
In other examples, it can be realized in following environment:(a)Cloud computing;(b)Platform is service(PaaS);With/ Or(c)Resource is enabled(For example there is provided, configuration, flexibility and work load management).
As the described herein, alias can learn from each introduces a collection, such as content of publisher's announcement, router observation Request-response and query routing.In addition, request can be route according to alias and/or alias position.
As the described herein, the relation parsed between the name data object in NDN statically and/or dynamically in figure Available for formulation routing decision.In addition, title alias can be transferred to NDN routers.
As the described herein, the relation of data object is utilized available for more preferable network, such as delay and buffer efficiency. For example, by learning the relation between multiple data objects, network can receive the request to individual data object When obtain other associated data objects in advance, therefore, network response time is remarkably improved.
There is provided the alias for data to be inferred and used in name data network context as the described herein Mechanism.
As the described herein, in various embodiments there is provided for name data network in name data pair As Aliasing method.In a specific examples, the dynamic that can provide name data object is Aliasing.
As the described herein, in various embodiments, the name data object of the form using name figure can be provided Between relation(For example, dynamic relationship)(For example, network can be obtained before further request).In a specific examples, This name figure can be formed dynamically, and the interconnection between entity can dynamically be changed to represent new name data, services.
As the described herein, in various embodiments, it can provide for performing route in NDN Agencies and/or turning Hair(For example, formulating route and/or forwarding decision in NDN Agencies)Method.
As the described herein, in various embodiments, it can provide for naming in data network system to data The Aliasing method of object, it comprises the following steps:Data object is associated with their syntax and semantic alias;Announce other Name simultaneously propagates alias to NDN routers;And implicitly learn alias by observed data object requests and response.
As the described herein, in various embodiments, it can provide right in name data network system for improving The method of the access of data object, it comprises the following steps:The identification other name data objects associated with data object;Wound Build the name figure of associated data object;When naming node accessed for one, in name figure(Or its subgraph)It is middle obtain one or Multiple adjacent nodes;And schemed according to name(Or its subgraph)(Rather than individually according to name object)Formulate routing decision.
As the described herein, in various embodiments, it is possible to provide for the Aliasing method of name data object and Entity for naming data network.In one example:The producer announces title and alias;Requestor can ask primitive name Claim or alias;Agency asks and responded to learn alias by route propagation and/or observation;When carrying out data object request, If data object title or alias are in both the buffers, act on behalf of and responded;Please if in both the buffers, not carrying out route Ask(For example, to center or distribution router), the route requests are routed to nearest data object(Alias)Position.
As the described herein, in various embodiments, it is possible to provide for naming in data network system to name number According to the Aliasing method of object, it comprises the following steps:Data object is associated with its alias(Statically, using being calculated Data object signature and/or use query routing);Announce alias and propagate alias to NDN routers;Pass through observed data pair Implicitly learn alias as asking and responding.
As the described herein, in various embodiments, it is possible to provide for according to the title asked and pair inferred The method for carrying out data object route as alias.For example:If alias copy is in both the buffers, rung with alias copy Should;If the Location-Unknown for the data object asked but alias copy is known, the position is routed requests to;If Alias copy nearby position, then route requests to the position.
In other examples, any step, function described herein performed by router etc. can be with(Or substitute Ground)Performed by one or more servers, interchanger or similar devices.
As the described herein, router(For example, intermediate router)Can be inferred by observing request-response sequence and Implicitly learn alias.For example, it is contemplated that the user on object O1 asks, it is forwarded by router R to source.Source(And/or way In another intermediate router)It is O1 alias to know O2, and responds with O2 the request.R observes the sequence, and is learnt with new O1 alias update its local information.
In another example, the process of " query criteria " can provide Query Name mapping services, it is possible to will not The query criteria of same type turns to normal data title(For example, such as the name structure defined of network).For example, name structure Can be data(Such as weather)Attribute, wherein attribute includes the data about position, time, length and tissue etc. Information.In one embodiment, the reachable network of various types of inquiries, and substantially ask identical data.For example, working as When inquiring up to network of " Manhattan afternoon 5. -6 point or so When the Rain Comes ", the inquiry can be mapped to by agency/position/when Between/condition, and local name request of data is sent in a network.So, it is possible to use by for previous inquiry " New York yesterday It is fine day " intermediate node for servicing and having the local cache copy of data, network response time and server service are provided Load can be reduced.
As the described herein, the network switch can have multiple interfaces, and each of which has the different network address. " output interface " is to enter the exchange interface that packet will be forwarded thereon.Equally, " input interface " is to be grouped in connect thereon The exchange interface of receipts.
In other examples, embodiment can be applied in route in data center and/or in general arbitrary network (For example, enterprise network, internet)Interior route.
In other examples, any step described here can be performed by any appropriate desired order.
Person of ordinary skill in the field knows that various aspects of the invention can be implemented as system, method or calculating Machine program product.Therefore, various aspects of the invention can be implemented as following form, i.e.,:Complete hardware embodiment, Complete Software Implementation(Including firmware, resident software, microcode etc.), or the embodiment party combined in terms of hardware and software Formula, may be collectively referred to as " circuit ", " module " or " system " here.In addition, in certain embodiments, various aspects of the invention are also The form of the computer program product in one or more computer-readable mediums is can be implemented as, the computer-readable medium In include computer-readable program code.
Any combination of one or more computer-readable mediums can be used.Computer-readable medium can be computer Readable signal medium or computer-readable recording medium.Computer-readable recording medium for example can be --- but do not limit In system, device or the device of --- electricity, magnetic, optical, electromagnetic, infrared ray or semiconductor, or it is any more than combination.Calculate The more specifically example of machine readable storage medium storing program for executing(Non exhaustive list)Including:Electrical connection with one or more wires, just Take formula computer disks, hard disk, random access memory(RAM), read-only storage (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, portable compact disc read only memory (CD-ROM), light storage device, magnetic memory device or Above-mentioned any appropriate combination.In this document, computer-readable recording medium can be any includes or storage program Tangible medium, the program can be commanded execution system, device or device and use or in connection.
Computer-readable signal media can be included in a base band or as the data-signal of carrier wave part propagation, Wherein carry computer-readable program code.The data-signal of this propagation can take various forms, including --- but It is not limited to --- electromagnetic signal, optical signal or above-mentioned any appropriate combination.Computer-readable signal media can also be Any computer-readable medium beyond computer-readable recording medium, the computer-readable medium can send, propagate or Transmit for being used or program in connection by instruction execution system, device or device.
The program code included on computer-readable medium can be transmitted with any appropriate medium, including --- but do not limit In --- wireless, wired, optical cable, RF etc., or above-mentioned any appropriate combination.
It can be used for any combination of random procedure design language or one or more programming languages to write Perform the computer program code that operates of the present invention, described program design language includes object oriented program language-all Such as Java, Smalltalk, C++, or a kind of procedural programming language-such as " C " language or similar program are set Count language.Program code fully can on the user computer be performed, partly performed on the user computer, as one Independent software kit is performed, part is performed or completely in remote computation on the remote computer on the user computer for part Performed on machine or server.In the situation of remote computer is related to, remote computer can be by the net of any kind Network --- including LAN (LAN) or wide area network (WAN)-subscriber computer is connected to, or, it may be connected to outside is calculated Machine(For example pass through Internet connection using ISP).
Herein can be by the flow chart with reference to method according to embodiments of the present invention, system and/or computer program product And/or the block diagram description present invention.It should be appreciated that each in each square frame and flow chart and/or block diagram of flow chart and/or block diagram The combination of square frame, can be realized by computer program instructions.These computer program instructions can be supplied to all-purpose computer, The processor of special-purpose computer or other programmable data processing units, so as to produce a kind of machine so that these computers Programmed instruction generates implementation process figure in the computing device by computer or other programmable data processing units And/or one or more of the block diagram device of function/action specified in square frame.
These computer program instructions can also be stored in computer-readable medium, these instruct cause computer, Other programmable data processing units or other equipment work in a specific way, so that, it is stored in computer-readable medium Instruction, which is just produced, includes the instruction of function/action specified in one or more of implementation process figure and/or block diagram square frame Manufacture(article of manufacture).
Computer program instructions can also be loaded in computer, other programmable data processing units or other so that one is Equipment that row operating procedure is performed on computers, the other programmable devices or miscellaneous equipment for producing computer implemented process On, to cause the instruction performed on computer or other programmable devices or miscellaneous equipment to provide for realizing in flow chart And/or one or more of the block diagram process of function/action specified in square frame.
Flow chart and block diagram in accompanying drawing show system, method and the computer journey of multiple embodiments according to the present invention Architectural framework in the cards, function and the operation of sequence product.At this point, each square frame in flow chart or block diagram can generation The part of one module of table, program segment or code a, part for the module, program segment or code is used comprising one or more In the executable instruction for realizing defined logic function.It should also be noted that in some implementations, the function of being marked in square frame Can be with different from the order marked in accompanying drawing generation.For example, two continuous square frames can essentially be held substantially in parallel OK, they can also be performed in the opposite order sometimes, and this is depending on involved function.It is also noted that block diagram and/or The combination of each square frame in flow chart and the square frame in block diagram and/or flow chart, can use function as defined in execution or dynamic The special hardware based system made is realized, or can be realized with the combination of specialized hardware and computer instruction.
It should be noted that above having summarised some targets and embodiment of the present invention.The present invention can be used to be permitted Many applications.So as to which although specification is to be directed to ad hoc arrangement and method, the purpose of the present invention and concept are suitable for and can applied In other arrangements and application.Those skilled in the art are not it should be clear that departing from the feelings of spirit and scope of the present invention Under condition, the disclosed embodiments can be modified.Described embodiment should be interpreted only to represent certain of the invention A little features and application.By with mode application disclosed invention different known to pump field or the modification present invention, Qi Tayou Beneficial effect can also be implemented.In addition, all examples disclosed herein are intended to mean that, and it is unrestricted.

Claims (25)

1. a kind of method realized in computer systems, in the name data network including multiple routers to data Object is Aliasing, wherein, at least the first data object in the data object is associated with least the first alias, methods described Including:
Detected by the first router to the content of at least one name data object request of first data object and to institute The content of at least one response of name data object request is stated, wherein the content of at least one name data object request Including name, the content of at least one response includes the semantic alias of the name;And
The content detected at least one being based at least partially on by the first router in the request and the response is hidden Learn first alias likes;
It is wherein described implicitly to learn based on the associated query criteria of the content with being detected;
Different types of query criteria is turned to normal data title by wherein described query criteria;
Wherein described standard data name claims by the name structure defined of the name data network.
2. the method as described in claim 1, in addition to:First data object is associated with first alias.
3. method as claimed in claim 2, wherein, it is described associated to include:Described first is registered to title management server Alias.
4. method as claimed in claim 2, in addition to:First alias is propagated at least the second router.
5. the method for claim 1, wherein the request and the response are route by the first router.
6. the method for claim 1, wherein it is described implicitly learn also based on determine it is associated with the content detected Data object signature.
7. a kind of method realized in computer system network, for the root in the name data network including multiple routers Data object route is carried out according to name data object request, methods described includes:
The name data object request is received at the first router;
Determine the data object by the name data object request name whether in the first via by the first router In the buffer of device;
If by the data object of the name data object request name in the buffer of the first router, by institute The first router is stated to be responded with the data object;
If by the data object of the name data object request name not in the buffer of the first router, by Whether the alias copy for the data object that the first router determination is named by the alias associated with name data object In the buffer of the first router;
If by the data object of the name data object request name not in the buffer of the first router, and Caching of the alias copy for the data object named by the alias associated with name data object in the first router In device, then responded by the first router with the alias copy;
If by the data object of the name data object request name not in the buffer of the first router, and The alias copy for the data object named by the alias associated with name data object is not in the slow of the first router In storage, then determined by the first router alias copy of the data object the position of the second router whether be It is known;And
If by the data object of the name data object request name not in the buffer of the first router, and The alias copy for the data object named by the alias associated with name data object is not in the slow of the first router In storage, and position of the alias copy at the second router of the data object is known, then by the first via The name data object request is route to the position of the second router from device.
8. method as claimed in claim 7, in addition to:
If by the data object of the name data object request name not in the buffer of the first router, by The first router is determined No is known;
Wherein, if the data object named by the name data object request is in the position of the third router Know, and the third router position of the position than the second router closer to the first router, then:
The name data object request is route to the position of the third router from the first router, rather than institute State the position of the second router.
9. a kind of method realized in computer systems, for accessing number in the name data network including multiple routers According to object, methods described includes:
The name data object request of the first data object of mark is received at the first router;
At least a portion of name figure is received at the first router, wherein, the name map logo associated data object, The associated data object includes first data object, and the name figure provides every with the associated data object that is identified One corresponding node, each node represents the position at a router;
First data object is obtained by the first router;And
When first data object is acquired, by the first router be based at least partially on received name figure Lai Obtain at least one other associated data object identified.
10. method as claimed in claim 9, wherein, the first router receives whole name figure.
11. method as claimed in claim 9, in addition to:Received life is based at least partially on by the first router Name figure makes at least one routing decision.
12. a kind of computer implemented system, for other to data object in the name data network including multiple routers Nameization, the system includes:
Be configured as by the first router detect to the first data object at least one name data object request content and To the module of the content of at least one response of the name data object request, wherein at least one described name data object The content of request includes name, and the content of at least one response includes the semantic alias of the name;And
At least one that be configured as being based at least partially in the request and the response by the first router is detected Content implicitly learn the module of the first alias;
It is wherein described implicitly to learn based on the associated query criteria of the content with being detected;
Different types of query criteria is turned to normal data title by wherein described query criteria;
Wherein described standard data name claims by the name structure defined of the name data network.
13. system as claimed in claim 12, in addition to:It is configured as first data object and first alias Associated module.
14. system as claimed in claim 13, wherein, it is configured as first data object and the first alias phase The module of association includes:It is configured as registering the module of first alias to title management server.
15. system as claimed in claim 13, in addition to:It is configured as propagating first alias at least the second router Module.
16. system as claimed in claim 12, wherein, the request and the response pass through the first router incoming road By.
17. system as claimed in claim 12, wherein, implicitly learn also associated with the content detected based on determining Data object is signed.
18. a kind of computer implemented system, for other to data object in the name data network including multiple routers Nameization, the system includes:
It is configured as receiving the module of name data object request in the first router;
It is configured as determining the data object by the name data object request name whether in institute by the first router State the module in the buffer of the first router;
If be configured as by the data object for naming data object request name in the buffer of the first router In, then the module responded by the first router with the data object;
If being configured as the data object by the name data object request name not in the caching of the first router In device, then the alias pair of the data object by the alias name associated with name data object is determined by the first router This whether the module in the buffer of the first router;
If being configured as the data object by the name data object request name not in the caching of the first router In device, and by the alias copy of data object named with the associated alias of name data object in the first router Buffer in, then the module responded by the first router with the alias copy;
If being configured as the data object by the name data object request name not in the caching of the first router In device, and by the alias copy of data object named with the associated alias of name data object not the first via by In the buffer of device, then determine the alias copy of the data object in the position of the second router by the first router Whether known module;With
If being configured as the data object by the name data object request name not in the caching of the first router In device, and by the alias copy of data object named with the associated alias of name data object not the first via by In the buffer of device, and the data object position of the alias copy at the second router be it is known, then by The module that the name data object request is route by the first router to the position of the second router.
19. system as claimed in claim 18, in addition to:
If being configured as the data object by the name data object request name not in the caching of the first router In device, then determine the data object by the name data object request name in third router by the first router The whether known module in position;
Wherein, if the data object named by the name data object request is in the position of the third router Know, and the third router the position of the position than the second router closer to the first via By device, then:
The name data object request is route to the position of the third router from the first router, rather than institute State the position of the second router.
20. a kind of computer implemented system, for other to data object in the name data network including multiple routers Nameization, the system includes:
It is configured as receiving the module of name data object request at the first router, wherein, the name data object please Seek the first data object of mark;
It is configured as receiving at least one of module of name figure at the first router, wherein, the name icon Know associated data object, the associated data object includes first data object, what the name figure was provided and identified The corresponding node of each of associated data object, each node represents the position at a router;
It is configured as being obtained the module of first data object by the first router;And
When being configured as first data object and being acquired, it is based at least partially on what is received by the first router Name figure obtains the module of at least one other associated data object identified.
21. system as claimed in claim 20, wherein, the first router receives whole name figure.
22. system as claimed in claim 20, in addition to:Received life is based at least partially on by the first router Name figure makes at least one routing decision.
23. a kind of computer implemented system, for other to data object in the name data network including multiple routers Nameization, the system includes:
The first router, wherein:
The first router is configured as content of the detection at least one name data object request of the first data object With to it is described name data object request at least one response content, wherein it is described at least one name data object request Content include name, it is described at least one response content include the semantic alias of the name;
The first router is configured as being examined at least one being based at least partially in the request and the response The content of survey implicitly learns the first alias;
It is wherein described implicitly to learn based on the associated query criteria of the content with being detected;
Different types of query criteria is turned to normal data title by wherein described query criteria;
Wherein described standard data name claims by the name structure defined of the name data network.
24. a kind of computer implemented system, in the name data network including multiple routers according to name data Object requests carry out data object route, and the system includes:
The first router, wherein:
The first router is configured as receiving the name data object request;
Whether the first router is configured to determine that the data object by the name data object request name described In the buffer of the first router;
If the first router is configured as the data object by the name data object request name described first In the buffer of router, then responded with the data object named by the name data object request;
If the first router is configured as the data object by the name data object request name not described the In the buffer of one router, it is determined that by the alias copy of the data object of the alias name associated with name data object Whether in the buffer of the first router;
If the first router is configured as the data object by the name data object request name not described the In the buffer of one router, and the alias copy of the data object by the alias name associated with name data object exists In the buffer of the first router, then responded with the alias copy;
If the first router is configured as the data object by the name data object request name not described the In the buffer of one router, and by the alias copy of data object named with the associated alias of name data object not In the buffer of the first router, it is determined that position of the alias copy of the data object at the second router is It is no known;
If the first router is configured as the data object by the name data object request name not described the In the buffer of one router, and by the alias copy of data object named with the associated alias of name data object not In the buffer of the first router, and position of the alias copy at the second router of the data object It is known, then route the name data object request to the position of the second router.
25. a kind of computer implemented system, for accessing data object in the name data network including multiple routers, The system includes:
The first router, wherein:
The first router is configured as receiving name data object request, and it identifies the first data object;
The first router is configured as receiving at least a portion of name figure, wherein, the name map logo related data Object, the associated data object includes the first data object, the associated data object that the name figure is provided and identified Each corresponding node, each node represents the position at a router;
The first router is configured as obtaining first data object;
When the first router is configured as first data object and is acquired, received life is based at least partially on Name figure, obtains at least one other associated data object identified.
CN201310636522.6A 2012-12-06 2013-11-27 For method and computer implemented system Aliasing to data object in the name data network including multiple routers Active CN103856575B (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/707,120 2012-12-06
US13/707,120 US9426053B2 (en) 2012-12-06 2012-12-06 Aliasing of named data objects and named graphs for named data networks
US13/790,962 US9426054B2 (en) 2012-12-06 2013-03-08 Aliasing of named data objects and named graphs for named data networks
US13/790,962 2013-03-08

Publications (2)

Publication Number Publication Date
CN103856575A CN103856575A (en) 2014-06-11
CN103856575B true CN103856575B (en) 2017-09-01

Family

ID=50863779

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310636522.6A Active CN103856575B (en) 2012-12-06 2013-11-27 For method and computer implemented system Aliasing to data object in the name data network including multiple routers

Country Status (1)

Country Link
CN (1) CN103856575B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106502993B (en) * 2016-11-28 2019-06-21 北京交通大学 The multidimensional of data network is named to name support method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060165053A1 (en) * 2005-01-21 2006-07-27 Nec Laboratories America, Inc. Content based data packet routing using labels

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
"Distributed in-network cooperative caching";Xiaoyan Hu , Jian Gong;《IEEE International Conference on Cloud Computing & Intelligence Systems》;20121030;全文 *
"以内容为中心的互联网体系架构研究";杨柳 , 马少武 , 王晓湘;《信息通信技术》;20111215;第66-70页 *
"命名数据网络中的邻居缓存路由策略叶润生";徐明伟;《计算机科学与探索》;20120715;第6卷(第7期);第593-601页 *
"基于能耗的流量路由与NDN网路(英文)";宋云龙,刘敏;《中国通信》;20120615(第6期);第71-81页 *

Also Published As

Publication number Publication date
CN103856575A (en) 2014-06-11

Similar Documents

Publication Publication Date Title
CN105530324B (en) The method and system of process resource request
CN105409248B (en) System and method for enhancing discovery
US9553812B2 (en) Interest keep alives at intermediate routers in a CCN
KR20150088713A (en) End-to-end route tracing over a named-data network
CN101178722A (en) Selecting and displaying descendant pages
US9742669B2 (en) Aliasing of named data objects and named graphs for named data networks
US10148572B2 (en) Method and system for interest groups in a content centric network
US11741068B2 (en) Methods and apparatus to estimate cardinality of users represented across multiple bloom filter arrays
US10742596B2 (en) Method and system for reducing a collision probability of hash-based names using a publisher identifier
KR20170068380A (en) Key catalogs in a content centric network
Saxena et al. N-FIB: Scalable, memory efficient name-based forwarding
Song et al. TCCN: Tag-assisted content centric networking for Internet of Things
AU2022209249A1 (en) Directory assisted routing of content in an information centric network
Qiao et al. Session persistence for dynamic web applications in Named Data Networking
CN103856575B (en) For method and computer implemented system Aliasing to data object in the name data network including multiple routers
US8332463B2 (en) Distributed storage system, connection information notifying method, and recording medium in which distributed storage program is recorded
CN103609081B (en) Routing by resolution
Wang et al. Leveraging ICN with network sensing for intelligent transportation systems: A dynamic naming approach
CN109691067A (en) System and method for transmitting and receiving interest message
Ho et al. Distributed asynchronous algorithms for multicast network coding
Cao et al. Location dependent query in a mobile environment
Trossen et al. Designing, implementing and evaluating a new internetworking architecture
US10397174B2 (en) Message delivery in a message system
US11960544B2 (en) Accelerating fetching of result sets
Kaur et al. A short survey on role of Bloom filters in named data networking

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant