计算机网络阅读笔记——第四章网络层

思维导图

在这里插入图片描述

阅读笔记

1.网络层提供的两种服务

在这里插入图片描述
上面一个是面向连接的可靠服务,下面是无连接的不可靠服务,现在主流是利用下面的无连接的不可靠服务,网络层只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。如果出现出错、丢失、重复和失序则交给上面的运输层处理。这种方式的优点:网络造价大大降低,运行方式灵活,能够适应多种应用

2. 网际协议IP

  • 与IP协议配套使用的三个协议:
    • 地址解析协议ARP(Address Resolution Protocol)
    • 网际控制报文协议ICMP(Internet Control Message Protocol)
    • 网际组管理协议
      在这里插入图片描述
      ICMP和IGMP使用IP,IP使用ARP。
  • 将网络连接的中间设备
    • 物理层:转发器
    • 数据链路层:网桥或桥接器
    • 网络层:路由器
    • 网络层以上:网关
      当中间设备是转发器或网桥,仅仅是把网络扩大了,路由器才是真正将网络互连成互联网。
  • 互联网可以由多种异构网络互连组成
  • IP地址及其表示方法:IP地址就是给互联网上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的32位的标识符。IP地址现在由互联网名字和数字分配机构ICANN进行分配。
  • IP地址的编址方法的三个阶段:
    • 分类的IP地址。
    • 子网的划分
    • 构成超网
  • 分类的IP地址:就是将IP地址划分为若干个固定类,每一类地址由固定长度的两个字段组成。
    第一个字段是网络号,标志主机所连接到的网络
    第二个字段是主机号,标志该主机
    即IP地址::={<网络号>,<主机号>}
    在这里插入图片描述
    将IP地址划分为A,B,C,是因为考虑到各种网络差异很大,有的网络拥有很多主机,而有的网络上的主机则少。
    (注:近年来使用无分类IP地址,A,B,C区分已成为历史)
  • 点分十进制法:
    在这里插入图片描述
  • 常用的三种类别的IP地址:
    • A类地址:(占整个IP地址的50%)
      • 网络字段:可指派的网络号是126个(27-2),减2的原因是,(00000000)(0)是个保留地址,意思是“本网络”,(01111111)(127)保留作为本地软件环回测试。若主机发送一个目的地址为环回地址(127.0.0.1)的IP数据报,则主机的协议软件就处理数据报中的数据,而不会把数据报发送到任何网络。
      • 主机字段:最大主机数为224-2,减2的原因是:全0的主机号字段表示IP地址是“本主机”所连接到的单个网络地址(例如,一个主机IP地址为5.6.7.8,则该主机所在的网络地址是5.0.0.0),而全1表示该网络上的所有主机。
    • B类地址:(占整个IP地址的25%)
      • 可指派的网络号是214-1,不能全为01,128.0.0.0是不指派的。最小为128.1.0.0
      • 主机字段:216-2,减2原因同A
    • C类地址:(占整个IP地址的 12.5%)
      • 可指派的网络号是221-1,不能全为01,192.0.0.0是不指派的。最小是192.0.1.0
      • 主机字段:216-2,减2原因同A
  • 得到IP地址的指派范围和一般不使用的特殊IP地址
    在这里插入图片描述
  • IP地址的重要特点:
    • IP地址是一种分等级的地址结构。分等级的两个好处:第一,管理机构只用分配网络号,主机号由得到网络号的单位自行分配。第二,路由器仅根据网络分组,减小了路由器所占的存储空间和查找路由表的时间
    • 当主机(主要是路由器)同时连上多个网络,该主机就有多个IP地址,称为多归属主机。
    • 用转发器或网桥连接起来的若干局域网仍为一个网络
    • 互联网同等对待每一个IP地址
  • 当两个路由器直接相连时,在连线两端的接口处,可以分配也可以不分配IP地址,如果分配,则构成了特殊网络,现在一般不分配,通常称为无编号网络或无名网络
  • IP地址与MAC地址的区别
    • 从层次来看,物理地址是数据链路层和物理层使用的地址,而IP地址是网络层以上使用的地址,是一种逻辑地址(由软件实现的)。
      在这里插入图片描述
    • 区别的重点图
      在这里插入图片描述
      首先,路由器就是链接各个局域网的中介,拥有多个物理地址,MAC地址用于在数据链路层传输MAC帧(识别下一个到底去哪,指明临时目的地),IP地址用于指明最终目的地
      **在IP层抽象的互联网上只能看到IP数据报
      **路由器只根据目的站的IP地址的网络号进行选择
      **在局域网的链路层,只看得见MAC帧。

