【技术实现步骤摘要】
用于在包括多个路由器的命名数据网络中对数据对象别名化的方法和计算机实现的系统
本专利技术通常涉及(命名数据网络中)数据对象的别名化的领域。本专利技术通常还涉及用于命名数据网络的实体(例如,用于命名数据网络的命名图)的领域。在各种例子中,命名数据对象的别名化可以采用系统、方法和/或算法的形式在一个或多个命名数据网络中实现。在其它实例中,命名图可以采用系统、方法和/或算法的形式在一个或多个命名数据网络中实现。
技术介绍
在某些编程语言中提供别名化。这种别名化通常描述存储器中的数据位置可通过程序中的不同符号名称来访问的情形。因此,通过一个名称来修改数据隐式地修改了与所有别名化了的名称相关的值,这可能不是程序员所期望的。在某些关系型数据库中也提供别名化(例如,用于关系型数据库的替换名称、通过通信协议、主机名称和数据库实例的标识、用于远程系统上的单个关系型数据库的多个实体)。命名数据网络(在此有时也称为“NDN”)是请求(例如来自用户或代理)使用诸如例如字母数字字符的名称(相对于传统IP网络中的机器地址)被路由到数据实体(或数据对象)的范例。在NDN范例中,用户(或使用者)向数据生产者请求命名数据(这种请求有时称为“interest”)。根据请求中数据的名称,用户的请求通过一个或多个路由器(可能通过一个或多个NDN代理)向数据生产者转发。接着,数据生产者用所请求的数据进行响应。图1示出传统的命名数据网络体系结构100的例子。如该例子所示,用户101A、101B和101C通过代理105A、105B、105C、105D、105E、105F、105G和/或105H与生产者 ...
【技术保护点】
一种在计算机系统中实现的方法,用于在包括多个路由器的命名数据网络中对数据对象别名化,其中,所述数据对象中的至少第一数据对象与至少第一别名相关联,所述方法包括:由第一路由器检测对所述第一数据对象的至少一个命名数据对象请求的内容和对所述命名数据对象请求的至少一个响应的内容;以及由所述第一路由器至少部分地基于该请求和该响应中的至少一个的所检测的内容隐式地学习所述第一别名。
【技术特征摘要】
2012.12.06 US 13/707,120;2013.03.08 US 13/790,9621.一种在计算机系统中实现的方法,用于在包括多个路由器的命名数据网络中对数据对象别名化,其中,所述数据对象中的至少第一数据对象与至少第一别名相关联,所述方法包括:由第一路由器检测对所述第一数据对象的至少一个命名数据对象请求的内容和对所述命名数据对象请求的至少一个响应的内容,其中所述至少一个命名数据对象请求的内容包括名字,所述至少一个响应的内容包括所述名字的语义别名;以及由所述第一路由器至少部分地基于该请求和该响应中的至少一个的所检测的内容隐式地学习所述第一别名;其中所述隐式地学习基于与所检测的内容相关联的查询标准化;其中所述查询标准化将不同类型的查询标准化为标准数据名称;其中所述标准数据名称被所述命名数据网络的命名结构所规定。2.如权利要求1所述的方法,还包括:将所述第一数据对象与所述第一别名相关联。3.如权利要求2所述的方法,其中,所述相关联包括:向名称管理服务器注册所述第一别名。4.如权利要求2所述的方法,还包括:将所述第一别名向至少第二路由器传播。5.如权利要求1所述的方法,其中,所述请求和所述响应通过所述第一路由器来路由。6.如权利要求1所述的方法,其中,所述隐式地学习还基于确定与所检测的内容相关联的数据对象签名。7.一种在计算机系统网络中实现的方法,用于在包括多个路由器的命名数据网络中根据命名数据对象请求进行数据对象路由,所述方法包括:在第一路由器处接收所述命名数据对象请求;由所述第一路由器确定由所述命名数据对象请求命名的数据对象是否在所述第一路由器的缓存器中;如果由所述命名数据对象请求命名的数据对象在所述第一路由器的缓存器中,则由所述第一路由器用所述数据对象进行响应;如果由所述命名数据对象请求命名的数据对象不在所述第一路由器的缓存器中,则由所述第一路由器确定由与命名数据对象相关联的别名来命名的数据对象的别名副本是否在所述第一路由器的缓存器中;如果由所述命名数据对象请求命名的数据对象不在所述第一路由器的缓存器中,并且由与命名数据对象相关联的别名来命名的数据对象的别名副本在所述第一路由器的缓存器中,则由所述第一路由器用所述别名副本进行响应;如果由所述命名数据对象请求命名的数据对象不在所述第一路由器的缓存器中,并且由与命名数据对象相关联的别名来命名的数据对象的别名副本不在所述第一路由器的缓存器中,则由所述第一路由器确定所述数据对象的别名副本在第二路由器处的位置是否是已知的;以及如果由所述命名数据对象请求命名的数据对象不在所述第一路由器的缓存器中,并且由与命名数据对象相关联的别名来命名的数据对象的别名副本不在所述第一路由器的缓存器中,并且所述数据对象的别名副本在所述第二路由器处的位置是已知的,则由第一路由器将所述命名数据对象请求向所述第二路由器的位置路由。8.如权利要求7所述的方法,还包括:如果由所述命名数据对象请求命名的数据对象不在所述第一路由器的缓存器中,则由所述第一路由器确定由所述命名数据对象请求命名的数据对象在第三路由器处的位置是否是已知的;其中,如果由所述命名数据对象请求命名的数据对象在所述第三路由器处的位置是已知的,并且所述第三路由器的位置比所述第二路由器的位置更接近所述第一路由器,则:由所述第一路由器将所述命名数据对象请求向所述第三路由器的位置路由,而不是所述第二路由器的位置。9.一种在计算机系统中实现的方法,用于在包括多个路由器的命名数据网络中访问数据对象,所述方法包括:在第一路由器处接收标识第一数据对象的命名数据对象请求;在所述第一路由器处接收命名图的至少一部分,其中,所述命名图标识相关数据对象,所述相关数据对象包括所述第一数据对象,所述命名图规定与所标识的相关数据对象的每一个对应的节点,每个节点表示在一个路由器处的位置;由所述第一路由器获取所述第一数据对象;以及当所述第一数据对象被获取时,由所述第一路由器至少部分地基于所接收的命名图来获取至少一个另外的所标识的相关数据对象。10.如权利要求9所述的方法,其中,所述第一路由器接收整个命名图。11.如权利要求9所述的方法,还包括:由所述第一路由器至少部分地基于所接收的命名图来作出至少一个路由决策。12.一种计算机实现的系统,用于在包括多个路由器的命名数据网络中对数据对象别名化,所述系统包括:被配置为由第一路由器检测对第一数据对象的至少一个命名数据对象请求的内容和对所述命名数据对象请求的至少一个响应的内容的模块,其中所述至少一个命名数据对象请求的内容包括名字,所述至少一个响应的内容包括所述名字的语义别名;以及被配置为由所述第一路由器至少部分地基于该请求和该响应中的至少一个的所检测的内容隐式地学习第一别名的模块;其中所述隐式地学习基于与所检测的内容相关联的查询标准化;其中所述查询标准化将不同类型的查询标准化为标准数据名称;其中所述标准数据名称被所述命名数据网络的命名结构所规定。13.如权利要求12所述的系统,还包括:被配置为将所述第一数据对象与所述第一别名相关联的模块。14.如权利要求13所述的系统,其中,被配置为将所述第一数据对象与所述第一别名相关联的模块包括:被配置为向名称管理服务器注册所述第一别名的模块。15.如权利要求13所述的系统,还包括:被配置为向至少第二路由器传播所述第一别名的模块。16.如权利要求12所述的系统,其中,所述请求和所述响应通过所述第一路由器来路由。17.如权利要求12所述的系统,其中,隐式地学习还基于确定与所检测的内容相关联的数据对象签名。18.一种计算机实现的系统,用于在包括多个路由器的命名数据网络中对数据对象别名化,所述系统包括:被配置为在第一路由器接收命名数据对象请求的模块;被配...
【专利技术属性】
技术研发人员:R·B·迪尔麦格哈尼,高凤晙,李康源,V·帕帕斯,R·拉格哈文德拉,宋旸,
申请(专利权)人:国际商业机器公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。