计算机网络——第五章 网络层:应用平面

本文介绍了网络层中的路由选择算法,包括集中式和分布式两类,强调了集中式控制在转发表配置中的作用。同时,详细阐述了链路状态路由选择算法的工作原理。此外,讨论了ICMP协议在网络错误处理中的角色,如其在路径不可达时发送的报文。最后,提到了网络管理的重要性,特别是SNMP协议在管理服务器和被管设备间的作用,用于查询和设置网络设备状态。
摘要由CSDN通过智能技术生成

第五章 网络层:应用平面

5.1概述

完成转发表和流表的工作有两种可能的方法:

  • 每路由器控制:每台路由器中都包含转发和路由选择功能,每台路由器都有一个路由选择组件,用于与其他路由器中的路由选择组件通信,以计算其转发表的值。
  • 逻辑集中式控制:通用的“匹配加动作”抽象允许执行传统的IP转发以及其他功能(负载共享、防火墙功能和NAT)的丰富集合,而这些功能先前是在单独的中间盒实现的 。

该控制器经一种定义良好的协议与每台路由器中的一个控制代理(CA)进行交互。以配置和管理该路由器的转发表。CA一般具有最少的功能,其任务是与控制器通信并且按控制器命令行事。CA这里的交互是被动的,也就是说不同CA不能直接相互交互和主动参与计算转发表。这是和前者的关键差异。

5.2路由选择算法

G = ( N , E ) 来描述路由选择问题,是一个N个节点和E条边的集合,其中每条边是取自N的一对节点。节点表示路由器,这是做出分组转发决定的点;连接这些节点的边表示这些路由器之间的物理链路。一条边还有一个值表示它的开销,用c(x,y)表示节点x和y之间的开销,并且这里讨论的是无向图。如果x和y都属于E,那么x也被称为y的邻居

最低开销路径是找出源与目的地之间具有最低开销的一条路,一般而言,路由选择算法的一种分类方式是根据该算法是集中式还是分散式来划分的。

  • 集中式路由选择算法用完整的、全局性的网络知识计算出从源到目的地之间的最低路径开销。也就是说该算法以所有节点之间的连通性及所有链路的开销为输入。主要区别在于集中式算法具有关于连通性和链路开销方面的完整信息。具有全局状态的算法被称为链路状态(LS)算法,因为该算法得知道网络中具体每条路径的开销。
  • 分散式路由选择算法中,路由器以迭代、分布式的方式计算出最低开销路径。没有节点拥有全部的网络链路开销的完整信息。相反,每个节点仅有与其直接相连的链路的开销知识即可开始工作。通过迭代计算过程以及与相邻节点的信息交换,一个节点逐渐计算出到达某目的节点或一组目的节点的最低开销路径。

第二种广义分类方式是根据算法是动态的还是静态的。静态路由选择算法中路由随时间变化非常缓慢,通常是人工进行调整。动态路由选择算法随着网络流量负载或拓补发生变化而改变路由选择路径。一个动态算法可周期性的运行或直接响应拓补或链路开销的变化而运行。

第三种分类方式是根据它是负载敏感的还是负载迟钝的进行划分。在负载敏感算法中,链路开销会动态地变化以反映出底层链路的当前拥塞水平。当前的因特网路由选择算法都是负载迟钝的,因为某条链路的开销不明确的反映其当前或最近的拥塞水平。

5.2.1 链路状态路由选择算法

实践中这是通过让每个节点向网络中所有其他节点广播链路状态分组来完成,这经常由链路状态广播算法来完成。

5.6 ICMP:因特网控制报文协议

在某个位置,IP路由器不能找到一条通往HTTP请求中所指定的主机的路径,该路由器就会向你的主机生成并发出一个ICMP报文以指示该错误。

ICMP通常被认为是IP的一部分,但是从体系结构上讲它位于IP之上,因为ICMP报文被认为是承载在IP分组中的,类似于TCP和UDP一样。类似的当一台主机收到一个指明上层协议为ICMP的IP数据报时(上层协议编码为1),它分解出该数据报的内容给ICMP,就像分解出一个数据报的内容给TCP或者UDP一样。

ICMP报文有一个类型字段和编码字段,并且包含引起该ICMP报文首次生成的IP数据报的首部和前8个字节()便于发送方确认引发差错的数据报,而且ICMP报文不仅用于通知差错情况。
在这里插入图片描述
众所周知,ping程序是发送一个ICMP类型8编码0的报文到指定主机,回显请求是,目的主机发回一个类型0编码0的ICMP回显回答。