(1)地址解析协议ARP

在这里插入图片描述

  • 主要作用:通过IP地址解析出MAC地址
  • 方法:在主机ARP高速缓存中存放一个从IP地址到硬件的映射表,并且这个映射表还经常动态更新。每一台主机都设有一个ARP高速缓存,里面有本局域网上的各主机和路由器的IP地址到硬件地址的映射表。
  • 假设A要向B发送IP数据报,则在主机上查找ARP缓存查找B的IP地址对应的MAC地址此时:
    • 如果找到了,则将IP数据报封装成MAC帧,包括A和B的MAC地址发向B
    • 如果A刚入网或者B入网找不到,则执行以下步骤:
      (1)首先向本局域网广播一条ARP请求分组,其内容为“我的IP地址是209.0.0.5,硬件地址为00-00-C0-15-AD-18,我想知道IP地址为209.0.0.6的主机的IP地址”
      (2)其余主机会自动过滤该分组,而B会接收该ARP分组,此时如果B的ARP高速缓存中也没有A的信息,则先把ARP请求分组中A的IP和MAC地址写入B的ARP高速缓存,并再向A单播一条ARP响应分组,内容为“我的IP地址为209.0.06,我的硬件地址为08-00-2B-EE-0A”
      (3)主机A收到ARP响应分组后,在其ARP高速缓存中写入主机B的IP和MAC地址的映射,再发送IP数据报
  • AARP对保存在高速缓存中的每一个映射地址都保存有生存时间(如10~20min)。该生存时间是非常重要的,如果A保存了B的映射后B更换了网络适配器,如果A中不删除B的原有映射,就找不到B了。
  • 从IP地址到硬件地址的解析是自动进行的,主机的用户对这种地址解析过程是不知道的。

(2)IP数据报格式

在这里插入图片描述

  • IP数据报首部的固定部分的各字段
    • 版本:通信双方使用的IP协议版本必须一致,目前广泛使用的IP协议版本号为4(IPv4)
    • 首部长度:占4位,最大可表示15,他的单位是32位/4字节,因为固定长度就有20字节,所以首部长度最小是5,最大可以表示的字节为15*4 = 60字节,都是4的整数倍,所以如果IP分组首部长度不是4的整数倍还需要用最后的填充字段加以填充
    • 区分服务:用来获得更好地服务,一般情况下不使用这个字段
    • 总长度:总长度字段为16位,单位为字节,所以数据报的最大长度为65535字节。然而实际根本不允许这么长,比如以太网MAC帧要求最大传送单元MTU为1500字节
    • 标识:每产生一个数据报,计数器就加1,并将计数器的内容送入标识位,当数据报由于长度超过网络的MTU而必须分片时,这个标识字段的值就被赋值到各个分片中,依据这个标识,分片就能在接收方组合成正确的IP数据报
    • 标志:占3位,但目前只有两位有意义
      • 最低位记为MF(MoreFragment)。MF=1表示后面还有“分片”MF=0表示这是分片最后一个
      • 中间一位记为DF(Don’t Fragment) 意思是“不能分片”,只有DF = 0时才能分片。
    • 片偏移:片偏移指出较长的分组在分片后,某片在原分组中的相对位置。片偏移以8个字节为偏移单位。也就是说,每个分片的长度一定是8个字节的整数倍
    • 生存时间(TTL Time To Live):数据报在网络中的寿命。防止无法交付的数据报无限制地在网络中兜圈子。
      • 最初的设计是以秒为单位。没经过一个路由器,就减去在路由器所消耗掉的一段时间,若数据报在路由器消耗的时间小于1秒,就减1,当减到0,就丢弃这个数据报
      • 现在发现在路由器消耗的时间远远小于一秒,后来将功能改为“跳数限制”,即每经过一个路由器减1秒,直到为0丢弃,其意义是数据报能在互联网中可经过多少个路由器。
    • 协议:指出数据报携带的数据是使用何种协议
      在这里插入图片描述
    • 首部检验和:检验数据报首部的正确性,不包括数据部分。具体计算过程如下图
      在这里插入图片描述
    • 源地址和目的地址
  • IP数据报首部可变部分:就是一个选项字段,用来支持排错,测量以及安全,由于加上之后IP数据报长度可变,增加了每一个路由器处理数据报的开销,故IPv6会将数据报长度做成固定的。

