【计算机网络复习】第四章 网络层 2

源主机网络层的主要工作

 

路由器网络层的主要工作

 

目的主机网络层的主要工作

 

网络层提供的服务

o 屏蔽底层网络的差异,向传输层提供一致的服务

虚电路网络

o 虚电路网络提供面向连接的服务

n 借鉴了电路交换的优点

n 发送数据之前,源主机和目的主机之间首先要建立一条虚连接(逻辑连接)

n 数据无丢失、重复和失序

o 面向连接

n 数据传输过程分为三阶段:建立虚连接、传输数据、拆除虚连接

n 虚电路表

Ø 输入接口、输入VCI(虚电路标识,局部有效)

Ø 输出接口、输出VCI(虚电路标识,局部有效)

n 输入接口和输入VCI唯一标识一条虚电路,后续的数据报只需携带VCI无需携带完整的目的地址

 

数据报网络

o 无连接

o 路由器对于每个输入的数据包单独进行处理

o 路由表包含了目的地址和输出接口的对应关系

o 每个数据包必须包含完整的目的地址

o 来自相同源节点和目的节点的两个数据报可能被转发到不同的接口,不保证顺序

o 对网络状况和目的主机状况一无所知,可能出现丢失

数据报网络的好处

o 由于传输网络不提供端到端的可靠传输服务,这就使网络中的路由器可以做得比较简单,而且价格低廉(与电信网的交换机相比较)。

o 如果主机(即端系统)中的进程之间的通信需要是可靠的,那么就网络的主机中的传输层负责(包括差错处理、流量控制等)

 

 

路由选择算法

o 基于图论

n 节点:路由器

n 边:链路

n 权值:链路开销

o 路径长度

o HOP数(跳数)

o 延迟时间

o 最短路由

n 总开销最小的路径

 

静态选路算法

o 固定路由表选路法

n 根据事先设置的静态路由表,查表选路

o 洪泛法(Flooding

n 向除输入接口之外的所有接口转发

o 随机走动选路法

n 按概率随机选路

o Dijkstra算法(1959):通过用边的权值作为距离的度量来计算最短路径,

n 有最少边数的路径不一定是最短路径

算法原理

1)定义一个集合N,包含所有最短路径已确定的节点,在初始时,该集合中只包含一个源节点(设为S

2)如果S和某个节点之间有一条边相连,距离就是该边上的权值;否则,距离值设为无穷大(

3)从集合N外的节点中选择一个和S距离最小的节点(设为T)加入集合

4)重新计算S到其他集合N外的节点的距离,如果经过T的路径更短,则更新距离值

5)重复3-4步,直到所有节点都加入集合N

 

洪泛法

o 不计算路径,有路就走

o 路由器收到数据包后,向除了输入接口之外的所有接口转发

洪泛法的特点

