NDN介绍(空间)

2020-11-19  本文已影响0人  甸仔向前冲

转自某度文库VIP,第一次砸人饭碗hhh


正文

NFD 中包是如何传递的:

NDN 中的包格式:

Interest 包、 Data 包、 Nack 包( TLV编码)

NDN 中的包处理过程:

OverIP(Face):

最新的 NDN 协议版本是 2.1,实现是 NFD:

Face 是 连 接 NDN 和 底 层 传 输 的 接 口 , NDN forwarder 可 以 通 过 face 发 送 和 接 收

Interest,Data,Nack , face 来处理底层的通信机制。

大致流程:

在 Face的上面就是我们熟悉的 NDN 协议了,包的处理都是按照 NDN 来处理的。以前的 CCNx里面的具体连接步骤( HostA 和 HostB):

  1. 在主机 A 上建立 UNIX socket face 和 local ccnd A 通讯

  2. 在主机 A 上建立一条和主机 B 的连接

  3. 主机 B 接受连接

  4. 在主机 B 上建立 UNIX socket face 和 local ccnd B 通讯

( address family 为 AF_UNIX)

建立:

  1. 直接 Over 以太网的( NDN 直接在以太网上操作)

  2. Overlay tunnel : UDP、TCP、WebSocket

  3. Unix-domain socket( communication between NFD and local app)

维护:

  1. FaceTable

  2. FaceTable::add

  3. afterReceiveInterest afterReceiveData afterReceiveNack signals

  4. sendInterest sendData sendNack methods

实现细节:

  1. LinkService(UDP/TCP和 Forwarder 之间的 Link)
    分片、重组、网络层计数、故障探测
  2. Transport(TCP/UDP)
    Acts as an wrapper over an underlying network transmission protocol (TCP, UDP, Ethernet, etc.) and provides services like link-layer counters.
    主要是和 TCP、 UDP 之间的封装

分片和重组:
Fragmenter: 将要传的数据分片,加入FragIndex 和 FragCount 域Reassembler: Endpoint_id ( 64bits )

命名:
NameTree + Hash(CityHash)
也就是给名字建Hash树,而每个名字空间里面有以下这些东西:

上一篇 下一篇

猜你喜欢

热点阅读