(3)路由器转发分组的流程

在路由表中,对每一条路由最重要的是以下两个信息:
(目的网络地址,下一跳地址)
在这里插入图片描述
在这里插入图片描述

  • 特定主机路由:对特定的目的主机指定一个路由。
  • 默认路由:
    在这里插入图片描述
    在这里插入图片描述

3.划分子网

  • 两级IP地址的缺点:
    • IP地址空间利用率有时很低
    • 给每一个物理网络分配一个网络号会使路由表变得太大而使网络性能破坏。
    • 两级IP地址不够灵活:有时候情况紧急,一个单位需要在新的地点马上开通一个新的网络。但是在申请到一个新的IP地址之前,新增加的网络是不可能连接到互联网上工作的。
  • 划分子网(子网路由选择):在IP地址中又增加了一个“子网号字段
  • 划分子网的基本思路:
    • 从网络的主机号借用若干位作为子网号,变成:
      IP地址::={<网络号>,<子网号>,<主机号>}
    • 凡是从其他网络发送给本单位某台主机的IP数据报,仍然根据IP数据报的目的网络号找到连接本单位网络上的路由器。但此路由器在收到IP数据报后,再按目的网络和子网号找到目的子网,把IP数据报交付给目的主机。
  • 子网掩码:用来得到子网地址
    在这里插入图片描述
    将c中的三级IP地址与d中的子网掩码进行与运算后即可得到e中的子网的网络地址。
    使用子网掩码的好处就是:不管网络有没有划分子网,只要把子网掩码和IP地址进行与运算就能得到网络地址。
    如果一个网络不划分子网,那么该子网掩码就是用默认子网掩码
    在这里插入图片描述
    子网掩码是一个网络或一个子网的重要属性
    划分子网增加了灵活性,但是相对减少了能够连接在网络上的主机总数。
  • 使用子网时分组的转发:
    使用子网划分后,路由表包括:
    目标网络地址、子网掩码和下一跳地址
    在这里插入图片描述
  1. 无分类编址CIDR(构造超网)
  • 无分类编址CIDR也称无分类域间路由选择,CIDR全称Classless Inter-Domain Routing
  • CIDR的两个主要特点:
    • CIDR消除了传统的A类、B类和C类地址以及划分子网的概念,将32位的IP地址划分为前后两个部分。
      IP地址::={<网络前缀>,<主机号>}
      CIDR还是用"斜线记法",或称为CIDR记法,即在IP地址后面加上“/”,然后写上网络前缀所占的位数
    • CIDR把网络前缀都相同的连续的IP地址组成一个“CIDR地址块”。我们只要知道CIDR地址块中的任何一个地址,就可以知道这个地址块的起始地址和最大地址,以及地址块中国的地址数。
  • CIDR使用32位的地址掩码,和子网掩码模式一样,并且也可以称之为子网掩码。
  • CIDR记法:
    在这里插入图片描述
  • 由于一个CIDR地址块中有很多地址,所以在路由表中利用CIDR地址块来查找目的网络,这种地址的聚合常称为路由聚合,也成构成超网
  • 网络前缀小于13或者大于27都较少使用。
  • 最长前缀匹配:
    由于路由器现在存储的路由表是由网络前缀和下一跳地址组成,但是在查找路由表时可能会得到不止一个匹配结果
    此时就应从匹配结果中选择最长网络前缀的路由,又称最长匹配或最佳匹配。(就是匹配最具体一个)
  • 使用二叉线索查找路由表
    通常把无分类编址的路由表存放一种层次的数据结构中,然后自上而下按层次进行查找,最常用的就是二叉搜索。
    在这里插入图片描述
    在这里插入图片描述

