注:本文为来自 猿小许 的 "计算机网络" 相关系列文章合辑。
一、计算机网络概述
猿小许于 2021-06-03 18:39:47 发布
一、计算机网络的概念
1.1 计算机网络 概念
计算机网络: 是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。
计算机网络是互连的、自治的计算机集合。
互连:互联互通 通信链路
自治:无主从关系
1.2 计算机网络功能
-
数据通信
-
资源共享 (硬件 软件 数据)
-
分布式处理 (多台计算机各自承担同一工作任务的不同部份)
-
提高可靠性 (一台计算机宕机了,另一台就可以替代继续工作)
-
负载均衡 (是各个计算机共同工作,减小计算机的压力)
1.3 计算机网络的组成
1.3.1 组成部分
-
硬件 (主机;链路:比如双绞线、光纤等;通信设备:交换机、路由器等)
-
软件 (安装在端系统上的应用软件,例如:QQ、微信)
-
协议 (它是一系列规则还有约定的集合)
1.3.2、工作方式
边缘部分:
-
用户直接可以使用
-
C/S 方式
-
P2P 方式
核心部分:
-
为边缘部分服务
-
包括大量的路由器还有网络
1.3.3、功能组成
通信子网:实现数据通信
资源子网 实现资源共享 / 数据处理
1.4 计算机网络的分类
1、按分布范围分:
广域网 WAN (通常跨国,范围广)、城域网 MAN(城市范围)、 局域网 WAN(楼或者公司层次)、 个人区域网 PAN(个人智能设备)
2、按使用者分:
公用网: 中国电信、中国移动等;
专用网: 军队、政府、银行、公安;
3、按交换技术分:
电路交换、报文交换、分组交换
4、按拓扑结构分:
总线型、星型、环形、网状行(常用于广域网)
5、按传输技术分:
广播式网络:共享公共通信通道
点对点网络: 使用分组存储转发和路由选择机制
1.5 小结
二、标准化工作
标准化对计算机网络至关重要,要实现不同厂商的软、硬件之间相互联通,必须遵守统一的标准。
2.1 标准的分类
法定标准:由权威机构制定的正式的、合法的标准 例如:OSI
事实标准: 某些公司的产品在竞争中占据了主流,事件长了,这些产品中的协议和技术就成了标准 TCP/IP
2.2 RFC 因特网标准的形式
RFC(Request For Comments):
所有的因特网标准的形式都是 RFC, 但不是所有的 RFC 都是因特网标准
RFC 上升为因特网标准的四个阶段:
-
因特网草案: 这个 阶段还不是 RFC 文档,将文档发送给 frc-editor@rfc-editor.org 进行初步审核。
-
建议标准: 从这个阶段开始成为 RFC 文档,其他人可以进行提建议优化。
-
草案标准: 经过 IETF、IAB 组织鉴定
-
因特网标准: 经过 IETF、IAB 组织鉴定成功后,正式成为因特网标准。
2.3 标准化工作的相关组织
国际化标准组织: ISO OSI 参考模型、HDLC 协议
国际电信联盟 ITU: 制定通信规则
国际电气电子工程师协会 IEEE: 学术机构、IEEE802 系列标准、5G
Internet 工程任务组 IETF : 负责因特网相关标准的制定 RFC XXXX
三、速率相关性能指标
3.1 速率
速率:即数据率或称数据传输率或比特率
比特: 1/0 位
连接在计算机网络上的主机在数字信道上传送数据位数的速率,单位是 b/s, kb/s , Mb/s,Gb/s,Tb/s
3.2 带宽
1、" 带宽 "原本指某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)。
2、计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的 "最高数据率"。单位是" 比特每秒 ",b/s,kb/s,Mb/s,Gb/。网络设备所支持的最高速度。
3.3 [吞吐量](https://so.csdn.net/so/search?q = 吞吐量 & spm=1001.2101.3001.7020)
表示在单位时间内通过某个网络(或信道、接口)的数据量。单位 b/s,kb/s,Mb/s 等。
吞吐量受网络的带宽或网络的额定速率的限制。
吞吐量是指单位时间内实际接受的数据量,带宽是指理想状态下传输的数据量(不可能达到)
3.4 时延
指数据(报文 / 分组 / 比特流)从网络(或链路)的一端传送到另一端所需的时间。也叫延迟或迟延。单位是秒。
3.4.1 时延种类
发送时延: 它发生于主机内部,一般发生在网络适配器中,发送时延 = 数据长度 / 信道带宽(发送速率)
传播时延: 它发生在信道传输中 , 传播时延 = 信道长度 / 电磁波在信道上的传播速率
排队时延: 等待输入 / 输出链路可用的时间(路由器正在被使用时,新到达的数据需等待的时间)
处理时延: 检错 / 找出口(路由器检查接受的数据流是否符合规范的时间以及找到出口所需的时间)
3.5 时延带宽积
时延带宽积: 又称为以比特为单位的链路长度,即 "某段链路现在有多少比特"。
时延带宽积 = 传播时延 * 带宽
bit s b/s
3.6 往返时延 RTT
从发送方发送数据开始,到发送方接收到接收方的确认(接收方收到数据后立即发送确认), 总共经历的时延。
RTT 越大,在接收到确认之前,可以发送的数据就越多,因为在未接收到确认之前,可以一直发送数据。
RTT 包括 = 往返传播时延(传播时延 * 2)+ 末端处理时间
3.7 利用率
利用率:
信道利用率:有数据通过时间 /(有 + 无)数据通过时间
网络利用率:信道利用率加权平均值
利用率越大,时延就越大,因为相当于在某一时间段内传输的数据较多,易发生阻塞,时延相应就越高。
3.8 小结
三、分层结构
1、为什么要分层
发送文件前要完成的工作:
-
发起通信的计算机必须将数据通信的通路进行激活
-
要告诉网络如何识别目的主机
-
发起通信的计算机要查明目的主机是否开机,并且与网络连接正常
-
发起通信的计算机要弄清,对方计算机中文管理软件程序是否已经做好准备工作。
-
确保差错和意外可以解决
2、怎么分层
分层的基本原则
-
各层之间要相互独立,每层只实现一种相对独立的功能
-
每层之间界面自然清晰,易于理解,相互交流尽可能少。
-
结构上可分割开,每层都采用最合适的技术来实现。
-
保持下层对上层的独立性,上层单向使用下层提供的服务(下级向上级敬酒)
-
整个分层应该能促进标准化工作
3、分层结构
1、实体: 第 n 层中的活动元素称为 n 层实体。同一层的实体叫做对等实体。
2、协议: 为进行网络中的对等实体数据交换而建立的规则、标准或约定称为网络协议。【水平】
语法:规定传输数据的格式(例如以 01 传输 01010001001001)
语义: 规定每一段语法所代表的含义或功能
同步: 规定各种操作的顺序
3、接口: 访问服务点 SAP,上层使用下层服务的入口
4、服务: 下层为相邻上层提供的功能调用【垂直】
SDU 服务数据单元: 为完成用户所要求的功能而应传送的数据
PCI 协议空竹信息: 控制协议操作的信息(消息添加的头部或尾部,较为重要的信息)
PDU 协议数据单元: 对等层次之间传送的数据单位
4、小结
-
网络体系结构是从功能上描述计算机网络结构
-
计算机网络体系结构简称网络体系结构是分层结构
-
每层准寻某个 / 些网络协议完成本层功能
-
计算机网络体系结构是计算机的各层及其协议的集合
-
第 n 层在向 n+1 层提供服务时,此服务不仅包含第 n 层本身的功能,还包含由下层服务提供的功能
-
仅仅在相邻层之间由接口,且所提供服务的具体实现细节对上一层完全屏蔽
-
体系结构是抽象的,而实现是指能运行的一些软件和硬件
四、OSI/ISO 参考模型
1、ISO/ISO 参考模型的由来
为了解决计算机网络复杂的大问题 而产生的分层结构(按功能)
目的: 支持异构网络系统的互联互通
总结: 理论成功,市场失败
2、7 层结构表示
顺口溜: "物联网速会使用"
3、通信过程
通信两端的主机必须包含这 7 层结构
中间系统只需要包含 3 层结构(中间系统:路由器,网桥等)
通信过程类似 U 型状
五、OSI 各分层认识
1、应用层
所有能和用户交互产生网络流量的程序(例如:QQ,微信)
注: 不联网就能使用的应用不属于应用层
2、表示层
用户处理在两个通信系统中交换信息的表示方式(语法和语义)
功能:
-
数据格式变换
-
数据加密解密
-
数据压缩和恢复
3、会话层
向表示层实体 / 用户进程提供建立连接并在连接上有序地传输数据,这是会话,也是建立同步。各会话之间独立互部影响,也就是各进程之间独立互不影响。
功能:
-
建立、管理、终止会话
-
使用校验点可使会话通信失效时在失效点 / 同步点继续恢复通信,实现数据同步(适用于传输大文件)
4、传输层
协议: TCP/UDP
负责主机中两个进程的通信,即端到端的通信。传输单位是报文段或用户数据报。
功能:
-
可靠传输、不可靠传输(是否验证接收方成功接收到数据)
-
差错控制(纠正传送的报文段丢失或则顺序错乱)
-
流量控制(在接收方接收数据的能力范围内进行数据传送)
-
复用分用
复用:多个应用层进程可同时适用下面运输层的服务
分用: 运输层把收到的信息分别交付给上面应用层中相应的进程
5、网络层
主要任务是把分组从源端到目的端,为分组交换网上的不同主机提供通信服务。网络层传输服务单位是数据报。
当数据报过于大时,将数据报拆分为一个个的分组进行传输。
功能:
-
路由选择(选择最佳路径、最优情况)
-
流量控制
-
差错控制 (校验数据是有错,能纠正就纠正,不能纠正就丢掉,确保传输层传输的数据是正确的)
-
拥塞控制 (若所有结点都来不及接受分组,而要丢弃大量分组的话,网络就处于拥塞状态。因此要采取一定措施,缓解这种拥塞。)
6、数据链路层
主要任务是把网络层传下来的数据报组装成帧。数据链路层 / 链路层的传输单位是帧。
通信帧: 帧描画了以串行流的形式在通信信道上发送的数据的结构。在串行通讯中,数据以流的形式从源端发送到目的端。两个系统共同维护当前的通讯会话。数据流被分成若干个帧,帧是由一个起始位、几个数据位和 1 个停止位组成的。异步通信帧中数据代表一个字符。以太网帧中的数据包含一个完整的或者部分的信息分组。分组在源端较高层协议中形成并分割进一个或多个帧的数据域中。
功能:
-
成帧(定义帧的开始和结束) ...0001001100010110...
-
差错控制 ( 帧错、位错)
-
流量控制
-
访问(接入)( 控制 控制信道的访问)
7、物理层
主要任务是在物理媒体(光纤、电缆等)上实现比特流的透明传输。物理层传输单位是比特。
透明传输:指不管所传数据是什么样的比特组合,都应当能够在链路上传送。
功能:
-
功能一:定义接口特性
-
功能二:定义传输模式单工、半双工、双工
-
功能三:定义传输速率
-
功能四:比特同步功能五:比特编码
二、物理层详解
猿小许于 2021-06-27 22:40:27 发布
一、物理层概念
1.1 物理层的功能
物理层解决如何来连接各种计算机的传输媒体(电缆、光纤电缆等)上传输数据比特流,而不是指具体的传输媒体。
物理层主要任务:确定与传输媒体接口有关的一些特性 定义标准
1.2 物理层四大特性
机械特性: 定义物理连接的特性,规定物理连接时所采用的规格、接口形状、引线数目、引脚数量和排列情况等
电器特性:规定传输二进制位时,线路上信号的电压范围、阻抗匹配、传输速率和距离限制等。
功能特性:指明某条线路上出现的某一电平表示何种意义,接口不见的信号线的用途
规程特性(过程特性):定义各物理线路的工作规程和时序关系
1.3 数据通信的基础知识
调制解调器:又称为" 猫 " ,是针对电话线上网的用户使用的,只是一个拨号上网的工具,现在又带露有功能的猫。
路由器:主要就是为经过路由器的每个数据包寻找一条最佳传输路径,并将该数据包有效地传送到目的站点。并且它还可以实现集线器交换机的功能。可以自动分配 IP 地址。
信源:是一台计算机,将信息转换为比特流 01010101,在信道上以数字信号传输(高电伏、低电伏)
通信的目的是传送消息
数据:传送消息的实体,通常是有意义的符号序列
信号:数据的电气 / 电磁的表现,是数据在传输过程中的存在形式。
数字信号:代表消息的参数取值是离散的
模拟信号:代表消息的参数取值是连续的
信源:产生和发送数据的源头
信宿:接受数据的终点
信道:信号的传输媒介。一般用来表示向某一个方向传输信息的介质,因此一条通信线路往往包含一条发送信道和接收信道。
1.3 三种通信方式
从通信双方信息的交互方式看,可以有三种基本方式:
单工通信: 只有一个方向的通信而没有反方向的交互,仅需要一条信道
半双工通信:通信的双方都可以发送或接收信息,但任何一方都不能同时发送和接收,需要两条信道
全双工通信: 通信双方可以同时发送和接收信息,也需要两条信道
1.4 两种数据传输方式
传输方式:
-
串行传输: 速度慢 费用低 适合远距离
-
并行传输: 速度快 费用高 适合近距离
二、相关术语(码元、波特、速率、带宽)
2.1 码元
码元是指用一个固定时长的信号波形(数字脉冲),代表不同离散数值的基本波形,是数字通信中数字信号的计量单位这个时长内的信号称为 K 进制码元,而该时长称为码元宽度。当码元的离散状态有 M 个时(M 大于 2),此时码元为 M 进制码元。
1 码元可以携带多个比特的信息量。例如,在使用二进制编码时,只有两种不同的码元,一种代表 0 状态,另一种代表 1 状态。
2.2 速率
速率:也叫数据率,是指数据的传输速率,表示单位时间内传输的数据量。可以用码元传输速率和信息传输速率表示
码元传输速率:别名码元速率、波形速率、调制速率、符号速率等,它表示单位时间内数字通信系统所传输的码元个数(也称为脉冲个数或信号变化的次数)单位是波特。波特表示数字通信系统每秒传输一个码元。这里的码元可以是多进制的,也可以是二进制的,但码元速率与进制数无关。
信息传输速率:别名信息速率、比特率等,表示单位时间内数字通信系统传输的二进制码元个数(即比特数,单位是比特每秒)
关系:若一个码元携带 n bit 的信息量,则 M baud 的码元传输速率所对应的信息传输速率为 M *N bit/s。
带宽: 表示在单位时间内从网络中的某一点到另一点所能通过的 "最高数据率",常用来表示网络的通信线路所能传输数据的能力。单位是 b/s。
2.3 失真
2.3.1 失真 -- 码间串扰
2.3.2 奈氏准则(奈奎斯特定理)
奈氏准则:在理想低通 (无噪声,带宽受限) 条件下,为了避免码间串扰,极限码元传输速率为 2W Baud, W 是信道带宽,单位是 Hz。
-
在任何信道中,码元传输的速率是有上限的。若传输速率超过此上限,就会出现严重的码间串扰问题,使接收端对码元的完全正确识别成为不可能。
-
信道的频带越宽 ( 即能通过的信号高频分量越多),就可以用更高的速率进行码元的有效传输。
-
奈氏准则给出了码元传输速率的限制,但并没有对信息传输速率给出限制。
-
由于码元的传输速率受奈氏准则的制约,所以要提高数据的传输速率,就必须设法使每个码元能携带更多个比特的信息量,这就需要采用多元制的调制方法。
2.3.3 香农定理
香农定理:在带宽受限且有噪声的信道中,为了不产生误差,信息的数据传输速率有上限值。
-
信道的带宽或信道中的信噪比越大,则信息的极限传输速率就越高。
-
对一定的传输带宽和一定的信噪比,信息传输速率的上限就确定了。
-
只要信息的传输速率低于信道的极限传输速率,就 -- 定能找到某种方法来实现无差错的传输。
-
香农定理得出的为极限信息传输速率,实际信道能达到的传输速率要比它低不少。
-
从香农定理可以看出,若信道带宽 W 或信噪比 S/N 没有,上限 (不可能),那么信道的极限信息传输速率也就没有上限。
例题 1:
例题 2:
三、编码与调制
3.1 数字数据编码为数字信号
(1) 非归零编码 [NRZ]
(4) 归零编码 [RZ]
(2) 曼彻斯特编码
(5) 反向不归零编码 [ NRZI]
(3) 差分曼彻斯特编码
(6) 4B/5B 编码
3.1.1 非归零编码
高 1 低 0
编码容易实现,但没有检错功能,且无法判断一个码元的开始和结束,以至于收发双方难以保持同步。
3.1.2 归零编码
3.1.3 曼彻斯特编码
3.1.4 差分曼彻斯特编码
3.1.5 4B/5B 编码
3.2 数字数据调制为模拟信号
数字数据调制技术在发送端将数字信号转换为模拟信号,而在接收端将模拟信号还原为数字信号,分别对应于调制解调器的调制和解调过程。
3.3 模拟数据编码为数字信号
计算机内部处理的是二进制数据,处理的都是数字音频,所以需要将模拟音频通过采样、量化转换成有限个数字表示的离散序列 (即实现音频数字化)。
最典型的例子就是对音频信号进行编码的脉码调制 (PCM),在计算机应用中,能够达到最高保真水平的就是 PCM 编码,被广泛用于素材保存及音乐欣赏,CD、DVD 以及我们常见的 WAV 文件中均有应用。它主要包括三步:抽样、量化、编码。
抽样:对模拟信号周期性扫描,把时间上连续的信号变成时间上离散的信号。
为了使所得的离散信号能无失真地代表被抽样的模拟数据,要使用采样
定理进行采样: f 采样频率 >= 2f 信号最高频率
量化:把抽样取得的电平幅值按照一定的分级标度转化为对应的数字值,并取
整数,这就把连续的电平幅值转换为离散的数字量。
编码:把量化的结果转换为与之对应的二进制编码。
3.4 模拟数据调制为模拟信号
为了实现传输的有效性,可能需要较高的频率(比如远距离传输时,信号会衰减,这时就需要再调制到高频率)。这种调制方式还可以使用频分复用技术,充分利用带宽资源。在电话机和本地交换机所传输的信号是采用模拟信号传输模拟数据的方式;模拟的声音数据是加载到模拟的载波信号中传输的。
3.5 小结
四、传输介质及分类
4.1 传输介质介绍
传输介质也称传输媒体 / 传输媒介,它就是数据传输系统中在发送设备和接收设备之间的物理通路。
传输媒体并不是物理层。传输媒体在物理层的下面,因为物理层是体系结构的第一层, 因此有时称传输媒体为 0 层。在传输媒体中传输的是信号,但传输媒体并不知道所传输的信号代表什么意思。
但物理层规定了电气特性,因此能够识别所传送的比特流。
4.2 导向型传输介质
4.2.1 双绞线
4.2.2 同轴电缆
4.2.3 光纤
光纤的特点:
1. 传输损耗小,中继距离长,对远距离传输特别经济。
2. 抗雷电和电磁干扰性能好。
3. 无串音干扰,保密性好,也不易被窃听或截取数据。
4. 体积小,重量轻。
4.3 非导向性传输介质
4.4 小结
五、物理层设备
5.1 中继器
诞生原因:由于存在损耗,在线路上传输的信号功率会逐渐衰减,衰减到一定程度时将造成信号失真,因此会导致接收错误。
中继器的功能:对信号进行再生和还原,对衰减的信号进行放大,保持与原数据相同,以增加信号传输的距离,延长网络的长度。
中继器的两端 :两端的网络部分是网段,而不是子网,适用于完全相同的两类网络的互连,且两个网段速率要相同。
中继器只将任何电缆段上的数据发送到另一段电缆上,它仅作用于信号的电气部分,并不管数据中是否有错误数据或不适于网段的数据。
两端可连相同媒体,也可连不同媒体。
中继器两端的网段一定要是同一个协议。(中继 器不会存储转发,傻)
5-4-3 规则:网络标准中都对信号的延迟范围作了具体的规定,因而中继器只能在规定的范围内进行,否则会网络故障。
5.2 集线器
集线器的功能: 对信 号进行再生放大转发,对衰减的信号进行放大,接着转发到其他所有 (除输入端口外) 处于工作状态的端口上,以增加信号传输的距离,延长网络的长度。不具备信号的定向传送能力,是一个共享式设备。
六、章节
三、解析数据链路层
猿小许于 2021-07-09 23:43:48 发布
一、数据链路层基本概念
1.1 关键词解释
结点: 主机、路由器
链路:网络中两个结点之间的物理通道,链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路。
数据链路:网络中两个结点之间的逻辑通道,把实现控制传输协议的硬件和软件加到链路上就构成数据链路。
帧: 链路层的协议单元,封装网络层的数据报
数据链路层: 负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报。
1.2 数据链路层功能概述
数据链路层在物理层提供的服务基础上向网络层提供服务 ,其最基本的服务是将源自网络层来的数据可靠地 传输到相邻结点的目标机网络层。其主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造为逻辑上无差错的数据链路,使之对网络层表现为一条无差错的链路。
功能一:为网络层提供服务。
无确认无连接服务
有确认无连接服务
有确认面向连接服务。 有连接就一定有确认!
功能二:链路管理,即连接的建立、维持、释放(用于面向连接的服务)。
功能三:组帧
功能四: 流量控制
功能五: 差错控制(帧错 / 位错)
1.3 封装成帧
封装成帧: 就是在一 - 段数据的前后部分添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流
后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。
首部和尾部包含许多的控制信息,他们的一个重要作用:帧定界 (确定帧的界限)。
帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。
组帧的四种方法:1. 字符计数法,2. 字符 (节) 填充法,3. 零比特填充法,4. 违 规编码法。
1.3.1 字符计数法
1.3.2 字符填充法
1.3.3 零比特填充法
1.3.4 违规编码法
1.4 透明传输
透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。因此,链路层就 "看不见" 有什么妨
碍数据传输的东西。
当所传数据中的比特组合恰巧与某一个控制信息完全一样时, 就必须采取适当的措施,使收方不会将这样的数据误
认为是某种控制信息。这样才能保证数据链路层的传输是透明的。
1.5 差错控制
差错从何而来?
概括来说,传输中的差错都是由于噪声引起的。
-
全局性 1 . 由于线路本身电气特性所产生的随机噪声 (热噪声),是信道固有的,随机存在的。解决办法:提高信噪比来减少或避免干扰(对传感器下手)
-
**局部性 2.**外界特定的短暂原因所造成的冲击噪声,是产生差错的主要原因。
解决办法:通常利用编码技术来解决。
1.5.1 冗余编码
编码 VS 编码
数据链路层编码和物理层的数据编码与调制不同。物理层编码针对的是单个比特,解决传输过程中比特的同步等问题,如曼彻斯特编码。
数据链路层的编码针对的是一 - 组比特,它通过冗余码的技术实现 - - 组进制比特串在传输过程是否出现了差错。
冗余编码:
在数据发送之前,先按某种关系附加上一定的冗
余位,构成一个符合某一规则的码字后再发送。
当要发送的有效数据变化时,相应的冗余位也随
之变化,使码字遵从不变的规则。接收端根据收
到码字是否仍符合原规则,从而判断是否出错。
1.6 脑图小结
二、流量控制与可靠传输机制
较高的发送速度 和较低的接收能力的不匹配,会造成传输出错,因此流量控制也是数据链路层的一项重要工作。
-
数据链路层 的流量控制是点对点的,而传输层的流量控制是端到端的。
-
数据链路层流量控制手段: 接收方收不下就不回复确认。
-
传输层流量控制手段: 接收端给发送端一一个窗口公告。
2.1 流量控制的方法
2.2 停止 - 等待协议
- 为什么要有停止_等待协议?
除了比特出差错,底层信道还会出现丢包问题。为了实现流量控制。
丢包:物理线路故障、设备故障、病毒攻击、路由信息错误等原因,会导致数据包的丢失。
" 停止 - 等待" 就是每发送完一个分组就停止发送,等待对方确认,在收到确认后再发送下一个分组。
信道利用率:
2.3 选择重传协议(较优)
SR 发送方必须响应的三件事
1. 上层的调用
从上层收到数据后,SR 发送方检查下一个可用于该帧的序号,如果序号位于发送窗口内,则发送数据帧;否则就像 GBN 一样,要么将数据缓存,要么返回给上层之后再传输。
2. 收到了一个 ACK
如果收到 ACK,加入该帧序号在窗口内,则 SR 发送方将那个被确认的帧标记为已接收。如果该帧序号是窗口
的下界 (最左边第一一个窗口对应的序号),则窗口向前移动到具有最小序号的未确认帧处。如果窗口移动了并且有序号在窗口内的未发送帧,则发送这些帧。
3. 超时事件
每个帧都有自己的定时器,一个超时事件发生后只重传一个帧。
SR 接收方将确认一个正确接收的帧而不管其是否按序。失序的帧将被缓存,并返回给发送方一个该帧的确认帧**[收谁确认谁]**,直到所有帧 (即序号更小的帧) 皆被收到为止,这时才可以将一批帧按序交付给 上层,然后向前移动滑动窗口。
总结:
- 对数据帧逐一确认,收一个确认一个
- 只重传出错帧
- 接收方有缓存
4、发送窗口最好等于接收窗口(大了会溢出,小了没意义)
2.4 后退 N 帧协议
GBN 发送方必须响应的三件事
1. 上层的调用
上层要发送数据时,发送方先检查发送窗口是否已满,如果未满,则产生一个帧并将其发送;如果窗口已满,发送方只需将数据返回给上层,暗示上层窗口已满。上层等一会再发送。(实际实现中, 发送方可以缓存这些数据,窗口不满时再发送帧)。
2. 收到了一个 ACK
GBN 协议中,对 n 号帧的确认采用累积确认的方式,标明接收方已经收到 n 号帧和它之前的全部帧。
3. 超时事件
协议的名字为后退 N 帧 / 回退 N 帧,来源于出现丢失和时延过长帧时发送方的行为。就像在停等协议中一样,定时器将再次用于恢复数据帧或确认帧的丢失。如果出现超时,发送方重传所有已发送但未被确认的帧。
GPN 接收方要做的事
-
如果正确收到 n 号帧,并且按序,那么接收方为 n 帧发送一个 ACK,并将该帧中的数据部分交付给上层。
-
其余情况都丢弃帧,并为最近按序接收的帧重新发送 ACK。接收方无需缓存任何失序帧,只需要维护一个信息: expectedseqnum (下一个按序接收的帧序号)。
总结:
-
累积确认 (偶尔捎带确认)
-
接收方只按顺序接收帧,不按序无情丢弃
-
确认序列号最大的、按序到达的帧
-
发送窗口最大为 2"-1,接收窗口大小为 1
优缺点:
优点:因连续发送数据帧而提高了信道利用率
缺点:在重传时必须把原来已经正确传送的数据帧重传,使传送效率降低。
二、链路分类
点对点链路:
两个相邻节点通过一个链路相连,没有第三者。
应用: PPP 协议,常用于广域网。
广播式链路:
所有主机共享通信介质。
应用:早期的总线以太网、无线局域网,常用于局域网。
2.1 介质访问控制
信道划分介质访问控制:将使用介质的每个设备与来自同一信道上的其他设备的通信隔离开,把时域和频域资源合理地分配给网络上的设备。
多路复用技术:
把多个信号组合在一条物理信道上进行传输,使得多个计算机或终端设备共享信道资源,提高信道利用率。
共享信道:
把一条广播信道,逻辑。上分成几条用于两个节点之间通信的互不干扰的子信道,实际就是把广播信道转变为点对点信道
2.1.1 统计时分复用
2.1.2 波分多路复用 WDM
波分多路复用就是光的频分多路复用,在一根光纤中传输多种不同波长 (频率) 的光信号,由于波长 (频率) 不同,所以各路光信号互不干扰,最后再用波长分解复用器将各路波长分解出来。
2.1.3 码分多路复用 CDM
**码分多址 (CDMA)**是码分复用的一一种方式。
1 个比特分为多个码片 / 芯片 (chip) ,每一个站点被指定一个唯一的 m 位的芯片序列。
2.2 ALOHA 协议
冲突:
在一条信道上,同时有多人进行信息传输,造成碰撞
纯 ALOHA 协议:
时隙 ALOHA 协议
时隙 ALOHA 协议的思想:把时间分成若千个相同的时间片,所有用户在时间片开始时刻同步接入网络信道,若发生冲突,则必须等到下一个时间片开始时刻再发送**。控制想发就发的随意性**
总结:
-
纯 ALOHA 比时隙 ALOHA 吞吐量更低,效率更低。
-
纯 ALOHA 想发就发,时隙 ALOHA 只有在时间片段开始时才能发。
2.3 CSMA 协议(载波监听)
当几个站同时在总线上发送数据时,总线上的信号电压摆动值将会增大 ( 互相叠加)。当一个站检测到的信号电压摆动值超过一定限值时,就认为总线上至少有两个站同时在发送数据,表明产生了碰撞,即发生了冲突。
CS:载波侦听 / 监听,每一个站在发送数据之前要检测一下总线上是否有其他计算机在发送数据。
MA:多点接入,表示许多计算机以多点接入的方式连接在一根总线上。
坚持指的是对于监听信道忙之后的坚持。
1 - 坚持 CSMA 思想:
-
如果一个主机要发送消息,那么它先监听信道。
-
空闲则直接传输,不必等待。
-
忙则一直监听,直到空闲马上传输。
-
如果有冲突 (一段时间内未收到肯定回复),则等待一个随机长的时间再监听,重复上述过程。
优点:只要媒体空闲,站点就马上发送,避免了媒体利用率的损失。
缺点:假如有两个或两个以上的站点有数据要发送,冲突就不可避免。
非坚持指的是对于监听信道忙之后就不继续监听。
非坚持 CSMA 思想:
-
如果一个主机要发送消息,那么它先监听信道。
-
空闲则直接传输,不必等待。
-
忙则等待一个随机的时间之后再进行监听。
优点:采用随机的重发延迟时间可以减少冲突发生的可能性。
缺点:可能存在大家都在延迟等待过程中,使得媒体仍可能处于空闲状态,媒体使用率降低。
三、局域网基本概念和体系结构
3.1 局域网
局域网 (Local Area Network):简称 LAN, 是指在某一区域内由多台计算机互联成的计算机组,使用广播信道。
-
特点 1: 覆盖的地理范围较小,只在 - 一个相对独立的局部范围内联,如一 座或集中的建筑群内。
-
特点 2: 使用专门铺设的传输介质 (双绞线、同轴电缆) 进行联网,数据传输速率高 (10Mb/s~ 10Gb/s)。
-
特点 3: 通信延迟时间短,误码率低,可靠性高。
-
特点 4: 各站为平等关系, 共享传输信道。
-
特点 5: 多采用分布式控制和广播式通信,能进行广播和组播。
决定局域网的主要要素为**:网络拓扑**,传输介质 与介质访问控制方法。
3.1.1局域网拓扑结构
3.1.2局域网传输介质
3.1.3 局域网介质访问控制方法
-
1.CSMA/CD 常用于总线型局域网,也用于树型网络
-
- 令牌总线常用于总线型局域网,也用于树型网络它是把总线型或树型网络中的各个工作站按 - - 定顺序 如按接口地址大小排列形成一个逻辑环。只有令牌持有者才能控制总线,才有发送信息的权力。
-
- 令牌环用 于环形局域网,如令牌环网
3.1.4 局域网的分类
-
1.以太网: 以太网是应用最为广 泛的局域网,包括标准以太网 (10Mbps) 、快速以太网 ( 100Mbps)、千兆以太网 (1000 Mbps) 和 10G 以太网**: 它们都符合 1EEE802.3 系列标准规范。逻辑拓扑总线型,物理拓扑是星型或拓展星型。使用 CSMA/CD.
-
2.令牌环网物理上采用了星形拓扑结构,逻辑上是环形拓扑结构。已是 "明日黄花"。
-
3.FDDI 网(Flber Distrlbuted Data Interface) 物理 上采用了双环拓扑结构,逻辑上是环形拓扑结构。
-
4.ATM 网(Asynchronous Transfer Mode) 较新型的单元交换技术,使用 53 字节固定长度的单元进行交换。
5.无线局域网(Wreless LocalArea Network; WLAN) 采用 IEEE 802.11 标准。
3.1.5 MAC 子层 和 LLC 子层
3.2 以太网概述
以太网 (Ethernet) 指的是由 Xerox 公司创建并由 Xerox、Intel 和 DEC 公 司联合开发的基带总线局域网规范,是当今现有局域网 采用的最通用的通信协议标准 。以太网络使用 CSMA/CD (载波监听多路访问及冲突检测) 技术。
3.2.1以太网在局域网各种技术中占统治性地位:
-
- 造价低廉 ( 以太网网卡不到 100 块) ;
-
- 是应用最广泛的局域网技术;
-
- 比令牌环网、ATM 网便宜,简单;
-
- 满足网络速率要求: 10Mb/s~10Gb/s.
3.2.2以太网连接服务
以太网提供无连接、不可靠的服务
无连接:发送方和接收方之间无 "握手过程"。
不可靠:不对发送方的数据帧编号,接收方不向发送方进行确认,差错帧直接丢弃,差错纠正由高层负责。以太网只实现无差错接收,不实现可靠传输。
3.2.3 以太网传输介质与拓扑结构
3.2.4 适配器与 MAC 地址
计算机与外界有局域网的连接是通过通信适配器的。
适配器上装有处理器和存储器 (包括 RAM 和 ROM)。
ROM上有计算机硬件地址:MAC 地址。
在局域网中,硬件地址又称为物理地址,或 MAC 地址。[ 实际上是标识符]
MAC 地址:每个适配器有一个全球唯 - - 的 48 位二进制地址,前 24 位代表厂家 (由 IEEE 规定),后 24 位厂家自己指定。常用 6 个十六进制数表示,如 02-60-8c-e4-b1-21。
3.2.5 以太网 MAC 帧
3.2.6总结
3.3 无线局域网
无线局域网最大可以覆盖几千米
WIFI 只属于无线局域网的一种,可能就覆盖一间屋子
3.4 广域网
广域网 (WAN,Wide Area Network),通常跨接很大的物理范围,所覆盖的范围从几十公里到几千公里,它能连接多个城市或国家,或横跨几个洲并能提供远距离通信,形成国际性的远程网络。
广域网的通信子网主要使用分组交换技术。广域网的通信子网可以利用公用分组交换网、卫星通信网和无线分组交换网,它将分布在不同地区的局域网或计算机系统互连起来,达到资源共享的目的。如**因特网 (Internet)**是世界范围内最大的广域网。
3.4.1 PPP 协议的特点
点对点协议 PPP ( Point-to-Point Protocol) 是目前使用最广泛 的数据链路层协议,用户使用拨号电话接入因特网时一般都使用 PPP 协议**。只支持全双工链路**。
四、链路层设备
4.1 物理层扩展以太网
4.2 链路层扩展以太网
4.3 以太网交换机
直通式交换机
查完目的地址 (6B) 就立刻转发。
延迟小,可靠性低,无法支持具有不同速率的端口的交换。
存储转发式交换机
将帧放入高速缓存,并检查否正确,正确则转发,错误则丢弃
4.4 冲突域和广播域
冲突域:在同一一个冲突域中的每一个节点都能收到所有被发送的帧。简单的说就是同一时间内只能有一台设备发送信息的范围。
广播域:网络中能接收任一设备发出的广播帧的所有设备的集合。简单的说如果站点发出一个广播信号,所有能接收收到这个信号的设备范围称为一个广播域。
章节
四、计算机网络之网络层解析
猿小许于 2021-07-10 22:32:38 发布
一、网络层
主要任务 : 是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。网络层传输单位是数据报。
功能:
功能一:路由选择与分组转发最佳路径
功能二:异构网络互联
功能三:拥塞控制
- 若所有结点都来不及接受分组,而要丢弃大量分组的话,网络就处于拥塞状态。因此要采取一定措施,缓解这种拥塞。
1.1 数据交换
交换方式:
-
电路交换
-
报文交换
-
分组交换
-
数据报交换方式
-
虚电路交换方式
电路交换:
报文交换:
分组交换:
三种交换对比
1.2 数据报方式 & 虚电路方式
数据报 方式为网络层提供无连接服务。
虛电路 方式为网络层提供连接服务。
无连接服务:不事先为分组的传输确定传输路径,每个分组独立确定传输路径,不同分组传输路径可能不同。
连接服务:首先为分组的传输确定传输路径 (建立连接),然后沿该路径 (连接) 传输系列分组,系列分组传输路径相同,传输结束后拆
除连接。
数据报:
虚电路:
虚电路将数据报方式和电路交换方式结合,以发挥两者优点。
虚电路:一条源主机到目的主机类似于电路的路径 (逻辑连接),路径上所有结点都要维持这条虚电路的建立,都维持一张虚电路表, 每一项记录了一个打开的虚电路的信息。
对比:
1.3 路由 算法
最佳路由:"最佳" 只能是相对于某一种特定要求下得出的较为合理的选择而已。
二、IP 数据报
2.1 IP 数据包格式
2.2 IP 数据包分片
最大传送单元 MTU:
链路层数据帧可封装数据的上限。
以太网的 MTU 是 1500 字节。
2.4 IP 地址
TA4Nw==,size_16,color_FFFFFF,t_70)
三、网络层设备
3.1 路由器
路由器 是一种具有多个输入端口和多个输出端口的专用计算机,其任务是转发分组。
五、计算机网络之传输层解析
猿小许于 2021-07-10 22:31:22 发布
一、传输层概述
传输层功能:
1、传输层提供进程和进程之间的逻辑通信。
2、分用和复用
3、传输层对收到的报文进行差错检测
4、传输层的两种协议
-
TCP 协议
-
UDP 协议
TCP 协议
面向连接的传输控制协议 TCP 传送数据之前必须建立连接,数据传送结束后要释放连接。不提供广播或多播服务。由于 TCP 要提供可靠的面向连接的传输服务,因此不可避免增加了许多开销**:确认、流量控制、计时器及连接管理**等。
特点 :可靠,面向连接,时延大,适用于大文件。
UDP 协议
无连接的用户数据报协议 UDP
传送数据之前不需要建立连接,
收到 UDP 报文后也不需要给出任
何确认。
特点:不可靠,无连接,时延小,适用于小文件。.
1.1 传输层的寻址与端口
复用:应用层所有的应用进程都可以通过传输层再传输到网络层。
分用:传输层从网络层收到数据后交付指明的应用进程。
端口号:只有本地意义,在因特网中不同计算机的相同端口是没有联系的。
1.2 UDP 协议
UDP 只在 IP 数据报服务之上增加了很少功能,即复用分用和差错检测功能。
UDP 的主要特点:
-
1.UDP 是无连接的,减少开销和发送数据之前的时延。
-
2.UDP 使用最大努力交付,即不保证可靠交付。
-
3.UDP 是面向报文的,适合一次性 传输少量数据的网络应用。
-
UDP 无拥塞控制,适合很多实时应用
-
应用层给 UDP 多长的报文,UDP 就照样发送,即一发一个完整报文。
UDP 首部格式
分用时,找不到对应的目的端口号,就丢弃报文,并给发送方发送 ICMP "端口不可达" 差错报告报文。
UDP 校验
二、TCP 协议
1.TCP 是面向连接(虚连接) 的传输层协议。
- 每一条 TCP 连接只能有两个端点,每一条 TCP 连接只能是点对点的。
3.TCP 提供可靠交付 的服务,无差错、不丢失、不重复、按序到达。可靠有序,不丢不重。
4.TCP 提供全双工通信。
-
发送缓存准备发送的数据 & 已发送但尚未收到确认的数据
-
接收缓存按序到达但尚未被接受应用程序读取的数据 & 不按序到达的数据
5.TCP 面向字节流 TCP 把应用程序交 下来的数据看成仅仅是一连串的无结构的字节流。
流:流入到进程或从进程流出的字节序列。
2.1 TCP 报文段首部格式
序号 :在一个 TCP 连接中传送的字节流中的每一个字节都按顺序编号,本字段表示本报文段所发送数据的第一个字节的序号。
确认号:期望收到对方下一个报文段的
第一个数据字节的序号。若确认号为 N,
则证明到序号 N-1 为止的所有数据都已正
确收到。
数据偏移 (首部长度):TCP 报 文段的数
据起始处距离 TCP 报文段的起始处有多远,
以 4B 位单位,即 1 个数值是 4B。
6 个控制位:
-
紧急位 URG:URG=1 时,标明此报文段中有紧急数据,是高优先级的数据,应尽快传送,不用在缓存里排队,配合紧急指针字段使用。
-
确认位 ACK:ACK=1 时确认号有效,在连
接建立后所有传送的报文段都必须把 ACK 置为 1。
- 推送位 PSH:PSH=1 时, 接收方尽快交付
接收应用进程,不再等到缓存填满再向上交付。
- 复位 RST:RST=1 时, 表明 TCP 连接中出现
严重差错,必须释放连接,然后再重新
建立传输链接。
- 同步位 SYN:SYN=1 时, 表明是 - 一个连接
请求 / 连接接受报文。
- 终止位 FIN:FIN=1 时, 表明此报文段发
送方数据已发完,要求释放连接。
窗口:
指的是发送本报文段的一方的接收窗口,即现在允许对方发送的数据量。
2.2 TCP 连接管理
TCP 连接的建立采用客户服务器方式,主动发起连接建立的应用进程叫做客户,而被动等待连接建立的应用进程叫服务器。
SYN 攻击
SYN 洪泛攻击发生在 OSI 第四层,这种方式利用 TCP 协议的特性,就是三次握手。攻击者发 TCP
SYN,SYN 是 TCP 三次握手中的第一个数据包,而当服务器返回 ACK 后,该攻击者就不对其进行再确认,那这个 TCP 连接就处于挂起状态,也就是所谓的半连接状态,服务器收不到再确认的话,还会重复发送 ACK 给攻击者。这样更加会浪费服务器的资源。攻击者就对服务器发送非常大量的这种 TCP 连接,由于每 - 一个都没法完成三次握手,所以在服务器上,这些 TCP 连接会因为挂起状态而消耗 CPU 和内存,最后服务器可能死机,就无法为正常用户提供 服务了。
2.3 TCP 的连接释放
2.4 TCP 可靠传输
确认:
重传:
确认重传不分家,TCP 的发送方在规定的时间内没有收到确认就要重传已发送的报文段。
重传时间 : TCP 采用自适应 算法,动态改变重传时间 RTTs (加权平均往返时间)。
2.5 TCP [流量控制](https://so.csdn.net/so/search?q = 流量控制 & spm=1001.2101.3001.7020)
流量控制:让发送方慢点,要让接收方来得及接收。
TCP 利用滑动窗口机制实现流量控制。
在通信过程中,接收方 根据自己接收缓存的大小 ,动态地调整发送方的发送窗口大小,即接收窗口rwnd (接收方设置确认报文段的窗口字段来将 rwnd 通知给发送方), 发送方的发送窗口取接收窗口 rwnd 和拥塞窗口 cwnd 的最小值。
TCP 为每一一个连接设有一个持续计时器,只要 TCP 连接的一方收到对方的零窗口通知,就启动
持续计时器。
若持续计时器设置的时间到期,就发送一个零窗口探测报文段。
接收方收到探测报文段时给出现在的窗口值。
若窗口仍然是 0,那么发送方就重新设置持续计时器。
2.6 TCP 拥塞控制
六、计算机网络之应用层解析
猿小许于 2021-07-10 22:53:52 发布
一、传输层概述
应用层对应用程序的通信提供服务。
应用层协议定义:
-
应用进程交换的报文类型,请求还是响应?
-
各种报文类型的语法,如报文中的各个字段及其详细描述。
-
字段的语义,即包含在字段中的信息的含义。
-
进程何时、如何发送报文,以及对报文进行响应的规则。
应用层的功能:
-
文件传输、访问和管理
-
电子邮件
-
虚拟终端
-
查询服务和远程作业登录
应用层的重要协议:
-
FTP
-
SMTP、POP3
-
HTTP
-
DNS
1.1 网络应用模型
客户 / 服务器 (C/S) 模型
P2P 模型
1.2 DNS 系统
1.3 文件传送协议
文件传送协议 FTP (File Transfer Protocol)
简单文件传送协议 TFTP (Trivial File Transfer Protocol)
文件传送协议 FTP ( File Transfer Protocol) 提供不同种类主机系统 (硬、软件 体系等都可以不同) 之间的文件传输能力。
FTP 是基于客户 / 服务器 (C/S) 的协议。
用户通过一个客户机程序连接至在远程计算机上运行的服务器程序。
依照 FTP 协议提供服务,进行文件传送的计算机就是 FTP 服务器。
连接 FTP 服务器,遵循 FTP 协议与服务器传送文件的电脑就是 FTP 客户端。
1.4 万维网和 HTTP 协议
万维网 wwW (World Wide Web) 是一一个大规模的、联机式的信息储藏所 / 资料空间 ,是无数个网络站点和网页的集合。
超文本传输协议 HTTP
HTTP 采用 TCP 作为运输层协议,但 HTTP 协议本身 是无连接的 (通信双方在交换 HTTP 报文之前不需先建立 HTTP 连接)。
HTTP 协议的连接方式
超文本传输协议 HTTP 一报文结构
超文本传输协议 HTTP - 报文结构
via:
-
一、计算机网络概述_一个网络的系统概述 - CSDN 博客 猿小许于 2021-06-03 18:39:47 发布
https://blog.csdn.net/weixin_44205087/article/details/117531863 -
二、物理层详解 猿小许于 2021-06-27 22:40:27 发布
https://blog.csdn.net/weixin_44205087/article/details/118280947 -
三、解析数据链路层_数据链路层详解 - CSDN 博客
https://blog.csdn.net/weixin_44205087/article/details/118614754 -
四、计算机网络之网络层解析-CSDN 博客
https://blog.csdn.net/weixin_44205087/article/details/118633780 -
五、计算机网络之传输层解析_画图解释传输层的复用和分用 - CSDN 博客
https://blog.csdn.net/weixin_44205087/article/details/118641186 -
六、计算机网络之应用层解析_应用层报报文字段类型、功能码、数据内容进行解析 - CSDN 博客
https://blog.csdn.net/weixin_44205087/article/details/118642047