计算机网络学习——王道教材书(持续更新)

计算机网络

文章目录


1.计算机网络体系结构

1.1计算机网络概述

1.1.1计算机网络概念

计算机网络是一个将分散的、具有独立功能的计算机系统,通过通信设备与线路连接起来,由功能完善的软件实现资源共享与信息传递的系统。

1.1.2计算机网络组成

从组成部分上看,计算机网络主要由硬件、软件、协议三大部分组成。

从工作方式来看,计算机网络由边缘部分和核心部分组成,其中边缘部分由所有连接到因特网上,供用户直接使用的主机组成,用来进行通信和资源共享;核心部分由大量网络和连接这些网络的路由器组成,它为边缘部分提供连通性和交换服务。

1.1.3计算机网络功能
  • 数据通信:最基本最重要的功能,能够实现计算机之间的数据传输
  • 资源共享:软件共享、数据共享、硬件共享
  • 分布式处理:提高系统利用率
  • 提高可靠性:一台坏了,可以用同网络下其他计算机代替
  • 负载均衡:将工作任务均衡分配给网络下的计算机
1.1.4计算机网络分类

1.按分布范围分类

广域网、城域网、局域网、个人区域网

2.按传输技术分类

广播式网络、点对点网络

3.按拓扑结构分类

总线型、星形网络、环形网络、网状网络

1.2计算机网络体系结构与参考模型

1.2.1计算机网络分层结构

为了降低协议设计和调试的复杂性,通常对计算机网络系统结构以分层方式进行建模,每层都实现一种相对独立的功能,降低系统的复杂度。

OSI参考模型

img

  • 物理层:物理层的传输单位是比特,物理层的功能是在物理媒体上为数据端设备透明地传输原始比特流。物理层主要定义数据终端设备(DTE)和数据通信设备(DCE)的物理与逻辑连接方法。
  • 数据链路层:数据链路层的传输单位是帧,任务是将网络层传来的IP数据报组装称帧。数据链路层的功能可以概括为:物理寻址、成帧、差错控制、流量控制、传输管理。
  • 网络层:网络层的传输单位是数据报,它的主要任务是把网络层的协议数据单元从源端传到目的端,为分组交换网上的不同主机提供通信服务。
  • 传输层:传输层的传输单位是报文段(TCP)或用户数据报(UDP),传输层负责主机中两个进程之间的通信,功能是为端到端连接提供可靠的传输服务,为端到端连接提供流量控制、差错控制、服务质量、数据传输管理等服务。ps:数据链路层提供的是点到点(IP到IP)之间的通信,而传输层可以直接实现端到端(不同主机间进程到进程)的通信,更加细致化。
  • 会话层:会话层允许不同主机上各个进程之间进行会话。会话层利用传输层提供的端到端的服务,向表示层提供它的增值服务。会话层负责管理主机间的会话进程,包括建立、管理及终止进程间的会话。
  • 表示层:表示层主要处理两个通信系统中交换信息的表示方式。因为不同机器采用的编码和数据结构等不同,所有使用表示层采用抽象的标准方法定义数据结构,并采用标准的编码形式。数据压缩、加密、解密也是表示层可提供的功能。
  • 应用层:是用户与网络的界面,为特定类型的网络应用提供访问OSI参考模型环境的手段,最复杂,也是协议最多的一层,常用的如FTP、HTTP、SMTP等。
1.2.2计算机网络协议、接口、服务的概念
  • 协议:在网络中一种事先约定好的交换数据的规则,这些规则规定了所交换数据的格式及有关的同步问题。
  • 接口:接口是同一结点内相邻两层间交换信息的连接点,是一个系统的内部的规定。每层只能为紧邻的层次之间定义接口,不能跨层定义接口。
  • 服务:服务是指下层为紧邻的上层提供的功能调用。上层使用下层的服务时必须与下层交换一些命令:请求、指示、响应、证实。

2.物理层

物理层考虑怎样在连接各台计算机的传输媒体上传输数据比特流,而不是指具体的传输媒体。

2.1通信基础

2.1.1基本概念

1.数据、信号、码元

  • 数据:传送信息的实体
  • 信号:数据在传输过程中的存在形式
  • 码元:固定时长的信号波形表示一位k进制数字

2.信源、信道、信宿

  • 信源:产生和发送数据的源头
  • 信道:信号的传输媒介
  • 信宿:接收数据的终点