4.网际控制报文协议ICMP

  • 为了更有效的转发IP数据报和提高交付成功的机会,在网际层使用了网际控制报文协议ICMP(Internet control message Protocol)
  • ICMP报文格式
    在这里插入图片描述
    在这里插入图片描述
    提取收到IP数据报数据字段的前八个字节是为了得到运输层的端口号(对于TCP和UDP)以及运输层报文的发送序号(对于TCP)
    在这里插入图片描述
  • 差错报告包括:
    • 终点不可达:当路由器或主机不能交付数据报时就向源点发送终点不可达报文。
    • 时间超过:当路由器收到生存时间为0零的数据报时,就像源点发送时间超过报文。或者当终点在预先规定时间不能收到一个数据报全部数据报片,就把已收到的数据报片丢弃并发送时间超过报文
    • 参数问题:当路由器或目的主机收到的数据报首部有的字段的值不正确时。就丢弃该数据报,并向源点发送参数问题报文。
    • 改变路由(重定向)路由器把改变路由报文发送给主机,让主机知道下次应将数据报发送给另外的路由器。
  • 不发送差错报告的情况:
    • 对ICMP差错报告报文,不再发送ICMP差错报告报文
    • 对第一个分片的数据报片的所有后续数据报片,不再发送ICMP差错报告报文
    • 对具有多播地址的数据报,不再发送ICMP差错报告报文
    • 对具有特殊地址(127.0.0.1或0.0.0.0)的数据报,不再发送ICMP差错报告报文
  • ICMP的询问报文有两种:
    • 回送请求和回答:ICMP回送请求报文是由主机或路由器向一个特定的目的主机发出的询问。收到此报文的主机必须给源主机或路由器ICMP回送回答报文。这种询问报文用来测试目的站是否可达以及了解有关状态。
    • 时间戳请求和回答:ICMP时间戳请求报文是请某台主机或路由器回答当前的日期和时间。在ICMP时间戳回答报文有一个32位的字段,其中写入的整数代表从1900年1月1日期到当前时刻一共有多少秒。

5.互联网的路由选择协议

  • 路由选择协议的核心就是路由算法,一个理想的路由算法应该以下特点:
    • 算法必须是正确的和完整的:沿着各路由表所指引的路由,分组一定能够最终到达目的网络和目的主机
    • 算法在计算上应简单
    • 算法应能适应通信量和网络拓扑的变化:即要有自适应性。
    • 算法应具有稳定性
    • 算法应该是公平的
    • 算法应该是最佳的
  • 路由选择包括静态和动态:
    • 静态(非自适应路由选择):简单和开销较小,但不能及时适应网络状态的变化,适用于简单的小网络
    • 动态(自适应路由):能较好地适应网络状态的变化。但实现起来较为复杂,开销比较大。
  • 互联网才用的路由选择协议主要是自适应、分布式路由选择协议,由于以下两个原因,互联网采用分层次的路由选择协议
    • 互联网的规模非常大,如果让所有的路由器知道所有的网络应怎样到达,则这种路由表将非常大
    • 许多单位不愿意外界了解自己单位网路的布局细节和本部门所采用的路由选择协议,但同时还希望连接到互联网上。
  • 为此,把整个互联网划分为许多较小的自治系统AS(autonomous system)。自治系统AS是在单一技术管理下的一组路由器,这些路由器使用一种自治系统内部的路由选择协议和共同的度量。一个AS对其他AS表现出的是一个单一的和一直的路由选择策略
  • 这样就把路由选择协议划分为两大类:
    • 内部网关协议IGP(Interior Gateway protocol):也叫作域内路由选择,即在一个自治系统内部使用的路由选择协议,如RIP和OSPF协议。
    • 外部网关协议EGP(External Gateway Protocol):也叫作域间路由选择,若源主机和目的主机处在不同的自治系统中,当数据报传到一个自治系统的边界时,就需要使用一种协议将路由选择信息传递到另一个自治系统中

