计算机网络
(25版)408王道教材与湖科大教书匠 深入浅出计算机网络 微课视频逐一对照表:(自用,仅供参考)
第1章 计算机网络体系结构
1.1 计算机网络概述 2~7
1.2 计算机网络体系结构与参考模型11-8-9-10
第2章 物理层 2.1 通信基础 14-16-15
2.2 传输介质 13-12
2.3 物理层设备 (无,参考王道P20)
第3章 数据链路层
3.1 数据链路层的功能 18-19
3.2 组帧 20
3.3 差错控制 21
3.4 流量控制与可靠传输机制 22~25
3.5 介质访问控制 17-29-30-31-46
3.6 局域网 28-39-42-43-44-45-47-40-41
3.7 广域网 26-27
3.8 数据链路层设备 32~38
第4章 网络层
4.1 网络层的功能 48-49-78
4.2 IPv4 50-58-51-66,52~56,93-65
4.3 lPv6 73~77
4.4 路由算法与路由协议 59~63
4.5 IP多播 67~71
4.6 移动IP 72
4.7 网络层设备 64-57
第5章 传输层
5.1 传输层提供的服务 79-81-80
5.2 UDP协议 82
5.3 TCP协议 83-84-85-88-89-90-86-87
第6章 应用层
6.1 网络应用模型 91-92
6.2 域名系统(DNS) 94
6.3 文件传输协议(FTP) 95
6.4 电子邮件 96
6.5 万维网(WWW) 97 完结撒花
第一章 概述
1.1 信息时代的计算机网络
1.2 因特网概述
网络、互联网与因特网的区别与联系
- 若干网络通过路由器互连起来,就构成了互联网
- 因特网是当今世界上最大的互联网
- 路由器是用于网络互连的专用设备,一般不称其为主机
总结
- 特别注意
互联网发展的三个阶段
因特网服务提供者(ISP)
因特网已经发展成为基于ISP的多层次结构的互连网络
- 第一层ISP是国际级的,覆盖面积最大,并且拥有高速链路和交换设备,第一层ISP之间相互连接构成因特网主干网
- 第二层ISP是区域级或国家级的,与少数第一层ISP相连接,作为第一层ISP的用户,一些大公司也是第一层ISP的用户
- 第三层ISP是本地级的,与第二层ISP相连接,作为第二层ISP的用户
- 普通的校园网、企业网、住宅用户以及移动用户等,都是第三层ISP的用户
- 已接入因特网的用户也可以成为一个ISP,只需要购买一些相关的设备,例如调制解调器、路由器等,堂其他用户能够通过他来接入因特网
- 因特网的结构实际上是基于ISP的多层次结构,各ISP可以在因特网拓扑上添加新的层次和分支
因特网的标准化工作
因特网的管理机构
因特网的组成
- 因特网的边缘部分由连接在因特网上的台式电脑、服务器、笔记本电脑、平板电脑、智能手机、智能手表、网络摄像头以及网络打印机等用户设备构成,这些用户设备常称为主机,由用户直接使用,为用户直接提供各式各样的网络应用
- 因特网的核心部分由大量异构型网络和连接这些网络的路由器构成
- 因特网的核心部分为其边缘部分提供连通性和数据交换等服务
- 在网络核心部分起特殊作用的是路由器,它是一种专用计算机,但我们不称其为主机
- 路由器是实现分组交换的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能
1.3 电路交换、分组交换和报文交换
电路交换
- 电话交换机接通电话线的方式就是电路交换
- 建立连接:
- 例如,在使用电路交换打电话之前,主叫方必须首先进行拨号,以请求建立连接,当被叫方听到电话交换机送来的振铃音,并摘机后,从主叫方到被叫方就建立了一条专用的物理通路,简称连接
- 这条连接为通话双方提供了通信资源,之后主叫方和被叫方可以基于连接进行通话
- 整个通话期间,通话双方一直占用着连接,通信资源不会被其他用户占用
- 通话完毕挂机后,从主叫方到被叫方的这条专用物理通路被交换机释放,将双方所占用的通信资源归还给电信网
- 因此,计算机网络通常采用分组交换而非电路交换
分组交换
- 假设主机H1的用户要给主机H3的用户发送一条消息
- 通常,我们把表示消息的整块数据称为一个报文,较长的报文一般不适宜直接传输,如果报文太长,则对交换节点的缓存容量有很大的需求,在错误处理方面也会比较低效,因此,需要将较长的报文划分成若干个较小的等长数据段,在每个数据段前面,添加一些由必要的控制信息组成的首部,这样就构成了一个个分组
- 首部中包含了分组的目的地址
- 源主机将分组发送到分组交换网中,分组交换网中的交换结点收到一个分组后先将其缓存下来,然后从其首部中提取出目的地址,按照目的地址查找自己的转发表,找到相应的转发接口后,将分组转发出去,把分组交给下一个交换节点,经过多个交换节点的存储转发后,分组最终被转发到目的主机
- 目的主机收到这些分组后,去掉他们各自的首部,将各数据段组合还原出原始报文
报文交换
- 报文交换数据交换单元为整个报文,传送路径中的交换节点只有站在完整接收到整个报文后,才能对其进行存储转发
- 分组交换下各交换节点在转发分组的同时还缓存接收到的分组
1.4 计算机网络的定义和分类
总结
计算机网络的定义
计算机网络的分类
- 有线网络包括双绞线网络、光纤网络等
- 记住英文缩写尤其是WAN和LAN
- 广域网是因特网的核心部分,它为因特网核心路由器提供远距离高速连接,互连分布在不同国家和地区的城域网和局域网
- 城域网通常作为城市骨干网,互联大量机构、企业以及校园局域网
- 局域网通常由微型计算机或工作站通过速率为10Mb/s以上的高速链路相连
- 个域网是个人区域网的简称,覆盖范围一般为10m,主要用于个人工作的地方,把属于个人使用的笔记本电脑、键盘、鼠标、耳机以及打印机等电子设备用wifi或者蓝牙等无线技术连接起来的网络,因此也常称为无线个域网WPAN
- 使用单根传输线把计算机连接起来
- 优点是建网容易,增减节点方便,节省线路
- 缺点是重负载时通信效率不高,总线任意一处出现故障,则全网瘫痪
- 每个计算机都以单独的线路与中央设备相连
- 中央设备早期是计算机,后来是集线器,现在一般是交换机或者路由器
- 优点是便于网络的集中控制和管理
- 缺点是成本高,中央设备对故障敏感
- 所有计算机的网络接口都连接成一个环,最典型的例子是令牌环局域网
- 环可以是单环,也可以是双环,环中信号是单向传输的
- 每个节点至少有两条路径与其他节点相连,多用在广域网中
- 其优点是可靠性高
- 缺点是控制复杂、路线成本高
- 以上四种拓扑结构还可以互连为更复杂的网络
1.5 计算机网络的性能指标
速率
带宽
- 在构建网络时,应该做到各设备以及传输介质的速率匹配,这样才能完全发挥出本应具有的传输性能
吞吐量
时延
- 分组在每个路由器上产生的排队时延的长短,往往取决于网络当时的通信量和各路由器的自身性能
- 由于网络的通信量随时间变化很大,各路由器的性能也可能并不完全相同,因此,排队时延一般无法用一个简单的公式进行计算
- 当网络通信量很大时,可能会造成路由器的队列溢出,使得分组丢失,相当于排队时延无穷大
- 由于网络的通信量随时间变化很大,各路由器的性能也可能并不完全相同,因此,排队时延一般无法用一个简单的公式进行计算
- 分组经过路由器的转发传输到目的主机,这又会耗费路由器的一个发送时延,以及代表该分组的电信号在另一段链路上传播所耗费的传播时延
- 上述三种信号传播速率应当作为必备常识记住
- 电磁波在自由空间的传播速率就是光速
- 光纤的带宽很大,即所能承载的最高数据传送速率很大(单位时间内可传送更多的bit)
- 此图为了方便起见并没有画出排队时延和处理时延
- 在不考虑排队时延和处理时延的情况下,源主机通过n个路由器的转发,给目的主机发送m个分组的总时延计算公式(假设各分组各链路等长,主机和路由器的发送速率相等)
- 总时延计算公式=m个分组的发送时延+(n+1)个路由器的传播时延+n个路由器的发送时延
- 总时延=(m+n)发送时延+(n+1)传播时延
- 总时延计算公式=m个分组的发送时延+(n+1)个路由器的传播时延+n个路由器的发送时延
- 在不考虑处理时延和排队时延的情况下,总时延中传播时延或者发送时延占主导均有可能
速率、带宽、吞吐量、时延总结
时延带宽积
- 管道的长度是链路的传播时延(以时间作为单位来表示链路长度),管道的横截面积是链路的带宽,时延带宽积相当于这个管道的容积(底面积*高)
- 光纤链路长1km,则信号传播时延为5微秒
往返时间
- 卫星链路耗时较多,因为一般情况下卫星链路比较远,所带来的传播时延比较大
利用率
- 网络利用率并非越高越好,过高的网络利用率会产生非常大的时延
- 使用机制,动态调整输入到网络中的通信量,使网络利用率保持在合理的范围内
丢包率
- 当网络的丢包率较高时,通常无法使网络应用正常工作
时延带宽积、往返时间、利用率、丢包率总结
1.6.1 常见的三种计算机网络体系结构
- 因为TCP/IP在网络层使用的协议是IP协议(网际协议),所以TCP/IP体系结构的网络层常称为网际层
- 一般认为路由器的网络体系结构的最高层为网际层
- 为了互连全世界不同的网络接口,TCP/IP的网络接口层并没有规定什么内容,因此TCP/IP体系结构在实际上只有网际层、运输层、应用层
- 网际协议IP是TCP/IP体系结构网际层的核心协议
- 传输控制协议TCP和用户数据报协议UDP是TCP/IP体系结构运输层的两个重要协议
- TCP/IP体系结构的应用层包含了大量的应用层协议
- IP协议可以将不同的网络接口进行互连,并向其上的TCP协议和UDP协议提供网络互连服务
- TCP协议在享受IP协议提供的网络互联服务的基础上可向应用层的某些协议提供可靠传输的服务
- UDP协议在享受IP协议提供的网络互连服务的基础上,可向应用层的某些协议提供不可靠传输的服务
1.6.2 计算机网络体系结构分层的必要性
- 严格来说,传输媒体并不属于物理层的范畴,它并不包含在计算机网络体系结构之中,并且,计算机网络中传输的信号,并不是我们举例的简单的数字基带信号
- 主机在传输数据时,应该给数据附加上源地址和目的地址,当其他主机收到后,根据目的地址和自身地址是否匹配来决定是否接受该数据,还可以通过源地址知道这是哪个主机发来的数据
- 在交换式以太网中,多对主机之间可以同时进行通信而不会产生碰撞
- 只要解决了物理层和数据链路层各自所面临的问题,就可以实现数据包在一个网络上传输了
- 处于同一个网络的IP地址的网络号相同
- 解决了物理层、数据链路层以及网络层各自的问题,就可以实现数据包在多个网络之间的传送了
- 解决了物理层、数据链路层、网络层、运输层的问题,则可以实现进程之间基于网络的通信
1.6.3 计算机网络体系结构分层思想举例
- 主机属于网络N1,WEB服务器属于网络N2,N1和N2通过路由器互连,用户在主机中使用浏览器访问web服务器
- 当用户在浏览器地址栏中输入web服务器的域名后,主机会向web服务器发送一个请求报文
- web服务器收到请求报文后,执行相应的操作,然后给主机发送相应报文
- 主机收到响应报文后,由浏览器负责解析和渲染显示
- 主机和web服务器之间基于网络的通信,实际上是主机中的浏览器应用进程与web服务器应用进程之间基于网络的通信
- 主机中的应用层根据http协议的规定构建一个http请求报文,用来请求web服务器执行相应的操作
- 应用层将构建好的http请求报文向下交付给运输层,运输层给http请求报文添加一个tcp首部,将其封装成为tcp报文段
- tcp首部的主要作用是区分应用进程和实现可靠传输
- 运输层将封装好的tcp报文段向下交付给网络层
- 网络层给TCP报文段添加一个IP首部,将其封装成为IP数据包
- IP首部的主要作用是IP寻址和路由
- 网络层将封装好的IP数据报向下交付给数据链路层
- 数据链路层给IP数据报添加一个首部和尾部,将其封装成帧
- 帧首部和尾部的作用是MAC寻址和帧校验
- 数据链路层将封装好的帧向下交付给物理层
- 物理层并不认识帧的结构,仅仅将其看作比特流,以便将比特流转化成相应的电信号进行发送
- 对于以太网,物理层还会在比特流之前添加前导码,目的是使接收方的时钟同步,并做好接收准备
- 主机将电信号发送出去,路由器收到后,其物理层将电信号转换成比特流
- 物理层将前导码去掉后,将帧向上交付给数据链路层
- 数据链路层将帧首部和尾部去掉后,将IP书数据报向上交付给网络层,网络层从IP数据报的首部中提取出目的IP地址,根据目的IP地址查找自己的转发表,以便决定从哪个接口转发该IP数据报
- 与此同时,还要对首部中的某些字段值,例如生存时间TTL字段的值进行相应的修改,然后将该IP数据报向下交付给数据链路层
- 数据链路层作为IP数据报添加一个首部和一个尾部,将其封装成帧,然后将帧向下交付给物理层
- 物理层将帧看作是比特流,给其添加前导码后,转变成相应的电信号发送出去
- web服务器收到数据包后,按网络体系结构自上而下的顺序,对其进行逐层解封,解封出HTTP请求报文
- web服务器的应用层收到HTTP请求报文后,执行相应的操作,然后给主机发送包含有浏览器请求内容的HTTP响应报文
- 与浏览器发送HTTP请求报文的过程类似,HTTP响应报文需要在WEB服务器,层层封装后才能发送,数据包经过路由器的转法到达主机,主机对收到的数据包,按网络体系结构自下而上地顺序逐层解封,解封出HTTP响应报文
- PDU:协议数据单元
总结
1.6.4 计算机网络体系结构中的专用术语
实体
- 标有字幕的小方格表示实体
协议
- 将两个对等实体间的通信称为逻辑通信,是因为这种通信只是我们假设出来的一种通信,实际上并不存在
- 没必要记住格式,只要看得懂格式就可以了
服务
总结
第二章 物理层
2.1 物理层概述
物理层要实现的功能
- 物理层要实现的功能就是在各种传输媒体上传输比特0和1,进而给其上面的数据链路层提供透明传输比特流的服务
- 物理层为数据链路层屏蔽掉了各种传输媒体和通信手段的差异
物理层接口特性
总结
2.2 物理层下面的传输媒体
传输媒体的分类
- 电磁波在导向型传输媒体中,被导向沿着固体媒体传播
导向型传输媒体
同轴电缆
- 由于外屏蔽层的作用,同轴电缆具有很好的抗干扰性,被广泛应用于高速率数据传播
双绞线
- 把两根互相绝缘的铜导线,按一定密度互相绞合起来,就构成了双绞线
- 目前家庭局域网的主流带宽为1Gb/s
光纤
- 纤芯的折射率大于包层的折射率
- 如果将光纤的直径减小到只有一个光的波长,则光纤就像一根波导那样,可以使广播一直向前传播而不会产生多次反射
- 由于光的色散问题,光在多模光纤中传播时会出现脉冲展宽造成信号失真
- 光在单模光纤中传输时,没有模式色散,在1.3微米波长附近,材料色散和波导色散大小相等且符号相反,两者正好抵消,不会出现脉冲展宽
- 因此,多模光纤一般只适合于建筑物内的近距离传输,单模光纤适合长距离传输且衰减更小
- 纤芯直径/包层直径
非导向型传输媒体
无线电波
![c tryw4](/img/c tryw4.png)
- 在低频和中频波段,无线电波主要以地面波的形式沿着地面传播
- 在高频和甚高频波段,地面波会被地表吸收,无线电波主要依靠电离层的反射,再回到地球表面
微波通信
- 微波在空间主要是直线传播
- 由于微波会穿透电离层而进入宇宙空间,因此它不像高频和甚高频波段的无线电波一样,可以经电离层反射传播到地面上很远的地方
- 以同步地球卫星作为中继器
- 只要在地球赤道轨道上空的同步轨道上,等距离地放置3颗互成120度的人造通信卫星,就能基本实现全球的通信
红外线
激光
- 一种新型光源,具有亮度高、方向性强、单色性好以及相干性强等特征
- 大气激光通信:利用大气作为传输媒体的激光通信,通信容量大、保密性强、结构轻便、设备经济,但通信距离限于视距,易受气候影响,瞄准困难
- 光纤通信:利用光纤传输光信号的通信方式
可见光
总结
2.3 传输方式
串行传输和并行传输
- 若比特在单条数据传输线路上的数据传输速率相同,则并行传输的数据传输速率是串行传输的数据传输速率的n倍,倍数n取决于并行传输所采用的数据传输线路数量,也称为数据总线宽度
- 常用的有8位、16位、32位以及64位
- 并行传输的成本高,通常仅用于短距离传输,例如计算机内部的数据传输,而远距离传输一般采用串行传输方式
- 计算机中的网卡,同时具有串行传输和并行传输方式,当计算机通过其内部的网卡,将数据发送到传输线路上时,网卡起到的其中一个非常重要的作用,就是并串转换,当计算机通过其内部的网卡,从传输线路上接收数据时,网卡需要进行串并转换
同步传输和异步传输
-
同步传输方式,以比特为传输单位,数据块以比特流的形式传输,字节之间没有间隔
也没有起始位和终止位,接收端在每个比特信号的中间时刻进行采样,以判别接收到的是比特0还是比特1 -
这就要求收发双方,对表示比特的信号的时间长度达成一致,即所谓的同步
-
然而在不采取任何其他措施的情况下,收发双方的时钟频率无法达到严格同步,在数据传输的过程中
必然会产生接收方对信号采样时刻的误差积累,当传输大量数据时,误差积累就会越来越严重,最终会导致接收方对比特信号的误判 -
为了在同步传输方式中,实现收发双方的时钟同步,可以采用以下两种方法
- 一种是外同步
- 也就是在收发双方之间增加一条时钟线,发送端在发送数据信号的同时,还要发送一路时钟信号,接收端在时钟信号的指挥下,对数据信号进行采样,这样就实现了收发双方的同步
- 另一种是内同步
- 也就是发送端将时钟信号编码到发送数据中
一起发送,例如我们后续课程将要介绍的曼彻斯特编码
和差分曼彻斯特编码都自含时钟编码,具有自同步能力
- 也就是发送端将时钟信号编码到发送数据中
- 一种是外同步
- 接收端只在每个字节的起始处,对字节内的比特实现同步,为此一般要给每个字节添加起始位和结束位
单向通信、双向交替通信和双向同时通信
- 半双工通信下发送信息和接收信息不能同时进行
- 对讲机之间总线型以太网上的各主机之间,都属于双向交替通信
- 传统有线电话之间,交换式以太网上的各主机之间,都属于双向同时通信
- 单工电台中的单工表示的是双向交替通信,并不表示单向通信
总结
2.4 编码与调制
基本概念
- 由信源发出的原始信号称为基带信号,也就是基本频带信号
- 基带信号往往包含较多的低频成分,甚至包含直流成分,而许多信道并不能传输这种低频分量或直流分量,因此,需要对基带信号进行调制后才能在信道上传输
- 调制可分为基带调制和带通调制
- 基带调制是对数字基带信号的波形进行变换,使其能够与信道特性相适应,调制后的信号仍然是数字基带信号
- 由于基带调制是把数字信号转换成另一种形式的数字信号,因此,基带调制也称为编码
- 带通调制是将数字基带信号的频率范围搬移到较高的频段,并转换为模拟信号,使其能够在模拟信道中传输
- 基带调制是对数字基带信号的波形进行变换,使其能够与信道特性相适应,调制后的信号仍然是数字基带信号
常用编码方式
- 在双极性归零编码情况下,时钟信号通过数据信号线进行发送,而不用单独的时钟信号线来发送时钟信号
基本的带通调制方法和混合调制方法
- 调幅:无载波输出表示比特0,有载波输出表示比特1
- 调频:频率f1的波形表示比特0,频率f2的波形表示比特1
- 调相:相位0°的波形表示比特0,相位180°的波形表示比特1
-
可以理解为最多要用多少个二进制位表示这么多码元,比如16个码元最多4bit就能表示,4个码元最多2bit就能表示,00,01,10,11
-
每个码元与比特组合的对应关系不能随便定义,应该采用格雷码进行编码
2.5 信道的极限容量
造成信号失真的主要因素
奈氏准则
- 基本调制方法所调制出的每个码元只能携带1bit的信息量
- 混合调制方法调制出的每个码元能够携带更多bit的信息量
香农公式
- 频率带宽+理论最大数据传输速率=香农公式
2.6 信道复用技术
信道复用技术的基本原理
常见的信道复用技术
频分复用FDM
时分复用TDM
波分复用WDM
码分复用CDM
第三章 数据链路层
3.1 数据链路层概述
数据链路层在网络体系结构中所处的地位
- 数据包进入路由器R1以后,会从物理层开始被逐层解封,直到解封出网络层协议数据单元PDU,路由器从该PDU的首部中取出目的地址,根据目的地址在转发表中,找到相应的下一跳地址后,将该PDU向下逐层封装后,通过物理层发送出去
- 为了简单起见,当学习数据链路层的相关问题时,在大多数情况下,我们可以只关注数据链路层本身,而忽略网络体系结构中的其他各层
链路、数据链路和帧
3.2 数据链路层的三个重要问题
封装成帧和透明传输
- 接收方根据FCS(帧检验序列)字段可以判断帧在传输过程中是否产生了误码
- 标志字段用于识别帧的开始和结束,即帧定界
差错检测
可靠传输
总结
3.2.1 封装成帧和透明传输
封装成帧
透明传输
习题
3.2.2 差错检测
误码的相关概念
奇偶校验
循环冗余校验
- 二进制mod2除法相当于对应位进行逻辑异或运算
3.2.3 可靠传输
可靠传输的相关基本概念
停止等待协议
停止等待协议的实现原理
- RTT收发双方之间的平均往返时间
- RTO超时重传时间
停止等待协议的信道利用率
习题
回退N帧协议
- 确认分组ACKn表明序号n及之前的所有数据分组都已正确接收
选择重传协议
- WT发送窗口,WR滑动窗口
3.3 点对点协议PPP
- 接收方每收到一个PPP帧,就进行CRC检验。若CRC检验正确,就收下这个帧;否则,就丢弃这个帧
- 使用PPP的数据链路层,向上提供的是不可靠数据传输服务
3.4.1 网络适配器和MAC地址
- 由48bit构成mac地址,4bit对应一个16进制位,一共12个字符,每两个字符氛围一组,一共6组
- MAC地址中的组织唯一标识符OUI也称为公司标识符
- 全球管理:确保在全球没有相同的MAC地址
- 本地管理:用户可任意分配MAC地址
- 多播地址:一组接口的地址
- 单播地址:一个网络接口的地址
- 本地单播可以覆盖网络接口的全球单播地址
- 剩余46bit全为1时,就是广播地址FF-FF-FF-FF-FF-FF
- 接收是指网卡从网络中收到某个帧,而接受是指网卡接收到某个帧后,还要判断这个帧是否符合要求,决定接受还是丢弃这个帧
- BPDU:网桥协议数据单元
- 各交换机根据BPDU种得一些参数,按照生成树协议所使用的生成树算法,最终某些交换机会阻塞自己的某些接口,这样就破坏了环路,而BPDU首部中的目的地址,就是生成树协议专用的多播MAC地址
3.4.2 共享式以太网
CSMA/CD协议的基本原理
共享式以太网的争用期
- 单程端到端传播时延其实会小于计算值
共享式以太网的最小帧长和最大帧长
共享式以太网的退避算法
共享式以太网的信道利用率
3.4.3 使用集线器的共享式以太网
3.4.4 在物理层扩展以太网
- 其中的每个站点,相较于它们原先所在的独立碰撞域,所遭遇碰撞的可能性会明显增加
3.4.5 在数据链路层扩展以太网
使用网桥在数据链路层扩展以太网
- 为了避免形成更大的碰撞域,可以使用网桥在数据链路层
- 原来的两个共享式以太网,分别成为这个更大的以太网的一个网段,并且各自是一个独立的碰撞域
- 转发表是网桥转发帧的依据,里面记录了网桥所知道的网络中各主机的mac地址与自己各接口的对应关系
透明网桥的自学习和转发帧的流程
透明网桥的生成树协议STP
3.5 交换式以太网
交换式以太网
3.5.1 以太网交换机
3.5.2 共享式以太网和交换式以太网的对比
- 集线器只工作在物理层,它并不能识别帧首部中的目的MAC地址,因为这属于数据链路层的范畴
- 不管集线器收到的是单播帧还是广播帧,集线器仅仅是将表示帧的信号,从其他所有接口转发出去
- 交换机工作在数据链路层,它可以识别帧的结构,从帧首部中提取出目的MAC地址,然后查找自己的转发表,根据查表结果,对帧进行明确转发或盲目转发或丢弃
3.6 以太网的MAC帧格式
- 当数据载荷字段的长度小于46字节时,数据链路层就会在数据载荷字段的后面插入相应数量的填充字节,以确保MAC帧的长度不小于64字节
- 前同步码的作用是使接收方的时钟同步
3.7.1 虚拟局域网VLAN概述
虚拟局域网VLAN的诞生背景
- 除非应用需求必须要使用广播,否则,网络中的主机应尽量不使用广播
- 然而,实际应用中,网络中会频繁出现广播信息
- 路由器工作在网络体系结构中的第三层即网络层,路由器在默认情况下不对广播分组进行转发,因此,路由器很自然地就可以隔离广播域
虚拟局域网VLAN概述
3.7.2 虚拟局域网VLAN的实现机制
![](/img/n6b5ve .png)
- trunk接口一般用于交换机之间或交换机与路由器之间的互连,trunk接口可以属于多个vlan
- 默认情况下,trunk接口的PVID值为1,一般不建议用户修改,若互连的trunk接口的PVID值不相等,则可能出现转发错误
3.8 以太网的发展
3.9.1 802.11无线局域网的组成
- 一个BSS中,包含有一个AP和若干个移动站
- 一个BSS所覆盖的地理范围称为基本服务区BSA
- 一个BSS可以是孤立的也可以与其他BSS连接
- 若移动站A从BSS1漫游到BSS2,在漫游过程中,移动站A的接入点从BSS1中的AP1改为了BSS2中的AP2,但移动站A仍可保持与移动站B的通信
- 由一些对等的移动站点构成的临时网络,数据在自组中网络中被多跳存储转发
- 转发站需要具备路由功能
- 自组织网络一般不能和因特网直接相连,需要通过网关或协议转换器接入到因特网
3.9.2 802.11无线局域网的物理层
3.9.3 802.11无线局域网的数据链路层——使用CSMA/CA(而不使用CSMA/CD协议)
802.11无线局域网使用CSMA/CA协议的原因
CSMA/CA协议的基本工作原理
- DCF帧间间隔DIF的长度为128微秒,在DCF方式中,DIFS用来发送数据帧和管理帧
- DCF即分布式协调功能,在DCF方式下,没有中心控制站点,每个站点使用CSMA/CA协议通过争用信道来获取发送权。DCF方式是802.11定义的默认方式(必须实现)
- 等待DIFS间隔是考虑到有可能由其他的站有高优先级的帧要发送
- 虚拟载波监听机制
- 帧首部中的“持续时间”字段的值指出了源站要占用信道的时间(包括目的站发回确认帧所需的时间)
- 若源站在重传计时器设置的超时时间内,没有收到ACK,就必须重传之前已发送的数据帧,直到收到ACK为止,或者经过若干次的重传失败后放弃发送。
- 当某个站检测到正在信道中传送的帧首部中的“持续时间”字段时,就调整自己的网络分配向量。NAV指出了完成这次帧的传送且信道转入空闲状态所需的时间
- A和B互为隐蔽站,A给AP发送RTS帧进行信道预约,虽然B监听不到该帧,但却能监听到AP应答给A的CTS帧,B根据CTS帧中的持续时间,修改自己的网络分配向量NAV,在NAV指示的时间内,虽然B监听不到A发送给AP的帧,但B也不会发送帧干扰A和AP的通信
总结
3.9.4 802.11无线局域网的MAC帧
- 30字节帧头
- 数据部分主要用来存放上层交付下来的待传送的协议数据单元
- 802。11的数据帧长度一般不超过1500字节
- FCS帧检验序列,采用循环冗余校验码
- 去往DS和来自DS控制位是比较重要的控制位,用于控制帧头中地址1-地址4这四个字段的内容和使用情况
- 类型和子类型控制位,用于区分不同类型的帧(数据帧、控制帧、管理帧,每种还有各自的子类型)
- WEP位用于指示是否使用了WEP加密算法,使用该加密算法,可以和在有线信道上进行通信一样保密
- 最常用的是第二行和第三行使用情况
- AP具有网桥功能
- 802.11帧中必须要携带AP的MAC地址,而以太网帧中却不需要携带AP的MAC地址
- 在以太网中,AP与透明网桥一样对各站点是透明的,因此,以太网帧中就不需要指出AP的MAC地址
- 然而在802.11无线局域网中,在站点的信号覆盖范围内,可能会有多个AP共享同一个物理信道,但站点只能与其中的一个AP建立关联,因此802.11帧中就必须携带AP的MAC地址来明确指出转发该帧的AP
第四章 网络层
4.1 网络层概述
分组转发和路由选择
- 如果网络拓扑比较简单,也可通过在路由器命令行输入命令的方式,对路由表进行静态配置
- 路由表需要对网络拓扑变化的计算最优化,转发表的结构应当使查找过程最优化
网络层向其上层提供的两种服务
面向连接的虚电路服务
无连接的数据报服务
总结
4.2.1 网际协议IP和异构网络互连
网际协议IP
异构网络互连
4.2.2 IPv4地址及其编址方法
IPv4地址概述
IPv4地址的表示方法
IPv4地址的分类编址方法
- 本地软件环回测试地址用于本主机内的进程之间的通信,若主机发送一个目的地址为环回地址,例如127.0.0.1的IP数据报,则本主机中的协议软件就处理数据报中的数据,而不会把数据报发送到任何网络
IPv4地址的划分子网编址方法
IPv4地址的无分类编址方法
- 将n个网络聚合成一个网络的方法:找共同前缀
4.2.3 IPv4地址的引用规划
4.2.4 IPv4地址与MAC地址
- 地址包括源地址和目的地址
- 主机一般只有1个接口,因此需要1个IP地址和1个MAC地址
- 路由器最少有2个接口,每个接口需要1个IP地址和1个MAC地址
4.2.5 地址解析协议ARP
- 每台主机都会维护一个ARP高速缓存表,ARP高速缓存表中,记录有IP地址和MAC地址的对应关系
- 当主机A要给主机B发送分组时,会首先在自己的ARP高速缓存表中查找主机B的IP地址所对应的MAC地址,如果没有找到,就会发送ARP请求报文来获取主机B的MAC地址
- ARP请求报文是广播报文,需要封装在以太网帧中发送,帧的目的MAC地址为广播地址
- 主机A将ARP响应报文中所包含的主机B的IP地址和MAC地址记录到自己的ARP高速缓存表中
- ARP协议被用来解决同一个局域网上的主机或路由器的IP地址和MAC地址的映射问题,不能跨网络使用
4.2.6 IP数据报的发送和转发流程
- 用户为了让本网络中的各主机能与其他网络中的各主机进行同信,就必须给本网络中的各主机指定本网络中的一个路由器,由该路由器帮忙进行转发,所指定的路由器也被称为默认网关
4.2.7 IPv4数据报的首部格式
- IPv4数据报的首部长度一定是4字节的整数倍
![](/img/jvwaeony (2).png)
![](/img/jvwaeony (1).png)
4.3 静态路由配置
4.4.1-4.4.2 因特网的路由选择协议概述
路由选择分类
因特网采用分层次的路由选择协议
4.4.3 路由信息协议RIP
路由信息协议RIP的相关基本概念
RIP的基本工作过程
- 相邻路由器之间,周期性地交换并更新路由信息,若干次交换和更新后,每个路由器就都知道了到达本自治系统各网络的最短RIP举例和下一跳路由器,这称为收敛
RIP的距离向量算法
RIP存在的问题
RIP版本和相关报文的封装
RIP的优缺点
4.4.4 开放最短路径优先OSPF
开放最短路径优先OSPF的相关基本概念
OSPF的五种分组类型
OSPF的基本工作过程
- 两个同步的路由器称作完全邻接的路由器
多点接入网络中的OSPF路由器
OSPF划分区域
- 专门和本自治系统外的其他自治系统交换路由信息的路由器叫做自治系统边界路由器
- 主干区域内的路由器称为主干路由器
- 如果路由器的所有接口都在一个区域内,则该路由器称为区域内路由器
- 为了本区域可以和自治系统内的其他区域连通,每个区域都会有一个区域边界路由器,区域边界路由器的一个接口用于连接自身所在区域,另一个接口用于连接主干区域
4.4.5 边界网关协议BGP
BGP的相关基本概念
BGP-4的四种报文
4.4.6 路由器的基本工作原理
- 信号从路由器的某个输入端口进入路由器,物理层将信号转换成比特流后向上交付给数据链路层处理,数据链路层从比特流中识别出帧,去掉帧头和帧尾后,向上交付给网络层处理
- 如果交付给网络层处理的分组是普通待转发的数据分组,则根据分组首部中的目的地址进行查表转发,若找不到匹配的转发条目,就丢弃该分组,否则按照匹配条目中所指示的端口进行转发
- 网络层更新数据分组首部中某些字段的值,然后向下交付给数据链路层进行封装,数据链路层将数据分组封装成帧后,向下交付给物理层处理
- 物理层将帧看作比特流,将其变换成相应的电信号发送出去
- 如果交付给完了过曾处理的是携带有路由报文的路由分组,则把路由报文送交路由选择处理机,路由选择处理机根据路由报文的内容来更新自己的路由表
- 路由选择处理机除了处理收到的路由报文,还会周期性地给其他路由器发送自己所知道的路由信息
- 如果交付给网络层处理的分组是普通待转发的数据分组,则根据分组首部中的目的地址进行查表转发,若找不到匹配的转发条目,就丢弃该分组,否则按照匹配条目中所指示的端口进行转发
4.5 网际控制报文协议ICMP
网际控制报文协议ICMP概述
ICMP报文种类
ICMP的典型应用
4.6 虚拟专用网VPN和网络地址转换NAT
虚拟专用网
网络地址转换
- 该数据报比须经过NAT路由器的转发,NAT路由器收到该数据报后,从自己的全球地址池中,为主机A选择一个临时的全球地址IPG,将数据报首部中的源地址修改为IPG,并在自己的NAT转换表中,记录IPA与IPG的对应关系,之后,将修改过源地址的数据报转发到因特网
4.7.1-4.7.2 IP多播技术的相关基本概念
IP多播技术的相关基本概念
IP多播地址和多播组
4.7.3 在局域网上进行硬件多播
4.7.4 在因特网上进行IP多播需要的两种协议
4.7.5 网际组管理协议IGMP
网际组管理协议IGMP的三种报文类型
- 封装有IGMP报文的IP数据报都是IP多播数据报
网际组管理协议IGMP的基本工作原理
总结
4.7.6 多播路由选择协议
多播路由选择协议
因特网的多播路由选择协议
4.8 移动IP技术概述
移动性对因特网应用的影响
移动IP技术的相关基本概念
移动IP技术的基本工作原理
4.9.1 IPv6引进的主要变化
IPv6的诞生背景
IPv6引进的主要变化
4.9.2-4.9.3 IPv6数据报的基本首部和扩展首部
IPv6数据报的基本首部
IPv6数据报的扩展首部
4.9.4 IPv6 地址
IPv6地址空间大小
IPv6地址的表示方法
IPv6地址的分类
4.9.5 从IPv4向IPv6过渡
从IPv4向IPv6过渡
使用双协议栈
使用隧道技术
4.9.6 网际控制报文协议ICMPv6
网际控制报文协议ICMPv6概述
ICMPv6报文的封装
ICMPv6报文的分类
4.10 软件定义网络
软件定义网络SDN概述
网络层的数据层面和控制层面
OpenFlow协议概述
传统意义上的数据层面的任务和SDN的广义转发
OpenFlow交换机和流表
SDN体系结构及其四个关键特征以及SDN控制器
总结
第五章 运输层
5.1 运输层概述
进程间基于网络的通信
- 运输层协议又称为端到端协议,运输层的作用范围是应用进程到应用进程,也成为端到端
5.1.2 TCP/IP体系结构运输层中的两个重要协议
5.1.3 运输层端口号、复用与分用的概念
运输层端口号
- 数值端口号又称为全球通用端口号
发送
- OSPF报文并不适用运输层的UDP或TCP进行封装,而是直接使用网际层的IP进行封装,协议字段值为89
运输层端口号应用举例
5.2 UDP和TCP的对比
无连接的UDP和面向连接的TCP
UDP和TCP对单播、多播和广播的支持情况
- 支持一对一、一对多以及一对全的通信
UDP和TCP对应用层报文的处理
- TCP不保证接收方应用进程所接收到的数据块与发送方应用进程所发出的应用层报文之间具有对应大小的关系
- 但接收方应用进程收到的字节流必须和发送方应用进程发出的字节流完全一样
- 接收方的字节流必须有能力识别收到的字节流,把它还原成有意义的应用层报文
- 但接收方应用进程收到的字节流必须和发送方应用进程发出的字节流完全一样
UDP和TCP对数据传输可靠性的支持情况
UDP首部和TCP首部的对比
5.3.1 TCP报文段的首部格式
5.3.2 TCP的运输链接管理
三报文握手建立TCP连接
四报文挥手释放TCP连接
5.3.3 TCP的流量控制
TCP流量控制的基本概念
TCP的流量控制方法
5.3.4-5.3.5 TCP的拥塞控制以及与网际层拥塞控制的关系
拥塞控制的基本概念
- 吞吐量达到饱和,表明输入的负载中有一部分损失掉了,但在这种理想的拥塞控制下,网络的吞吐量仍然维持在其所能达到的最大值
拥塞控制的基本方法
- 流量控制的任务是确保发送方不会持续地以超过接收方接受能力的速率发送数据,以防止接收方来不及从接收缓存取走数据,而导致接收缓存溢出进而数据丢失
- 但这些额外注入到网络中的ICMP源点抑制报文有时反而会造成网络更加拥堵
- 更好的显示反馈算法是在路由器转发的分组中保留一个字段,用该字段的值表示网络的拥塞状态,而不是专门发送一个通知分组
- 隐式反馈算法无须拥塞节点提供显示反馈信息
TCP的四种拥塞控制方法
- 在不考虑TCP流量控制的情况下,发送方的发送窗口的swnd的取值就取为拥塞窗口cwnd的数值
- 传输轮次是指发送方给接收方发送数据报文段后,接收方给发送方发回相应的确认报文段,其实就是往返时间RTT,RTT并非恒定的数值
- 发送方当前拥塞窗口cwnd的值已经增大到了慢开始门限ssthresh的值,因此要改用拥塞避免算法,也就是每个传输轮次结束后,cwnd的值只能线性+1,而不像慢开始算法那样,每个传输轮次结束后cwnd的值按指数规律增长
- 部分文段丢失导致发送方对这些丢失报文段的超时重传,发送发以此判断网络可能出现了拥塞,需要调整自己的拥塞窗口cwnd的值和慢开始门限ssthresh的值,将慢开始们先ssthresh的值调整为发生拥塞时,拥塞窗口cwnd值的一半,并重新开始执行慢开始算法
- 接收方收到4号数据报文段后,发现这不是按序到达的报文段,因此给发送方发回针对2号数据报文段的重复确认,表明我方期望收到的是3号数据报文段,但是目前我没有收到3号数据报文段,而是收到了未按序到达的数据报文段
- 接收方收到3号数据报文段后,给发送方发回针对6号数据报文段的确认,表明序号到6为止的数据报文段都正确接收了
TCP拥塞控制与网际层拥塞控制的关系
5.3.6 TCP可靠传输的实现
- 如果向前移动和向后回缩的尺寸恰好相等,就会使得发送窗口的前沿不动
5.3.7 TCP超时重传时间的选择
5.3.8 TCP的选择确认
第六层 应用层
6.1 应用层概述
6.2 客户-服务器方式和对等方式
6.3 动态主机配置协议DHCP
- 使用DHCP中继代理的主要原因是,我们并不愿意在每一个网络上都设置一个DHCP服务器,因为这样会使DHCP服务器的数量太多
总结
6.4 域名系统DNS
域名系统的作用
- 当我们在浏览器地址栏中输入某个Web服务器的域名时,用户主机会首先在自己的DNS高速缓存中查找该域名所对应的IP地址,如果没有找到,则会向网络中的某台DNS服务器查询,DNS服务器中由域名和IP地址映射关系的数据库,当DNS服务器收到DNS查询报文后,在其数据库中进行查询,之后将查询结果发送给用户主机,现在,用户主机中的浏览器可以通过Web服务器的IP地址对其进行访问了
因特网的域名结构
- 名称相同的域名其等级未必相同
因特网上的域名服务器
因特网的域名解析过程
6.5 文件传送协议FTP
6.6 电子邮件
电子邮件的作用
电子邮件系统的组成
- 发送方使用用户代理通过邮件发送协议(例如SMTP)将邮件发送给发送方邮件服务器,发送方邮件服务器同样通过邮件发送协议将该邮件发送给接收方邮件服务器,接收方在方便的时候,使用用户代理,通过邮件读取协议(例如POP3),从接收方邮件服务器读取邮件
简单邮件传送协议
电子邮件的信息格式
多用途因特网邮件扩展
- 用户A和用户B在发送和接收邮件时,与服务器之间都使用的是HTTP协议
6.7 万维网WWW
万维网概述
- 浏览器解析并渲染响应报文中的内容,就可以看到网站内容了
统一资源定位符URL
万维网文档
- 由HTML、CSS、JavaScript编写的万维网文档,由浏览器内核负责解析和渲染
- 这些文档都部署在服务器端,都需要从服务器传送给用户浏览器进行解析和渲染