img

​ 图2.1 通信系统模型

信道按传输信号形式不同,可分为模拟信道(传送模拟信号)和数字信道(传送数字信号)。

信道按传输介质不同,可分为无线信道和有线信道。

信道上传输的信号有基带信号(把0和1用不同电压表示,送到数字信道上传输)、宽带信号(在基带信号进行调制后形成模拟信号,送到模拟信道上传输)。

通信方式分为三种:单向通信、半双工通信、全双工通信。

3.速率、波特与带宽

  • 速率:数据传输速率,单位时间内传输的数据量
  • 波特:码元传输速率(波特率)的单位,波特率是单位时间内数字通信系统所传输的码元个数
  • 带宽:信号具有的频带宽度,单位是赫兹(Hz)
2.1.2奈奎斯特定理与香农定理

奈奎斯特定理

奈奎斯特定理给出了码元传输速率的限制,解决了码间串扰问题.(信道频率范围有限,如果高于频率上限,会出现码间串扰)

Cmax=2×B×log2L
这里Cmax指的是信道的最大容量,B是信道的带宽,L还是信号电平的个数

香农定理

香农定理给出了宽带受限且有高斯白噪声干扰的信道的极限传数据输速率。

数据传输率Rmax与信道带宽B,信噪比S/N关系为: Rmax=B*LOG⒉(1+S/N)

2.1.3编码与调制

把数据变为模拟信号的过程称为调制,把数据变为数字信号的过程称为编码

1.数字数据编码为数字信号

归零编码、非归零编码、反向非归零编码、曼彻斯特编码、差分曼彻斯特编码

2.数字数据调制为模拟信号

幅移键控、频移键控、相移键控、正交振幅调制

3.模拟数据编码为数字信号

4.模拟数据调制为模拟信号

2.1.4电路交换、报文交换与分组交换

img

​ 图2.4 三种数据交换方式的比较

1.电路交换

在数据传输前,两个结点之间建立一条专用的物理通信路径,在整个数据传输期间一直被独占,直到通信结束才被释放。电路交换技术分为三个阶段:连接建立、数据传输、连接释放。

电路交换线路独占,导致资源浪费严重

2.报文交换

数据交换的单位是报文,报文携带有目标地址、源地址等信息。报文交换采用存储转发的传输方式。

报文交换存储转发会引起转发时延,对报文的大小没有限制,要求网络结点需要有较大的缓存空间

3.分组交换

分组交换采用存储转发的方式,但是解决了报文交换中大报文传输的问题。分组交换限制了每次传送的数据块大小。

2.1.5数据报与虚电路

1.数据报

源主机将报文分成多个分组,依次发送到直接相连的结点A,结点A收到分组后,对每个分组差错检测和路由选择,不同分组的下一跳结点可能不同,下一跳结点C收到分组P1后,对分组P1进行差错检测,若正确则向A发送确认信息,A收到C确认后丢弃分组P1的副本。

数据报方式为网络层提供无连接服务。发送方可随时发送分组,网络中的结点可随时接收分组。

每个分组在传输过程中都必须携带源地址、目的地址、分组号

2.虚电路

虚电路结合了数据报方式和电路交换方式的优点。

虚电路:一条源主机到目的主机类似于电路的路径(逻辑连接),路径上所有结点都要维持这条虚电路的建立,都维持一张虚电路表,每一项记录了一个打开的虚电路信息。

在这里插入图片描述
图2.6 虚电路方式工作原理

2.2 传输介质

2.2.1双绞线、同轴电缆、光纤与无线传输介质

双绞线

双绞线价格便宜,常在局域网和传统电话网中普遍使用。双绞线距离一般为几千米到数十千米,距离太远时要用中继器进行再生数字信号。

同轴电缆

同轴电缆具有良好的抗干扰特性,被广泛用户传输较高速率的数据,其传输数据更远,但价格较贵。

光纤

光纤利用光导纤维传递光脉冲来进行通信,有光脉冲表示1,无光脉冲表示0。光导纤维传输损耗小,中继距离长,对远距离传输很经济,无串音干扰,保密性好。

无线传输介质

无线电波、微波、红外线和激光等

