计算机网络自顶向下方法:第五章 网络层:控制平面 课后复习题

如有错误, 欢迎指出~

目录

第五章: 网络层:控制平面

5.1节

R1. 基于每路由器控制的控制平面意味着什么? 在这种情况下, 当我们说网络控制平面和数据平面是"整体地"实现时, 是什么意思?

  • 基于每路由器控制的控制平面意味著每个路由器都有一个路由选择组件, 用于与其他路由器中的路由选择组件通信, 以计算其转发表的值.
  • 当我们说网络控制平面和数据平面是"整体地"实现时, 是基于每路由器控制说的, 也就是一个路由器能独自完成数据平面和控制平面的功能. 现代路由器广泛使用SDN在数据平面和控制平面之间做了明显的分割, 这就不是整体实现了.

 

R2. 基于逻辑上集中控制的控制平面意味着什么? 在这种情况下, 数据平面和控制平面是在相同的设备或在分离的设备中实现的吗? 请解释.

  • 基于逻辑上集中控制的控制平面意味着控制平面的具体实现不在每个路由器中, 而是在某个集中的地方(服务器).
  • 这种情况下数据平面和控制平面在分离的设备中实现. 路由器的控制服务位于某个单一的服务点, 处于容错和性能扩展的原因, 很可能由多个服务器实现.

 

R3. 比较和对照集中式和分布式路由选择算法的性质. 给出一个路由选择协议的例子, 该路由选择协议采用分布式方法和集中式方法.

  • 集中式路由选择算法以所有节点之间的连通性及所有链路的开销作为输入, 通过这些完整的, 全局性的网络知识计算出从源到目的地之间的最低开销路径.
  • 对于分布式路由选择算法, 每个节点仅有于其直接相连链路的开销信息即可开始工作, 通过迭代计算过程以及与相邻节点的信息交换, 一个节点逐渐计算出到达目的节点或一组目的节点的最低开销路径.
  • 比如距离向量算法采用的就是分布式方法.

 

R4. 比较和对照链路状态和距离矢量这两种路由选择算法.

  • 在距离矢量算法中, 每个节点仅与它的直接相邻的邻居交谈, 但它为邻居提供了它自己到网络中所有其他节点的最低开销估计. 而链路状态算法需要全局信息.
链路状态路由选择算法 距离矢量路由选择算法
报文复杂性 相对较高 相对较低
收敛速度 相对较快 相对较慢
健壮性 相对较强 较弱

 

R5. 在距离矢量路由选择中的"无穷计数"是什么意思?

  • 由于链路开销增加的消息传播得很慢, 如果某条链路上的开销突然有一个巨大的增幅, 会造成路由选择环路, 有时也被称为无穷计数.

 

R6. 每个自治系统使用相同的AS内部路由选择算法是必要的吗? 说明其原因.

  • AS(Autonomous System, 自治系统). 每个自治系统使用相同的AS内部路由选择算法是必要的. 因为因特网是ISP的网络, 每个ISP都有自己的路由器网络并希望按自己的意愿运行路由器.

 

5.3~5.4节

R7. 为什么在因特网中用到了不同的AS间与AS内部协议?

  • 因为AS内部端系统间传播距离短, 不同AS间的传播距离长. 传播距离的长短会限制路由选择协议的性能. 目前AS内部路由选择协议广泛使用OSPF, 它是一种链路状态协议, 适合于子网内的路由选择. 而AS间的路由选择协议是BGP(Broder Gateway Protocol, 边界网关协议), 它与距离向量路由选择协议有许多相似的地方.
  • 其实性能只是其中一个次要关心的问题, 对该问题的答案触及了AS内和AS间的路由选择目标之间的本质差别, p263

 

R8. 是否判断题: 当一台OSPF路由器发送它的链路状态信息时, 它仅向那些直接相邻的节点发送. 解释理由.

  • 错误. OSPF是一种链路状态协议, 使用洪泛链路状态信息和Dijkstra算法. 运行OSPF时, 路由器向自治系统内所有其他路由器广播路由选择信息, 而不仅仅是向相邻路由器广播.

 

R9. 在OSPF自治系统中区域表示什么? 为什么引入区域概念?

  • OSPF协议是运行在AS(自治系统)中的, 而自治系统中还能够继续进行划分. 继续划分后的路由器集合称为区域(这里的划分是有层次结构的, 会划分成普通区域和主干区域).
  • 引入区域原因: 划分区域后, 每个区域都运行自己的OSPF链路状态路由选择算法, 比起在整个AS中运行OSPF来说, 降低了复杂性, 提高了收敛速率.

 

R10. 定义和对比下术语: 子网, 前缀和BGP路由.

  • 子网: 在一定范围内多个端系统构成的网络, 它们的网络地址具有相同的前缀
  • 前缀: 指IP地址中前面的部分.
  • BGP路由: 当路由器通过BGP链接通告前缀时, 它在前缀中包括一些BGP属性, 前缀及其属性称为路由.

 

