IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 计算及网络第四章(网络层) -> 正文阅读

[网络协议]计算及网络第四章(网络层)

第四章 网络层


4.1 网络层概述

网络层的主要任务是 实现网络互连,进而 实现数据包在各网络在之间的传输。仅实现计算机网络体系结构中的物理层和数据链路层,是不能实现数据包在互联网种各网络之间传输的。要实现该功能,就必须实现网络层。

这些异构型网络N1 ~ N7 如果只是需要各自内部通信,他们只要实现各自的物理层和数据链路层即可;但是如果要将这些异构型网络互连起来,形成一个更大的互联网,就需要实现网络层设备路由器;有时为了简单起见,可以不用画出这些网络,图中N1~N7,而将他们看做是一条链路即可

要实现网络层任务,需要解决一下主要问题:

  • 网络层向运输层提供怎样的服务(“可靠传输还是不可靠传输”)

    • 数据包在传输过程中,可能出现 误码,也有可能由于路由器繁忙而 被服务器丢弃,还有可能出现按序发送的数据包 不能按序到达接收方。对于 不可靠传输服务UDP,则对错误实施丢弃。若采用 可靠传输服务,则会对错误实行处理,实现正确接收接收方发送的数据。
  • 网络层寻址问题

    • TCP/IP协议网际层使用IP地址,N1网络的前三个数字是相同的,可以看作是它们所在网络的网络编号,而第四个数字不用,用于区分这两个不同的路由器接口。 N3网络的前2个数字是相同的,可以看作是它们所在网络的网络编号,而第3.4个数字不用,用于区分这两个不同的路由器接口。

  • 路由选择问题

    • 路由器收到数据后,是依据什么来决定将数据包从自己的哪个接口转发出去?依据数据包的目的地址和路由器中的路由表

但在实际当中,路由器是怎样知道这些路由记录?

  • 由用户或网络管理员进行人工配置,这种方法只适用于规模较小且网络拓扑不改变的小型互联网。

  • 另一种是实现各种路由选择协议,由路由器执行路由选择协议中所规定的路由选择算法,而自动得出路由表中的路有记录,这种方法更适合规模较大且网络拓扑经常改变的大型互联网

因特网是目前全世界用户数量最多的互联网,它 使用TCP/IP协议栈。由于TCP/IP协议栈的网络层使用国际协议IP,它是整个协议栈的核心协议,因此在TCP/IP协议栈中,网络层常称为 网际层

网络层(网际层)除了 IP协议外,还有之前介绍过的地址解析协议ARP,还有网际控制报文协议ICMP,网际组管理协议IGMP

本章主要通过学习TCP/IP协议栈的网际层来学习网络层的理论知识和实践技术。

4.2 网络层提供的两种服务

网络层提供的两种服务,一种是面向连接的虚电路服务,另一种是无连接的数据报服务。

4.2.1 面向连接的虚电路服务

虚电路的核心思想是,可靠通信应由网络自身来保证。当两台计算机进行通信时,应当首先建立 网络层的连接- 虚电路VC(Virtual Circuit),以保证通信双方需要的一切资源。通信双方 沿着已建立的虚电路发送分组。目的主机的地址仅在连接建立阶段使用,之后每个 分组的首部只需携带一条虚电路的编号。如果再使用可靠传输的网络协议,就可使所发送的分组无差错按序到达终点,不丢失、不重复。通信结束后,需要释放之前所建立的虚电路

在这里插入图片描述
*

虚电路表示这只是一条逻辑上的连接,分组都沿着这条逻辑连接按照存储转发方式传送,而并不是真正建立了一条物理连接。电路交换的电话通信是先建立了一条真正的连接,分组交换的虚连接和电路交换的连接只是类似,但并不完全一样

4.2.2 无连接的数据报服务

互联网的先驱者提出了一种崭新的网络设计思路;网络层向上只提供简单灵活的、无连接的尽最大努力交付数据报服务;网络在发送分组时不需要先建立连接。每一个分组(即 IP 数据报)独立发送,与其前后的分组无关(不进行编号);网络层不提供服务质量的承诺。即所传送的分组可能出错、丢失、重复和失序(不按序到达终点),当然也不保证分组传送的时限。

发送方 发送给 接收方 的分组可能沿着不同路径传送:

尽最大努力交付

  • 如果主机(即端系统)中的进程之间的通信需要是可靠的,那么就由网络的主机中的运输层负责可靠交付(包括差错处理、流量控制等)
  • 采用这种设计思路的好处是:网络的造价大大降低,运行方式灵活,能够适应多种应用。
  • 互连网能够发展到今日的规模,充分证明了当初采用这种设计思路的正确性。

4.3 IPv4地址

在TCP/IP体系中,IP地址是一个最基本的概念。
IPv4地址就是给因特网(Internet)上的每一台主机(或路由器)的每一个接口分配一个在全世界范围内是唯一的32比特的标识符。