2.2.2物理层接口的特性
  • 机械特性:规定了接线器的尺寸、形状、排列等
  • 电气特性:规定了电压的范围
  • 功能特性:规定了某一电平的电压表示何种意义
  • 过程特性:指明对于不同功能的各种可能事件的出现顺序

2.3 物理层设备

2.3.1中继器

由于信号经过长电缆后会衰弱,中继器可以将信号整形放大再转发出去。中继器原理是再生数字信号。

2.3.2集线器(多口中继器)

集线器对信号进行再生放大转发,对衰减的信号进行放大,接着转发到其他所有处于工作状态的端口上,以增加信号传输的距离,延长网络的长度。不具备信号的定向传送能力,是一个共享式设备。

img

3.数据链路层

3.1数据链路层的功能

数据链路层在物理层提供的基础上向网络层提供服务,主要作用是加强物理层传输原始比特流的功能,将物理层提供的可能出错的物理连接改造为逻辑上无差错的数据链路。

3.1.1为网络层提供服务
  • 无确认的无连接服务:不建立链路连接,目的机器接收到源机器发送的数据帧后不发回确认。丢失不负责,适用于实时通信或误码率较低的通信通道,如以太网。
  • 有确认的无连接服务:不建立链路连接,目的机器接收到源机器发送的数据帧后发回确认。如果源机器在规定时间内未收到确认信号,重传丢失的帧。适用于误码率较高的通信通道,如无线通信。
  • 有确认的面向连接服务:建立链路、传输帧、释放数据链路。每一帧都要给出确认,源机器收到确认后才发送下一帧,可靠性极高,适用于通信要求较高的场合。
3.1.2链路管理

数据链路层连接的建立、维持和释放过程称为链路管理。

3.1.3帧定界、帧同步与透明传输

img

​ 图3.1 HDLC标准帧格式

帧定界

帧由数据部分加上首部尾部的很多控制信息组成,而首部、尾部的控制信息的重要作用就是确定帧的界限。

帧同步

信号接收方能够从接收到的二进制比特流中区分出帧的起始与终止。

透明传输

如果在数据信息中恰好出现了与标志F相同的比特组合,那么会被误认为传输结束,为了解决这个问题,采取透明传输。透明传输就是不管数据是什么比特组合,都应该能在链路上传送。

3.1.4流量控制

流量控制就是限制发送方的数据流量,使其发送速率不超过接收方的接收能力。举个例子,下课去吃饭,楼道口只有这么大,如果学生一股脑往楼道口冲,显然出不去,因此要限制学生出楼道口的速率。

流量控制的过程需要某种反馈机制使发送方能够知道接收方是否能跟上自己,即需要一些规则使发送方知道在什么情况下可以接着发送下一帧。

3.1.5差错控制

在帧的传输过程中,由于信道噪声的干扰可能出现错误。使发送方确认接收方是否正确收到数据的方法称为差错控制。

错误可分为两种:位错(帧中某些位出现差错)、帧错(帧的丢失、重复或失序)。

3.2组帧

为了在传输出错时不用重发所有比特数据,而把比特组合成帧,在出错时只发送错的帧就可。因此发送方必须根据规则把网络层提交的分组封装成帧,这个过程叫组帧。

目前最常用的还是零比特填充法和违规编码法。

3.2.1字符计数法

在帧头部使用一个计数字段来标明帧内字符数,这样目的结点在收到数据时可以根据头部的字符数确定帧结束的位置。

但是显然,如果在传输中计数字段出错,将造成整个数据混乱。

3.2.2字符填充的首尾定界符法

字符填充法使用特定字符来界定一帧的开始与结束,如图3.4中,控制字符SOH意味帧的开始,控制字符EOT意味帧的结束。为了防止帧的信息中有结束的特殊字符而被误判为帧结束了,可在特殊字符前面添加转义字符ESC加以区分(转义字符是ASCII码中的控制字符,是一个字符,不是E、S、C三个字符),以实现透明传输。

3.2.3零比特填充的首尾标识法

零比特填充法允许数据帧包含任意个数的比特,也允许每个字符的编码包含任意个数的比特。

原理是使用一个特定的比特模式,即01111110来标志一帧的开始和结束。为了不使信息位中出现比特流01111110而被误判帧的首尾标志,发送方的数据链路层在信息位中遇到5个连续的“1”时,将自动在其后面插入一个“0”;而接收方执行逆操作。

