赞
踩
NDN(Named Data Networking)是用来取代当前TCP/IP架构的新的互联网架构,在2010年被提出。
NDN 的网络架构如下右图,它继承了 IP 架构的沙漏型瘦腰结构:
TCP/IP互联网只提供一个通讯管道,只负责维护管道,不关心传输的内容。内容的管理和获取是有应用和服务管理的。
存在哪些问题呢:
当前网络的功能(建立管道)和目的(获取数据)不匹配。NDN网络企图用数据内容取代管道的核心地位。
核心思想是:
优势有:
IP数据包:核心字段是地址。
NDN数据包:分为兴趣包和数据包两种类型,不包含地址,核心是名字。
名字由程序应用生产,对网络层透明。它包括:
下面是一个NDN数据包命名的例子:
服务端注册名字。数据发布者需要注册一个名字前缀(name prefix),比如YouTube注册了一个YouTube/……
路由器根据名字建表。路由器能计算出到达每个名字前缀的路径,建立起路由表。
用户端拿名字请求数据。数据消费者发送兴趣包来请求数据,路由器根据名字和路由表匹配转发。
每个节点都可以缓存数据,可以被反复请求使用。
用户的请求的数据包是没有收货地址的,那快递回来后给谁呢?是这么解决的:每个路由器都维护一个兴趣包缓存表(PIT, Pending Interest Table),就像是淘宝订单,谁请求过什么数据都记录在案!路由器能根据兴趣包缓存表,将数据反向传输给请求者。
先看反面典型,IP数据包路由转发。缺点有:
再看NDN兴趣包和数据包的转发。优势是:
下面是兴趣包和数据包各自的路由机制。
兴趣包结构如下,查询步骤是:
CS:是否已经有缓存了;
PIT:是否已经有其他人请求过了,那就不用再重复发请求了,只需记录一下,在包回来时给所有请求都分一份就行;
FIB:查询哪条路径能满足请求,把兴趣包转发下去。
数据包结构如下,查询步骤是:
PIT:若有该数据的请求,发给所有请求列表;若无则直接丢弃。
CS:留一份缓存后,继续转发。
NDN可能取代IP吗?
新型网络体系提出多年,为啥现在仍是老一套呢?不禁想到了键盘布局的例子,当初键盘布局被特意打乱来减低机器打字的效率,防止太快机器出故障,结果这种“乱序”布局竟然流传至今,原因就是人们习惯了。
那么会不会因为习惯的力量,而同样使人们放弃更先进的NDN,继续使用IP呢?
这倒不会。因为网络结构作为底层实现,是不影响人们正常使用的。不论用NDN还是IP,用户使用习惯丝毫不受影响。NDN由于更灵活、高效、安全,能带来更好的用户体验,还是很有希望取得革命性发展的,就像汽车取代马车一样。
现在的IP网络实在太老旧,在飞速发展的时代面前显得越来越力不从心。相信不久的将来,新一代网络体系必将崭露头角。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。