IP地址由因特网名字和数字分配机构**ICANN(Internet Corporation for Assigned Names and Numbers)**进行分配。

  • 我国用户可向亚太网络信息中心APNIC(Asia Pacific Network Information Center)申请IP地址,需要缴费。
  • 2011年2月3日,互联网号码分配管理局IANA(由ICANN行使职能)宣布,IPv4地址已经分配完毕〕
  • 我国在2014至2015年也逐步停止了向新用户和应用分配IPv4地址。同时全面开展商用部署IPv6。

lPv4地址的编址方法经历了如下三个历史阶段:

在这里插入图片描述

4.3.1 IPv4地址的表示方法

32比特的IPv4地址不方便阅读、记录以及输入等,因此IPv4地址采用点分十进制表示方法以方便用户使用.

在这里插入图片描述

4.3.2 分类编制的IPv4地址

4.3.2.1 A类地址

4.3.2.2 B类地址

4.3.2.3 C类地址

4.3.2.4 总结

  • 网络号指派范围
网络类别最大可指派的网络数第一个可指派的网络号最后一个可指派的网络号每个网络中最大主机数备注
A 126 ( 2 7 ? 2 ) 126 (2^7-2 ) 126(27?2)1126 16777214 ( 2 24 ? 2 ) 16777214(2^{24}-2) 16777214(224?2)最小网络号0,保留不指派;最大网络号127,作为本地环回地址,不指派。
B 16384 ( 2 14 ) 16384(2^{14}) 16384(214)128.0191.255 65534 ( 2 16 ? 2 ) 65534(2^{16}-2) 65534(216?2)所有网络号均可指派
C 2097152 ( 2 21 ? 1 ) 2097152(2^{21}-1) 2097152(221?1)192.0.0223.255.255 246 ( 2 8 ? 2 ) 246(2^8-2) 246(28?2)所有网络号均可指派
  • 特殊的IP地址

    • 主机号为“全0”,这是网络地址
    • 主机号为“全1”,这是广播地址
  • 一般不使用的特殊的IP地址

4.3.3 划分子网的IPv4地址

在 ARPANET 的早期,IP 地址的设计确实不够合理:

  • IP 地址空间的利用率有时很低。
  • 给每一个物理网络分配一个网络号会使路由表变得太大因而使网络性能变坏。
  • 两级的 IP 地址不够灵活。

当有新的主机添加进来的时候,就需要重新申请一个网络号,这是不必要的。

所以就有了划分子网的工具:子网掩码

  • 从 1985 年起在 IP 地址中又增加了一个“子网号字段”,使两级的 IP 地址变成为三级的 IP 地址
  • 这种做法叫做划分子网 (subnetting) 。
  • 划分子网已成为互联网的正式标准协议。

划分为子网络后,数据的传送流程:

  • 凡是从其他网络发送给本单位某个主机的 IP 数据报,仍然是根据 IP 数据报的目的网络号 net-id,先找到连接在本单位网络上的路由器。

  • 然后此路由器在收到 IP 数据报后,再按目的网络号 net-id 和子网号 subnet-id 找到目的子网。

  • 最后就将 IP 数据报直接交付目的主机。

4.3.3.1 子网掩码

32比特的子网掩码可以表明分类IP地址的主机号部分被借用了几个比特作为子网号

  • 子网掩码使用连续的比特1来对应网络号和子网号

  • 子网掩码使用连续的比特0来对应主机号

  • 将划分子网的IPv4地址与其相应的子网掩码进行逻辑与运算就可得到IPv4地址所在子网的网络地址在这里插入图片描述

举例说明

1. 已 知 某 个 网 络 的 地 址 为 1. 已知某个网络的地址为 1.218.75.230.0 使 用 子 网 掩 码 使用子网掩码 使255.255.255.128 对 其 进 行 子 网 划 分 , 请 给 出 划 分 细 节 对其进行子网划分,请给出划分细节

解 析 解析

C 类 网 络 地 址 C类网络地址 C 主 机 号 为 主机号为 .0, 网 络 号 为 网络号为 218.75.230

子 网 掩 码 : 子网掩码: : 255.255.255.10000000

故 划 分 出 的 子 网 数 量 : 2 1 = 2 故划分出的子网数量:2^1=2 21=2

子 网 络 可 分 配 的 网 络 地 址 : 2 7 ? 2 = 126 子网络可分配的网络地址:2^7-2=126 27?2=126

在这里插入图片描述

例2.

默认子网掩码

总结

4.3.4 无分类编址的IPv4地址