3.2.4违规编码法

曼彻斯特编码中只有“高-低”电平对表示“1”和“低-高”电平对表示“0”,而没有“高-高”和“低-低”电平对,我们可以借用这种违规作为帧的起始与终止。

3.3差错控制

比特在传输过程中可能会出现差错,比特差错是传输差错的一种,本节仅分析比特差错。

编码技术进行差错控制主要有两类:自动重传请求ARQ和前向纠错FEC。

3.3.1检错编码

有效数据发送前,先按规则加一定的冗余位,符合某一规则的码字后再发送,接收端根据收到的码字是否仍符合原规则来判断是否出错。

1.奇偶校验码

奇偶校验码是奇校验码和偶校验码的统称,是一种最基本的检错码。

原理是:由n-1位信息元和1位校验码组成,如果是奇校验码,那么在附加一个校验元后,码长位n的码字中“1”的个数位奇数,如果是偶校验码,则“1”的个数位偶数。

这种校验方法只能检测奇数位的出错情况,但并不知道哪些位错了,也不能发现偶数位的出错情况。

2.循环冗余码

循环冗余码(CRC),又称多项式码,任何一个由二进制位数串组成的代码都可以与一个只含有0和1两个系数的多项式建立一一对应关系。

具体计算过程请查看王道教材P69

3.3.2纠错编码

在数据块上附加足够多的冗余信息,能够让接收方推导出实际发送了什么样的比特串,就叫纠错编码(自己能够改正)。

最常见的纠错编码是海明码,实现原理是在有效信息位中加入几个校验位形成海明码,并把海明码的每个二进制位分配到几个奇偶校验组中。

具体计算过程请查看王道教材P70

3.4流量控制与可靠传输机制

3.4.1流量控制、可靠传输与滑动窗口机制

流量控制涉及对链路上帧的发送速率的控制,以使接收方由足够的缓冲空间来接收每个帧。

流量控制的基本方法是使接收方控制发送方发送数据的速率,常见的方式有两种:停止-等待协议和滑动窗口协议。

1.停止-等待流量控制基本原理

发送方没发送一帧,都要等待接收方的应答信号之后才可以发送下一帧,不然就一直处于等待状态。

2.滑动窗口流量控制基本原理

在任意时刻,发送方都要维持一组连续的允许发送的帧的序号,称为发送窗口;同时接收方也要维持接收窗口。

发送端每收到一个确认帧,发送窗口就会向前滑动一个帧的位置;接收端口收到帧数据后,将窗口向前移一个位置,并发回确认帧。

3.可靠传输机制

可靠传输机制通常由确认和超时重传两种机制完成。

确认是在接收方正确接收了内容后发送一个回复帧,称为捎带确认。

超时重传是发送方发送数据帧后启动计时器,如果没有在规定时间内收到确认帧,则重新发送该数据帧。

3.4.2单帧滑动窗口与停止-等待协议

停止等待协议前面讲了,是单帧的发送与确认,相当于发送窗口和接收窗口大小均为1的滑动窗口。

3.4.3多帧滑动窗口与后退N帧协议(GBN)

在GBN协议下,发送方无需等待上一帧的确认帧后再发送下一帧,而是可以连续的发送帧,当接收方检测出失序信息帧后,要求发送方重发出错帧后的有所未确认帧。

3.4.4多帧滑动窗口与选择重传协议(SR)

选择重传协议可设法只重传出现差错的数据帧或计时器超时的数据帧,但是接收方窗口要加大,以便先收下发送序列不连续但仍处在接收窗口中的那些数据帧。等到所缺的数据帧收到后再一并交给主机。

img

3.5介质访问控制

介质访问控制所要完成的主要任务,是为使用介质的每个结点隔离来自同一信道上其他结点所传送的信号,以协调活动结点的传输。

3.5.1信道划分介质访问控制

信道划分介质访问控制将使用介质的每个设备与来自同一通信信道上的其他设备的通信隔离开来,把时域和频域资源合理的分配给网络上的设备。

1.频分多路复用(FDM)

频分多路复用是一种将多路基带信号调制到不同频率载波上,将物理信道分割成若干个与传输单个信号宽带相同的子信道,每个子信道传输一种信号。

2.时分多路复用(TDM)

时分多路复用是将一条物理信道按时间分成若干时间片,轮流的分配给多个信号使用。

