计算机网络第4章知识点——网络层

📑来源

本笔记基于他人笔记《计算机 408 课程笔记》改进而来,该笔记获取自 Git 仓库 npee-408-note,GitHub @ JackyLee3362

https://github.com/JackyLee3362/npee-408-note

网络层提供的两种服务

  • 虚电路服务:面向连接,让网络负责可靠交付
  • 数据报服务:无连接,让主机负责可靠交付

image-20210602211325735

image-20210602211344440

image-20210602211353581

网络层的功能

异构网络互联

  • 中继系统
    • 物理层中继系统:中继器,集线器(Hub)
    • 数据链路层中继系统:网桥,交换机
    • 网络层中继系统:路由器
    • 网络层以上的中继系统:网关

路由与转发

  • 路由选择
  • 分组转发
  • 拥塞控制
  • 判断拥塞状态的方法:观察网络的 吞吐量 和 网络负载 的关系
  • 两种方法
    • 开环控制
    • 闭环控制

网际互联协议 IP

网际互联协议 IP(Internet Protocol )

  • IPv4
  • IPv6

IPv4 协议

  • IPv4 即现在普遍使用的 IP(版本 4)协议
  • 基本单元:IP 分组 / IP 数据报

image-20210602211753656

IPv4 数据报
IPv4 数据报格式
  • IP 数据报 = 首部 + 数据部分
  • 版本:IPv4 或 IPv6
  • 首部长度:单位 4B,最常用的首部长度是 20B
  • 总长度:单位 1B
  • 生存时间(TTL,Time to Live):经过一个路由器 -1,变成 0 则丢弃
  • 协议:数据部分使用的协议
  • 首部校验和:只检验分组的首部,而不校验数据部分
  • 标志:
    • 中间位 DF(Don’t Fragment):DF=1,禁止分片,DF=0,允许分片
    • 最低位 MF(More Fragment):MF=1,后面还有分片,MF=0,代表最后一片/没分片
  • 片偏移:指出较长分组分片后,某片在原分组中的相对位置。单位 8B

image-20221222173611832

image-20210603202958222

IPv4 数据报分片与转发
  • IP 数据报采用 16 位二进制反码求和算法检验数据报的首部
  • 途径最大传输单元(Maximum Transmission Unit,MTU)较小网络,数据报会被分片,到达目的站后再进行重组。
  • MTU 最大传输单元 Maximum Transmission Unit
    • 以太网 MTU 不超过:1500B
    • 广域网 MTU 不超过:576B
  • 网络层转发分组的流程
    • 直接交付
    • 间接交付
    • 注意:得到下一跳IP路由器的IP地址后并不是直接将该地址填入待发送的数据报,而是将该IP地址转换成MAC地址(通过ARP),将其放到MAC帧首部中,然后根据这个MAC地址找到下一跳路由器。在不同网络中传送时,MAC帧中的源地址和目的地址要发生变化,但是网桥在转发帧时,不改变帧的源地址,请注意区分 知识点
IPv4 地址
IPv4 地址的表示方法

点分十进制记法

image-20210603190048347

IPv4 地址的结构
  • IPv4 地址的结构 = {<网络号>, <主机号>}
    • 网络号 net-id
    • 主机号 host-id

image-20210603185807068

IPv4 地址的编制方法
  • 分类的 IP 地址:这是最基本的编制方法
    • A类:1 - 126
    • B类:128 - 191
    • C类:192 - 223
    • D类:224 - 239
    • E类:240 - 255
  • 子网划分:对最基本编制方法的改进
    • 子网掩码
    • IP 地址的结构 = {<网络号>, <子网号>, <主机号>}
  • 构成超网:较新的无分类编制方法
    • 无类别域间路由选择 CIDR Classless Inter-Domain Routing
      • IP 地址的结构 = {<网络前缀>, <主机号>}
      • 一个 CIDR 地址快可以表示很多地址,这种地址的聚合称为路由聚合
      • 最长前缀匹配(最佳匹配)

image-20210603185823124

