【计算机网络 – 第四章】网络层:数据平面

  • Post author:
  • Post category:其他



目录


一、网络层概述


1、主要作用


2、控制平面方法


3、网络层提供的两种服务


二、路由器工作原理


1、路由器总体结构


2、输入、输出端口处理


(1)输入端口


(2)输出端口


3、交换


(1)经内存交换


(2)经总线交换


(3)经互联网络交换


4、排队问题


(1)输入排队、输出排队


(2)分组调度


三、网际协议:IPv4、寻址、IPv6及其他


1、IPv4数据报格式


2、IPv4数据报分片


(1)基本概念


(2)IP数据报分片例题


3、划分子网的IPv4地址


(1)分类


(2)分类编址习题


(3)子网和子网掩码


2、无分类编址的IPv4地址


(1)CIDR无分类域间路由选择


(2)路由聚合(构造超网)


3、主机如何获得IP地址?


(1)动态主机配置协议DHCP


(2)获取一块IP地址方法:从ISP获取一组地址


4、网络地址转换NAT


5、IPv6数据报格式


6、通用转发和SDN


一、网络层概述

1、主要作用

  • 数据平面:

    转发

    【经过单个交换结构的过程】
  • 控制平面:

    路由选择

    【从源到目的地路径计划的过程】

2、控制平面方法

传统方法:控制平面的路由选择算法决定了插入该路由器的转发表内容

SDN方法:添加远程控制器

3、网络层提供的两种服务

二、路由器工作原理

1、路由器总体结构

2、输入、输出端口处理

(1)输入端口

路由器转发表

前缀匹配

链路接口
11001000 00010111 00010 0
11001000 00010111 00011000 1
11001000 00010111 00011 2
其他 3

路由器使用


最长前缀匹配规则


,在该表中找最长匹配项

比如:地址

11001000 00010111 00011000

10101010的前24bit与接口1匹配,前21bit与接口2匹配,根据最长前缀匹配规则,路由器向链路接口1转发该分组

(2)输出端口

3、交换

(1)经内存交换

  • 一个分组到达一个输入端口后,该端口通过中断方式向路由选择处理器发出信号
  • 该分组被复制到处理器内存中
  • 路由选择处理器从其首部提取目的地址,在转发表中找到适当输出端口
  • 并将该分组复制到输出端口的缓存中

(2)经总线交换

  • 输入端口经一根共享总线将分组直接传送到输出端口,不需要路由选择处理器干预
  • 输入端口预先计划一个交换机内部标签,将该分组经由总线到达所有输出端口
  • 但只有与该标签匹配的端口才能保存该分组
  • 标签随后再输出端口被去除

(3)经互联网络交换

  • 纵横式网络能够并行转发多个分组,是非阻塞的

4、排队问题

(1)输入排队、输出排队


HOL线路前部阻塞

:在一个输入队列排队的分组必须等待通过交换结构发送,由于排在前面的数据报将其阻塞

(2)分组调度


1、先进先出【FIFO】


2、优先权排队

每个优先权类都有自己的队列

1、3、4分组优先权高,2、5分组优先权低

注意:在非抢占式优先权排队规则下,一旦开始传输就不能打断


3、循环和加权公平排队【WFQ】

先服务第1类,再服务第2类,再服务第3类,循环

第一类:1、2、4,第二类:3、5

分组1直接进行传输,链路调度器查找第二类的分组,对3进行传输

3传输完后,链路调度器查找第一类分组,对2进行传输

……

三、网际协议:IPv4、寻址、IPv6及其他

1、IPv4数据报格式


  • 版本【4bit】

    :IPv4、IPv6

  • 首部长度【4bit】

    :0000——1111,

    单位是4B

    。一般的IP数据报有20字节的固定部分,假设为1111即为15×4=60字节,去掉固定部分,则剩余可变长度为40字节。

    首部长度至少为5


  • 数据报长度【16bit】

    :首部长度+数据长度,单位是1B。最大长度为65535。

  • 寿命【TTL】

    :每经过一个路由器-1,变0则丢弃。

  • 协议

    :指明该IP数据报的数据部分应该交给哪个特定的运输层协议。TCP—6,UDP—17。

转发时,IP数据报的


源IP地址、首部检验和、TTL


修改

2、IPv4数据报分片

(1)基本概念

不同的链路层协议拥有不同的最大传送单元(MTU),MTU严格限制IP数据报的长度。为了将较大的IP数据报挤进链路层帧的有效载荷字段,将IP数据报分片成多个较小的数据报。为了让目的主机重新组装这些分片,IPv4在IPv4数据报中设置了【标识、标志、片偏移】


  • 标识【16位】

    :同一数据报分片使用同一标识

  • 标志【3位】

    :只有后两位有意义。

    x



    DF






    MF

  • (Don‘t Fragment)DF=1——禁止分片  DF=0——允许分片
  • (More Fragment)MF=1——后面还有分片  MF=0——最后一片/无分片
  • 注:当DF=0允许分片时,MF才有意义

  • 片偏移【13位】

    :分片后,某片在原来分组中的相对位置,

    以8B为单位
  • eg:片偏移000…1,则该片段在原分组的位置是1×8=8B
  • 注:除了最后一个分片,每个分片的长度一定是8B的整数倍

(2)IP数据报分片例题

首部(20B) 数据部分(3800B)

需要分片为长度不超过1420B的数据报片。


