命名数据网络(Named Data Networking, NDN)经常出现在5G、边缘计算相关的文献书籍上,那NDN究竟是何方神圣?一起来了解一下吧!

  NDN架构概述

众所周知,21世纪的重要特征就是数字化、信息化和网络化,它是一个以网络为核心的信息时代。显然,信息化的实现需要依靠网络,通过网络以非常迅速的速度传递信息。信息网络对社会生活、社会经济等方面已经产生不可估量的影响。信息网络主要提供两个重要的功能:连通性和共享。所谓连通性就是用户可以通过网络交换信息而不受距离的限制。所谓共享是指资源共享,用户通过网络从服务器上获取自己所需要的资源。

TCP/IP体系结构通过分层协作的方式有条不紊的交换数据。TCP/IP体系结构规范了网络通信方式,主机与主机之间通过寻址的方式传输信息。基于“主机到主机”通信方式地TCP/IP体系结构逐渐暴露出其诸多方面的不适性:可靠性、安全性和移动性均无法满足网络的发展需求。现如今,随着网络的不断变革,用户的需求占据主导地位,下一代网络的需求主要包括:内容导向性、移动性、扩展性和安全性。

为了从根本上解决上述问题,专家学者研究人员提出应开发出一个全新的网络架构取代现在的TCP/IP网络协议,于是2010年由美国国家科学基金会(National  Science Foundation ,NSF)发起了未来网络架构研究项目。研究人员先后提出了各种方案,其中命名数据网络(Named Data Networking, NDN)将内容本身看作网络中的主导实体,采取基于内容的架构颠覆了当前基于主机的网络架构,因而成为未来未来研究中一个具有代表性的网络架构。NDN是一个完全不同于TCP/IP的体系结构,其将当前网络结构的优势和局限性反映在设计上,目前NDN已经成为国内外的研究热点。

  NDN体系结构

如图所示,传统的TCP/IP网络体系结构采用的是沙漏架构模型,采用分层结构并通过统一的接口进行数据交换使得层与层之间相互透明。其中最重要的是沙漏“细腰”部分的网络层,基于IP数据包的网络通信基本上覆盖了所有的功能需求。但也正是这个“细腰”的结构无法很好的适应网络向信息中心网络(Information Center Network,ICN)转变趋势,制约了互联网的快速发展。

沙漏模型

通过对TCP/IP的优势、局限性和使用经验等方面的研究,研究人员决定在NDN的架构上保留传统的TCP/IP网络的沙漏模型及分层思想,并对“细腰”处的中间层进行颠覆式的改进,如上图所示。这种改进的核心关键在于完全舍弃了基于IP地址的通信方式,采用基于内容本身的通信方式,根据内容本身对网络中的所有内容数据进行命名,在转发路由机制中通过对内容数据的名字匹配检索获取信息,从而建立一个分布式网络。这样的通信方式不再关心内容数据的存储位置,而直接提供面向内容的服务。NDN的网络架构有效解决了许多网络中现存的通信兼容问题和线路分配问题。

NDN网络架构的优势不仅体现在根据内容本身对网络中的所有内容数据进行命名,还体现在其基于数据本身的安全机制和多样的路由策略选择上。在数据安全方面,由应用进程对内容数据直接进行加密及数字签名以实现对数据安全的控制。在路由策略选择方面,由策略层负责管理转发、路由选择和存储几大功能,其突出的特点是可同时利用3G、蓝牙、WiFI等多种连接方式,并能够在动态环境中灵活切换至最优的连接方式。

因此,NDN网络架构的主要改变如下:(1)数据命名:根据内容本身内容数据直接进行层次命名,实现了对内容数据的共享;(2)安全性:对内容数据直接进行加密及数字签名实现对数据安全的控制;(3)网络节点存储模块:更好的支持时变、断续连接和移动性等环境。

NDN 中有两类角色,分别为消费者(Consumer)和生产者(Producer);有两类包,分别为Interest 包和Data 包;内容(Content)均由名字(Name)作为标识。消费者若要请求某内容,则产生带有相应名字的 Interest包,通过网络转发,到达存有此内容的结点,此结点收到Interest包后,沿着此 Interest 包的反向路径返回携带相应名字的Data包。因此,NDN 采用的是接收者驱动即拉(Pull)机制。Interest包和 Data包的结构如下图所示。