特殊 IPv4 地址与私有 IPv4 地址
  • 特殊 IPv4 地址
    • 主机号全 0:网络本身
    • 主机号全 1:广播地址
    • 127.x.x.x :环回自检地址 Loopback Test,目的地址为环回自检地址的IP数据报永远不会出现在网络上
    • 0.0.0.0:本网络上的本主机
    • 255.255.255.255 :整个TCP/IP网络的广播地址(受限广播地址)
  • 私有 IPv4 地址网段
    • A 类网段 1 个:10.0.0.0 - 10.255.255.255
    • B 类网段 16 个:172.16.0.0 - 172.31.255.255
    • C 类网段 256 个:192.168.0.0 - 192.168.255.255
子网划分
子网掩码
  • 子网掩码长度=32位
  • 某位=1:IP地址中的对应位为网络号和子网号
  • 某位=0:IP地址中的对应位为主机号

image-20210603205251206

相关计算
  • 计算可用的子网数
  • 主机地址
  • 有效子网
  • 广播地址
子网划分方法
  • 等长子网划分:子网网络规模相同
  • 可变子网划分(Variable Length Subnet Mask,VLSM):子网网络规模不同
无分类域间路由选择 CIDR

无分类域间路由选择 CIDR (Classless Inter-Domain Routing)消除了传统地址分类和子网划分的概念,使用无分类的两级编址,用各种长度的“网络前缀”(network- prefix)来代替分类地址中的网络号和子网号。

image-20210603212437678

CIDR 地址块

CIDR 把网络前缀都相同的连续的 IP 地址组成 CIDR 地址块。

一个 CIDR 地址块可以表示很多地址,这种地址的聚合常称为路由聚合,路由聚合也称为构成超网 (supernetting)。

最长前缀匹配

应当从匹配结果中选择具有最长网络前缀的路由:最长前缀匹配 (longest-prefix matching),其又称为最长匹配或最佳匹配。

二叉线索查找路由表

为了进行更加有效的查找,通常是将无分类编址的路由 表存放在一种层次的数据结构中,然后自上而下地按层 次进行查找。这里最常用的就是二叉线索 (binary trie)。

image-20210604145413863

IPv6 协议

  • IPv6主要特点
    • IPv6头部长度为:128bit or 16B
    • 一般意义上说,IPv6不允许分片(在源节点可以分片,路由器不能分片)
    • IPv6的首部必须是 8B 的整数倍,IPv4首部必须是 4B 的整数倍
  • IPv6地址
    • 基本类型地址:单播,多播,任播
    • 过渡策略:双协议栈、隧道协议
IPv6 数据报
  • 基本首部 (base header)
  • 有效载荷 (payload)
    • 扩展首部
    • 数据
  • 目的地址
    • 单播 (unicast):传统的点对点通信
    • 多播 (multicast):一点对多点的通信
    • 任播 (anycast):任播的目的站是一组计算机,但数据报在交付时只交付其中的一个,通常是距离最近的一个

image-20210604205653799

image-20210604205910228

IPv6 地址
IPv6 地址的表示方法

IPv6 使用冒号十六进制记法 (colon hexadecimal notation, 简写为colon hex)

而且冒号十六进制记法可以允许零压缩 (zero compression),即一连串连续的零可以为一对冒号所取代

在任一地址中只能使用一次零压缩

IPv6 地址类别

image-20210604210853704

结点与接口

IPv6 将实现 IPv6 的主机和路由器均称为结点。

IPv6 地址是分配给结点上面的接口的。

一个接口可以有多个单播地址。

一个结点接口的单播地址可用来唯一地标志该结点。

IPv4 与 IPv6 联系

IPv4 与 IPv6 区别
  • IPv6 将地址从32位(4B) 扩大到128位(16B),更大的地址空间。
  • IPv6 将 IPv4 的校验和字段彻底移除,以减少每跳的处理时间。
  • IPv6 将 IPv4 的可选字段移出首部,变成了扩展首部,成为灵活的首部格式,路由器通常不对扩展首部进行检查大大提高了路由器的处理效率。
  • IPv6 支持即插即用 (即自动配置),不需要 DHCP 协议。
  • IPv6 首部长度必须是 8B 的整数倍,IPv4 首部是 4B 的整数倍
  • IPv6 只能在主机处分片,IPv4 可以在路由器和主机处分片。
  • ICMPv6:附加报文类型“分组过大”
  • IPv6 支持资源的预分配,支持实时视像等要求,保证一定的带宽和时延的应
  • IPv6 取消了协议字段,改成下一个首部字段。
