计算机网络第四章:网络层

1 网络层提供的两种服务

  • 在计算机网络领域,网络层应该向运输层提供怎样的服务(“面向连接”还是“无连接”)曾引起了长期的争论
  • 争论焦点的实质就是:在计算机通信中,可靠交付应当由谁来负责?是网络还是端系统?

电信网的成功经验让网络负责可靠交付:

  • 面向连接的通信方式
  • 建立虚电路(Virtual Circuit),以保证双方通信所需的一切网络资源
  • 如果再使用可靠传输的网络协议,就可使所发送的分组无差错按序到达终点
    在这里插入图片描述

虚电路是逻辑连接:

  • 虚电路表示这只是一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送,而并不是真正建立了一条物理连接
  • 请注意,电路交换的电话通信是先建立了一条真正的连接。因此分组交换的虚连接和电路交换的连接只是类似,但并不完全一样

因特网采用的设计思路:

  • 网络层向上只提供简单灵活的、无连接的、尽最大努力交付的数据报服务
  • 网络在发送分组时不需要先建立连接。每一个分组(即 IP 数据报)独立发送,与其前后的分组无关(不进行编号)
  • 网络层不提供服务质量的承诺。即所传送的分组可能出错、丢失、重复和失序(不按序到达终点),当然也不保证分组传送的时限

在这里插入图片描述

虚电路服务与数据报服务的对比:
在这里插入图片描述

2 网际协议IP

网际协议 IP 是 TCP/IP 体系中两个最主要的协议之一。与 IP 协议配套使用的还有四个协议:

  1. 地址解析协议 ARP (Address Resolution Protocol)
  2. 逆地址解析协议 RARP (Reverse Address Resolution Protocol)
  3. 网际控制报文协议 ICMP (Internet Control Message Protocol)
  4. 网际组管理协议 IGMP (Internet Group Management Protocol)

网际层的 IP 协议及配套协议:
在这里插入图片描述

2.1 虚拟互连网络

互连在一起的网络要进行通信,会遇到许多问题需要解决,如:不同的寻址方案、不同的最大分组长度、不同的网络接入机制、不同的超时控制、不同的差错恢复方法、不同的状态报告方法、不同的路由选择技术、不同的用户接入控制、不同的服务(面向连接服务和无连接服务)、不同的管理与控制方式

网络互相连接起来要使用一些中间设备(中间设备又称为中间系统或中继(relay)系统):

  • 物理层中继系统:转发器(repeater)
  • 数据链路层中继系统:网桥或桥接器(bridge)
  • 网络层中继系统:路由器(router)
  • 网桥和路由器的混合物:桥路器(brouter)
  • 网络层以上的中继系统:网关(gateway)

互连网络与虚拟互连网络 :
在这里插入图片描述

2.2 分类的 IP 地址

IP 地址及其表示方法:

  • 我们把整个因特网看成为一个单一的、抽象的网络。IP 地址就是给每个连接在因特网上的主机(或路由器)分配一个在全世界范围是唯一的 32 位的标识符
  • IP 地址现在由因特网名字与号码指派公司ICANN (Internet Corporation for Assigned Names and Numbers)进行分配

IP 地址的编址方法:

  • 分类的 IP 地址。这是最基本的编址方法,在 1981 年就通过了相应的标准协议
  • 子网的划分。这是对最基本的编址方法的改进,其标准[RFC 950]在 1985 年通过
  • 构成超网。这是比较新的无分类编址方法。1993 年提出后很快就得到推广应用

分类 IP 地址:

  • 每一类地址都由两个固定长度的字段组成,其中一个字段是网络号 net-id,它标志主机(或路由器)所连接到的网络,而另一个字段则是主机号 host-id,它标志该主机(或路由器)
  • 两级的 IP 地址可以记为:
    在这里插入图片描述

