1.29k likes | 1.41k Views
第七讲 网络层(上). 网络层 大纲考查范围. 网络层 大纲考查范围. 知识点归纳. 网络层的功能. 知识点归纳. (一)网络层的功能: 1.异构网络互联 互连在一起的网络要进行通信,有许多问题要解决: 不同的寻址方案、最大分组长度、网络接入机制、超时控制、差错恢复方法、路由选择技术、服务、管理与控制技术, …… 网络互连使用的中间设备: 中继器(转发器, repeater )、 集线器 网桥 ( bridge)、 交换机( switch) 路由器( router) 网关( gateway). 网络扩展.
E N D
知识点归纳 • 网络层的功能
知识点归纳 (一)网络层的功能: 1.异构网络互联 互连在一起的网络要进行通信,有许多问题要解决: 不同的寻址方案、最大分组长度、网络接入机制、超时控制、差错恢复方法、路由选择技术、服务、管理与控制技术,…… 网络互连使用的中间设备: 中继器(转发器,repeater)、集线器 网桥(bridge)、交换机(switch) 路由器(router) 网关(gateway) 网络扩展 ---- 网络互联
路由器 Switch Switch HUB 冲突域1 冲突域2 广播域 1 冲突域3 交换机可以分隔冲突域, 路由器可以分隔广播域。 广播域 2 知识点归纳
路由器 网络 网络 虚拟互连网络 (互联网) 网络 网络 网络 (b) 虚拟互连网络 (a) 互连网络 知识点归纳
知识点归纳 • 所谓虚拟互连网络也就是逻辑互连网络,它的意思就是互连起来的各种物理网络的异构性本来是客观存在的,但是我们利用 IP 协议就可以使这些性能各异的网络从用户看起来好像是一个统一的网络。 • 使用 IP 协议的虚拟互连网络可简称为 IP 网。 • 使用虚拟互连网络的好处是:当互联网上的主机进行通信时,就好像在一个网络上通信一样,而看不见互连的各具体的网络异构细节。
知识点归纳 2. 路由与转发 • “转发”(forwarding)就是路由器根据转发表将用户的 IP 数据报从合适的端口转发出去。 • “路由选择”(routing)则是按照分布式算法,根据从各相邻路由器得到的关于网络拓扑的变化情况,动态地改变所选择的路由。 • 路由表是根据路由选择算法得出的。而转发表是从路由表得出的。 • 在讨论路由选择原理时,往往不区分转发表和路由表的区别,而是笼统地使用路由表这一名词。
知识点归纳 3. 拥塞控制 当大量的分组进入通信子网,超出了网络的处理能力时,就会引起网络局部或整体性能下降,这种现象称为拥塞。拥塞常常使问题趋于恶化。 • 引起拥塞的原因 节点存储量不够、CPU处理速度太慢、线路带宽太低等 • 出现资源拥塞的条件 对资源需求的总和 > 可用资源 • 拥塞控制 从各个方面对子网加以控制,规范所有主机和路由器的行为,尽量消除任何可能导致子网通信能力下降的因素,确保子网的正常运行。
拥塞控制与流量控制 • 区别 • 流量控制只在一对给定的发送方和接收方之间,控制发送方不以超过接收方处理能力的速率发送数据。 • 拥塞控制是一个全局性的过程,涉及到网络中所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素。 • 联系 流量控制限制了进入网络中的信息总量,可以在一定程度上减缓拥塞的作用。
拥塞控制策略 • 策略一:开环控制方法。 重在预防,希望通过完美的设计来避免拥塞的发生。 需精心设计网络的各个环节,尽可能减少不必要的数据重传和避免数据过分集中在某个局部,同时还要严格控制进入子网的数据量以及数据流入的速度。 • 策略二:闭环控制方法。 重在解决,在拥塞发生后设法控制和缓解拥塞。 需监视拥塞的发生,网络中要定期收集一些性能参数,一旦参数值超过一定的门限,检测到拥塞的结点立即通知有关结点,以便采取措施。
静态路由选择策略 (非自适应路由选择) 路由算法 动态路由选择策略 (自适应路由选择) 知识点归纳 (二)路由算法 1.静态路由与动态路由 从路由算法能否随网络的通信量或拓扑自适应地进行调整变化来划分,分为两大类:
知识点归纳 • 静态路由算法 • 预先计算好路由表,在系统启动时装入路由器,在运行过程中保持不变。 • 不能适应网络拓扑和流量的变化,出现故障时必须人工干预。 • 实现简单,适合于负载稳定、变化不大的环境。 • 动态路由算法 • 根据当前网络流量和拓扑来选择最佳路径。 • 算法灵活、强壮。某一节点发生故障时,可绕过该节点,平衡负载。 • 算法复杂,实现难度大。 • 各路由器之间定期交换路由信息,增加了网络负担。
知识点归纳 2. 距离矢量路由选择(DV)算法 • 方法 • 每隔一段时间,每个节点就向它的所有相邻节点发送一个有关全网的距离列表(即距离矢量)。 • 各节点依据当前相邻节点的情况来修改更新自己的路由表。 • 距离的计算 • 可以为距目的节点的站的段数(hops)、时间等
距离矢量的路由协议 B A C Distance — How farVector — In which direction D A D C B 定期将路由表复制给相邻的路由器,并且进行矢量计算、更新路由表 Routing Table Routing Table Routing Table Routing Table
E0 S0 S0 S1 距离矢量—源信息的获得 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 A B C E0 S0 S0 S1 S0 E0 Routing Table Routing Table Routing Table 10.1.0.0 0 10.2.0.0 0 10.3.0.0 0 S0 10.2.0.0 0 10.3.0.0 0 10.4.0.0 0 E0 各路由器从自己直接相连的网络收集到最原始的源信息
10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 A B C E0 S0 S0 S1 S0 E0 E0 S0 Routing Table Routing Table Routing Table S0 S1 10.1.0.0 0 10.2.0.0 0 10.3.0.0 0 S0 S0 S1 S0 10.2.0.0 0 10.3.0.0 0 10.4.0.0 0 E0 S0 1 1 10.3.0.0 10.4.0.0 10.2.0.0 1 10.1.0.0 1 距离矢量—源信息的获得 路由器从相邻路由器收集到的源信息中选择到达目标地址的最佳路径。
E0 S0 S0 S1 S0 S1 S0 S0 S0 距离矢量—源信息的获得 10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0 A B C E0 S0 S0 S1 S0 E0 Routing Table Routing Table Routing Table 10.1.0.0 0 10.2.0.0 0 10.3.0.0 0 S0 10.2.0.0 0 10.3.0.0 0 10.4.0.0 0 E0 路由器继续从相邻路由器收集到的源信息中选择到达目标地址的最佳路径。 1 10.3.0.0 10.4.0.0 1 10.2.0.0 1 S0 2 10.4.0.0 10.1.0.0 1 10.1.0.0 2
网络结构的 改变将导致 路由表的 更新 一步一步完成的路由表更新过程 更新路由表 A 路由表的更新过程将通过路由器之间一步一步来完成
在下一个周期后 路由器A发送更新 过的路由表 网络结构的 改变将导致 路由表的 更新 一步一步完成的路由表更新过程 更新路由表 A 路由表的更新过程将通过路由器之间一步一步来完成
在下一个周期后 路由器A发送更新 过的路由表 网络结构的 改变将导致 路由表的 更新 一步一步完成的路由表更新过程 更新路由表 更新路由表 A B 路由表的更新过程将通过路由器之间一步一步来完成
DV算法的收敛性问题 X • 节点启动时 (b)A->B的链路失效时 各结点到结点A的距离
DV算法的优缺点 • 优点 • 实现简单,开销较小 • 缺点 • 收敛较慢,网络远端的变化只有经过相邻点的多次传递才能逐渐反映出来 • 好消息传播得快,坏消息传播得慢。网络出故障的传播时间往往需要较长的时间 • 路由器之间交换的路由信息是路由器中的完整路由表,随着网络规模的扩大,开销也就增加。 • 一般只用于规模不大的局域网
链路状态路由选择算法 3. 链路状态路由选择(LS)算法 • 特点 • 各结点向全网其它节点发送该节点同相邻节点的链路状态信息 • 基本思想 • 通过各个节点之间的路由信息交换 • 每个节点可获得关于全网的拓扑信息,得知网中所有的节点、各节点间的链路连接和各条链路的代价. • 将这些拓扑信息抽象成一张带权无向图,然后利用最短通路路由选择算法计算出到各个目的节点最短通路。
B C A D 拓扑结构数据 路由表 SPF 运算 最佳路由信息 链路状态路由选择算法 LSA(link state advertisement) 数据包链路状态公告 传递自己的链路状态信息给其它的路由器
LS算法的步骤 1.了解相邻节点 • 方法:发送询问分组 • 每个节点启动后,向同它相连的线路上发送一个特殊的询问分组,链路另一端的节点收到该分组后进行响应,返回其网络地址。 2.确定链路代价 • 方法:发送回声分组 • 节点在链路上发送一个特殊的ECHO分组 • 另一端以最快的速度返回。 • 发送节点将往返时间除以2即得到该链路的延迟时间。 • 可取多次结果的平均值。
LS算法的步骤(续) 3. 构造链路状态分组 • 链路状态分组包括:源节点的网络地址、分组的序列号、寿命、相邻节点的网络地址和去往该节点的链路代价。 (a) 网络拓扑 (b)链路状态分组
LS算法的步骤(续) • 构造该分组的时机 • 不能太快,过于增加网络负载; • 不能太慢,不能反映网络拓朴的变化。 • 有两种方法 • 定期产生链路状态分组,如30秒。 • 在探测到网络连接或链路代价改变之后,才产生。 4. 发送链路状态分组 • 采用洪泛法进行发送,保证网络上所有结点都能收到链路状态分组。 • 每一结点收到一个链路状态分组后,复制多份,向所有的其他端口发送出去。
LS算法的步骤(续) 5. 计算新的路由 • 构造反映网络拓扑的带权图 • 使用SPF最短通路路由选择算法(dijkstra)计算路由,然后更新路由表 • LSP的优点 • 链路状态数据库更新较快,因而收敛快。 • 能适用于规模很大的自治系统中 • 链路状态信息量小,可减少路由信息的通信量 • LSP的缺点 • 当网络规模大,链路状态数据库大,需较大的存储空间,计算最佳路由需较长时间。 • 比距离矢量算法复杂
知识点归纳 4.层次路由 自治系统AS的概念: • 将整个互联网划分为许多较小的自治系统 (AS)。 • 一个自治系统是一个互联网,其最重要的特点就是自治系统有权自主地决定在本系统内应采用何种路由选择协议。 • 一个自治系统内的所有网络都属于一个行政单位(例如,一个公司,一所大学,政府的一个部门,等等)来管辖。 • 一个自治系统的所有路由器在本自治系统内都必须是连通的。
层次路由 • IGP (Interior Gateway Protocol) 即在一个自治系统内部使用的路由选择协议。目前这类路由选择协议使用得最多,如 RIP 和 OSPF 协议。 • EGP (External Gateway Protocol) 若源站和目的站处在不同的自治系统中,当数据报传到一个自治系统的边界时,就需要使用一种协议将路由选择信息传递到另一个自治系统中。这样的协议就是外部网关协议 EGP。在外部网关协议中目前使用最多的是 BGP-4。
知识点归纳 (三)IPv4 IPv4分组原则,是一种分等级的地址结构。 IPv4地址与NAT,掌握地址转换的必要性和原理。 子网划分与子网掩码的基本思路和具体实践中的注意事项。 CIDR的概念和作用,消除了传统的 A 类、B 类和 C 类地址以及划分子网的概念,有效地分配 IPv4 的地址空间。
知识点归纳 • 从概念上说,IP地址的层次结构具有两个重要特性: l每台主机分配了一个唯一的地址。 l网络标识号的分配必须全球统一,但主机标识号可由本地分配。 IP地址有不同的版本:IPv4、IPv6。现以当前因特网使用的IPv4(第4版本)为例说明IP编址,因特网(IP网)为每台主机分配一个唯一的4字节(32比特)IP地址。为了便于管理,把这32位地址按分级地址空间的树形表示法分为两个部分:网络号和主机号(net-id,host-id)。主机号为全0的网络地址定义为网络号,它标识因特网上的唯一网络。 4字节的IP地址,采用“点分十进制”的方法来表示,例如,202.119.224.93。由于每个字节为8比特,所以每个十进制数只允许在0-255范围内。根据因特网上的网络规模,IP地址可分为A类、B类、C类、D类和E类。判断一个IP地址是何类地址,要看4字节中的第一字节:若1-126属A类网址,128-191属B类网址,192-223属C类网址,224-239属D类网址。240以上为E类地址,暂未使用。
知识点归纳 (1) A类网:网络号为1字节,定义最高比特为0,为A类网识别符,余下7比特为网络号,主机号则可有24比特编址。可见A类网支持大型网络,可用网络号为126个,每个A类网可含224-2=16777216-2=16777214个可用主机号。比如,IP地址为15.1.2.25,是A类网,其网络号为15,主机号为1.2.25。 (2) B类网:网络号为2字节,定义最高二比特为10,为B类网识别符,余下14比特为网络号,主机号则可有16比特编址。B类网是中型网络,可用网络号为214-1= 16384-1=16383个,每个B类网可含216-2=65534个可用主机号。 (3) C类网:网络号为3字节,定义最高三比特为110,为C类网识别符,余下21比特为网络号,主机号仅有8比特编址。C类网是小型网络,可用网络号为221-1= 2097151个,每个C类网可含28-2=254个可用主机号。 (4) D类网:不分网络号和主机号,定义最高四比特为1110,为D类网址识别符,表示一个多播地址,即多目的地传输,可用来识别一组主机。
以下这些 IP 地址具有特殊的含义: 00...00 0000 ... 0000 本网中的本主机 主 机 号 00...00 本网中的某个主机 本网中的广播地址 11...11 1111 ... 1111 1111 ... 1111 网络号 对指定网络的广播 0000 ... 0000 指定网络的地址 网络号 任 意 值 127 本地软件回环测试 一般来说,主机号部分为全“1 ”的IP地址保留用作广播地址; 主机号部分为全“0 ”的IP地址保留用作网络地址。 知识点归纳 • 保留的IP地址:
比特 0 1 2 3 4 5 6 7 未用 优 先 级 D T R C 比特 0 4 8 16 19 24 31 首部长度 服 务 类 型 总 长 度 版 本 首 部 固 定 部 分 标 识 标志 片 偏 移 生 存 时 间 协 议 首 部 检 验 和 源 地 址 目 的 地 址 可变 部分 可 选 字 段 (长 度 可 变) 填 充 数 据 部 分 传送 首 部 数 据 部 分 IP 数据报 理解 IP 数据报格式中的每个字段
知识点归纳 • 做题时,注意在IP头中,首部长度以双字(4字节)为单位,总长度以字节为单位,片偏移以8字节为单位。TTL为通过网络中间路由器的次数,不是秒数。 • 掌握IP分组分片的过程; • 掌握校验和在发送方计算、接收方校验的过程; • ARP协议是解决同一个局域网上的主机或路由器的 IP 地址和硬件地址的映射问题。 • DHCP协议透过 “租约” 的概念,有效且动态地分配客户端的 TCP/IP设定,包括IP地址,子网掩码,网关,DNS等。 • ICMP协议允许主机或路由器报告差错情况和提供有关异常情况的报告或进行测试。ICMP 不是高层协议,而是网络层的协议,传输时作为 IP 数据报的数据,再加上数据报的首部,组成 IP数据报发送出去,典型应用如ping, tracert等,要能说出这两个典型命令的工作过程。
MTU大 信包 K MTU小 信包 K 信包 K 重组 信包 K_1 信包 K_1 信包 K_1 分片 信包 K_2 信包 K_2 信包 K_2 信包 K_3 信包 K_3 信包 K_3 IP 数据报的分片与重组
分组分片 • 最大传输单元(MTU)的定义 • 各物理网络对帧的数据字段最大字节数限制 • 由网络硬件决定(如典型的以太网时,MTU=1500) • 数据封装提出的问题 ( IP分组用帧封装 ) • 适应不同 MTU 的解决方案( 由于以太网的普遍应用,实际IP分组很少超1500字节,有时起始 IP 分组还被限制在 576 字节 ── X.25 的 MTU,设置该值后,绝大多数链路便不需分片) • 在何处实行分片 ( 路径的中间结点上,若下一链路的 MTU 小于 IP 分组长度时) • 分片方法, 用 IP 分组头中的 3 个字段:Identification,Flags(DF=don’t Fragment、MF=More Fragment),Fragment offset
在何处实行分片? 主机A 主机B 网络1 MTU=1500 网络3 MTU=1500 从小到大 从大到小 R1 R2 无须分片 实行分片 网络2 MTU=620
如何分片? 主机A MTU(IP信包) : 帧 IP_H Data 20 1400Bytes MTU=1420 R1 20 600 MTU=620 FraH1 Fragment1 分片标识号继承原IP分组标识号 片头( 复制原 IP头, 还需改写有关字段 ) 片1偏移(offset)=0, MF=1 FraH2 Fragment2 片2偏移(offset)=600/8,MF=1 FraH3 Frag3 片3偏移(offset)=1200/8,MF=0 200
IP 分片举例(若前一网络MTU=3820,下一网络MTU=1420) 数据部分共 3800 字节 需分片的 数据报 首部 偏移 = 0/8 = 0 3799 1400 2800 字节 0 首部 1 首部 2 首部 3 1399 2799 3799 1400 2800 字节 0 数据报片 1 数据报片 2 数据报片 3 偏移 = 0/8 = 0 DF=0,MF=1 偏移 = 1400/8 = 175 DF=0,MF=1 偏移 = 2800/8 = 350 DF=0,MF=0
数据报中的Protocol 字段 运输层 TCP UDP ICMP IGMP OSPF 网络层 首部 数 据 部 分 IP 数据报 协议字段指出应将数据 部分交给哪一个进程 1 ---- ICMP, 2 ---- IGMP, 6 ---- TCP, 17 ---- UDP, 89 ---- OSPF
发送端 接收端 字 1 数 据 报 首 部 字 1 16 bit 16 bit 字 2 字 2 16 bit 16 bit … … 检验和 置为全 0 检验和 16 bit … … 字 n 字 n 16 bit 16 bit 反码算术 运算求和 反码算术 运算求和 应为全1 16 bit 16 bit IP 数据报 取反码 取反码 检验和 16 bit 结果 16 bit 数据部分 数据部分不参与 检验和的计算 若结果为 0, 则保留; 否则,丢弃该数据报 校验和计算过程
IP 数据报首部 计算过程 : 生成校验和计算举例
IP 地址 网络层及以上 使用 IP 地址 硬件地址 链路层及以下 使用硬件地址 IP 地址与MAC硬件地址的关系 应用层数据 首部 TCP 报文 首部 IP 数据报 首部 尾部 MAC 帧 已知目的IP地址,在将IP数据报送往下层封装成MAC帧时需要知道对应的目的硬件地址,此时需要在局域网上用ARP求解。
ARP请求(广播)、ARP响应(单播) ARP 协议