计算机网络学习笔记
一.计算机系统结构
1.1 由计算机网络组成
- 从从上看,一个完整的计算机网络主要是由、、三部分组成。
硬件主要由(端系统),(双绞线,光纤)(路由器、交换机)和(网卡)等。
软件主要包括各种实现资源共享的软件和方便用户的工具软件,主要属于应用层。
协议是计算机网络的核心。
- 从从上看,计算机网络可以分为和。
边缘部分由所有连接到因特网上、供用户直接使用的主机组成,用来通信和资源共享
核心部分由大量的网络和连接这些网络的路由器组成
- 从从上看,计算机网络和组成。
各种通信子网络、和相应的使网络具有数据传输、交换、控制和存储的能力。
资源子网络是实现资源共享功能的设备和软件的集合,为网络用户提供硬件资源、软件资源和数据资源共享服务。
1.2 计算机网络功能
- 数据通信
- 资源共享可以是软件共享、数据共享、硬件共享
- 分布式处理
- 提高可靠性
- 负载均衡
1.3 计算机网络的分类
1.按分布范围
- 广域网(WAN):由于特网的核心部分,提供长距离通信信容量大
- 城域网(MAN):它可以覆盖多个街区或城市,主要使用以太网,因此它经常被纳入局域网进行讨论
- 局域网(LAN):传统上,
- 个人区域网(PAN):将电子设备与无线技术连接到个人工作场所的网络,又称无线个人区域网(WPAN)
如果中央处理器之间的距离非常近,它通常被称为多处理器系统,而不是计算机网络
2.按传输技术
- 广播网络:所有网络计算机共享公共通信通道
广播通信技术用于局域网和广域网中的无线和卫星通信网络
- 点对点网络:每条物理线路连接一对计算机
点对点网络和广播网络是否采用分组存储转发和路由选择机制的重要区别,广域网基本上属于点对点网络
网络拓扑结构主要是指拓扑结构。
- 总线网络:用单根传输线连接计算机。其优点是易于构建网络,方便增加或减少结点,节省线路。缺点是通信效率低,负载重时故障敏感。
- 星形网络:每个终端或计算机通过单独的线路连接到中央设备。其优点是易于集中控制和管理。缺点是成本高,中央设备对故障敏感。
- 环网:所有计算机接口设备连接成一个环,最经典的例子是令牌环局域网。环可以是单环和双环,环中的信号是单向传输的。
- 网络:一般来说,每个结点至少有两条路径与其他结点相连,主要用于广域网。其优点是可靠性高。缺点是控制复杂,线路成本高。
4.按使用者
- 公共网络:指电信公司出资建设的大型网络。
- 专用网络:指某部门为满足本单位特殊业务需要而建立的网络。
- 电路交换网络:在源节点和目的节点之间建立一个特殊的数据传输通道。传统的电话网络是最典型的电路交换网络。其优点是数据直接传输,延迟小。缺点是线路利用率低,线路容量不能充分利用,错误控制不方便。
- 报纸交换网络(存储-转发网络):用户数据和源地址、目的地址、验证码等辅助信息包装成报纸,并转发到目的结束。其优点是可以充分利用线路容量,实现不同的速度和格式转换,实现一对一、一对多访问,实现错误控制。缺点是资源成本增加,缓冲延迟增加,需要额外的控制机制,缓冲区难以管理。
- 分组交换网络(包交换网络):将数据分为短固定长度的数据块,再加上辅助信息转发。除了报纸交换网络的优点外,缓冲管理方便,延迟更小,更容易标准化,更适合应用。
6.按传输介质
分为有线网络和无线网络
1.4 计算机网络的性能指标
1.带宽(Bandwidth):表示网络通信线路传输数据的能力。
2.时延(delay):指数据从网络一端传输到另一端所需的总时间,由四部分组成:,,和
- 发送时延:
发送时延 = 分组长度 / 信道宽度 - 传播时延:
传播时延 = 信道长度 / 电磁波在信道上的传播速率 - 处理延迟:交换结点中存储和转发数据的一些必要时间
- 排队延迟:进入路由器后,现在输入队列等待处理,然后输出队列等待转发
总时延 = 发送时延 传输时延 处理时延 排队时延
做题时若无题目要求一般只考虑发送时延和传播时延
对于高速链路,数据发送速率提高,发送延迟减少
3.延迟带宽积:指当发送端发送的第一个比特即将到达时,发送端发送了多少个比特。因此,它也被称为以比特为单位的链路长度,时延带宽积 = 传播时延 X 信道带宽
4.往返时延(Round-Trip Time,):从发送端发出的短分组,到发送端收到接收端确认的总体时延。
5.吞吐量(Throughput):单位时间受网络带宽或网络限速的限制
6.速率(Speed)(数据传输率、数据率、比特率):传输数据的速率
7.信道利用率:信道利用率 = 通过时间有数据 / (有 无数据通过时间
1.5 计算机网络分层结构
计算机网络各层及其协议的集合称为网络的系统结构,通常具有分层的特点,将复杂的大系统分为几个更容易实现的层次。
n层中的活动元素通常是n层实体。不同机器上的同一层称为,同一层的实体称为。
每个报文都分为两部分:一个是数据部分SDU,二是控制信息部分PCI,共同组成PDU。
:数据应该传输,以完成用户所需的功能
:控制协议操作的信息
:对等级之间传输的数据单位称为该级PDU
OSI在参考模型中,在等级之间传输数据的单位称为协议数据单元(PDU),传输层称为,叫网络层
分组 或数据报 ,称为数据链路层帧 ,物理层称为比特
1.6 协议、界面、服务
协议是规则的集合。为网络中的数据交换建立的规则、标准或协议称为网络协议(Network Protocol)。一个完整的协议通常应该有
接口是同一结点内相邻两层之间交换信息的连接点,是系统的内部规定。每层只能在相邻层之间定义接口,而不是跨层定义。相邻两层的实体通过服务访问点(Service Access Point, AP)进行交互。
服务是指下层为紧邻上层提供的功能调用,它是垂直的。
上层使用下层所提供服务时必须与下层交换一些命令,在OSI参考模型中称为
- 请求(Request):由服务用户发往服务提供者,请求完成某项工作
- 指示(Indication):由服务提供者发往服务用户,指示用户做某件事情
- 响应(Response):由服务用户发往服务提供者,作为对请求的响应
- 证实(Confirmation):由服务提供者发往服务用户,作为对请求的证实
有应答服务包括全部四种原语,而无应答服务只有请求和指示两种
只有本层协议的实现才能保证向上一层提供服务。只有那些能被高一层实体看见的功能才能称为服务。
服务有三种分类:
- 面向连接服务与无连接服务
面向连接服务通信前双方必须先建立连接,分配相应的资源,结束后释放资源
无连接服务则直接发送
- 可靠服务与不可靠服务
可靠服务具有纠错、检错、应答机制,能保证数据正确可靠的传送到目的地
不可靠服务时尽力而为的服务
- 有应答服务和无应答服务
有应答服务在接收方收到数据后向发送方给出相应的应答。并非由用户实现
无应答服务不会自动应答,想要应答则需要高层用户实现。
1.7 ISO/OSI参考模型
OSI参考模型有7层,自下而上为物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。第三层统称通信子网,高三层统称资源子网,传输层承上启下。
1.物理层(Physical Layer)
物理层的传输单位是比特,任务是透明的传输比特流,功能是在物理媒体上为数据端设备透明的传输原始比特流。
物理层主要定义数据终端设备(DTE)和数据通信设备(DCE)的物理与逻辑连接方法,所以物理层协议也称为物理层接口标准。
物理层接口标准有EIA-232C,EIA/TIA RS-449,CCITT的X.21等
2.数据链路层(Data Link Layer)
数据链路层的传输单位是帧,任务是将网络层传来的IP数据报组装成帧。数据链路层的功能可以概括成帧、差错控制、流量控制和传输管理等。
差错控制是把接收到的数据检测出差错,然后丢掉错误信息
流量控制是协调两个结点的速率使双方相等
数据链路层是点到点通信
数据链路层协议有SDLC、HDLC、PPP、STP和帧中继等
3.网络层(Network Layer)
网络层的传输单位是数据报,关心的是通信子网的运行控制,主要任务是把网络层的协议数据单元(分组)从源端传到目的端,并实现流量控制、拥塞控制、差错控制和网际互联等功能
拥塞控制是要缓解结点因来不及接受分组而要丢弃大量分组的情况
网络层的协议有IP、IPX、ICMP、IGMP、ARP、RARP和OSPF
4.传输层(Transport Layer)
传输层也称运输层,传输单位是报文段(TCP)或用户数据报(UDP),传输层负责主机中两个进程之间的通信,功能是为端到端连接提供可靠的传输服务,为端到端连接提供流量控制、差错控制、服务质量、数据传输管理等服务。
传输层是第一个开始端到端的层
由于一台主机可同时运行多个进程,因此传输层具有复用和分用的功能。
复用是指多个应用层进程可同时使用下面传输层的服务,分用是指传输层把收到的信息分别交付给上面应用层中相应进程。
传输层的协议有TCP、UDP
5.会话层(Session Layer)
会话层允许不同主机上的各个进程之间进行会话。会话层利用传输层提供的端到端的服务,向表示层提供它的增值服务。这种服务主要为表示层实体或用户进程建立连接并在连接上有序的传输数据,这就是会话,也称为同步(SYN)
会话层负责管理主机间的会话进程,包括建立、管理及终止进程间的会话。会话层可以使用校验点使通信会话在通信失效时从校验点继续恢复通信,实现数据同步。
6.表示层(Presentation Layer)
表示层主要处理在两个通信系统中交换信息的方式。表示层采用抽象的标准方法定义数据结构,并采用标准的编码形式。数据压缩、加密、解密也是表示层可提供的数据表示变换功能。
7.应用层(Application Layer)
应用层是用户与网络的界面,是最复杂的一层。
典型协议有FTP、SMTP、HTTP
1.8 TCP/IP 模型
TCP/IP模型从低到高依次为网络接口层(对应OSI参考模型中的物理层和数据链路层)、网际层、传输层和应用层(对应会话层、表示层和应用层)
1.9TCP/IP模型与OSI参考模型的比较
相似之处:二者都采用分层的体系结构,都是基于独立的协议栈概念,都可以解决异构网络的互联
差别:OSI精准定义了服务、协议、接口的概念,通用性良好,网络层支持无连接和面向连接的通信,但在传输层仅有面向连接的通信,TCP/IP考虑到了多种异构网的互联问题,并将网际协议(IP)作为一个单独的重要层次,在网际层仅有一种无连接的通信模式,但传输层支持无连接和面向连接两种模式。
二.物理层
2.1 数据、信号、码元
数据是传送信息的实体,信号是数据的电气或电磁表现,是数据在传输过程中的存在形式。
连续变化的数据(或信号)称为模拟数据(或模拟信号)
取值仅允许为有限的几个离散数值的数据(或信号)称为数字数据(或数字信号)
数据的传输方式可分为串行和并行
码元是指用一个固定时长的信号波形(数字脉冲)表示一位K进制数字,代表不同离散数值的基本波形,是数字通信中数字信号的计量单位,这个时长内的信号称为k进制码元,而该时长称为码元宽度。
2.2 信源、信道、信宿
信源是产生和发送数据的源头,信道是信号的传输媒介,信宿是接收数据的终点
噪声源是信道上的噪声及分散在通信系统其它各处的噪声的集中表示
信道按传输信号形式的不同,可分为传送模拟信号的模拟信道和传送数字信号的数字信道两大类
信道按传输介质的不同,可分为无线信道和有线信道。
基带信号将数字信号1和0直接用两种不同的电压表示,然后送到数字信道上传输(基带传输)
宽带信号将基带信号进行调制后形成频分复用模拟信号,然后送到模拟信道上传输(宽带传输)
从通信双方信息的交互方式上可分为单向通信(一条信道)、半双工通信(两条信道)、全双工通信(两条信道)
信道的极限容量是指信道的最高码元传输速率或信道的极限信息传输速率。
2.3 速率、波特、带宽
速率也称数据率,指的是数据传输速率,表示单位时间内传输的数据量,可用码元传输速率和信息传输速率表示
码元传输速率,又称波特率,表示单位时间内数字通信系统所传输的码元个数(也可称为脉冲个数或信号变化次数),单位是波特(1波特表示每秒传输1个码元)。码元速率与进制数无关。
信息传输速率,又称信息速率、比特率,表示单位时间内数字通信系统传输的二进制码元个数(比特数),单位是比特/秒(b/s)
码元传输速率也称调制速率、波形速率或符号速率
若一个码元携带n比特的信息量,则M波特率的码元传输速率所应的信息传输速率为Mn比特/秒
带宽表示单位时间内从网络中的某一点到另一点所能通过的“最高数据率”
2.4 奈奎斯特定理和香农定理
码间串扰:信号中的许多高频分量往往不能通过信道,否则在传输中会衰减,导致接收端收到的信号波形失去码元之间的清晰界限。
码元的离散电平数目是指有多少种不同码元。如16种不同码元,则需要4个二进制位,因此数据传输速率是码元传输速率的4倍
2.4.1 奈奎斯特定理
奈奎斯特定理又称奈式准则,在理想低通(没有噪声、带宽有限)的信道中,为了避免码间串扰,极限码元传输速率为2W波特,其中W是理想低通信道的带宽。用V表示每个码元离散电平的数目,则极限数据率为理想低通信道下的极限数据传输速率 = 2Wlog2V(单位b/s)
由奈式准则得出结论:
1.在任何信道中,码元的传输速率是有上限的。若超过此上限则会出现严重的码间串扰。
2.信道的频带越宽(即通过的信号高频分量越多),就可用更高的速率进行码元的有效传输。
3.奈式准则只给出了码元传输速率的限制,但并未对信息传输速率给出限制。
因受奈式准则的制约,所以要提高数据传输率,就必须设法使每个码元携带更多比特的信息量,此时就需要采用多元制的调制方法。
2.4.2 香农定理
香农定理给出了带宽受限且有高斯白噪声干扰的信道的极限数据传输速率,当用此速率进行传输时,可以做到不产生误差。信道的极限数据传输速率 = Wlog2(1 + S/N) 单位b/s,式中W为信道的带宽,S为信道所传输信号的平均功率,N为信道内部的高斯噪声功率。S/N为信噪比(信号的平均功率与噪声的平均功率之比)
由香农定理得出结论:
1.信道的带宽或信道中的信噪比越大,信息的极限传输速率越高
2.对一定的传输带宽和一定的信噪比,信息传输速率的上限时确定的
3.只要信息传输速率低于信道的极限传输速率,实际信道能达到的传输速率要比它低不少
一个码元对应的二进制位数是有限的
2.5 编码与调制
把数据变换为模拟信号的过程称为调制,把数据变换为数字信号的过程称为编码
2.5.1 数字数据编码为数字信号
1.归零编码(RZ):高电平代表1、低电平代表0(或相反),每个时钟周期的中间均跳变到低电平(归零),接收方根据该跳变调整本方时间基准。为双方提供了自同步进制。由于归零占用部分带宽,所以传输速率受到了一定影响。
2.非归零编码(NRZ):一个周期全部用来传输数据,想要高速同步数据,则需要都带有时钟线。
3.反向非归零编码(NRZI):用信号的翻转代表0、不变代表1。翻转信号本身作为通知机制,既能传输时钟信号,又能尽量不损失带宽。USB2.0就是这个编码。
4.曼彻斯特编码(Manchester Encoding)将一个码元分为两个相等的间隔,前一个间隔为高电平而后一个为低电平表示1,0反之。位中间的跳变既作为时钟信号(可用于同步),又作为数据信号,但占的频带宽度是原始基带宽度的两倍。以太网就是该编码。
5.差分曼彻斯特编码。常用于局域网传输。若码元为1,则前半个码元的电平与上一个码元的后半个码元的电平相同。0反之。特点是可以实现自同步且抗干扰性较好。
6.4B/5B编码。将欲发送的数据流的每4位作为一组,按照编码规则将其转换为对应的5位码。
2.5.2 数字数据调制为模拟信号
1.幅移键控(ASK)。通过改变载波信号的振幅来表示数字信号1和0,而载波的频率和相位都不改变。容易实现,抗干扰能力差。
2.频移键控(FSK)。通过改变载波信号的频率来表示数字信号1和0,而载波的振幅和相位都不改变。容易实现,抗干扰能力强,应用较广泛。
3.相移键控(PSK)。通过改变载波信号的相位来表示数字信号1和0,而载波的振幅和频率都不改变。又分为绝对调相和相对调相。
4.正交振幅调制(QAM)。在频率相同的前提下,将ASK与PSK结合起来,形成叠加信号。设波特率为B,采用m个相位,每个相位有n种振幅,则传输速率为R = Blog2(mn) 单位b/s
2.5.3 模拟数据编码为数字信号
这种编码方式最典型的例子是常用于对音频信号进行编码和脉码调制(PCM),主要包括采样、量化、编码。
采样定理(奈奎斯特定理),在通信领域是指信号最高频率和最低频率之差。假设原始信号中的最大频率为f,那么采样频率为f(采样)必须大于等于最大频率f的两倍,才能保证采样后的数据信号完整保留原始模拟信号的信息。
1.采样是指对模拟信号进行周期性扫描,把时间上练习的信号变成时间上离散的信号。
2.量化是把采样取得的电平幅值按照一定的分级标度转化为对应的数字值并去取整数,这样就是把连续的电平幅值转换位了离散的数字量。采样和量化的实质就是分割和转换。
3.编码是把量化的结果转换为与之对应的二进制编码。
2.5.4 模拟数据调制为模拟信号
电话机和本地局交换机采用模拟信号传输模拟信号的编码方式
2.6 电路交换、报文交换、分组交换
2.6.1 电路交换
电路交换在进行数据传输前,两个结点之间必须先建立一条专用(双方独占)的物理通信路径,直到通信结束后才释放。分为连接建立、数据传输、连接释放三个阶段。
从通信资源的分配角度来看,“交换”就是按照某种方式动态的分配传输线路的资源。电路交换的关键点是,在数据传输过程中,用户始终占用端到端的固定传输带宽。
优点是:通信时延小、有序传输、没有冲突、适用范围广、实时性强、控制简单。
缺点是:建立连接时间长、线路独占、灵活性差、难以规格化。
电路建立后,除源结点和目的结点外,电路上的任何结点都采取“直通方式”接受数据和发送数据,即不会存在存储转发所耗费的时间。
2.6.2 报文交换
数据交换的单位是报文,报文携带有目标地址、源地址等信息。报文交换在交换结点采用的是存储转发的传输方式。
优点是:无须建立连接、动态分配路线、提高线路可靠性、提高线路利用率、提供多目标服务。
缺点是:有转发时延、要求网络结点有较大的缓存空间
2.6.3 分组交换
分组交换限制了每次传送的数据块大小的上限,把大的数据块划分为合理的小数据块,再加上一些必要的控制信息,构成分组(Packet)。
优点是:无建立时延、线路利用率高、简化了存储管理、加速传输、减少了出错概率和重发数据量
缺点是:存在时延、需传输额外信息、采用数据报时可能会失序、丢失或重复分组
要传送的数据量很大且其传送时间远大于呼叫时间时,采用电路交换较为合适;
端到端的通路由多段链路组成时,采用分组交换更为合适;
从提高整个网络的信道利用率上看,报文交换和分组交换优于电路交换。
2.7 数据报与虚电路
分组交换根据其通信子网向端点系统提供的网络层服务,还可进一步分为面向连接的虚电路方式和无电路的数据报方式
2.7.1 数据报
在端系统中实现的高层协议先把报文拆分成若干带有序号的数据单元,并在网络层加上地址等控制信息后形成数据报分组(网络层的PDU)。中间结点存储分组很短一段时间,找到最佳路由后,尽快转发每个分组。不同的分组可以走不同的路径,也可以按不同的顺序到达目的结点。
2.7.2 虚电路
分组发送前,要求发送方和接收方建立一条逻辑上相连的虚电路,并且一旦连接就固定了虚电路所对应的物理路径,分为三个阶段:虚电路建立、数据传输和虚电路释放
在传送数据时,每个数据分组不仅要有分组号、校验和等控制信息还要有它要通过的虚电路信号,以区别于其它虚电路上的分组。
| 数据报服务 | 虚电路服务 | |
|---|---|---|
| 连接的建立 | 不需要 | 必须有 |
| 目的地址 | 每个分组都有完整的目的地地址 | 仅在建立连接阶段使用,之后每个分组使用长度较短的虚电路号 |
| 路由选择 | 每个分组独立地进行路由选择和转发 | 属于同一条虚电路的分组按照同一路由转发 |
| 分组顺序 | 不保证分组的有序到达 | 保证分组的有序到达 |
| 可靠性 | 不保证可靠通信,可靠性由用户主机来保证 | 可靠性由网络保证 |
| 网络故障的适应性 | 出故障的结点丢失分组,其他分组路径选择发生变化时可以正常运输 | 所有经过故障结点的虚电路均不能正常工作 |
| 差错处理和流量控制 | 由用户主机进行流量控制,不保证数据报的可靠性 | 可由分组交换网负责,也可由用户主机负责 |
2.8 双绞线、同轴电缆、光纤、无线传输介质
传输介质也称传输媒介,它是数据传输系统中发送设备和接受设备之间的物理通路。导向传输介质中,电磁波沿着固体媒介传播,而非导向传输介质可以是空气、真空、水等。
双绞线由两根并排绞合、相互绝缘的铜导线组成,减少对相邻导线的电磁干扰。价格便宜,广泛用于局域网和传统电话网中。其带宽取决于铜线的粗细和传输的距离。远距离时,模拟传输用放大器放大衰减的信号,数字传输用中继器将失真的信号整形。
50欧同轴电缆主要用于传送基带数字信号,又称基带同轴电缆,它在局域网中应用广泛。75欧同轴电缆主要用于传送宽带信号,又称宽带同轴电缆,主要用于有线电视系统。具有良好的抗干扰特性,被广泛用于传输较高速率的数据,传输距离更远,但比双绞线贵。
光纤利用光导纤维传递光脉冲来进行通信。多模光纤只适合于近距离传输,传输损耗小,抗雷电和电磁干扰性好,无串音干扰,保密性好,体积小质量轻。
2.8 物理层接口特性
1.机械特性。指明接口所用接线器的形状和尺寸、引脚数目和排列、固定和锁定装置等
2.电气特性。指明在接口电缆的各条线上出现的电压的范围
3.功能特性。指明某条线上出现的某一电平的电压表示何种意义
4.过程特性(规程特性)。指明对于不同功能的各种可能时间的出现顺序。
2.9 中继器、集线器
中继器的主要功能是将信号整形并放大再转发出去,以消除信号经过一长段电缆后产生的失真和衰减,使信号的波形和强度达到所需要的要求,进而扩大网络传输的距离。其原理是信号的再生。是用来扩大网络规模的最简单廉价的互联设备。
中继器连接的几个网段仍是一个局域网,不能连接不同速率的局域网。
要某个网络设备能连接两个不同协议,则要有存储转发功能。
5-4-3规则:在采用粗同轴电缆的10BASE5以太网规范中,互相串联的中继器个数不能超过4个,而且用4个中继器串联的5段通信介质中只有3段可以挂接计算机,其余两段只能用作扩展通信范围的链路段,不能挂接计算机。
集线器实质上是一个多端口的中继器,它在网络中只起信号放大和转发的功能,目的是扩大网络的传输范围,而不具备信号的定向传送能力,是一个标准的共享式设备,主要使用双绞线组建共享网络,是从服务器连接到桌面最经济的方案。所有集线器端口都属于一个冲突域。
三.数据链路层
3.1 为网络层提供服务、链路管理
1.无确认的无连接服务。源机器发送数据帧时不需先建立链路连接,目的机器收到数据帧时不需发回确认。适用于实时通信或误码率较低的通信信道,如以太网。
2.有确认的无连接服务。源机器发送数据帧时不需先建立链路连接,目的机器收到数据帧时必须发回确认。适用于误码率较高的通信信道,如无线通信。
3.有确认的面向连接服务。帧传输分为建立数据链路、传输帧、释放数据链路三个阶段,目的机器必须发回确认。适用于通信要求(可靠性、实时性)较高的场合。
有连接就一定要有确认
数据链路层连接的建立、维持和释放过程称为链路管理,主要用于面向连接的服务。
3.2 组帧
两台主机之间传输信息时,必须将网络层的分组封装成帧,以帧的格式进行传送。将一段数据的前后分别添加首部和尾部,就构成了帧。因此帧长等于数据部分的长度加上首部和尾部的长度。
首部和尾部的一个重要作用就是确定帧的界限,即帧定界。
帧同步指的是接收方应能从接收到的二进制比特流中区分出帧的起始与终止。
如果再数据中恰好出现与帧定界符相同的比特组合,那么就要采取有效的措施解决该问题,即透明传输。
为了使接收方能正确的接受并检查所传输的帧,发送方必须依据一定的规则把网络层递交的分组封装成帧(称为组帧)。组帧主要解决帧定界、帧同步、透明传输问题。
组帧时既要加首部也要加尾部,分组仅是包含在帧中的数据部分,所以不需要加尾部来定界。
1.字符计数法是指在帧头部使用一个计数字段来标明帧内字符数。这种方法的最大问题在于如果计数字段出错,就将失去同步。
2.字符填充法使用特定字符来定界一帧的开始与结束
3.零比特填充法允许数据帧包含任意个数的比特,也允许每个字符的编码包含任意个数的比特。它使用01111110这个特殊的比特模式来标志一帧的开始与结束。为了不使信息位中出现的比特流01111110被误判为帧的首尾标志,发送方的数据链路层在信息位中遇到5个连续的1时将自动在后面插入一个0。而接收方做逆操作。零比特填充法很容易由硬件实现,性能优于字符填充法。
4.违规编码法借由违规的编码来定界帧的起始与终止。局域网IEEE802就是此种方法。该方法不需要采用任何填充技术便能实现数据传输的透明性,但只适合采用冗余编码的特殊编码环境。
3.3 差错控制
比特差错是指比特在传输过程中可能产生差错,1可能变成0,0可能变成1.
用以使发送方确定接收方是否正确收到由其发送的数据的方法称为差错控制
自动重传请求(ARQ): 接收端检测到差错时,就设法通知发送端重传,直到接收到正确的码字为止
前向纠错(FEC):接收端不仅能发现差错还能确定错误位置进行纠正
位错指帧中某些位出现了差错。通常用循环冗余校验(CRC)发现位错,通过自动重发请求(ARQ)重传出错帧。
帧错指帧的丢失、重复或失序等错误
3.3.1检错编码
这里的检错与下面的纠错编码具体的请去看计算机组成原理相关部分,这里就不做详细阐述
1.奇偶校验码
奇校验码在附加一位校验元后,码长为n的码字中1的个数为奇数个。偶校验码反之。智能检测奇数位的出错情况,并不知道哪些位错了。
2.循环冗余码
循环冗余码(CRC)又称多项式码,任何一个由二进制数位串组成的代码都可以与一个只含有0和1两个系数的多项式建立一一对应关系。
给定一个m bit的帧或报文,发送器生成一个r bit的序列,称为帧检验序列(FCS)。这样所形成的帧将由m + r比特组成。发送方和接收方事先商定一个多项式G(x)(最高低位必须为1),使这个带检验码的帧刚好能被预先确定的多项式G(x)整除。接收方用相同的多项式去除收到的帧,如果无余数,那么无差错
步骤:
- 加0.假设G(x)的阶为r,在帧的低位端加上r个0
- 模2除。利用模2除法,用G(x)对应的数据串除去上一步中计算出的数据串,得到的余数即冗余码
CRC具有纠错功能,但在数据链路层仅使用了其检错功能
3.3.2纠错编码
海明码在有效信息位中加入几个校验位形成海明码,并把海明码的每个二进制位分配到几个奇偶校验组中。
- 确定海明码位数
- 确定校验位分布
- 分组以形成校验关系
- 校验位取值
- 海明码的校验原理
3.4流量控制、可靠传输、滑动窗口
流量控制实际上就是限制发送方的数据流量,使其发送速率不超过接收方的接受能力。
停止-等待流量控制基本原理:发送方每发送一帧,都要等待接收方的应答信号,之后才能发送下一帧。
滑动窗口流量控制基本原理:在任意时刻,发送方都维持一组连续的允许发送的帧的序号,称为发送窗口,用来对发送方进行流量控制,而发送窗口的大小代表在还未接收到对方确认消息的情况下发送方最多还可以发送多少个数据帧。同时接受方维持接受窗口,控制可以接受哪些数据帧。
在后退N帧式ARQ中,发送方无须在收到上一帧的ACK后才能开始发送下一帧,而是可以连续的发送帧,当接收方检测出失序的信息帧后,要求发送方重发最后一个正确接收的信息帧之后所有未被确认的帧若采用n比特对帧编号,则其发送窗口的尺寸应满足1<=WT<=2^n-1.若发送窗口尺寸大于最大值则会造成接收方无法分别旧帧和新帧。若信道的传输质量很差导致误码率较大时,后退N帧协议不一定优于停止-等待协议
选择重传协议SR设法只重传出现差错的数据帧或计时器超时的数据帧,但此时必须加大接收窗口,以便先收下发送序号不连续但仍在接受窗口的那些数据帧。其接受窗口与发送窗口的大小相同,且最大值都为序号范围的一半,若采用n比特对帧编号,则需要满足:WTmax=Wmax=2^(n-1)
数据链路层的可靠传输通常使用确认和超时重传两种机制来完成。确认是一种无数据的控制帧,有些情况下将确认捎带在一个回复帧中,称为捎带确认。超时重传是指发送方在发送某个数据帧后就开始计时,超时就重发直到成功为止。
滑动窗口的特性:
1.只有接受窗口向滑动时,发送窗口才有可能向前滑动。
| 发送窗口大小 | 接收窗口大小 | |
|---|---|---|
| 停止-等待协议 | 1 | 1 |
| 后退N帧协议(GBN) | >1 | 1 |
| 选择重传协议(SR) | >1 | >1 |
3.接受窗口大小为1时可保证帧的有序传输
4.数据链路层的滑动窗口协议中,窗口的大小在传输过程中是固定的。
3.5 介质访问控制
介质访问控制所要完成的任务是,为使用介质的每个结点隔离来自同一信道上其他结点所传送的信号,以协调活动结点的传输。用来决定广播信道中信道分配的协议属于数据链路层的一个子层,称为介质访问控制(Medium Access Control,MAC)子层。
3.5.1 信道划分介质访问控制
信道划分介质访问控制将使用介质的每个设备与来自同一通信信道上的其他设备的通信隔离开来,把时域和频域资源合理地分配给网络上的设备。其实质就是通过分频、分时、分码等方法把原来的一条广播信道,逻辑上分为几条用于两个结点之间通信的互不干扰的子信道,实际上就是把广播信道转变为点到点信道。
多路复用技术:当传输介质的带宽超过传输单个信号所需的带宽时,人们就通过在一条介质上同时携带多个传输信号的方法来提高传输系统的利用率。
频分多路复用(FDM)是一种将多路基带信号调制到不同频率的载波上,再叠加形成一个复合信号的多路复用技术。实际应用中为防止子信道之间的干扰,相邻信道之间需加入保护频带。优点是充分利用了传输介质的带宽,系统效率较高,技术成熟易实现。
时分多路复用(TDM)是将一条物理信道按时间分成若干时间片,轮流的分配给多个信号使用。但由于计算机数据的突发性,一个用户对已经分配到的信道利用率一般不高。统计时分多路复用(STDM,异步时分复用)采用STDM帧,STDM帧并不固定分配时隙,而按需动态的分配时隙,当终端有数据要传送时,才会分配到时间片,因此可以提高线路的利用率。
波分多路复用(WDM)即光的频分多路复用,它在一根光纤中传输多种不同波长的光信号,最后用波长分解复用器将各路波长分解出来。
码分多路复用(CDM)采用不同的编码来区分各路原始信号的一种复用方式。既共享信道的频率又共享时间。码分多址(Code Division Multiple Access,CDMA)原理是每个比特时间再划分成m个短的时间槽,称为码片(Chip),通常m的取值是64或128.每个站点被指派一个唯一的m位码片序列。发送1时站点发送它的码片序列,0时发送序列反码。当两个或多个站点同时发送时,各路数据在信道中线性相加,要求各序列相互正交以便分离信号。令向量S表示A站的码片向量,令T表示B站的码片向量。两个不同站的码片序列正交,即向量S和T的规格化内积(Inner Product)为0: S ⋅ T = 1 m ∑ i = 1 m S i T i = 0 S·T = \frac{1}{m}\sum^{m}_{i=1}S_iT_i = 0 S⋅T=m1∑i=1mSiTi=0。任何一个码片向量和该码片向量自身的规格化内积都是1,任何一个码片向量和该码片反码的向量的规格化内积是-1,如 S ⋅ S = 1 m ∑ i = 1 m S i S i = 1 S·S = \frac{1}{m}\sum^{m}_{i=1}S_iS_i=1 S⋅S=m1∑i=1mSiSi=1。码分多路复用技术具有频谱利用率高、抗干扰性强、保密能力强、语音质量好,减少投资运营成本,主用于无线通信系统,特别是移动通信系统。
3.5.2 随机访问介质访问控制
在随机访问协议中,不采用集中控制方式解决发送信息的次序问题,所有用户能根据自己的意愿随机的放松信息,占用信道全部速率。为了解决随机接入发生的碰撞,每个用户需要按照一定的规则反复地重传它的帧,直到该帧无碰撞地通过。核心思想是:胜利者通过征用获取信道,从而获得信息的发送权。因此该协议又称争用型协议。
纯ALOHA协议基本思想是,当网络中任何一个站点需要发送数据时,可以不进行任何检测就发送数据。如果再一段时间内未收到确认,就认为发生冲突,就过一会重发数据直到成功。
时隙ALOHA协议把所有各站在时间上同步起来,并将时间划分为一段等长的时隙(Slot),规定只能在每个时隙开始时才能发送一个帧。从而避免了用户发数据的随意性,减少了数据产生冲突的可能性,提高了信道的利用率。
载波侦听多路访问(Carrier Sense Multiple Access,CSMA)的思想是若每个站点在发送前都先侦听一下共用信道,发现信道空闲再发送,则会大大降低冲突的可能性,从而提高信道的利用率。
| 信道状态 | 1-坚持 | 非坚持 | p-坚持 |
|---|---|---|---|
| 空闲 | 立即发送数据 | 立即发送数据 | 以概率p发送数据,以概率1-p推迟到下一时隙 |
| 忙 | 继续坚持侦听 | 放弃侦听,等待一个随机的时间后再侦听 | 持续侦听,直至信道空闲 |
载波侦听多路访问/碰撞检测(CSMA/CD)协议是改进方案,适用于总线形或半双工网络环境。可简单概括为"先听后发,边听边发,冲突停发,随机重发",其协议的以太网只能进行半双工通信。CSMA/CD总线网中的所有数据帧都必须要大于一个最小帧长。任何站点收到帧长小于最小帧长的帧时,就把它当做无效帧立即丢弃。计算公式为最小帧长 = 总线传播时延 X 数据传输速率 X 2。使用截断二进制指数退避算法可使重传需要推迟的平均时间随重传次数的增大而增大(动态退避),能降低发生碰撞的概率,有利于整个系统的稳定。
CSMA/CA把碰撞检测改成了碰撞避免,规定所有的站完成发送后,必须再等待一段很短的时间才能发送下一帧,这段时间称为帧间间隔(IFS),当且仅当检测到信道空闲且这个数据帧是要发送的第一个数据帧时才不适用退避算法。
为了解决隐蔽站问题,源站要发送数据帧之前先广播一个很短的请求发送RTS(Request To Send)控制帧,包括源地址、目的地址和这次通信的持续时间。若信道空闲则AP广播一个允许发送CTS(Clear To Send)控制帧,包括所需时间。其他站点听到后这段时间将抑制发送。但是当数据帧长度超过某一数值时使用RTS和CTS才比较有利
3.5.3 轮询介质控制访问
在轮询访问中,用户不能随机地发送信息,而要通过一个集中控制的监控站,以循环方式轮询每个结点,再决定信道的分配。典型的轮询访问介质控制协议是令牌传递协议,主要应用于令牌环局域网中。令牌是一个特殊的MAC控制帧,本身并不包含信息,仅控制信道的使用,确保同一时刻只有一个站点独占信道。轮询介质控制访问非常适合负载很高的广播信道。
3.6 局域网
局域网(Local Area Network, LAN)是指在一个较小的地理范围内,将各种计算机、外部设备和数据库系统等通过双绞线、同轴电缆等连接介质互相连接起来,组成资源和信息共享的计算机互联网络。
特点:
1.为一个单位所有,且地理范围和站点数目均有限。
2.所有站点共享较高的总宽带
3.较低的时延和较低的误码率
4.各站为平等关系而非主从关系
5.能进行广播和组播
三种特殊的局域网拓扑实现:
1.以太网。逻辑拓扑是总线形,物理拓扑是星形或拓展星形。
2.令牌环。逻辑拓扑是环形结构,物理拓扑是星形结构。
3.FDDI。逻辑拓扑是环形结构,物理拓扑是双环结构。
IEEE 802.3标准是一种基带总线型的局域网标准,它描述物理层和数据链路层的MAC子层的实现方法。
| 参数 | 10BASE5 | 10BASE2 | 10BASE-T | 10BASE-FL |
|---|---|---|---|---|
| 传输媒体 | 基带同轴电缆(粗缆) | 基带同轴电缆(细缆) | 非屏蔽双绞线 | 光纤对 |
| 编码 | 曼彻斯特编码 | 曼彻斯特编码 | 曼彻斯特编码 | 曼彻斯特编码 |
| 拓扑结构 | 总线形 | 总线形 | 星形 | 点对点 |
| 最大段长 | 500m | 185m | 100m | 2000m |
| 最多结点数目 | 100 | 30 | 2 | 2 |
10BASE-T非屏蔽双绞线以太网拓扑结构为星形网,星形网中心为集线器,但使用集线器的以太网在逻辑上仍然是一个总线形网,属于一个冲突域。
每块网卡中的MAC地址也称物理地址,MAC地址长6字节。MAC帧不需要帧结束符,因为以太网在传送帧时,各帧之间必须有一定的间隙。
速率达到或超过100Mb/s的以太网称为高速以太网
100BASE-T以太网是在双绞线上传输100Mb/s基带信号的星形拓扑结构以太网。使用CSMA/CD协议。既支持全双工又支持半双工。
吉比特以太网又称千兆以太网,允许在1Gb/s速率下用全双工和半双工两种方式工作。
10吉比特以太网与10Mb/s、100Mb/s、1Gb/s以太网的帧格式完全相同,只工作在全双工环境。
虚拟局域网可以把一个较大的局域网分割成一些较小的与地理位置无关的逻辑上的VLAN,每个VLAN是一个较小的广播域,VLAN只是局域网提供给用户的一个服务,并不是一种新型局域网
3.7 广域网
广域网值覆盖范围很广的长距离网络,是因特网的核心部分。
| 广域网 | 局域网 | |
|---|---|---|
| 覆盖范围 | 很广,通常跨区域 | 较小,通常在一个区域内 |
| 连接方式 | 结点之间都是点到点连接,但为了提高网络的可靠性,一个结点交换机往往与多个结点交换机相连 | 普遍采用多点接入技术 |
| OSI参考模型层次 | 物理层、数据链路层、网络层 | 物理层、数据链路层 |
| 联系和相似点 | 1.广域网和局域网都是互联网的重要组成构件,从互联网角度上看二者平等 | 2.连接到一个广域网或一个局域网上的主机在该网内进行通信时,只需要使用其网路的物理地址 |
| 着重点 | 强调资源共享 | 强调数据传输 |
PPP(Point-to-Point)是使用串行线路通信的面向字节的协议,该协议应用在直接连接两个结点的链路上。设计的目的主要是用来通过拨号或专线方式建立点对点连接发送数据,使其成为各种主机、网桥和路由器之间简单连接的一种共同的解决方案。它提供差错检测但不提供纠错功能,仅支持点对点的链路通信,仅支持全双工,两端可以运行不同的网络层协议,是面向字节的,异步线路用字节填充法,同步线路用比特填充。
3.8 局域网交换机
局域网交换机又称以太网交