超详细的计算机网络基础知识总结 第四章:网络层
本文基于
:王道计算机考研-计算机网络
☺其他文章:
超详细的计算机网络基础知识 第一章:概述
超详细的计算机网络基础知识 第二章:物理层
超详细的计算机网络基础知识 第三章:数据链路层
超详细的计算机网络基础知识 第五章:传输层
超详细的计算机网络基础知识 第六章:应用层
你的支持就是博主继续更新的动力!计算机网络将会持续更新☺
相见即是有缘,如果对你有帮助,给博主一个免费的点赞以示鼓励把QAQ☺
1 网络层概述
网络层的主要任务是把分组从源端
传到目的端
,为分组交换网上的不同主机提供通信服务
,网络层传输单位是数据报
> **网络层在OSI参考模型中的体系结构**
数据报和分组的关系
- 数据报是比较长的数据,分组是将数据报进行切割划分出来的一个片段
功能:
- 路由选择与分组转发:找出路由
最佳路径
- 异构网络互联:让不同的网络之间实现
通信
- 拥塞控制
- 开环控制(静)在网络开始工作之前,先把能想到的产生拥塞的因素控制到
- 闭环控制(动)在网络运行起来的时候,自动的调整,实现拥塞的控制
2 数据交换方式
2.1 三种数据交换方式
2.1.1 电路交换
2.1.2 报文交换
2.1.3 分组交换
2.2 报文交换与分组交换对比
我们假设链路传输速率为1000bps,报文长度为10000bit,分组后为10bit
报文交换:
10000bit/1000bps = 10s
一共是三段,所以加起来是30s
分组交换:
分为两段,第一段是第一组报文发送到最后一个报文发送,第二段是最后一个报文到达目的地
- 第一段时间=10000bit/1000bps=10s
- 第二段时间=经过两个交换设备的时间=0.01x2=0.02s
相加=分组交换的时间=10.02s
2.3 三种数据交换方式比较总结
2.4 分组交换的两组传输方式:数据报-虚电路
2.4.1 几种传输单元名词辨析
OSI参考模型 | 基本单元 |
---|---|
应用层 | 报文 |
传输层 | 报文段 |
网络层 | IP数据报,分组 |
数据链路层 | 帧 |
物理层 | 比特流 |
2.4.2 数据报
2.4.3 虚电路
3 IP数据报格式
名称 | 解释 | 长度 |
---|---|---|
版本 | ipv4或者ipv6 | 4 |
首部长度 | 单位是4B,最小为5,IP数据报固定长度为20字节,首部长度x4位数据报真实长度,5x4=20 | 4 |
区分服务 | 指示期望获得哪种类型的服务,很少用 | 8 |
总长度 | 首部的长度+数据的长度,单位是1B | 16 |
标识 | 同一数据报的分片使用同一标识 | 16 |
标志 | 标识是否禁止分片以及分片是否结束 | 3(只有2位有意义) |
片偏移 | 指出较长分组分片后,谋篇在原分组中的相对位置,以8B为单位 | 13 |
生存时间 | TTL,IP分组的保质期,经过一个路由器-1,变成0则丢弃 | 8 |
协议 | 用来标记协议名的字段,字段值见下表 | 8 |
首部检验和 | 检验首部的字段 | 15 |
源地址 | 发送方ip地址 | 32 |
目的地址 | 接收方ip地址 | 32 |
可选长度 | 用来支持排错、测量以及安全等措施 | 长度可变,为0-40之间 |
填充 | 全0,把首部补成4B的整数倍 | 未知,根据可选字段来定 |
3.1 IP数据报分片例题
用第一个起始的字节/8就可以得出偏移量
4 IP
全世界唯一的32位/4字节标识符,标识路由器主机的接口
IP地址::={<网络号>,<主机号>}
4.1 IPv4地址
唯一的标识一个主机或路由器等设备的接口
4.1.1 分类的ip地址
4.1.2 特殊的ip地址
环回地址:永远不会进入到网络中
A类ip地址:
前8位最大为126因为,A类地址以0开头前8位最大为011111111为2^7-1=127,而127是特殊地址,故最大为前八位
为126
B类ip地址:
前8最大为191,因为10xxxxxx最大为10111111,为191,最小为10000000为128,无特殊地址
C类ip地址:
前8最大为223,因为110xxxxx最大为11011111,为223,最小为11000000,为192,无特殊地址
4.1.3 私有ip地址
4.1.4 分类的ip地址
4.2 网络地址转换(NAT)
5 子网划分与子网掩码
分类的IP地址的弱点
:
- IP地址空间的利用率有时很低。
- 两级IP地址不够灵活
子网号能否全0全1要看情况
主机号不能全0全1(全0指本网络,全1指广播分组,都不能指派)
5.1 子网掩码
子网掩码由一系列连续的1和一系列连续的0构成,其中1取决于网络号的位数,主机位的位数全部是0
子网掩码与IP地址逐位
进行与运算,就得到子网网络地址
,因为子网掩码处均为1
,故与运算中只有IP地址为1的位置才会将1保留
5.1.1 子网掩码习题1
第一问:
我们只需要关注72与192相与的结果0100100011000000结果为:01000000=64故网络地址为141.14.64.0
第二问:
0100100011100000结果为:01000000故网络地址为141.14.64.0
子网掩码不同,能划分的子网数目也不同:
对于255.255.192.0而言,两个255,共有16个1,192共有2个1,总长度为32位,故主机位剩余32-16-2=14位对于255.255.244.0而言,两个255,共有16个1,244共有3个1,总长度为32位,故主机位剩余32-16-3=13位
5.1.2 子网掩码习题2
注意广播分组要求目的地址为广播地址,要求主机号为全1
255.255.252.0中含有22位1,总地址数为32,故剩余10位主机位我们可以得知主机位会从77某处开始,由此可以计算77=01001101252=11111100进行与运算结果为01001100,则子网ip地址所在网络为180.80.76.0,则B可能为目的地址
6 无分类编制CIDR
例题:求192.199.170.82/27的最小地址和最大地址
最长地址为32位,故主机位=32-27=5,主机位会出现在82中,我们对82进行分析
82 = 01010010
前面有24位,所以主机位从82的第三位开始101(10010)则最大位数使主机号全为1最小位数使主机号全为0最小地址:192.199.170.64最大地址:192.199.170.95
6.1 构成超网
将多个子网聚合城一个较大的子网,叫做构成超网,或路由聚合,他所用的方法是:将网络前缀缩短
网络1:206.1.0.0/17网络2:206.1.128.0/17前16位相同,则看第17位,将他们两个总体向前挪一位,则聚合之后地址为206.1.0.0/16
但是聚合之后转发表就将有多个匹配结果,我们使用最长前缀匹配
试题1
此题应在R1与R2之间选择,当最长前缀计算后,符合同一子网,则选择前缀最长的
故这题选B
试题2
最长地址为32位,前24位为网络号,32-24得出主机位+子网位为8,则192.168.5.0,主机位+子网位为后8位,则最
大子网个数需要看子网掩码,子网掩码后8位为248,二进制为11111000,则子网号为11111,最大子网个数为32,
最大可分配地址个数为6(主机位不能全0或全1)
故答案选B
7 ARP协议
ARP高速缓存中存的是IP地址
与MAC地址
的映射
ARP协议就是完成主机或路由器IP地址到MAC地址的映射。解决下一条走哪
的问题
8 DHCP协议
DHCP协议用于动态分配IP地址
9 ICMP协议
9.1 ICMP差错报文(5种)
其中源点抑制已经废弃
9.2 ICMP差错报告报文数据字段
9.3 不应发送ICMP差错报文的情况
9.4 ICMP询问报文
掩码地址请求和回答报文,路由器询问和通告报文已经废弃不再使用
9.5 ICMP的应用
- ping
- 测试两个主机之间的连通性,使用了ICMP回送请求和回答报文
- Traceroute
- 跟踪一个分组从源点到终点的路径,使用了ICMP时间超过差错报告报文
10 IPv6
为什么会有IPv6?
因为ipv4快用完了,急需扩充地址数量,使用IPv6可以根本上解决地址耗尽问题
10.1 IPv6数据报格式
名称 | 解释 | 位数 |
---|---|---|
版本 | 指明了协议版本,总是6。区分数据报的类别和优先级 | 4 |
优先级 | 用来区分数据报的类型 | 8 |
流标签 | 标记是否属于同一个流 | 19 |
有效载荷长度 | 扩展首部+数据的大小 | 16 |
下一个首部 | 标识下一个扩展首部或上层协议首部 | 8 |
跳数限制 | 相当于IPv4的TTL | 7 |
源地址 | 发送方ipv6地址 | 128 |
目的地址 | 接收方ipv6地址 | 128 |
10.2 IPv6和IPv4区别
10.3 IPv6地址表示形式
10.4 IPv4与IPv6之间过渡的策略
11 路由算法
11.1 路由算法的分类
11.2 分层次的路由选择协议
11.3 RIP协议及距离向量算法
11.3.1 RIP协议概述
距离
- 从源端口到目的端口所经过的路由器个数
11.3.2 距离向量算法
距离向量算法练习题1
先对R4发来的路由更新中的距离做+1操作源路由表无Net1信息,则直接填入目的网络Net2的下一条路由器地址相同,则直接更新目的网络Net3的的下一条路由与源路由不同,取路径最小的,更新路由表
11.3.3 RIP协议的报文格式
12 OSPF协议
12.1 链路状态路由算法
了解即可
12.2 OSPF的区域
12.3 OSPF分组
IP数据报的三种传输方式
名称 | 解释 |
---|---|
单播 | 单播用于发送数据包到单个目的地,且没发送一份单播报文都是用一个单播IP地址作为目的地址,是一种点对点传输方式 |
广播 | 广播是指发送数据包到同一广播域或子网内的所有设备的一种数据传输方式,是一种点对多点传输方式 |
组播 | 当网络中的某些用户需要特定数据时,组播数据发送者仅发送一次数据,借助组播路由协议为组播数据报简历组播分发树,被传递的数据到达距离用户端尽可能近的节点后才开始复制和分发 |
组播只会对全部中的一部分起作用
- 单播在发送者和每一接受者之间需要单独的数据信道
- 组播提高了数据传送效率。减少了主干网出现拥塞的可能性。组播组中的主机可以是在同一个物理网络,也可以来自不同的物理网络(如果有组播路由器的支持)
13.1 IP组播地址
IP组播地址让源设备能够将分组发送给一组设备。属于多播组的设备将被分配一个组播组IP地址(一群共同需求主机的相同标识)
13.2 硬件组播
组播地址以十六进制值01-00-5E为头部,发给那些主机需要看剩下的6个十六进制位,余下的6个十六进制位是根据IP组播地址的最后23位转换到的
13.3 IGMP协议与组播路由选择协议
13.3.1 IGMP协议
IGMP协议让路由器知道本局域网上是否有主机(的进程)参加或退出了某个组播组IGMP协议并不知道组播组中成员个数,也不知道这些成员都在哪些网络上面
13.3.2 组播路由选择协议
14 移动IP
移动IP让用户即使处于不同的地地域,也可以使用同一内网
14.1 移动IP相关术语
14.2 移动IP通信过程
15 网络层设备
15.1 路由器
路由器的任务是转发分组
15.1.1 路由器中输入输出端口的处理
15.2 三层设备的区别
16 本章思维导图
☺其他文章:
超详细的计算机网络基础知识 第一章:概述
超详细的计算机网络基础知识 第二章:物理层
超详细的计算机网络基础知识 第三章:数据链路层
超详细的计算机网络基础知识 第五章:传输层
超详细的计算机网络基础知识 第六章:应用层
你的支持就是博主继续更新的动力!计算机网络将会持续更新☺
相见即是有缘,如果对你有帮助,给博主一个免费的点赞以示鼓励把QAQ☺
超详细的计算机网络基础知识总结 第四章:网络层相关推荐
- 超详细的计算机网络基础知识总结 第三章:数据链路层
本文基于:王道计算机考研-计算机网络 其他文章: 超详细的计算机网络基础知识 第一章:概述 超详细的计算机网络基础知识 第二章:物理层 超详细的计算机网络基础知识 第四章:数据链路层 超详细的计算机网 ...
- 超详细的计算机网络基础知识总结 第一章:概述
本文基于:王道计算机考研-计算机网络 顺便提一嘴,王道计算机网络的小姐姐声音真滴好听 相关文章 超详细的计算机网络基础知识 第二章-物理层 超详细的计算机网络基础知识 第三章:数据链路层 超详细的计算 ...
- 计算机网络知识点总结(第四章 网络层)
基于计算机网络(第7版)谢希仁编著. 第四章 网络层 网络层提供两种服务: 面向连接的虚电路服务.特点:保证服务质量,可靠 无连接的数据报服务.特点:"尽最大努力交付",不保证质量 ...
- 04741计算机网络原理2018年版-第四章 网络层 知识要点
知识点总结 一.网络层服务 标记: 1. 网络层服务 网络层介于传输层和数据链路层之间,传输层提供端到端的进程间通信服务,数据链路层的功能是实现物理链路直接相连的两个节点之间的数据帧传输服务,网络层关 ...
- 超详细的java基础知识学习(java SE、javaEE)笔记 核心重点!
标识符 Java 的标识符是由字母.数字.下划线_.以及美元符$组成,但是首字母不可以是数字.Java 标识符大小写敏感,长度无限制,不能是 Java 中的关键字.命名规则:要见名知意! u 变量要 ...
- 计算机网络基础知识—— 各层功能及网络层
文章目录 5层模型及各层功能 网络层 ip协议作用 为什么有了IP地址还需要mac地址 ip地址有什么用,为何不直接使用mac地址定位 为何不放弃使用mac地址 NAT网络地址转换 如何解决ipv4不 ...
- 【计算机网络】学习笔记:第四章 网络层(七千字详细配图)【王道考研】
基于本人观看学习b站王道计算机网络课程所做的笔记,不做任何获利 仅进行交流分享 特此鸣谢王道考研 若有侵权请联系,立删 如果本篇笔记帮助到了你,还请点赞 关注 支持一下 ♡>
- java保护型数据成员_Java基础知识笔记第四章:类和对象
编程语言的几个发展阶段 面向机器语言 面向过程语言 面向对象语言:封装.继承.多态 类 类声明 classPerson{ ....... }class植物{ ....... } 类体 类使用类体来描述 ...
- 计算机基础知识第四章测试,计算机基础知识测试题第四章
第四章 电子表格Excel 一.单项选择题 1.利用"文件"菜单打开Excel 2000的文件,一次可以打开多个不连续的文件,方法是先单击一个文件名,然后按住( )键,再单击其他文 ...
最新文章
- JVM学习笔记之四:分代垃圾回收
- swoole单台并发php,php swoole 并发多少?
- 应该知道的自动化测试陷阱2
- 【NLP】使用BERT完成NLP任务
- 正确使用计算机说课稿,《初识计算机》说课稿
- ora-00119和ora-00132解决方案
- HiveQL学习笔记(二):Hive基础语法与常用函数
- 单片机c语言取反符号怎么打,arduino取反怎么写
- 计算机汉字区位码十进制,[计 算 机]汉字区位码\国标码\机内码之间的换算
- kangle源码idc下载_kangle康乐idc商务系统搭建源码+教程
- vlan PVID和VID详解
- 基于JAVA HAPI包以树形结构实现可配置式 HL7消息接收与解析
- Windows 微信双开(批处理)
- java pdf 转换 word_如何使用Java将pdf文件转换为word文件
- 重装Office后打开Powerpoint和excel提示找不到VCRUNTIME140_1.dll的解决办法(亲测成功,简单有效)
- 计算11的N次方,N非常大
- sublime text3 下载和汉化
- 重要的人工神经元--感知器和Sigmod神经元
- Linux timeout 命令
- Vue v-for循环中 key 属性的使用
热门文章
- python中如何截取字符串函数_python中如何截取字符串函数_python截取指定字符串_Python 字符串操作(string...
- python实现关联算法_python实现关联规则算法Apriori代码示例
- ibm red hat_IBM-Red Hat对云和开发人员的意义
- HNOI2011 卡农
- iView 表单重置
- 深度学习经典网络(4)ResNet深度残差网络结构详解
- 2013年9月份全国计算机等级考试二级c语言题库及详细解答,2013年9月份全国计算机等级考试二级C语言题库及详解..doc...
- 当了N年的码工,感觉颈椎非常不好,因此设计这样一个笔记本是否会有市场?
- 后台(07)——XML和JUnit
- linux下同一文件系统,Linux文件系统详解