(1)内部网关协议RIP

  • RIP是一种分布式的基于距离向量的路由选择协议
  • RIP要求每一个路由器都要维护从它自己到其他每一个目的网络距离记录。
  • 距离的定义:从一个路由器到直接连接的网络的距离定义为1/0,其中每经过一次路由器就加1,也称为“跳数”。
  • 分布式路由的特点就是:每一个路由器都要不断地和其他一些路由器交换路由信息
  • RIP协议的特点:
    • 仅和相邻路由器交换信息。
    • 路由器交换的信息使当前本路由器所知道的全部信息,即自己现在的路由表,包括到本自治网络的最短距离,以及到每个网络应经过的下一跳路由器。
    • 按照固定的时间间隔交换路由信息。
  • 路由器刚刚开始工作时,它的路由表是空的,经过若干次更新后,所有路由器最终都会知道到达本自治系统中任何一个网络的最短距离和下一跳路由器的地址。
  • 距离向量算法:找出每个目的网络的最短距离算法。
    在这里插入图片描述
  • RIP协议的报文格式
    在这里插入图片描述
    • 命令字段:指出报文的意义。例如,1表示请求路由信息,2表示对请求路由信息的响应或未被请求而发出的路由更新报文。后面的必为0是为了4字节的填充对齐。
    • 地址族标识符:标志使用的地址协议。如采用IP地址就令这个字段的值为2。
    • 路由标记:自治系统号ASN(Autonomous System Number)
  • RIP存在的问题:当网络出现故障时,要经过比较长的时间才能将此信息传送到所有的路由器
    在这里插入图片描述
  • 优点:实现简单,开销较小
  • 缺点:限制了网络的规模,最大距离为15,坏消息传播的慢。

(2)内部网关协议OSPF

  • OSPF:Open Shortest Path First 开放最短路径优先。开放表名协议是公开发表的,最短路径优先是因为使用了Dijkstra提出的最短路径算法SPF。
  • OSPF与RIP的区别:使用的是分布式的链路状态协议,而不是距离向量协议。
  • OSPF三个要点:
    • 向本自治系统中所有的路由器发送信息。使用的是洪泛法。即向所有的相邻路由器发送信息,相邻路由器再将此信息发送给它的相邻路由器。
    • 发送的信息就是与本路由器相邻的所有路由器的链路状态。“链路状态”就是说明本路由器和哪些路由器相邻,以及该链路的度量。度量表示费用、距离、时延、带宽等,也称代价。
    • 只有当链路状态发生变化时,路由器才向所有路由器用洪泛法发送信息, 而不像RIP定时发送信息。
  • OSPF其他特点:
    • OSPF允许管理员给每条路由指派不同的代价。因此,OSPF对于不同类型的业务可计算出不同的路由。
    • 如果到同一个目的网络有多条相同代价的路径,那么可以将通信量分配给几条路经,这叫做多路径间的负载平衡
    • 所有在OSPF路由器之间交换的分组都具有鉴别的功能,因而保证了仅在可信赖的路由器之间交换链路状态信息。
    • OSPF支持可变长度的子网划分和无分类的CIDR。
    • 由于网络中的链路状态可能经常发生变化,因此OSPF让每条链路状态都带上一个32位的序号,序号越大越新。OSPF规定,链路状态序号增长的速率不得超过5秒钟1次
  • 由于各个路由器之间频繁地交换链路状态信息,因此所有的路由器最终都能建立一个链路状态数据库,就是全网的拓扑结构图。OSPF的更新过程收敛得快是重要优点。
  • 为了使OSPF能够用于规模很大的网络,将一个自治系统再分为若干个区域,一个路由器只包含所在区域的链路状态。为了使每个区域能够和本区域以外的区域进行通信,OSPF使用层次结构的区域划分。上层的区域叫做主干区域,标识符规定为0.0.0.0,主干区域用于连接其他在下层的区域。包括:区域边间路由器(R3,R4,R7),主干路由器(主干中的路由器),自治系统边界路由器(R6)
    在这里插入图片描述
  • OSPF不用UDP直接用IP数据报传送,格式为:
    在这里插入图片描述
    • 版本:当前版本号为2
    • 类型:可以是五种分组中的一种
    • 分组长度:包括OSPF首部在内的分组长度,以字节为单位。
    • 路由器标识符:标志发送该分组的路由器的接口的IP地址
    • 区域标识符:分组所属的区域的标识符
    • 检验和:用来检测分组中的差错
    • 鉴别类型:0(不用)和1(口令)
    • 鉴别:鉴别类型为0就填充0,为1就填充8个字节的口令
  • OSPF的五种分组类型:
    • 问候分组:用来发现和维持邻站的可达性。
    • 数据库描述分组:向邻站给出自己的链路状态数据库中的所有链路状态项目的摘要信息。
    • 链路状态请求分组:向对方请求发送某些链路状态项目的详细信息。
    • 链路状态更新分组:用洪泛法对全网更新链路状态。
    • 链路状态确认分组:对链路更新分组的确认。
      OSPF规定,每两个相邻路由每隔10秒钟要交换一次问候分组,这样就能确知哪些邻站是可达的。
      OSPF还规定每隔一段时间,如30分钟,要刷新一次数据库中的链路状态。
      其他的四种分组都是用来进行链路状态数据库的同步,所谓同步就是指不同路由器的链路状态数据库的内容是一样的。两个同步的路由器叫做“完全邻接”路由器。
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述

