基于计算机网络(第7版)谢希仁编著。
第四章 网络层
网络层提供两种服务:
- 面向连接的虚电路服务。特点:保证服务质量,可靠
- 无连接的数据报服务。特点:“尽最大努力交付”,不保证质量
互联网采用的设计思路:
- 网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务。
虚电路服务与数据报服务的对比:
网际协议IP是TCP/IP体系中两个最主要的协议之一,也是最重要的互联网标准协议之一。
TCP/IP体系中的网络层常常被称为网际层或IP层。
五种不同的中间设备:
- 物理层:转发器
- 数据链路层:网桥/桥接器
- 网络层:路由器
- 网桥和路由器的混合物:桥路器
- 网络层以上:网关
IP地址
A、B、C类IP地址都由两个固定长度的字段组成,第一个字段是网络号,第二个字段是主机号。一个IP地址在整个互联网范围内是唯一的。
I
P
地
址
:
:
=
{
<
网
络
号
>
,
<
主
机
号
>
}
IP地址 ::= \{<网络号>,<主机号>\}
IP地址::={<网络号>,<主机号>}
A类、B类和C类地址都是单播地址(一对一通信),是最常用的。
-
A类地址:1.0.0.0—126.0.0.0
① 10.X.X.X是私有地址(所谓的私有地址就是在互联网上不使用,而被用在局域网络中的地址)。
范围(10.0.0.0—10.255.255.255)
② 127.X.X.X是保留地址,用做循环测试。 -
B类地址:128.0.0.0—191.255.0.0
① 172.16.0.0—172.31.255.255是私有地址
② 169.254.X.X是保留地址。如果你的IP地址是自动获取IP地址,而你在网络上又没有找到可用的DHCP服务器。就会得到其中一个IP。
191.255.255.255是广播地址,不能分配。 -
C类地址:192.0.0.0—223.255.255.0
192.168.X.X是私有地址。(192.168.0.0—192.168.255.255) -
D类地址:224.0.0.0—239.255.255.255
多播地址 -
E类地址:240.0.0.0—255.255.255.254
保留为今后使用
重要特点:
- 路由器仅根据目的主机所连接的网络号来转发分组
- 路由器对目的地址是专用地址的数据报一律不进行转发
- IP地址是标志一台主机(或路由器)和一条链路的接口
- 用转发器或网桥连接起来的若干个局域网仍为一个网络
- 所有分配到网络号的网络都是平等的
- 一个路由器至少应连接两个网络。路由器总是具有两个或两个以上的IP地址,即路由器的每一个接口都有一个不同网络号的IP地址。
- 在同一个局域网上的主机或路由器的IP地址中的网络号必须是一样的
IP地址是一种逻辑地址
地址解析协议ARP:
- 功能:地址间的转换
- 要点:在实际网络的链路上传送数据帧时,最终还是必须使用该网络的硬件地址。
①主机ARP高速缓存中存放一个从IP地址到硬件地址的映射表
②当主机A要向本局域网上的某台主机B发送IP数据报时,就先在其ARP高速缓存中查看有无主机B的IP地址
③如有,查出其对应的硬件地址
④没有,自动运行ARP,找出主机B的硬件地址
IP数据报的格式:
首部的前一部分是固定长度,共20字节,是所有IP数据报必须具有的。
最大传输单元MTU 1500字节
在路由表中,对每一条路由最主要的是以下两个信息:
(目的网络地址,下一跳地址)
划分子网:
IP地址中增加一个“子网号字段”,使两级IP地址变成三级IP地址。划分子网已成为互联网的正式标准协议。
- 从网络的主机号借用若干位作为子网号,主机号也就相应减少了同样的位数。
I P 地 址 : : = { < 网 络 号 > , < 子 网 号 > , < 主 机 号 > } IP地址 ::=\{<网络号>,<子网号>,<主机号>\} IP地址::={<网络号>,<子网号>,<主机号>}
子网掩码:
- 子网掩码1的位置为网络号和子网号,0的位置为主机号。
- 把子网掩码和收到的数据报的目的IP地址逐位相“与”(有0为0),得出所要找的子网的网络地址。
- 不管网络有没有划分子网,只要把子网掩码和IP地址进行逐位的“与”运算,就立即得出网络地址来。
★使用子网时分组的转发:
使用子网划分后,路由表包含:目的网络地址、子网掩码和下一跳地址。
分组转发算法:
(1)从收到的数据报的首部提取目的IP地址D。
(2)对路由器直接相连的网络逐个进行检查:用各网络的子网掩码和D逐位相“与”,看结果是否和相应的网络地址区配。若区配,把分组直接交付,转发任务结束;否则就是间接交付,执行(3)
(3)若路由表中有目的地址为D的特定主机路由,则把数据报传送给路由表中所指明的下一跳路由器;否则,执行(4)
(4)对路由表中的每一行,用其中的子网掩码和D逐位相“与”,其结果为N。若N与该行目的网络地址区配,则把数据报传送给该行指明的下一跳路由器;否则执行(5)
(5)若路由表中有一个默认路由,则把数据报传送给路由表中所指明的默认路由器;否则执行(6)
(6)报告转发分组出错
无分类编址CIDR(构成超网):
CIDR使IP地址从三级编址又回到了两级编址:
I
P
地
址
:
:
=
{
<
网
络
前
缀
>
,
<
主
机
号
>
}
IP地址 ::=\{<网络前缀>,<主机号>\}
IP地址::={<网络前缀>,<主机号>}
CIDR使用“斜线记法”,或称CIDR记法,即在IP地址后面加上斜线“/”,然后写上网络前缀所占的位数。
它还使用32位的地址掩码。1的个数就是网络前缀的长度,斜线后的数字就是1的个数。
例:128.14.35.7/20=10000000 00001110 00100011 00000111
其地址掩码:11111111 11111111 11110000 00000000
每一个CIDR地址块中的地址数一定是2的整数次幂。前缀长度不超过23bit的CIDR地址块都包含了多个C类网络,这些C类网络合起来就构成了超网。
最长前缀区配:
- 从区配结果中选择具有最长网络前缀的路由。(最精确)
网际控制报文协议ICMP
PING,用来测试两台主机间的连通性
外部网关协议 BGP
内部网关协议RIP:
基于距离向量的路由选择协议
距离向量算法:
- 对地址为X相邻路由器发送来的RIP报文。把“下一跳”地址都改为X,把所有的“距离”字段值加1
- 若原来的路由表中没有目的网络N,则把该项目添加到路由表中
- 否则,若下一跳路由器地址是X,用收到的项目替换原有的项目
- 否则,若收到的项目中距离d小于原有距离,更新
- 否则什么也不做
- 若3分钟还没收到相邻路由表的更新路由表,则把此相邻路由器记为不可达路由器,即把距离置为16(距离16表示不可达)
优点:
- 实现简单,开销小
缺点:
- 当网络出现故障时,要经过比较长的时间才能将此信息传送到所有的路由器(坏消息传播的慢)
- 限制了网络的规模。随着网络规模的扩大,开销也就增加。
适用于中小型网络。
路由器的作用:
- 用于不同网络(子网)之间的转发访问,选路,优化
转发数据时使用的地址:
- 目的主机的IP地址
IPv6中,每个地址占128位,使用冒号十六进制记法。
网际组管理协议IGMP
隧道技术:适用于多播组的位置地理上很分散的情况
虚拟专用网VPN
网络地址转换NAT
例题:
4-52
4-54
4-58