@[TOC]计算机网络——计算机网络体系结构
计算机网络的概念
是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。
计算机网络是互连的、自治的计算机集合。
互连-互联互通 通信链路(有线无线)
自治-无主从关系
计算机网络的功能
1.数据通信(连通性)
2.资源共享 硬件 软件 数据
- 分布式处理 多台计算机各自承担同一工作任务的不同部分 (Hadoop平台)
- 提高可靠性 (替代机)
5.负载均衡 (分布式带来的效果,各个计算机之间更加亲密)
……
计算机网络的组成
组成部分
软件、硬件、协议(一系列规则和约定的集合)
工作方式
边缘部分 用户可以直接使用
####C/S方式
####P2P方式
核心部分 为边缘部分服务
功能组成
通信子网(各种传输介质、通信设备、相应的网络协议组成):实现数据通信
资源子网(实现资源共享功能的设备和软件的集合):实现资源共享/数据处理
功能:数据通信、资源共享
计算机网络的分类
1.按分布范围分 广域网WAN(交换技术) 城域网MAN 局域网LAN(广播技术) 个人区域网PAN
2.按使用者分 公用网(中国电信)专用网(军队、政府)
3.按交换技术分 电路交换(独占) 报文交换(报文) 分组交换(分组:更小的报文)
4.按拓扑结构分 总线型 星型(n个结点 n-1个链路) 环形 网状型(常用于广域网)
5.按传输技术分 广播式网络 共享通信通道
点对点网络 使用分组存储转发和路由选择机制
标准化工作
要实现不同厂商的硬、软件之间相互连通,必须遵从统一的标准。
标准的分类
1.法定标准 OSI
由权威机构定制的正式的、合法的标准
2.事实标准 TCP/IP协议
某些公司的产品在竞争中占据了主流,时间长了,这些产品中的协议和技术就成了标准
标准化工作
我可以制定一个标准吗?√!
RFC(Request For Comments)——因特网标准的形式
RFC上升为因特网正式标准的四个阶段:
1)因特网草案 这个阶段还不是RFC文档
2)建议标准 从这个阶段开始成为RFC文档
3)草案标准 拿到IETF、IAB机构审核,通过后成为因特网标准,现在本阶段已取消
4)因特网标准
标准化工作的相关组织
国际标准化组织ISO OSI参考模型、HDLC协议
国际电信联盟ITU 制定通信规则
电气电子工程师学会IEEE 学术机构、IEEE802系列标准、5G
Internet工程任务组IETF 负责因特网相关标准的制定 RFC XXXX
计算机网络的性能指标
速率
速率即数据率或称数据传输率或比特率。
比特 表现形式 1/0
连接在计算机网络上的主机在数字信道上传送数据位数的速率。
单位是b/s,kb/s,Mb/s,Gb/s,Tb/s
存储容量:一般采用字节(大小上一般2进制 1k=2的十次方)
速率:一般采用比特(速率上一般10进制1k=10的三次方)
1Byte(字节)=8bit(比特)
带宽
(1)"带宽"原本指某个信号具有的频带宽度,即最高频率与最低频率之差,单位是赫兹(Hz)。
(2)计算机网络中,带宽用来表示网络的通信线路传送数据的能力,通常是指单位时间内从网络中的某一点到另一点所能通过的“最高数据率”。单位是“比特每秒”,b/s,kb/s,Mb/s,Gb/s。
网络设备所支持的最高速度
吞吐量
表示在单位时间内通过某个网络(或信道、或接口)的数据量。表示速度的单位。单位b/s,kb/s,Mb/s。
吞吐量受网络的带宽或网络的额定速率的限制。
时延
指数据(报文/分组/比特流)从网络(或链路)的一端传送到另一端所需的时间。也叫延迟或迟延。单位是s。
发送时延(传输时延)
·主机内部
发送时延=数据长度/信道带宽(发送速率)
传播时延
·机器外部(信道上)
取决于电磁波传播速度和链路长度
为什么是电磁波在传播不是比特流在传播:电磁波是数据的载体
电磁波传播速度(通常为)=2*10的八次方/s
传播时延=信道长度/电磁波在信道上的传播速度
路由器部分主要有排队时延和处理时延
排队时延
等待输出/入链路可用
处理时延
检错
找出口
高速链路:发送速率(信道带宽)提高,并不影响电磁波传播速率(传播时延)。
时延带宽积
又称为以比特为单位的链路长度
即“某段链路现在有多少比特”
时延带宽积=传播时延x带宽
bit s b/s
“容量”
往返时延RTT
从发送方发送数据开始(第一个bit放到信道上开始),到发送方收到接收方的确认(接收方收到(第一个bit)数据后立即发送确认),总共经历的时延。
RTT越大,在收到确认之前,可以发送的数据越多。
RTT
-
往返传播时延=传播时延*2
-
末端处理时间
-
(不包括传输时延)
利用率
信道利用率
有数据通过的时间/ (有+无)数据通过的时间
网络利用率
信道利用率加权平均值
利用率与时间的关系
计算机网络的分层结构
为什么要分层?
把传输文件需要解决的大问题分成若干小问题来解决(按功能分层)
怎么分层?
基本原则
1.各层互相独立,每层只实现一种相对独立的功能。
2.每层之间界面自然清晰,易于理解,相互间交流尽可能少。
3.结构上分开,每层都采用最合适的技术来实现。
4.保持下层对上层的独立性,上层单项使用下层提供的服务。
5.整个分层结构应能促进标准化工作。
分层结构
1.实体:第n层的活动元素称为n层实体。同一层的实体叫对等实体。
2.协议:为进行网络中的对等实体数据交换而建立的规则、标准或约定称为网络协议。【水平】
·语法:规定传输数据的格式
·语义:规定所要完成的功能
·同步:规定各种操作的顺序
3.接口(访问服务点SAP):上层使用下层服务的入口
4.服务:下层为相邻上层提供的功能调用。【垂直】
协议
对等实体间才有协议
服务
每两个层次之间提供的东西
在计算机网络中,上层要求服务,下层提供服务
SDU服务数据单元:为完成用户所要求的功能而应传送的数据。
PCI协议控制信息:控制协议操作的信息。
PDU协议数据单元:对等层次之间传送的数据单位。
概念总结
-
网络体系结构是从功能上描述计算机网络结构。
-
计算机网络体系结构简称网络体系结构是分层结构。
每层都会遵循某个/某些网络协议。 -
计算机网络体系结构是计算机网络的各层及其协议的集合。
-
第n层在向n+1层提供服务时,此服务不仅包含第n层本身的功能,还包含由下层服务提供的功能。
-
仅仅在相邻层间有接口,且所提供服务的具体细节对上一层完全屏蔽。
-
体系结构是抽象的,而且实现是指能运行的一些软件和硬件。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aGwv4SIh-1635658120658)(图片/image-20211024125214501.png)]
计算机网络分层结构
法定标准:7层OSI参考模型
事实标准:4层TCP/IP参考模型
OSI参考模型
目的:支持异构网络系统的互联互通
国际标准化组织(ISO)于1984年提出开放系统互连(OSI)参考模型
-
应用层
-
表示层
-
会话层
-
传输层
-
网络层
-
链路层
-
物理层
中间系统没有上面四层,上面四层实现的是端到端的通信
下面三层则是点到点的方式(经过中间系统)
应用层
所有能和用户交互产生网络流量的程序。
典型应用层服务(协议):
文件传输(FTP)
电子邮件(SMTP)
万维网(HTTP)
……
表示层
用于处理在两个通信系统中交换信息的表示方式(语法和语义)。
功能
-
数据格式变换
”翻译官“
-
数据加密解密
-
数据压缩和恢复
会话层
向表示层的实体/用户进程提供建立连接并且在连接上有序的传输数据。这是会话,也是建立同步(SYN)
传输层
负责主机中的两个进程的通信,即端到端通信。传输单位是报文段或用户数据。
功能:
-
可靠传输(接收端返回确认,基于确认机制的传输)、不可靠传输(无确认机制,发送小的数据)
-
差错控制
-
流量(速度匹配问题)控制
-
复用分用
复用:多个应用层进程可同时使用下面运输层的服务
分用:运输层把收到的信息分别交付给上面应用层中相应的进程。
主要协议:TCP UID
网络层(IP层)
主要任务是把分组从源端传到目的端,为分组交换网上的不同主机提供通信服务。
网络层的传输单位是数据报。
功能
-
路由选择
- 选出最佳路径
-
流量控制
- 协调速度
-
差错控制
-
拥塞控制
- 针对宏观速度进行控制,对网络拥塞状态采取一定缓解措施
协议
IP、IPX、IGMP……
数据链路层
主要任务是把网络层传下来的数据报组装成帧。
传输单位是帧。
功能
-
成帧(定义帧的开始和结束)
-
差错控制
- 帧错+位错
-
流量控制
-
访问(接入)控制
- 控制对共享信道的访问
物理层
主要任务是在物理媒体上实现比特流的透明传输。
传输单位是比特。
透明传输:指不管所传数据是什么样的比特组合,都能在链路上传送。(给什么发什么)
功能
-
定义接口特性
-
定义传输模式
- 单工:单方向,发送端、接收端确认好的
- 半双工:两方都可以做发送端、接收端,但同一时间只能有一方发送
- 双工:类似打电话
-
定义传输速率
-
比特同步
-
比特编码
主要协议:Rj45、802.3
概括总结
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q7RPbLtu-1635658120660)(图片/image-20211024142106041.png)]
TCP/IP参考模型
- 应用层
- 应用层
- 表示层
- 会话层
- 传输层
- 网际层
- 网络接口层
- 数据链路层
- 物理层
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vx5qBgpd-1635658120661)(图片/image-20211024142857584.png)]
5层参考模型
应用层
支持各种网络应用
传输层
进程-进程的数据传输
网络层
源主机到目的主机的数据分组路由转发
数据链路层
把网络层传下来的数据报组装成帧
物理层
比特传输
第一章知识总结
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-T4Bd86jm-1635658120664)(图片/image-20211024143727868.png)]
物理层
物理层解决如何在连接各种计算机的传输媒体上传送数据比特流,而不是指具体的传输媒体。
主要任务
确定与传输媒体接口有关的一些特性= >定义标准
- 机械特性 (引线特性、引脚数量etc)
- 电气特性
- 功能特性
- 规程特性(过程特性,时序、规程)
数据通信的基础知识
-
数据通信的目的是传送消息
-
数据:传送信息的实体,通常是有意义的符号序列
-
信号:数据的电气/电磁的表现,是数据在传输过程中的存在形式。
- 数字信号:代表消息的参数取值是离散的。
- 模拟信号:代表消息的参数取值是连续的。
-
调制解调器(数字信号和模拟信号的转换 ,“猫”)
-
信源 发送器 传输系统 接收器 信宿
- 信宿:接收数据的终点
-
信道:信息的传输媒介
三种通信方式
- 单工通信 一条信道
- 半双工通信 两条信道
- 全双工通信 两条信道
两种数据传输方式
- 串行传输
- 速度慢,费用低,适合远距离
- 并行传输
- 速度快,费用高,适合近距离
- 用于计算机内部数据传输
码元
1码元可以携带多个比特的信息量
是指用一个固定时长的信号波形(数字脉冲),代表不同离散数值的基本波形,这个时长内的信号称为k进制码元,而该时长称为码元宽度。当码元的离散状态有M个时(M大于2),此时码元为M进制码元。
速率、波特、带宽
速率也叫数据率,是指数据的传输速率(把数据从主机发送到信道的速率,区别于传播速率),表示单位时间内的数据量。可以用码元传输速率和信息传输速率表示。
-
码元传输速率(调制速率,波形速率,码元速率,符号速率等):单位波特(Baud)。它表示单位时间内数字通信系统所传输的码元个数(也可称为单位时间内脉冲个数或信号变化次数)。1波特表示数字通信系统每秒传输一个码元。这里的码元可以是多进制的,也可以是二进制的,但码元速率与进制数无关。
1s传输多少码元
-
信息传输速率(信息速率、比特率等):表示单位时间内数字通信系统传输的二进制码元个数(即比特数),单位是比特/秒(b/s)。
1s传输多少比特
-
关系:若一个码元携带n bit的信息量,则M Buad的码元传输速率所对应的信息传输速率为Mxn bit/s。
带宽:表示在单位时间内从网络中的某一点到另一点所能通过的“最高数据率”,常用来表示网络的通信线路所能传输数据的能力。单位是b/s。
练习题:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-cHoXHIDt-1635658120665)(图片/image-20211024221437350.png)]
-
答案:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tdBFJraV-1635658120667)(图片/image-20211024222000438.png)]
-
分析:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wcqISTAp-1635658120667)(图片/image-20211024222153531.png)]
系统传输的是比特流,通常比较的是传输速率。
编码&调制
基带信号与宽带信号
信道:信号的传输媒介。一般用来表示向某一个方向传送信息的介质,因此一条通信线路往往包含一条发送信道和一条接收信道。
- 传输信号:模拟信道和数字信道
- 基带信号:将数字信号送到数字信道上去传输(基带传输)。来自信源的信号,直接表达了要传输信息的信号。(计算机网卡发出的是数字信号)
- 宽带信号:将基带信号进行调制后形成的频分复用模拟信号,再传输到模拟信道上去传输(宽带传输)。基带信号经过载波调制后,把信号的频率范围搬移到较高的频段以便在信道中传输(仅在一段频率范围内能够通过信道)。
在传输距离较近时,计算机网络采用基带传输方式(近距离衰减小,从而信号内容不易发生变化)。
在传输距离较远时,计算机网络采用宽带传输方式(远距离衰减大,即使信号变化大最后也能过滤出来基带信号)。
- 传输介质:无线信道 有线信道
编码与调制
- 数字数据转成数字信号(数字发送器):编码
- 数字数据转成模拟信号(调制器):调制
- 模拟数据用PCM编码器转成数字信号:编码
- 模拟信号用放大器调制器转成模拟信号:调制
奈式准则和香农定理
失真
带宽受限、有噪声、干扰
- 有失真但可识别
- 失真大无法识别
影响因素:
- 码元传输速率
- 信号传输距离
- 噪声干扰
- 传输媒体质量
失真的一种现象——码间串扰
接收端收到的信号波形失去了码元间清晰界限的现象。
奈式准则(奈奎斯特定理)
在理想低通(无噪声、带宽受限)条件下,为了避免码间串扰,极限码元传输速率为2W Baud,W是信道带宽,单位是Hz。
只有在这两个公式带宽采用Hz!
数据链路层
数据链路层的基本概念
- 结点:主机、路由器
- 链路:网络中两个结点间的物理通道。链路的传输介质主要有双绞线、光纤和微波。分为有线链路、无线链路。
- 数据链路:网络中两个结点之间的逻辑通道。把实现控制数据传输协议的硬件和软件加到链路上就构成了数据链路。
- 帧:链路层的协议数据单元,封装网络层数据报。
数据链路层负责通过一条链路从一个结点向另一个物理链路直接相连的相邻结点传送数据报。(搬运工的角色)
功能
- 向网络层提供服务。无确认无连接服务(不需要建立连接,适合误码率比较低的通信信道),有确认无连接服务(不需要建立连接,适合误码率比较高的通信信道),有确认面向连接服务。Note:有连接一定有确认!
- 链路管理,即连接的建立、维持、释放(用于面向连接的服务)
- 组帧
- 组帧的四种方法:1. 字符计数法 2.字符(字节)填充法 3.零比特填充法 4.违规编码法
- 流量控制(限制发送方)
- 差错控制
加强物理层传输原始比特流的功能
封装成帧和透明传输
封装成帧
在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。接收端在收到物理层上交的比特流后,就能根据首部和尾部的标记,从收到的比特流中识别帧的开始和结束。
首部和尾部包含许多控制信息,他们的一个重要作用:帧定界(确定帧的界限)。
帧同步:接收方应当能从接收到的二进制比特流中区分出帧的起始和终止。
组帧的四种方法:1. 字符计数法 2.字符(字节)填充法 3.零比特填充法 4.违规编码法
MTU:最大传送单元
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JjNtphWy-1635658120668)(图片/image-20211025213123556.png)]
透明传输
指不管所传数据是什么样的比特组合,都应当能够在链路上传送。因此,链路层就“看不到”有什么妨碍传输的东西。
当所传数据中的比特组合恰巧与某一个控制信息完全一样时,就必须采取适当的措施,使收方不会将这样的数据误认为是某种控制信息。这样才能保证数据链路层的传输是透明的。
组帧方法
-
字符计数法
帧首部使用一个计数字段(第一个字节,八位)来标明帧内字符数。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DsXvM50o-1635658120670)(图片/image-20211025213752025.png)]
“鸡蛋装在一个篮子里”
-
字符填充法
SOH+装在帧中的数据部分+EOT
-
文本文件(键盘输入的)可以实现透明传输
-
非ASCII码的文本文件(二进制代码和图像等),采用字符填充法实现透明传输
-
- 在发送端 加上转义字符(八位)ESC
- 在接收端 删除掉转义字符(八位)ESC
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dTV1jj1C-1635658120671)(图片/image-20211025214629312.png)]
-
零比特填充法
区别于字符填充法:首尾部都是01111110
操作
-
在发送端,扫描整个信息字段,只要连续5个1,就立即填充一个0.
-
在接收端收到一个帧时,先找到标志字段确定边界,再用
硬件对比特流进行扫描。发现5个1时,就把后面的0删除。
保证了透明传输:在传送的比特流中可以任意传送任意比特组合,而不会引起对帧边界的判断错误。
-
违规编码法
用编码当中不会用到的电平方式来定界帧的起始和终止。
曼彻斯特编码中‘高-低’表示1,‘低-高’表示0。则可用‘高-高’,‘低-低’来定界帧的起始和终止。
综上,由于字节计数法中Count字段的脆弱性(其值若有差错将导致灾难性后果)及字符填充实现的复杂性和不兼容性,目前较普遍使用的帧同步方法是零比特填充和违规编码法。
差错控制(检错编码)
差错从何而来?
概括来说,传输中的差错都是由于噪声引起的。
噪声:
-
全局性
- 由于线路本身电气特性所产生的随机噪声(热噪声),是信道固有的,随即存在的。
- 解决办法:提高信噪比来减少或避免干扰(对传感器下手)
-
局部性
- 外界特定的短暂原因所造成的冲击噪声,是产生差错的主要原因。
- 解决办法:通常利用编码技术来解决。
差错:
位错:比特位出错,1变成0,0变成1.
帧错:丢失、重复、失序
链路层为网络层提供服务:无确认无连接服务(通信质量好,有线传输链路),有确认无连接服务和有确认面向连接服务(通信质量差的无线传输链路)
数据链路层的差错控制
比特错:
* 检错编码 奇偶校验码、循环冗余码CRC
* 纠错编码 海明码
编码:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6wjys8EI-1635658120671)(图片/image-20211025230438950.png)]
-
奇偶校验码
- 奇校验码
- 偶校验码
特点:只能检查出奇数个比特错误,检错能力为50%。
-
CRC循环冗余码
-
CFC生成过程:
- 最终发送的数据:要发送的数据+帧检验序列FSC
- 计算过程:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-b8trXhME-1635658120672)(图片/image-20211025232122255.png)]
-
接收端检错过程:
- 余数为0,判定帧没有错,接受
- 余数不为0,判定帧出错(无法确定到位),丢弃
-
FCS的生成以及接收端CRC检验都是用硬件实现,处理迅速,不会延误数据的传输。
-
”凡是接收端数据链路层接受的帧均无差错“——默认
可靠传输:数据链路层发送端发送什么,接收端就接收什么。
链路层使用CRC检验,能够实现无差错传输,但不是可靠传输(因为有差错的会被丢弃而不是直接接收)。