从 IPv4 向 IPv6 过渡策略
  • 使用双协议栈

    image-20210604211221846

  • 使用隧道技术

image-20210604211240705

IP 地址与硬件地址的区别

  • 硬件地址(或物理地址)是数据链路层和物理层使用的地址。
  • IP 地址是网络层和以上各层使用的地址,是一种逻辑地址(称 IP 地址是逻辑地址是因为 IP 地址是用软件实现的)。
  • 在端到端通信过程中,源、目的IP地址始终不变,源、目的 MAC 地址则在每段链路传输时都会被改变。

image-20210603191424857

IP 多播

  • 多播的概念

  • IP 多播地址

    • 使用 D 类地址
    • 映射到 MAC 地址:01-00-5E-[0+IP地址后23位置]
  • IP 多播需要的协议

    • 网际组管理协议 IGMP (Internet Group Management Protocol)
    • 多播路由选择协议
  • IP 多播所传送的分组需要使用多播 IP 地址

  • 多播组的标识符就是 IP 地址中的 D 类地址(多播地址)

  • 对多播数据报不产生 ICMP 差错报文

移动 IP

  • 移动 IP 概念
    • 移动结点、本地代理、外部代理
  • 移动 IP 通信过程
    • 主地址 辅地址

地址解析协议 ARP

地址解析协议 ARP (Address Resolution Protocol) ,是网络层协议

地址解析协议作用

从网络层使用的 IP 地址, 解析出在数据链路层使用的硬件地址。

当目的主机和源主机不在同一个局域网时,通过 ARP 找到默认网关的硬件地址,然后由默认网关把分组转发给下一个网络。

ARP 高速缓存

每一个主机都设有一个 ARP 高速缓存 (ARP cache),里面有所在的局域网上的各主机和路由器的 IP 地址到硬件地址的映射表,这样可以减少 ARP 广播的数量。

image-20210603202316967

网际控制报文协议 ICMP

网际控制报文协议 ICMP (Internet Control Message Protocol)

  • ICMP是网络层的协议

  • 使用ICMP的目的:提高IP数据报交付成功的机会

  • ICMP差错报告报文 ↓

    • 终点不可达
    • 源点抑制
    • 时间超过
    • 参数问题
    • 改变路由(重定向)
  • ICMP询问报文 ↓

    • 回答请求和回答报文(常用)
    • 时间戳请求和回答报文(常用)
    • 掩码地址请求和回答报文
    • 路由器询问和通告报文
  • ICMP 允许主机或路由器报告差错情况和提供有关异常情况的报告。

  • ICMP 不是高层协议(看起来好像是高层协议,因为 ICMP 报文是装在 IP 数据报中,作为其中的数据部分),而是 IP 层的协议。

ICMP 报文的格式

image-20210604154749363

ICMP 报文的种类

  • ICMP 差错报告报文

    image-20210604155341159

  • ICMP 询问报文

ICMP 应用

PING (Packet InterNet Groper),用来测试两个主机之间的连通性。

Traceroute,用来跟踪一个分组从源点到终点的路径。

网际组管理协议 IGMP

网际组管理协议 IGMP (Internet Group Management Protocol)

在主机和多播路由器之间的所有通信都是使用 IP 多播。

因为组成员关系是动态的,因此本地多播路由器要 周期性地探询本地局域网上的主机。

工作阶段

  • 第一阶段:加入多播组。
  • 第二阶段:探询组成员变化情况。

多播路由选择协议

多播路由选择实际上就是要找出以源主机为根结点的多播转发树。

使用方法

(1) 洪泛与剪除

采用了反向路径广播 RPB (Reverse Path Broadcasting)的策略。

image-20210604212118764

(2) 隧道技术 (tunneling)

image-20210604212132436

(3) 基于核心的发现技术

这种方法是对每一个多播组 G 指定一个核心 (core) 路由器,给出它的 IP 单播地址。

动态主机配置协议 DHCP

动态主机配置协议 DHCP(Dynamic Host Configuration Protocol)

  • DHCP 应用层协议
  • DHCP 基于 UDP 协议
  • 工作原理(什么模型)C/S Model
  • 相关
    • 提供报文
    • 租用期

路由算法

image-20221207141926675

静态路由算法 / 非自适应路由算法

  • 网络管理员手工配置路由信息

