一、计算机网络体系结构
1.概述
计算机网络(Internet):将分散的、具有独立功能的计算机系统通过通信设备和线路连接起来,从而实现资源共享和信息传递的系统。
组成:一个完整的计算机网络主要由硬件(如:主机、光纤/双绞线、路由器/交换机、网卡等)、软件(如:网络操作系统、邮件收发系统、FTP程序、聊天程序等)、协议三大部分组成
工作方式:计算机网络分为边缘部分和核心部分。边缘部分由连接到因特网的主机组成,主机间可进行通信(传输数据/音频/视频)和资源共享。核心部分由大量路由器组成,为边缘部分提供连通和交换服务
功能组成:计算机网络由通信子网和资源子网组成。通信子网由传输介质、通信设备和网络协议组成,实现了计算机间的数据通信。资源子网由资源共享设备和软件集合组成,向用户提供其他计算机上的硬件资源、软件资源和数据资源。
功能:
- 数据通信:文件传输、电子邮件等
- 资源共享:硬件共享、软件共享、数据共享
- 分布式处理:将一个复杂任务分配给多个计算机系统处理,从而分担压力
- 提高可靠性:计算机网络中的计算机可通过网络互为替代机
- 负载均衡:将工作任务均衡分给网络中的多台计算机
分类:
- 分布范围:广域网/城域网/局域网/个人区域网
- 传输技术:广播式网络/点对点网络
- 拓扑结构:总线形/星形/环形/网状
- 使用者:公用网/专用网
- 交换技术:电路交换网/报文交换网/分组交换网
- 介质:有线/无线,其中有线网又分为双绞线网、同轴电缆网,无线网分为蓝牙、无线电等
性能指标:
- 带宽,标识网络通信线路传送数据的能力(最高数据传输速率),单位比特/秒(b/s)
- 时延,数据从网络的一端传送到另一端所需总时间,包括发送时延、传播时延、处理时延、排队时延,总时延为4者之和。排队和处理时延一般可忽略不计,对于高速链路,提高的仅是发送速率从而减低发送时延。
- 时延带宽积,其值=传播时延*信道带宽
- 往返时延
- 吞吐量,单位时间内通过某网络(信道、接口)的数据量,受网络带宽和额定速率限制
- 速率,连接到网络的主机在数字信道上传送数据的速率,也叫数据传输速率/比特率,单位b/s,带宽是最高速率
- 信道利用率,指某信道有百分之多少时间有数据通过,其值=有数据通过数据/整体时间
2.分层结构
分层结构是什么?
为什么要分层?——为了降低协议设计和调试国过程的复杂性,便于对网络进行研究、实现和维护,促进标准化工作,故对计算机网络结构体系进行分层建模。
计算机网络体系结构——计算机网络的各层即其协议的集合
分层的基本原则
- 每一层只实现一种相对独立的功能(降低系统复杂度)
- 每层间界限清晰,易于理解,相互交互尽可能少
- 每层的定义不规定具体的实现方法,采用最合适的技术实现即可
- 保持下层对上层的独立性,上层单向使用下层服务
- 分层结构有利于促进标准化
传输的数据类型:
- SDU(服务数据单元)—— 为完成用户要求的功能而传送的数据
- PCI(协议控制信息)—— 控制协议操作的信息
- PDU(协议数据单元)—— 对等层次间传送的数据单位(实体:任何可发送或接收信息的硬件或软件进程,对等层:不同机器上的同一层,对等实体:同一层的实体)。每一层的PDU名称不同,如物理层(即第一层)的PDU叫比特,数据层的PDU叫帧,网络层的PDU叫分组,传输层的PDU叫报文段。
三者的关系:把第n+1层收到的PDU作为第n层的SDU,第n层的SDU加上第n层的PCI就是第n层的PDU(n-SDU + n-PCI = n-PDU = (n-1)-SDU)
各层间的逻辑关系:
- 第n层实体既要使用第n-1层服务,还要向第n+1层提供服务
- 最底层只提供服务;中间层即使用服务又提供服务;最高层只向用户提供服务
- 上一层只能通过相邻层间接口使用下一层服务,不能使用其他层服务;下一层提供的服务细节只对上一层透明;
- 两台主机通信时,表现为不经过下层就把信息传送给对方
3.相关概念
协议:网络中要做到有条不紊地交换数据就需要事先定义好规则,这些规则明确规定了交换数据的格式及有关的同步问题,这些规则就称为网络协议。协议只针对对等实体通信而言,不对等实体间没有协议(例如:TCP/IP协议只针对A结点的传输层和B结点传输层之间,若为A结点传输层和B结点网络层之间则无协议)。协议由语法(规定传输数据格式)、语义(规定要完成的功能——发出何种控制信息完成何种动作及做出何种应答)和同步(执行各项操作的条件和时序关系)三部分构成。一个完整的协议应具有线路管理、差错控制、数据转换等功能。
接口:用于同一结点内相邻两层间交换信息,每层只能为相邻层定义接口,不能跨层定义接口。相邻俩层实体通过服务访问点(SAP)进行交互。
服务:下层为紧邻的上层提供的功能服务,上层使用下层服务时必须与下层交换命令,分为4种命令:
- 请求:请求完成某项工作(上层发给下层)
- 指示:指示用户做某项事情(下层发给上层)
- 响应:作为对指示的响应(上层发给下层)
- 证实:作为对请求的证实(下层发给上层)
三者的关系:协议是“水平的”,只控制对等实体间通信;服务是“垂直的”,由下层通过接口向上提供服务,在一层内完成的全部功能不都叫做服务,只有在高一层实体看得见的功能才叫服务;
服务的分类:
- 面向连接服务/无连接服务:前者通信前双方先建立连接,分配资源,传输结束后释放连接和所占用资源,分为建立连接、数据传输、连接释放三个阶段,例如TCP就是面向连接服务的协议;后者通信前双方不需要建立连接,需要发送数据时直接发送,由系统选定路线进行传输,例如IP、UDP就是一种无连接服务的协议。
- 可靠服务/不可靠服务:前者是指网络具有纠错、检错、应答机制,能保证数据正确可到传输;后者指网络尽量正确地传输,不能保证数据正确可靠传输,针对不可靠信息,需要用户去判断信息的正确性,不正确则向信息发送者报告。
- 有应答服务/无应答服务:前者指接收方在收到数据后会向发送方给出应答,可以是肯定应答也可是否定应答(数据有误时发送),例如FTP就是一种有应答服务;后者指接收方收到数据后不自动给出应答,若要应答需要高层实现,例如WWW服务,客户端收到服务器发送页面文件后不给出应答
4.OSI参考模型
ISO(International StandardizationOrganization,国际标准化组织)提出的网络体系结构模型,称为OSI模型(Open System Interconnect Reference Model,开放系统互连参考模型)。模型有7层,低三层称为通信子网(为了联网而附加的通信设备,完成数据的传输功能),高三层为资源子网(相当于计算机系统,完成数据的处理等功能),剩下的传输层承上启下。
物理层:传输单位是比特,功能是在物理媒体上为数据端设备透明地传输原始比特流(简言之:比特流传输,即电流,高电流表示1,低电流表示0)。通信链路和通信结点的连接需要一些电路接口,物理层规定了这些接口的一些参数(如机械形状和尺寸、交换电路的数量和排列、笔记本电脑上的网络接口规格等;物理层也规定了通信链路上传输的信号的意义和电器特征(例如规定信号A代表数字0);传输信息所利用的一些物理媒体(如双绞线、光缆、无线信道等)并不在物理层协议之内而在物理层协议下面)
数据链路层:传输单位是帧,用于将网络层传来的IP数据组装成帧,功能包括:成帧、差错控制(在物理传输比特流过程中,可能由于外界噪声的干扰将信号A变成了信号B从而接收端发生差错,而加入数据链路层则可以检测出这些差错,然后把错误信息丢弃,这就是差错控制)、流量控制(如果发送端A发送数据的速率快于接收端B,则B可能会丢弃很多来不起接收的正确数据,此时流量控制可以协调两端的速率保证正常发送和接收)和传输管理(定义链路标准,即有线连接还是无线连接,线路是100M还是1000M,传递范围多远,稳定性怎么样,抗干扰性怎么样等)等。
网络层:传输单位是数据报,主要任务是把网络层的协议数据单元(分组)从源端传到目的端,为分组交换网上的不同主机提供通信服务,关键问题是对分组进行路由选择(如图,A向B传输一个分组时,即可经过a->c->g,也可经过b->h等,网络层的作用就是根据网络情况,利用路由算法计算出一条合适的路径使分组可顺利到达B),并实现流量控制(流量控制与数据链路层流量控制含义一样)、拥塞控制(如果1.10中所有结点处于来不及接收分组而丢弃大量分组情况,则网络处理拥塞状态,俩个结点无法通信,网络层要采取一定戳是缓解这种拥塞状态)、差错控制(差错控制是通信两结点之间约定的特定检错规则,如奇偶校验码,接收方根据这个规则判断接收到的分组是否出现差错)和网际互联等功能。(因特网的网络层也称网际层或IP层)(寻址——选择目标IP地址和路由选择——通过代价最小的路径找到目标)
传输层(运输层):传输单位是报文段或用户数据报,功能是为端到端连接提供可靠(TCP,传输控制协议,即传输数据结点间需要先建立连接,传输前需要确认、协商和差错重传,传输完成后需要断开连接,保证了数据100%传输过去,一般用于FTP、HTTP和Email等可靠性要求高的)和不可靠(UDP,用户数据报协议,不需要建立连接,不需要确认、协商和差错重传,具体有没有收到我不管,优势在于传的快,一般用于直播、语音等)的传输服务,为端到端来凝结提供流量控制、差错控制、服务质量、数据传输管理等服务(链路层是点到点的通信——即主机到主机之间,是以硬件地址或IP地址识别;传输层是端到端通信——不同主机内的两个进程间的通信,以端口来识别)
会话层:允许不同主机上的各个进程间进行会话,会话层利用传输层端到端的服务向表示层提供服务(表示层实体或用户进程建立连接并在连接上有序传输数据),会话层负责管理主机间的会话进程(建立、管理及终止进程间的会话),可以使用校验点使通信会话在通信失效时从校验点恢复通信,实现数据同步。(即QQ只能和另一台主机的QQ聊天,微信只能和另一条主机的微信聊天,QQ不能和另一台主机的微信聊天)
表示层:处理两个通信系统中交换信息的表示方法。不同机器采用的编码和表示方法不同,使用数据结构也不同,为了使数据和信息能互相交换,表示层采用抽象的标准方法定义数据结构并采用标准的编码形式。表示层还提供数据压缩、加密和解密功能。(例如定义数据格式,即音频为mp3,视频为mp4,图片为png/jpg、文本文件为word等)
应用层:OSI最高层,是用户与网络的界面,应用层为特定类型的网络应用提供访问OSI参考模型的手段,采用不同的应用协议来解决不同类型的应用请求(应用程序之间的通信)
总结:应用层+表示层+会话层,这上三层所做的事情都是在应用程序上的,即收到数据后应用程序如何处理的问题,通常来说是程序员需要关注的的,相反网络工程师主要关注的是下四层,这四层主要负责数据的传输
5.TCP/IP模型
ARPA(Advanced Research Projects Agency,美国国防部高级研究计划局)提出了TCP/IP模型,网络接口层->OSI物理层和数据链路层,网际层->OSI网络层,传输层不变,应用层->OSI会话层+表示层+应用层
6.TCP/IP模型与OSI模型的比较
相同点:
- 两者均采用分层的体系结构,分层功能大体相似
- 两者均基于独立的协议栈概念
- 两者均可解决异构网络的互联,实现不同厂家生产计算机间的通信
不同点:
- OSI精确定义了服务、协议和接口三个概念,TCP/IP没有明确区分
- OSI没有偏向任何特定的协议,通用性良好;TCP/IP是对已有协议的描述,不会出现协议不匹配模型的问题,但不适合任何非TCP/IP的协议栈;
- OSI只在网络层划分出一个子层来完成类似TCP/IP模型中的功能;TCP/IP考虑了多种异构网的互联问题,将网络协议作为单独的层次;
- OSI在网络层支持无连接和面向连接的通信,但传输层只有面向连接的通信;TCP/IP在网际层仅有一种无连接的连接模式,但传输层支持无连接和面向连接两种模式
- OSI参考模型的软件效率极低,OSI参考模型缺乏市场和商业动力,结构复杂,实现周期长,运行效率低
学习计算机网络我们采用综合OSI和TCP/IP模型的优点,采用5层协议体系结构
用户传输一个数据报的完整过程:通过应用层将自然语言转化为用于通信的通信数据;通信数据到达传输层称为传输层SDU,将 传输层数据部分(传输层SDU,下同) + 传输层控制信息(传输层PCI,下同) -> 组成传输层PDU交给网络层;传输层PDU下放到网络层就成为网络层SDU+网络层PCI -> 网络层PDU,下放到数据链路层;依次层层下方,层层包裹,最后形成数据报通过通信线路传输到达接收方,接收方再逐层拆包,把数据传递给用户。
二、物理层
物理层考虑的是怎样才能在连接计算机的传输媒体上传输数据比特流,而不是具体的传输媒体。
1.基本概念
通信的目的为了传输信息,如文字、图像、视频等。数据:指传送信息的实体。信号:指数据的电气或电磁表现。数据传输方式:串行传输(1比特1比特地按照时间顺序传输,用于远距离通信)和并行传输(若干比特通过多条信道同时传输)。码元:在数字通信中常常用时间间隔相同的符号来表示一个二进制数字,这样的时间间隔内的信号称为(二进制)码元。 而这个间隔被称为码元长度。例如:二进制码元,一种代表0状态,一种代表1状态。
信源:产生和发送数据的源头。信宿:接收数据的终点,通常是计算机或其他终端装置。发送端信源发出信息主要通过变换器转换成适合在信道上传输的信号,通过信道传输到接收端的信号由反变换器转换成原始信息再发送给信宿。信道不等同于电路,它是信号的传输媒介(例如二人对话,靠声波通过二人间的空气来传送,因而二人间的空气部分就是信道。邮政通信的信道是指运载工具及其经过的设施。无线电话的信道就是电波传播所通过的空间,有线电话的信道是电缆。每条信道都有特定的信源和信宿。在多路通信,例如载波电话中,一个电话机作为发出信息的信源,另一个是接收信息的信宿,它们之间的设施就是一条信道),一条通信线路包含一条发送信道和接收信道。噪声源是信道上的噪声及其他各处的噪声。如图为一个单向通信系统模型,实际通信系统大多为双向。
信道分类:传输模拟信号的模拟信道 和 传输数字信号的数字信道(按传输信号的形式);无线信道 和 有线信道(按传输介质的不同)
信道上传送的信号:基带信号(将数字信号0和1用两种电压表示,然后送到数字信号上传输——基带传输,常用于局域网)和宽带信号(将基带信号调制后形成频分复用模拟信号,然后送到模拟信道上传输——宽带传输)。
通信的三种类型:
- 单向通信:只有一个方向通信,仅需要一条信道,如无线电广播、电视广播。
- 半双工通信:通信双方都可发送或接收信息,但双方不能同时发送和接收信息,需要两条信道。
- 全双工通信:通信双方可同时发送和接收信息,需要两条信道。
速率:单位时间内传输的数据量。码元传输速率:又称波特率,单位时间内数字通信系统传输的码元个数,波特表示每秒传输一个码元,码元可二进制也可多进制。信息传输速率:又称信息速率、比特率,表示单位时间内数字通信系统传输的二进制码元个数(即比特数),单位b/s。
基带传输、频带传输和宽带传输的区别:
2.奈奎斯特定理和香农定理
码间串绕:信道所能通过信号的频率范围是有限的,信号中的高频分量往往不能通过信道或在传输中会衰减,导致接收端收到信号波形失去码间清晰界限,这种现象叫码间串绕。
奈奎斯特定理(奈氏准则):在理想低通信道中(没有噪声、宽带限制),为了避免码间串绕,极限码元传输率(最高码元传输率)为2W波特(W是理想低通信道带宽),V代表每个码元离散电平的数目(有多少种不同的码元,如有16种则需要4个二进制,传输速率是码元传输速率的4倍)则理想低通信道下极限数据传输率=
(单位b/s)
奈氏准则结论:
- 在任何信道中,码元传输速率是有上限的(若超上限则会出现严重码间串扰问题)
- 信道的频带越宽,就可用更高的速率进行码元传输
- 奈氏准则未对信息传输速率给出限制(即一个码元对应多少个二进制给出限制)
香农定理:信道的极限数据传输速率=
,W为信道的带宽,S为信道所传输信号的平均功率,N为信道内部的高斯噪声功率。信噪比=
香农定理结论:
- 信道的带宽或信道中的信噪比越大,信息的极限传输速率越高
- 对一定的传输带宽和一定的信噪比,信息传输速率的上限是确定的
- 只要信息传输速率低于信道的极限传输速率,就能找到某种方法来实现无差错的传输
- 香农定理得出的是极限信息传输速率,实际信道能达到的传输速率要比它低不少
奈氏准则和香农定理的比较:
3.编码与调制
调制:把数据变换成模拟信号的过程
编码:把数据变换成数字信号的过程
数字数据(通过编码)--->数字信号:数字数据编码用于基带传输中(即直接传输数字信号,只需把0和1区分开即可),常用的数字数据编码有:
- 归零编码(RZ):用高电平代表1,点电平代表0,每个时钟周期的中间均跳变道低电平(归零),接收方根据跳变调整本方的时钟基准,为传输双发提供了自同步机制。但归零需要占用一部分带宽,传输效率有影响
- 非归零编码(NRZ):用高电平代表1,点电平代表0,不需要归零,一个周期全部用来传输数据。但无法传递时钟信号,双发难以同步
- 反向非归零编码(NRZI):信号的翻转代表0,信号保持不变代表1,既能传输时钟信号,又能不损失系统带宽(USB2.0通信编码方式就是使用NRZI编码)
- 曼彻斯特编码:将一个码元分为两个相等间隔,前一个间隔为高电平后一个间隔为低电平时表示码元1,相反则表示码元0,每个码元中间出现电平跳变,次跳变可作为时钟信号(用于同步)也可作为数据信号。但它所占频带宽度时原来的两倍(以太网使用编码方式为曼彻斯特编码)
- 差分曼彻斯特编码:前半码元电平与上一码元后半码元相同则码元为1,否则码元为0,每个码元中间有一次电平跳转,可实现自同步,且抗干扰性较好。用于局域网传输。
同步通信和异步通信:
数字数据(通过调制)--->模拟信号:在发送端将数字信号转换为模拟信号,在接收端将模拟信号还原为数字信号,基本数字调制方法有:
- 幅移键控(ASK),通过改变载波信号的振幅来表示数字信号1和0,载波的频率和相位都不改变。实现容易但抗干扰性差。
- 频移键控(FSK):通过改变载波信号的怕频率来表示数字信号1和0,载波的振幅和相位都不改变。实现容易、抗干扰性强,应用广泛。
- 相移键控(PSK):通过改变载波信号的怕相位来表示数字信号1和0,载波的振幅和频率都不改变。又分为绝对调相和相对调相。
- 正交振幅调制(QAM):在频率相同前提下,将ASK和PSK结合,形成叠加信号,QAM的数据传输速率R=
,B为波特率,m为相位个数,n为每个相位有n中振幅
波的频率、振幅和相位的解释:
波的频率是每秒经过的波数,以赫兹(Hz)为单位,如图
振幅是波的高度,通常与功率有关。
相位:周期性运动在各个时刻所处的不同状态,下图为相位差90度的同振幅波。
模拟数据(通过编码)--->数字信号:常用于对音频信号进行编码的脉码调制(PCM)。主要包括三步:采样、量化和编码
采样定理(奈奎斯特定理):在通信领域带宽指信号最高频率和最低频率之差,单位Hz,将模拟信号转换成数字信号时,假设原始信号中最大频率为f,那么采用频率(f采)必须≥f的两倍,才能保证采样后数字信号完整保留原始模拟信号的信息
采样:对模拟信号进行周期性扫描,把时间上连续的信号变成时间上离散的信号。
量化:把采样取得的电平副值按照一定的分级标度转化为对应的数字值并取整数。
编码:将量化的结果转为对应二进制编码
模拟数据(通过调制)--->模拟信号:需要较高的频率,或使用频分复用(FDM)技术。
4.电路交换、报文交换和分组交换
电路交换:两个结点间建立一条双方独占的物理通信路径(由交换设备和链路逐段而成),该路径可能经过许多中间结点,这一路径在整个传输期间一直被独占,直到通信结束才释放。故电路交换分为三个阶段,来连接建立、数据传输和连接释放。优点:通信时延小;有序传输;没有冲突;使用范围广;实时性强;控制简单。缺点:建立连接时间长;线路独占;灵活性差;难以规格化;适用于——传送数据量大且传送时间远大于呼叫时间
报文交换:报文携带有目标地址、源地址等信息。报文交换在交换结点采用存储转发的传输方式。优点:无须建立连接;动态分配线路(发送方把报文交给交换设备,交换设备线存储整个报文,然后选择合适空闲线路发出去);提高线路可靠性(如果某传输线路故障,可可选择另一条传输路径);提高线路利用率(通信双发不是固定一条线路);提供多目标服务(一个报文可同时发送给多个目标地址);缺点:会引发转发时延(包括接收报文、检验正确性、排队、发送时间等);需要网络结点有较大缓存空间;
分组交换:也采用存储转发方法,但解决了大报文传输问题,分组交换限制了每次传送的数据块大小上限,把大数据块分为小数据块,再加上必要的控制信息(如源地址、目的地址和编号信息等)构成分组。网络结点根据控制信息把分组发送道下一结点,下一结点接收到分组后,暂时保存并排队等待被传输,然后根据控制信息选择下一结点,直到到目的结点。 优点:无建立时延;线路利用率高;简化了存储管理(结点的缓存区大小固定);加速传输;减少了出错概率和重发数据量;缺点:存在传输时延;需要传输额外的信息量;当分组交换采用数据报使可能会出现失序、丢失或重复分组;适用于——端到端的传输、计算机间突发式数据通信
三者的比较:
5.数据报和虚电路
分组交换分类:面向连接的虚电路方式和无连接的数据报方式(由网络层提供的服务)
数据报方式:发送一个报文时,高层协议先把报文拆成若干带有序号的数据单元,然后再网络层假设地址等控制信息形成数据包分组进行转发。举例:如主机A要向主机B发送分组,主机A先将分组逐个发往结点A,结点A缓存收到的分组,查找转发表(不同时刻网络状态不同,转发表也不同),有的分组转发给结点C,有的转发给了结点D,然后其他结点类似的进行转发,最终转发道主机B(主机A发送分组时主机B也可同时向其他主机发送分组)
数据报分组交换的特点:发送分组前不需要建立连接;网络尽最大努力交付,传输不保证可靠性,可能丢失,数据不一定按顺序到达;分组种要包括发送端和接收端完整地址;分组再存储转发时需要排队等待处理,带来一定的时延;对故障的适应能力强;存储转发的时延较小提高了网络吞吐量;收发双发不独占某链路资源利用率高
虚电路方式:分三个阶段,虚电路建立、数据传输与虚电路释放。建立虚电路时,选择一个未用过的虚电路号分配给虚电路,每个数据分组要有分组好、校验和等控制信息和通过的虚电路号,虚电路上的每个结点上都维持一张电路表,表中记录一个打开的虚电路信息,包括接收链路和发送链路上的虚电路号、前一结点和下一结点标识,数据的传输是双向的(上述信息在虚电路建立过程种确定)。举例:主机A与主机B先建立一条逻辑通路,主机A发出一个特殊“呼叫请求”分组,该分组通过中间结点送往主机B,若主机B同一连接,则发送“呼叫应答”分组给予确认;虚电路建立后,主机A可向主机B发送数据分组(主机B也可在该虚电路上向主机A发送数据);传送结束后主机A通过发送“释放请求”分组来拆除虚电路,逐段断开整个连接
虚电路分组交换特点:虚电路链路的建立和拆除需要时间开销,对交互式应用和小量短分组情况显得浪费时间;路由选择在建立连接阶段,连接建立后就确定了传输路径;提供了可靠的通信功能,保证每个分组正确有序到达;当网络种某结点或链路出现故障或失效时,所有经过该结点或链路的虚电路会破坏;分组首部不包含目的地址,包含的时虚电路标识;(虚的含义:每个结点到其他结点间的链路可能同时有若干虚电路通过,也可能同时与多个结点建立虚电路)
6.双绞线、同轴电缆、光纤与无线传输介质
传输介质:发送设备和接收设备之间的物理通路,分为导向传输介质(电磁波通过铜或光纤传播)和非导向传输介质(空气、真空或海水)
双绞线:由两根采用一定规则绞合相互绝缘的铜导线组成。绞合可以减少相邻导线的电磁干扰,为了提高抗电磁干扰能力,在外部加上金属丝编织成的屏蔽层,有屏蔽层双绞线称为STP,无屏蔽层的双绞线称为UTP。双绞线在局域网和传统电话网中普遍使用。双绞线的带宽取决于铜线的粗细和传输的距离,模拟传输和数字传输都可使用双绞线。
同轴电缆:由导体、绝缘层、网状编织屏蔽层和塑料外层构成,同轴电缆具有良好的抗干扰性,传输距离更远,但价格贵与双绞线,广泛用于局域网、有线电视
光纤:利用光导纤维(光纤)传递光脉冲进行通信。光纤由纤芯和包层构成,光波通过纤芯传到,当光线从高折射率介质射向低折射率介质,只要入射角大于某个临界角度就会发生全反射,从而将光传下去。
光纤传输特点:
- 传输损耗小,远距离传输特别经济
- 抗雷电和电磁干扰性好
- 无传音干扰,保密性好,不易被窃听和截取数据
- 体积小重量轻
无线电波:具有较强穿透力,可传输很长距离,广泛应用于通信领域(如无线手机通信、计算机网络的无线局域网等)
微波、红外线、激光:目前高宽带的无线通信方式,需要发送方和接收方之间存在一条视线通路。如卫星通信以地球同步卫星作为中继转发微波信号从而实现全球通信。
传输媒体是物理层吗?
7.物理层接口的特性
- 机械特性:指明接口所用接线器形状和尺寸、引脚数目和排列、固定和锁定装置等
- 电气特性:指明接口在电缆的各条线上出现的电压范围
- 功能特性:指明某条线上出现的某一电平的电压表示何种意义
- 过程特性:指明不同功能的各种可能事件的出现顺序
8.物理层设备
中继器:主要功能是将信号整体方法再转发出去,以消除信号经过一长段电缆后产生的失真和衰减,进而扩大网络传输的距离。中继器有两个端口,数据从一个端口输入,再从另一个端口发出(中继器放大的是数字信号,放大器放大的是模拟信号,中继器使用数目不是无限的)
集线器(Hub):实质上是多端口的中继器,在网络中起到信号放大和转发作用。(一个带宽为10Mb/s的集线器上连接了8太计算机,当8台计算机同时工作时,每台计算机真正拥有的带宽为10/8=1.25Mb/s)
三、数据链路层
1、数据链路层的功能
功能综述:加强物理层传输原始比特流的功能,将物理层可能额出错的物理连接改造为逻辑上无差错的数据链路。
为网络层提供的服务:
- 无确认的无连接服务:源机器发送数据帧不需要建立链路连接,目的机器收到数据帧不需要发回确认,对丢失的帧,数据链路层不负责重发而交给上层处理,适用于实时通信或误码率低的以太网
- 有确认的无连接服务:源机器发送数据帧不需要建立链路连接,但目的机器收到数据帧必须发回确认,若规定时间无确认信号则重传丢失的帧,适用于误码率较高的无线通信
- 有确认的面向连接服务:帧传输分为3各阶段,建立数据链路、传输帧、释放数据链路,目的机器收到的每一帧都需给出确认,源机器收到确认后才会发送下一帧
链路管理:数据链路层建立连接、维持和释放的过程称为链路管理,主要用于面向连接的服务
帧定界:两台主机传输信息时,将网络层的分组封装成帧,以帧的格式传送,将一段数据的前后添加首部和尾部就构成了帧,帧长的能与数据部分的长度+首部长度+尾部长度,首尾部中含有很多控制信息,用于确定帧的界限,即帧定界
帧同步:接收方能从接收到的二进制比特流中区分出帧的起始和终止(如用F(01111110)标识帧的开始和结束)
透明传输:不管传输的数据是怎样的比特组合都应当能在链路上传送。
流量控制:限制发送发的数据流量,使其发送速率不超过接收方的接收能力。需要通过每种反馈机制告诉发送方什么时候可以接着发送发送下一帧,什么时候不惜暂停发送。流量监控在高层协议中也有提供没只不过控制的对象不同而已,对于数据链路层控制的是相邻两结点间数据链路上的流量
差错控制:用于确定接收方是否收到数据
位错:帧中某些位出现差错,通常采用循环冗余校验(CRC)发现位错,通过自动重传请求(ARQ)来重传出错的帧。(发送方将要发的帧附加一定的CRC冗余校验码一并发送,接收方根据校验码查错,若发送错误则丢弃,发送方超时重传该数据帧——ARQ差错控制法)
帧错:帧的丢失、重复或失序等错误、在数据链路层引入定时器和编号机制,能保证每一帧有且只有一次正确传给目的结点。
2.组帧
为什么在数据链路层将比特组合成帧为单位传输:为了在出错时只重发出错的帧而不必重发全部数据,从而提高效率。为了使接收方正确接收并检查帧,发送方要根据一定的规则把网络层递交的分组封装成帧(又称组帧,组帧时既要加首部又要加尾部用于区分首部和尾部),组帧用于解决帧定界、帧同步、透明传输等问题。
4种组帧的方法:
- 字符计数法,在帧头部用计数字段表明帧内字符数,目的结点根据该值确定后面跟随的字节数,从而确定帧结束的位置。(缺点:如果计数字段出错,接收方无法判断结束位置和下一帧开始位置)
- 字符填充的首尾定界符法,使用特定字符确定一帧的开始与结束,如SOH标识真的开始,EOT标识帧的结束,为了避免帧信息种出现特殊字符(如SOH或EOT)被误判为帧的首尾定界符,可在特殊字符前填充转义字符(ESC),接收方收到转义字符后,即可判断是数据信息还是控制信息。如图,在SOH和EOT之间出现了EOT和ESC,则使用转义符标识即可 (缺点:实现上具有复杂性和不兼容性)
- 零比特填充的首尾标志法,此法允许数据帧中包含任意个数的比特,也允许每个字符编码包含任意个数比特,使用特定比特模式标识一帧的开始和结束(如01111110),同样为了避免镇内的01111110被误判为首尾标识,发送方在信息中遇到5个连续的1时会自动在其后插入一个0,接收方在收到5个连续的1时会自动删除后面的0(此方法优于字符填充法)(常用)
- 违规编码法,在曼彻斯特编码方法中将1代表高-低电平,将0代表低-高电平,而高-高和低-低是违规的,可以借用违规编码序列来规定真的起始和终止(常用)
例题:
解析:(1)途中给出A、B、ESC、FLAG对应的二进制,然后传4个数,字符计数的计数位应为5,转换为二进制记为00000101(2)答案很清楚(3)
3.差错控制
比特差错:比特在传输过程中会产生差错,如1可能会变成0,0可能会变成1
差错控制的两种方法:自动重传请求ARQ(接收方检测出差错是,设法通知发送方重发)和前向纠错FEC(接收方不但能发现差错还能确定错误位置并矫正),因此差错控制分为检错编码和纠错编码。
检错编码:在有效数据被发送前,按某种关系附加一定的冗余位,构成一个符合规则的码字,然后再发送,当发送的有效数据变化时,相关冗余位也会变化,接收端根据收到的码字是否符合规则来判断是否出错,通常检错编码有:奇偶校验码和循环冗余码
奇偶校验码:奇校验码,附加一个校验元后,码长为n,其中1的个数为奇数;同理偶校验码,附加一个校验元后,码长为n,其中1的个数为偶数,这种方法只能判断奇数位的出错情况无法判断偶数位和哪一位出错
循环冗余码:任何一个二进制数都可以用多项式表示,例如1110011=2^6+2^5+2^4+2+1,冗余码的计算过程:设G=1101(r=3,最高位必须是1,G由发送方和接收方统一规定),带传送数据为M=101001(m=6),经如图运算(需要补r个0,加法不进位,减法不借位,即异或操作)后结果为Q=110101,余数R=001,故得发出得数据为101001001(即形成的帧),共6+3(m+r)位,然后接收端用此二进制去除G,如果得到的帧无余数则认为无差错。
纠错编码:在每个要发送的数据块上附加足够的冗余信息,使接收方能够推导出发送方实际给出的使什么比特串。最常见的纠错编码是海明码。
例如,数据码为1010
确定海明码位数:设信息位(n位)为D4 D3 D2 D1,校验位(k位)为P3 P2 P1,对应海明码为H7 H6 H5 H4 H3 H2 H1(其中n+k=2^k-1的关系);P1的海明位号为2^(1-0)=1,P2的海明位号为2^(2-1)=2,P3的海明位号为2^(3-1)=4,故有
分组以形成校验关系(被校验位的海明号=校验位海明号之和,如H3=P2P1)
校验位取值(由校验位校验数据位求异或绝对,如P1和D1、D2、D4相关),最后1010对应的海明码位1010010(红色为检验位,其他为信息位)
![]()
校验位与对应信息位进行奇偶校验检查构成S3 S2 S1,若S3 S2 S1为000,则无措,否则有错,如S3 S2 S1=001,则说明第1位出错,即H1出错,将此位取反即可纠错
4.流量控制与可靠传输机制
停止-等待流量控制基本原理:发送方每发送一帧,都要等待接收方的应答信号,之后才能发送下一帧;接收方每接收一帧,都要反馈一个应答信号,表示可接收下一帧,如果接收方不反馈则发送方则会一直等待。(缺点:每次只发送一帧,传输效率低)
滑动窗口流量监控基本原理:
发送窗口(WT):一组连续的允许发送的帧的序号,规定哪些帧可发送哪些帧不可发送, 发送窗口的大小为,未收到确认信息情况下发送方最多可发送的帧个数。
接收窗口(WR):一组连续的允许接收的帧的序号,规定哪些帧可接收哪些帧不可接收,接收窗口的大小为,能接收帧的个数。
运行过程:发送端每收到一个确认帧,则发送窗口前移一位,当发送串口没有可发送帧(串口内帧已全部发送且未收到确认帧)时,发送方停止发送,直到收到确认帧且有可发送的帧才开始发送。接收端收到数据帧后,将接收窗口前移一位,并发回确认帧,若数据帧落在窗口之外则丢弃。
滑动窗口的特性:
- 只有接收窗口先前滑动时,发送窗口才可能先前滑动
- 停止-等待协议、后退N帧协议和选择重传协议只在发送窗口大小与接收窗口大小上有差别:停止-等待协议,WT大小=1,WR大小=1;后退N帧协议,WT大小>1,WR大小=1;选择重传协议,WT大小>1,WR大小>1
- WR大小=1时,可保证帧的有序性
- 窗口大小在传输过程中是固定的(只针对数据链路层的滑动窗口协议)
可能存在的差错:数据帧丢失;数据帧遭到破坏(利用差错检测检出);数据帧正确但确认帧遭破坏;
单帧滑动窗口与停止-等待协议:WT=1,WR=1,发送方必须收到确认帧后才可以继续发送(缺点:通信信道利用率低)
多帧滑动窗口与后退N帧协议(GBN):WT>1,WR=1,发送方可连续发帧,当发送方发送N帧后,若某一帧的确认帧超时,则发送方重传出错帧及随后的N个帧。如图2号帧出错且超时为返回确认帧,则发送方从2开始重新发送2-8的帧(缺点:原来已传过的帧重传使传输效率降低)
多帧滑动窗口与选择重传协议(SR):WT>1,WR>1,一般情况下WT大小=WR大小,
加大接收窗口大小,当出错时,先手下处在接收窗口范围内的数据帧,等到缺失帧收到后再一并递交
可靠传输机制:使用确认(接收方发送确认帧给发送方)和超时重传(发送方在一定时间内未收到确认帧,则重传数据帧)两种机制完成。
自动重传请求(ARQ):通过接收方请求发送方重传数据帧实现,分为停止-等待ARQ、后退N帧ARQ和选择性重传ARQ。
信道利用率:发送方在一个发送周期内,有效发送数据所需的时间占整个发送周期的比率。例如:信道利用率=(L/C)/T,其中L发送周期内需要发送的比特量,C为发送方数据传输率,T为发送周期,发送方用于发送数据的时间为L/C
信道吞吐率=信道利用率*发送方发送速率
5.介质访问控制
介质访问控制功能:为使用介质的每个结点隔离来自同一信道上其他结点所传送的信号,已协调活动节点传输。例如,A、B、C、D、E共用同一信道,A要与C通信,B要与D通信,介质访问控制可以防止互相干扰。常用方法有:信道划分介质访问控制、随机访问介质访问控制和轮询访问介质访问控制。
信道划分介质访问控制
多路复用:传输介质带宽超过单个信号所需带宽时,在一条介质上同时携带多个传输信号。以便提高传输利用率。
信道划分:通过分时、分频、分码等方法将一条广播信道逻辑上分为互不干扰的子信道。
信道划分介质访问控制类型:
- 频分多路复用(FDM):将多路基带信号调制到不同频率载波上,再叠加形成符合信号,同一时间同时发送多路信号。每个子信道带宽和不可超过信道总带宽,优点,充分利用总带宽,系统效率高,实现容易
- 时分多路复用(TDM):将物理信道按时间分成若干时间片,轮流分配给多个信号使用,每个时间片由一个信号占用
- 波分多路复用(WDM):在一根光纤中传输多种不同波长(即不同频率)的光信号,由于波长不同,则光信号互不干扰,最后用波长分解复用器将各波长分解出来即可。
- 码分多路复用(CDM):采用不同的编码来区分各路原始信号,即共享空间(TDM只共享空间),又共享时间(FDM和WDM只共享时间)。例如,A->C和B->C时,A发送1 (对应码片序列为-1 -1 -1 +1 +1 -1 + 1 +1),B发送0(对应码片序列为+1 +1 -1 + 1 -1 -1 -1 +1),两者叠加后为0 0 -2 2 0 -2 2,传输到C后,进行数据分离(具体操作略),然后得到A发出的数据为1,B发送的数据为0
随机访问介质访问控制
随机访问介质访问控制协议(又叫争用型协议):所有用户根据自己的意愿随机发送信息,为了解决随机接入发生的帧冲突,每个用户需按一定规则反复重传它的帧,直到该帧无碰撞地通过,常用协议有ALOHA协议、CSMA协议、CSMA/CD协议和CSMA/CA协议等(胜利者通过争用获得信道,从而获得信息地发送全)(这种协议既不共享时间也不共享空间)
ALOHA协议:分为纯ALOHA协议和时隙ALOHA协议
纯ALOHA协议:当网络中任何一个站点要发送数据时,可不进行任何校验就发送数据,如果在一段时间内未收到确认,那么该站点就认为传输过程中发生了冲突,发送站点需要等待一段时间再发送数据,直到发送成功。(举例说明:当站1发送帧1时,其他站都未发送数据,所以发送必定成功;当站2和站N-1发送帧2和帧3时在时间上有重叠(发生了碰撞)故数据会出现差错,需重传,为避免再次碰撞,则纯ALOHA系统让各站点等待一段时间再重传,直到重传成功为止,图中帧1、4、7发送成功,帧5和帧6、帧2和帧3发送碰撞)
时隙ALOHA协议:把各站在时间上同步起来,将时间划分为一段段等长时隙(Slot),规定只能在每个时隙开始时才能发送一个帧,从而避免数据产生冲突,提高信道利用率。(举例说明:每个帧到达后,在缓存中等待一小段小于T0地时间,然后发送出去,当一个时隙内有两个或以上帧到达,则在下一时隙产生碰撞,碰撞后重传)(时隙ALOHA效率是纯ALOHA效率地2倍)
CSMA协议思想:每个站点在发送前侦听共用信道,若发现信道空闲则发送,大大降低冲突可能,提高信道利用率
CSMA类型:
- 1-坚持CSMA: 一个结点要发送数据时,首先侦听信道,如果信道空闲则立即发送数据;如果忙,则等待,同时继续侦听直至信道空闲,如果发送冲突,则随机等待一段时间后,再次侦听信道
- 非坚持CSMA: 一个结点要发送数据时,首先侦听信道,如果信道空闲则立即发送数据;如果忙,则放弃侦听,等待一个随机事件后再次侦听信道
- p-坚持CSMA:用于时分信道,一个结点要发送数据时,首先侦听信道,如果信道空闲则以概率p发送数据,以概率1-p推迟到下一时隙,如果下一时隙仍空闲,仍以概率p发送数据,以概率1-p推迟到下一时隙,一直持续到数据发送成功或检测到信道忙为止,若为后者则等待下一时隙重新开始侦听;若信道忙,就持续侦听直至信道空闲
CSMA/CD协议工作流程(先听后发,边听边发,冲突重发,应用与有线局域网):
- 适配器从网络层获得一分组,封装称帧,放入适配器缓存,准备发送
- 如果适配器侦听到信道空闲,则开始发送帧,如果适配器侦听到信道忙,则持续侦听直至信道空闲,然后再发送帧
- 在发送过程中,适配器持续检测信道,若一直未检测到碰撞,则帧发送完毕,若碰撞,则终止发送并发送拥塞信息让所有用户直到
- 中止发送后,适配器执行指数退避算法,等待一段随机事件后返回步骤2
帧间间隔(IFS):为了避免冲撞,所有站点发送完成后,需要等待一段很短的时间(期间需要继续监听)才能发送下一帧
3种IFS:
- SIFS(短IFS):最短IFS,用来分隔属于一次对话的各帧,使用SIFS的帧类型有ACK帧、CTS帧、分片后数据帧、回答AP探询的帧等
- PIFS(点协调IFS):中等IFS,在PCF操作种使用
- DIFS(分布式协调IFS):最长IFS,用于异步帧竞争访问的时延
CSMA/CA协议(对CSMA/CD进行改进把碰撞检测改为碰撞避免,应用于无线局域网):
- 若站点有数据要发送(不是发送失败重传),且检测到信道空闲,在等待DIFS后,发送整个数据帧
- 否则,站点执行CSMA/CA退避算法,选择一个随机返回值,一旦检测到信道忙,退避计数器就保持不变,只要信道空闲,退避计时器就开始倒计时
- 当退避计时器减到0时,站点就发送整个帧并等待确认
- 发送站若收到确认,就直到已发送地帧被目的站正确接收,这是如果要发送第二帧,则从步骤2开始
- 若发送站在规定时间内没有收到确认帧ACK,就必须重传该帧,再次使用CSMA/CA协议征用该信道,直到收到确认,或经过若干次重传失败后放弃发送
CSMA/CD和CSMA/CA区别:
轮询访问介质访问控制:令牌传递协议
用户不能随机发送信息,而要通过一个集中控制监控站轮询每个结点,再确定信道地分配,当某结点使用信道时,其他结点不能使用信道。当环上的一个站点希望传送帧时,必须等待令牌,一旦收到令牌则可启动发送帧,帧在换上传送时,不管该帧是否发给本站点,所有站点都进行转发,知道帧回到始发站,并由始发站撤销该帧,帧的目的站除转发外,在帧的尾部设置“响应比特”代表已收到此帧(令牌是一组特殊比特组成的帧,令牌只有一个,令牌在设备间的传递通路逻辑上必须是一个环)(适合于负载很高的广播信道,即多个结点在同一时刻发送数据概率很大的信道)。
6.局域网
局域网(LAN):在一个较小的地理范围内,将各种计算机、外部设备和数据库系统等通过双绞线、同轴电缆等连接介质互相连接起来,组成资源和信息共享的计算机互联网络。
局域网特点:
- 为一个单位所拥有,且地理范围和站点数目均有限
- 所有站点共享较高的总带宽(即具有较高的数据传输速率)
- 较低的时延和较低的误码率
- 各站为平等关系而非主从关系
- 能进行广播和组播
局域网特定决定因素:拓扑结构、传输介质、介质访问控制方式(最重要)
拓扑结构类型:星形结构、环形结构、总线形结构、星形和总线型结合的复合型结构
传输介质类型:双绞线、铜缆、光缆等,其中双绞线为主流
介质访问控制方式:CSMA/CD、令牌总线、令牌环,前两种主要用于总线形局域网,后者主要用于环形局域网
三种特殊局域网的拓扑:
- 以太网:逻辑拓扑是总线性结构,物理拓扑是星形或拓扑星形结构
- 令牌环:逻辑拓扑是环形结构,物理拓扑是星形结构
- FDDI:逻辑拓扑是环形结构,物理拓扑是双环结构
IEEE802.3标准:是一种基带总线形的局域网标准,它描述物理层和数据链路层的MAC子层的实现方法,通常把802.3局域网简称为以太网
以太网简化通信的方式:
- 采用无连接工作方式,不对发送的数据帧编号,页不要求接收方发送确认,即提供的是不可靠服务,对于差错的控制由高层完成
- 发送的数据都使用曼彻斯特编码的信号,每个码元中间出现一次电压转换,接收端利用这种电压转换把同步信号提取出来
以太网的4种传输介质及适用情况
网卡:计算机与外界局域网的连接通过主机箱内插入一块网络接口板(又称网络适配器或网卡)实现,网卡上装有处理器和存储器,工作在数据链路层,网卡和局域网的通信通过电缆或双绞线以串行方式进行,网卡和计算机的通信通过计算机主板I/O总线以并行方式进行。网卡可实现与局域网传输介质之间的物理连接和电信号匹配,还设计帧的发送和接收、帧的封装和拆封、介质访问控制、数据的编码和解码、数据缓存等功能。网卡工作在物理层,因为它只关注比特,不关注任何地址信息和高层协议信息。
MAC地址(介质访问控制地址):每块网卡出厂时都有的一个唯一代码,用于控制主机在网络上的数据通信,数据链路曾设备(如网桥、交换机等)使用网卡的MAC地址进行工作。MAC地址也称物理地址,长6个字节,一般由连字符分隔的12个16进制数表示,例如02-60-8c-e4-b1-21,高24位位厂商代码,低24位为网卡序列号。网卡从网络每收到一个MAC帧,首先用硬件检查MAC帧种的MAC地址,如果时本站的帧则收下,否则丢弃
MAC帧格式:
- DIX Ethernet V2标准下的MAC帧格式:前导码,即帧前的8字节分,为两个字段,第一个字段共7字节,是前同步码,用来快速实现MAC帧的同步,第二个字段是帧开始定界符,表示后面的信息就是MAC帧;目的/源地址通常用6个字节表示;类型2字节表示,用于指出数据域中携带的数据应交给哪个协议处理;数据46-1500字节,包含高层的协议消息;填充,当帧太短时填充帧使之达到64字节的最小长度(CSMA/CD算法规定以太网帧最短64KB);校验码(FCS)4字节,采用32位循环冗余码(CRC),检验MAC帧的数据部分、目的地址、源地址和类型字段,不校验前导码
- IEEE 802.3标准下的MAC帧格式:不同之处在于用长度域替代了DIX帧中的类型域,用于指出数据域长度
高速以太网(速率达到或超过100Mb/s的以太网)类型
- 10BASE-T以太网:在双绞线上传送10Mb/s基带信号的星形拓扑结构以太网,使用CSMA/CD协议,支持全双工方式,也支持半双工方式,全双工方式下无冲突发生故不适用CSMA/CD协议
- 100BASE-T以太网:在双绞线上传送100Mb/s基带信号的星形拓扑结构以太网,使用CSMA/CD协议,支持全双工方式,也支持半双工方式,全双工方式下无冲突发生故不适用CSMA/CD协议
- 吉比特以太网:千兆以太网,允许在1Gb/s下用全双工和半双工两种方式工作,使用802.3协议规定帧格式,全双工方式下无冲突发生故不适用CSMA/CD协议
- 10吉比特以太网:使用光纤作为传输媒体,帧格式与10Mb/s、100Mb/s、1Gb/s以太网帧格式完全相同,只工作在全双工方式下,也不使用CSMA/CD协议
无线局域网类型:有固定基础设施无线局域网和无固定基础设施移动自组织网络
固定基础设施:预先建立的、能覆盖一定地理范围的固定基站
有固定基础设施无线局域网:使用IEEE 802.11标准,使用星形拓扑结构,其中心成为接入点(AP),在MAC层使用CSMA/CA协议,使用802.11协议的局域网又称WiFi。802.11标准规定无线局域网的最小构件时基本服务集(BSS),BBS包括一个基站(即上文的AP)和若干移动站,所有站在BBS内都可直接通信,但在外的站的通信必须通过BBS基站才行,按照AP时必须位AP分配一个不超过32字节的服务集标识符(SSID)和一个信道,一个基本服务集覆盖的地理范围称为一个基本服务区(BSA),BSA的直径不超过100m;一个基本服务集可以是孤立的,也可通过AP连接到一个分配系统(DS),然后连接到另一个基本服务集,构成一个扩展的服务集(ESS),ESS可通过门桥(Portal,作用相当于一个网桥)为无限用户提供到有线连接的以太网的接入。(例如图中移动站A要和移动站B通信时,需经过A->AP1->AP2->B,其中AP1和AP2通过有线传输通信;A漫游到另一个BSS时变成A'后,仍可保持与B的通信,但通信逻辑变为了A'->AP2->B)
无固定基础设施移动自组织网络:又称自组网络,自组网络没有基本服务集中的AP,而是由平等状态的移动站相互通信组成的临时网络,各结点地位平等,中间结点都为转发结点,都具有路由器功能。(自组网络和移动IP不同,移动IP是基于固定网络中一直使用的各种路由选择协议,而自组网络是把移动性扩展到无线领域中的自治系统,具有自己特定的路由选择协议,并且可以不和因特网相连)
令牌环网的基本原理:令牌环网的每一站通过电缆与环接口干线耦合器(TCU)相连,TCU用于传递所有经过的帧,为接入站发送和接收数据提供接口。TCU的俩种状态,收听状态和发送状态,数据总是从某个特定方向从一个TCU到下一个TCU逐比特一次传送,每个TCU重新产生并重新传输每一比特。令牌环网在物理上时星形拓扑结构,在逻辑上是环形拓扑结构(如下图),标准由IEEE 802.5定义
令牌环网中令牌和数据传递过程:
- 网络空闲时,环路中只有令牌帧在循环传递
- 令牌传递到由数据要发送的站点处时,该站点就修改令牌中的一个标志位,并在令牌中附加自己需要传输的数据,将令牌变成一个数据帧,然后将数据帧发送出去
- 数据帧沿着环路传输,接收到的站点一边转发数据,一边查看帧的目的地址,如果目的地址和自己的地址相同,则接收站就复制该数据帧以便进一步处理
- 数据帧沿着环路传输,直到到达帧的源站点,源站点接收到自己发出去的数据帧后便不再进行转发,同时,发送方可以通过检验返回的数据帧来查看数据传输过程中是否有错,若有错则重传该帧
- 源站点传送完数据后,重新产生一个令牌,并将令牌传递给下一个站点,以交出对媒体的访问权限
7.广域网
广域网:覆盖范围很广(远超一个城市的范围)的长距离网络。其任务是长距离传输主机发送的数据,连接广域网各结点的交换机链路可以是长度几千千米的光缆线路,也可以是长达几万千米的点对点卫星链路,广域网通信容量必须足够大,以便支持日益增长的通信量。广域网≠互联网,互联网可以连接不同类型的网络(既可以连接局域网也可以连接广域网),通常使用路由器来连接。广域网由结点交换机(结点交换机≠路由器,结点交换机在单个网络中转发分组,而路由器在多个网络构成的互联网中转发分组)和连接交换机的链路组成。如图,将相距较远的局域网通过路由器和广域网组成的一个互联网。
广域网和局域网的区别:局域网使用的协议主要在数据链路层(少量在物理层),而广域网使用协议主要在网络层(即网络中两个结点要进行数据交换,结点除了给出数据,还要给数据添加控制信息,用于检错和纠错等功能,如果控制信息是数据链路层的控制信息,则使用了数据链路层协议,否则使用了网络增协议)
路由选择协议:搜索分组从某个结点到目的结点的最佳传输路由,以便构造路由表,然后用路由表构造出转发分组的转发表。转发表用于分组转发。
PPP协议(Point-to-Point Protocol):广域网数据链路层控制协议,使用串行线路通信的面向字节的协议,该协议应用在直接连接两个结点的链路上,用来通过拨号或专线方式建立点对点连接然后发送数据。PPP协议既可以在异步线路上传输,也可以在同步线路上使用。PPP协议提供差错检测但不提供纠错功能,所以它是不可靠的传输协议,因此不能使用序号和确认机制;PPP协议只支持点对点链路通信,不支持多点线路;PPP协议只支持全双工链路;PPP协议两端可以运行不同的网络层协议,但可以使用同一各PPP协议进行通信;PPP协议是面向字节的,若PPP协议用在异步线路采用字节填充法,若用在SONET/SDH等同步线路,则采用硬件来完成比特填充。
SLIP协议:主要完成数据报的传送,但没有寻址、数据校验、分组类型识别和数据压缩等功能,只能传送IP分组,如果上层不是IP协议则无法传输,但实现简单,PPP协议是由SLIP协议发展而来。
PPP协议的三个组成部分:
- 链路控制协议(LCP):用于建立、设置、测试和管理数据链路。
- 网络控制协议(NCP):为网络层协议建立和配置逻辑连接。
- 将一个IP数据报封装到串行链路的方法,IP数据报在PPP帧中是部分信息,长度受最大传送单元(MTU)限制
PPP帧:标志字段(F)为01111110,前后各占1字节,若F出现在信息字段中,则必须做字节填充(变为011111101,7D);地址字段(A)占1字节为0xFF;控制字段(C)占1字节,规定为0x03;协议段,占2字节,用于说明信息段中运载的是什么类型的分组;信息段,长度可变,大小为0~1500B(PPP协议是点对点协议,不需要采用CSMA/CD协议,自然没有短帧);真检验学列(FCS),占2字节,即循环冗余码检测中的冗余码
PPP链路建立、使用、撤销所经历的状态图:
HDLC协议(High-level Data Link Control Protocol,高级数据链路控制协议):广域网数据链路层控制协议,ISO指定面向比特的数据链路层协议,不依赖任何一种字符编码集,数据报文可透明传输,全双工通信,有较高的数据链路传输效率,所有帧采用CRC检测,对信息帧进行顺序编号,可防止漏收或重发,传输可靠性高,传输控制功能和处理功能分离,具有较大灵活性。
HDLC的两种基本配置:
- 非平衡配置:由一个主站控制整个链路的工作
- 平衡配置:链路两端的两个站都是复合站,每个复合站都可以平等地发起数据传输,而不需要得到对方符合站的允许
HDLC的3种站类型:
- 主站:负责控制链路的操作,主站发出的帧为命令帧
- 从站:从站受控于主站,按主站的命令进行操作,发出的帧为响应帧
- 复合站:既有主站功能,又有从站功能,可以发出命令帧和响应帧
HDLC的3种数据操作方式:
- 正常响应方式
- 异步平衡方式
- 异步响应方式
HDLC帧:由标志(F,为01111110)、地址(A,1字节)、控制(C,1字节,可将HDLC帧分为信息帧(I)、监督帧(S)、无编号帧(U))、信息和帧校验序列等字段构成
PPP协议与HDLC协议的区别:
- PPP协议面向字节,HDLC协议面向比特
- PPP帧比HDLC帧多一个2字节的协议字段
- PPP协议不适用序号和确认机制,为不可靠传输,HDLC使用编号和确认机制,是可靠传输
8.数据链路层设备
网段:俩个或多个以太网通过网桥连接形成一个更大的以太网,其中的每个小的以太网称为一个网段
碰撞域:网桥将以太网各网段隔离开形成碰撞域
网桥:处理数据的对象是帧,工作在数据链路层的设备,网络1和网络2通过网桥连接后,网桥接收网络1发送的数据帧,检查数据帧中的地址,如果是网络2的地址,那么就转发给网络2,如果是网络1的地址,那么就将其丢弃(因为源站和目的站在同一网段,目的站能够直接收到这个帧而不需要借助网桥转发)
网桥的特点:
- 必须具有寻址和路劲选择能力,以确定帧的传输方向
- 从源网络接收帧,以 目的网络的介质访问控制协议 向目的网络转发帧
- 在不同或相同类型LAN间存储转发帧,必要时进行链路层上的协议转换
- 网桥对接收到的帧不做任何修改,或对真的封装格式做很少修改
- 可以通过执行帧翻译互联网不同类型局域网(把原协议的信息段内容作为另一种协议信息部分封装在帧种)
- 网桥应有足够大缓存空间
网桥优点:
- 能过滤通信量
- 扩大物理范围
- 可使用不同的物理层
- 可互联不同类型的局域网
- 提高了可靠性
- 性能得到改善
网桥缺点:
- 增大了时延
- MAC子层没有流量控制功能
- 不同MAC子层的网桥接在一起时,需要进行帧格式的转换
- 网桥只适合用户数量不多和通信量不大的局域网,否则会因为传播过多广播信号而产生网络拥塞
网桥的分类:
- 透明网桥(选择的不是最佳路由):接收与之连接的所有LAN传送的每一帧,到达的帧的路由选择过程取决于源LAN和目的LAN,若源LAN和目的LAN相同,则丢弃帧;若不同,则转发该帧;若目的LAN未知,则扩散该帧。为避免转发的帧在网络种兜圈子,透明网桥使用生成树算法,以确保每个源到每个目的地只有唯一的路径,但生成树一般不是最佳路由。
- 源路由网桥(选择的时最佳路由):路由选择由发送数据帧的源站负责,网桥只根据数据真正的路由信息对帧进行接收和转发(由源站选择一个最佳路由,最佳路由是发送帧往返时间最短的路由)
中继器、放大器:处理数据的对象是信号,工作在物理层的设备
局域网交换机(以太网交换机):本质上是多端口的网桥,工作在数据链路层,利用以太网交换机可以方便地实现虚拟局域网(VLAN),VLAN既可以隔离冲突域又可以隔离广播域
以太网交换机原理:它检测从以太端口来的数据帧的源和目的地的MAC地址,然后与系统内部的动态查找表进行比较,若数据帧的MAC地址(网卡中指定的)不在查找表中,则将该地址加入查找表,并将数据帧发给相应的目的端口。(交换机用于将多个终端(即主机)连接起来并帮助主机转发数据(根据数据帧中的MAC地址转发数据),因为在交换机中有一个MAC地址表,如图5489-98f6-5264就是192.168.1.1/24对应主机的MAC地址,MAC地址表会在通信一次后记录,最初时为空,因为当某主机发送数据帧时会带有MAC地址,交换机在收到帧后将接口与MAC地址一一对应记录到表中,同时请求发出后目标主机会回复数据帧,此时也会把MAC信息记录到表中;如果目标MAC地址不存在表中,则会向其他未知接口都发数据帧,从而判断谁是目的主机,最终只有真正的目的主机会回复帧)
以太网交换机特点:
- 它的每个端口都直接与单台主机相连,并且一般都工作在全双工方式
- 以太网交换机能同时连接许多端口
- 以太网交换机是一种即插即用设备(和透明网桥一样)
- 以太网交换机使用了专用的交换结构芯片,交换速率较高
- 以太网交换机独占传输媒体的带宽
以太网交换机主要采用两种交换模式:
- 直通式:直通式交换机只检查帧的目的地址,帧在接收后马上被传出去,速度块,但缺乏智能性和安全性,无法支持具有不同速率的端口的交换
- 存储转发式:存储转发式交换机先将收到的帧缓存到告诉缓存器种,并检查数据是否正确,确认无误后通过查找表转换成输出端口将帧发送出去,如果发现帧有错,则将其丢弃,可靠性高,支持不同速率端口间转换,缺点是延迟比较大
9.小结
链路:一个结点到相邻结点的一段物理线路,中间没有任何交换结点,又叫物理链路
数据链路:把控制数据传输的通信协议的硬件和软件加到链路上,就构成了数据链路,又叫逻辑链路(即物理链路+必要的通讯协议)
电路接通:链路两端结点交换机已经开机,物理连接已经能够传输比特流
数据链路接通:电路接通的基础上,建立数据链路连接,这样数据链路具有检测、确认和重传功能,这样才能进行可靠传输,当数据链路断开连接时,物理链路不一定断开
冲突域和广播域
中继器、集线器、网桥和交换机的区别与联系
交换机和网桥的不同只处:
四、网络层
网络层的功能
网络层向上提供简单灵活的、无连接的、尽最大努力交付的数据报服务
网络互联:将两个以上的计算机网络,通过一定方法,用一种或多种通信处理设备(即中间设备,也叫中间系统或中继系统)相互连接起来,已形成更大的网络系统。网络互连通常指用路由器进行网络互联和理由选择。(物理层和数据链路层中继器只是把一个网络扩大了在网络层看仍是同一个网络,不称为网络互连)
4种中继系统:
- 物理层:中继器、集线器(Hub)
- 数据链路层:网桥或交换机
- 网路层:路由器(因历史原因,许多文献把网络层的路由器也称为网关)
- 网络层以上:网关
虚拟IP网络:许多计算机网络通过路由器互联,互联的计算机网络使用相同的网际协议(Internet Protocol,IP),因此可以把互联后的计算机网络是为一个虚拟IP网络。使用虚拟IP网络的好处是,当互联网上的主机进行通信时,就像在一个网络上通信一样,看不见互联的具体网络的网络细节(如编址方案、路由协议等)。
路由器的功能:(根据ip转发数据,实现跨网络通信,让俩个完全不相同的网络连接在一起进行通信)
路由选择:根据特定的路由选择协议构造出路由表(路由表由路由选择算法得出),同时经常或定期和相邻的路由器交换路由信息,从而不断更新和维护路由表
分组转发:路由器根据转发表(转发表从路由表得出)将用户IP数据报从合适的端口转发出去。通过路由器的数据流,转发表查询、转发及相关的队列管理和任务调度等
拥塞:因出现过量的分组而引起网络性能下降的想象称为拥塞
判断网络是否进入拥塞状态的方法:观察网络的吞吐量与网络负载的关系,如果网络负载增加时,网络吞吐量明显<正常的吞吐量,那么网络可能已进入轻度拥塞状态;如果网络负载增加时,网络吞吐量逐渐下降,那么网络可能已进入拥塞状态;如果网络负载继续增大,网络吞吐量下降为零,则网络可能已经进入死锁状态。
流量控制:在发送端和接收端之间的点对点通信量的控制,即抑制发送端发送数据的速率,以便使接收端来得及接收。拥塞控制——
拥塞控制的俩种方法:
- 开环控制:在设计网络时力求网络在工作时不产生拥塞,手段包括确定合适可接收新流量、何时可丢弃分组及丢弃哪些分组,确定何种调度策略等
- 闭环控制:采用检测网络系统去监视,及时检测哪里发送了拥塞,然后将拥塞信息传到合适的地方,以便调整网络系统的运行和解决出现的问题
路由算法
俩种路由算法:
静态路由算法(非自适应路由算法):由网络管理员手工配置的路由信息,当网络的拓扑结构或链路状态发送变化时,网络管理员需要手工去修改路由表中相关的静态路由信息。(特点:简单和开销较小,适用于小型网络)
动态路由算法(自适应路由算法):路由器上的路由表是通过相互连接的路由器之间彼此交换信息,然后按照一定的算法优化出来的,这些路由信息在一定时间间隙里会不断更新,以适应不断变化的网络,随时获得最优的寻路效果。常用动态路由算法由,距离-向量路由算法和链路状态路由算法(特点:能改善网络性能和有助于流量控制,但算法复杂,会增加网络负担)
距离-向量路由算法:在算法中,所有结点都定期将整个路由选择表传送给所有与之直接相连的结点,路由选择表包含:每条路径的目的地(另一结点)、路径的距离。最常见距离-向量路由算法是RIP算法,采用“跳数”(从A到B经过的路由器个数)作为距离的度量。
链路状态路由算法:算法要求每个参与结点都就具有完全的网络拓扑信息,每个结点主动测试所有相邻结点的状态,每个结点定期将链路状态传播给所有其他(所有其他结点,而不仅是相连的结点)结点,每当链路状态报文到达时,路由几点便使用这些状态信息去更新自己的网络拓扑和状态,一旦链路状态发送变化,结点就对更新的网络图使用迪杰斯特拉最短路径算法重新计算路由(单源到其他结点的最短路径),典型的链路状态算法是OSF算法。(优点:每个路由结点都是用同样的数据计算路径,不依赖中间结点的计算;链路状态报文传播时不变,易于查找故障;比距离-向量算法有更好规模延展性)
链路状态路由算法特征:
- 向本系统中所有路由器发送信息,即路由器通过端口向相邻路由器发送信息,然后相邻路由器再将信息发往其相邻路由器(不包括刚刚发来信息的那个路由器)。
- 发送的信息是与路由器相邻的所有路由器的链路状态
- 只有当链路状态发送变化时,路由器才向所有路由器发送此信息
层次路由
当网络规模扩大时,路由表成比例增大,因此路由选择需要按层次进行
自治系统:因特网将互联网划分为许多较小自治系统(一个自治系统包含很多局域网),每个自治系统有权自主决定应采用何种路由选择协议,如果两个自治系统要通信,需要一种自治系统间的协议来屏蔽差异
路由选择协议分类:
- 内部网关协议(IGP):一个自治系统内部使用的路由选择协议,具体协议有,RIP、OSPF等
- 外部网关协议(EGP):自治系统之间所使用的路由协议,用于不同自治系统的路由之间交换路由信息,并负责为分组在不同自治系统间选择最优路径,具体协议有,BGP
Ipv4
Ipv4:IP(版本4),数据传输的基本单元是IP分组(或者叫IP数据报)
Ipv4分组:由首部和数据部分组成,首部前一部分是固定长度,共20B,是所有IP分组必须有的,首部后一部分是可变部分,长度可变,用于提供错误检测及安全等机制。
首部部分重要字段:
- 版本:IP版本,最广泛使用的版本号是4
- 首部长度:占4位
- 总长度:占16位
- 标识:占16位,它是一个计数器,每产生一个数据报就加1
- 标志:占3位,用于指明分片情况,最低位为MF,若MF=1表示后面还有分片,MF=0表示最后一个分片;中间位DF,只有当DF=0时才允许有分片
- 片偏移:占13位某片在原分组中的相对位置
- 生存时间(TTL):占8位,数据报在网络中可通过的路由器数的最大值,标识分组在网络中的寿命
- 协议:占8位,指出分组携带的数据使用的是何种协议,分组的数据部分应交给哪个传输层
- 首部校验和:占16位,只校验分组的首部不校验数据部分
- 源地址字段:4B,标识发送方的IP地址
- 目的地址字段:4B,标识接收方的IP地址
IP数据报分片:
MTU:一个数据链路层数据包能承载的最大数据量,MTU严格限制着IP数据报的长度,不同的链路层协议有不同的IP数据报长度
片:当IP数据报长度大于链路MTU时,需要将IP数据报中的数据分装在俩个或多个较小IP数据报中,这些小数据报称为片。目的主机通过使用IP首部的标识、标志和片偏移字段完成对片的重组。例如:一个长4000B的IP数据报到达一个路由器时,需要转发到一条MTU为1500的链路上,此时3979需要分配到3个独立的片中
网络层转发分组的流程:
- 从数据报首部提取目的主机IP地址D,进而得到目的网络地址N
- 若网络地址N与此路由器直接相连,则把数据报直接交付给目的主机D,否则执行步骤3
- 若路由表中有目的地址D的特定主机路由,则把数据报传送给路由表所指明的下一跳路由器,否则执行步骤4(得到下一跳路由器的IP地址后并不是直接将该地址填入待发送数据报,而是将该IP地址转换成MAC地址,将其放到MAC帧首部中,然后根据MAC地址找到吓一跳路由器)
- 若路由表中有到达网络N的路由,则把数据报传送给路由表指明的下一跳路由器,否则执行步骤5
- 若路由表中有一个默认路由,则把数据报传送给路由表所指明的默认路由,否则执行步骤6
- 报告转发分组出错
Ipv4地址:连接到因特网上的每台主机(或路由器)都会分配一个32位全球唯一的标识符,即IP地址,IP地址由网络号和主机号构成,更具不同的位数,IP地址分为A、B、C、D、E五类
在各类IP地址中,有些IP地址具有特殊用途,不作为主机的IP地址:
- 主机号全为0表示网络本身,如202.98174.0
- 主机号全为1表示本网络的广播地址,如202.98.174.255
- 127.0.0.1表示主机本身
- 32位全为0表示本网络上的本主机,即0.0.0.0
- 32位全为1表示整个TCP/IP网络的广播地址,即255.255.255.255,但由于实际路由器对广播域的隔离,则255.255.255.255等效位本网络的广播地址
- A类:1.0.0.0-126.0.0.0,默认子网掩码为255.0.0.0,前8位为网络号且其第一位为0,后24位为主机号,且网络号为0的用于指本网络,网络号为127的用于指本机地址,所以最大网络数位2^7-2,一般用于大型网络
- B类:128.0.0.0-191.255.0.0,默认子网掩码位255.255.0.0,前16位为网络号且其前两位为110,后16位为主机号,网络号为128.0的不可指派,一般用于中等网络
- C类:192.0.0.0-223.255.255.0,子网掩码为255.255.255.0,前32位为网络号且其前两位为10,后8位为主机号,网络号为192.0.0的不可指派,一般用于小型网络
IP地址的特点:
- 每个IP地址由网络号和主机号组成,IP地址管理机构在分配IP地址时只分配网络号,而主机号由本网络的单位自行分配,路由器只根据网络号来转发分组,而不考虑主机号,从而减小了路由表存储空间
- 每个IP地址的网络号必须与所在网络的网络号相同
- 用转发器或网桥等连接的若干LAN仍是同一个网络,该LAN中所有主机IP地址网路号必须相同,主机号可不同
- 所有分配到网络号的网络都是平等的
- 同一局域网上主机或路由器的IP中的网络号必须相同,路由器总是有两个或两个以上的IP地址,路由器每个端口都有一个不同网络号的IP地址
网络地址转换(NAT):将通过专用网络地址转换为公用地址,从而对外隐藏内部IP地址,降低了内部网络受到攻击的风险,使用NAT时需要在专用网连接到因特网的路由器上安装NAT软件,NAT路由器至少有一个有效的外部全球地址。使用本地地址的主机与外界通信时,NAT路由器使用NAT转换表将本地地址转换成全球地址,或反过来。(例如:某宿舍办理了2Mbit/s的电信宽带,这个宿舍就获得了一个全球IP地址(如138.76.29.7),而宿舍有4台主机使用私有地址(如192.168.0.0网段),宿舍的网关路由器应该开启NAT功能,并且某时刻路由器上的NAT转换表如图,当路由器从LAN端口收到源IP及源端口号为192.168.0.2:2233的数据报时,就将其映射成138.76.29.7:5001,然后从WAN端口发送到因特网上;当路由器从WAN端口收到目的IP及目的端口为138.76.29.7:5060的数据报时,就将其映射成192.168.0.3:1234,然后从一LAN端口发送给相应的本地主机。)
普通路由器和NAT路由器:
- 普通路由器:在转发IP数据报时不改变源IP地址和目的IP地址,仅工作在网络层
- NAT路由器:在转发IP数据报时一定会更换IP地址,工作在网络层和传输层,因为转发数据报时需要查看和转换传输层端口号
私有IP地址:只用于LAN,不用于WAN,并且允许私有IP地址被LAN重复使用,有效避免了IP地址不足的问题,私有IP地址网段如下:
- A类:10.0.0.0-10.255.255.255
- B类:172.16.0.0-172.31.255.255
- C类:192.168.0.0-192.168.255.255
专用互联网/本地互联网:采用私有IP地址的互联网络
子网划分:两级IP(即IP由网络号和主机号组成)使IP地址空间的利用率低,从1985年起,将俩级IP地址变成了三级IP地址,这种做法叫做子网划分
子网划分基本思路:
- 子网划分后网络仍对外表现为没有划分的网络
- 从主机号借用若干为作为子网号,即IP地址变为,网络号+子网号+主机号(只是改变了原来的主机号,网络号不变;子网中主机号为全0的地址为子网的网络号,主机号全1的地址为子网的广播地址)
- 凡是从其他网络发送给本网络某主机的IP数据报,仍然使根据IP数据报的目的网络号西先找到连接本地网络的路由器,然后路由器收到IP数据报后,按目的网络号和子网号找到目的子网,最后把数据报交付给目的主机
子网掩码:告诉主机或路由器对一个A、B、C类网址进行了子网划分,是一个32位的二进制串,由连续的1和连续的0组成,1对应IP地址中的网络号及子网号,0对应主机号,计算机只需将IP地址与子网掩码进行逐位“与”操作,即可得到子网的网络地址。目前因特网规定,所有网络必须使用子网掩码,没有划分子网则采用默认子网掩码,默认的A、B、C的子网掩码为:255.0.0.0、255.255.0.0、255.255.255.0。(例如,主机IP地址为192.168.5.56,则子网掩码为255.255.255.0,进行逐位与运算后,得到主机所在子网的网络号为192.168.5.0)路由器之间相互交换路由信息时,需要把所在网络或子网的子网掩码告诉对方,即除了给出目的网络地址和吓一跳地址外,还要给出目的网络的子网掩码
无分类域间路由选择(CIDR):在变长子网掩码的基础上提出的消除A、B、C传统网络划分且软件支持下实现的IP划分方法,例如,一个单位需要2000个地址,那么就给它分配一个2048地址的块(8个连续C类网络地址),而不是一个完全的B类地址
CIDR特点:
- 消除了传统A、B、C类地址及划分的概念,IP={网络前缀,主机号}表示;CIDR还使用斜线记法,即IP地址/网络前缀所占位数,网络前缀所占位数等效于子网掩码中连续1的部分,例如128.14.32.5/20这个地址,其子网掩码为20个连续的1和12个连续的0组成,从而逐位与得到网络前缀位为128.14.32.0
- 将网络前缀都相同的连续IP地址组成“CIDR地址块”,一个CIDR地址快可以表示多个地址,这种地址的聚合称为路由聚合,例如206.1.0.0/17和206.1.128.0、17就可以聚合成206.1.0.0/16的路由
IP地址和MAC地址的关系:IP地址封装在IP数据报的首部,MAC地址放在MAC帧的首部,把IP数据报分组封装为MAC帧后,数据链路层看不见数据报分组中的IP地址了
地址解析协议(ARP,Address Resolution Protocol):在实际的链路上传送数据帧是,最终使用的都是MAC地址,所有需要一种方法将IP地址映射成MAC地址,这就是ARP协议。每台主机都有一个ARP高速缓存,用来存放本局域网上各主机和路由器的IP地址到MAC地址的隐射表(ARP表),ARP工作在网络层。ARP对IP地址的解析是自动进行的。ARP协议工作在网络层因为可以看到IP地址,NAT路由器工作在传输层因为可以看到端口。
ARP工作原理:主机A想向本局域网上的主机B发送IP数据报时,先在ARP高速缓存种查看有无主机B的IP地址,如有,则查出对应MAC地址,再将MAC地址协议MAC帧,通过局域网将MAC帧发送给此MAC地址;若没有,则通过使用目的MAC地址为FF-FF-FF-FF-FF-FF-FF的的MAC帧来广播发送ARP请求,同一局域网主机都能收到,主机B收到ARP请求后,向主机A发送响应ARP分组,分组种包含主机B的IP和MAC地址映射关系,主机A收到后将映射协议ARP缓存,然后发送MAC帧
ARP的4种类型:
- 发送方是主机,把IP数据报发送到本网络上另一台主机
- 发送方是主机,把IP数据报发送到到另一网络上一台主机
- 发送方是路由器,把IP数据报发送到本网络上一台主机
- 发送方是路由器,把IP数据报发送到另一网络上一台主机
动态主机配置协议(DHCP,Dynamic Host Configuration Protocol):用于给主机动态地分配IP地址,体现了即插即用的联网机制,计算机在加入新网络后自动获取IP地址而不用手工操作。是应用层协议,基于UDP。
DHCP工作原理:需要IP地址的主机在启动时向DHCP发送广播报文,本地网络上所有主机都可收到广播报文,但只有DHCP服务器会回答此广播报文,DHCP先在数据库种查找该计算机配置信息,若找到则返回信息,若找不到,则从服务器的IP地址池种取一个地址分配给计算机。
网际控制报文协议(ICMP,Internet Control Message Protocol),此协议可以让主机或路由器报告差错和异常情况,从而提高数据报交付成果机会。种类分为:ICMP差错报告报文(用于目标主机或目标主机路径上的路由器向源主机报告差错和异常情况,具体有终点不可达、源点抑制、时间超过、参数问题、改变路由5种报错情况)和ICMP询问报文(有4种类型,分别为回送请求和回答报文,时间戳请求和回答报文、掩码地址请求和回答报文、路由器询问和通告报文),ICMP的应用:ping命令(测试两台主机之间的连通性,使用了会送请求和回答报文,工作在应用层)和traceroute命令(用来跟踪分组经过的路由,使用了时间超过报文,工作在网络层)
Ipv6
Ipv6解决IP地址耗尽的问题(另外两种:采用CIDR;采用NAT;)
Ipv6的特点:
- 将地址从Ipv4的32位增到到了128位
- Ipv6只有在包的源结点才能分片,传输路径种的路由器不能分片
- 增大了安全性
五、传输层
六、应用层
顶级域、二级域、三级域等:
顶级域名分类:
- 国家顶级域名:如“.cn”表示中国,“.us”表示美国
- 通用顶级域名:“.com”表示属于某公司的网站,“.net”表示属于网络服务机构的网站,“.org”表示属于非营利性组织的网站,“.gov”表示属于国家或政府部门的网站等
- 基础结构域名:只有一个,即“.arpa”,用于反向域名解析,又称反向域名
4种域名服务器:
- 根域名服务器:是最高层次的域名服务器,,所有根域名服务器都知道所有顶级域名服务器的IP地址,因特网上有13个根域名服务器(实际上是服务器集群)
- 顶级域名服务器:负责管理注册的所有二级域名,收到DNS查询请求时,给出结果(可能是最后的结果也可能是下一步应当查找的域名服务器IP地址)
- 授权域名服务器(权限域名服务器):每台主机都必须在授权域名服务器处登记,授权域名服务器能将主机名转换为主机IP地址
- 本地域名服务器:当一台主机发出DNS查询请求时,这个查询请求会发送给该主机的本地域名服务器(windows系统配置本地连接时需要填写的DNS地址就是本地域名服务器地址)
域名解析过程:当客户端需要域名解析时,通过本机的DNS客户端构造一个DNS请求报文,以UDP数据报方式发往本地域名服务器
域名解析的两种方式:递归查询和迭代相结合的查询
递归查询(不常使用):
- 例如在浏览器输入www.baidu.com,首先浏览器会搜索自带的DNS缓存记录(Chrome缓存1000条DNS解析结果,缓存时间为1min,清除缓存:chrome://net-internals/#dns)
- 如果没有找到或记录过期,则搜索hosts文件(在hosts文件中可以手动指定一个域名和对应IP的解析结果,如果该结果被使用则会加入到操作系统缓存,windows的hosts文件在%systemroot%\system32\drivers\etc下;Linux的在/etc/hosts下)和操作系统缓存;(使用ipconfig /displaydns 命令查看本机当前的缓存)
- 如果没有找到记录或过期,则向本地域名服务器发送查询IP地址的请求
- 如果没有记录,则本地域名服务器会向根域名服务器发送查询IP地址的请求,如果没有记录,则根域名服务器发送查询请求到顶级域名服务器,如果没有记录,则顶级域名服务器发送请求到权限域名服务器,然后得到对应的主机IP,逐层返回给主机
递归和迭代相结合的查询(常使用):
- 前3步同递归查询
- 如果没有记录,则本地域名服务器会向根域名服务器发送查询请求,此时根域名服务器要么给出要查询的IP地址,要么告诉本地域名服务器应该向哪个顶级域名服务器发送查询请求,同样顶级域名服务器要么给出要查询的IP地址,要么告诉本地域名服务器应该向哪个权限域名服务器发送查询请求,最后权限域名服务器将IP地址返回给本地服务器,然后再返回给主机