计网第四章网络层

 4.1网络层服务(not end-end)

从发送主机向接收主机传送数据段(segment):

发送主机->将数据段封装到数据报

接收主机->向传输层交付数据段

 

每个主机和路由器都要运行网络层协议,其中,路由器检验穿越它的IP数据报的头部域,决策如何处理数据报。

 

网络层的核心功能-转发与路由

转发:将分组从路由器的输入端口转移到合适的输出端口。

每个路由器维护一个转发表(事先建立),转发表确定如何在路由器中转发分组

路由:确定分组从源到目的的路径。由 路由算法(协议)确定通过网络的端到端路径

 

网络层的核心功能-连接建立

是某些网络的重要功能(如ATM)

数据分组传输之前两端主机需要首先建立虚拟连接

网络层连接:两个主机之间(网络设备参与)(not end-end)

传输层连接:两个应用进程之间(对网络设备透明)(end-end)

 

网络层服务模型(service model):

不同的网络提供的服务模型不同

无连接服务:

不事先为系列分组的传输确定传输路径

每个分组独立确定传输路径

不同分组可能传输路径不同

例子:

数据报网络(类似传输层的无连接服务UDP)

 

连接服务:

首先确定从源到目的的路径

沿该路径传输系列分组

系列分组传输路径相同,顺序得到保障

传输结束后拆除连接

例子:

虚电路网络(类似传输层的面向连接服务TCP)

 

4.2:虚电路网络与数据报网络

网络层服务与传输层服务的本质区别:

网络层提供主机到主机的服务,是网络核心的实现;传输层实现端到端的服务

 

虚电路(Virtual Circuits):一条从源主机到目的主机,类似于电路的路径(逻辑连接)

采用分组交换,每个分组的传输利用链路的全部带宽(与电路交换的最大差异)

源到目的路径经过的网络层设备共同完成虚电路功能

 

虚电路的通信过程:

呼叫建立(call setup)->数据传输->拆除呼叫

数据传输:每个分组携带虚电路标识(VCID),在相应的虚电路上进行传输,而不是目的主机地址

虚电路经过的每个网络设备,都需要维护每条经过它的虚电路连接状态

链路、网络设备资源(如带宽、缓存等)可以对VC进行预分配:预分配资源==可预期服务性能

 

虚电路的具体实现:

虚电路的组成:

1.从源主机到目的主机的一条路径

2.虚电路号(VCID),在虚电路上的每段链路具有自己的编号(同一条VC,在每段链路上的VCID通常不同)

3.虚电路上的每个网络层设备(如路由器),利用转发表记录经过该设备的每条虚电路(依据转发表改写/替换虚电路号)

 

虚电路信令协议:用于VC的建立、维护与拆除

建立:路径选择(需要路由)

应用于虚电路网络,目前的Internet不采用

 

 

数据报网络:

网络层无连接,每个分组携带目的地址

路由器根据分组的目的地址转发分组,基于路由协议/算法构建转发表,通过检索转发表转发分组

每个分组独立选取路径(数据报路径可能不同),因此可能乱序到达目的主机

 

数据报转发表:

最长前缀匹配优先原则:优先选择与分组目的地址匹配前缀最长的入口

 

数据报网络 or VC网络:

 

4.3:IPv4协议

Internet网络层:

 

IP数据报(分组)的格式:

首部长度以4字节为单位(换算成10进制后)

服务类型:(区分服务1998)指示期望获得哪种类型的服务,只有在网络提供区分服务时使用,一般情况下不使用,因此通常IP分组的第二字节的值为00H

总长度字段:IP分组的总字节数(首部+数据)

生存时间:IP分组在网络中可以通过的路由器数。路由器转发一次分组,TTL-1,当TTL=0时,路由器丢弃该IP分组

协议:指示IP分组封装的是哪个协议的数据包,实现IP协议的复用/分解

首部校验和:实现对IP分组首部的差错检测,由于TTL每次转发都会减1,因此每次转发后,校验和都要重新进行计算,即逐跳计算、逐跳校验

填充:长度可变,范围在0-3B之间,目的是补充整个首部,符合32位对齐。即保证首部长度是4字节的倍数

 

IP分片

最大传输单元(MTU):链路层数据帧可封装数据的上限(byte)。不同链路的MTU不同

当大的IP分组向较小的MTU链路转发时,可以被"分片"(fragmented)。是否可以分片取决于某些标志位。大的IP分组不允许分片时,路由器会把它扔掉,并向源主机发送一个ICMP报文

分片时,路由器把1个IP分组被分为多片IP分组,IP分片到达目的主机后进行“重组”(目的主机负责),其中,IP首部的相关字段(总长度,标识,标志位,片偏移)用于标识分片以及确定分片的相对顺序。

 

如果分片们到达目的主机时丢失了一部分,目的主机会先等待一段时间,如果还没收到,目的主机会把它们全丢了。

 