动态路由算法 / 自适应路由算法

  • 距离向量路由算法 Distance Vector Algorithms
    • 要求每个结点在每次更新时都将它的全部路由表发送给所有相邻的结点
    • 比如RIP算法
  • 链路状态路由算法 (比如OSPF算法)

层次路由

  • 内部网关协议 IGP Interior Gateway Protocols / 域内路由选择
    • RIP协议
    • OSPF协议
  • 外部网关协议 EGP Exterior Gateway Protocols / 域间路由选择
    • 边界网关协议 BGP Border Gateway Protocol

路由协议

自洽系统 AS

自洽系统 AS(Autonomous System)

  • 自洽系统内部的路由选择―域内路由选择
  • 自洽系统之间的路由选择―域间路由选择

image-20210604165043265

域内路由和域间路由

image-20210604165432740

  • 内部网关协议 IGP (Interior Gateway Protocol)
    • RIP
    • OSPF
  • 外部网关协议 EGP (External Gateway Protocol)
    • BGP

RIP 协议

路由信息协议/RIP 协议(Routing Information Protocol)

  • 是一种分布式的基于距离向量的路由选择协议
  • 特点 ↓
    • 仅和相邻路由器交换信息
    • 路由器交换的信息是当前路由器所知道的全部信息,即自己的路由表
    • 按规定的时间间隔交换路由信息,比如每隔30s
  • 采用「跳数 Hop Count」作为距离的度量,慢收敛
  • 优点:简单,开销小,收敛过程快
  • 缺点
    • 限制了网络的规模,能使用的最大距离为15
    • 坏消息传得慢
  • RIP是应用层协议,使用UDP传输数据(端口520)
特点

路由信息协议 RIP (Routing Information Protocol)是一种分布式的、基于距离向量的路由选择协议。

RIP 协议要求网络中的每一个路由器都要维护从它自己到其他每一个目的网络的距离(跳数)记录,使用跳数判断到其他网络的距离。

RIP 不能在两个网络之间同时使用多条路由。

RIP能使用的最大距离为 15跳,适用于小型网络。

RIP好消息传播得快,坏消息传播得慢,导致更新过程收敛时间过长。

运行RIP协议的路由器周期性地和相邻路由器交换自己的路由表,即:

(1) 仅和相邻路由器交换信息。

(2) 交换的信息是当前本路由器所知道的全部信息,即自己的路由表。

(3) 按固定的时间间隔交换路由信息

RIP2 协议的报文格式

image-20210604170613848

OSPF 协议

OSPF 协议(Open System Path First Protocol)

  • 基本特点
    • 向本自洽系统中的所有路由器发送信息,使用泛洪法(RIP仅向自己相邻的几个路由器发送信息)
    • 是网络层协议,不使用UDP或TCP,而直接用IP数据报传送
  • OSPF的基本工作原理
  • 五种分组类型
    • 问候分组
    • 数据库描述分组
    • 链路状态请求分组
    • 链路状态更新分组
    • 链路状态确认分组
特点

开放最短路径优先 OSPF (Open Shortest Path First)使用了最短路径算法 SPF,采用分布式的链路状态协议 (link state protocol)。

所有的路由器最终建立一个链路状态数据库。这个数据库实际上就是全网的拓扑结构图,它 在全网范围内是一致的(这称为链路状态数据库的同步)。

OSPF包括邻居表、拓扑表(链路状态数据库)、路由表。

OSPF 不用 UDP 而是直接用 IP 数据报传送。

OSPF 对于不同类型的业务可计算出不同的路由。

OSPF 能实现多路径间的负载平衡:如果到同一个目的网络有多条相同代价的路径,那么可以

将通信量分配给这几条路径。

OSPF 支持可变长度的子网划分和无分类编址 CIDR。

划分区域

OSPF 将一个自治系统再划分为若干个更小的范围,叫作区域。

OSPF使用层次结构的区域划分,区域分为:

  • 主干区域
  • 常规区域

image-20210604171329236

划分区域的好处就是将利用洪泛法交换链路状态信息的范围局限于每一个区域而不是整个的自治系统,这就减少了整个网络上的通信量。

OSPF 分组

OSPF 通过洪泛发送更新分组。

所有在 OSPF 路由器之间交换的分组都具有鉴别的功能。