Interest 包和 Data 包结构图

与传统 IP 网络不同的是,NDN 中间结点即路由器支持缓存(Cache),每个结点都维护三个模块,分别是内容存储 (Content Store, CS)、待定 Interest 表 (Pending Interest Table, PIT)、转发信息库(Forwarding Information Base, FIB)。

收到 Interest 包后,路由器首先检查 CS 中是否缓存了相应内容,如果有则直接回复 Data 包,如果没有则查找 PIT,如果 PIT 已有相应条目,则只记录收到 Interest 包的接口而不转发,如果没有则依照 FIB 和转发策略转发,并增加相应的 PIT 条目,或是根据相关信息丢弃Interest 包。收到 Data 包后,路由器根据 PIT 中相应条目的信息转发,由于此内容请求已经满足,转发后路由器将删除 PIT 相应条目,并依据缓存策略和相关替换机制决定 CS 中存储的内容。显然,名字在NDN 转发过程中占据着核心地位,通常有层次化和扁平化两种命名方式,而转发则基于最长名字前缀匹配  。

  NDN主要特点

NDN 主要有如下特点:

(1)以内容为中心的去中心化架构。Interest包和 Data 包的结构意味着网内的所有动作均以其名字为中心,因而不再需要建立类似于传统 IP 网络中端到端的连接,也无需采用集中式架构。

(2)以数据为中心的安全性。每个Data 包都有签名,从而在包这一层次确保了数据的安全性,应用通过加密和分发密钥来控制其他结点对内容的访问权限。

(3) 支持网内存储和 Interest 包聚合。NDN 路由器的 CS 能够存储内容,一旦中间结点能满足Interest 包的请求,则无需进一步转发即可直接返回相应的 Data 包;Interest 包聚合机制使中间结点在相应情况下无需重复转发相同的内容,这降低了网内流量,减轻了内容生产者的负担,增强了网络性能。

(4)支持新的路由协议。NDN 支持自适应转发面,支持多路径转发和快速故障恢复,路由协议的作用是传递初始拓扑、策略信息及其长期变化,计算路由表,因此可采用若干新的路由协议,如双曲路由,取得较好效果的同时减少其开销。

  NDN杂谈

为了简化网络架构,Verizon和思科使用命名数据进行测试,而不是使用IP地址等位置标识符。用于视频传输优化。预期NDN的好处包括动态自适应流和媒体的负载平衡。此外,在网络中转发和缓存内容可以增加流量本地化,并通过利用多播节省带宽来释放回程和核心。由于NDN是访问层不可知的,它还支持不同访问方法(如5G和Wi-Fi)之间实现更高效的切换——随着5G的推出,这种共存将继续下去。

全球著名咨询公司Gartner预计,NDN的优势将弥补边缘计算的不足,至少在缓存、视频优化、应用程序加速和带宽节省方面是如此。

参考资料:

[1] 郑晓琳. 基于NDN架构的5G选择策略研究述.北京交通大学,2016.

[2]张君菲.基于层次分析法的 NDN 缓存策略.网络天地,2019.

[3]陈昱彤,刘开华,李卓,等.基于命名数据网络的5G架构网络层研究.南开大学学报,2019.
[4]李彤,王枫皓.基于NDN的战术网优势及可行性分析.信息通信,2019.

[5]顾艳春,杨吉渊.命名数据网技术的应用.佛山科学技术学院学报,2019.

转发分享一起促进边缘计算领域知识传播!

