目录:
4.1 网络层概述
4.2 网际协议IP—>IPV4
补充知识点:
在网络传输中,报文是具有完整意义的二进制数据整体;报文在传输层被拆分成较小的可传输的数据单元,并添加头部,形成包,到达网络层后再次被添加头部形成新的包(packet)。
4.1 网络层概述
4.1.1 一.分组转发和路由选择
网络层的主要任务就是将分组从源主机经过多个网络和多段链路传输到目的主机
,可以将该任务划分为分组转发
和路由选择
两种重要的功能。
注释:
A发送到B,从1端口进入.
如何得知是从2还是从3中转发出去呢?--------->这时候我们需要转发表.
转发表又是如何得来的?---------->由路由表得出
路由表由路由选择处理机使用路由选择协议得出.
4.1.2网络层向其上层提供的两种服务
引入:在计算机网络领域,网络层应该向运输层提供怎样的服务(面向连接还是无连接曾引起了长期的争论).争论的焦点的实质就是:在计算机通信中,可靠交付应当由谁来负责?是网络还是端系统?
一.第一种服务(也是过时观点)--------------面向连接的虚电路服务
- 人们借助传统电信网的成功经验所创造的.
- 核心思想是“
可靠通信应由网络自身来保证
”。 - 必须首先
建立网络层连接
——虚电路
(Vitual Circuit,VC),以保证通信双方所需的一切网络资源。 - 通信双方
沿着已建立的虚电路发送分组
。 - 通信结束后,需要
释放
之前所建立的虚电路。
补充:
虚电路表示这是一条逻辑上的连接,而不是真正建立了一条物理连接。
而采用电路交换的电话通信,则是先建立一条真正的物理连接。因此,分组交换的虚连接与电路交换的连接只是类似,但并不完全一样。
分组的首部仅在连接建立阶段使用完整的目的主机地址,之后每个分组的首部只需要携带一条虚电路编号即可。
这种通信方式如果再使用可靠传输的网络协议,就可使所发送的分组最终正确(无差错按序到达、不丢失、不重复)到达接收方。
然而,因特网的先驱者并没有采用这种设计思想,而是采用了无连接的数据报服务。
二.第二种服务--------------无连接的数据报服务
- 核心思想是“可靠通信应由用户主机来保证”。
- 不需要建立网络层连接。
- 每个分组可走不同的路径。因此,每个分组的首部都必须携带目的主机的完整地址。
- 通信结束后,没有需要释放的连接。
- 这种通信方式所传送的分组可能误码、丢失、重复和失序。
- 由于网络自身不提供端到端的可靠传输服务,这就使得网络中的路由器可以做得比较简单,大大降低了网络造价。
- 将
复杂的网络处理功能
置于因特网的边缘
(即用户主机和其内部的运输层),将相对简单的尽最大努力
(即不可靠)的分组交付功能置于因特网核心
。 - 另外,这种设计思想的运行方式灵活、能够适应多种应用。因特网能够发展到今日的规模,充分证明了当初采取这种设计思想的正确性。
网际层为上层提供简单灵活的、无连接的不可靠的数据报服务.
4.1小节复习重点:
虚电路服务和数据报服务的对比
:
4.2 网际协议IP—>IPV4
概述:
- 网际协议(Internet Protocol,
IP
)是TCP/IP体系结构网际层中的核心协议
。 - 网际协议IP、传输控制协议TCP、TCPIP体系结构是由“
因特网之父
”Robert Kahn和Vint Cerf二人共同研发的,1974年5月发布了TCP/IP的第一个版本。 - TCP/IP体系结构图如下:
图解:
网络接口层提供各种接口,IP是网际层核心协议,其他黄色协议为辅助作用,为运输层TCP和UDP提供服务,TCP为应用层提供可靠传输服务,UDP提供不可靠传输服务. |
4.2.1异构网络互连
这些网络的拓扑、性能以及所使用的网络协议都不尽相同,这是由用户需求的多样性造成的,没有一种单一的网络能够适应所有用户的需求。
- 不同的网络接入机制
- 不同的差错恢复方法
- 不同的路由选择技术
- 不同的寻址方案
- 不同的最大分组长度
- 不同的服务((面向连接服务和无连接服务)
4.2.2 IPv4地址概述与表示方法
一.IPv4地址概述
- IPv4地址是给因特网(Internet)上的
每一个主机(或路由器)的每一个接口
分配的一个在全世界范围内唯一的32比特的标识符
。 - IPv4地址由
因特网名字和数字分配机构
(Internet Corporation for Assigned Names and Numbers,ICANN)进行分配。 - lPv4地址的编址方法经历了三个历史阶段:
二.lPv4地址的表示方法
- 由于IPv4地址由32比特构成,不方便阅读、记录以及输入等,因此IlPv4地址采用
点分十进制表示方法
以方便用户使用。
4.2.3 IPv4地址的编址方式
一.32比特的IPv4地址
二.IPv4地址分类编址
- A类、B类和C类地址都是单播地址,只有单播地址可以分配给网络中的主机(或路由器)的各接口。
- 主机号为“全0”的地址是网络地址,不能分配给主机(或路由器)的各接口。
- 主机号为“全1”的地址是广播地址,不能分配给主机(或路由器)的各接口。
红色部分固定这类地址的开头一定是这种形式
具体各类地址描述:
- A类地址(1-126):
- 最小网络号为0,表示本网络,不能指派;
- 最小可 指派的网络号为1,网络地址为1.0.0.0
- 最大网络号为127,作为本地环回测试地址,不能指派
- 最小的本地环回测试地址为127.0.0.1
- 最大的本地环回测试地址为127.255.255.254
- 最大可指派的网络号为126,网络地址为126.0.0.0
- 可指派的A类网络数量为2(8-1)-2= 126(减2是去掉最小网络号0和最大网络号127)
- 每个A类网络中可分配的地址数量为224 -2=16777214
-
B类地址(128-191)
- 最小可指派的网络号为128.0网络地址为128.0.0.0
- 最大可指派的网络号为191.255网络地址为191.255.0.0
- 可指派的B类网络数量为2(16-2) = 16384
- 每个B类网络中可分配的地址数量为216-2 = 65534((减2是去掉主机号为全0的网络地址和全1的广播地址)
-
C类地址(192-223)
- 最小可指派的网络号为192.0.0网络地址为192.0.0.0
- 最大可指派的网络号为223.255.255网络地址为223.255.255.0
- 可指派的C类网络数量为2(24-3) = 2097152
- 每个c类网络中可分配的地址数量为28-2= 254 (减2是去掉主机号为全0的网络地址和全1的广播地址)
关于IPv4相关地址的总结:
1-126是A类地址
127是本地回环测试
128-191是B类地址
192-223是C类地址
特殊地址:
全0地址,不能作为目的地址,全1地址或者主机号全1的广播地址不能做源地址
127回环测试,除全0或全1的地址可做源地址也可做目的地址
例题1:判别IPv4地址类别,是否可以分配给主机或路由器接口
一般不使用的特殊IPv4地址
:
例题2:
【2017年题36】下列IP地址中,只能作为IP分组的源IP地址但不能作为目的IP地址的是(A).
A.0.0.0.0
B.127.0.0.1
C.20.10.10.3
D.255.255.255.255
例题3:
解题思路:
1.找出图中有哪些网络;
⒉根据各网络中主机和路由器的接口总数量给各网络分配相应类别的网络号;3.给各网络中的各主机和路由器的各接口分配IP地址。
同一个网络中,不同主机和路由器的各接口的IPv4地址的主机号必须各不相同,并且不能为“全0"(网络地址)和“全1”(广播地址)。
本题缺点:严重浪费IPv4地址
三.划分子网
- 随着更多的中小网络加入因特网,IPv4分类编址方法不够灵活、容易造成大量lPv4地址资源浪费的缺点就暴露出来了。
申请新网络号存在以下弊端:
- 需要等待很长的时间,并且要花费更多的费用。
- 即便申请到了两个新的网络号,其他路由器的路由表还需要新增针对这两个新的网络的路由条目。
- 浪费原来已申请到的B类网络中剩余的大量地址。
引入:划分子网
,子网掩码
,如果可以从IPv4地址的主机号部分借用一些比特作为子网号来区分不同的子网,就可以利用原有网络中剩余的大量IPv4地址,而不用申请新的网络地址了。 子网掩码
可以表明分类IPv4地址的主机号部分被借用了几个比特作为子网号。- 与IPv4地址类似,子网掩码也是由
32
比特构成的。- 用左起多个
连续的比特1
对应IPv4地址中的网络号和子网号
; - 之后的多个
连续的比特0
对应IPv4地址中的主机号
。
- 用左起多个
解析
:
把原先主机号的位置,拿出若干做为子网号.
划分子网的意义:
存在问题?
有些网络给了A、B、或者C类的IP地址,但是它的主机数量不多,IP地址存在很大的浪费.
首先要知道:
总体来说,划分子网不但没有增加可用IP地址,而且减少了可用IP地址,因为每个子网中的全0网络地址和全1广播地址均不能作为主机ip来使用。
1、如果不划分子网,那么每个路由器中路由表中中信息量极大!导致速度慢,性能差。划分子网后,减少了广播所带来的负面影响,提高了整体性能。
2、相对来看,节省了IP地址资源!分配地址时,不再按有类地址进行分配,而是按需分配,不然IP地址早枯竭了,所以总起来看,被浪费的IP地址少了,IP地址资源节省了。
3、便于维护。
通过子网掩码得知子网号
将划分子网的IPv4地址
与相应的子网掩码
进行逐比特的逻辑与运算
,就可得到该IPv4地址所在子网的网络地址
。
举例:
练习:
真题举例:
【2012年题39】某主机的IP地址为180.80.77.55,子网掩码255.255.252.0,若该主机向其所在子网发送广播分组,
则目的地址可以是(D)。
A.180.80.76.0
B.180.80.76.255
C.180.80.77.255
D.180.80.79.255
默认子网掩码
是指在未划分子网的情况下使用的子网掩码
。
四.无分类编址方法
引入:IPv4地址的划分子网编址方法在一定程度上缓解了因特网在发展中遇到的困难,但是不够彻底, 为此,因特网工程任务组IETF又提出了采用无分类编址的方法,来解决IPv4地址资源紧张的问题,同时还专门成立IPv6工作组负责研究新版本的IP,以彻底解决IPv4地址耗尽问题。
- 无分类编址方法使用的
地址掩码
与划分子网使用的子网掩码类似,由32比特构成。- 用左起多个连续的比特1对应IPv4地址中的网络前缀;
- 之后的多个连续的比特0对应IPv4地址中的主机号。
- 为了简便起见,可以不明确给出配套的地址掩码的点分十进制形式,而是在无分类编址的IPv4地址后面加上斜线“”,在斜线之后写上网络前缀所占的比特数量(也就是地址掩码中左起连续比特1的数量),这种记法称为
斜线记法
。
举例说明:
使用CIDR(无分类编址)的好处:
- 可以根据客户的需要分配适当大小的CIDR地址块,因此可以更加有效地分配lPv4的地址空间。
- 路由聚合:目的在于精简路由表
- 网络前缀越长,地址块越小,路由越具体;
- 若路由器查表转发分组时发现有多条路由条目匹配,则选择网络前缀最长的那条路由条目这称为
最长 前缀匹配
,因为这样的路由更具体。
本节例题:
【2011年题38】在子网192.168.4.0/30中,能接收目的地址为192.168.4.3的IP分组的最大主机数是©.
A.0
B.1
C.2
D.4
【2018年题38】某路由表有转发接口相同的4条路由表项,其目的网络地址分别为35.230.32.0/21
35.230.40.0/21、
35.230.48.0/21和35.230.56.0/21,将这4条路由聚合后的目的网络地址为(C)。
A.35.230.0.0/19
B.35.230.0.0/20
C.35.230.32.0/19
D.35.230.32.0/20
【2021年题35】现将一个IP网络划分为3个子网,若其中一个子网是192.168.9.128/26,则下列网络中,不可能
是另外两个子网之一的是(B) 。
A.192.168.9.0/25
B.192.168.9.0/26
C.192.168.9.192/26
D.192.168.9.192/27
4.2.4 IPv4首部格式
跳转博客:IPv4首部格式
4.2.5 IPV4地址的应用规划
一.定长的子网掩码和变长的子网掩码
- IPv4地址的应用规划是指将给定的IPv4地址块(或分类网络)划分成若干个更小的地址块(或子网),并将这些地址块(或子网)分配给互联网中的不同网络,进而可以给各网络中的主机和路由器的接口分配IPv4地址。
二.IPv4地址的应用规划——使用定长子网掩码划分子网
三.IPv4地址的应用规划——使用变长子网掩码划分子网
解释说明:
在地址块中选取子块的原则
每个子块的起点位置不能随便选取,只能选取主机号部分是块大小整数倍的地址作为起点
。
建议先为大的子块选取。
本节例题:
【2019年题37】若将101.200.16.0/20划分为5个子网,则可能的最小子网的可分配IP地址数是(B)。
A.126
B.254
C.510
D.1022
4.3 IPV4地址和MAC地址
4.3.1 IPV4地址和MAC地址
网际层之间的信息传输,用的是IP地址,而在链路层用的是MAC地址.
一.数据包传送过程中IPv4地址与MAC地址的变化情况
- 在数据包的传送过程中,数据包的
源IP地址和目的IP地址保持不变
; - 在数据包的传送过程中,数据包的
源MAC地址和目的MAC地址逐链路(或逐网络)改变
。
本节例题:
【2018年题37】路由器R通过以太网交换机S1和S2连接两个网络,R的接口、主机H1和H2的IP地址与MAC地
址如下图所示。若H1向H2发送一个IP分组P,则H1发出的封装P的以太网帧的目的MAC地址、H2收到的封装P的以太网帧的源MAC地址分别是() 。
A.00-a1-b2-c3-d4-6200-1a-2b-3c-4d-52
B.00-a1-b2-c3-d4-6200-1a-2b-3c-4d-61
c.00-1a-2b-3c-4d-51 00-1a-2b-3c-4d-52
D.00-1a-2b-3c-4d-5100-a1-b2-c3-d4-61
二.IPv4地址与MAC地址的关系
- 如果仅使用MAC地址进行通信,则会出现以下主要问题:
- 因特网中的每台路由器的路由表中就必须记录因特网上所有主机和路由器各接口的MAC地址。
- 手工给各路由器配置路由表几乎是不可能完成的任务,即使使用路由协议让路由器通过相互交换路由信息来自动构建路由表,也会因为路由信息需要包含海量的MAC地址信息而严重占用通信资源。
- 包含海量MAC地址的路由信息需要路由器具备极大的存储空间,并且会给分组的查表转发带来非常大的时延。
- 因特网的网际层使用IP地址进行寻址,就可使因特网中各路由器的路由表中的路由记录的数量大大减少,因为只需记录部分网络的网络地址,而不是记录每个网络中各通信设备的各接口的MAC地址。
- 路由器收到IP数据报后,根据其首部中的目的IP地址的网络号部分,基于自己的路由表进行查表转发。
下节引入:
查表转发的结果可以指明P数据报的下一跳路由器的IP地址,但无法指明该IP地址所对应的MAC地址。因此,在数据链路层封装该IP数据报成为帧时,帧首部中的目的MAC地址字段就无法填写,该问题需要使用网际层中的地址解析协议ARP
来解决。
4.3.2 地址解析协议ARP
用来完成IP地址到MAC地址的转化
主机发送ARP请求报文,目的主机往回发送ARP响应报文
ARP获得的IP地址与MAC地址的对应关系记录,要周期性的删除.
ARP协议的相关注意事项:
由于ARP协议的主要用途是从网际层使用的IP地址解析出在数据链路层使用的MAC地址。
因此,有的教材将ARP协议划归在网际层,而有的教材将ARP协议划归在数据链路层
这两种做法都是可以的。
除了本节课介绍的ARP请求报文和响应报文,ARP协议还有其他类型的报文,例如用于检查IP地址冲突的“无故ARP”(Gratuitous ARP) 。
由于ARP协议很早就制定出来了(1982年11月),当时并没有考虑网络安全问题。
因此,ARP协议没有安全验证机制,存在ARP欺骗和攻击等问题。
4.3.3 IP数据报的发送和转发过程
- IP数据报的发送和转发过程包含以下两个过程:
主机
发送IP数据报路由器
转发IP数据报
解释说明:
为了将重点放在TCPIP体系结构的网际层发送和转发IP数据报的过程上,在之后的举例中,将忽略以下过程:
(1)使用ARP协议来获取目的主机或路由器接口的MAC地址的过程。
(2)以太网交换机自学习和转发帧的过程。
过程:
第一步:源主机先判断目的主机是否与自己在同一个网络中
第二步:如何不在一个网络,那就是间接交付,路由器收到IP数据包后转发
-
检查收到的IP数据报是否正确生存时间是否结束;首部是否误码
若不正确,则丢弃该lP数据报,并向发送该IP数据报的源主机发送差错报告。 -
基于IP数据报首部中的目的IP地址在路由表中进行查找。
若找到匹配的路由条目,则按该路由条目的指示进行转发,否则丢弃该lP数据报,并向发送该IP数据报的源主机发送差错报告。
注意:路由器不转发广播IP数据报,即路由器隔离广播域。如果因特网中数量巨大的路由器收到广播IP数据报后都进行转发,则会造成巨大的广播风暴,严重浪费因特网资源。
4.4 IPv6
跳转博客:IPv6基础知识
4.5 路由协议
引入:路由协议分为2种,一种是自治系统内部使用的路由选择协议—>内部网关协议,另一种是自治系统和自治系统之间使用的路由选择协议—>外部网关协议
跳转博客:内部网关协议_路由信息协议RIP_开放路径优先OSPF协议_基本知识
跳转博客:外部网关协议_边界网关协议BGP