3.波分多路复用

4.码分多路复用(CDM)

码分多路复用采用不同的编码来区分各路原始信号的一种复用方式。与FDM和TDM不同,它既共享信道的频率,又共享时间。

3.5.2随机访问介质访问控制

在随机访问协议中,不采用集中控制进行人为划分干预的这种方式,更像是原始社会,所有用户都能随意的发送信息,占用信道全部速率,但是为了解决几个用户发送帧之间的帧冲突,就需要每个用户按照一定的规则反复的重传帧,直到帧无碰撞的通过。

它的核心思想是:胜利者通过争用获得信道,从而获得信息的发送全,因此又叫做争用型协议。

随机介质访问控制实质上是将广播信道转化为点到点信道的行为。

1.ALOHA协议

其基本思想是:当网络中有任何一个站点需要发送数据时,可以 不进行任何检测就发送数据。如果在一段时间内未收到确认,那么该站点就认为传输过程中发生了冲突,发送站点需要等待一段随机时间后再发送数据,直至发送成功。

2.CSMA协议

因为ALOHA协议每个站点随心所欲的发送数据,因此发送碰撞的概率很大。若每个站点在发送前都先侦听一下公共信道,发现信道空闲后再发送,则就会大大降低冲突的可能,CSMA协议是在ALOHA协议基础上多了一个载波监听装置。

3.CSMA/CD协议

载波侦听多路访问/碰撞检测协议是CSMA协议的改进,碰撞检测是边发送边侦听,即适配器边发送数据边检测信道上信号电压的变化情况,以便判断自己在发送数据时其他站点是否也在发送数据。

3.5.3轮询访问介质访问控制:令牌传递协议

3.6局域网

3.6.1局域网的基本概念和体系结构

局域网是只在一个较小的范围内,将各种计算机、外部设备、数据库系统等连接起来的可以共享信息的互联网络。

局域网的特性主要由拓扑序列、传输介质、介质访问控制方式三个要素决定。

以太网是目前使用范围最广的局域网,基本处于局域网的垄断地位。逻辑拓扑是总线型结构,物理拓扑是星形或拓展星形结构。

3.6.2以太网与IEEE 802.3

以太网采用的无连接无确认的方式,发送的数据都使用曼彻斯特编码的信号。

3.6.3IEEE 802.11
3.6.4令牌环网的基本原理

3.7广域网

3.7.1广域网的基本概念

广域网通常是指覆盖范围广(超过一个城市的范围)的长距离网络。广域网是因特网的核心部分,其任务是长距离运送主机所发送的数据。

广域网由一些结点交换机及连接这些交换机的链路组成,结点交换机的功能是将分组存储并转发。

广域网中一个重要问题是路由选择和分组转发。

3.7.2PPP协议

PPP(Point-to-Point Protocol)是使用串行线路通信的面向字节的协议,该协议应用在直接连接两个结点的链路上。

PPP协议有三个组成部分:

  • 1)链路控制协议(LCP)。一种扩展链路控制协议,用于建立、配置、测试和管理数据链路。

  • 2)网络控制协议(NCP)。PPP协议允许同时采用多种网络层协议,每个不同的网络层协议要用一个相应的NCP来配置。

  • 3)一个将IP数据报封装到串行链路的方法。IP数据报在PPP帧中就是其信息部分。

3.7.3HDLC协议

高级数据链路控制(High-level Date Link Control,HDLC)协议是ISO制定的面向比特的数据链路层协议。

所有帧采用CRC检验,对信息帧进行顺序编号,防止漏发重发。

img

图3.33 HDLC的帧格式

3.8数据链路层设备

3.8.1网桥的概念及其基本原理

网桥根据MAC帧的目的地址对帧进行转发和过滤。当网桥收到一个帧时,先检查此帧的目的MAC地址,然后确定将该帧转发到哪个接口,或者把他丢弃(过滤)。

1.透明网桥

“透明”是只以太网站点不知道所发送的帧经过了哪些网桥,是一种即插即用的设备——自学习

2.源路由网桥

源路由网桥:在发送帧时,把详细的最佳路由信息放在帧的首部。

方法:源站以广播方式向欲通信的目的站发送一个发现帧。

3.8.2局域网交换机及其工作原理

4.30更新

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狮子座的程序员

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值