网络层
- 一、网络层的功能
- 1.异构网络互连
- 2.路由与转发
- 3.SDN的基本概念
- 4.拥塞控制
- 二、路由算法
- 1.静态路由和动态路由
- 2.距离-向量路由算法
- 3.链路状态路由算法
- 4.层次路由
- 三、IPv4
- 1.IPv4分组
- 2.IPv4地址与NAT
- 3.子网划分与子网掩码、CIDR
- 4.ARP、DHCP与ICMP
- 四、IPv6
- 1.IPv6特点
- 2.IPv6地址
- 五、路由协议
- 1.路由信息协议RIP
- 2.开放最短路径优先协议OSPF
- 3.边界网关协议BGP
- 六、IP组播
- 1.IP组播概念
- 2.IP组播地址
- 3.IGMP与组播路由算法
- 七、网络层设备
一、网络层的功能
1.异构网络互连
要在全球范围内把数以百万计的网络互连起来,并且能够互相通信,是一项非常复杂的任务,此时需要解决许多问题,比如不同的寻址方案、不同的网络接入机制、不同的差错处理方法、不同的路由选择机制等等。用户的需求是多样的,没有一种单一的网络能够适应所有用户的需求。网络层所要完成的任务之一就是使这些异构的网络实现互连。
2.路由与转发
1)路由选择。指按照复杂的分布式算法,根据从各相邻路由器所得到的关于整个网络拓扑的变化情况,动态地改变所选择的路由。
2)分组转发。指路由器根据转发表将用户的IP数据报从合适的端口转发出去。
3.SDN的基本概念
网络层的主要任务是转发和路由选择。可以将网络层抽象地划分为数据平面(也称转发层面)和控制平面,转发是数据平面实现的功能,而路由选择是控制平面实现的功能。
SDN(软件定义网络)采用集中式的控制平面和分布式的数据平面,两个平面相互分离,控制平面利用控制-数据接口对数据平面上的路由器进行集中式控制,方便软性来控制网络。
路由器之间不再相互交换路由信息,依靠路由选择处理器来交换路由信息。
SDN的优点:
①全局集中式控制和分布式高速转发,既利于控制平面的全局优化,又利于高性能的网络转发。
②灵活可编程与性能的平衡,控制和转发功能分离后,使得网络可以由专有的自动化工具以编程方式配置。
③降低成本,控制和数据平面分离后,尤其是在使用开放的接口协议后,就实现了网络设备的制造与功能软件的开发相分离,从而有效降低了成本。
SDN的问题:
①安全风险,集中管理容易受攻击,如果崩溃,整个网络会受到影响。
②瓶颈问题,原本分布式的控制平面集中化后,随着网络规模扩大,控制器可能成为网络性能的瓶颈。
北向接口:SDN 提供的编程接口。
南向接口:SDN控制器和转发设备建立双向会话的接口。
4.拥塞控制
1)开环控制。在设计网络时事先将有关发生拥塞的因素考虑周到,力求网络在工作时不产生拥塞。这是一种静态的预防方法。一旦整个系统启动并运行,中途就不再需要修改。开环控制手段包括确定何时可接收新流量、何时可丢弃分组及丢弃哪些分组,确定何种调度策略等。所有这些手段的共性是,在做决定时不考虑当前网络的状态。
2)闭环控制。事先不考虑有关发生拥塞的各种因素,采用监测网络系统去监视,及时检测哪里发生了拥塞,然后将拥塞信息传到合适的地方,以便调整网络系统的运行,并解决出现的问题。闭环控制是基于反馈环路的概念,是一种动态的方法。
二、路由算法
1.静态路由和动态路由
静态路由算法(又称非自适应路由算法)。指由网络管理员手工配置的路由信息。当网络的拓扑结构或链路的状态发生变化时,网络管理员需要手工去修改路由表中相关的静态路由信息。它不能及时适应网络状态的变化,对于简单的小型网络,可以采用静态路由。
动态路由算法(又称自适应路由算法)。指路由器上的路由表项是通过相互连接的路由器之间彼此交换信息,然后按照一定的算法优化出来的,而这些路由信息会在一定时间间隙里不断更新,以适应不断变化的网络,随时获得最优的寻路效果。
2.距离-向量路由算法
3.链路状态路由算法
4.层次路由
三、IPv4
1.IPv4分组
1)总长度。占16位。指首部和数据之和的长度,单位为字节,因此数据报的最大长度为2^16-1=65535B。以太网帧的最大传送单元(MTU)为1500B,因此当一个IP数据报封装成帧时,数据报的总长度(首部加数据)一定不能超过下面的数据链路层的MTU值。
2〉标识。占16 位。它是一个计数器,每产生一个数据报就加1,并赋值给标识字段。但它并不是“序号”(因为IP是无连接服务)。当一个数据报的长度超过网络的 MTU时,必须分片,此时每个数据报片都复制一次标识号,以便能正确重装成原来的数据报。
3)标志。占3 位。标志字段的最低位为MF,MF=1表示后面还有分片,MF=0表示最后一个分片。标志字段中间的一位是DF,只有当DF=0时才允许分片。
4)片偏移。占13 位。它指出较长的分组在分片后,某片在原分组中的相对位置。片偏移以8个字节为偏移单位。除最后一个分片外,每个分片的长度一定是8B 的整数倍。
5)生存时间(TTL)。占8 位。数据报在网络中可通过的路由器数的最大值,标识分组在网络中的寿命,以确保分组不会永远在网络中循环。路由器在转发分组前,先把TTL减1。若TTL被减为0,则该分组必须丢弃。
6)协议。占8位。指出此分组携带的数据使用何种协议,即分组的数据部分应上交给哪个协议进行处理,如TCP、UDP等。其中值为 6表示TCP,值为 17表示UDP。
7)首部校验和。占16 位。首部校验和只校验分组的首部,而不校验数据部分。
8)源地址字段。占4B,标识发送方的IP地址。
9)目的地址字段。占4B,标识接收方的IP地址。
IP数据报分片:
片在目的地的网络层被重新组装。目的主机使用IP首部中的标识、标志和片偏移字段来完成对片的重组。创建一个IP数据报时,源主机为该数据报加上一个标识号。当一个路由器需要将一个数据报分片时,形成的每个数据报(即片)都具有原始数据报的标识号。当目的主机收到来自同一发送主机的一批数据报时,它可以通过检查数据报的标识号来确定哪些数据报属于同一个原始数据报的片。IP首部中的标志位占3 位,但只有后2 位有意义,分别是MF位(MoreFragment)和 DF 位(Don’t Fragment)。只有当DF=0 时,该IP 数据报才可以被分片。MF则用来告知目的主机该IP 数据报是否为原始数据报的最后一个片。当 MF=1时,表示相应的原始数据报还有后续的片;当MF=0时,表示该数据报是相应原始数据报的最后一个片。目的主机在对片进行重组时,使用片偏移字段来确定片应放在原始 IP数据报的哪个位置。
2.IPv4地址与NAT
3.子网划分与子网掩码、CIDR
两级IP地址的缺点:IP地址空间的利用率有时很低;给每个物理网络分配一个网络号会使路由表变得太大而使网络性能变坏;两级的IP地址不够灵活。
从1985年起,在IP地址中又增加了一个“子网号字段”,使两级IP地址变成了三级IP地址。这种做法称为子网划分。子网划分已成为因特网的正式标准协议。
子网掩码是一个与IP地址相对应的、长32bit的二进制串,它由一串1和跟随的一串0组成。
其中,1对应于IP地址中的网络号及子网号,而0对应于主机号。计算机只需将IP地址和其对应的子网掩码逐位“与”(逻辑AND运算),就可得出相应子网的网络地址。
无分类域间路由选择CIDR是在变长子网掩码的基础上提出的一种消除传统A、B、C类网络划分,并且可以在软件的支持下实现超网构造的一种IP地址的划分方法。
记法:IP::={<网络前缀>,<主机号>}。
CIDR还使用“斜线记法”(或称CIDR记法),即IP 地址/网络前缀所占比特数。其中,网络前缀所占比特数对应于网络号的部分,等效于子网掩码中连续1的部分。例如,对于128.14.32.5/20
这个地址,它的掩码是20个连续的1和后续12个连续的0,通过逐位相“与”的方法可以得到该地址的网络前缀(或直接截取前20位):
最长前缀匹配(最佳匹配):使用CIDR时,路由表中的每个项目由“网络前缀”和“下一跳地址”组成。在查找路由表时可能会得到不止一个匹配结果。此时,应当从匹配结果中选择具有最长网络前缀的路由,因为网络前缀越长,其地址块就越小,因而路由就越具体。
CIDR查找路由表的方法:为了更加有效地查找最长前缀匹配,通常将无分类编址的路由表存放在一种层次式数据结构中,然后自上而下地按层次进行查找。这里最常用的数据结构就是二叉线索。
4.ARP、DHCP与ICMP
四、IPv6
1.IPv6特点
IPv6表示形式:冒号十六进制记法
2.IPv6地址
IPv6数据报的目的地址可以是以下三种基本类型地址之一:
1)单播。单播就是传统的点对点通信。
2)多播。多播是一点对多点的通信,分组被交付到一组计算机的每台计算机。
3)任播。这是IPv6增加的一种类型。任播的目的站是一组计算机,但数据报在交付时只交付其中的一台计算机,通常是距离最近的一台计算机。
五、路由协议
1.路由信息协议RIP
路由信息协议(Routing Information Protocol,RIP)是内部网关协议(IGP)中最先得到广泛应用的协议。RIP是一种分布式的基于距离向量的路由选择协议,其最大优点就是简单。
RIP规定:
1)网络中的每个路由器都要维护从它自身到其他每个目的网络的距离记录(因此这是一组
距离,称为距离向量)。
2)距离也称跳数(HopCount),规定从一个路由器到直接连接网络的距离(跳数)为1。而每经过一个路由器,距离(跳数)加1。
3)RIP认为好的路由就是它通过的路由器的数目少,即优先选择跳数少的路径。
4)RIP允许一条路径最多只能包含15个路由器(即最多允许15跳)。因此距离等于16时,它表示网络不可达。可见RIP只适用于小型互联网。距离向量路由可能会出现环路的情况,规定路径上的最高跳数的目的是为了防止数据报不断循环在环路上,减少网络拥塞的可能性。
5)RIP默认在任意两个使用RIP的路由器之间每30秒广播一次RIP路由更新信息,以便自动建立并维护路由表(动态维护)。
6)在RIP中不支持子网掩码的RIP广播,所以RIP中每个网络的子网掩码必须相同。但在新的RIP2中,支持变长子网掩码和CIDR。
RIP特点:
1)仅和相邻路由器交换信息。
2)路由器交换的信息是当前路由器所知道的全部信息,即自己的路由表。
3)按固定的时间间隔交换路由信息,如每隔30秒。
2.开放最短路径优先协议OSPF
3.边界网关协议BGP
六、IP组播
1.IP组播概念
为了能够支持像视频点播和视频会议这样的多媒体应用,网络必须实施某种有效的组播机制,让源计算机一次发送的单个分组可以抵达用一个组地址标识的若干目标主机,并被它们正确接收。
组播一定仅应用于UDP,它对将报文同时送往多个接收者的应用来说非常重要。
2.IP组播地址
3.IGMP与组播路由算法
七、网络层设备
路由器的组成和功能