R11. BGP是怎样使用NEXT-HOP属性的? 它是怎样使用AS-PATH属性的?

  • NEXT-HOP是AS-PATH起始的路由器接口的IP地址, 包含该IP地址的子网直接连接到需要广播的子网.
  • AS-PATH属性包含了通告已经通过的AS的列表.

 

R12. 描述一个较高层ISP的网络管理员在配置BGP时是如何实现策略的?

  • 任何穿越某ISP主干网的流量必须是其源或目的位于该ISP的某个客户网络中; 不然这些流量将会免费搭车通过该ISP的网络.

 

R13. 是非判断题: 当BGP路由器从它的邻居接受到一条通告的路径时, 它必须对接收路径增加上它自己的标识, 然后向其所有邻居发送该新路径.

  • 正确. 这样邻居才能做出正确的策略选择.

 

5.5节

R14. 描述在SDN控制器中的通信层, 网络范围状态管理层和网络控制应用层序层的主要任务.

  • 通信层: SDN控制器和受控网络设备之间的通信, OpenFlow是一种提供这种功能通信的特定协议, 并在大多数SDN控制器中得到实现.
  • 网络范围状态管理层: 由SDN控制平面所做出的最终控制决定, 将要求控制器具有有关网络的主机, 链路, 交换机和其他SDN控制设备的最新状态信息.

 

R15. 假定你要在SDN控制平面中实现一个新型路由选择协议. 你将在哪个层次中实现该协议? 解释理由.

  • 网络范围状态管理层. 因为在这一层能获得有关网络的主机, 链路, 交换机和其他SDN控制设备的最新状态信息, 可以根据这些信息的基础上实现新型路由选择协议, 并通知给控制器落地执行.

 

R16. 什么类型的报文流跨越SDN控制器的北向和南向API? 谁是从控制器跨越南向接口发送的这些报文的接收者? 谁是跨越北向接口从控制器发送的这些报文的接收者?

  • 配置, 修改状态, 读状态, 发送分组, 流删除, 端口状态, 分组入等报文流.
  • 受控网络设备(路由器)
  • 网络控制应用程序

 

R17. 描述两种从受控设备到控制器发送的OpenFlow报文类型的目的. 描述两种从控制器到受控设备发送的OpenFlow报文类型的目的.

  • 受控设备到控制器: 1. 端口状态报文, 通知控制器端口状态的变化; 2. 流删除报文, 通知控制器已删除一个流表项.
  • 控制器到受控设备: 1. 配置报文, 允许控制器查询并设置交换机的配置参数; 2. 修改状态报文, 用于增加/删除或修改交换机流表中的表项, 并设置交换机的端口特性.

 

R18. 在OpenDaylight SDN控制器中服务抽象层的目的是什么?

  • 让控制层能够根据需要定制特定的服务, 同时使控制器应用程序既可以在外部实现, 也可以在内部实现, 把决定权交给程序设计者.

 

5.6~5.7节

R19. 列举出4种不同类型的ICMP报文.

ICMP类型 编码 描述
0 0 回显回答(对ping的回答)
3 0 目的网络不可达
4 0 源抑制(拥塞控制)
11 0 TTL过期

 

R20. 在发送主机执行Traceroute程序, 收到哪两种类型的报文?

ICMP类型 编码 描述
3 0 目的网络不可达
11 0 TTL过期

 

R21. 在SNMP环境种定义下列术语: 管理服务器, 被管设备, 网络管理代理和MIB.

  • 管理服务器: 管理服务器是执行网络管理活动的地方, 它控制网络管理信息的收集, 处理, 分析和/或显示, 人类网络管理员可以在这里发起控制网络的动作.
  • 被管设备: 被管设备可以是一台主机, 路由器, 中间盒等联网设备. 在一个被管设备中, 有几个所谓被管对象, 被管对象是被管设备中硬件的实际部分和用于这些硬件的软件组件的配置参数.
  • 网络管理代理: 网络管理代理是运行在被管设备中的一个进程, 该进程与管理服务器通信, 在管理服务器的命令和控制下在被管设备中采取本地动作.
  • MIB(管理信息库): 一个被管设备中的每个被管对象的关联信息收集在管理信息库中. 一个MIB对象可以是一个计数器, 或一台主机接收到的UDP包的数量等.

 

R22. SNMP GetRequest和SetRequest报文的目的是什么?

  • GetRequest是管理服务器向代理发送的, 用于请求位于该代理所在的被管设备中的一个或多个MIB对象值.
  • SetRequest是管理服务器用来设置位于被管设备中一个或多个MIB对象的值.

 

R23. SNMP陷阱报文的目的是什么?

  • 用于被管设备向管理服务器通知事件, 事件包括: 设备的冷启动或热启动, 链路就绪或故障, 找不到相邻设备, 鉴别失效等.

往期推荐:

  1. 写代码解释什么是api,什么是sdk
  2. 飞机大战小游戏全制作过程分享
  3. 仿flappy bird小游戏制作分享
  4. 如何开始编写技术博客?markdown语法入门,分享使人进步
  5. 请求参数、表单参数、url参数、header参数、Cookie参数有什么区别?
posted @ 2019-04-11 17:06  胡涂阿菌  阅读(13912)  评论(2编辑  收藏  举报