IP 地址中的网络号字段和主机号字段:
在这里插入图片描述
点分十进制记法:
在这里插入图片描述
常用的三种类别的 IP 地址:
在这里插入图片描述

2.3 IP 地址与硬件地址

在这里插入图片描述

2.4 地址解析协议 ARP 和逆地址解析协议 RARP

在这里插入图片描述

2.4.1 地址解析协议 ARP

  • 不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用硬件地址
  • 每一个主机都设有一个 ARP 高速缓存(ARP cache),里面有所在的局域网上的各主机和路由器的 IP 地址到硬件地址的映射表
  • 当主机 A 欲向本局域网上的某个主机 B 发送 IP 数据报时,就先在其 ARP 高速缓存中查看有无主机 B 的 IP 地址。如有,就可查出其对应的硬件地址,再将此硬件地址写入 MAC 帧,然后通过局域网将该 MAC 帧发往此硬件地址

2.4.2 逆地址解析协议 RARP

  • 逆地址解析协议 RARP 使只知道自己硬件地址的主机能够知道其 IP 地址
  • 这种主机往往是无盘工作站。 因此 RARP协议目前已很少使用

2.5 IP 数据报的格式

  • 一个 IP 数据报由首部和数据两部分组成
  • 首部的前一部分是固定长度,共 20 字节,是所有 IP 数据报必须具有的
  • 在首部的固定部分的后面是一些可选字段,其长度是可变的

在这里插入图片描述

  1. 版本——占 4 位,指 IP 协议的版本,目前的 IP 协议版本号为 4 (即 IPv4)
  2. 首部长度——占 4 位,可表示的最大数值是 15 个单位(一个单位为 4 字节),因此 IP 的首部长度的最大值是 60 字节
  3. 区分服务——占 8 位,用来获得更好的服务在旧标准中叫做服务类型,但实际上一直未被使用过。1998 年这个字段改名为区分服务,只有在使用区分服务(DiffServ)时,这个字段才起作用。在一般的情况下都不使用这个字段
  4. 总长度——占 16 位,指首部和数据之和的长度,单位为字节,因此数据报的最大长度为 65535 字节。总长度必须不超过最大传送单元 MTU
  5. 标识(identification) 占 16 位,它是一个计数器,用来产生数据报的标识
  6. 标志(flag) 占 3 位,目前只有前两位有意义。标志字段的最低位是 MF (More Fragment)。MF = 1 表示后面“还有分片”。MF = 0 表示最后一个分片。标志字段中间的一位是 DF (Don’t Fragment) 。只有当 DF = 0 时才允许分片
  7. 片偏移(12 位)指出:较长的分组在分片后某片在原分组中的相对位置。片偏移以 8 个字节为偏移单位
  8. 生存时间(8 位)记为 TTL (Time To Live)数据报在网络中可通过的路由器数的最大值
  9. 协议(8 位)字段指出此数据报携带的数据使用何种协议以便目的主机的 IP 层将数据部分上交给哪个处理过程
  10. 首部检验和(16 位)字段只检验数据报的首部不检验数据部分。这里不采用 CRC 检验码而采用简单的计算方法
  11. 首部检验和(16 位)字段只检验数据报的首部不检验数据部分。这里不采用 CRC 检验码而采用简单的计算方法
  12. 源地址和目的地址都各占 4 字节

IP 数据报首部的可变部分:

  • IP 首部的可变部分就是一个选项字段,用来支持排错、测量以及安全等措施,内容很丰富
  • 选项字段的长度可变,从 1 个字节到 40 个字节不等,取决于所选择的项目
  • 增加首部的可变部分是为了增加 IP 数据报的功能,但这同时也使得 IP 数据报的首部长度成为可变的。这就增加了每一个路由器处理数据报的开销
  • 实际上这些选项很少被使用

3 划分子网和构造超网

3.1 划分子网