什么是命名数据网络NDN?相关推荐

  1. 命名数据网络NDN中的概念小总结

    命名数据网络NDN中的概念 1.命名数据网络NDN (named data network) 2.NDN中的两类报文 (1)请求报文(interest报文):当路由结点请求内容时,则发送包含该内容名字 ...

  2. webapi 路由限制命名控件_什么是命名数据网络NDN?

    命名数据网络(Named Data Networking, NDN)经常出现在5G.边缘计算相关的文献书籍上,那NDN究竟是何方神圣?一起来了解一下吧! 一.NDN架构概述 众所周知,21世纪的重要特 ...

  3. 曲奇的ndnSIM API教程翻译 命名数据网络 NDN ndn simulator

    目录 ndnSIM 开发文档 1.入门 1-1介绍 更多文档 支持 日志 1.2下载和编译 可移植性 先决条件 核心依赖项 NS-3 Python绑定的依赖项 下载ndnSIM源码 编译运行ndnSI ...

  4. NDN全栈: 一、命名数据网络(Named Data Networking)背景介绍

    NDN全栈: 一.命名数据网络(Named Data Networking)背景介绍  johnosnfan 关注 2018.10.02 18:09 字数 4557 阅读 294评论 0喜欢 2 最近 ...

  5. 命名数据网络(NDN)中的数据安全隐患

    当前互联网不断面临着动态性.安全性和可扩展性等方面的技术挑战,其发展速度已经难以适应全球网络规模的爆发式扩张. 什么是命名数据网络 (Named Data Network,NDN)? 为了适应发展迅猛 ...

  6. 命名数据网络(NDN)与TCP/IP网络

    之前面试时遇到一个十分有趣的开放性的问题:  当前TCP/IP协议存在哪些问题?如何改进? 当时没有回答好,然后提到了NDN可以针对TCP/IP做出改进,但是在行家面前就漏洞百出,一是对TCP/IP网 ...

  7. NDN-lite 命名数据网络 -----第一章:关于Interest和Data

    声明:   博主这里参考的是NDN-lite 格式规范的0.3版本,不同版本中的数据包和兴趣包中所包含的参数会有细微的差异. 关于NDN网络   命名数据网络(Named-Data Networkin ...

  8. 命名数据网络introduction

    NDN将内容作为主体,不再关心内容存储的位置, 而关心的是内容本身是什么.NDN中每个节点 都具有内容存储库( content storage,CS),这是其 有别于传统网络最大的特点.与传统网络相比 ...

  9. 张北川:命名数据网络(NDN)

    兰巨龙:下面有请亚利桑那大学副教授张北川做报告. 张北川:我今天讲的是可重叠,是我们最近过去几年很大的项目,一直在做关于未来互联网架构的工作.这个NDN是美国NSF在过去五六年支持未来互联网架构的项目 ...

最新文章

  1. pytorch 训练过程acc_【图节点分类】10分钟就学会的图节点分类教程,基于pytorch和dgl...
  2. Markdown语法简介
  3. HTTP/3 来了 !HTTP/2 还没怎么用起来呢,先一起扫个盲吧!
  4. 公路修建问题(二分+最小生成树)
  5. Handler消息机制(二):一个线程有几个Handler
  6. 求解LambdaMART的疑惑?
  7. Tomcat - Tomcat 8.5.55 启动过程源码分析阶段三_start阶段
  8. leetcode 576. Out of Boundary Paths | 576. 出界的路径数(暴力递归->傻缓存->dp)
  9. myelcipse和maven搭建项目
  10. (2)存储过程中可以调用其他存储过程吗?_详解Oracle创建存储过程、创建函数、创建包及实例演示...
  11. 关键词提取算法TF-IDF
  12. 洛谷1031 均分纸牌 解题报告
  13. 最简单的黑客帝国代码雨教程C++
  14. 我的世界java版袭击_袭击 - Minecraft Wiki,最详细的官方我的世界百科
  15. [渝粤教育] 西安交通大学 土力学 参考 资料
  16. 互联网医院|智慧医院系统|线上看病购药更便捷
  17. 解决-Dmaven.multiModuleProjectDirectory system property is not set. Check $M2_HO问题
  18. 广工工作室各方向学习指南
  19. ACRush 楼天成 回忆录
  20. H5 如何实现唤起 APP

热门文章

  1. Spring boot 2.0 mongoTemplate 操作范例
  2. html是什么1003无标题,爱特漫画1003无标题
  3. 深入理解插入排序(why二分插入排序中left就是待插入位置)
  4. centos7 scons安装_安装Python和Scons
  5. 获取Android设备的唯一识别码|设备号|序号|UUI
  6. python 批量修改图片的名字
  7. node.js批量修改图片名称
  8. 2034——人见人爱A-B
  9. teracopy php,Unraid 升级到 UnRaid 6.0的详细操作步骤(三)
  10. 计算机上键盘无法输入法,电脑键盘无法切换输入法