划分子网在一定程度上缓解了因特网在发展中遇到的困难,但是数量巨大的C类网因为其地址空间太小没有得到充分使用,而因特网的IP地址仍在加速消耗,整个IPv4地址空间面临全部耗尽的威胁
为此,因特网工程任务组IETF又提出了采用无分类编址的方法来解决IP地址紧张的问题,同时还专门成立IPv6工作组负责研究新版本IP以彻底解决IP地址耗尽问题。
1993年,IETF发布了无分类域间路由选择CIDR(Classless Inter-Domain Routing)的RFC文档: RFC 1517~1519和1520。

  • CIDR消除了传统的A类、B类和C类地址,以及划分子网的概念;
  • CIDR可以更加有效地分配IPv4的地址空间,并且可以在新的IPv6使用之前允许因特网的规模继续增长。

CIDR使用**“斜线记法”**,或称CIDR记法。即在IPv4地址后面加上斜线“/”,在斜线后面写上网络前缀所占的比特数量。128.14.35.7/20表示网络前缀占用的比特数量为20,主机编号占用的比特数量为: 30 ? 20 = 12 30-20=12 30?20=12

CIDR实际上是将网络前缀都相同的连续的IP地址组成一个“CIDR地址块”

我们只要知道CIDR地址块中的任何一个地址,就可以知道该地址块的全部细节:

  • 地址块的最小地址
  • 地址块的最大地址
  • 地址块中的地址数量
  • 地址块聚合某类网络(A类、B类或C类)的数量
  • 地址掩码(也可继续称为子网掩码)

举例

练习

206.0.64.8/18 → \to 206.0.0100 0000.0000 1000

最小地址:206.0.0100 0000.0000 0000即206.0.64.0

最大地址:206.0.0111 1111.1111 1111即206.0.127.255

子网掩码:255.255.192.0

地址数量: 2 14 2^{14} 214

聚合C类网的数量: 2 14 ÷ 2 8 2^{14}\div 2^8 214÷28

4.3.4.1 路由聚合(构造超网)

路由器R1与五个网络以及路由器R2直接相连。路由器R1和R2互为相邻路由器,它们周期性地同通告给对方自己所知道的路由信息。若R1将直连的五个网络通告给R2,则R2的路由表会增加五条路由记录。可以找“共同前缀”,共22个比特,记为/22,将共同前缀保持不变,剩余10个比特全部取0,然后写成点分十进制形式,放在/22前面,这就是聚合后的地址块(超网),将五条路由记录聚合成一条。

练习:子网192.168.4.0/30中,能接收到目的地址为192.168.4.3的IP分组的最大主机数是?

解析:

192.168.4.0000 0000;

最小地址:192.168.4.0

最大地址:192.168.4.3

可分配的最小地址:192.168.4.1

可分配的最大地址:192.168.4.2

故为2.

小结

4.3.5 IPv4地址的应用规划

给定一个IPv4地址快,如何将其划分成几个更小的地址块,并将这些地址块分配给互联网中不同网络,进而可以给各网络中的主机和路由器接口分配IPv4地址,一般有两种方法:定长的子网掩码FLSM,另一种是变长的子网掩码VLSM。

4.3.5.1 定长的子网掩码FLSM(Fixed Length Subnet Mask)

使用同一个子网掩码来划分子网,每个子网所分配的IP地址数量相同,造成IP地址的浪费

举例 1

C 类 网 络 地 址 : C类网络地址: C 网络号218.75.230主机号.0

从 主 机 号 中 借 用 三 个 比 特 位 作 为 子 网 络 号 。 子 网 络 的 数 量 : 从主机号中借用三个比特位作为子网络号。子网络的数量: 2 3 = 8 2^3=8 23=8

子 网 掩 码 : 子网掩码: : 255.255.255.1110 0000255.255.255.224

在这里插入图片描述

通过上面步骤分析,就可以从子网1~ 8中任选5个子网,分配给左图中的N1~N5网络

采用定长的子网掩码划分,只能划分出 2 n 2^{n} 2n个子网,其中n是从主机号部分借用的用来作为子网号的比特数量,每个子网所分配的IP地址数量相同

但是也因为每个子网所分配的IP地址数量相同,不够灵活,容易造成IP地址的浪费

4.3.5.2 变长的子网掩码VLSM(Variable Length Subnet Mask)

使用不同的子网掩码来划分子网,每个子网所分配的IP地址数量可以不同,尽可能减少对IP地址的浪费

无分类编址的IPv4就是变长的子网掩码

应用需求:从地址块218.75.230.0/24中取出5个地址块(一个“/27”,3个“/28”,1个“/30”),按需分配给下图的5个网络.

在这里插入图片描述

在该地址块中给左图所示的网络N1~N5分配子块,分配原则是“每个子块的起点位置不能随意选取,只能选取块大小整数倍的地址作为起点”。建议先给大的子块分配。

在这里插入图片描述

  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-11 13:04:03  更:2021-11-11 13:05:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 6:45:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码