ICMP还有源抑制报文用于拥塞控制,不过TCP在运输层有自己的拥塞控制机制所以这玩意就不咋用了现在。

5.7 网络管理和SNMP

我们熟知网络是由许多复杂、交互的硬件和软件部件组成的,既包括构成网络的物理部件的链路、交换机、路由器和其他设备,也包括控制和协调这些设备的许多协议。当一个机构将数以百计的或数以千计的这种部件拼装在一起形成一个网络时,保持该网络“运行良好”无疑对网络管理员是一种挑战。

5.7.1 网络管理框架

在这里插入图片描述

  • 管理服务器:是一个应用程序,通常有人的参与,并运行在网络运营中心(NOC)的集中式网络管理工作站上。管理服务器是执行网络管理活动的地方,它控制网络管理信息的收集、处理、分析和/或显示,这里是网络管理员与网络设备打交道的地方。
  • 被管设备:是网络装备的一部分(包括它的软件,位于被管理的网络中),被管设备可以是一台主机、路由器、交换机、中间盒、调制解调器、温度计或其他联网设备。在一个被管设备中,有几个所谓被管对象。这些被管对象是被管设备中的硬件的实际部分(例如,一块网络接口卡只是一台路由器或主机的一个组件)和用于这些硬件及软件组件的配置参数(例如宣布发OSPF这样的AS内部路由选择协议)
  • 一个被管设备中的每个被管对象的关联信息收集在管理信息库(MIB)中,我们将看到这些信息的值可供管理服务器所用并且许多场合下能够被设置。一个MIB对象可以是:一个计数器,例如由于IP数据报首部差错而由路由器丢弃的IP数据报的数量,或一台主机接收到的UDP报文段的数量;运行在一台DNS服务器上的软件版本的描述性信息;诸如一个特定设备功能是否正确的状态信息;或诸如到一个目的地的路由选择路径的特定协议的信息。
  • 在每个被管设备中还驻留有网络网络管理代理,它是运行在被管设备中的一个进程,该进程与管理服务器通信,在管理服务器的命令和控制下在被管设备中的一个进程,该进程与管理服务器通信,在管理服务器的命令和控制下在被管设备中采取本地动作。网络管理类似于路由选择代理。
  • 网络管理框架的最后组件是网络管理协议。该协议运行在管理服务器和被管设备之间,允许管理服务器查询被管设备的状态,并经过其代理间接的在这些设备上采取行动。代理能够使用网络管理协议向管理服务器通知异常事件(如组件故障或超过了性能阈值)。重要的是注意到网络管理协议自己不能管理网络。恰恰相反的是它为网络管理员提供了一钟能力,使他们自己能管理网络。

5.7.2 简单网络管理协议

简单网络管理协议版本2(SNMPv2)是一个应用层协议,用于在管理服务器和代表管理服务器执行的代理之间传递网络管理控制和信息报文。SNMP最常使用的是请求响应模式,其中SNMP管理服务器向SNMP代理发送一个请求,代理收到后执行动作然后发送回答请求通常用于查询或修改与某被管设备关联的MIB对象值。SNMP第二个常被使用的是代理向管理服务器发送的一种非请求报文,该报文称为陷阱报文,用于通知管理服务器,一个异常情况(例如一个链路接口启动或者关闭)已经导致了MIB对象值的改变。
在这里插入图片描述
表中显示了SNMPv2定义的7种类型的报文,这些报文一般称为协议数据单元(PDU)。PDU格式如下:

  • GetRequest、GetNextRequest和GetBulkRequest PDU都是管理服务器向代理发送的,以请求位于该代理所在的被管设备中的一个或多个MIB对象值。其值被请求的MIB对象的对象标识符定义在该PDU的变量绑定部分。这三个的差异在于它们的数据请求粒度。GetRequest能够请求MIB的值的任意集合;多个GetNextRequest能用于顺序的读取MIB对象的列表或者表格;GetBulkRequest允许读取大块数据,能够避免发送过多的另两种报文而导致额外开销。
  • 管理服务器使用SetRequest PDU来设置位于被管设备中的一个或者多个MIB对象的值。代理用带有“noError”差错状态的Request PDU进行应答,以证实该值确实已被设置。
  • 管理服务器使用InformRequest PDU来通知另一个MIB信息管理服务器,后者对于接受服务器是远程的。
  • Response PDU通常从被管设备发送给管理服务器,以响应来自该服务的请求报文,返回所请求的信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值