计算机网络
概述
一、计算机网络的基本概念
- 重要特征:数字化、网络化、信息化
- 计算机网络发展最快并起到核心作用
1.1 计算机网络的发展
第一代:以主机为中心
第二代:以通信子网为中心
第三代:ISO/OSI-RM、Internet
第四代:新一代网络
1.2 计算机网络定义、组成和功能
- 定义:计算机网络是利用通信设备和链路将分散在不同地点且具有独立功能的多个计算机系统互连起来,通过网络协议和软件进行数据通信,实现资源共享的计算机系统的集合。
- 组成:主机、通信子网(通信设备、通信链路)、通信协议(通信子网、资源子网(按从信息的不同处理方式分类))
- 功能:数据通信、资源共享、提高可靠性、提高系统处理能力
1.3 计算机网络的分类
- 传输技术
- 覆盖范围与规模
- 拓扑结构
- 传输介质
1. 按网络传输技术
- 广播式链接(广播网络):只有一个通信信道,在机器之间传递的是包,信道上均共享,包里有地址域,让目标机器判断该包自己是否应该接受。
- 点到点链接(点到点网络):由许多点构成,一个连接对应一对机器,存在多条不同长度的路径。
- 小规模、地理位置局部化的网络倾向于使用广播传输,大规模通常使用点到点。
2. 按覆盖的地理范围
- 局域网(LAN):覆盖范围有限,采用广播技术传输,高数据传输速率、低误码率、低延迟,总线型和环形。
- 城域网(MAN):与局域网类似。
- 广域网(WAN):也称为远程网,覆盖一个国家,将分布在不同地区的计算机系统互连起来,达到资源共享的目的。
- 互联网(internet):一组相互连接起来的网络,通过一个WAN将多个LAN组织起来。
3. 按网络拓扑结构分类
-
用点和线抽象出网络系统的逻辑结构。
-
总线型:一条总线连接若干结点,结构简单,可扩充,性能好,网络可靠性高,结点间响应速度快,共享资源能力强,成本低,总线性能和可靠性对网络影响大.
-
星型:以中央为结点,把若干外围结点连接起来,建网容易,扩充性好,控制简单,中央点出现故障,整个网落瘫痪。
-
树型:连接容易,管理简单,维护方便,共享能力差,可靠性低。
-
环形:网络结构简单,建网容易,实时控制数据传送,可靠性差。
-
网状型:任何一个结点都至少与其它两个结点相连,可靠性高,成本高,结构复杂,不易管理和维护。
-
混合型:由多种拓扑结构混合而成,发挥各自特长。
4. 按网络的传输介质分类
- 有线网
- 无线网
二、计算机网络体系结构
2.1 计算机网络中的分层传输
特点:
- 简化网络系统设计的复杂性。
- 更方便地适应网络技术和应用需求变化。
- 提供更模块化地设计。
2.2 网络协议的组成要素
- 语法:数据与控制信息的结构或格式。
- 语义:控制信息的内容。
- 同步:事件实现顺序的详细说明。
2.3 服务类型
- 面向连接与确认服务
- 面向连接与不确认服务
- 无连接与确认服务
- 无连接与不确认服务
面向连接服务:
-
类似电话服务。
-
每次数据传输要经过连接建立、数据传输和释放连接三个过程。
-
收发数据的顺序不变,可靠性好,但是协议复杂,通信效率不高。
无连接服务:
-
类似邮政服务。
-
不保证分组的顺序和正确性,可靠性不好,协议相对简单,通信效率较高。
确认和重传机制:
-
每一个服务可以用一个服务质量(可靠性)来表述其特征。
-
连接并不意味可靠,可靠要通过确认、重传等机制来保证。
-
在规定时间内,如果发送节点没有接收到接收节点的确认信息,就认为该数据发送失败,发送节点将重新发送该数据分组。
-
提高数据传输的可靠性,比较复杂,需要增加网络额外的通信符合,占用网络带宽,会造成延迟。
2.4 服务原语
一个服务通常由一组原语操作来描述。
常用原语:
- 请求:表示实体希望开始调用服务做事。
- 指示:表示某实体被通知有事件发生。
- 响应:表示某实体队事件做出响应。
- 确认:表示对发回响应的确认。
2.5 服务与协议的关系
服务:
- 涉及同一操作系统的相邻两个层次之间的结构,定义了下层可以为上层执行的操作。
- 服务是垂直的,即服务是由下层向上层通过层间接口提供的,上层通过与下层的服务原语的交换来使用下层所提供的服务。
协议:
- 涉及不同系统上的对等实体之间的分组,定义实体间通信的规则。
- 协议是水平的,即协议控制对等实体之间的通信的规则。
三、计算机网络的主要性能指标
- 速率
- 带宽
- 吞吐量
- 时延
3.1 速率
数据率或比特率
单位 : b/s, kb/s, Mb/s, Gb/s
3.2 带宽
数字信道所能传送的最高数据率,单位是比特每秒,b/s。
在时间轴上信号的宽度随带宽的增大而变窄。
3.3 吞吐量
在单位时间内通过某个网络的数据量。
bit/s
3.4 时延
从一个网络的一端传送到另一端所需的时间
- 发送时延:发送数据时,数据块从结点进入到传输介质所需要的时间。
- 传播时延:电磁波在信道上传播一定距离所花费的时间。
- 处理时延:交换结点为存储转发而进行一些必要的处理所花费的时间。
- 排队时延:结点缓存队列中分组排队所经历的时延。取决于网络中当时的通信量。
物理层
一、物理层的基本功能
主要功能:定义了传输介质接口的规范,即解决的是主机、工作站等数据终端设备与通信线路上的通信设备之间的接口问题。
接口标准由四个特性来说明:
- 机械特性:标准的RS-232-C接口使用25针DB连接器(插头/插座);可简化为9针和15针两种;定义了连接器的长、宽、高。
- 电气特性:使用负逻辑。
- 功能特性:
- 规程特性:通信过程由各个信号线有序的"ON","OFF"变化来协调完成的。
二、数据传输的理论基础
2.1 通信系统的模型
2.2 信号与信道
信号:数据的电气或电磁的表现。
信道带宽越宽,信号传输的失真越小。
信道容量:一个信道的最大数据传输速率。
最大数据传输速率=\(2Hlog_2V(bps)\),信号由V个离散等级组成,H为信号通过的低通滤波器带宽。
香农定理:信道受到随机(热)噪声干扰的情况。
最大数据传输速率=\(Hlog_2(1+S/N(bps)\)
信噪比:信号S与噪声N功率的壁纸,常用分贝来表示:10lgS/N(db)。
- 数字信号在模拟信道上传输
- 数字信号在数字信道上传输
- 模拟信号在数字信道上传输
- 模拟信号在模拟信道上传输
2.3 多路复用技术
多路复用技术就是在一个信道上同时传输多个信号的技术。
- 频分多路复用FDM
- 波分多路复用WDM
- 时分多路复用TDM
可能会造成线路资源的浪费
因为时间片固定分配个各个新到,但不考虑这些信道是否有数据发送。
- 异步时分复用STDM:可以动态分配时间片,根据需求分配,同时对每个时间片加上用户标识,区别该时间片属于该用户。
2.4 通信方式
- 单工通信:单向传输,只能有一个方向的通信。
- 半双工通信:通信的双方都可以发送信息,但不能双筒同时发送或接收。
- 全双工通信:通信的双方都可以同时发送和接收信息。
2.5 交换技术
- 电路交换-传统电话网
原理:传输双方在数据传输之前先建立一条物理电路,该物理电路一直保持到双方通信结束后才释放。
三个阶段:
-建立连接
-通信
-释放连接
传送数据效率低。
- 报文交换-电报系统
原理:先不建立电路,当有数据要发送时,把要发送的数据当作一个整体交给中间交换设备,中间设备先将报文存储起来,再选择一条合适的输出线将数据传发给下一个中间交换设备,直到数据发送到目的结点。
特点:
-线路利用率高
-存储管理复杂
-吞吐率低,不适合交互式通信
-如果报文丢失或出错,需全部重传
- 分组交换-IP数据报、X.25、ATM等
原理:在报文交换的基础上将用户数据划分成若干个分组(大小由严格上限),有强大的纠错机制、流量控制、拥塞控制和路由选择功能。
特点:
-可以用内存来传冲分组,速度快
-转发延时小,适用于交互式通信
-出错后可以仅重发出错的分组,效率高
-需要分组,增加端站点的负担。
优点:高效、灵活、迅速、可靠
问题:在各个结点存储转发时需要排队,会造成一定的时延,分组必须携带首部也会造成一定开销。
三、传输介质
- 有向传输介质:双绞线,同轴电缆,光纤。
- 无线介质:无线电,微波,红外线,激光。
链路层
一、链路层的定义和功能
- 定义:数据链路层主要讨论的是在相邻两个节点之间如何进行可靠且有效的通信的问题。
- 功能: 通过向上一层网络提供服务的形式来解决在相邻两个节点之间如何进行可靠且有效的通信的问题。
可提供的服务:
- 无确认的连接服务
- 有确认的连接服务
- 有确认的面向连接的服务
传输过程:把从网络层获取到的分组封装到帧中,加一定的校验信息,然后交给物理层用某种信号表示二进制数据位传送到目的节点;在目的节点,再通过目的节点的物理层和数据链路层上传到网络层。
成帧:在一段数据的前后分别添加首部和尾部。
封装成帧的方法:
- 字符计数法:
每一个帧的第一个字段携带帧的长度信息
帧头出错不光影响本数据帧,还影响后续的帧。
- 带字节填充的分界符法
使用特殊的字节来表示帧的开始与结束,失去同步后,只需要搜索特定的标志字节就可以了----具有再同步能力。
缺点:依赖于特定的字符编码集,灵活性差。
- 带位填充的分界标志法
使用一个特殊的比特模式作为帧的起始与结束标志。----具有再同步能力。
- 物理层编码违例法。
只适用于在物理层编码中使用冗余计数的网络。
差错控制:帧出错,帧丢失,帧重复
校验和确认
- 在要发送的数据中加入一定的冗余位,使接收方能知道数据是否出错,但不知道哪里出错,这种编码方法叫做差错检测吗,或简称检错码
- 在要发送的数据中加入足够多的冗余位,使接收方能纠正出错的位,这种编码方法叫差错校正码,或纠错码
纠错码效率低,适用于不能重传的场合;大部分采用检错码加重传。
循环冗余校验码CRC(多项式编码)
- 将要发送的信息数据与一个通信双方共同约定的数据进行书法运算,根据余数得到校验码,奖校验码附加在信息数据帧之后发送出去
- 收到数据后,将包括校验码在内的数据帧再与约定的数据进行除法运算,若余数为0,表示接收的数据正确,否则出错。
- 数据M(x)
- 生成多项式G(x):双方预先确定的一个多项式,共有r项
- 冗余多项式R(x):\(x^r*M(x)/G(x)\)的余数
- 码多项式:T(x)等于\(x^r*M(x)\)减去余数R(x)
要做到可靠传输,就必须再加上确认和重传机制。
帧丢失的解决措施--超时、重传
帧重复的解决措施--加序号
帧的数据结构