(3)外部网关协议BGP

  • BGP只是力求寻找一条能够到达目的网络且比较好的路由,而并非要寻找一条最佳路由
  • BGP采用了路径向量路由选择,与距离向量协议和链路状态协议都有很大的区别。
  • 在配置BGP时,每一个自治系统的管理员要选择至少一个路由器作为该自治系统的“BGP发言人”。一般来说,两个BGP发言人都是通过一个共享网络连接在一起的。BGP发言人往往就是BGP边界路由器。
  • 两个BGP发言人要交换路由信息,就要先建立TCP连接(端口号为179),然后在此连接上交换BGP报文以建立BGP会话,利用BGP会话交换路由信息。使用TCP连接交换的两个BGP发言人,彼此称为对方的邻站或对等站
  • BGP所交换的网络可达性的信息就是要到达某个网络所要经过的一系列自制系统
  • BGP的路由表也就应当包括目的网络前缀、下一跳路由器,以及到达该目的网络所要经过的自制系统序列
  • BGP格式
    在这里插入图片描述
    • 标记字段:用来鉴别收到的BGP报文。当不使用鉴别时,标记字段要置为全1。
    • 长度字段:指出整个BGP报文的长度,以字节为单位
  • BGP-4的四种报文
    • 打开报文:用来与相邻的另一个BGP发言人建立关系,使通信初始化。共有六个字段:版本(1字节,值4)、本自治系统号(2字节)、保持时间(2字节)、BGP标识符(4字节,通常是该路由器的IP地址)、可选参数长度(1字节)和 可选参数
    • 更新报文:用来通告某一路由的信息,以及列出要撤销的多条路由。共有五个字段:不可行路由长度(2字节,指明下一字段的长度)、撤销的路由(列出所有撤销的路由)、路径属性总长度(2字节,指明下一个字段的长度)路径属性(定义在这个报文中增加路径的属性)和网络层可达性信息NLRI(定义发出此报文的网络,包括网络前缀位数、IP地址前缀)
    • 保活报文:用来周期性正式邻站的连通性。只有BGP的19字节长的通用首部
    • 通知报文:用来发送检测到的差错。共有3个字段:差错代码(1字节)、差错子代码(1字节)和差错数据

6.路由器的构成

  • 路由器是一种具有多个输入端口和多个输出端口的专用计算机,其任务是转发分组,从路由器某个输入端口收到的分组,按照分组要去的目的地,把分组从路由器某个合适的输出端口转发给下一跳路由器。
  • 路由器构成框图
    在这里插入图片描述
  • 从上图可知路由器划分为两个部分:路由选择部分(控制部分)分组转发部分
  • 图中1,2,3分别代表物理层、数据链路层和网络层
  • 分组转发部分由3个部分组成:交换结构、一组输入端口和一组输出端口。
    在这里插入图片描述
  • 输入端口中的查找和转发功能在路由器的交换功能中是很重要的,为了使交换功能分散化。往往把复制的转发表放在每一个输入端口中,如上图虚线所示。路由选择处理机负责对各转发表的副本进行更新。这些副本常称为“影子副本
    在这里插入图片描述
    在这里插入图片描述
  • 交换结构常用的三个交换方法
    在这里插入图片描述