分析

每一片都是1420B,且要预留20B的首部,则可以分为下面3片

首部(20B) 数据部分(

1400B

片偏移:0B ÷ 8B = 0

首部(20B) 数据部分(

1400B

片偏移:1400B ÷ 8B = 175

首部(20B) 数据部分(

1000B

片偏移:2800B ÷ 8B = 350


总长度

标识

MF

DF

片偏移

原始数据报
3820 12345 0 0 0

分片1
1420 12345 1 0 0

分片2
1420 12345 1 0 175

分片3
1020 12345 0 0 350

3、划分子网的IPv4地址

(1)分类

IP地址

a.b网络号

.

c.d主机号


A类

【(/8)前8位为网络号】:

a

.

b.c.d

  • 可指派网络数量:
    2^{(8-1)}-2=126
  • 每个网络可分配IP地址:
    2^{24}-2=16777214
  • 最小网络号0,不指派
  • 最大网络号127,作为本地环回测试地址,不指派


B类【

(/16)前16位为网络号】:

a.b

.

c.d

  • 可指派网络数量:
    2^{(16-2)}=16384
  • 每个网络可分配IP地址:
    2^{16}-2=65534
  • 减去主机号全为0的网络地址和 全为1的广播地址


C类

【(/24)前24位为网络号】:

a.b.c

.

d

  • 可指派网络数量:
    2^{(24-3)}=2097152
  • 每个网络可分配IP地址:
    2^8-2=254
  • 减去主机号全为0的网络地址和 全为1的广播地址


缺点

:如果要为2000台主机分配地址,分给B类地址,导致剩下超过62000个地址无法被利用,地址空间利用率低下

(2)分类编址习题


1、根据地址左起第一个十进制数,可判断网络类别

  • ≤127为A类
  • 128~191为B类
  • 192~223为C类


2、根据网络类别,可以找出网络号和主机号

  • A类:

    a

    .

    b.c.d
  • B类:

    a.b

    .

    c.d
  • C类:

    a.b.c

    .

    d


3、以下3种情况地址不能指派给主机或路由器

  • A类网络号0和127
  • 主机号全0,是网络地址
  • 主机号全1,是广播地址

(3)子网和子网掩码


子网

:不通过中间路由器就能实际到达对方的设备接口


子网掩码

——可以表明主机号被借用了几个比特作为子网号

  • 用连续的比特1对应网络号和子网号
  • 用连续的比特0对应主机号


默认子网掩码


习题一


习题二

2、无分类编址的IPv4地址

(1)CIDR无分类域间路由选择

CIDR消除了传统的A类、B类、C类地址,以及划分子网的概念

IP地址子网部分长度任意

地址格式:a.b.c.d/x(x是网络号的位数)

eg:128.14.35.7/20  指32位IPv4地址前20bit为网络号


习题一:


习题二:

可分配的主机数为2,因为题目给的目的地址是广播地址,所以所以主机都能被广播到,因此是2


习题三:

(2)路由聚合(构造超网)

3、主机如何获得IP地址?

(1)动态主机配置协议DHCP

  • 动态主机配置协议DHCP:应用层协议,使用C/S方式,基于UDP
  • 动态地从网络服务器获得IP地址 、子网掩码、默认网关、DNS服务器名称与IP
  • 允许地址重用——一个主机来了,DHCP服务器分配一个ip给它,它走了,新主机来了,可以把刚刚的地址给新的主机用
  • 支持在用地址续租
  • 即插即用协议,零配置协议

DHCP协议工作过程:

  • 主机广播

    DHCP发现报文

    ——

    “有没有DHCP服务器呀?”

    DHCP服务器获得一个IP地址
  • DHCP服务器广播

    DHCP提供报文

    ——

    “这里有!”

    服务器拟分配给主机一个IP地址及相关配置
  • 主机广播

    DHCP请求报文

    ——

    “我开始用这个地址啦?”

    主机向服务器请求提供IP地址
  • DHCP服务器广播

    DHCP确认报文

    ——

    “用吧!”

    正式将IP地址分配给主机

(2)获取一块IP地址方法:从ISP获取一组地址

ISP的地址块  200.23.16.9/

20


11001000  00010111  0001

0000  00000000

组织0             200.23.16.9/

23


11001000  00010111  0001

000


0  00000000

组织1             200.23.18.9/

23


11001000  00010111  0001

001


0  00000000

组织2             200.23.20.9/

23


11001000  00010111  0001

010


0  00000000

……

组织7             200.23.30.9/

23


11001000  00010111  0001

111


0  00000000

4、网络地址转换NAT

网络地址转换NAT:在

专用网

连接到

因特网

的路由器上安装NAT软件,装了该软件的路由器叫NAT路由器,它至少有一个有效的外部全球IP地址

5、IPv6数据报格式

  • 版本【4bit】:IPv6将该字段设置为6
  • 流标签【20bit】:属于同一个流的数据报有同一流标签
  • 跳数限制:每经过一个路由器-1,变0则丢弃

6、通用转发和SDN

四、IP数据报的发送和转发

1、如何确定两主机是否在同一子网?

若两主机的

IP地址



子网掩码


相与

的结果

  • 相同——两台主机在同一子网
  • 不同——不在同一子网

2、默认网关


3、路由器抑制广播风暴

路由器不接受广播数据报



版权声明:本文为weixin_61639349原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。