导图社区 最强计算机网络
根据王道的计算机网络整理而来,其中还包括中英对照页面,更好的理解计算机网络的架构。
编辑于2021-01-08 16:13:54整理了力扣上面的算法题目的主要思路和代码, 此思维导图会持续更新中, 购买的朋友可通过我个人介绍中的博客加我好友, 我会持续提供更新, 也可和我一起探讨算法问题。
整理了东南大学的英语学术写作的考试重点内容, 旨在培养学生的英语学术写作能力,帮助学生在初步掌握写作技巧的基础上把学术论文写得更加规范,为毕业论文的写作及今后学术研究打下坚实基础。
根据B站莫烦的视频教程整理而来, Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。
社区模板帮助中心,点此进入>>
整理了力扣上面的算法题目的主要思路和代码, 此思维导图会持续更新中, 购买的朋友可通过我个人介绍中的博客加我好友, 我会持续提供更新, 也可和我一起探讨算法问题。
整理了东南大学的英语学术写作的考试重点内容, 旨在培养学生的英语学术写作能力,帮助学生在初步掌握写作技巧的基础上把学术论文写得更加规范,为毕业论文的写作及今后学术研究打下坚实基础。
根据B站莫烦的视频教程整理而来, Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。
计算机网络
第一章 计算机网络体系结构
1.计算机网络概述
1.概念
1.定义
1.计算机网络就是一些互连的,自治的计算机系统的集合
2.计算机网络是一个将分散的,具有独立功能的计算机系统, 通过通信设备与线路连接起来,由功能完善的软件实现资源共享和信息传递的系统
2.组成
1.组成部分
1.硬件
主机(端设备),通信链路(双绞线,光纤),交换设备(路由器,交换机),通信处理机(网卡)
2.软件
3.协议
计算机网络的核心,规定网络传输数据所遵循的规范
2.工作方式
1.边缘部分
由供用户直接使用的主机组成,用来通信和资源共享
2.核心部分
由大量网络和路由器组成,为边缘部分提供连通性和交换服务
3.功能组成
1.通信子网
1.组成: 传输介质,通信设备,网络协议
2.功能: 数据传输,交换,控制,存储
2.资源子网
1.定义: 实现资源共享功能的设备及其软件的集合
2.功能: 数据处理,提供硬件资源,软件资源,数据资源
3.功能
1.数据通信
最基本,最重要的功能
2.资源共享
软件,硬件,数据共享,实现资源互通有无,分工协作
3.分布式处理
负荷过重时,分散处理
4.提高可靠性
各台计算机可以通过网络互为替代机
5.负载均衡
将工作任务均衡分配给各台计算机
4.分类
1.按分布范围分类
1.广域网(WAN)
因特网的核心部分,一般是高速链路,使用交换技术,点对点网络
2.城域网(MAN)
大多采用以太网技术
3.局域网(LAN)
使用广播技术
4.个人区域网(PAN)
注: 若中央处理器距离非常近,称为多处理器系统,不称为计算机网络
2.按传输技术分类
1.广播式网络
共享一个公共通信信道,所有计算机都会收听,检查目的地址决定是否接收
2.点对点网络
每条物理线路连接一对计算机
是否采用分组存储转发与路由选择机制
3.按拓扑结构分类
0.定义
通过网中结点(路由器,主机)与通信线路(网线)之间的几何关系,主要指通信子网的拓扑结构
1.星型网络
1.优点: 便于集中控制和管理
2.缺点: 成本高,中心结点对故障敏感
2.总线型网络
1.优点: 建网容易,增减结点方便,节省线路
2.缺点: 重负载时通信效率不高,总线任一处对故障敏感
3.环形网络
可单环也可双环,环中信号单向传输
4.网状型结构
1.优点: 可靠性高
2.缺点: 控制复杂,线路成本高
4.按使用者分类
1.公用网
2.专用网
5.按交换技术分类
1.电路交换网络
2.报文交换网络
3.分组交换网络
6.按传输介质分类
1.有线网络
双绞线网络,同轴电缆网络
2.无线网络
蓝牙,微波,无线电
5.标准化工作及相关组织
1.所有标准都以RFC(Request For Comments)(请求评论)的形式在因特网上发布,但并非每个RFC都是因特网标准
2.RFC上升为因特网标准的四个阶段
1.因特网草案: 还不是RFC文档
2.建议草案: 开始成为RFC文档
3.草案标准
4.因特网标准
3.一些组织
1.国际标准化组织(ISO)
制定OSI参考模型,HDLC
2.国际电信联盟(ITU)
制定远程通信的标准
3.国际电气电子工程师协会(IEEE)
学术组织,802标准,5G
6.性能指标
1.速率
1.定义
传输数据的速率,也称数据率/比特率
2.单位
b/s(比特每秒),Kb/s,Mb/s,Gb/s
存储容量: 1 B=1 Byte(1字节=8比特),1 KB,1 MB,1 GB
2.带宽
1.定义
1.本来表示通信线路允许通过的信号频带范围,单位Hz
2.计网中,表示通信线路传送数据的能力(最高数据率),单位: b/s(比特每秒)
3.吞吐量
1.定义
在单位时间内通过某个网络(信道/接口)的数据量,受网络的带宽或网络的额定速率的限制
4.时延
0.定义
指数据从网络的一端传送到另一端的总时间
1.组成
1.发送时延(传输时延)
1.定义: 将所有比特推向链路的时间,主机内发生
2.公式: 发送时延=分组长度/信道宽度
2.传播时延
1.定义: 电磁波在信道上传播一定距离的时间
2.公式: 传播时延=信道长度/电磁波在信道上的传播速度
3.处理时延
4.排队时延
2.注意
1.一般排队时延和处理时延忽略不计
2.对于高速链路,提高的是数据发送速率(减少数据的发送时延),而不是比特在链路上传播速率
5.时延带宽积
1.定义
时延带宽积=传播时延*信道宽度
表示可以容纳的比特数量
6.往返时延(RTT)
1.定义
表示从发送端发送数据开始,到发送端接收到来自接收端的确认
2.公式
往返传播时延=传播时延*2
7.利用率
1.信道利用率=有数据通过时间/(有+无)数据通过时间
2.网络利用率=信道利用率的加权平均值
2.计算机网络体系结构 与参考模型
1.分层结构
1.网络的体系结构(抽象的)
计算机网络的各层及其协议的集合(功能)
2.实现问题(具体的)
用何种硬件/软件完成的
3.分层的基本原则
1.每层实现一种相对独立的功能,降低系统复杂性
2.各层之间界面自然清晰,易于理解,相互交流尽可能少
3.各层功能独立于具体的实现方法
4.保持下层对上层的独立性,上层单向使用下层提供的服务
5.整个分层结构能促进标准化工作
4.一些概念
1.实体
任何可以发送/接收信息的硬件/软件进程
2.n层实体
第n层中的活动元素
3.对等层
不同机器上同一层
4.对等实体
同一层的实体
5.数据单元
1.服务数据单元(SDU)
为完成用户所要求的功能而应传送的数据
2.协议控制信息(PCI)
控制协议的信息
3.协议数据单元(PDU)
对等层次之间传送的数据单元
4.关系
1.PDU=SDU+PCI
2.n-SDU + n-PCI = n-PDU = (n-1)-SDU
6.层次结构的含义
1.第n层实体不仅要使用第n-1层的服务,实现自身定义的功能,还要向第n+1层提供服务
2.最底层只提供服务;中间各层既是下一层的服务使用者,又是上一层的服务提供者;最高层面向用户提供服务
3.上一层只能通过相邻层间的接口使用下一层的服务;下一层提供的服务的实现细节对上一层透明
4.对等层在逻辑上有一条直接信道: 不经过下层直接把信息传送到对方
2.协议,接口,服务
1.协议(水平的)
1.定义
规则的集合,控制对等实体,不对等没有协议
2.组成
1.语法
规定传输数据的格式
2.语义
规定要完成的功能
3.同步
规定执行各种操作的顺序
3.功能
线路管理,差错控制,数据转换
2.接口(垂直的)
1.定义
同一结点内相邻两层间交换信息的连接点,系统内部的规定,不能跨层定义接口,通过服务访问点(SAP)进行交互
3.服务(垂直的)
1.定义
下层为紧相邻的上层提供的功能调用
2.服务原语
请求,指示,响应,证实
3.分类
1.面向连接服务/无连接服务
通信前是否需要先建立连接
2.可靠服务/不可靠服务
网络是否具有纠错/检错/应答机制
3.有应答服务/无应答服务
接收方是否给出应答
4.注意
1.并非所有功能都称为服务,只有能够被高一层实体"看得见"的功能才是服务
2.本层的服务用户只能看见服务而无法看见下面的协议
3.ISO/OSI参考模型 和TCP/IP模型
1.OSI参考模型 (七层)
1.物理层
1.传输单位
比特
2.任务
透明的传输比特流: 不管传送数据是什么样的比特组合,都应能在链路上传送
3.功能
1.定义接口特性: 引脚连接
2.定义传输模式: 单工/半双工/双工
3.定义传输速率
4.比特同步
5.比特编码
4.协议
Rj45,802.3
5.注意
传输信息的物理媒体:双绞线,光缆,不在物理层而在其下,把物理媒体当做第0层
2.数据链路层
1.传输单位
帧
2.任务
将网络层传下来的IP数据报组装成帧
3.功能
1.成帧
2.差错控制
3.流量控制
协调两个结点的速度
4.传输管理
4.协议
SDLC,HDLC,PPP,STP,帧中继
5.注意
1.打包时前后都加东西,其他层只在后面加
3.网络层 (网际层/IP层)
1.传输单位
数据报
2.任务
把网络层的协议数据单元(分组)从源端传送到目的端,为分组交换网上的不同主机提供通信服务
3.功能
1.路由选择: 最佳路径
2.流量控制
3.差错控制
4.拥塞控制
结点都处于来不及接收分组,处于拥塞状态
4.协议
IP,IPX,ICMP,IGMP,ARP,RARP,OSPF
通信子网(数据通信) 点到点
4.传输层
1.传输单位
报文段(TCP)/用户数据报(UDP)
2.任务
负责主机中两个进程之间的通信
3.功能
1.可靠传输/不可靠传输
2.流量控制
3.差错控制
4.复用分用
1.复用: 多个应用层进程同时使用传输层的服务
2.分用: 传输层把收到的信息分别交付给响应的进程
4.协议
TCP,UDP
5.点到点/端到端
1.点到点
主机到主机,主机是通过硬件地址/IP地址(一个点)标识的
2.端到端
不同主机内两个进程之间的通信,一个进程由一个端口标识
5.会话层
1.任务
不同主机上各进程之间的会话
会话: 建立连接并有序地传输数据
2.功能
1.建立,管理,终止进程间的会话
2.在通信失效时从校验点/同步点恢复通信,实现数据同步
3.协议
ADSP,ASP
6.表示层
1.任务
处理两个通信系统中交换信息的表示方式
2.功能
1.数据格式交换
2.数据加密解密
3.数据压缩和恢复
3.协议
JPEG,ASCII
7.应用层
1.任务
为特定类型(产生流量)的网络应用提供访问环境
2.协议
FTP,SWMP,HTTP
资源子网(数据处理)
端到端
2.TCP/IP模型(4层)
1.网络接口层
1.类似于OSI的物理层和数据链路层
2.任务
从主机/结点接收IP分组,并把它们发送到指定的物理网络上
2.网际层(主机-主机)
1.任务
将分组发往任何网络,独立地选择合适的路由,不保证分组有序地到达,定义IP协议
3.传输层(进程-进程)
1.任务
使发送端和目的端主机上的对等实体可以进行会话
2.两个协议
1.传输控制协议(TCP)
面向连接,单位是 报文段,可靠地交付
2.用户数据报协议(UDP)
无连接的,单位是 用户数据报,不保证可靠地交付
4.应用层(用户-用户)
1.协议
虚拟终端协议(Telnet),文件传输协议(FTP),域名解析服务(DNS),电子邮件协议(SMTP),超文本传输协议(HTTP)
3.五层协议
1.物理层
2.数据链路层
3.网络层
4.传输层
5.应用层
4.TCP/IP与OSI的比较
1.相似
1.都采用分层的体系结构
2.都基于独立的协议栈
3.都解决异构网络的互联
2.差别
1.概念上
1.OSI最大贡献是精准定义了三个主要概念: 服务,协议,接口,符合面向对象设计
2.TCP/IP没有明确区分,不符合软件工程的思想
2.协议上
1.OSI没有偏向特定的协议,通用性良好
2.TCP/IP实际是对已有协议的描述,不适合非TCP/IP的协议栈
3.IP协议上
1.OSI最初只考虑一种标准的公用数据网络将各种不同的系统互联,后来才认识到IP的重要性,只能在网络层中划分出一个子层完成类似的IP的功能
2.TCP/IP开始就考虑到多种异构网的互联问题,将IP单独作为一个重要层次
4.网络层上
1.OSI:无连接和面向连接, TCP/IP:无连接
5.传输层上
1.OSI:面向连接, TCP/IP:面向连接和无连接
第二章 物理层
1.通信基础
1.基本概念
1.数据/信号/码元
1.数据
传送信息的实体
2.信号
数据的电气或电磁的表现,数据在传输过程中的存在形式
模拟信号
连续变化的信号
数字信号
取值为有限的几个离散数值的信号
3.码元
用一个固定时长的信号波形表示一位k进制数字,1码元可携带多个比特
2.信源/信道/信宿
1.信道
1.按传输信号形式
1.传送模拟信号的模拟信道
2.传送数字信号的数字信道
2.按传输介质
1.无线信道
2.有线信道
3.传送的信号
1.基带信号
在数字信道上传输(基带传输),0和1直接用两种不同的电压表示
2.宽带信号
在模拟信道上传输(宽带传输),将基带信号进行调制后形成的频分复用模拟信号
2.交互方式
1.单工通信
只有一个方向的通信,仅需一条信道
2.半双工通信
双方都可发送/接收,但不能同时发送/接收,需要两条信道
3.全双工通信
双方可以同时发送/接收,需要两条信道
3.速率/波特/带宽
1.速率(数据率)
单位时间内传输的数据量
2.码元传输速率
1.又称码元速率/波形速率/调制速率/符号速率
2.单位: 波特(Baud)
1波特: 每秒传输一个码元
码元可二进制/多进制,但码元速率与进制数无关
3.信息传输速率
1.又称信息速率/比特率
2.单位: 比特/秒(b/s)
4.两者关系
1码元携带n bit的信息量,M Baud的码元速率对应的信息速率=M*n bit/s
传输速率的快慢比较信息速率
2.奈奎斯特定理与香农定理
0.注意
只有在这两个公式中带宽才用Hz,其余为bit/s
1.奈奎斯特定理/奈氏准则
1.定义
1.在理想低通(没有噪声,宽带有限)信道中,极限码元传输率为2W Baud
W:理想低通的带宽
2.极限数据传输率= 2Wlog₂V
V: 每个码元离散电平的数目(有多少种不同的码元)
2.结论
1.任何信道中,码元传输速率是有上限的
2.奈氏准则给出了码元传输速率的限制,没有对信息传输速率给出限制 (没有限制一个码元可以对应多少个二进制位)
3.设法使每个码元携带更多比特的信息量,采用多元制的调制方法
2.香农定理
1.定义
1.带宽受限且有高斯白噪音干扰的 极限数据传输速率=Wlog₂(1+S/N)
W: 信道带宽
S: 传输信号的平均功率
N: 信道内部的高斯噪音功率
S/N为信噪比=10lg(S/N)(单位:dB)
2.结论
1.只有信息传输速率小于极限传输速率,一定有某种方式实现无差错的传输
2.得到的是极限信息传输速率,实际的要低不少
3.对比
1.奈氏准则考虑到带宽与极限码元传输速率的关系
2.香农定理不仅考虑到带宽,也考虑到信噪比,说明一个码元对应的二进制位数是有限的
3.编码与调制
0.定义
1.编码
将数据变换为数字信号
什么样的数字信号表示0/1
2.调制
将数据变换为模拟信号
3.数字信号通过 数字发送器 转换为数字信号,通过 调制器 转换为模拟信号
4.模拟信号通过 PCM编码器 转换为数字信号,通过 放大器调制器 转换为模拟信号
1.数字数据编码为数字信号
1.非归零编码
1.定义
两个电压代表两个二进制数字(高1低0)
2.特点
容易实现,没有检错功能,无法判断开始和结束,难以保持同步
2.归零编码
在一个码元之内要恢复到0
3.反向不归零编码
信号电平翻转表示0,不变表示1
4.曼彻斯特编码
1.定义
一个码元分为两个相等间隔,前高后低为1,前低后高为0
2.特点
1.位中间的跳变可作为时钟信号/同步
2.数据的传输速率只有调制速率的1/2
5.查分曼彻斯特编码
1.定义
码元为1,前半个码元的电平与 上一个码元的后半个码元的电平相同,不同为0
2.特点
1.常用于局域网传输
2.每个码元中间有一次电平的跳变,可实现自同步
3.抗干扰性更好
6.4B/5B编码
1.定义
将数据流的每4位作为一组,转换为相应的5位码
2.特点
1.5位码共32中组合,其他16位作为控制码
2.编码效率为80%(4/5)
图片
2.数字数据调制为模拟信号
1.幅移键控(调幅ASK)
0无1有
2.频移键控(调频FSK)
0低1高
3.相移键控(调相PSK)
改变相位表示0和1
4.正交振幅调制(调幅+调相QAM)
3.模拟数据编码为数字信号
1.典型例子
对音频信号进行编码的脉码调制(PCM),三个步骤: 抽样,量化,编码
2.采样定理 (奈奎斯特定理)
原始信号中最大频率为f,则采样频率F必须大于或等于最大频率f的两倍,才能完整保留原始信息
3.抽样
对模拟信号周期性扫描,把时间上连续的信号变成时间上离散的信号
4.量化
把抽样得到的电平幅值按一定分级标准转化对应数字值,取整数,转化为离散的数字量
分割和转化
5.编码
把量化的结果转化为对应的二进制编码
4.模拟数据调制为模拟信号
使用频分复用技术(FDM),充分利用带宽资源
4.电路交换/报文交换/分组交换
1.电路交换
1.定义
传输前,必须先建立一条专用的物理通信路径,一直被独占,结束后才释放
2.关键点
用户始终占用端到端的固定传输带宽
3.优点
通信延时小/有序传输/没有冲突/适用范围广/实时性强/控制简单
4.缺点
建立连接时间长/线路使用效率低/灵活性差/难以规格化
2.报文交换
1.定义
数据交换的单位是报文(携带源/目的地址),采用存储转发方式
2.优点
无须建立连接/动态分配线路/提高线路可靠性/利用率/提供多目标服务
3.缺点
存储转发延时/较大的缓存空间
3.分组交换
1.定义
采用存储转发,限制每次传送数据块大小的上限,加上一些控制信息,构成分组(Pocket)
2.优点
无建立时延/线路利用率高/简化了存储管理/并行加速传输/减少出错几率和重发数据量
3.缺点
存在传输时延/需要传输额外的信息量/采用数据报服务,出现失序,丢失,重复分组 采用虚电路,无失序,但有呼叫建立,数据传输,虚电路释放
4.时间计算PPT
两段: 全部发送出去的时间 + 最后一个分组到达目的结点的时间 (并行传输)
5.数据报与虚电报
0.说明
面向连接的虚电路方式,无连接的数据报方式是分组交换的两种方式,网络层提供服务
1.数据报
1.原理
1.把报文拆成若干带有序号的数据单元,在网络层加上地址等控制信息形成数据报分组
2.不同分组可走不同的路径,也可以按不同顺序到达目的结点
2.特点
1.发送分组前不需要建立连接
2.尽最大努力交付,不保证可靠传输,每个分组独立选择路由,路径不同,不按序到达
3.分组中包含发送端和接收端完整地址,可以独立传输,有一定的时延
4.网络具有冗余路径,出现故障时可更新转发表,对故障适应能力强
5.存储转发的时延一般较小,提高了网络的吞吐量
6.收发双方不独占某一链路,资源利用率高
2.虚电路
1.原理
1.将数据报和电路交换结合起来,发挥两种方式的优点
2.在分组发送之前,建立逻辑上的虚电路,对应的物理路径固定,3个阶段
3.建立虚电路,选择没用过的虚电路号给该虚电路,数据分组有要通过的虚电路号
4.每个结点维持一张虚电路表,每一项纪录一个打开的虚电路的信息,传输是双向的
2.特点
1.建立和拆除需要时间,交互式应用和小量的短分组浪费时间,但对长时间,频繁的数据交换,效率更高
2.路由选择体现在连接建立阶段,建立后,传输路径确定
3.可靠地通信功能,保证正确且有序到达,可流量控制
4.致命的弱点
某个结点出故障,所有经过该结点的虚电路将遭到破坏
5.分组首部不包含目的地址,只包含虚电路标识符,开销小
6.电路不是专用的,每个结点可同时有若干条虚电路通过
两者比较
图片
2.传输介质
1.具体介质
0.分类
1.导向性介质
固体介质(铜线/光纤)
2.非导向性介质
空气/真空/海水
1.双绞线
1.组成
1.两根并排绞合,相互绝缘的铜导线+绝缘层+聚氯乙烯套层
绞合减少电磁干扰
2.有金属丝编织的屏蔽层为屏蔽双绞线(STP),没有的为非屏蔽双绞线(UTP)
2.特点
1.价格便宜,在局域网/传统电话网常用
2.带宽取决于铜线的粗细/传输的距离
3.模拟/数字信号都可以使用
4.距离太远时: 模拟传输用放大器放大信号,数字传输用中继器将失真信号整形
2.同轴电缆
1.组成
导体铜制芯线+绝缘层+网状编织屏蔽层+塑料外套
2.分类
1.基带同轴电缆: 50Ω同轴电缆,局域网
2.宽带同轴电缆: 70Ω同轴电缆,有线电视系统
3.特点
抗干扰性好,传输距离更远,价格更高
3.光纤
1.组成
由纤芯(实心)和包层组成,包层的折射率较低,光会全反射
2.分类
1.多模光纤
1.许多条不同角度入射的光线在一条光纤中传输
2.光源: 发光二极管
3.会失真,近距离传输
2.单模光纤
1.光纤的直径减小到只有一个光的波长,一直向前,不会多次反射
2.光源: 激光二极管(定向性好)
3.衰耗较小,远距离传输
4.保密性好,不易被窃听/截取数据
5.抗雷电和电磁干扰性好
4.无线传输介质
1.无线电波(所有方向)
较强的穿透能力,长距离,通信领域,所有方向散播简化通信连接
2.微波/红外线/激光(固定方向)
1.微波
1.不用转换格式
2.地面微波接力通信
3.卫星通信
1.优点
通信容量大,距离远,覆盖广
2.缺点
传播延迟时间长,受气候影响大,误码率高,成本高
2.物理层接口的特性
0.物理层主要任务
确定与传输媒体的接口有关的一些特性,尽可能屏蔽物理设备的差异,使数据链路层只考虑协议和服务
1.机械特性
定义物理连接的边界点(接插装置): 规格,引线的数目,引脚的数量
2.电气特性
规定传输二进制位时,信号的电压高低,阻抗匹配,传输速率,距离限制
3.功能特性
指明某一电平的电压表示何种意义,接口部件的信号线的用途
4.规程特性
定义物理线路的工作规程和时序关系
3.物理层设备
1.中继器/转发器
1.主要功能
将信号整形并放大再转发出去,消除失真和衰减
2.原理
信号再生,不是简单的放大
3.特点
1.中继器连接起来的几个网断仍然是一个局域网
2.两端连接的是相同的媒体(有的可为不同媒体),不能连接两个不同速率的局域网
3.两端的网络部分是网段,不是子网
4."5-4-3规则"
串联的中继器不超过4个,4个中继器串联的5段通信介质只有3个可以挂接计算机
5.注意
1.放大器放大模拟信号,中继器整形再生数字信号
2.网络设备具有存储转发的功能,可以连接两个不同的协议
3.中继器没有存储转发的功能,不能连接两个速率不同的网段,两端一定是同一协议
2.集线器(Hub)
1.实质
多端口的中继器
2.工作方式
将信号整形放大,转发到其他所有处于工作状态的端口上,同时两个端口输入,会发生冲突
3.目的
扩大网络的传输范围,不具备信号的定向传送能力,标准的共享式设备
4.应用
用于双绞线组建的共享网络,解决从服务器连接到桌面最经济的方案
5.特点
1.组成的是共享式网络,逻辑上还是总线网
2.连接的网络部分是同一个网络的不同网段
3.只能在半双工下工作,吞吐量受到限制
4.不能分割冲突域,所有端口同属于一个冲突域
5.一个时钟周期只能传输一组信息,工作效率低
第三章 数据链路层
0.基本概念
1.结点
主机/路由器
2.链路
两个结点之间的物理通道
3.数据链路
两个结点之间的逻辑通道
4.帧
链路层的协议数据单元,封装网络层数据报
1.数据链路层功能
0.主要作用
加强物理层传输原始比特流的功能,将物理层可能出错的物理连接改造为逻辑上无差错的数据链路
1.为网络层提供服务
1.无确认的无连接服务
2.有确认的无连接服务
3.有确认的面向连接服务
帧传输3个阶段: 建立数据链路,传输帧,释放数据链路
2.链路管理
连接的建立,维持,释放过程,用于面向连接的服务
3.帧定界/帧同步/透明传输
1.帧定界
帧的首部和尾部有很多控制信息,确定帧的界限
2.帧同步
接收方能从接受的二进制比特流中区分帧的起始和终止
3.透明传输
不管所传数据是什么样的比特流,都应该能在链路上传送
4.流量控制
由于收发双方的工作速率和缓存空间的差异,要限制发送方的数据流量
5.差错控制
1.位错
采用循环冗余校验(CRC),通过自动重传请求(ARQ)重传出错的帧
2.帧错
帧的丢失,重复,失序,引入定时器和编号机制
2.组帧
0.目的
1.把比特组合成帧,在出错时只重发出错的帧,不必重发全部数据
2.组帧既加首部,又加尾部,在网络中以帧为最小单位传输,要清楚从哪开始到哪结束
3.分组(IP数据报)只是包含在帧的数据部分,不需要加尾部来界定
1.字符计数法
1.定义
在帧头部用一个计数字段来标明帧内字符数,包含自身所占用的一个字节
2.缺点
若计数字段出错,失去了帧边界划分的依据
2.字符填充的首尾定界符法
1.定义
用一些特定的字符来定界一帧的开始(DLE STX)和结束(DLE ETX),在特殊字符前填充转义字符(DLE)加以区分
3.比特填充的首尾标志法
1.定义
用01111110标志一帧的开始和结束,为了不误判,遇到连续5个"1",自动在后面插入一个"0"
2.优点
1.允许包含任意个数的比特,允许每个字符的编码包含任意个数的比特
2.容易由硬件实现,性能优于字符填充方法
4.违规编码法
1.定义
低高为0,高低为1,用高高,低低表示开始和结束
2.优点
不需要任何填充技术,只适用于采用冗余编码的特殊编码环境
较常用
3.差错控制
0.说明
1.两类噪声
1.随机热噪声
信道所固有的,持续存在的
通过提高信噪比来减少
2.冲击噪声
由于外界特定的短暂原因
不可能靠提高信号幅度来避免,产生差错的重要原因,利用编码技术解决
2.编码技术进行差错控制
1.自动重传请求(ARQ)
接收端检测出差错,设法通知发送端重发,直到正确为止
2.前向纠错(FEC)
接收端不但能发现差错,并且能确定错误位置加以纠正
1.检错编码
0.说明
1.都采用冗余编码技术,按某种关系附加冗余位,构成符合某一规则的码字再发送
1.奇偶校验码
1.奇校验码
在数据块末尾附加一个校验元后,1的个数为奇数
2.偶校验码
在数据块末尾附加一个校验元后,1的个数为偶数
1.垂直奇偶校验
2.水平奇偶校验
3.水平垂直奇偶校验
3.缺点
只能发现奇数位错的情况,偶数位错也符合情况
2.循环冗余码(CRC)
1.步骤
1.给定一个多项式G(x)(最高位和最低位必须为1),假设其阶数为r(总位数-1)
G(x)=1101,r=3
2.加0
在帧的低位端加r个0
3.模2除
加法不进位,减法不借位(异或操作:相同为0,不同为1),得到余数为冗余码(共r位,前面的0不可忽略)
2.纠错编码(海明码)
0.说明
1.从左到右依次编号(从1开始),编号为2的幂的位(1,2,4,8)是校验位,其余位填入m位数据
2.海明不等式:2^r ≥m+r+1
m个信息位,r个检验位
3.Px:校验码, Dx:数据码
P1,P2,D1,P3, D2, D3, D4
01,10,11,100,101,110,111
1.编码原理
1.确定校验位需要校正的位数
写出所有位的二进制数,与校验位的1在同一位置的1对应的数据即为校验位要校验的位数
P1: D1,D2,D4
P2: D1,D3,D4
P3: D2,D3,D4
2.确定校验位的数据,得到海明威码
令校验位与其对应的所有位异或=0,得到校验位
P1⊕D1⊕D2⊕D4 =0
2.如何纠错
1.令所有校验码与其对应的所有位进行异或,得到结果(如0,1,1)
2.将结果 从高到低 排列110,换算为十进制即第6位数据出错,取反即纠正
3.特点
能发现双比特错误,但只能纠正单比特错误
4.流量控制与可靠传输机制
1.流量控制,可靠传输 滑动窗口机制
1.停止-等待流量 控制基本原理
1.发送方每发送一帧,要等待接收方的应答信号,才能发送下一帧,否则一直等待
2.每次只允许发送一帧就陷入等待,传输效率很低
2.滑动窗口流量 控制基本原理
1.定义
1.发送窗口
发送方维持一组连续的允许发送的帧的序号
2.接收窗口
接收方维持一组连续的允许接收的帧的序号
3.发送窗口大小WT
还没有收到确认信息的情况下发送方最多还可以发送多少个数据帧
4.接收窗口
控制可以接收哪些数据帧,不可以接收哪些帧(序号落入接收窗口才允许收下)
2.工作原理
1.发送端每收到一个确认帧,窗口向前滑动一个帧,没有可以发送的帧停止发送
2.接收端收到数据帧后,窗口向前移一个位置,发回确认帧,若数据帧在接收窗口之外一律丢弃
3.重要特性
1.只有接收窗口向前滑动并发送了确认帧时,发送窗口才有可能向前滑动
2. 3个协议只在发送/接收窗口的大小上有所不同
1.停止-等待协议
发送窗口=1,接收窗口=1
2.后退N帧协议
发送窗口>1,接收窗口=1
3.选择重传协议
发送窗口>1,接收窗口>1
3.当接收窗口=1时,可保证帧的有序接收
4.数据链路层的滑动窗口协议的窗口大小是固定的,传输层的滑动窗口是变化的
3.可靠传输机制
0.使用 确认 和 超时重传 来完成
1.确认
1.是一种无数据的控制帧,可以让发送方知道哪些内容被正确接收
2.捎带确认/累积确认
为减少开销,接收端不一定每收到一个正确帧立即发回一个确认帧, 在收到好几个正确的数据帧后,对最后一个确认
2.超时重传
发送方发送数据后就开启一个计时器,在一定时间没有得到确认帧就重新发送该数据,直到成功为止
3.自动重传请求(ARQ)
1.通过接收方请求发送方重传出错的数据帧来恢复出错的数据帧
2.分为3种: 停等式,后退N帧,选择性重传
3.后两种是滑动窗口与请求重发技术的结合,当窗口足够大时,帧可以连续流动,又称连续ARQ
4.数据链路层中流量控制机制和可靠性传输是交织在一起的
2.单帧滑动窗口 与停等协议
1.原因
除了比特出错,底层信道还会出现丢包问题,为了实现流量控制
2.前提
仅考虑一方为发送方,一方为接收方,讨论可靠传输原理,不考虑在哪个层次上传送
3.应用情况
1.无差错情况
2.有差错情况
1.接收端检测出错/数据帧丢失
超时重传此帧,发送一帧之后必须保留副本,数据帧和确认帧必须编号
2.确认帧丢失
超时重传此帧,接收端丢弃重复的此帧,重传此帧的确认帧
3.确认帧迟到
超时重传此帧,接收端丢弃重复的此帧,重传确认此帧,发送方对于来晚的确认此帧丢弃
4.特点
1.用1bit来编号就够了
2.信道的利用率很低
3.多帧滑动窗口与 后退N帧协议(GBN)
0.说明
0.流水线技术
1.必须增加序号范围
2.发送方需要缓存多个分组
1.定义
发送方一次可发送N帧,按序接收,重传从最后一个确认开始
1.发送方必须响应的3件事
1.上层的调用
2.收到一个ACK
对n号帧的确认采用累积确认的方式
3.超时事件
出现超时,发送方重传所有已发送但未被确认的帧
2.重点
1.累积确认/捎带确认
2.接收方只按顺序接收帧(接收窗口为1),不按序无情丢弃
3.确认序号最大的,按序到达的帧
3.窗口大小
1.发送窗口最大为2ⁿ-1(用n个比特对帧编号),否则会造成接收方无法分辨新帧和旧帧
4.性能分析
1.连续发送数据帧提高了信道的利用率
2.重传时把原来已传送正确的数据帧进行重传,降低了效率
3.若误码率较大,不一定优于停等协议
4.多帧滑动窗口与 选择重传协议(SR)
0.定义
发送方一次可发送N帧,可不按序接收,重传没有确认的帧
1.发送方必须响应的3件事
1.上层的调用
2.收到一个ACK
发送方将被确认的帧标记为已接收,若为窗口的下界,窗口向前滑动到最小序号的未确认帧处
3.超时事件
每个帧都有自己的定时器,一个超时事件发生后只重传一个帧
2.接收方的事
1.确认一个正确接收的帧,不管是否按序,失序的帧先被缓存,直到所有帧都被接收,交付上层,向前滑动窗口
2.收到小于窗口下界的帧,返回一个ACK,其他情况,忽略该帧
3.窗口大小
发送窗口=接收窗口= 2^(n-1)
保证新窗口序号与旧窗口序号没有重叠部分
4.重点
1.对数据帧逐一确认,收到一个确认一个
2.只重传出错帧
3.接收方有缓存,无序接收
5.信道利用率
1.定义
1.发送方在一个发送周期内,有效发送数据的时间占整个发送周期的比率
2.一个发送周期=T,共发送L比特的数据,数据传输率=C,有效数据时间=L/C
3.信道利用率=(L/C)/T
T: 一般为发送时延+传播时延*2
6.信道吞吐量= 信道利用率*发送方的发送速率
5.介质访问控制(MAC)
0.说明
1.主要任务
使介质的每个结点隔离来自同一信道上其他结点的信号,协调活动结点的传输
2.方法
1.静态
信道划分
2.动态
1.随机访问
2.轮询访问
1.信道划分介质访问控制
0.说明
1.多路复用技术
1.当介质的带宽超过单个信号的带宽,在一条介质上同时携带多个信号来提高利用率
2.把多个输入通道的信息整合到一个复用通道,在接收端分离出来到对应的输出通道
2.信道划分的实质
通过分时/分频/分码把原来的一个广播信道,逻辑上分为几条子信道,实际上把广播信道转变为点对点信道
1.频分多路复用(FDM)
1.定义
1.将多路基带信号调制到不同频率载波上,再叠加形成一个复合信号
2.每个子信道的带宽可不同,但它们总和不超过信道的总带宽
2.特点
1.充分利用带宽,系统效率较高,技术成熟,实现容易
2.仅共享时间
2.时分多路复用(TDM)
1.定义
1.将一条物理信道按时间分成若干个时间片,每个时间片由复用的一个信号占用
2.由于数据的突发性,用户对已分配到的子信道的利用率不高
2.统计时分多路复用(STDM)
1.采用STMD帧,不是固定分配时隙,按需动态分配时隙,提高利用率
3.特点
仅共享空间
3.波分多路复用(WDM)
光的频分多路复用,一根光纤传输多种不同波长(频率)的光信号,互不干扰
4.码分多路复用(CDM)
1.定义
靠不同的编码来区分各路原始信号
2.码分多址(CDMA)
1.定义
1.每比特时间被分为m个更短的时间槽(芯片Chip),通常有64/128个芯片
2.每个站点被指定唯一的m位的代码/芯片序列
3.发送1时就发送芯片序列,发送0时就发送芯片序列的反码
4.两个或多个站点同时发送时,各路数据被 线性相加
5.为分离出各路信号,要求各个站点的芯片序列是相互正交的
2.过程
1.设向量S是A站的码片向量,T是B站的码片向量
2.S和T的规格化内积=0: S*T=0
两个向量的内积/向量的分量的个数
3.A站发1,B站发0,叠加后为(S-T)
4.到达C站,要得到A站数据,让S与(S-T)规格化内积: S*(S-T)
5.到达C站,要得到B站数据,让T与(S-T)规格化内积: T*(S-T)
3.惯例
1.将序列中的0写为-1,将1写为+1,结果得到-1表示0
3.特点
1.频谱利用率高,抗干扰性强,保密性强,语音质量好
2.减少投资和降低运行成本,用于无线通信系统,特别是移动通信系统
3.既共享时间,又共享空间
2.随机访问介质访问控制 (争用型协议)
0.说明
1.不采用集中控制解决次序问题,所有用户随机发送信息
2.发生冲突时,按照一定规则重传它的帧,直到成功为止
3.核心思想
胜利者通过争用获得信道,获得发送权
4.信道划分机制: 要么共享时间/空间/时间和空间
随机访问控制机制: 既不共享时间,也不共享空间,实质是将广播信道转化为点到点通信
1.ALOHA协议 (不听就说)
1.纯ALOHA协议
1.基本思想
1.任何一个站点需要发送数据,不进行任何检测就发送数据
2.一段时间没有收到确认,发生了冲突,等待一段时间后再发送数据,直到成功
2.重传策略
各站等待一段随机时间再进行重传,若立即重传,必然会继续发生碰撞
2.时隙ALOHA协议 (控制想发就发的随意性)
1.把所有站点在时间上同步起来,将时间划分为一段段等长的时隙
2.只能在每个时隙的开始发送一个帧,避免了用户想发就发的随意性,减少了冲突的可能性
2.CSMA协议 (先听再说)
0.说明
1.CS:载波监听/侦听
每个站点在发送前先侦听一下共用的信道,空闲后再发送
2.MA:多路访问
多点接入,许多计算机以多点接入的方式连接在一根总线上
3.与ALOHA相比,多了一个 载波侦听装置
4.共同缺点
发生冲突后还是坚持把数据帧发送完,造成了浪费
信道空闲 信道忙
1. 1-坚持CSMA
立即发送数据
继续坚持监听信道
2. 非坚持CSMA
立即发送数据
放弃监听,等待一个随机时间后再监听
3. p-坚持CSMA
以概率p发送数据 以概率1-p推迟到下一个时隙
放弃监听,等待一个随机时间后再监听
1. 1-坚持CSMA
1.优点
只要媒体空闲,站点马上发送,避免媒体利用率的损失
2.缺点
若有两个或以上的站点有数据发送,冲突就不可避免
2. 非坚持CSMA
1.优点
采用随机的重发延迟时间可减少冲突发生的可能性
2.缺点
存在大家都在等待过程中,使媒体处于空闲状态,使用率降低
3. p-坚持CSMA
1.优点
既能像非坚持那样减少冲突,又能像1-坚持那样减少媒体空闲时间
3.CSMA/CD协议 (有线局域网)
1.定义
1.CS:载波监听
每个站点在 发送数据之前和发送数据时 都要检测一下总线
2.CD:碰撞检测
边发送边监听(半双工网络)
2.工作流程
先听后发,边听边发(区别CSMA),冲突停止,随机重发
3.传播时延对载波监听的影响
1.不可能进行全双工通信,只能进行半双工通信
2.争用期/冲突窗口/碰撞窗口:2τ
τ:单程传播时延
至多经过2τ就能知道是否发生碰撞
4.最小帧长问题
1.确保在发送数据的同时能检测到可能存在的冲突,要在发送完帧之前,能收到自己发送出去的数据
2.帧的传输时延至少要两倍于传播时延
3.最小帧长 = 总线传播时延*数据传输速率*2
4.若发送小于最小帧长的帧,需要在后面加入填充字段
5.二进制指数退避算法
0.说明
1.两个冲突的站点紧接着再次发送是没有意义的,会无休止的冲突
2.用此算法解决碰撞问题,确定碰撞后的重传时机
1.过程
1.确定基本退避时间,一般为争用期(2τ)
2.定义参数k=重传次数,当重传次数>10,k一直等于10
3.从离散的整数集合[0,1,...,2^k -1]随机取一个数r,退避时间为 2rτ
4.当重传16次仍不能成功时,说明网络台拥挤,放弃此帧,向高层报告出错
2.特点
1.使重传需要推迟的平均时间随重传次数的增大而增大(动态退避),减少碰撞的概率
4.CSMA/CA协议 (无线局域网)
1.无线局域网不能简单搬用CSMA/CD
1.无法做到360°全面检测碰撞
2.无线通信中,并非所有站点都能听到对方,存在"隐蔽站"问题
2.CA:碰撞避免
不是指完全避免碰撞,尽量减少碰撞发生的概率
3.实现
1.使用二进制指数退避算法
当且仅当信道是空闲的,且这个数据帧是第一个数据帧,才不使用退避算法
2.预约信道
发送方发送数据的同时,通知其他站点需要的时间,让其他站点在这段时间内不发送数据
3.ACK帧
所有站点在正确收到数据帧后,都要向发送方回一个ACK帧
4.RTS/CTS帧
1.RTS(request to send), CTS(clear to send)
2.RTS: 包括发送端/接收端地址,下一份数据将持续发送的时间
3.可选的,主要解决无线网络中的"隐蔽站"问题
5.CSMA/CD与CSMA/CA区别
1.工作方式
1.CSMA/CD可以检测冲突,但无法避免
2.CSMA/CA发送包的同时不能检测信道上有无冲突,只能尽量避免
2.传输介质
1.CSMA/CD用于总线式以太网
2.CSMA/CA用于无线局域网
3.检测方式
1.CSMA/CD通过电缆中电压的变化
2.CSMA/CA采用能量检测,载波检测和能量载波混合检测
4.基本思想
1.CSMA/CD发送前侦听,边发送边侦听,一旦碰撞马上停止发送
2.CSMA/CA发送数据时先广播告知其他结点,让其他结点不要发送数据
3.轮询访问介质访问控制
1.轮询协议
1.用户不能随机发送数据,通过一个集中控制的监控点,以循环方式轮询每个结点,决定信道的分配
2.当某结点使用信道时,其他结点不能使用信道
2.令牌传递协议
0.令牌
一组特殊的比特组合而成的帧
1.过程
1.令牌在各结点间以某个固定次序交换
2.一个站要发送数据,必须等待令牌,收到令牌,发送帧
3.帧中包括目的站的地址,帧在环上传送时,所有站点都进行转发,直到该帧回到始发站,由始发站撤销该帧
4.帧的目的站除转发帧外,对该帧维持一个副本,在帧的尾部设置"响应比特"指示已收到此副本
2.传输介质在逻辑上是一个环,实际可以是星型结构
3.适合负载很高的广播信道
4.实质
既不共享时间,也不共享空间,在随机介质访问控制的基础上,限定了有权发送数据的结点只有一个
总结
即使是广播通信,都可以通过介质访问控制机制变为点对点的通信,所以数据链路层研究点到点通信
6.局域网
1.局域网基本概念和体系结构
1.定义
局域网(LAN)是在一个较小地理范围将各种计算机,外部设备,数据库通过双绞线/同轴电缆等介质连接起来,组成资源和信息共享的计算机互联网络
2.主要特点
1.所有站共享较高的总带宽
2.较低的时延/误码率
3.各站为平等关系,不是主从关系
4.能进行广播和组播
3.三个要素
1.拓扑结构
星形/环形/总线形/树形(优缺点)
2.传输介质
1.有线局域网: 双绞线(主流),同轴电缆,光纤
2.无线局域网: 电磁波
3.介质访问控制方式 (最重要)
1.总线形: CSMA/CD,令牌总线
把总线形的各个工作站按一定顺序排列形成逻辑环
2.环形: 令牌环
4.分类
1.以太网
逻辑上:总线形, 物理上:星形/拓展星形
使用CSMA/CD
2.令牌环网
逻辑上:环形, 物理上:星形
明日黄花
3.FDDI(光纤分布数字接口)
逻辑上:环形, 物理上:双环
4.ATM网
较新型的单元交换技术,使用53字节固定长度的单元进行交换
5.无线局域网
采用IEEE802.11标准
5.IEEE802标准
1.802.3
以太网(CSMA/CD)
2.802.5
令牌环网
一个损坏很严重,哭
3.802.8
光纤
很贵,很发
4.802.11
无线局域网
6.数据链路层 两个子层
1.LLC子层 逻辑链路控制
1.负责识别网络层协议,对它们进行封装
2.为网络层提供服务: 无确认无连接/面向连接/带确认无连接/高速传送
2.MAC子层 介质访问控制
1.屏蔽不同物理链路种类的差异性,提供对物理层的统一访问接口
2.组帧和拆卸帧,帧的差错控制,透明传输,链路的管理,帧的寻址和识别
2.以太网与IEEE802.3
0.说明
1.逻辑上总线形,用广播方式发送,简化了通信流程,使用CSMA/CD
2.两个措施简化通信
1.采用无连接的工作方式
2.不编号,不要求接收方发送确认,不可靠服务,对差错的纠正由高层完成
3.两个标准
DIX Etherent V2标准 和 IEEE 802.3标准
帧格式有一点不同
1.传输介质与网卡
1.传输介质
粗缆,细缆,双绞线,光纤
图片
2.网卡(NIC)
1.定义
计算机与外界局域网的连接是通过主机箱内插入一块网络接口板
2.连接计算机和传输介质的接口
3.介质访问控制(MAC)地址/物理地址
每块网卡有唯一的代码,控制主机在网络上的数据通信
2.以太网的MAC帧
1.MAC地址/物理地址
长6字节,连字符分隔的6个十六进制数,高24位为厂商代码,低24位自行分配
2.总线上广播通信,网卡收到一个MAC帧,硬件检查MAC地址,若为本站收下,否则丢弃
3.MAC帧格式(V2)
1.前导码
使接收端和发送端时钟同步,帧前插入8字节
前7字节是前同步码,迅速实现MAC帧的比特同步
后1字节是帧开始定界符,表示后面是MAC帧信息
2.地址
通常6字节地址(MAC地址)
3.类型
2字节,指出数据域的数据应该交给哪个协议实体处理
4.数据
46~1500字节,CSMA/CD限制最小帧长为64字节(首尾占18字节),规定最大1500
5.填充
0~46字节,帧太短时填充
6.校验码(FCS)
4字节,范围为目的地址到数据段末尾,用32位CRC,不校验前导码
图片
4.802.3与V2不同
1.帧起始标志:与802.4和802.5兼容
2.长度域:代替V2的类型域,指出数据域的长度
5.长度/类型可以并存,长度段最大值为1500,用1501~65535的值用于类型段标识符
3.高速以太网
1. 100BASE-T以太网
双绞线,半双工(有冲突用CSMA/CD协议)/全双工(无冲突)
2. 吉比特以太网
双绞线/光纤,半双工/全双工
3. 10吉比特以太网
光纤,全双工
3.无线网与IEEE802.11
1.有固定基础设施无线局域网
1.基本服务集(BSS)
无线局域网最小构件,包括一个基站和若干移动站
2.接入点(AP)
基本服务集中的基站,作用和网桥类似
3.扩展服务集(ESS)
一个基本服务集通过接入点AP连接到一个主干分配系统,再接入另一个BSS
2.无固定基础设施的无线局域网自组织网络
1.定义
1.没有AP,由一些处于平等状态的移动站相互通信的临时网络,各点地位平等
2.把移动性扩展到无线领域中的自治系统,有自己的路由选择协议,可以不和因特网互联
2.和移动IP不同
1.移动IP技术使漫游的主机用多种方式连接到因特网
2.核心网络功能还是基于固定互联网中的各种路由选择协议
4.令牌环网的基本原理
1.基本原理
每个站通过电缆与环接口干线耦合器TCU相连
2.TCU作用
传递所有经过的帧,为接入站发送和接收数据提供接口
3.TCU两个状态
收听状态,发送状态
4.传递过程
见:5.介质访问控制--令牌传递协议
7.广域网
1.基本概念
1.首要问题
通信容量必须足够大,来支持日益增长的通信量
2.与互联网区别
1.互联网可以连接不同类型的网络(局域网/广域网),使用路由器
2.广域网由一些结点交换机和链路组成
3.结点交换机和路由器
1.相同点
都是用来转发分组,工作原理也类似
2.不同点
1.结点交换机在单个网络中转发分组,点到点连接,通常一个与多个相连
2.路由器在多个网络构成的互联网中转发分组
4.层次上
1.局域网使用的协议只要在数据链路层(少量在物理层)
2.广域网使用的协议主要在网络层
两个结点进行数据交换,要给数据加上一层控制信息,实现检错纠错,主要看控制信息是哪层协议
5.局域网和广域网的联系
图片
6.广域网重要问题
1.路由选择
搜索分组从某个结点到目的结点的最佳传输路由,构造路由表,再构造转发分组的转发表
2.分组转发
分组通过转发表转发的
7.PPP协议和HDLC协议是最常用广域网数据链路层控制协议
2.PPP协议
1.定义
使用串行线路通信的面向字节的协议,应用在直接连接两个结点的链路上
2.设计目的
通过拨号/专线方式建立点对点连接发送数据
3.应满足的要求
1.简单
对于链路层的帧,只差错检测,无需纠错,无需序号,无须流量控制
2.封装成帧,多种网络层协议,多种类型链路(串行/并行,同步/异步,电/光)
3.透明传输
异步线路:字节填充, 同步线路:比特填充
4.三个组成部分
1.链路控制协议LCP
身份验证,用于建立,配置,测试,管理数据链路
2.网络控制协议NCP
允许采用多种网络协议,每个不同网络层协议要用一个相应的NCP配置,为网络层协议建立和配置逻辑连接
3.将IP数据报封装到串行链路的方法
IP数据报是PPP帧的信息部分
5.PPP帧的格式
0.前3个字段和后2个字段和HDLC帧是一样的
1.标志字段F
仍然是7E(01111110),前后各占一个字节,出现在信息段,字节填充,转义字节7D(01111101)
2.地址字段A
占1个字节,规定为0xFF
3.控制字段C
占1个字节,规定为0x03
内容始终不变
4.协议段
占2个字节,HDLC中没有,说明信息段运载的是什么种类的分组
5.信息段
长度可变,0~1500B
点对点,不是总线形,不用CSMA/CD,没有最短帧
6.帧检验序列FCS
占2个字节,用CRC,检验区2~5
图片
6.链路建立,使用,撤销
1.首先线路处于静止状态,不存在物理层连接
2.有载波信号时,建立物理连接,线路为建立状态,LCP开始选项商定
3.商定成功,进入身份验证状态,通过后,进入网络状态
4.NCP配置网络层,成功后,进入打开状态,进行数据传输
5.完成后,转为终止状态,载波停止后,回到静止状态
7.特点
1.只差错检测,不提供纠错服务,保证无差错接收,不可靠,不用序号和确认机制
2.只支持点对点通信,不支持多点线路
3.只支持全双工链路
4.两端可以运行不同的网络层协议,使用同一个PPP进行通信
5.面向字节,透明传输
3.HDLC协议
0.说明
1.ISO制定面向比特的数据链路层协议,不依赖任何字符编码集
2.可透明传输,用0比特插入法,全双工通信,CRC校验,对帧顺序编号,可靠性高
3.传输控制功能和处理功能分离,有较大灵活性
1.两种基本配置
1.非平衡配置
由一个主站控制整个链路的工作
2.平衡配置
两端都是复合站,平等发起数据传输,不需要得到对方复合站的允许
2.站
主站(命令帧),从站(响应帧),复合站(两个)
3.数据操作方式
1.正常响应方式
非平衡结构,从站只有收到主站的许可后,才能进行响应
2.异步平衡方式
平衡结构,每个复合站都可以对另一个站数据传输
3.异步响应方式
非平衡结构,从站没有接到主站的允许下就可以进行传输
4.HDLC帧
1.标志字段F
01111110,透明传输,5 "1" 1 "0"
2.地址字段A
8位,非平衡方式:写入从站地址, 平衡方式:写入应答站地址
3.控制字段C
0. 8位,最复杂,重要功能实现,分为3类
1.信息帧(I)
第一位为0,传输数据信息/使用捎带技术确认
2.监督帧(S)
前两位为1,0,用于流量控制/差错控制/对信息帧确认/请求重发/请求暂停发送
3.无编号帧(U)
前两位都为1,对链路建立,拆除等控制功能
PPP与HDLC
1.相同点
1.都只支持全双工链路
2.都可以实现透明传输(具体方式不同)
3.都可以差错检测,但不纠正差错
2.不同点
1.PPP
面向字节
2B协议字段
无序号和确认机制
不可靠
2.HDLC
面向比特
没有
有编号和确认机制
可靠
8.数据链路层设备
1.网桥
0.说明
1.定义
1.两个以太网通过网桥连接,成为更大的以太网,原来每个以太网称为一个 网段
2.网桥工作在链路层的MAC子层,使以太网各网段成为隔离开的碰撞域(换成物理层设备不行)
3.网桥处理对象是帧,工作在链路层;中继器,放大器处理对象是信号,工作在物理层
2.工作方式
网桥接收1发送的数据帧,检查地址,是2的地址,转发给2;是1的地址,丢弃
3.吞吐量
一个网段为10,用网桥连3个网段是30;用集线器/转发器连接还是10
4.基本特点
1.具备寻址和路由选择的功能,确定帧的传输方向
2.从源网站接收帧,以目的网站的介质访问控制协议转发该帧
3.在不同/相同类型LAN间存储转发帧,必要时进行链路层上的协议转换
4.对接收的帧不做任何修改/只对封装格式做很少的修改
5.可以通过帧翻译互联不同类型的局域网
6.有足够大的缓冲空间,短时间内帧的到达速度高于转发速度
5.网桥优点
1.过滤通信量,扩大物理范围
2.使用不同的物理层,互联不同类型的局域网
3.提高可靠性,性能得到改善
6.网桥缺点
1.增加延时
2.MAC子层没有流量控制功能,需要编号机制,在LLC子层
3.不同MAC子层的网段连接在一起时,帧格式的转换
4.只适合用户数不多,通信量不太大的局域网,否则会产生网络拥塞(广播风暴)
1.透明网桥 (不是最佳路由)
1.工作方式
1.接收所有的帧,到达帧的路由选择取决于源LAN和目的LAN
2.相同,丢弃该帧; 不同,转发该帧; 目的LAN为止,扩散该帧
2.自学习算法
1.每收到一个帧,记下其源地址/进入网桥的端口,作为转发表的一个项目
2.转发帧时,根据帧首部的目的地址来转发
3.生成树算法(无环)
为了避免帧在"兜圈子",算法确保每个源到每个目的站只有唯一的路径,逻辑上为树形,不是最佳路径
2.源路由网桥 (最佳路由)
1.说明
1.路由选择由源站负责,网桥只根据数据真正的路由信息进行接收和转发
2.网桥对主机不透明,主机必须知道网桥的标识/连接到哪个网段
3.发送帧还能帮助源站确定可通过的最大帧长
2.生成过程
1.在未知路径前,源站先发送一个发现帧,探测之用
2.途中的每个网桥都转发此帧,最终该帧从多个途径到达目的站
3.目的站也一一发送应答帧,每个应答帧通过原路径返回,途经的网桥把自己的标志记录在应答帧中
4.源站选择出一个最佳路由,之后从源站向该目的站发送的帧首部,必须携带这一路由信息
两种网桥比较
1.透明网桥
只能使用生成树,不保证最佳路由,不能在不同的链路中进行负载均衡
2.源路由网桥
利用最佳路由,若使用并联的源路由网桥,可使通信量平均分配给每一个网桥
注意
最佳路由不是经过路由器最少的路由,可以是发送帧往返时间最短的路由,真正负载平衡
2.局域网交换机
1.局域网交换机
1.网桥的主要限制
任一时刻只能执行一个帧的转发操作
2.交换机就是一个多端口的网桥,经济地将网络分成小的冲突域,提供更高带宽
3.交换机对工作站是透明的
管理开销低廉,简化结点的增加/移动/网络变化
4.利用交换机方便实现虚拟局域网(VLAN )
可以隔离冲突域,也可以隔离广播域
2.原理
1.检测数据帧的源/目的地的MAC地址,与系统内部的动态查找表比较
2.若MAC地址不在查找表中,将该地址加入查找表,将数据帧发送给相应的目的端口
3.特点
1.每个端口直接与单个主机相连,工作在全双工
网桥的端口连接到以太网的一个网段
2.同时连接许多对的端口,使每对通信的主机能独占通信媒体,无碰撞传输数据
3.即插即用设备(和网桥一样),内部的转发表通过自学习算法逐渐建立
4.使用专用的交换结构芯片,交换速率高
5.独占传输媒体带宽
6.一般具有多种速率的端口(各种组合),方便了各种不同情况的用户
4.最大优点
每个端口到主机带宽是10,拥有N对端口的交换机总容量是N*10
5.两种交换模式
1.直通式
只检查目的地址,接收后马上转发,速度快,安全性差,无法支持不同速率端口交换
2.存储转发式
缓存到高速缓冲器中,检查数据正确后发送,帧有错丢弃,可靠性高,支持不同速率端口,延迟大
3.冲突域和广播域
1.冲突域
在同一冲突域中的每个结点都能收到所有帧,同一时间内只有一台设备发送信息
2.广播域
站点发出一个广播信号,所有能接收到这个信号的设备范围
第四章 网络层
1.网络层功能
1.异构网络互联
1.使用路由器进行网络互联和路由选择,使用物理层和数据链路层仅仅是把网络扩大了
2.好处
通信时,就像在一个网络上,看不见具体的网络异构细节
2.路由与转发
1.路由选择
1.根据特定的路由选择协议构造路由表,定期更新维护路由表
2.分组转发
1.处理通过路由器的数据流,关键操作: 转发表查询/转发/相关的队列管理/任务调度
2.根据转发表将IP数据报从合适的端口转发出去
3.路由表
根据路由选择算法得出,对网络拓扑变化的计算最优化
4.转发表
从路由表得出,使查找过程最优化
3.拥塞控制
1.判断拥塞的方法
观察网络的吞吐量和网络负载的关系
2.三种状态
1.轻度拥塞
随着负载增加,吞吐量明显小于正常吞吐量
2.拥塞状态
吞吐量随着负载的增大反而下降
3.死锁状态
负载继续增大,吞吐量下降到0
3.主要解决的问题
如何获取拥塞信息,进行控制,避免分组的丢失和网络死锁
4.流量控制与拥塞控制区别
1.流量控制
在发送端和接收端的点对点通信量的控制,抑制发送端发送数据的速率
2.拥塞控制
确保通信子网能够传送待传送的数据,全局性问题:所有主机/路由器
5.两种方法
1.开环控制(静态)
事先考虑周到,力求不产生拥塞,中途不需要修改,做决定时不考虑当前网络状态
2.闭环控制(动态)
事先不考虑各种因素,用监测网络去监视,监测到拥塞.解决出现的问题,基于反馈环路
2.路由算法
1.静态路由与动态路由
1.静态路由算法(非自适应)
1.定义
网络管理员手工配置路由信息,不适应大型/复杂网络环境
2.特点
简单,可靠,广泛用于高度安全性的军事系统/较小的商业网络
2.动态路由算法(自适应)
1.定义
相互联接的路由器彼此交换信息,按一定算法得出,在一定时间间隙里不断更新
2.特点
改善网络性能,流量控制,算法复杂,增加网络负担,反应太快引起振荡,太慢影响一致性
3.分类
距离-向量路由算法/链路状态路由算法
2.距离-向量路由算法
1.定义
所有结点定期将自己的整个路由表传送给所有直接相邻的结点
2.路由表项目
三个关键数据: <目的网络N,距离d,下一跳路由器X>
3.步骤
1.对地址为X的相邻路由器发来的RIP报文,修改此报文所有项目
把下一跳的地址改为X,把所有距离+1
2.对修改后的RIP报文的每一项目
1.当原路由表没有目的网络N,把该项目加到路由表
2.当原路由表有目的网络N,且下一跳地址为X(无论距离如何变化),都以新的项目为准
3.当原路由表有目的网络N,且下一跳地址不为X,若收到项目的d小于路由表的d,替换
3.若180秒(RIP默认超时时间)没收到更新路由表,把相邻路由器记为不可达(距离设置为16)
4.返回
4.特点
1.适用于小型网络,可能遇到路由环路
3.链路状态路由算法
1.定义
定期将链路状态传播给所有其他的结点(泛洪法)
2.三点特征
1.泛洪法
通过所有端口向所有相邻的路由器发送信息,每个相邻路由器重复操作
2.链路状态
发送的信息是相邻所有路由器的链路状态(本路由器和哪些路由器相邻/该链路的度量(费用/距离/时延/带宽))
3.只有当链路状态发生改变,路由器才发送消息
3.优点
1.用于大型/路由信息变化聚敛的网络
链路状态只涉及相邻路由器,与互联网的规模无直接关系
2.每个路由结点使用同样的原始状态数据独立计算路径,不依赖中间结点的计算
3.链路状态报文不加改变的传播,易于查找故障
4.在本地立即计算正确的通路,保证一步会聚
4.层次路由
1.自治系统(AS)
1.因特网将整个互联网划分为较小的自治系统(包含很多局域网)
2.每个自治系统自主决定采用何种路由选择协议
2.两大路由选择协议
1.内部网关协议(IGP)
1.定义
一个自治系统内部使用的路由选择协议(域内路由选择)
2.分类
RIP协议,OSPF协议
2.外部网关协议(EGP)
1.定义
自治系统之间使用的路由选择协议(域间路由选择)
2.分类
BGP-4
3.特点
1.OSPF将自治系统再划分为若干区域(Area),每个路由器知道本区域的细节,不用知道其他区域的内部结构
2.每个区域内部的通信量大大减小,使OSPF用于大规模自治系统
3.IPV4
1.IPv4分组
1.格式
1.组成
1.由首部和数据组成
2.首部的前一部分固定长度(20字节),必须具有
3.后面是可选字节,长度可变(0-40B),提供错误检测/安全
2.图片
3.首部重要字段
1.首部长度
占4 位,以4B为单位,最小值为5,最大值15,最常用20B(不适应任何选项)
2.总长度
占16位,以1B为单位,首部和数据之和的长度,最大值为以太网最大传送单元 MTU=1500B
3.片偏移
占13位,以8B为单位,指出分片后,某片在原分组中的相对位置,每片长度为 8B整数倍(除最后一片)
一种(总)八片的首饰(4)
4.标识
占16位,计数器,产生一个数据报+1,赋值给标识字段,不是序号(IP是无连接服务),分片时使用同一标识
5.标志
占3位,最低位MF(More Fragment)=1有分片,中间位DF(Don't Fragment)=0允许分片
6.首部检验和
占16位,只检验分组的首部,不检验数据部分
7.生存时间TTL
占8位,可通过的路由器最大值,分组在网络中的寿命,确保不会永远循环,转发之前-1,TTL=0丢弃分组
8.协议
占8位,分组的数据使用何种协议,6为TCP(面向连接特别6),17为UDP(无连接容易被遗弃)
2.IP数据报分片
利用 标识/标志/片偏移 三个字段
3.网络层转发分组的流程
1.提取目的主机的IP地址
2.是否直接交付
3.有无特定主机路由
4.检测路由表中有无路径
5.默认路由0.0.0.0
6.丢弃,报告转发分组出错
注
1.得到下一跳IP后,不是直接填入数据报,而是将IP地址通过ARP协议转换为MAC地址, 放到MAC帧首部中,根据MAC地址找到下一跳路由器
2.不同网络传送时,MAC帧的源/目的地址发生变化. 网桥转发帧时,不改变帧的源地址
2.IPv4地址与NAT
1.IPv4地址
1.IP地址
1.每台主机分配一个32比特的全球唯一标识符,由网络号和主机号组成
2.分五类的IP地址
图片
3.特殊用途IP地址
图片
4.最大可用网络数
1.A类: 2^7-2
减2: 全0是保留地址"本网络",全1为127是环回测试地址
2.B类: 2^14-1
减1: 全0为128.0不可指派
3.C类: 2^21-1
减1: 全0为192.0.0不可指派
5.每个网络中最大主机数
2^(主机号位数)-2
全0(本网络本身),全1(本网络广播地址)不可用
6.特点
1.分等级好处
1.只分配网络地址,主机号自行分配,方便IP地址的管理
2.路由器仅根据网络号转发分组,不考虑主机号,减少了路由表的存储空间
2.当一个主机连接两个网络时,必须具有两个IP地址,两个网络号不同
3.用转发器/网桥连接起来的仍然是同一个网络(同一个广播域),网络号相同,主机号不同
4.所有分配到网络号的网络(无论LAN/WAN)都是平等的
5.同一局域网上网络号一样,路由器具有多个IP地址,每个端口具有不同网络号的IP地址
2.网络地址转换 (NAT)
1.定义
将专用网络地址转换为公用网络地址,对外隐藏了内部管理的IP地址
2.特点
1.整个专用网只需要一个IP地址,专用网本地IP可重用,大大节省了IP地址的消耗
2.隐藏了内部网络的结构,降低了受到攻击的风险
3.私有IP地址 (可重用地址)
1.定义
只用于LAN,不用于WAN,不能直接用于Internet,必须通过网关利用NAT转换
2.网段
1. A类:1个,10.0.0.0~10.255.255.255
2. B类:16个,172.16.0.0~172.31.255.255
3. C类:256个,192.168.0.0~192.168.255.255
4.NAT转换表
1.将本地地址转换为全球地址,或全球地址转换为本地地址
2.存放{本地IP地址:端口号}到{全球IP地址:端口号}的映射
3.可以让多个私有地址映射到同一个全球IP地址
注意
1.普通路由器转发IP数据报时,不改变源/目的IP地址,NAT路由器一定更换其IP地址
2.普通路由器仅工作在网络层,NAT路由器需要查看和转换传输层的端口号(传输层)
3.子网划分与子网掩码,CIDR
0.两级IP地址的缺点
1.地址空间的利用率低,不够灵活
2.给每个物理网络分配网络号使路由表太大,网络性能变坏
1.子网划分
1.定义
采用子网掩码对物理子网再一次进行子网划分,使两级IP地址变为三级IP地址
2.思路
1.纯属一个单位内部的事情,对外表现为没有划分子网的网络
2.从主机号借用若干比特作为子网号,结构:{<网络号>,<子网号>,<主机号>}
3.从其他网络先找到本单位的路由器,再按目的网络号和子网号找到目的网络,直接交付给目的主机
注意
1.划分子网只是把主机号再划分,不改变原来的网络号,无法从IP首部判断是否划分子网
2.原来IPv4子网号不能为全1或全0,随着CIDR使用,现在全0和全1的子网号可以使用
3.不论IPv4还是CIDR,子网的主机号为全0或全1都不能被指派
2.子网掩码
1.定义
1.为了告诉主机/路由器对哪类网络进行了子网划分,用子网掩码表达对主机号的借位
2.一串1和0组成,1对应网络号和子网号,0对应主机号
2.子网的网络地址
将IP地址和其对应的子网掩码 逐位相与
3.标准规定
所有网络必须使用子网掩码,没有划分使用默认子网掩码(A类为255.0.0.0)
3.无分类编址CIDR
1.定义
1.在变长子网掩码基础上消除A,B,C类网络划分,在软件支持下实现超网构造
2.特点
1.使用网络前缀代替子网络,无分类两级编址 IP::={<网络前缀>,<主机号>}
2.斜线记法(CIDR记法)
IP地址/网络前缀所占比特数
3.CIDR不使用子网,但使用掩码
没有指定若干位为子网字段,但仍可以划分子网
3.路由聚合
1.概念
将网络前缀相同的连续IP地址组成"CIDR地址块"
2.目的
使得一个地址块可以表示很多地址,较少路由表表项/路由器间的信息交换
3.方法
把一串IP地址写为二进制表示,取最长的公共前缀作为网络号
4.优点
网络前缀长度的灵活性
5.最佳前缀匹配
在查找路由表时可能不止一个匹配结果,选择具有最长网络前缀的路由,越长越具体
6.查找路由表方法
为更有效查找最长前缀匹配,将路由表存放在二叉线索树中
4.ARP协议,DHCP协议 ICMP协议
1.IP地址/硬件地址
1.IP地址
1.网络层使用的地址,分层次等级,在IP数据报首部
2.硬件地址
1.数据链路层使用的地址,平面式的,在MAC帧首部
3.特点
1.通过数据封装,IP数据报分组封装为MAC帧之后,数据链路层看不见IP地址
2.IP分组在每个网络中都被路由器解封装/重新封装,MAC地址不断变化,无法使用MAC地址跨网络通信
3.路由器只根据目的IP地址的网络号进行路由选择
4.互联在一起的网络的硬件地址体系各不相同,但IP层屏蔽了复杂的细节,使用统一的,抽象的IP地址
5.路由器互联多个网络,有多个IP地址,也有多个硬件地址
2.地址解析协议ARP
1.定义
对于特定的IP地址,查询其对应的物理地址
2.工作原理
1.当主机A向本局域网的主机B发送IP数据报,先在ARP高速缓存中查看是否有无主机B的IP地址
2.若有,查出硬件地址,写入MAC帧
3.若无,用目的MAC地址为FF-FF-FF-FF-FF-FF的帧来封装并广播 ARP请求分组
4.当B收到后,向A发送 响应ARP分组,包含B的IP与MAC地址的映射关系
3.工作在网络层,因为看到了IP地址
NAT路由器看到了端口,所以工作在传输层
某个协议工作在哪个层次,通过协议的工作原理进行猜测
4.四种典型情况
1.发送方是主机,接收方是本网络的主机
用ARP找到目的主机的硬件地址
2.发送方是主机,接收方是另一个网络的主机
用ARP找到本网络的一个路由器的硬件地址,剩下工作由路由器完成
3.发送方是路由器,接收方是本网络的主机
用ARP找到目的主机的硬件地址
4.发送方是路由器,接收方是另一个网络的主机
用ARP找到本网络的一个路由器的硬件地址,剩下工作由路由器完成
5.解析是自动进行的,用户是不知道的
3.动态主机配置协议 DHCP
1.定义
给主机动态分配IP地址
2.特点
即插即用,应用层协议,基于UDP,使用客户/服务器方式
3.工作原理
1.主机广播 DHCP发现报文
试图找到网络中的服务器,服务器获得一个IP地址
2.DHCP服务器广播 DHCP提供报文
服务器拟发送给主机一个IP地址及相关配置,先到先得(还未发送)
3.主机广播 DHCP请求报文
主机向服务器请求提供IP地址
4.DHCP服务器广播 DHCP确认报文
正式将IP地址分配给主机
注
1.当客户机发出请求时,可能收到多个应答消息,客户机挑选最先到达的
2.服务器分配的IP地址是临时的(租用期)
4.客户端和服务器通过广播方式交互
1.DHCP执行期间,客户端和服务器都没有标识自己身份的IP地址
2.不用TCP,因为TCP要建立连接,没有IP地址无法建立
4.网际控制报文协议 ICMP
1.定义
给主机/路由器报告差错/异常情况,IP层协议
2.分类
1.ICMP差错报告报文
1.终点不可达
2.源点抑制
由于拥塞而丢弃数据报,让源点放慢发送速率
3.时间超时
路由器收到生存时间TTL=0的数据报,丢弃
终点在预定时间内不能收到一个数据报的全部报片,丢弃
4.参数问题
数据报的首部的字段不正确
5.改变路由(重定向)
2.ICMP询问报文
1.回送请求和回答报文
测试目的站是否可达/了解相关状态
2.时间戳请求和回答报文
用来时钟同步/测量时间
3.掩码地址请求和回答报文
4.路由器询问和通告报文
不常用
不应发送差错报告报文
1.对ICMP差错报告报文
2.对第一个分片的数据报片的所有后续数据报片
3.对具有组播地址的数据报
4.对具有特殊地址(127.0.0.0/0.0.0.0)的数据报
3.应用
1.PING
1.测试两个主机之间的连通性,使用ICMP回送请求和回答报文
2.工作在应用层,直接使用网络层的ICPM协议,不使用传输层的TCP或UDP
2.Traceroute
1.跟踪一个分组从源点到终点的路径,使用ICPM时间超时差错报文
2.工作在网络层
5.IP技术推广应用
1.内联网Intranet
1.内联网是应用因特网技术构建的企业内部网,该网络也执行TCP/IP技术,具有IP地址,提供类似因特网服务
2.内联网用户不与外部发生联系/通过互连部件和安全设施(如防火墙)有限制的与外部世界(如因特网)联系
2.外联网Extranet
1.外联网是为适应企业网之间/跨区域的企业内部部门网之间的安全交换信息而形成的网络
2.基础是广域网/因特网,核心技术是在企业网之间构建隧道,中间的广域网仅执行透明数据传输
3.虚拟专用网VPN
1.VPN是外联网的外延,施加安全技术在公网的基础上构建的专用网络,核心技术是隧道技术
2.基于IPsec的VPN
1.用IP协议封装了其它各种安全协议,支持封装后的数据单元在IP网络上传输
2.因NAT防火墙对IP地址的迁移,无法提供端到端的保障(要求隧道的交换)专业维护
3.基于SSL的VPN
用TCP之上的SOCKS封装用户数据,透明穿越防火墙,可提供端到端的安全保障(用户维护)
4.IPv6
0.解决IP地址耗尽
1.采用无类别编址CIDR,分配更合理
2.采用网络地址转换NAT节省全球IP地址
延长分配结束的时间
3.采用更大地址空间的新版本IP协议IPv6
1.IPv6的主要特点
1.更大的地址空间
从32位扩大到128位
2.将IPv4的校验和字段彻底移除,较少每跳的处理时间
3.灵活的首部格式
将IPv4的可选字段移出首部,变成扩展首部,通常不对其检查,提高处理效率
4.支持即插即用(自动配置),不需要DHCP协议
5.首部长度必须是8B的整数倍,IPv4首部是4B的整数倍
6.只能在主机处分片,IPv4可以在路由器和主机处分片
重要
7.支持资源的预分配,支持实时视像,保证一定的带宽和时延的应用
8.增加了安全性(身份验证/保密功能)
9.取消了协议字段(改为下一个首部字段),取消总长度字段(改为有效载荷长度字段),取消服务类型字段
10.满足了预定目标
1.最重要的是更多的地址
2.简化了IP分组头,包含8个域(IPv4有12个域),路由更快处理分组,改善吞吐量
3.更好的支持选项,从前是必要的段现在变成可选的
2.IPv6地址
1.三种目的地址
1.单播
传统的点对点通信
2.多播
一点对多点的通信,分组被交付到一组计算机的每一个
3.任播
新增,目的站是一组计算机,但数据报只交付其中的一个(通常是距离最近)
2.表示形式
1.每4位用一个十六进制数表示,用冒号分隔每个16位(4个十六进制数)
2.缩写形式
十六进制数开头的一些0可省略,但至少要有一个数字
3.进一步缩写
有相继的0值域,用双冒号缩写(::),只能出现一次
3.扩展分级概念
1.第一级(顶级): 指明全球都知道的公共拓扑
2.第二级(场点级): 指明单个场点
3.第三级: 指明单个的网络接口
使路由器更快查找路由
4.过渡
1.双协议栈
在完全过渡到IPv6之前,使一部分主机/路由器装有两个协议栈
2.隧道技术
将整个IPv6数据报封装到IPv4数据报的数据部分,可以在IPv4的网络的隧道中传输
5.路由协议
1.自治系统
2.域内路由与域间路由
3.RIP路由协议
0.说明
1.属于内部网关协议IGP,分布式的基于距离向量,最大优点是简单
1.规定
1.每个路由器维护从它自己到其他每一个目的网络的距离记录(距离向量,一组距离)
2.距离也称跳数(Hop Count),规定从一路由器到直接连接的网络距离为1,经过一个路由器+1
3.好的路由
通过的路由器的数目少
4.一条路径最多包含15个路由器,距离=16为不可达,适用小型网络,可能出现环路 最高跳数目的: 防止数据报循环在环路上,减少网络拥塞
5.默认每30秒广播一次更新信息,自动建立并动态维护路由表,超过180s判定邻居不可达
6.RIP不支持子网掩码的广播,每个网络的子网掩码必须相同,RIP2支持变长子网掩码和CIDR
2.特点
1.仅和相邻路由器交换信息,信息是全部信息(自己的路由表)
2.按固定的时间间隔交换信息(30秒)
3.应用层协议,用UDP传送数据
4.路径不一定是时间最短,一定是路由器最少
3.优点
实现简单,开销小,收敛过程快
4.缺点
1.限制了网络的规模,最大距离为15跳
2.交换的是完整的路由表,网络规模大,开销也大
3.网络出现故障时,会出现慢收敛(坏消息传的慢)PPT
4.OSPF路由协议
0.说明
1.分布式链路状态路由算法,内部网关协议IGP一种
1.特点
1.只有链路发生变化采用泛洪法发送消息,更新过程收敛快,不会慢收敛
2.对不同的链路根据IP分组的不同服务类型(TOS)设置成不同的代价,可计算出不同的路由
3.多路径的负载平衡
到同一目的网络有多条相同代价的路径,可将通信量分配给这几条路径
4.交换的分组具有鉴别的功能,保证仅在可信赖的路由器间交换信息
5.支持可变长的子网划分和无分类编码CIDR
6.每一个链路状态有一个32位序号,序号越大状态就越新
2.工作原理
1.各路由器频繁交换信息,所有路由器最终建立一个链路状态数据库(全网的拓扑结构)
2.每个路由器使用Dijkstra计算自己到各目的网络的最优路径,构造自己的路由表
3.当链路状态发生变化,重新计算最优路径,构造新的路由表
注
1.虽然使用Dijkstra能计算出完整路径,但路由表中只存储下一跳
3.五种分组类型
1.问候分组(HELLO)
发现和维护邻站的可达性
2.数据库描述分组(DD)
向邻站给出自己的链路状态数据库中的所有链路状态项目的摘要信息
3.链路状态请求分组(LSR)
向对方请求发送某些链路状态项目的详细信息
4.链路状态更新分组(LSU)
用泛洪法对全网更新链路状态
5.链路状态确认分组(LSAck)
对链路更新分组的确认
UDP传送与IP数据报传送
1.UDP传送
将该信息作为UDP报文的数据部分
2.IP数据报传送
将该信息作为IP数据报的数据部分
5.BGP路由协议
0.说明
1.外部网关协议(BGP)是不同的自治系统的路由器之间交换路由信息的协议
1.使用环境不同
1.因特网规模太大,使路由选择非常困难
2.寻找最佳路径很不现实,只能力求寻找一个比较好的路由
2.工作原理
1.每一个自治系统选择至少一个路由器作为"BGP发言人"
2.要交换路由信息,先建立TCP连接,在此连接上交换BGP报文建立BGP会话,利用会话交换路由信息
3.各BGP发言人找出到达各个自治系统的比较好的路由
注: 每一个BGP发言人除了必须运行BGP协议外,还必须运行该AS的内部网关协议
3.特点
1.交换路由信息的结点数量级是自治系统的数量级,较少,路由选择不过分复杂
2.支持CIDR,路由表包括 目的网络前缀,下一跳路由器,经过的自治系统序列
3.刚运行时,交换整个BGP路由表.以后只需要在发生变化时更新有变化的部分
4.四种报文
1.打开报文(Open)
与相邻的另一个BGP发言人建立关系
2.更新报文(Update)
发送某一路由的信息/列出要撤销的多条路由
3.保活报文(Keepalive)
确认打开报文/周期性证实邻站关系
4.通知报文(Notification)
发送检测到的差错/关闭连接
5.三种路由协议的比较
图片
6.IP组播
1.组播的概念
1.定义
在发送者和每一接收者之间实现点对多点网络连接,应用UDP协议,使用D类地址
2.过程
1.主机使用IGMP(因特网组管理协议)加入组播组
2.主机组播时仅发送一份数据,只有出现分岔时才将分组复制后继续转发
3.特点
1.对发送者,数据只发送一次,减轻网络负载/发送者负担
2.组播需要路由器的支持(组播路由器)
2.IP组播地址
1.定义
使用D类地址,前四位1110,范围224.0.0.0~239.255.255.255,每个D类地址标志一个组播组
2.特点
1.组播地址只能用于目的地址,不能用于源地址
2.组播数据报只是尽最大努力交付,不提供可靠服务,使用UDP
3.不产生ICMP差错报文,在PING命令后键入组播地址,永远不会收到响应
4.并非所有D类地址都可以作为组播地址
3.分类
1.只在本局域网上进行硬件组播
2.在因特网上进行组播,最后阶段还是利用硬件组播
4.硬件组播
1.以太网组播地址: 01-00-5E-00-00-00到01-00-5E-7F-FF-FF
2.只有后23位可用作组播,只能和D类地址后23位一一对应,前5位不能用于硬件地址
3.组播IP地址与硬件地址映射关系不是唯一的,需要在IP层利用软件进行过滤,不是本主机的数据丢弃
映射关系
图片
3.IGMP协议与 组播路由算法
1.IGMP协议
1.定义
使路由器知道组播组成员的信息
2.特点
1.并非对所有组播组成员进行管理,不知道成员数,不知道分布在哪些网络上
2.让本地局域网上的组播路由器知道是否有主机参加或退出了某个组播组
3.工作两个阶段
1.某个主机加入新的组播组时,向组播地址发送IGMP报文,组播路由器收到后,将组成员关系转发给其他组播路由器
2.组成员关系是动态的,组播路由器周期性地探询主机是否还是组的成员, 只要有一个主机响应,这个组是活跃的;没有主机响应,不再将成员关系转发给其他组播路由器
2.组播路由选择
1.定义
1.找出以源主机为根结点的组播转发树,每个分组在每条链路上只传送一次
2.同一多播组,对不同的源点也会有不同的多播转发树
2.三种路由算法
基于链路状态/基于距离-向量/协议无关的组播(PIM,可以建立在任何路由器协议上)
7.移动IP
1.移动IP概念
1.定义
移动结点以固定的网络IP地址,实现跨越不同网段的漫游功能,保证基于网络IP的网络权限在漫游过程中不发生改变
2.目标
把分组自动投递给移动结点
3.三种功能实体
1.移动结点
具有永久IP地址的移动结点
2.本地代理(归属代理)
移动结点的永久居所称为归属网络,归属网络中代表移动结点执行移动管理功能的实体叫归属代理
它根据移动用户的转交地址,采用隧道技术转交数据包
3.外部代理
在外部网络中帮助移动结点完成移动管理功能的实体
4.与 移动自组织网的区别
2.移动IP通信过程
1.两个地址
1.本地地址(永久地址/归属地址/主地址)
移动站点在归属网络中的原始地址
2.转交地址(辅地址)
移动站点在外部网络中使用的临时地址
2.移动绑定
本地地址和当前转交地址的联合
3.通信流程
1.A刚进入外部网络
1.在外部代理登记获得一个转交地址,离开时注销
2.外部代理向本地代理登记转交地址
2.B给A发送数据报
1.本地代理截获数据报,再封装数据报,新的目的地址是转交地址,通过隧道发给外部代理
2.外部代理拆封数据报发给A
3.A给B发送数据报
A用自己的主地址作为数据报源地址,用B的IP地址作为目的地址
4.A移动到下一个网络
在新外部代理登记注册一个转交地址,新外部代理给本地代理发送新的转交地址,通信
5.A回到了归属网络
A向本地代理注销转交地址,按原始方式通信
8.网络层设备
1.路由器的组成与功能
1.定义
路由器是一种具有多个输入输出端口的专用计算机
2.结构上
路由选择/分组转发
3.模型上
1.路由器是网络层设备,实现了网络模型的下三层
2.一个存储转发设备实现了某个层次的功能,就可以互联两个该层次上使用不同协议的网段(网络)
3.网桥实现物理层和数据链路层,可以互联
4.中继器实现物理层,但不能互联,因为中继器不是存储转发设备,是直通式设备
4.分组转发
1.交换结构
1.关键部件,根据转发表对分组进行处理
2.三种交换方法
通过 存储器/总线/互联网络 进行交换
2.输入端口
从物理层接收到的比特流中提取出链路层帧,进而提取出网络层数据
3.输出端口
执行相反的操作
5.和网桥的区别
网桥与高层协议无关/路由器面向协议,依据网络地址进行操作
2.路由表与路由转发
1.路由表
1.定义
根据路由选择算法得出,主要是路由选择,对网络拓扑变化的计算最优化,软件实现
2.四个项目
目的网络IP地址/子网掩码/下一跳IP地址/接口
2.转发表
1.定义
从路由表得出,其表项和路由表项有直接对应关系,使查找过程最优化,可由软件/硬件实现
2.两个项目
目的地址/分组的下一跳(MAC地址)
注意
为减少转发表的重复项目,使用默认路由代替所有具有相同的"下一跳"(优先级最低)
3.转发和路由选择区别
1.转发 根据转发表转发,仅涉及一个路由器
2.路由选择 涉及很多路由器,有复杂的路由算法
第五章 传输层
1.提供的服务
1.传输层功能
1.传输层提供进程间的逻辑通信(端到端),网络层提供主机之间的逻辑通信
2.复用和分用
1.复用: 发送方不同的应用进程使用同一个传输层协议传送数据
2.分用: 接收方的传输层在剥去报文的首部后能正确交付到目的应用进程
3.和网络层区别
1.复用: 发送方不同协议的数据都可以封装成IP数据报发送出去
2.分用: 接收方的网络层在剥去首部后交付给相应的协议
3.传输层对收到的报文进行差错检测(首部和数据部分),网络层只检查首部
4.提供两种不同的传输协议
1.面向连接的TCP和无连接的UDP
2.网络层无法同时实现两种协议,要么虚电路,要么数据报
2.寻址与端口
1.端口的作用
1.让应用层的各种应用进程通过端口向下交付给传输层,让传输层知道将其数据报向上交给相应的进程
2.端口是传输层的服务访问点SAP,数据链路层的SAP是MAC地址,网络层的SAP是IP地址
3.IP地址和MAC地址标识的是主机,端口标识的是应用进程
4.硬件端口
不同硬件设备进行交互的接口
5.软件端口
应用层的各种协议进程与传输实体进行交互的地址,传输层使用
6.端口号只具有本地意义,不同计算机的相同端口号没有联系
2.端口号
0.长度为16bit,能表示65536个不同端口号
1.服务器使用的端口
1.熟知端口号
1.数值0~1023,指派给TCP/IP最重要的应用进程,让所有用户知道
2.常用熟知端口号
图片
2.登记端口号
1.数值1024~49151,为没有熟知端口号的应用进程使用,在IANA登记,以防重复
2.客户端使用的端口
1.数值49152~65536,仅在客户进程运行时才动态选择,通信结束后不复存在
3.套接字
1.IP地址标识不同主机,端口号标识一台主机不同应用进程,套接字(Socket)标识端点(通信端点)
2.套接字 = (主机IP地址,端口号)
唯一标识一个主机和其上的一个应用(进程)
3.无连接服务 面向连接服务
1.无连接服务UDP
1.提供一条不可靠的逻辑信道
2.在IP之上仅提供两个附加服务: 多路复用/对数据的错误检查
3.比较简单,执行速度快,实时性好,适用小文件传送(TFTP),DNS,SNMP,实时协议(RTP)
2.面向连接服务TCP
1.提供一条全双工的可靠逻辑信道
2.不提供广播/组播服务
3.适用可靠性更重要场合:文件传输协议FTP,超文本传输协议HTTP,远程登录TELNET
3.IP数据报和UDP数据报区别
1.IP数据报在网络层经过路由的存储转发
2.UDP数据报在传输层的端到端的逻辑信道中传输,封装成IP数据报时对路由不可见
4.TCP和网络层虚电路区别
1.TCP报文段在传输层的逻辑信道中传输,对路由不可见,不影响网络层提供无连接服务
2.虚电路经过的交换结点必须保存虚电路状态信息,网络层无法提供无连接服务
2.UDP协议
1.UDP数据报
1.UDP概述
1.定义
UDP做了传输协议能做的最少工作,只在IP上增加了 复用和分用/差错检测 两个服务
2.优点
1.无需建立连接
不会引入建立连接的时延
2.无连接状态
不维护连接状态,不跟踪这些参数,支持更多的活动客户机
3.分组首部开销小
TCP有20字节,UDP仅有8字节
4.应用层更好地控制发送的数据和发送时间
UDP没有拥塞控制,网络中的拥塞不会影响主机的发送速率
实时应用要求以稳定速度发送,能容忍一些数据的丢失,不允许有较大延迟
3.特点
1.常用于一次性传输少量数据的网络应用(DNS,SNMP),也用于多媒体应用(IP电话/实时视频会议)
2.尽最大努力交付,不保证可靠传输,可靠性由应用层完成
3.面向报文的
1.发送方UDP对应用层交下来的报文,直接添加首部后就下交给IP层,不合并也不拆分,保留报文边界
2.接收方UDP对IP层交上来UDP数据报,去除首部后就原封不动交付给上层应用进程,一次交付一个完整报文
3.报文不可分割,是UDP数据报处理的最小单位
2.UDP首部格式
1.两个部分
UDP首部和用户数据
2.UDP首部
0.有8个字节,4个字段组成,每个字段都是两个字节
1.源端口
在需要对方回信时选用,不需要可全用0
2.目的端口
在终点交付报文时必须使用到
3.长度
包括首部和数据,最小值是8(仅有首部)
4.校验和
校验整个UDP数据报,有错误就丢弃,可选字段
2.UDP校验
1.伪首部
1.计算校验和时,在UDP数据报之前增加12字节的伪首部
2.不是真正首部,临时添加的,得到临时UDP数据报,不向下传送,也不向上递交
3.这样的校验和,既检验了UDP数据报,又对IP数据报的源IP地址/目的IP地址校验
4.组成
图片
2.检验过程
1.在发送方
1.把全0放入校验和字段并添加伪首部
2.把UDP数据报看成由许多16位的字串连接起来,数据部分不够在末尾增加全0字节(不发送)
3.按 二进制反码 计算这些16位字的和,将此和的反码写入校验和字段
2.在接收方
1.把收到的UDP加上伪首部后,按二进制反码计算这些16位字的和
2.当无差错时其结果应全为1,否则有差错,丢弃这个UDP数据报
注意
1.填入的全0字节和伪首部一样,是不发送的
2.如果检验的是错误的,可以丢弃,也可以交付上层(附上错误报告)
3.通过伪首部,不仅可以检验源/目的端口号和UDP数据报的数据部分,还可以检验IP的源/目的地址
4.这种简单的差错检验方法的检错能力不强,但简单,处理速度快
3.TCP协议
1.TCP协议的特点
1.面向连接的传输层协议
2.每一条TCP只能有两个端点,只能是点对点的
3.提供可靠的交付服务,保证数据无差错,不丢失,不重复且有序
4.提供全双工通信,两端都设有发送缓存和接收缓存,临时存放双向通信的数据
5.面向字节流的,TCP把数据看成是一连串的无结构的字节流
2.TCP报文段
1.TCP传送的数据单元称为 报文段,分为TCP首部和TCP数据
2.首部前20字节固定,后面有4N字节的增加选项
3.TCP报文段可以运载数据,建立连接,释放连接,应答
4.各字段
1.源端口/目的端口
各占2字节,运输层的复用和分用功能通过端口实现
2.序号字段seq
占4字节,面向字节流,每一个字节都编上一个序号,其值是本报文的第一个字节的序号
3.确认号字段ack
占4字节,是期待收到对方的下一个报文段的数据的第一个字节的序号
确认号=N,表明序号N-1为止的所有数据已正确接收
4.数据偏移(首部长度)
占4位,就是首部长度,单位是4字节,15时为最大长度60字节
5.保留字段
占6位,今后使用,目前为0
6.紧急位URG(发送端)
当URG=1,紧急指针字段有效,尽快传送,需要和紧急指针配合使用, 数据第一个字节到紧急指针所指字节就是紧急数据
7.确认位ACK
当ACK=1有效,在连接建立后所有传送的报文段必须把ACK置1
8.推送位PSH(接收端)
接收TCP收到PSH=1的报文段,尽快交付接收应用进程,不再等到缓存满再上交
9.复位位RST
当RST=1,连接出现严重错误,必须释放连接,重新建立
10.同步位SYN
SYN=1是一个连接请求(ACK=0)/连接接收请求(ACK=1)
11.终止位FIN
释放一个连接,FIN=1表明数据已经发送完毕,要求释放传输连接
12.窗口字段
占2字节,指出现在允许对方发送的数据量,单位是字节
13.检验和
占2字节,包括数据和首部,和UDP一样加上12字节的伪首部,只需将UDP的协议字段的17改为6
14.紧急指针字段
占16位,指出紧急数据共有多少个字节,紧急数据在最前面
15.选项字节
长度可变,TCP最初只规定了一种:最大报文段长度(MSS),数据字段的最大长度
16.填充字段
为了使整个首部长度是4字节的整数倍
3.TCP连接管理
0.说明
1.连接解决的问题
1.使每一方明确知道对方的存在
2.允许双方协商一些参数(最大窗口值/时间戳选项/服务质量)
3.能够对运输实体资源(缓存大小/连接表中的项目)进行分配
2.TCP连接的端口叫套接字(Socket),端口拼接到IP地址
3.采用客户/服务器方式,主动发起连接建立叫 客户机,被动等待连接建立叫 服务器
1.连接建立 (三次握手)
0.字段
1.同步位SYN
SYN=1是一个连接请求(ACK=0)/连接接收请求(ACK=1)
2.序号字段seq
占4字节,面向字节流,每一个字节都编上一个序号,其值是本报文的第一个字节的序号
3.确认位ACK
当ACK=1有效,在连接建立后所有传送的报文段必须把ACK置1
4.确认号字段ack
占4字节,是期待收到对方的下一个报文段的数据的第一个字节的序号
确认号=N,表明序号N-1为止的所有数据已正确接收
5.终止位FIN
释放一个连接,FIN=1表明数据已经发送完毕,要求释放传输连接
1.客户机TCP向服务器TCP发送连接请求报文,不含应用层数据 SYN=1,seq=x(随机)
连接请求报文不携带数据,但消耗一个序号
2.服务器TCP收到后同意,发回确认,为该TCP连接分配缓存和变量 SYN=1,ACK=1,seq=y(随机),ack=x+1
确认报文不携带数据,也消耗一个序号
3.客户机收到后,还要给出确认,也要给该连接分配缓存和变量 SYN=0,ACK=1,seq=x+1,ack=y+1
可以携带数据,不携带数据则不消耗序号
注意
服务器资源在完成第二次握手分配的,客户端资源在完成第三次握手分配的, 使服务器易于受到SYN洪泛攻击(只发送大量请求而不进行确认)
2.连接释放 (四次挥手)
1.客户端发送连接释放报文段,停止发送数据,主动关闭TCP连接 FIN=1,seq=u(前面已传送数据的最后一个字节序号+1)
FIN报文段不携带数据,也要消耗一个序号
全双工可看成两条数据通路,发送FIN一端不能再发送数据,但对方可以发送
2.服务器收到后发出确认,客户到服务器这个方向连接就释放了(半关闭状态) ACK=1,seq=v(类似u),ack=u+1
3.服务器发送完数据,就发出连接释放报文段,主动关闭TCP连接 FIN=1,ACK=1,seq=w(中间又发送数据),ack=u+1(客户端一直未发送,期待序号不变)
4.客户机收到后必须发出确认,再等到时间等待计时器设置的2MSL后,连接彻底关闭 ACK=1,seq=u+1,ack=w+1
MST(最长报文段寿命)以防最后A的确认帧丢失,B收不到答复一直重传
注意
连接和释放的题目,ACK,SYN,FIN都等于1
4.TCP可靠传输
1.校验
和UDP校验机制一样,加上12字节的伪首部,只需将UDP的协议字段的17改为6
2.序号
1.首部序号字段保证数据有序提交给应用层,把数据看成无结构但有序的字节流
2.序号建立在字节流之上,不是建立在报文段之上
3.每一个字节都编上序号,序号字段的值是本报文段的第一个字节的序号
3.确认
1.确认号是期待收到对方的下一个报文段的数据的第一个字节的序号
2.发送方缓存区会继续存储那些已经发送但未收到确认的报文段,需要时重传
3.累计确认: 只确认数据流中至第一个丢失字节为止的字节
4.重传
0.两个时间导致重传
超时/冗余ACK
1.超时
1.自适应算法
0.TCP下层是互联网环境,选择的路由变化很大,传输层往返时间方差也很大
1.记录报文的往返时间RTT,保留RTT的一个加权平均往返时间RTTs
2.第一次RTTs就为RTT样本的值
3.以后的新RTTs = (1-a)*(旧的RTTs) + a*(新的RTT样本)
4.其中0≤a<1,当a接近0,新的RTTs和旧的变化不大,受新的RTT样本影响不大,推荐值0.125
2.超时重传时间RTO
1.略大于上面的RTTs,RTO = RTTs+4*RTTD
2.RTTD是RTT的偏差的加权平均值,第一次RTTD取RTT样本值的一半
3.以后新的RTTD = (1-b)*(旧的RTTD) + b*|RTTs-新的RTT样本|
4.b是<1的系数,推荐值是0.25
2.冗余ACK
0.问题
超时触发重传的问题是超时周期往往太长
1.冗余ACK
再次确认某个报文段的ACK,而发送方先前已经收到该报文段的确认
2.快速重传
1.TCP规定每当比期望序号大的失序报文段到达,发送一个冗余ACK,指明下一个期待字节的序号
2.当发送方收到对同一个报文段的3个冗余ACK,可以认为这个被确认报文段之后的报文段丢失
5.TCP流量控制
1.接收窗口rwnd
1.接收方根据自己接收缓存的大小,动态调整发送方的发送窗口大小
2.调整TCP报文首部的"窗口"字段值,限制发送方注入报文的速率
2.拥塞窗口cwnd
发送方对当前网络拥塞程序的估计确定的窗口值,与带宽和时延有关
发送窗口大实际大小取rwnd和cwnd的最小值
3.传输层和数据链路层区别
1.传输层定义端到端用户的流量控制,窗口大小可动态变化
2.数据链路层定义两个中间相邻结点的流量控制,窗口大小不变
6.TCP拥塞控制
0.说明
拥塞控制就是防止过多的数据注入网络,使网络中的路由器/链路不致过载
1.慢开始和拥塞避免
1.慢开始算法
1.先令拥塞窗口cwnd=1(一个最大报文段长度MSS)
2.每收到一个报文的确认后,将cwnd+1(成倍增加,指数增长)
3.一直增大到一个规定的慢开始门限ssthresh(阈值),改用拥塞避免算法
2.拥塞避免算法
1.发送端cwnd每经过一个RTT就增加一个MSS,不是加倍,线性增长(加法增大)
2.出现一次超时(网络拥塞),令慢开始门限ssthresh等于当前cwnd的一半(乘法减小)
3.网络拥塞的处理
1.方法
1.出现一次超时(网络拥塞),令慢开始门限ssthresh等于当前cwnd的一半(不能小于2)
2.把拥塞窗口cwnd重新设置为1,执行慢开始算法
2.目的
迅速减少主机发送到网络的分组数,使路由器有足够时间把积压的分组处理完毕
4.图示过程
图片
2.快重传和快恢复
1.快重传
1.快重传用冗余ACK检测丢包的发生,也可用于网络拥塞的检测(丢包可能出现拥塞)
2.快重传并非取消重传计时器,而是在某些情况下更早重传丢失的报文段
3.连续收到三个重复的ACK报文,直接重传,不必等待重传计时器
2.快恢复
1.发送端收到连续三个冗余ACK,执行乘法减小,把ssthresh设置为cwnd的一半
2.与慢开始不同,它把cwnd的值设置为ssthresh改变后的数值,再执行加法增大
3.由于跳过了cwnd从1起始的慢开始过程,所以称为快恢复
注
1.流量控制中,发送方发送数据的量由接收方决定
2.拥塞控制中,发送方自己通过检测网络状况决定
3.几种算法同时应用在拥塞控制机制中,发送方检测到超时,采用慢开始和拥塞避免, 发送方接收到冗余ACK,采用快重传和快恢复
4.发送方发送窗口的实际大小由流量控制和拥塞控制共同决定(较小的)
第六章 应用层
1.网络应用模型
1.客户/服务器C/S模型
1.服务器
0.提供计算服务的设备
1.永久提供服务,被动地等待接收客户的请求,不需要知道客户程序的地址
2.永久性访问地址/域名
2.客户机
0.请求计算服务的主机
1.与服务器通信,使用服务器提供的服务
2.间歇性接入网络
3.可能使用动态IP地址
4.不与其他客户机直接通信
3.应用
web/文件传输FTP/远程登录/电子邮件
4.特点
1.各计算机低位不平等,服务器通过对用户权限的限制管理客户机,使它们不能随意存储/删除数据
2.客户机相互之间不直接通信
3.可扩展性不佳,受服务器硬件和网络带宽的限制,支持的客户机数有限
2.P2P模型
1.思想
整个网络的传输内容不再保存在中心服务器上,每个结点同时具有下载/上传功能,权利/义务大致对等
2.本质
仍然是客户/服务器方式,每个结点既是客户,也是服务器
3.应用
PPLive/Bittorrent/电驴
4.优点
1.减轻服务器的计算压力,消除对某个服务器的完全依赖,将任务分配到各个结点上
2.多个客户机之间可以直接共享文档
3.可扩展性好,网络健壮性强,单个结点的失效不会影响其他部分的结点
5.缺点
1.获取服务的同时,还要给其他结点提供服务,占用较多的内存,影响整机速度
2.经常进行P2P下载对硬盘造成较大的损伤
3.P2P程序已占据互联网50%-90%的流量,网络非常拥塞,各大ISP反对P2P应用
2.DNS系统
0.作用
把主机名转换为IP地址
1.层次域名空间
1.域名
任何一个主机/路由器都有唯一的层次结构的名字
2.域
1.名字空间中一个可被管理的划分
2.域可划分为子域,子域可划分为子域的子域
3.每一个域名由标号序列组成,各标号用 . 隔开
3.标号
1.标号中的英文不区分大小写
2.标号中除了连字符(-)外不能使用其他的标点符号
3.每一个标号不超过63个字符,多标号组成的完整域名不超过255个字符
4.级别最低的域名写在最左边,级别最高的写在最右边
4.三类顶级域名
1.国家顶级域名nTLD
国家和某些地区的域名: .cn中国/.us美国/.uk英国
2.通用顶级域名gTLD
.com公司企业/.net网络服务机构/.org非营利性的组织/.gov美国政府部门
3.基础结构域名
只有一个,arpa,用于反向域名解析(反向域名)
5.二级域名
1.类别域名
ac,com,edu,gov,mil,net,org
2.行政区域名
用于我国各省/自治区/直辖市 bj,js
6.三级域名
www/mail
2.域名服务器
0.说明
1.域名系统是一个联机分布式的数据库系统,用客户/服务器模型
2.一个服务器管辖的范围称为区(不是以域为单位),一个区内结点必须连通
3.每个区设置相应的权限域名服务器,保存该区所有域名到IP地址的映射,还具有连向其他域名服务器的信息
4.当自己不能转换时,知道到什么地方去找别的域名服务器
5.层次方式组织,没有一台具有因特网上所有主机的映射,映射分布在所有DNS服务器上
1.根域名服务器
1.知道所有顶级域名服务器的IP地址
2.不管哪个本地域名服务器,只要自己无法解析,首先求助于根域名服务器
3.并不直接把域名直接转换成IP地址,而是告诉本地域名服务器下一步去哪个顶级域名服务器进行查询
2.顶级域名服务器
1.负责管理在其服务器注册的所有二级域名
2.给出相应的回答,可能是最后的结果,也可能是下一步应当查找的域名服务器IP地址
3.授权域名服务器
1.能够将其管辖的主机名转换为该主机的IP地址
2.每一个主机必须在授权域名服务器处登记,一个主机最好至少有两个授权域名服务器
4.本地域名服务器
本地网络提供商负责的域名服务器
3.域名解析过程
1.域名解析
把域名映射为IP地址(正向解析)/把IP地址映射为域名(反向解析)
2.两种解析方式
1.递归查询(靠别人)
1.由查询的服务器发起下一次的查询
2.给根域名服务器造成的负载过大,几乎不使用
2.递归与迭代结合(靠自己)
0.除第一次查询外,其余均由本地域名服务器向外查询
1.主机向本地域名服务器的查询--递归查询
2.本地域名服务器向根域名服务器的查询--迭代查询
两种解析方式工作原理
图片
3.高速缓存
1.为了提高DNS的查询效率,减少DNS查询报文数量,域名服务器中广泛使用了高速缓存
2.DNS服务器接收到DNS查询结果时,将DNS信息缓存在高速缓存中
3.主机名和IP地址的映射不是永久的,DNS服务器一端时间后丢弃高速缓存中的信息
3.文件传输协议FTP
1.FTP的工作原理
1.特点
1.提供交互式的访问,允许客户指明文件的类型与格式,允许文件具有存取权限
2.屏蔽各计算机的细节,适用于异构网络中任意计算机之间传送文件
3.采用客户/服务器方式,使用TCP可靠传输,可同时为多个客户进程提供服务
2.功能
1.提供不同种类主机系统之间的文件传输能力
2.以用户权限管理的方式提供用户对远程FTP服务器的文件管理能力
3.以匿名FTP方式提供公共文件共享的能力
3.两大部分
1.一个主进程
负责接收新的请求
2.若干个从属进程
负责处理单个请求
4.工作步骤
1.打开熟知端口21(控制端口),使客户进程能够连接上
2.等待客户进程发连接请求
3.启动从属进程处理客户进程发来的请求,主进程和从属进程并发执行,从属进程处理完毕后即终止
4.回到等待状态,继续接收其他客户进程的请求
2.控制连接与数据连接
0.说明
1.FTP工作时使用两个并行的TCP连接,控制连接(端口号21)和数据连接(端口号20),使协议简单易实现
2.主动方式使用TCP20端口,被动方式由服务器和客户端自行协商决定(端口>1024)
1.控制连接
1.传输控制信息,以7位ASCII格式传送,不用于传送文件
2.在传输文件时可以使用控制连接(中止传输的命令),控制连接在整个会话期间一直打开
2.数据连接
1.控制进程接收到FTP客户的文件传输请求后,创建数据传送进程和数据连接
3.带外传送(Out-of-band)
FTP使用分离的控制连接,FTP的控制信息也称带外传送
4.修改服务器文件
先将此文件传送到本地主机,再将修改后的文件副本传送到原服务器
5.网络文件系统NFS
允许进程打开一个远程文件,在该文件某个特定位置开始读写数据,复制大文件中一个小的片段
4.电子邮件
1.电子邮件系统的组成结构
1.用户代理UA
用户与电子邮件系统的接口,具有撰写/显示/邮件处理/通信功能,运行在PC上的程序Outlook/Foxmail
2.邮件服务器
核心,发送和接收邮件,向发信人报告邮件传送情况,客户/服务器方式,同时充当客户和服务器
3.电子邮件使用的协议
1.邮件发送协议:SMTP
"推"的通信方式,SMTP客户端主动将邮件推到SMTP服务器端
2.邮件读取协议:POP3
"拉"的通信方式,用户代理向邮件服务器发出请求,拉取用户邮箱中的邮件
2.电子邮件格式与MIME
1.电子邮件格式
1.信封
用户写好首部后,系统自动将信封所需信息提取到信封上,不用用户亲自填写
2.内容
1.首部
1.包含一些首部行,由一个关键字后跟 冒号 再后跟 值 组成
2.To:
必需的,后面填入一个/多个收件人的电子邮件地址,格式: 收件人邮箱名@邮箱所在主机的域名
3.Subject:
可选,邮件的主题,反应主要内容
4.From:
必填,由系统自动填入
5.首部和主体之间用一个空行进行分割
2.主体
用户自由撰写
2.MIME(多用途网际邮件扩充)
1.SMTP的缺点
1.只能传送7位的ASCII码,其他非英语国家的文字无法传送
2.无法传送可执行文件/其他二进制对象
3.SMTP服务器拒绝超过一定长度的邮件
2.MIME意图
1.并没有改动SMTP或取代它,继续使用目前的格式,增加了邮件主体的结构
2.定义了传送非ASCII码的编码规则,可在现有的电子邮件程序和协议下传送
3.三部分内容
1.五个新的邮件首部字段
MIME版本/内容描述/内容标识/内容传送编码/内容类型
2.定义许多邮件内容的格式,对多媒体电子邮件的表示方法标准化
3.定义了传送编码,可对任何内容格式进行转换,不会被邮件系统改变
3.SMTP协议和POP3协议
1.SMTP协议
1.特点
1.提供可靠有效的电子邮件传输协议,客户/服务器方式,使用TCP连接,端口号25
2.通信三阶段
1.连接建立
SMTP不使用中间的邮件服务器,TCP连接总是在发送方和接收方直接建立,不管多远
2.邮件传送
RCPT(收件人recipient缩写)命令的作用: 弄清接收方是否做好接收邮件的准备, 不至于发送了很长的邮件,才知道地址是错误的
3.连接释放
邮件发送完,SMTP客户发送QUIT命令,服务器返回"221"同意释放TCP连接
2.POP3协议
1.特点
非常简单,功能有限的邮件读取协议,拉取邮件,客户/服务器,TCP协议,端口号110
2.两种工作方式
下载并保留/下载并删除模式
3.IMAP协议
1.比POP协议复杂,可以看到首部,当用户需要时,该邮件才上传到用户计算机中
2.可以让用户在不同的地方使用不同的计算机随时处理邮件,还允许只读取某一部分
4.基于万维网的电子邮件
1.用户浏览器与邮件服务器之间发送/接收邮件使用HTTP协议,仅在不同邮件服务器之间使用SMTP协议
5.万维网WWW
1.WWW的概念与组成结构
1.定义
1.万维网是一个资料空间,无数个网络站点和网页的集合,客户/服务器方式
2.一样有用的东西称为 资源,由一个全域"统一资源定位符"(URL)唯一标识
3.资源通过超文本传输协议(HTTP)传送给使用者,使用者通过点击链接获取资源
2.万维网的内核部分
1.统一资源定位符(URL)
负责标识万维网的各种文档,使每个文档在整个万维网具有唯一的标识符
2.超文本传输协议(HTTP)
应用层协议,使用TCP进行可靠传输
3.超文本标记语言(HTML)
1.是一种文档结构的标记语言,使用一些约定的标记对页面上的各种信息/格式进行描述
2.设计者很方便用一个超链接从本页面的某处链接到因特网的任何一个万维网页面
3.统一资源定位符(URL)
1.定义
对可以得到的资源的位置和访问方法的简洁的表示,相当于文件名在网络范围的扩展
2.一般形式
<协议>://<主机>:<端口>/<路径>
端口和路径可省略
3.常见的协议
http,ftp
4.主机
存放资源的主机在因特网中的域名/IP地址
2.超文本传输协议HTTP
0.说明
1.定义
HTTP定义了浏览器怎样从万维网服务器请求万维网文档/服务器怎样把文档传送浏览器
2.层次
HTTP面向事务,规定在浏览器和服务器之间的请求和响应的格式和规则
1.HTTP操作过程
1.执行过程
1.浏览器访问www服务器,首先对服务器的域名解析
2.一旦获得了服务器的IP地址,通过TCP向服务器发送连接建立请求
2.工作过程
1.每个万维网站点有一个服务器进程,不断监听TCP的端口80(默认),监听到连接请求,建立连接
2.连接建立后,浏览器向服务器发送请求获取某一web页面的HTTP请求
3.服务器收到请求,构建请求web页面的必需信息,通过HTTP响应返回给浏览器
4.浏览器将信息进行解释,将web页显示给用户,最后,TCP连接释放
2.HTTP协议特点
1.无状态的
1.同一客户第二次访问同一服务器与第一次相同,服务器不记得这个客户
2.简化了服务器的设计,使服务器更容易支持大量并发的HTTP请求
2.Cookie
1.一个存储在用户主机中的文本文件,含有一串识别码,用于web服务识别用户
2.使用Cookie+数据库方式跟踪用户的活动
3.根据Cookie能从数据库中查询该用户的活动记录,执行一些个性化工作
3.本身是无连接的
1.采用TCP作为运输层协议,保证数据的可靠传输,HTTP不必考虑数据被丢弃怎样重传
2.通信的双方在交换HTTP报文之前不需要先建立HTTP连接
4.非持久连接close
1.每一个网页元素对象的传输都需要单独建立一个TCP连接
2.请求一个万维网文档所需时间= 该文档传输时间+两倍往返时间RTT
3.一个RTT用于TCP连接,另一个用于请求和接受文档
4.持久连接keep-alive
1.万维网服务器在发送响应后仍然保持这条连接,可以继续上传HTTP请求
2.两种方式
1.非流水线(类似停等协议)
1.客户在收到前一个响应后才能发送下一个请求
2.每个引用必须有1个RTT延迟
2.流水线(类似后退N帧)
1.客户每遇到一个对象引用就立即发送一个请求,连续发送
2.若所有请求连续发送,所有对象共计经历1个RTT延迟
3.HTTP报文结构
1.HTTP面向文本,报文中每个字段都是一些ASCII码串,长度不确定
2.两类报文
1.请求报文
1.开始行(请求行)
1.方法
对请求对象的操作(一些命令)
2.请求资源的URL
3.HTTP版本
以空格分隔,最后的CR LF为回车 换行
2.首部行
说明浏览器/服务器/报文主体的一些信息,可以有好几行,每行都有首部字段名和它的值, 每一行结束有回车/换行,整个首部结束,有一空行和后面的实体主体分开
3.主体行
通常不用
2.响应报文
1.开始行(状态行)
版本/状态码/短语/CRLF
2.首部行
3.主体行
也可能没有这个字段
第七章 网络管理
1.网管概述
1.目的
对组成网络的各种硬软件设施的综合管理,以达到充分(优化)利用这些资源的目标
2.对象
网络设备/主机
3.方法
收集/分析/配置参数
4.必要性
1.单机性能问题
软件本身/系统设置/配置/系统工具+人工
2.网络性能问题
影响因素众多,网络应用、网络流量、设备的运行状况等
3.用户视角
价廉物美地使用网络,快捷可靠传输信息,丰富资源
4.运营商视角
资源(带宽和设备缓存)充分利用
5.企业组网者
满足应用需求,成本(资源利用率)
5.实质
对各种网络资源状态及其使用进行监测、控制和记录,并在网络出现故障时, 及时报告和处理,向管理员报警,以便尽快维护
6.关键
获取网络设备的工作状态
7.问题
设备依赖于厂商,不同厂商具有不同的数据采集方法
8.解决方法
标准化: 网络普及和多厂商设备(异构性)融合,导致标准化的需求
9.标准化目的
统一管理的对象,定义为支持管理而需要交换的数据单元的格式和交换时序
2.ISO网络管理标准化
1.网络管理的功能
1.配置管理
定义、监测和管理系统的配置参数,使得网络资源可用、性能较优
2.故障管理
对网络设备进行监控,包括故障检测、隔离和恢复;必要时通知系统管理员,进行人工干预
3.计费管理
记录网络资源的使用情况,统计已被使用的网络资源和估算用户应付的费用
4.性能管理
收集和统计网络系统的数据(如网络的吞吐量、用户响应时间和网络资源的利用率等),以便根据统计信息来评价网络资源的使用等系统性能,分析系统资源的使用趋势,或者平衡系统资源的负载
5.安全管理
资源的授权管理、访问控制管理、安全检查跟踪和事件处理、密钥管理(密钥分配)等
2.网管的体系结构
1.网管面向用户,属OSI应用层服务
2.微观
网管涉及所有层次,因此,每层均设置对应实体;各层管理实体协作,保证本层协议/功能正常运行/提供
3.宏观
1.ISO/OSI的SAME分管理员和代理两类实体
2.管理员
负责对整个网络的资源进行管理
3.代理
驻留在被管对象上,响应管理员的指令
4.管理员和代理之间遵循公共管理信息协议(CMIP)
3.网管的基本模型
1.网络管理工作站
运行网管软件,收集被管网络设施的信息,进行汇总分析和反馈
2.被管结点
网络交换设备、集中器、线路设备、用户结点等
运行网管(代理)软件,将被管设备的信息通过网络管理协议提供给管理工作站, 包括主动监测和记录故障并报于管理工作站
3.管理信息库
保存为网络管理目的而收集的信息
4.网络管理协议
支持网管工作站(网管软件)和被管结点(代理软件)之间的数据交换
模型

4.信息获取方式
1.主动轮询
1.定义
工作站周期性地轮询被管设备
2.问题
1.轮询间隔的设置
长—及时性不好,短—占用资源多
2.轮询顺序
设备之间的相互影响
3.灾难响应
实时性略欠,主动性不足
2.被动中断(自陷)
1.定义
被管设备主动传递数据
2.问题
1.传递周期设置
可能消耗资源
2.设备故障数据的可传递性(优先级)
3.简单网络管理协议SNMP
0.两个工作组
1.管理信息库(MIB)工作组
负责定义交换的元素及结构(对象)
2.网络管理协议(SNMP)工作组
定义管理实体之间交换的协议(交换的方式、格式和时序)
1.SNMPv1
1.集中管理模式
1.一个管理员管理多个代理
2.前者监控网络元素的状态
3.后者借助管理代理(Agent)执行网络管理的指令
2.自陷能力的轮询机制
1.目的
为了使一个管理员可以管理多个代理,同时,代理又可以主动报告出现的问题
2.过程
1.管理员和代理之间主要以请求/应答方式工作
2.管理员周期性向代理发出“请求”指令,获取/设置网络元素的参数
3.代理向管理员返回“应答”响应,报告“请求”的执行结果
4.如果代理发现设备故障,主动向管理员报警(自陷)
3.分工
1.为了使得管理工作可以延续,管理员和代理分别维护全局和本地数据库(管理信息库—MIB)
2.本地数据库保存结点的参数及运行状况
3.中心数据库保存全网(或者区域)的设备参数等
3.端口
1.SNMP作用于应用层,利用UDP的两个端口(161和162)实现管理员和代理之间的管理信息交换
2.
知识框架
计网中英对照/框架
1.计算机网络体系结构
1.按分布范围分类
1.广域网(WAN)
Wide Area Network
2.城域网(MAN)
Metropolitan Area Network
3.局域网(LAN)
Local Area Network
4.个人区域网(PAN)
Personal Area Network
2.性能指标
1.往返时延(RTT)
Round-Trip Time
3.分层结构
1.服务数据单元(SDU)
Service Data Unit
2.协议控制信息(PCI)
Protocol Control Information
3.协议数据单元(PDU)
Protocol Data Unit
2.物理层
1.通信基础
1.信道
单工/半双工/全双工
2.定理
1.奈氏准则
理想低通信道下的 极限码元传输率为2W Baud,极限数据传输率= 2Wlog₂V
W:理想低通的带宽
V: 每个码元离散电平的数目(有多少种不同的码元)
2.香农定理
带宽受限且有高斯白噪音干扰的 极限数据传输速率=Wlog₂(1+S/N)
W: 信道带宽
S: 传输信号的平均功率
N: 信道内部的高斯噪音功率
S/N为信噪比=10lg(S/N)(单位:dB)
3.调制与编码
1.编码
将数据变换为数字信号
什么样的数字信号表示0/1
2.调制
将数据变换为模拟信号
3.数字数据编码为数字信号
非归零码/曼彻斯特编码/差分曼彻斯特编码/4B/5B编码
4.数字数据调制为模拟信号
调幅/调频/调相/调幅+调相
5.模拟数据编码为数字信号
抽样,量化,编码
6.模拟数据调制为模拟信号
频分复用技术(FDM)
4.传输方式
1.电路交换
两结点之间建立一条专用的物理通信路径,传输期间一直独占
2.报文交换
无须建立专门连接,数据交换的单位是报文(携带源/目的地址),采用存储转发方式
3.分组交换
采用存储转发,限制每次传送数据块大小的上限,加上一些控制信息,构成分组(Pocket)
5.分组交换
1.数据报
分组之间可能存在不同路径,各个分组分别转发
2.虚电路
在发送方和接收方建立一条逻辑上相连的虚电路,分组沿虚电路传输
2.传输介质
1.无线
无线电波/微波/红外线/激光
2.有线
1.双绞线
1.屏蔽双绞线(STP)
Shielded Twisted Pair
2.非屏蔽双绞线(UTP)
Unshielded Twisted Pair
2.同轴电缆/光纤
3.物理层设备
1.中继器
将信号整形放大再转发出去,消除信号的失真和衰减问题,具有5-4-3规则
1.集线器(Hub)
实质是多端口中继器,对信号进行放大后发到其他所有端口
3.数据链路层
1.功能
为网络层提供服务/链路管理/帧定界/帧同步和透明传输/流量控制和差错控制
2.组帧
1.字符计数法
在帧头部用一个计数字段来标明帧内字符数,包含自身所占用的一个字节
2.字符填充的首尾定界符法
用一些特定的字符来定界一帧的开始(DLE STX)和结束(DLE ETX),在特殊字符前填充转义字符(DLE)加以区分
3.比特填充的首尾标志法
用01111110标志一帧的开始和结束,为了不误判,遇到连续5个"1",自动在后面插入一个"0"
4.违规编码法
低高为0,高低为1,用高高,低低表示开始和结束
3.差错控制
1.编码技术进行差错控制
1.自动重传请求(ARQ)
Automatic Repeat reQuest
接收端检测出差错,设法通知发送端重发,直到正确为止
2.前向纠错(FEC)
Forward Error Correction
接收端不但能发现差错,并且能确定错误位置加以纠正
2.检错编码
1.奇偶检验码
2.循环冗余校验(CRC)
Cyclic Redundancy Check
1.给定一个多项式G(x)(最高位和最低位必须为1),假设其阶数为r(总位数-1)
G(x)=1101,r=3
2.加0
在帧的低位端加r个0
3.模2除
加法不进位,减法不借位(异或操作:相同为0,不同为1),得到余数为冗余码(共r位,前面的0不可忽略)
3.纠错编码
海明码
0.说明
1.从左到右依次编号(从1开始),编号为2的幂的位(1,2,4,8)是校验位,其余位填入m位数据
2.海明不等式:2^r ≥m+r+1
m个信息位,r个检验位
3.Px:校验码, Dx:数据码
P1,P2,D1,P3, D2, D3, D4
01,10,11,100,101,110,111
1.编码原理
1.确定校验位需要校正的位数
写出所有位的二进制数,与校验位的1在同一位置的1对应的数据即为校验位要校验的位数
P1: D1,D2,D4
P2: D1,D3,D4
P3: D2,D3,D4
2.确定校验位的数据,得到海明威码
令校验位与其对应的所有位异或=0,得到校验位
P1⊕D1⊕D2⊕D4 =0
2.如何纠错
1.令所有校验码与其对应的所有位进行异或,得到结果(如0,1,1)
2.将结果 从高到低 排列110,换算为十进制即第6位数据出错,取反即纠正
3.特点
能发现双比特错误,但只能纠正单比特错误
4.可靠传输
使用确认和超时重传机制保证可靠传输
5.流量控制
1.停止等待协议
发送方每发送一帧,要等待接收方的应答信号,才能发送下一帧,否则一直等待
发送窗口=1,接收窗口=1
2.后退N帧协议(GBN)
Go-Back-N
发送方一次可发送N帧,按序接收,重传从最后一个确认开始
发送窗口>1,接收窗口=1
3.选择重传协议(SR)
Selective Repeat
发送方一次可发送N帧,可不按序接收,重传没有确认的帧
发送窗口>1,接收窗口>1
6.介质访问控制
0.介质访问控制(MAC)子层
Medium Access Control
即使是广播通信,都可以通过介质访问控制机制变为点对点的通信,所以数据链路层研究点到点通信
1.信道划分
0.实质
通过分时/分频/分码把原来的一个广播信道,逻辑上分为几条子信道,实际上把广播信道转变为点对点信道
1.频分多路复用(FDM)
Frequency-division Multiplexing
将多路基带信号调制到不同频率载波上,再叠加形成一个复合信号
仅共享时间
2.时分多路复用(TDM)
1.定义
将一条物理信道按时间分成若干个时间片,每个时间片由复用的一个信号占用
1.统计时分多路复用(STDM)
采用STMD帧,不是固定分配时隙,按需动态分配时隙,提高利用率
仅共享空间
3.波分多路复用(WDM)
光的频分多路复用,一根光纤传输多种不同波长(频率)的光信号,互不干扰
4.码分多路复用(CDM)
1.码分多址(CDMA)
Code Division Multiple Access
1.定义
1.每比特时间被分为m个更短的时间槽(芯片Chip),通常有64/128个芯片
2.每个站点被指定唯一的m位的代码/芯片序列
3.发送1时就发送芯片序列,发送0时就发送芯片序列的反码
4.两个或多个站点同时发送时,各路数据被 线性相加
5.为分离出各路信号,要求各个站点的芯片序列是相互正交的
2.过程
1.设向量S是A站的码片向量,T是B站的码片向量
2.S和T的规格化内积=0: S*T=0
两个向量的内积/向量的分量的个数
3.A站发1,B站发0,叠加后为(S-T)
4.到达C站,要得到A站数据,让S与(S-T)规格化内积: S*(S-T)
5.到达C站,要得到B站数据,让T与(S-T)规格化内积: T*(S-T)
3.惯例
1.将序列中的0写为-1,将1写为+1,结果得到-1表示0
靠不同的编码来区分各路原始信号
既共享时间,又共享空间
2.随机访问
0.实质
既不共享时间,也不共享空间,实质是将广播信道转化为点到点通信
1.ALOHA协议
Additive Link On-line HAwaii system
1.纯ALOHA
不检测直接发送,若无确认则等待重发
2.时隙ALOHA
将时间划分为若干等长时隙,按时发送
2.载波侦听多路访问(CSMA)
Carrier Sense Multiple Access
1. 1-坚持
闲则发送,忙则继续监听
2. 非坚持
闲则发送,忙则等待一个随机时间再听
3. p-坚持
闲则以概率p发送,1-p等待下一个时隙 忙则等待一个随机时间再听
3.载波侦听多路访问/碰撞检测(CSMA/CD)
Collision Detection
1.流程
(有线)先听后发,边听边发,冲突停发,随机重发
2.碰撞解决
二进制指数退避算法
4.载波侦听多路访问/碰撞避免(CSMA/CA)
Collision Avoidance
1.碰撞避免
(无线)预约信道,ACK帧,RTS/CTS帧
2.碰撞解决
二进制指数退避算法
3.轮询访问
令牌传递协议,只有得到令牌才能发送数据,其他必须等待
7.局域网
1.两个子层
1.逻辑链路控制LLC子层
logical link control
负责识别网络层协议,对它们进行封装,为网络层提供服务
2.介质访问控制MAC子层
Medium Access Control
屏蔽不同物理链路种类的差异性,提供对物理层的统一访问接口
2.以太网
1.网络接口卡(网卡 NIC)
Network Interface Card
计算机与外界局域网的连接是通过主机箱内插入一块网络接口板
3.无线局域网
1.基本服务集(BSS)
Basic Service Set
无线局域网最小构件,包括一个基站和若干移动站
2.接入点(AP)
Access Point
基本服务集中的基站,作用和网桥类似
3.扩展服务集(ESS)
Extended Service Set
一个基本服务集通过接入点AP连接到一个主干分配系统,再接入另一个BSS
8.广域网
1.点对点协议(PPP)
Point-to-Point Protocol
面向字节,用字节填充法,只支持全双工链路,不可靠
2.高级数据链路控制(HDLC)
High-level Data Link Control
面向比特,用0比特填充法,帧分为信息帧/监督帧/无编号帧,全双工,可靠
9.设备
1.网桥
1.特点
把两个或多个以太网连接变成一个网段
2.类型
1.透明网桥
不是最佳路由,按照自学习算法填写转发表,按转发表转发
2.源路由网桥
最佳路由,先发送发现帧,按返回结果转发
2.交换机
1.特点
实际就是一个多端口网桥
2.交换方式
1.直通式
只检查目的地址,接收后马上转发,速度快,安全性差,无法支持不同速率端口交换
2.存储转发式
缓存到高速缓冲器中,检查数据正确后发送,帧有错丢弃,可靠性高,支持不同速率端口,延迟大
相同点
按MAC地址转发,都隔离冲突域,不能隔离广播域
4.网络层
1.功能
异构网络互联/路由与转发/拥塞控制
2.路由算法
静态/动态
3.路由层次
1.概念
因特网将整个互联网划分为较小的自治系统(包含很多局域网),每个自治系统自主决定采用何种路由选择协议
2.协议
内部/外部网关协议
4.IPv4
1.首部
固定部分共20B
2.网络地址转换(NAT)(传输层)
Network Address Translation
将专用网络地址转换为公用网络地址,对外隐藏了内部管理的IP地址
3.子网划分
采用子网掩码对物理子网再一次进行子网划分
4.子网掩码
一串1和0组成,1对应网络号和子网号,0对应主机号
5.无分类域间路由选择(CIDR)
Classless Inter-Domain Routing
在变长子网掩码基础上消除A,B,C类网络划分,在软件支持下实现超网构造
6.路由聚合
1.概念
将网络前缀相同的连续IP地址组成"CIDR地址块"
2.目的
使得一个地址块可以表示很多地址,较少路由表表项/路由器间的信息交换
3.方法
把一串IP地址写为二进制表示,取最长的公共前缀作为网络号
7.协议
1.地址解析协议(ARP)(网络层)
Address Resolution Protocal
对于特定的IP地址,查询其对应的物理地址
2.动态主机配置协议(DHCP)(应用层)
Dynamic Host Configuration Protocol
给网络中的主机动态分配IP地址,基于UDP
3.网际控制报文协议(ICMP)(IP层)
Internet Control Message Protocol
给主机/路由器报告差错/异常情况
5.IPv6
首部40B,地址长度16B,解决IPv4的地址耗尽问题
6.路由协议
0.自治系统(AS)
Autonomous System
1.内部网关协议(IGP)
Interior Gateway Protocol
1.路由信息协议(RIP)(应用层)
Routing Information Protocol
基于距离向量,使用UDP,与相邻路由器交换整个路由表
2.开放最短路径优先(OSPF)(网络层)
Open Shortest Path First
基于链路状态,使用IP,与全部路由器交换相邻结点链路状态
2.外部网关协议(EGP)
External Gateway Protocol
1.边界网关协议(BGP)(应用层)
Border Gateway Protocol
基于路径向量,使用TCP,寻找的并非最佳路径
7.IP组播
1.概念
在发送者和每一接收者之间实现点对多点网络连接,应用UDP协议,使用D类地址
2.网际组管理协议(IGMP)
Internet Group Management Protocol
使路由器知道组播组成员的信息
8.移动IP
1.概念
移动结点以固定的网络IP地址,实现跨越不同网段的漫游功能,保证基于网络IP的网络权限在漫游过程中不发生改变
2.组成
移动结点,本地代理,外部代理
9.路由器
1.特点
连接异构网络,完成路由转发,隔离冲突域和广播域,依照IP地址转发
2.组成
1.控制部分
路由选择处理机,根据路由协议构造与维护路由表
2.分组转发部分
交换结构,一组输入端口和一组输出端口
5.传输层
1.提供服务
进程间的逻辑通信/复用和分用/差错检测/面向连接的TCP和无连接的UDP
2.UDP协议
0.用户数据报协议(User Datagram Protocol)
1.特点
无连接/首部开销小/最大努力交付/应用层保证可靠性
2.首部
8B,分别为源端口号/目的端口号/长度/检验和
3.检验
采用首部/伪首部/数据进行 二进制反码运算求和再取反
3.TCP协议
0.传输控制协议(Transmission Control Protocol)
1.特点
有连接/一对一/提供可靠交付/全双工通信/面向字节流
2.首部
20B,源端口/目的端口/序号/确认号等控制信息
3.连接管理
三次握手建立,四次握手释放
1.连接建立 (三次握手)
0.字段
1.同步位SYN
SYN=1是一个连接请求(ACK=0)/连接接收请求(ACK=1)
2.序号字段seq
占4字节,面向字节流,每一个字节都编上一个序号,其值是本报文的第一个字节的序号
3.确认位ACK
当ACK=1有效,在连接建立后所有传送的报文段必须把ACK置1
4.确认号字段ack
占4字节,是期待收到对方的下一个报文段的数据的第一个字节的序号
确认号=N,表明序号N-1为止的所有数据已正确接收
5.终止位FIN
释放一个连接,FIN=1表明数据已经发送完毕,要求释放传输连接
1.客户机TCP向服务器TCP发送连接请求报文,不含应用层数据 SYN=1,seq=x(随机)
连接请求报文不携带数据,但消耗一个序号
2.服务器TCP收到后同意,发回确认,为该TCP连接分配缓存和变量 SYN=1,ACK=1,seq=y(随机),ack=x+1
确认报文不携带数据,也消耗一个序号
3.客户机收到后,还要给出确认,也要给该连接分配缓存和变量 SYN=0,ACK=1,seq=x+1,ack=y+1
可以携带数据,不携带数据则不消耗序号
注意
服务器资源在完成第二次握手分配的,客户端资源在完成第三次握手分配的, 使服务器易于受到SYN洪泛攻击(只发送大量请求而不进行确认)
2.连接释放 (四次挥手)
1.客户端发送连接释放报文段,停止发送数据,主动关闭TCP连接 FIN=1,seq=u(前面已传送数据的最后一个字节序号+1)
FIN报文段不携带数据,也要消耗一个序号
全双工可看成两条数据通路,发送FIN一端不能再发送数据,但对方可以发送
2.服务器收到后发出确认,客户到服务器这个方向连接就释放了(半关闭状态) ACK=1,seq=v(类似u),ack=u+1
3.服务器发送完数据,就发出连接释放报文段,主动关闭TCP连接 FIN=1,ACK=1,seq=w(中间又发送数据),ack=u+1(客户端一直未发送,期待序号不变)
4.客户机收到后必须发出确认,再等到时间等待计时器设置的2MSL后,连接彻底关闭 ACK=1,seq=u+1,ack=w+1
MST(最长报文段寿命)以防最后A的确认帧丢失,B收不到答复一直重传
注意
连接和释放的题目,ACK,SYN,FIN都等于1
4.可靠传输机制
1.校验
和UDP校验机制一样,加上12字节的伪首部,只需将UDP的协议字段的17改为6
2.序号
用来保证数据有序提交给应用层
3.确认
确认号为期待收到的下一个报文段的第一个字节的序号
4.重传
1.超时
计时器到期还没收到确认则重传对应报文
2.冗余确认
当收到失序报文时向发送端发送冗余ACK,发送端收到3次后重传
5.流量控制
在确认报文中设置接收窗口rwnd的值来限制发送速率
6.拥塞控制
1.原理
根据自己估算的网络拥塞程度设置拥塞窗口cwnd的值来限制发送速率
2.方法
1.慢开始
当cwnd < ssthresh时,每收到一个报文段的确认cwnd加1(倍数增加)
2.拥塞避免
当cwnd > ssthresh时,每经过一个往返时延时cwnd加1
3.快重传
当收到连续的三个重复的ACK,直接重传对方期待的报文
4.快恢复
当收到连续的三个冗余ACK,令ssthresh = cwnd = cwnd/2
3.拥塞处理
ssthresh置为原cwnd的一半,cwnd置1
6.应用层
1.网络应用模型
1.C/S模型
客户/服务器(Client/Server)
区分处理请求的服务器和发出请求的客户机
2.P2P模型
Peer-to-Peer
每台机器既是服务器又是客户机
2.域名系统(DNS)
0.Domain Name System
1.作用
把主机名转换为IP地址
2.协议与端口
运行在UDP之上,使用53号端口
3.服务器分类
1.根域名服务器
知道所有顶级域名服务器的IP地址
2.顶级域名服务器
负责管理在其服务器注册的所有二级域名
3.授权域名服务器
能够将其管辖的主机名转换为该主机的IP地址
4.本地域名服务器
本地网络提供商负责的域名服务器
4.查询方式
1.递归查询(靠别人)
由查询的服务器发起下一次的查询
2.递归与迭代结合(靠自己)
除第一次查询外,其余均由本地域名服务器向外查询
3.文件传输协议(FTP)
0.File Transfer Protocol
1.作用
允许用户在因特网上存取文件
2.协议和端口
运行在TCP之上,控制连接为21号端口,数据连接为20号端口
4.电子邮件
1.电子邮件系统的组成结构
用户代理UA/邮件服务器/电子邮件使用的协议(SMTP/POP3)
2.简单邮件传输协议(SMTP)
Simple Mail Transfer Protocol
1.作用
"推"的通信方式,SMTP客户端主动将邮件推到SMTP服务器端
2.协议与端口
运行在TCP之上,使用25号端口
3.多用途网际邮件扩充(MIME)
Multipurpose Internet Mail Extensions
1.并没有改动SMTP或取代它,继续使用目前的格式,增加了邮件主体的结构
2.定义了传送非ASCII码的编码规则,可在现有的电子邮件程序和协议下传送
4.邮局协议(POP3)
Post Office Protocol
1.作用
"拉"的通信方式,用户代理向邮件服务器发出请求,拉取用户邮箱中的邮件
2.协议与端口
运行在TCP之上,使用110号端口
5.网际报文存取协议(IMAP)
Internet Message Access Protocol
1.比POP协议复杂,可以看到首部,当用户需要时,该邮件才上传到用户计算机中
2.可以让用户在不同的地方使用不同的计算机随时处理邮件,还允许只读取某一部分
6.基于万维网的电子邮件
1.用户浏览器与邮件服务器之间发送/接收邮件使用HTTP协议,仅在不同邮件服务器之间使用SMTP协议
5.万维网www
0.Word Wide Web
1.万维网
1.统一资源定位符(URL)
Uniform Resource Locator
负责标识万维网的各种文档,使每个文档在整个万维网具有唯一的标识符
2.超文本传输协议(HTTP)
0.Hyper Text Transfer Protocol
1.作用
在万维网上能够可靠地交换文件
2.协议与端口
应用层协议,使用TCP进行可靠传输,80号端口
3.超文本标记语言(HTML)
Hyper Text Markup Language
是一种文档结构的标记语言,使用一些约定的标记对页面上的各种信息/格式进行描述
2.HTTP
1.定义
HTTP定义了浏览器怎样从万维网服务器请求万维网文档/服务器怎样把文档传送浏览器
2.特点
无状态的/Cookie/本身是无连接的/非持久连接close/持久连接keep-alive
3.报文结构
请求报文/响应报文