标识(ID):标识一个IP分组。由IP协议、计数器、源IP地址、目的IP地址共同产生

标志位:(3位)

MF=1,说明是分片出来的分组,并且是 非最后一片

MF=0的具体含义由片偏移确定:

若一个IP分组没有经过分片,则其片偏移量为0

若MF=0且片偏移量不等于0,则说明是最后一片

片偏移量:一个IP分组分片封装原IP分组数据的相对偏移量。片偏移字段以8字节为单位(???)。因此,一个最大分片可封装的数据应该是8的倍数。

 

IP分片过程:

IP编址:

IP分组:

源地址(SA)、目的地址(DA)

接口(interface):主机/路由器与物理链路的链接,实现网络层的功能

路由器通常有多个接口,主机只有1个或2个接口

 

IPv4:用32位比特编号标识主机、路由器的接口

二进制->点分十进制:

IP地址与每个接口关联

 

IP地址:

同一个区域网络中,接口IP的网络号相同->构成IP子网(不跨越路由器,可以彼此物理联通的接口)

 

有类IP地址

D类只能作为IP分组中的目的地址(多播地址)

E类作为研究使用

特殊的IP地址(不能分配给接口):(注:同样适用于后面的拥有子网掩码的HostID)

NetID为127(A类网络)

 

私有IP地址(在公共互联网上无效):

 

IP子网划分与子网掩码

划分:

 

子网掩码:

形如IP地址,32位->点分十进制形式

取值:netID、SubID位全取1;HostID位全取0

子网地址+子网掩码->确定子网大小

子网掩码的应用:

 

 

补充知识:

 

4.4CIDR与路由聚合

CIDR与路由聚合:

无类域间路由(CIDR):

1.消除传统的A类、B类和C类地址界限

NetID+SubID->Network Prefix(前缀,可以任意长度)

2.融合子网地址和子网掩码,方便子网划分

无类地址格式:a.b.c.d/x    (x为十进制数,是前缀的长度)

CIDR与有类地址的映射关系:

上图中是C类地址,C类地址有24位网络号,而CIDR表示下,前缀只有23位,故在这种表示方式下,前缀不变,剩下最后一位比特,因此其表示包含着两个C类网络,分别是200.23.16.0和200.23.17.0

CIDR能更加方便地描述子网:

CIDR的优点:

1.能提高IPv4的地址空间分配效率

2.能提高路由效率,利于路由聚合,如:

将多个子网聚合成一个较大的子网;构造超网(更大的子网)

 

解决路由黑洞问题(最长前缀匹配优先):

                                          I

                                         V

4.5DHCP协议:

如何获得IP地址?

1.硬编码:静态配置

2.动态主机配置协议DHCP(在应用层实现):

即选择 自动获得IP地址和自动获得DNS服务器地址

可以从服务器动态获取(租):

IP地址、子网掩码、默认网关地址、DNS服务器名称与IP地址

特点:“即插即用”、允许地址重用,支持在用地址续租、支持移动用户加入网络

 

动态主机配置协议:

ACK报文中包含分配给用户的IP地址、子网掩码、默认网关、DNS服务器地址

4.6 网络地址转换NAT

NAT的实现:

例子:

NAT的穿透问题:

客户期望在公网连接内网的服务器

解决方案1:

静态配置NAT,将特定端口的连接请求转发给服务器

解决方案2:

利用UPnP自动配置:

解决方案3:

中继(如Skype)

 4.7 互联网控制报文协议 ICMP

功能:

1.支持主机或者路由器进行差错报告

2.网络探寻

两类ICMP报文:

1.差错报告报文

(1)目的不可达

(2)源抑制

(3)超时/超期报文(ttl超时)

(4)参数问题

(5)重定向

2.网络探询报文

(1)回声请求与应答报文

(2)时间戳请求与应答报文

ICMP报文的格式:

ICMP差错报告报文的数据封装:

ICMP的应用举例:Traceroute

4.8 IPv6简介:

IPv6的数据报:

特点:

1.固定长度的40字节基本首部

2.不允许分配(若分片,源主机分,目的主机组装)

格式:(路由器通常不需要处理选项首部)

 

IPv4 vsIPv6:

IPv6的地址表示形式:(冒号分割,16进制,16个比特一组,一共8组)

IPv6基本地址类型:

1.单播地址

一对一通信

2.多播地址

一对多通信(只能出现在目的地址中)

3.任意播地址

一对一组之一(最近一个)通信

IPv4向IPv6过渡:

 

 

          ->   

 

 

路由聚合的条件:

1.子网的IP地址连续或相对连续

2.子网的接口相同,如

此时,R2到局域网可以实现聚合

 

posted @ 2018-10-10 11:32  cellphone7  阅读(734)  评论(0编辑  收藏  举报