7.IPv6

  • 我国在2014年至2015年也逐步停止了向新用户和应用分配IPv4地址,同时全面开始商用部署IPv6。
  • IPv6引用的主要变化如下:
    • 更大的地址空间:把地址从IPv4的32位增加到4倍,即增大到128位。
    • 扩展的地址层次结构:由于地址空间很大,可以划分的更多的层次、
    • 灵活的首部格式:定义了更多的扩展首部,和IPv4并不兼容。
    • 改进的选项:允许数据报包含有选项的控制信息,但是IPv6的首部长度是固定的,其选项放在有效载荷中。
    • 允许协议继续扩充
    • 支持即插即用
    • 支持资源的预分配。
    • 首部改为8字节对齐。IPv4是4字节对齐
  • IPv6数据报格式
    在这里插入图片描述
    由两大部分组成,即基本首部和后面的有效载荷。有效载荷也称净负荷。有效载荷允许有零个或多个扩展首部
  • 基本首部
    在这里插入图片描述
    • 版本:占4位,指明了协议的版本,对IPv6该字段是6。
    • 通信量类:这是为了区分不同的IPv6数据报的类别或优先级。
    • 流标号:“流”就是互联网络上从特定源点到特定终点的一系列数据报,而在这个“流”所经过的路径上的路由器都保证指明的服务质量所有属于同一个流的数据报都具有同样的流标号。用于对实时音频/视频数据的传送特别有用。
    • 有效载荷长度:指明除了首部之外的字节数。最大为64KB(65535字节)
    • 下一个首部:相当于IPv4的协议字段或可选字段
      • 当IPv6数据报没有扩展首部,字段的作用就是指出了上一层的高层协议(6或17分别对应TCP和UDP)
      • 当出现扩展首部时,字段的作用就是标识后面第一个扩展首部的类型
    • 跳数限制:即IPv的生成时间,每过一个路由器就减1,到0丢弃。
    • 源地址和目的地址。
  • 扩展首部
    • 分类
      • 逐跳选项
      • 路由选择
      • 分片
      • 鉴别
      • 封装安全有效载荷
      • 目的站选项
    • 扩展首部的好处就是可以留给路径两端的源点和终点的主机来处理,而数据报途中经过的路由器都不处理这些扩展首部,这样就大大提高了路由器的处理效率。
  • IPv6的地址包括三种:
    • 单播:点对点通信
    • 多播:一对多点的通信
    • 任播:任播的终点是一组计算机,但数据报只交付其中一个,通常是距离最近的那个
  • IPv6使用冒号十六进制记法,允许把数字前面的0省略,还用了两种技术
    • 零压缩:规定任一地址中只能使用一次零压缩
      在这里插入图片描述
    • 可结合使用点分十进制记法:用在IPv4向IPv6的转换阶段特别有用
      如0:0:0:0:0:0:128.10.2.1 ->压缩后::128.10.2.1
  • CIDR的斜线表示法仍然可用。
    在这里插入图片描述
  • IPv6地址分类见表
    在这里插入图片描述
  • 从IPv4向IPv6过渡的两种方法:
    • 双协议栈:在完全过渡到IPv6之前,使一部分主机(或路由器)装有双协议栈:一个IPv4和一个IPv6.
      在这里插入图片描述
    • 隧道技术:在IPv6数据报要进入IPv4网络时,把IPv6数据报封装成为IPv4数据报(将IPv6整体变成IPv4的数据部分)
      在这里插入图片描述

8.IP多播

  • IP多播较IP单播大大节约了网络资源
    在这里插入图片描述
  • 能运行多播协议的路由器称为多播路由器。
  • 多播数据报和一般的IP数据报的区别它使用D类IP地址(前四位为1110)作为目的地址,并且首部中的协议字段值是12,表明使用网际组管理协议IGMP
  • 多播地址只能用于目的地址,不能用于源地址。
  • 在局域网上进行硬件多播:
    在这里插入图片描述
  • IP多播需要用到两种协议。网际组管理协议IGMP用来让连接在本地局域网上的多播路由器知道本局域网上是否有主机参与或退出了某个多播组。多播路由协议将多播数据报用最小代价传送给所有的组成员。
  • 网际组管理协议IGMP
  • 多播路由选择协议