o 一个数据包将产生大量的副本(copy

n 给网络增加大量负载

o 至少有一个副本将到达目的主机

n 健壮性强

o 至少有一个副本选择的是最优路由

o 所有的路由器都会收到副本

n 可用于传播路由信息

缺点:重复数据包多,浪费带宽

点:可靠性高,路径最短,常用于

随机走动选路法

o 路由表中,一个表项有多条候选路由,路由器收到一个数据包时,按照预定的概率随机地选择其中一条路由

o 应用:无线网络

 

动态选路算法

o 自适应算法是动态的、分布式的算法

o 实现分布式算法的三要素:

n 测量路由

n 更新路由信息的协议

n 计算路由开销

距离矢量选路算法

o 距离:两个节点间传输数据的开销

o 前提:每个路由器都知道自己到邻居节点的距离

o 动态选路:路由器通过周期性地与邻居节点交换路由信息

n 与谁交换:邻居节点

n 交换什么:路由表中的距离项(目的地、距离)

n 何时交换:周期性交换

o 各节点根据路由信息更新路由表

无穷计算问题

o 好消息传播得快,坏消息传播得慢

 

DVR算法的缺点

o 交换的路径信息量大

o 路径信息不一致

o 收敛速度慢(坏消息)

o 不适合大型网络

链路状态选路算法

o LSRLink State Routing

n 链路状态:链路连通/中断、链路开销

o 又称最短路径优先(SPF)选路

n 使用Dijkstra算法来计算最短路径

o 路由器发现自己和邻居节点链路状态及开销

o 路由器之间通过交换路由信息,构造出全网的拓扑结构,并计算出到其他节点的最短路径

n 与谁交换:网络中的所有节点

n 交换什么:一个节点到各邻居节点的链路开销

n 何时交换:网络初启或链路状态变化时

测量线路开销

o 发送一个ECHO分组要求对方立即响应,通过测量RTT,再除以2,发送方就可以得到一个延迟估计值

构造链路状态包(LSP

包含:源节点到其所有邻居节点(路由器)的线路开销测量值(即时延)

 

发布链路状态分组

o 洪泛法向所有节点发布LSP,保证每个节点都能收到。

o 存在问题:

n 对于重复的LSP,路由器使用序号判断哪个LSP最新

n 如果序号循环使用,就会发生重复

n 如果一个路由器重启,序号将从0开始重新计数,但这些LSP会被当成过时包

n 如果序号发生错误,则很多LSP将被看成过时包

解决办法:序号+年龄

o 使用一个32序号,即使每秒钟发送一个LSP包,137年才会循环一次

o 在每个LSP包中加一年龄字段(如初值为60),每秒钟将年龄值减1,为0后该包将被丢弃

oLSR的优点

n 路由信息的一致性好,坏消息也一样传播得快

n 状态分组的长度较短,仅包含到邻接点的距离、序号和年龄等,与网络规模关系不大,传输所耗用的网络带宽不大,此外,状态分组的扩散,由于年龄参数的设定,不会无限制扩散,所以可适用于大型网络

oLSR的缺点

n 每个路由器需要有较大的存储空间,用以存储所收到的每一个节点的链路状态分组

n 计算工作量大,每次都必须计算最短路径

IP地址的构成

o 网络号net-id +主机号host-id

n 网络号标识主机/路由器所连接到的网络,

n 主机号标识该主机/路由器

IP 地址 ::= { <网络号>, <主机号>}

o 地址划分有两类

n 分类编址:

Ø 单播地址分为A、B、C三类

Ø 网络号和主机号所占的比特个数不同

n 无类别编址

 

同一个网络(如LAN)中的主机或路由器的IP 地址中的网络号必须相同

划分子网的基本思路

o 属于一个单位内部的事情,对外仍然是一个网络

o 从主机号借用高若干位作为子网号 subnet-id,主机号host-id 相应减少了若干位

IP地址 ::= {<网络号>, <子网号>, <主机号>}

o 从外网发给本网某个主机的IP包,仍然根据其目的网络地址,先找到连接本网的路由器;路由器收到 IP包后,再按目的网络地址转发到目的子网。

n 最后交付给目的主机

 

子网掩码

o 从一个 IP 包的包头无法判断源主机或目的主机所在网络的网络地址

o 使用子网掩码(subnet mask)可以找出 IP 地址中的网络号部分

o 子网掩码:特殊IP地址,网络号(包括子网号)部分为全1,主机号部分为全0

 

 

 

 

路由器转发IP包的过程

(1) 从收到的IP包的包头提取出目的 IP 地址 D

(2) 先检查直接相连的网络:用各网络的子网掩码和 D 逐位相“与” ,看是否和对应的网络地址匹配。若匹配,则将包转发到对应接口;否则执行(3)

(3) 若路由表中有目的地址为 D 的特定主机路由,则将IP包转发给对应的下一跳路由器;否则,执行(4)

(4) 对路由表中的每一行的子网掩码和 D 逐位相“与” ,若其结果与该行的目的网络地址匹配,则将IP包转发给对应的下一跳路由器;否则,执行(5)

(5) 若路由表中有一个默认路由,则将IP包转发默认路由器;否则,执行(6)

(6) 报告转发包出错

可变长度子网掩码

o VLSM

o 划分子网时根据需要灵活划分,不要求每个子网的地址空间都一样大,即不同子网的地址掩码可能不同

超网

o Super network

o 一个C类网络地址不够时,将几个连续的C类地址块合并,构成一个超网

o 将网络号低位的若干位分离出来作为超网号

n 网络号、超网号、主机号

n 网络地址:超网号+主机号为0

n C类地址块个数必须是2n

n C类地址块必须连续

n 超网的网络地址的第3字节值必须能整除C类地址块的个数

 

无类别地址

o CIDR(无类别域间选路)

o 不再对地址分类

o 根据网络规模的需要,将IP地址划分为任意2n1<n<32)大小的地址块

o 采用CIDR后,根据CIDR子网掩码来判定网络大小

o CIDR使用各种长度的“网络前缀(network prefix)来代替分类地址中的网络号和子网号。

IP地址 ::=网络地址/x

x为网络号的位数,即子网掩码中1的个数

 

CIDR:路由聚合

 

最长前缀匹配

o 使用 CIDR 时,路由表中的每个项目由“网络前缀”和“下一跳地址”组成。在查找路由表时可能会得到不止一个匹配结果。

o 应当从匹配结果中选择具有最长网络前缀的路由 : 最 长 前 缀 匹 配(longest-prefix matching)

o 网络前缀越长,其地址块就越小,因而路由就越具体(more specific)

o 最长前缀匹配又称为最长匹配最佳匹配

私有地址

o 问题:IPv4的地址空间不够

o 方法:使用局部地址(私有地址)

n 允许不同网络内的主机使用相同的地址,该地址仅在网络内部使用

o 3段私有地址

n 10.0.0.0 – 10.255.255.25510/8

n 172.16.0.0 – 172.31.255.255172.16/12

n 192.168.0.0 – 192.168.255.255192.168/16

NAT

o 网络地址翻译

n 完成私有地址和全局地址的转换

n 由路由器完成

 

IP地址的自动分配:DHCP

o 动态主机配置协议

n 自动分配IP地址的应用层协议

n C/S模式,服务器端口号为67,客户端口号为68

n 采用UDP传输

n 可配置其他网络参数:子网掩码、路由器地址、DNS服务器地址等

n DHCP服务器维护一个IP池,主机向DHCP服务器发出请求,申请IP地址

o 表示IP包内的数据属于哪个协议

n TCP=6

n UDP=17

n ICMP=1

n IGMP=2

n OSPF=89

 

IP包的分段和重装

o IP包:IP数据报

o 分段原因:底层网络所允许的最大数据块长度(MTU)不同

o 分段相关字段

n 标识(2B):所有属于同一个IP数据报的片段(IP包)都使用相同的标识

n DF(1):不要分段,DF=1IP数据报不允许分段

n MF(1):更多片段,MF=0IP包是最后一个片段

n 段偏移量(13位):本片段在原IP数据报中的位置,单位为8字节

 

因特网的差错处理:ICMP

o 因特网控制报文协议

o IP没有差错处理机制,由ICMP补充

o 提供差错报告机制

n 只报告,不强制处理

o ICMP 不是高层协议,而是 IP 层的协议。

o ICMP 报文作为 IP 层数据报的数据,加上数据报的首部,组成 IP 数据报发送出去。

n IP包头的协议字段值=1

 

因特网有两大类路由选择协议

o 内 部 网 关 协 议 IGP (Interior Gateway

Protocol) :即在一个自治系统内部使用的路由选择协议。目前这类路由选择协议使用得最多,如 RIP OSPF 协议。

o 外 部 网 关 协 议 EGP (External Gateway Protocol) :若源站和目的站处在不同的自治系统中,当数据报传到一个自治系统的边界时,就需要使用一种协议将路由选择信息传递到另一个自治系统中。在外部网关协议中目前使用最多的是 BGP-4

o IGPEGP相互独立

 

RIP(路由信息协议)

o 基于距离矢量算法

o 距离:跳数

 

距离矢量选路的问题:无穷计算

o Count-to-Infinity,又称为无穷环路(Infinite Loop)

o 坏消息传播得慢!

o 原因

n 节点只知距离、不知路径

n 向邻居提供虚假路由通告

n 导致路由中出现环路

o 解决方案

n 限制网络规模:RIP(网络直径<16跳)

n 在路由通告中增加路径信息:BGP

n 节点知道网络拓扑:OSPFLSR

OSPF(开放最短路径优先协议)

o 基于链路状态选路算法

o 经过信息交换,每个路由器都知道全网的拓扑结构,因此不会出现无穷计算问题

o 支持分级选路

 

OSPF消息

o 问候(Hello)消息:获知其邻居节点的IP地址、检测邻居节点是否可达。

o 链路状态更新消息(LSU):通告路由器已知的网络拓扑结构信息

o 链路状态确认消息(LSA):收到LSU消息时,路由器发送此消息进行确认

o 链路状态请求(LSR)消息:向邻居节点询问一条或多条链路的状态信息

组播可明显减少网络中资源的消耗

 

组播地址

o D类地址,每个小组成员使用同一个组地址

o 228个组地址

o 组地址由因特网号码分配权威机构IANA分配

o 组地址只能用于目的地址,不能用于源地址

o 主机发送组播数据时,IP包的目的地址为组播地址

移动主机的通信过程

o (1) 相关节点发送的IP包被转发给归属代理

o (2) 归属代理将IP包封装到一个新的IP包里,发送给外来代理:隧道方式

o (3) 外来代理拆出原IP包,转发给移动节点

o (4) 移动节点回复IP包给相关节点

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呆呆水獭_(:_」∠)_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值