1.1.1 计算机网络的概念
1、计算机网络的定义
1)计算机网络是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统。
2)计算机网络三层含义:目的——资源共享、组成单元——自治计算机、规则——网络协议
2、计算机网络模型
1)客户-服务器模型(胖客户、瘦服务器)
客户机向服务器发出请求,服务器根据请求响应用户机,这种通信也被称为进程间通信。应用处理和事务处理逻辑都在客户端表达,服务器软件相对较为简单。
2)浏览器-服务器模型
这种模型也被称为瘦客户-胖服务器模型。应用处理和事务处理逻辑都由服务器软件实现,客户机和服务器之间通过浏览器进行交互。
3)P2P对等模型
双方没有主动和被动之分,任何一方都可以发起并实现一次通信进程。
3、计算机网络的功能
数据通信、资源共享、负载均衡、分布式处理、提高系统可靠性、远程控制...
4、计算机网络的组成
从组成部分上分:分为硬件、软件和协议。
从工作方式看:分为边缘部分和核心部分(接入层、汇聚层、核心层)。
从功能组成看:分为资源子网和通信子网。
通信子网由各种传输介质,通信设备和响应的网络协议组成。
资源子网是实现资源共享功能的设备及其软件的集合。(包括CPU、存储器、硬盘、磁带、打印机、绘图仪、操作系统、数据库系统、工具软件和应用程序等)
ISP是服务提供者,INTERNET的网络运营商,大量的ISP网络形成通信子网,可以分配管理IP。
ICP是内容提供者,属于资源子网,向用户提供服务。
5、计算机网络的分类
1)按地理范围分:广域网WAN、城域网MAN、局域网LAN和个人局域网PAN。
2)按传输技术分:广播式网络、点对点网络。
3)按拓扑结构分:总线型、星形、环形、网状形。
①总线形网
优点:删减设备容易,节省线路,任何两个节点只需一跳
缺点:总线任何一处对故障敏感,但是依然克服单点失效
②星形网
优点:便于集中控制和管理
缺点:成本高、中央设备对故障敏感
③环形网
优点:克服了单点失效问题。
缺点:当网络节点增多时,网络延迟也增加。
④网状形
优点:可靠性高
缺点:控制复杂成本较高。
4)按交换技术分
①电路交换网络
步骤:建立连接、进行通信、释放连接
优点:报文比特流直达终点,实时性好、可靠性高,时延小
缺点:线路利用率低,建立连接花费时间长,不利于差错控制
②报文交换网络
步骤:用户加上源地址、目的地址、校验码等信息,封装成报文,然后存储转发。
优点:不必建立连接,信道利用率高;不同分组使用不同路由,较为灵活;可以及时掌握网络拓扑结构变化
缺点:增加了缓存时延,传输延迟大;每个分组都有额外的头部开销;缓冲区难以管理
③分组交换网络
步骤:同报文,但是限制分组大小
优点:拥有报文交换的优点,并且缓冲易于管理,更易于标准化和使用
缺点:同报文
6、计算机网络的产生和发展
世界上最早的计算机网络是ARPANET
计算机网络发展分为:以主机为中心的联机终端系统、以通信子网为中心的主机互连、体系结构化标准网络。
制定因特网标准的四个阶段:因特网草案(在这个阶段还不是 RFC 文档)、建议标准、草案标准、因特网标准、
7、计算机网络的性能指标
1)带宽:计算机网络中的“带宽”是数字信道所能传送的“最高数据率”的同义语,单位是“比特每秒”,或 b/s (bit/s)。
2)时延:节点将分组所有比特发送至链路:由发送时延和传输时延组成(省略了排队和处理)
发送时延 = 分组长度/信道宽度
传输时延 = 信道长度/电磁波在信道的传输速率
3)时延带宽积:发送端发送的第一个比特到达终点时,发送端发送的比特数
时延带宽积 = 传播时延*信道带宽
4)往返时延RTT、吞吐量、信道利用率、网络利用率(信道利用率的平均值)。
7、网络协议和体系结构
1)三要素:语法、语义、时序
2)网络体系结构是网络层次结构模型与各层协议的集合。
3)网络体系结构采用层次结构方法的优点: 各层之间相互独立,灵活性好,易于实现和标准化
8、OSI参考模型
1)物理层:利用传输介质为通信的网络主机之间建立、管理和释放物理连接,实现比特流的透明传输,为数据链路层提供数据传输服务。传输单位是比特。
2)数据链路层通过建立数据链路连接,采用差错控制与流量控制方法,使有差错的物理线路变成无差错的数据链路。传输单位是帧。
3)网络层通过路由选择算法为分组通过通信子网选择最适当的传输路径,实现流量控制、拥塞控制与网络互联的功能。传输单位是分组(数据报)。
4)传输层为分布在不同地理位置计算机的进程通信提供可靠的端—端连接与数据传输服务。传输单位是报文(TCP/UDP)。
5)会话层允许不同主机上的各种进程进行会话,也称建立同步。负责维护两个会话主机之间连接的建立、管理和终止,以及数据的交换。单位是数据单元
6)表示层负责通信系统之间的数据格式变换、数据加密与解密、数据压缩与恢复。
7)应用层实现协同工作的应用程序之间的通信过程控制。
9、TCP/IP(Internet)参考模型
1)网络接口层(主机网络层)是TCP/IP参考模型的最低层,
它负责通过网络发送和接收IP分组。
2)网际层(互联网络层)将分组发往任何网络,并进行路由选择,但不保证有序。
3)传输层负责在会话进程之间建立和维护端-端连接,实现网络环境中分布式进程通信。TCP是一种可靠的、面向连接、面向字节流的传输层协议。TCP协议提供比较完善的流量控制与拥塞控制功能。UDP是一种不可靠的、无连接的传输层协议。
4)应用层包含所有高层协议。
10、TCP/IP和OSI的比较
相同点:①都采用分层结构,且分层相似②都基于协议栈的概念③都可以解决异构网络互联
不同点:①OSI精确定义了服务协议和接口的概念,而TCP/IP没有明显区分②OSI通用性比TCP/IP好③TCP/IP设计之初,就将IP作为一个单独层次,OSI最初没有考虑到其重要性④OSI网络层支持面向连接和无连接的通信,在传输层仅有面向连接的通信;而TCP/IP在网络层只有无连接的通信,在传输层有连接和无连接通信。
2.1.1 信源、信道和信宿
1)信道的通信方向:单工信道、半双工信道、全双工信道
2)信号:信道上传输的信号分为基带信号和宽带信号。
基带信号将数字信号直接用不同的电压表示,送到数字信道上传输,称为基带传输
宽带信号将基带信号进行调制后形成频分复用模拟信号,送到模拟信道传输,称为宽带传输
3)信道影响因素:信道带宽、容量、误码率
4)数字通信优点:
误码率低,抗干扰能力强;适合远距离传输;有利于安全性
5)波特率(码元传输速率):单位时间数字通信系统中传输的码元数量。
2.1.2 奈奎斯特定理和香农定理
1、奈奎斯特定理
1)理想低通信信道下极限数据传输速率 = 2Wlog2V(b/s)
W是理想低通带宽、V是每个码元的离散电平数。
2、香农定理
1)信道的极限传输速率=Wlog2(1+S/N)
W为信道带宽、S为信道信号平均功率、N是信道内部高斯噪声功率。
2)信道的带宽或者信噪比越大,极限传输速率越高。
3)信息传输速率上线确定,且难以达到。
2.1.3 编码与调制
1、数据变换为模拟信号的过程叫调制、把数据变换为数字信号叫编码
2、编码方式
1)非归零编码
优点:编译码简单
缺点:内部不含时钟信号,收发同步困难
用途:计算机内部或低速通信
2)曼彻斯特编码
优点:内部自含时钟,收发端同步容易;抗干扰能力强
缺点:编译码复杂;占用更多信道带宽。
3)差分曼彻斯特编码
优点:内部自含时钟,收发端同步容易;比曼彻斯特编码抗干扰能力更强
缺点:编译码更复杂,同样多占用一倍带宽
3、数字调制技术
1)包括:幅移键控(调幅)、频移键控(调频)、相移键控(调相)
4、模拟信号的数字传输
模拟信号转化为数字信号,然后通过数字信道传输。
脉码调制步骤:采样、量化、编码。
假设原理信号最大频率为f,那么采样频率必须大于等于最大频率的两倍(奈奎斯特定理)
5、数据同步方式
同步:接收端按发送端发送代码的频率和起止时间来接收数据。 分为字符同步和位同步。
1)字符同步方式(异步通信)
确定各个字符的边界。以字符为边界实现字符的同步接收,也称为起止式或异步制。
优点:时钟漂移被限制在一个字符内,不会产生太大的积累误差。因此对同步精度要求不高,同步容易。 缺点:每个字符均有起始/停止位,因而传输效率较低。 适用:低速通信。
2)位同步(同步通信):目的是使接收端接收的每一位信息都与发送端保持同步。
优点:每个数据块仅需要2个同步位模式的额外开销,因而传输效率高。例:设数据块为1K字节,则每次连续同步位数为1024x8=8192位。 缺点:由于一个数据块所含位数较多,易产生时钟漂移积累误差而导致数据出错,因此对同步精度求高,同步困难。 适用:高速通信。
2.1.4传输介质
物理传输媒体:双绞线、同轴电缆(基带、宽带)、光纤(单模、多模)
无线传输媒体:无线电波;微波、红外和激光
2.1.5物理层接口特性
机械特性:规定接口的扦头(座)的规格,尺寸,扦脚数目等。 功能特性:对接口各信号线的功能和作用进行定义和说明。 规程特性:规定各信号线之间的相互关系,动作发生的先后次序。 电气特性:规定信号的传输速率,电平关系,负载要求和电缆长度等。
课前思考:
为什么要建立链路连接?
保证对物理层传入的可能存在差错的比特流进行差错检测、流量控制等,为上层提供可靠无差错的数据帧。
链路连接与物理连接的区别和联系?
区别是传输的单位不同,并且链路连接比物理连接多了实现通信的必要软硬件等规程,将物理层可能出错的原始比特流传输连接改造成为逻辑上无差错的数据链路;联系
数据链路层上常用的差错控制编码和流量控制策略?
奇偶校验码、定比码、海明码、循环冗余校验码
停等协议、回退N帧协议、选择重传协议
常用的数据链路层协议有?
PPP、HDLC、NCP
3.1 数据链路层的功能
数据链路:链路是两个节点之间一条点到点的物理线路,不存在其他交换节点。
功能:实现系统实体间的二进制数据单元的正确传输;通过必要的同步控制、差错控制、流量控制为其上层提供可靠无差错的数据信息。
通过以下四个方式:帧同步、差错控制、流量控制、链路管理(链路连接的建立、维持和释放)
3.1.1 帧同步
帧同步即接收端应当能从收到的比特流中准确地识别一个帧的开始和结束,并且让发送方将在传输中出错的帧重新发送(重传),这样可避免重新传输所有的数据。
常用方法:字符填充、比特填充、字符计数法
3.1.2 差错控制
编码技术分为两类:向前纠错(接收方修正,开销大)、自动请求重发、混合纠错。
前向纠错FEC:发送方将待发送的数据加上一定的冗余纠错码,接收方根据纠错码对数据进行差错检测,如果发现错误自行修正。
自动请求重发:发送方将要发送的数据附加上一定的冗余检错码一并发送;接收方进行差错检测时,如果发现错误,则返回请求重发信息,另外还要设置超时重传机制。
3.1.3 流量控制
防止接收端缓存不足造成阻塞和数据丢失。流量控制就是使发送方和接收方的数据处理速率保持一致。方法:停止等待协议、滑动窗口协议。
3.1.4 链路管理
数据链路的建立、维持和释放就叫做链路管理。
3.2.1 传输差错的特征
热噪声:传输介质分子热运动。干扰幅度小,持续性,对模拟通信影响大。
冲击噪声:外界干扰。干扰幅度大,突发性,对数字通信影响大。
3.2.2 编码效率、检错和纠错能力
码字:由信息位和校验位组成的比特流。
码字距离:两个码字之间不同的位数。
海明距离:两个码字之间的最小距离(最小不同位数)。
海明距离决定了编码系统的检错和纠错能力。
若检测d位出错,则海明距离至少为d+1. 若纠正d位出错,则海明距离至少为2d+1.
海明码的计算!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
海明码的缺点与改进:海明距离只能纠正一位出错,而实际通信过程中经常发生的是突发性错误。要纠正这样的突发性出错,则必须加大海明距离;但加大海明距离势必会增加校验位长度,从而降低了编码效率。同时也会使编码系统过于复杂。若要纠正突发错,则按列发送,数据块到达接受端,再重新组成矩阵。
3.2.3 循环冗余校验码CRC
检错方式:略
检错能力:CRC码不能100%的发现错误,当余数为“0”时可能发生错误。CRC检错率取决于生成多项式G(x)。
3.2.4 其它差错控制编码
奇偶校验码、定比码、正反码
3.3.1 停止等待协议
①发送方发送一帧后,等待对方的应答。 ②接收端收到一帧后,检查校验位串。若出错,返回“否认”信息;若无错,返回“确认”信息。 ③发送端收到“确认”后,立即发送下一帧;收到“否认”则重发该帧。 ④发送端发送一帧后,立即启动超时计时器。若超时中断,重发该帧。 ⑤接收端应保存最近收到的帧序号,若下一个到达帧的序号与该序号相同,则丢弃并返回“确认”信息。
缺点:信道利用率低
优点:操作简单
信道最大利用率:U = (L/B)/((L/B)+2R).B为信道速率,L为帧长,R为信号在信道中的单程传播延时,U为信道的最大利用率。
3.3.2 滑动窗口协议
基本思想:为提高信道利用率,允许发送方连续发送若干帧后再等待对方应答。
优点:仅需一个接收缓冲区 缺点:当信道误码率较高时,会产生大量重发帧
发送窗口的大小为:1 累计确认的利弊:好处是即使确认分组丢失,发送方也可能不必重传,减少接收方开销;缺点是不能向发送方及时反映出接收方已经正确接收的数据分组的信息。 3.3.3 选择重传协议 发送窗口必须满足:1 < Wt < 2^(n-1) 接收方窗口必须满足:1 < Wr <= Wt(过大没有意义) WT+ WR≤2m 3.4.1 HDLC协议 HDLC协议是一种面向比特的链路层协议,是指以二进制位作为数据帧的基本数据单位。 其固定使用01111110,标志着一个帧的开始和结束。 控制字段表示帧类型、帧编号和其他控制信息。帧类型有:信息帧,监督帧,无编号帧 数据:要传输的数据,可以是任意二进制位的组合,即高层的报文分组。 帧校验:16位CRC码,G(X)=CRC-CCITT= x16+x12+x5+1 工作原理: ①建立数据链路连接 ②传输数据帧。当数据链路建立完毕,发送/接收方按照某种流量控制策略发送和接收数据帧,并允许捎带应答。 ③拆除链路连线。全部数据发送完毕,发送方发出DISC(拆除连接)无编号帧,接收方返回UA作为响应,此时释放链路层实体占用的资源。 3.4.2 PPP协议 PPP协议是Internet上主流的链路层协议,主要用于拨号接入Internet的场合。 PPP协议的对等段是客户和ISP。可以传输数据帧并协商使用网络层协议。它和HDLC协议的不同在于它是使用串行线路通信的面向字节协议,可以在同步和异步线路上使用。 由于流量控制、差错控制已在TCP中实现,因此PPP没有纠错功能,不进行流量控制,不需要帧序号,不支持多点链路,使用全双工方式传输数据。 PPP协议规定以下三部分内容:帧格式和成帧方法;用于建立、配置和测试PPP链路的LCP;用于建立和配置网络层协议的NCP。此外,当客户拨入ISP时,ISP需要验证客户的身份,此时可使用2个认证协议,即PAP(Password Authentication Protocol,口令认证协议)和CHAP(Challenge Handshake Authentication Protocol)。 成帧方法:定义了将IP数据报封装到串行链路的方法,明确地定界一个帧的结束和下一个帧的开始,其帧格式允许进行错误检测。 链路控制协议LCP:负责线路的建立、配置、测试和选项协商和释放。 网络控制协议NCP:可支持不同的网络层协议,对于所支持的每一个网络层协议都有一个不同的网络控制协议,用来建立和配置不同的网络层协议。 PPP协议流程: 在建立PPP链路前,发起方必须通过电话网络呼叫回应方。呼叫成功后双方建立了一条物理连接。 利用LCP创建PPP链路 用PAP或CHAP验证客户身份 用IPCP配置IP层参数(主要是配置IP地址) 通信完成后,双方利用LCP断开PPP链路 之后,断开物理连接 PPP协议帧格式: 标志:01111110,标志一帧的开始和结束。 地址:总是固定的11111111 控制:缺省00000011 协议:PPP的高层协议,如IP等 数据:静载荷数据,如IP分组。 CRC:CRC校验序码,同HDLC 在缺省的情况下,PPP没有采用序号和确认来进行可靠的传输。主要用于信道质量较好的场合,在信道质量较差的情况下,也可使用序号和确认机制进行差错控制。 3.5.1 网桥 网桥(bridge)是一种数据链路层互联的设备。网桥是一种对帧进行转发的技术,根据MAC分区块,可隔离碰撞。网桥将网络的多个网段在数据链路层连接起来。网桥也叫桥接器,是连接两个局域网的一种存储/转发设备,它能将一个大的LAN分割为多个网段,或将两个以上的LAN互联为一个逻辑LAN,使LAN上的所有用户都可访问服务器。 在网络互联中它起到数据接收、地址过滤与数据转发的作用,用来实现多个网络系统之间的数据交换。网桥可根据帧的终点地址处于哪一网段来进行转发和滤除。 网桥具有以下基本特征: (1)网桥在数据链路层上实现局域网互联。 (2)网桥以接收、存储、地址过滤与转发的方式实现互联网络之间的通信。 (3)网桥可以分隔两个网络之间的广播通信量,有利于改善互连网络的性能与安全性。3.4 数据链路层协议举例
3.5 数据链路层设备