从两级 IP 地址到三级 IP 地址,在 ARPANET 的早期,IP 地址的设计确实不够合理:

  • IP 地址空间的利用率有时很低
  • 给每一个物理网络分配一个网络号会使路由表变得太大因而使网络性能变坏
  • 两级的 IP 地址不够灵活

三级的 IP 地址:

  • 从 1985 年起在 IP 地址中又增加了一个“子网号字段”,使两级的 IP 地址变成为三级的 IP 地址
  • 这种做法叫作划分子网(subnetting) 。划分子网已成为因特网的正式标准协议

划分子网的基本思路:

  • 划分子网纯属一个单位内部的事情。单位对外仍然表现为没有划分子网的网络
  • 从主机号借用若干个位作为子网号 subnet-id,而主机号 host-id 也就相应减少了若干个位
    在这里插入图片描述
  • 凡是从其他网络发送给本单位某个主机的 IP 数据报,仍然是根据 IP 数据报的目的网络号 net-id,先找到连接在本单位网络上的路由器
  • 然后此路由器在收到 IP 数据报后,再按目的网络号 net-id 和子网号 subnet-id 找到目的子网
  • 最后就将 IP 数据报直接交付目的主机

一个未划分子网的 B 类网络145.13.0.0:
在这里插入图片描述
划分为三个子网后对外仍是一个网络:
在这里插入图片描述
划分子网后变成了三级结构:

  • 当没有划分子网时,IP 地址是两级结构
  • 划分子网后 IP 地址就变成了三级结构
  • 划分子网只是把 IP 地址的主机号 host-id 这部分进行再划分,而不改变 IP 地址原来的网络号 net-id

3.2 子网掩码

  • 从一个 IP 数据报的首部并无法判断源主机或目的主机所连接的网络是否进行了子网划分
  • 使用子网掩码(subnet mask)可以找出 IP 地址中的子网部分

IP 地址的各字段和子网掩码:
在这里插入图片描述
(IP 地址) AND (子网掩码) = 网络地址:
在这里插入图片描述
默认子网掩码:
在这里插入图片描述
子网掩码是一个重要属性:

  • 子网掩码是一个网络或一个子网的重要属性
  • 路由器在和相邻路由器交换路由信息时,必须把自己所在网络(或子网)的子网掩码告诉相邻路由器
  • 路由器的路由表中的每一个项目,除了要给出目的网络地址外,还必须同时给出该网络的子网掩码
  • 若一个路由器连接在两个子网上就拥有两个网络地址和两个子网掩码

4 网际控制报文协议 ICMP

  • 为了提高 IP 数据报交付成功的机会,在网际层使用了网际控制报文协议 ICMP (Internet Control Message Protocol)
  • ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告
  • ICMP 不是高层协议,而是 IP 层的协议
  • ICMP 报文作为 IP 层数据报的数据,加上数据报的首部,组成 IP 数据报发送出去

ICMP 报文的格式:
在这里插入图片描述

4.1 ICMP的应用举例 PING (Packet InterNet Groper)

  • PING 用来测试两个主机之间的连通性
  • PING 使用了 ICMP 回送请求与回送回答报文
  • PING 是应用层直接使用网络层 ICMP 的例子,它没有通过运输层的 TCP 或UDP

4.2 内部网关协议 RIP (Routing Information Protocol)

工作原理:

  • 路由信息协议 RIP 是内部网关协议 IGP中最先得到广泛使用的协议
  • RIP 是一种分布式的基于距离向量的路由选择协议
  • RIP 协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离记录

4.3 内部网关协议 OSPF (Open Shortest Path First)

OSPF 协议的基本特点:

  • “开放”表明 OSPF 协议不是受某一家厂商控制,而是公开发表的
  • “最短路径优先”是因为使用了 Dijkstra 提出的最短路径算法SPF
  • OSPF 只是一个协议的名字,它并不表示其他的路由选择协议不是“最短路径优先”
  • 是分布式的链路状态协议
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值