9.虚拟专用网VPN和网络地址转换NAT

  • 有些机构的主机只是相互之间进行通信(如商场或宾馆)。就可以使用本机构自行分配的IP地址(称为本地地址)
  • RFC指定了一些专用地址用于分配这些本地地址:
    在这里插入图片描述
    采用这样专用IP地址的互联网称为专用互联网或者本地互联网。又称虚拟专用网VPN(Vitrual Private NetWork)
    NAT网络地址转换可以将本地IP转换成全国唯一的IP地址与互联网上的其他主机进行通信。

10.多协议标记交换MPLS

  • 特点:
    • 支持面向连接的服务质量
    • 支持流量工程,平衡网络负载。
    • 有效地支持虚拟专用网VPN

习题解答

1.常见问题与解答

  1. 全1的IP地址是否是向整个互联网进行广播的一种地址?
    不是,在IP地址中全1地址表示仅在本网络上进行传播,叫做首先的广播
    如果net-id是具体的网络号,而host-id是全1,就叫做定向广播,因为这是对某一个具体的网络上的所有主机进行广播的一种地址。
  2. “尽最大努力交付”都有哪些含义?
    (1)不保证一定无差错地交付给目的主机
    (2)不保证都在某一规定时间内交付
    (3)不保证一定按发送时的顺序交付
    (4)不保证不会重复交付
    (5)不故意丢弃IP数据报。(除非首部检验和出错)

2.习题与解答

  1. 网络层向上提供的服务有哪两种?比较优缺点
    在这里插入图片描述
  2. 试说明IP地址与硬件地址的区别。为什么要使用这两种地址?
    由于全世界存在着各式各样的网络,它们使用不同的硬件地址。要使这些异构网络能够相互通信就必须进行非常复杂的硬件的地址转换工作,所以用统一的IP地址吧这个复杂的问题解决了。
  3. IP地址方案与我国电话号码体质的主要不同点是什么?
    主要有三个不同点:
    (1)IP地址是定长的,电话号码是不定长度的
    (2)IP地址与地理位置无关,电话号码有关
    (3)IP地址是唯一的,固定电话会有重复
  4. IP数据报中的首部检验和并不检验数据报中的数据。这样做的最大好处是什么?缺点是什么?
    优点:不检验数据部分可以加快检验的过程,使转换分组过快。
    缺点:数据部分出错不能及时发现,传输到上一层才能检测出有无差错。

在这里插入图片描述
5. 在互联网中将IP数据报分片传送的数据报在最后的目的主机进行组装。还可以有另一种做法,即数据报片通过一个网络就进行一次组装。试比较优劣
应该在目的主机组装,原因:
(1)路由器处理数据更简单
(2)并非所有数据片都经过同样的路由器,如果用路由器组装会导致丢失
(3)也许分组后面还要经过一个网络,还要给这些数据报片划分更小的片。
6.
在这里插入图片描述
7.
在这里插入图片描述
![在这里插入图片描述](https://img-blog.csdnimg.cn/2020022 1204647204.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQzNjQ3NjI4,size_16,color_FFFFFF,t_70)
8.
在这里插入图片描述
[片偏移片段是8字节为单位]
9.
在这里插入图片描述
10. ***
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
11. RIP使用UDP,OSPF使用IP,而BGP使用TCP。这样做有何优点?为什么RIP周期性地和邻站交换路由信息而BGP却不这样做?
(1)RIP只和邻站交换信息,而且频繁的交换信息,使用UDP虽然不保证可靠交付,但是UDP开销小。
OSPF使用可靠的洪泛法了,所以可以直接使用网络层的IP协议
BGP需要交换整个路由表(路由表较大)和更新信息,需要TCP保证可靠性。
(2)因为RIP使用UDP不可靠需要频繁更新,BGP使用TCP可靠不用频繁更新
12.
在这里插入图片描述
在这里插入图片描述
13.
在这里插入图片描述
14.
在这里插入图片描述
在这里插入图片描述
15. 建议的IPv6协议没有首部检验和。这样做的优点是什么?
这样做的优点是首部的处理更简单,因为数据链路层已经会把出差错的帧丢掉了,网络层就没必要了。缺点是可能遇到数据链路层无法检查出来的错误(概率极小)
16.
在这里插入图片描述
17.
在这里插入图片描述
18.
在这里插入图片描述

发布了33 篇原创文章 · 获赞 3 · 访问量 624

猜你喜欢

转载自blog.csdn.net/qq_43647628/article/details/104406587