计算机网络-网络分层
常见的计算机网络体系结构
开放系统互连参考模型(OSI)
从下到上依次为:
物理层 数据链路层 网络层 运输层 会话层 表示层 应用层
TCP/IP体系结构
从上到下依次为:
- 应用层:包含大量应用协议(HTTP,SMTP,DNS,RTP,FTP等)
- 运输层:TCP UDP是主要协议
- 网际层:IP协议是这层的主要协议
- 网络接口层:本身无特殊性,仅供接入网络
注意:
- TCP/IP体系结构去除了表示层,会话层,其网络接口层相当于合并了数据链路层与物理层
- 路由器一般只包含网络接口层与网际层
- TCP协议在享受IP协议提供的网络互连服务的基础上,为应用层相应协议提供可靠的传输服务
- UDP协议在享受IP协议提供的网络互连服务的基础上,为应用层相应协议提供不可靠的传输服务
- IP协议作为TCP/IP体系结构中的核心协议,一方面为各种网络应用提供服务(Everything over IP),另一方面互连不同的网络接口(IP over Everything ),在嵌入式开发领域,由于基于IP的结构形似一个栈,故又将此关系称为TCP/IP协议栈
原理体系结构
从上到下:
- 应用层:解决应用进程间交互实现特定网络应用的问题
- 运输层:解决多个进程间基于网络通信的问题
- 网络层:解决多个网络上(路由上)的分组传输问题
- 数据链路层:解决分组在一个网络或链路上的传输问题
- 物理层:解决 用何种信号来传输比特问题
注意:
- 严格来讲,传输媒体不属于物理层,它属于体系之外
- 计算机网络中传输的信号,并不是方波信号
基于原理体系结构的网络通信
如图所示的是简略的两应用层进程间的通信,发送方的数据逐层向下传递,接收方的数据逐渐向上传递,路由器处数据有双向过程(我们以浏览器发起HTTP请求为例)
发送方流程:
- 发送方在应用层产生一个HTTP报文,在运输层添加TCP首部,使报文变为TCP报文段,该首部的作用主要是为了区分应用进程,以及实现可靠传输
- TCP报文段来到网络层,网络层为TCP报文添加一个IP首部,使报文变成IP数据报,该首部的作用是使IP数据报可以在互连网上传输(即可以被路由器转发)
- IP数据报来到数据链路层,数据链路层给IP数据报添加一个首部和一个尾部,使IP数据报封装成为帧,作用是让帧可以在一段链路上或一个网络上传输,可以被相应的目的主机接收(首部包含6字节目的地址,6字节源地址,2字节类型,尾部包含4字节FCS),作用是让目的主机检查接收到的帧是否存在误码
- 物理层在最后给帧加上前导码,让目的主机做好接收帧的准备,然后物理层将加入前导码的比特流发送出去
路由器流程:
- 路由器物理层去除前导码,向上传递帧到链路层,链路层去除帧的封装,向上传递IP报文
- 网络层接收IP报文后,从中提取目的的网络地址,查找自身路由表,确定转发端口后再次被封装成帧向下传递,再由物理层发送至下一路由器或服务端
接受方流程:
比特流到达接收方后,经过发送方流程的逆序过程,获取到信息,然后生成响应报文,又逐层向下封装,由物理层发送出去
计算机网络中的专有名词
实体
实体是指任何可发送或接收信息的硬件或软件进程,收发双方中基于同一计算机网络体系的相同层次又叫做对等实体(例如:基于原理体系结构时,发送方的数据链路层与接收方的数据链路层则是一对对等实体
协议
协议是指控制两个对等实体进行逻辑通信的规则的集合(即对等实体的通信往往使用相同协议)
- 应用层:使用应用层协议HTTP,SMTP等协议进行通信
- 运输层:使用运输层协议TCP,UDP等协议进行通信
- 网络层:使用网络层协议IP协议进行通信
- 链路层:使用链路层协议协议进行通信(例如传统以太网的CSMA/CD协议)
- 物理层:使用物理层协议进行通信(例如传统以太网的曼彻斯特编码)
注意:之所以称为逻辑通信,是因为该通信其实并不存在,它是我们假设出来的,使我们单独研究某一层时不用考虑其他层)
协议三要素
-
语法:定义所交换信息的格式
-
语义:定义收发双方所要完成的操作
-
同步:定义通讯双方的时序关系(这里并不是指频率始终同步,如TCP协议的实现)
协议的特性
在协议的控制下,两个对等实体间的逻辑通信使得本层能够向上层提供服务,而物理层之上的层级要实现自身的协议,必须要使用他们的下一层所提供的服务(即协议是水平的,服务是垂直的)
注意:
- 虽然上层享受着下层的服务,但是上层并不知道下层的协议是怎样实现这个服务的,即下层的协议相对于上层是透明的,上层是看不见下层的协议的
- 上层在使用下层提供的服务时,必须与下层交换一些命令,这些命令我们称为服务原语
协议数据单元PDU
对等层次之间传送的数据包,我们称之为该层的协议数据单元,应用层的叫报文,运输层的叫TCP报文段或UDP用户数据报,网络层叫IP数据报或分组,链路层则称之为帧,物理层则是比特流
服务数据单元SDU
同一系统内,层与层之间交换的数据包称为服务数据单元,并且多个服务数据单元可以合成为一个协议数据单元,一个服务数据单元也可以划分为几个协议数据单元
计算机网络-物理层
物理层的概念
物理层考虑的是怎样在各种计算机的传输媒体上传输数据比特流,物理层为数据链路层屏蔽了各种传输媒体的差异
物理层协议任务
- 机械特性:指明接口所用接线器的形状和尺寸,引脚数目和排列,固定和锁定装置
- 电气特性:指明在接口电缆的各条线上出现的电压范围
- 功能特性:指明某一条线上出现的某一电平的电压表示的意义
- 过程特性:指明对于不同功能的各种可能事件的出现顺序
物理层下的传输媒体
引导型传输媒体
同轴电缆
它内部的导体通常为内导体铜质芯线,可以是单股实心线或多股绞合线,它有两种类别:
基带同轴电缆(50欧):数字传输,过去用于局域网
宽带同轴电缆(75欧):模拟传输,主要用于有线电视
同轴电缆价格较贵且布线不够灵活和方便,随着集线器的出现,在局域网领域基本上采用双绞线作为传输媒体
双绞线
主要种类:无屏蔽双绞线UTP电缆,屏蔽双绞线STP电缆
绞合方式:由蓝与蓝白,橙和橙白,绿和绿白,棕和棕白分别绞合
绞合的作用:抵御部分来自外界的电磁波干扰,减少相邻导线的电磁干扰
常见双绞线:
类别 | 传输频率 | 语音传输 | 最高传输速率 | 常见应用 |
---|---|---|---|---|
一类线 | —— | ✓ | 不适用 | 八十年代初之前的电话线缆 |
二类线 | 1MHz | ✓ | 4Mbps | 使用4MBPS规范令牌传递协议的旧的令牌网 |
三类线 | 16MHz | ✓ | 10Mbps | 10BASE-T |
四类线 | 20MHz | ✓ | 16Mbps | 基于令牌的局域网和10BASE-T/100BASE-T |
五类线 | 100MHz | ✓ | 10Mbps | 100BASE-T和10BASE-T |
超五类线 | 125MHz | ✓ | 1000Mbps | 千兆位以太网(1000Mbps) |
六类线 | 1MHz-250MHz | ✓ | 高于1Gbps | 传输速率高于1Gbps的应用 |
光缆
如图所示的光缆结构,在其内部必要时还可以加上远供电源线
单条光线在一条光纤中传播的称之为单模光纤,许多条不同入射角的光线在同一条光纤中传播的叫做多模光纤
类型 | 纤心直径 | 工作波长 |
---|---|---|
单模光纤 | 9μm | 1310nm,1550nm |
多模光纤 | 50/125μm | 850nm,1300nm |
多模光纤 | 62.5/125μm | 850nm,1300nm |
多模光纤 | 85/125μm | 850nm,1300nm |
多模光纤 | 100/140μm | 850nm,1300nm |
注意:工作波长850nm时衰减较大,1300nm,1550nm时衰减较小
光纤的优缺点:
优点 | 缺点 |
---|---|
体积小,重量轻,通信容量大 | 切割需要专用的光缆设备 |
传输损耗小,距离远 | 光电接口的价格较高 |
抗雷电和电磁干扰性能好 | 机械强度不高,易破碎 |
无串音干扰,保密性好,不易被窃听 |
检测光纤的方法:在发射端使用发光二极管或半导体激光器发射激光,在接收端使用光电二极管或激光检波器检测光脉冲
单模光纤与多模光纤的比较:
类型 | 特点 |
---|---|
多模光纤 | 由于模式,材料,波导色散,光在多模光纤中传播一定距离后必定失真(脉冲带宽),因此只适合近距离传输,使用发光二极管和光电二极管检测 |
单模光纤 | 没有模式色散,因此适合长距离传输且衰减小,但是成本高,对光源要求高,使用激光发生器与激光检波器检测 |
非引导型传输媒体
非引导型传输媒体主要用的是:无线电波,微波,红外,可见光
-
无线电波:低,中频段依靠地面波进行传播,高,甚高频依靠高空处的电离层反射进行传播
-
微波:不能通过电离层传播,只能通过地面波或卫星通信进行传播。地面通信时,由于微波在空间是直线传播(地球是曲面),所以传播距离有限,必须在微波通信的信道两个终端之间建立若干个中继站,前一个中继站接收并且放大信号再传播到先一个中继站。卫星通信时,通信距离远,因此时延较大
-
红外线:用于计算机间的红外线通信已经淘汰。他的特点是:点对点无线传输,直线传输且不能有阻碍物,传输速率较低
传输方式
并行与串行
- 串行传输:指的是一个比特一个比特依次发送的,因此在发送与接收间只需要一条数据传输的线路即可
- 并行传输:指一次发送n个比特,因此在发送与接收之间需要有n条传输线路,并行传输的传输效率是串行传输的n倍(缺点是成本较高)
注意:在远距离传输数据时用的是串行传输,计算机内部用的是并行传输(常见的数据总线是8,16,32,64)
同步与异步
- 同步传输:数据块以稳定的比特流形式传输,字节之间没有间隔,接收端在每个比特信号的中间时刻进行检测,用来判别接收到的是比特0还是1,由于不同设备的时钟频率存在一定差异,不可能做到完全相同,在传输大量数据的过程中,所产生的判别时刻累计误差,会导致接收端对比特信号的判别错位,因此需要保证发送与接收双方的时钟保持同步
同步方法:
外同步:在收发双方之间添加一条单独的时钟信号线
内同步:发送端将时钟同步信号编码到发送数据中一起传输(曼彻斯特编码)
- 异步传输:以字节为独立的传输单位,字节间的时间间隔不是固定的,接收端仅在每个字节的起始处对字节内的比特实现同步,为此需要在每个字节前后分别加上起始位和结束位,
异步特性:
字节之间异步,即时间间隔不固定
字节中的每个比特仍然要同步,各比特的持续时间是相同的
通信方向
单向通信(单工):通信双方只有一个数据传输方向,只需要一个信道
双向交替通信(半双工):通信双方可以相互传递数据,但是不能同时进行,需要两个信道,两个方向各一条
双向同时通信(全双工):通信双方可以同时发送和接收信息,需要两个信道,两个方向各一条
编码与调制
基本概念
-
消息:计算机中处理传输的文字等称之为消息
-
数据:运送消息的实体(二进制)
-
信号:网卡将数据的比特流发送到网线,则此时信号是数据的电磁表现。注意:信源发送的原始电信号称为基带信号,信号分为数字基带信号与模拟基带信号
-
数字基带信号:例如计算机内部CPU与内存之间传输的信号
-
模拟基带信号:例如麦克风收到声音后产生的音频信号
-
信道:信号需要在对应的信道中传输,分为数字信道与模拟信道两种
-
数字信号编码:在不改变信号性质的前提下,仅对数字基带信号的波形进行变换,称为编码,编码后的信号仍是原有信号类别
-
数字信号调制:将数字基带信号的频率范围搬移到较高的频段,并且转换为模拟信号叫做调制,在模拟信道中传输
-
模拟信号编码:通过采样,量化,编码三个步骤进行数字化的过程叫编码
-
模拟信号调制:例如:将语音数据加载到模拟的载波信号中传输,频分复用技术充分利用带宽资源
-
码元:在使用时间域的波形表示数字信号时,代表不同离散数值的基本波形(码元就是构成信号的一段波形),一个信号可以有多个码元
注意:传输媒体不能够和信道直接划等号,例如:单向通信时的传输媒体中只有一条信道,双向交替/同时的传输媒体有两个信道,并且使用信道复用技术时,一体条传输媒体还可以有多个信道。在计算机网络中,常见的是将数字基带信号通过编码或调制的方法在相应的信道进行传输。
常见编码方式
- 不归零编码
如上示意图,此编码只有正负两种电平,码元的出现是无序的,所以需要额外的传输线来传输信号使得双方严格同步,由于存在此同步问题,该编码方式通常不用于数据传输
- 归零编码
在这种编码情况下,每个码元传输后都会归零,确保同步时只需要在归零后取样即可,相当于将同步信号储存在了数据之中(自同步信号),但是这会导致编码中大部分数据都是零而使得带宽被浪费掉了,所以这种编码效率很低
- 曼彻斯特编码
这种编码方式通过在码元的中间时刻发生跳变,一般情况下可以根据实际情况进行不同的正负跳变定义,码元中间时刻的跳变既是时间,又是数据
- 差分曼彻斯特编码
这种编码方式由曼彻斯特编码演变而来,在码元中间的跳变时刻仅仅只表示时间,码元开始的电平的变化表示数据,相较于曼彻斯特编码变化较少,适合较高速率的数据传输
基本调制
除了编码方式,我们还可以通过调制方式改变传输数据状态(电磁波的变化):
调幅:零表示无载波,一表示有载波
调频:调整频率,使得不同比特以不同频率表示
调相:以不同初相位表示不同比特
注意:上述为基本调制,一个码元只能有一比特的信息
混合调制
混合调制实际上就是同时改变基本调制中的多个因素,但是仍有以下情况:
- 频率和相位是相关的,频率是相位随时间的变化率,所以一次只能调制频率和相位中的一个
- 通常情况下,振幅可以和相位结合起来调制,成为正交振幅调制QAM
正交振幅调制QAM
正交振幅调制包含12种相位,每种相位有1或2种振幅可选,可以调制出16种码元(波形),每个码元可以表示4个比特
注意:每个码元与4个比特的关系不能够随便定义,由于在传输过程中产生失真,随便定义关系可能会导致码元与4个比特的关系不能够正确对应,每个码元与4个比特对应关系应该采取格雷码,即任意相邻码元只有一个比特不同
信道的极限容量
在数据通信时,在质量较好的信道中,传输的码元在接收端仍然可以被还原出来。而通过质量较差的信道时,码元之间的界限就不那么明显了(这种情况我们称之为码间串扰)
造成传输失真的因素:码元传输速率,信号传输距离,噪声干扰,传输媒体质量等
奈氏准则(奈奎斯特)
在假定理想条件下,为了避免码间串扰,码元的传输速率是有上限的
理想信道 | 传输速率(W:带宽Hz;Baud:波特,码元/秒) |
---|---|
理想低信道最高速率 | 2W Baud = 2W 码元/秒 |
理想带信道最高速率 | W Baud = W 码元/秒 |
码元传输效率又称波特率,调制速率,波形速率,符号速率,它与比特率有一定关系:
- 当一码元只携带一比特时,二者在数值上相等
- 当一码元携带n比特时,波特率转化为比特率需要乘以n
要提高信息传递速率(比特率),必须设法使每个码元能携带更多个比特的信息,需要采用多元制
注意:
-
由于是理想情况,实际上的最高码元速率要明显低于奈氏准则的上限数值
-
在基本调制情况下(基本调制属于二元调制),只能产生两种不同的码元(两种基本的不同波形),所以每个码元只能携带一比特
-
不能无限制提高信息传输速率,因为信道的极限信息传输速率还受限于实际的信号在信道中传输的信噪比(信道中的噪声也会影响对码元的识别,噪声功率相对于信号功率越大,影响也就更大)
香农公式
计算带宽受限且有高斯白噪声干扰的信道极限信息传输速率
c = W × log 2 ( 1 + S N ) c = W \times\log_2(1+\frac{S}{N}) c=W×log2(1+NS)
符号 | 描述,单位 |
---|---|
C | 信道的极限信息传输速率 b/s |
W | 信道带宽 Hz |
S | 信道内所传信号的平均功率 |
N | 信道内的高斯噪声功率 |
S/N | 信噪比,使用分贝dB作为单位 |
信噪比:dB = 10 × log 10 ( S N ) 10\times\log_{10}(\frac{S}{N}) 10×log10(NS)
- 信道带宽或信道中信噪比越大,信息的极限传输速率越大
- 在实际情况中比香农公式传输速率低不少,因为其并未考虑其他如脉冲干扰,信号衰减及失真等影响
综上情况,想要提高信息传输速率,必修采用多元制(更好的调制方法)和努力提高信道中的信噪比
自香农公式发表后,各种信号处理方式和调制方法不断涌现,目的都是为了接近香农公式给出的传输速率极限