image-20210604171500331

BGP 边界网关协议

BGP 边界网关协议(Boarder Gateway Protocol)

  • 应用层协议
  • 基于 TCP
  • RIP OSPF BGP 三种路由协议的比较
特点

BGP 是不同自治系统的路由器之间交换路由信息的协议。

边界网关协议 BGP 只能是力求寻找一条能够到达目的网络且比较好的路由(不能兜圈子),而并非要寻找一条最佳路由。

使用 TCP 连接交换路由信息的两个 BGP 发言人, 彼此成为对方的邻站(neighbor)或对等站(peer) 。

image-20210604201356523

BGP 报文

image-20210604202752056

路由协议区别

当互联网规模很大时,OSPF 协议要比距离向量协议 RIP 好得多。

RIP好消息传播得快,坏消息传播得慢,而OSPF 没有“坏消息传播得慢”的问题,更新过程收敛速度快。

image-20221207142414552

虚拟专用网 VPN

采用这样的专用 IP 地址的互连网络称为专用互 联网或本地互联网,或更简单些,就叫作专用 网。专用 IP地址也叫作可重用地址(reusable address)。

利用公用的互联网作为本机构各专用网之间的通信载体,这样的专用网又称为虚拟专用网 VPN (Virtual Private Network)。

使用隧道技术实现VPN。

image-20210604212400706

image-20210604212412200

内联网 intranet 和外联网 extranet

由部门 A 和 B 的内部网络所构成的虚拟专用网 VPN 又称为内联网 (intranet),表示部门 A 和 B 都是在同 一个机构的内部。

一个机构和某些外部机构共同建立的虚拟专用网 VPN 又称为外联网 (extranet)。

网络地址转换 NAT

网络地址转换 NAT Network Address Translation

  • NAT工作在哪一层 :传输层 ,因为它要查看端口号,而端口号是在传输层的
  • 专用互联网:采用私有IP地址(可重用地址)在互联网络称为专用互联网或本地互联网

网络地址转换 NAT (Network Address Translation), 需要在专用网连接到互联网的路由器上安装 NAT 软件。装有 NAT 软件的路由器叫作 NAT 路由器,它至少有一个有效的外部全球IP地址。

image-20210604212707061

专用网内部的主机不能充当服务器用。

网络地址与端口号转换 NAPT

网络地址与端口号转换 NAPT(Network Address and Port Translation)

使多个拥有本地地址的主机,共 用一个 NAT 路由器上的全球 IP 地址

多协议标记交换 MPLS

MPLS并没有取代 IP,而是作为一种 IP 增强技术

工作过程

在 MPLS 域的入口处,给每一个 IP 数据报打上 固定长度“标记”,

标记交换功能是为了快速转发,但在这之前 LSR 需要使用路由选择功能构造转发表

image-20210604213146829

当分组离开 MPLS 域时,MPLS 出口结点把 分组的标记去除。

转发等价类 FEC

转发等价类 FEC (Forwarding Equivalence Class)就是路由器按照同样方式对待的分组的集合,将属于同样 FEC 的分组都指派同样的标记

FEC 和标记是一一对应的关系。

MPLS 首部格式

image-20210604213338663

网络层设备

路由器 Router

  • 组成
    • 交换结构
    • 一组输入端口
    • 一组输出端口
  • 功能
    • 分组转发
    • 路由计算
  • 路由表 路由转发
  • 路由表是根据路由选择算法得出的
  • 与网桥的区别
    • 网桥与高层协议无关,而路由器是面向协议的
  • 路由表:| 目的网络IP地址 | 子网掩码 | 下一跳IP地址 | 接口 |
路由器结构
  • 路由选择部分(控制部分)
  • 分组转发部分
    • 交换结构(switching fabric)
    • 一组输入端口
    • 一组输出端口

image-20210604204043390

路由表是根据路由选择算法得出的。而转发表是从路由表得出的。

输入端口与输出端口

输入端口中的查找和转发功能在路由器的交换功能中是最重要的。

image-20210604204723487

image-20210604204738250

分组丢弃

路由器中的输入或输出队列产生溢出是造成分组丢失的重要原因。

交换结构
交换方法
  • 通过存储器
  • 通过总线
  • 通过纵横交换结构( crossbar switch fabric )

image-20210604205437574

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值