计算机网络:分层架构与协议 ​

计网概述 ​

一、局域网和广域网 ​

1、局域网 ​

特点:距离短、范围小、设备需要自己维护

大多数为星型拓扑结构

2、互联网和广域网 ​

特点:距离远、范围大、设备不需要自己维护

ISP:网络业务提供商

二、网络通讯过程 ​

  1. 地址规划:ip地址
  2. 新建的网络:DNS地址解析
  3. PC向服务器发送请求

路由器:不同网段(根据ip地址和子网掩码)的数据转发

交换机:局域网二层交换

三、计算机网络 ​

1、什么是计算机网络 ​

1、技术:计算机网络是计算机技术和通信技术相关结合的产物

2、组成结构:计算机网络是通过外围设备和连线,将分布在相同或不同地域的多台计算机连接在一起所形成的集合

3、计算机网络的定义:将分布不同地理位置的多台具有独立功能的计算机通过外国设备和通信线路互联起来、在功能完善的管理软件的支持下实现相互资源共享的系统。

2、计算机网络的三个关键点 ​

1、建设计算机网络的主要目的是实现不同计算机之间资源的共享

2、组建网络的计算机是分布在不同地理位置的具有独立处理能力的"自治计算机"

3、同一网络中的计算机必须使用相同的通信协议

3、计算机网络包括 ​

1、 计算机:根据在网络中所提供的服务的不同,可分为服务器和工作站。

2、外围设施:包括连接设备和传输介质两部分,其中主要的连接设备有网卡、交换机(早期也使用集线器)、路由器、防火墙等,传输介质主要有同轴电缆、双绞线、光纤、微波和红外线等。

3、通信协议:计算机之间在通信时必须遵守的规则,是通信双方使用的通信语言。

四、互联网的组成 ​

1、边缘部分:由所有连接在因特网上的主机组成。这部分是用户直接使用的,用来进行通信(传送数据、音频或视频)和资源共享

2、核心部分:由大量网络和连接这些网络的路由器组成。这部分是为边缘部分(提供连通性和交换)

1、边缘部分 ​

处在因特网边缘的部分就是连接在因特网上的所有的主机。这些主机又称为端系统(end system)

“主机 A和主机B进行通信”,实际上是指:“运行在主机A上的某个程序和运行在主机B上的另一个程序进行通信”。即“主机A的某个进程和主机B上的另一个进程进行通信”。或简称为“计算机之间通信”

1)C/S ​

客户服务器方式(C/S方式):Client/Server

  1. 客户(client)和服务器(server)都是指通信中所涉及的两个应用进程。
  2. 客户服务器方式所描述的是进程之间服务和被服务的关系。
  3. 客户是服务的请求方,服务器是服务的提供方。

client的特点:

  1. 被用户调用后运行,在打算通信时主动向远地服务器发起通信(请求服务)。因此,客户程序必须知道服务器程序的地址。
  2. 不需要特殊的硬件和很复杂的操作系统。

Server特点:

  1. 一种专门用来提供某种服务的程序,可同时处理多个远地或本地客户的请求。
  2. 系统启动后即自动调用并一直不断地运行着,被动地等待并接受来自各地的客户的通信请求。因此,服务器程序不需要知道客户程序的地址。
  3. 一般需要强大的硬件和高级的操作系统支持
2)P2P ​

对等方式(P2P方式):Peer-to-Peer

  1. 对等连接(peer-to-peer,简写为 P2P)是指两个主机在通信时并不区分哪一个是服务请求方还是服务提供方。
  2. 只要两个主机都运行了对等连接软件 (P2P软件),它们就可以进行平等的、对等连接通信
  3. 双方都可以下载对方己经存储在硬盘中的共享文档

p2p特点:对等连接方式从本质上看仍然是使用客户服务器方式,只是对等连接中的每一个主机既是客户又同时是服务器。

2、核心部分 ​

网络中的核心部分要向网络边缘中的大量主机提供连通性,使边缘部分中的任何个主机都能够向其他主机通信(即传送或按收各种形式的数据)

在网络核心部分起特殊作用的是路由器(router)

路由器是实现分组交换(packet switching)的关键构件,其任务是转发收到的分组,这是网络核心部分最重要的功能。

电路交换 ​

电路交换:两部电话机用一对电线互相连接起来。

  1. 当电话机的数量增多时,就要使用交换机来完成全网的交换任务
  2. 交换(switching)的含义就是转接:一把一条电话线转接到另一条电话线,使它们连通起来。
  3. 从通信资源的分配角度来看,“交换”就是按照某种方式动态地分配传输线路的资源。

电路交换的特点:

  1. 电路交换必定是面向连接的。
  2. 电路交换的三个阶段:建立连接、通信、释放连接

电路交换传输计算机数据的缺点:计算机数据有突发性。通讯独占线路、利用率低

五、TCP/IP模型 ​

7、应用层 ​

应用层:能够产生网络流量的应用程序,通过应用进程之间的交互完成特定的网络任务(数据通信)

协议/端口号:HTTP(80)、HTTPS(443)、SSH(22)、DNS(53)、telnet(23)、FTP(21/22)、DHCP(67/68)、SMTP(25)、pop3(110)、RDP(3389)、SMP(445)、MySQL(3306)

设备:pc、防火墙

6、表示层 ​

二进制数据、ASCII、加密处理

5、会话层 ​

建立连接,建立对话

4、运输层 ​

运输层:可靠传输TCP(传输控制协议)、不可靠传输UDP(用户数据报协议)

端口到端口、进程到进程

3、网络层 ​

网络层:地址规划(IP地址)、路径规划(路由选择)

协议:ICMP(ping时是两个该协议进行交流,只涉及网络层)、IP协议、ARP协议

设备:路由器

2、数据链路层 ​

数据链路层:数据 + 链路 + 软件/协议的控制下封装成帧。帧头、帧尾(帧校验序列),透明传输、数据校验。

协议:MAC子层协议

设备:交换机、网卡

1、网络层 ​

传输媒介、接口标准、电气标准

设备:光纤、双绞线

协议数据单元 ​

以第七版计算机网络为准

  1. 应用层:报文
  2. 传输层:报文段(TCP)、用户数据报(UDP)
  3. 网络层:分组(或数据报)
  4. 链路层:帧
  5. 物理层:比特

数据封装过程 ​

六、网络性能 ​

1、速率 ​

连接在计算机网络上的主机在一个数字信道上传送数据位数的速率

单位:b/s,kb/s, Mb/s, Gb/s

信道:例如访问两个网页,每一个信道的流量为200k,则速率指的是信道,不同的信道有不同的速率

存储1024进制,速率1000进制

1KB = 1024B; 1MB = 1024KB = 1024*1024B; 1GB = 1024MB = 1024*1024*1024B;

1Kbps = 1000bps; 1Mbps = 1000Kbps = 10^6bps; 1Gbps = 1000Mbps = 10^9bps;

2、带宽 ​

网络设备所能支持的最大速度

数据道信领城中,数字信道所能传送的最高数据率

单位:b/s,kb/s, Mb/s, Gb/s

3、吞吐量 ​

单位时间内通过某个网络的数据量

4、时延 ​

1)发送时延 ​

发送时延 = 数据块长度(bit)/ 信道带宽(bps)

光纤传播速度更快的原因:光纤支特更快的发送

发送速度越快,每bit占的时间越短,当速度过快时,光纤可以识别,而铜线不能识别

论传播速度:光纤:20.5万公里/s;铜线:23.1万公里/s。

2)传播时延 ​

传播时延 = 信道长度(m) / 传播速率(m/s)

3)处理时延 ​

处理时延:路由器进行存储转发时延

4)排队时延 ​

排队时延:路由器处理前需要排队

5、时延带宽积 ​

时延带宽积 = 传播时延 x 带宽 = 信道长度(m) / 传播速率(m/s)x 信道带宽(bps)

物理意义:一定时间内,链路上最多能有多少数据

6、往返时间 RTT ​

从发送方发送数据开始,到发送方收到接收方确认(往返时间)

7、利用率 ​

信道利用率 = 有数据通过时间 / (有无)数据通过时间

网络利用率 = 所有信道利用率加权求平均

物理层 ​

一、物理层的基本概念 ​

物理层解决如何在连接各种计算机的传输媒体(广义)上传输数据比特流

物理层的主要任务:确定与传输媒体的接口的一些特性

  1. 机械特性:例接口形状,大小,引线数目
  2. 电气特性:例规定电压范围(-5V到+5V)
  3. 功能特性:例规定-5V表示0,+5V表示1
  4. 过程特性:也称规程特性,规定建立连接时各个相关部件的工作步骤

二、数据通信的基础 ​

1、码元 ​

码元:在时间域的波形表示数字信号,代表不同离散数值的基本波形

1码元 = n bit(1码元 >= 1bit)

波特率:码元/s

2、信道 ​

单向通信(单工通信):只能有一个方向的通信而没有反方向的交互。

双向交替通信(半双工通信):通信的双方都可以发送信息,但不能双方同时发送(当然也就不能同时接收)。

双向同时通信(全双工通信)通信的双方可以同时发送和接收信息。

3、基带传输 ​

基带信号(baseband):原始信号、来自信源的信号

带通信号(band pass):将基带信号进行载波调制,将频率拉倒较高频段以便传输

因此在传输距离较近时,计算机网络都采用基带传输方式

4、编码方式 ​

1)基础编码 ​

2)曼切斯特编码 ​

0:01、1:10

0:10、1:01

(成对出现,规则自己规定)

一个时钟周期需要两次采样

3)差分曼切斯特编码 ​

(10)10 / (01)01 -> 0

(01)10 / (10)01 -> 1

差分曼彻斯特编码抗干扰性能强于曼彻斯特编码

4、奈氏准则 ​

1924年,奈奎斯特 (Nyquist)就推导出了著名的奈氏准则。他给出了在假定的理想条件下,为了避免码间串扰,码元的传输速率的上限值。

5、信噪比 ​

香农(Shannon)用信息论的理论推导出了带宽受限且有高斯白噪声干扰的信道的极限、无差错的信息传输速率。

信道的极限信息传输速率 :C=Wlog2(1+s/n)

W为信道的带宽(以Hz为单位) S为信道内所传信号的平均功率 N为信道内部的高斯噪声功率

  1. 信道的带宽或信道中的信噪比越大,则信息的极限传输速率就越高。
  2. 只要信息传输速率低于信道的极限信息传输速率,就一定可以找到某种办法来实现无差错的传输。
  3. 若信道带宽 W 或信噪比 S/N 没有上限(当然实际信道不可能是这样的),则信道的极限信息传输速率 C 也就没有上限。
  4. 实际信道上能够达到的信息传输速率要比香农的极限传输速率低不少。

三、物理层的传输媒体 ​

1、集线器 Hub ​

工作特点:它在网络中只起到信号放大和重发作用,其目的是扩大网络的传输范围,而不具备信号的定向传送能力

集线器是一个大的冲突域

四、信道复用技术 ​

1、频分复用 FDM ​

用户在分配到一定的频带后,在通信过程中自始至终都占用这个频带。

频分复用的所有用户在同样的时间占用不同的带宽资源 (这里的“带宽”是频率带宽而不是数据的发送速率)

2、时分复用 TDM ​

时分复用:将时间划分为一段段等长的时分复用帧(TDM 帧)。每一个时分复用的用户在每一个TDM 帧中占用固定序号的时隙。

每一个用户所占用的时隙是周期性地出现(其周期就是 TDM 帧的长度对应的时间)。

TDM 信号也称为等时 (isochronous)信号。

时分复用的所有用户是在不同的时间占用同样的频带宽度。

时分复用可能会造成线路资源的浪费:使用时分复用系统传送计算机数据时,由于计算机数据的突发性质,用户对分配到的子信道的利用率一般是不高的。

3、统计时分复用 STDM ​

4、波分复用 WDM ​

波分复用相当于光的频分复用

5、码分复用 CDM ​

常用的名词是码分多址 CDMA(Code Division Multiple Access)

各用户使用经过特殊挑选的不同码型,因此彼此不会造成干扰。

这种系统发送的信号有很强的抗干扰能力,其频谱类似于白噪声,不易被敌人发现。

每一个比特时间划分为 m个短的问隔,称为码片 (chip)。

码片序列:每个站被指派一个唯一的mbit 码片序列。

如发送比特1,则发送自己的m bit 码片序列 如发送比特 0,则发送该码片序列的二进制反码

在实用的系统中是使用伪随机码序列。

CDMA的重要特点:每个站分配的码片序列不仅必须各不相同,并且还必须互相正交

  1. 两个不同站的码片序列正交,就是向量S和T的规格化内积(点乘)都是0 S·T=0
  2. 向量S和T的反码向量的规格化内积(点乘)也是0 S·T−1=0
  3. 任何一个码片向量和该码片向量自己的规格化内积(点乘)都是1 S·S=1
  4. 一个码片向量和该码片反码的向量的规格化内积值是 -1 S·S−1=0

X=(A+B+C+D)

n:码片序列个数

(A·X)=n --> 原码A --> 1

A·X=−n --> 反码A --> 0

A·X=0 --> 没发

五、数字传输系统 ​

脉码调制(PCM)是对连续变化的模拟信号进行处理、量化、编码后转换为数字信号的一种调制方式

由于历史上的原因,PCM 有两个互不兼容的国际标准,即北美的24路PCM(简称为 T1)和欧洲的30路PCM (简称为 E1)。我国采用的是欧洲的 E1 标准。

El 的速率是2.048 Mb/s,而T1的速率是 1.544 Mb/s。

采样:将模拟信号采样成直方图

量化:用8位二进制表示直方图的不同离散数值(码元)

编码:物理层传输bit流

六、宽带接入技术 ​

1、ADSL ​

非对称数字用户线(ADSL 拨号上网)

标准模拟电话信号的频带被限制在 300~3400 Hz 的范围内,但用户线本身实际可通过的信号频率仍然超过 1 MHz

xDSL 技术就把 0~4kHz 低端频谱留给传统电话使用,而把原来没有被利用的高端频谱留给用户上网使用。

上行和下行带宽做成不对称的。

我国目前采用的方案是离散多音调 DMT(Diserete Multi-Tone)调制技术。

DMT 调制技术采用频分复用的方法,把40kHz以上一直到1.1Mz的高端频谱划分为许多的子信道,其中25个子信道用于上行信道,而249个子信道用于下行信道。每个子信道占据4kHz带宽,并使用不同的载波(即不同的音调)进行数字调制。这种做法相当于在一对用户线上使用许多小的调制解调器并行地传送数据。

2、HFC ​

光纤同轴混合网 HFC (Hybrid Fiber Coax)

HFC 网是在目前覆盖面很广的有线电视网 CATV 的基础上开发的一种居民宽带接入网。

现有的 CATV 网是树形拓扑结构的同轴电缆网络,它采用模拟技术的频分复用对电视节目进行单向传输。而 HFC 网则需要对 CATV 网进行改造。

HFC网的主干线路采用光纤。HFC 网具有比CATV 网更宽的频谱,且具有双向传输功能。

3、FTTx ​

光纤到家 FTTI (Fiber To The Home):光纤一直铺设到用户家庭可能是居民接入网最后的解决方法。

光纤到大楼 FTTB (Fiber To The Building):光纤进入大楼后就转换为电信号,然后用电缆或双纹线分配到各用户。

光红到路边 FTTC(Fiber To The Curb):从路边到各用户可使用星形结构双绞线作为传输媒体。

七、物理层总结 ​

  1. 4个特性:机械特性、电气特性、功能特性、规程特性
  2. 码元:1码元 = nbit,码元速率:波特率,1波特 >= 1bit
  3. 信号的编码
  4. 奈氏准则(码间串扰)、香农定理(信噪比) C=Wlog2(1+s/n)
  5. 信道复用技术
  6. 脉码调制PCM:采样、量化、编码
  7. 非对称用户数字线ADSL
  8. 离散多音调DMT

数据链路层 ​

一、数据链路层概述 ​

1、基本概念 ​

1)数据链路层模型 ​

2)数字管道 ​

常常在两个对等的数据链路层之间画出一个数字管道,而在这条数字管道上传输的数据单位是帧。

3)链路与数据链路 ​

链路是一条点到点的物理线路段,中间没有任何其他的交换结点。(一条链路只是一条通路的一个组成部分)

数据链路除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。现最常用的方法是使用适配(即网卡)来实现这些协议的硬件和软件。网卡包括了数据链路层和物理层这两层的功能。

4)信道类型 ​
  1. 点对点信道:这种信道使用一对一的点对点通信方式。
  2. 广播信道:这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。
5)帧 ​

数据链路层把网络层交下来的数据构成帧发送到链路上,以及把接收到的帧中的数据取出并且上给网络层

2、三个基本问题 ​

1)封装成帧 ​

封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确定帧的界限。

首部和尾部的一个重要作用就是进行帧定界。

用控制字符进行帧定界

2)透明传输 ​

透明传输:用户不用关心如何传输,只关心传输什么

发送端的数据链路层在数据中出现控制字符“SOH〞或“EOT”的前面插入一个转义字 符“ESC"(其十六进制编码是 1B)。

字节填充:接收端的数据链路层在将数据送往网络层之前删除插入的转义字符

3)差错检测 ​

传输过程中可能会产生比特差错。在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率BER,误码率与信噪比有很大的关系。

为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。

循环冗余校验(CRC) ​

####### 1. 特点

检错能力极强、开销很小、易于实现

####### 2. 原理

  1. 收方和发方规定一个相同的生成多项式
  2. 发送方:数据后添加x个冗余位(0)(x = 生成多项式的最高次幂位 or 二进制位串n-1位)
  3. 计算余数(模2运算):够位商1,不够商0,各位相加不进位(异或运算)
  4. 用余数替换冗余位
  5. 接收方:做相同的运算,如果余数位0则接收数据,不为0,丢掉该数据

CRC是一种无比特差错,而不是无传输差错的检测机制

OSI/RM模型的观点:数据链路层要做成无传输差错的!但这种理念目前不被接受!

  1. 接近于1的概率能够检测出数据是否正确:算法性能
  2. 以接近于1的概率实现无比特差错的传输(数据链路角度):说明CRC检测能力强,能够准确的检出是否有错误
  3. 不可靠传输(应用层角度):丢失、重传 --> 需要网络层tcp实现可靠传输

二、点对点信道(PPP协议) ​

1、PPP协议概述 ​

现在全世界使用得最多的数据链路层协议是点对点协议 PPP (Point-to-Point Protocol)

用户使用拨号电话线接入因特网时,一般都是使用 PPP 协议。

2、PPP协议的要求 ​

1)需要满足的要求 ​
  • 简单
  • 封装成帧
  • 透明性
  • 支持多种网络层协议
  • 支持多种类型链路
  • 差错检测
  • 检测连接状态
  • 最大传送单元MTU:1500字节(最小64字节)
  • 网络层地址协商
  • 数据压缩协商
2)不需要满足的要求 ​
  • 纠错
  • 流量控制
  • 序号
  • 多点线路
  • 半双工或单工链路

3、PPP协议的组成 ​

  1. HDLC(高级数据链路层协议):用于异步串行或同步串行介质
  2. LCP(链路控制协议):建立并维护数据链路连接
  3. NCP(网络控制协议):提供点到点连接上多种网络层协议的支持

4、PPP协议帧格式 ​

  1. 标志宇段F=0x7E(符号"0x"表示后面的字符是十六进制表示,十六进制的 7E的二进制表示是 01111110)
  2. 地址字段 A只置为0xFF,地址字段实际上并不起作用
  3. 控制字段C通常置为 0x03
  4. PPP是面向字节的,所有的PPP帧的长度都是整数字节

PPP协议帧最大不超1508字节

5、零比特填充法 ​

在发送端,只要发现有5个连续1,则立即填入一个0

接收端对帧中的比特流进行扫描。每当发现5个连续1时,就把这5个连续1后的一个0删除

出去开始和结束的0x7E,不会有第二个连续的6个1出现

6、PPP协议的特点 ​

PPP特点:不使用序号和确认机制

  1. 在数据链路层出现差错的概率不大时,使用比较简单的 PPP协议较为合理。
  2. 在因特网环境下,PPP的信息字段放入的数据是IP数据报。数据链路层的可靠传输并不能够保证网络层的传输也是可靠的。
  3. 帧检验序列FCS 字段可保证无差错接受。

7、PPP协议的工作状态 ​

当用户拨号接入ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接。

PC向路由器发送一系列的LCP分组(封装成多个PPP帧)。

家用网络控制由LCP管理

这些分组及其响应选择一些PPP参数,进行网络层配置(NCP的配置),NCP给新接入的 PC 机分配一个临时的IP地址,使PC机成为因特网上的一个主机。

通信完毕时,NCP释放网络层连接,收回原来分配出去的IP地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。

三、广播信道 ​

1、局域网的拓扑 ​

2、局域网的特点与优点 ​

特点

网络为一个单位所拥有,且地理范围和站点数目均有限。

优点

具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源。

便于系统的扩展和逐渐地演变,各设备的位置可灵活调螫和政变。

提高了系统的可靠性、可用性和生存性。

3、认识以太网 ​

最初的以太网是将许多计算机都连接到一根总线上。

当初认为这样的连接方法既简单又可靠,因为总线上没有有源器件。

  1. 同在一个冲突域,会产生数据冲突的问题
  2. 拒收是设备主动行为,会产生安全问题

4、CSMA/CD 载波侦听多点接入/碰撞检测 ​

1)CSMA/CD解释 ​
  1. “多点接入CS”:多点接入的方式连接在一根总线
  2. “载波监听MA“:每一个站在发送数据之前先要检测一下总线上是否有其他计算机在发送数据(电压阈值),如果有,则暂时不要发送数据,以免发生碰撞。
  3. “碰撞检测CD”:计算机边发送数据边检测信道上的信号电压大小。
2)CSMA/CD过程 ​
  1. 适配器获取数据报,创建帧
  2. 发送前:侦听信道CS
    1. 闲:开始传送帧
    2. 忙:一直等到闲再发送
  3. 发送过程中:冲突检测CD
    1. 没有冲突:成功
    2. 检测到冲突:放弃,之后尝试重发
  4. 发送方适配器检测到冲突,放弃、发送一个人为干扰信号(Jam信号),所有听到冲突的适配器也是如此(强化冲突:让所有站点都知道冲突)
  5. 如果放弃,适配器进入二进制指数退避状态
3)CSMA/CD基本问题 ​

单次传播时延:ε

1、边发送边监听,监听0~2ε,超过2ε说明没有发生碰撞

2、碰撞后停止发送,等待一个随机时间(二进制指数退避算法)重发

3、强化冲突:发送一个人为干扰信号(Jam信号:32bit/48bit),让所有站点都知道冲突,耗时τ

4、帧间最小距离:9.6μs,用于清理缓存、处理数据

5、如果前64字节(512bit)不碰撞,那么后续不会再碰撞了。10Mbps以太网的征用期为512bit时间

10Mbps∗51.2μs=512bit=64Byte

对于100Mb/s的以太网,争用时间为5.12 μs

4)二进制指数退避算法 ​

2ε:基本退避时间/征用期,10Mbps以太网的征用期为512bit时间

K=min[重传次数,10]

r:[0,2k−1](随机数)

Twait=r·2ε

  1. K>=16 --> 报告应用层
  2. 再次冲突概率:1/K
5)补:计网3-25 ​

5、CSMA/CA 载波侦听多路访问/冲突避免 ​

1)CSMA/CA概述 ​

802.11冲突:2+ 站点(AP或者站点)在同一个时刻发送

CSMA:发送前侦听信道,不会和其它节点正在进行的传输发生冲突

802.11没有冲突检测(无法检测冲突:自身信号远远大于其他节点信号)

无法CD,一旦发送一股脑全部发送完毕,不CD

为了避免无CD带来的信道利用率低的问题,事前进行冲突避免

2)CSMA/CA过程 ​
发送方 ​
  1. 如果站点侦测到信道空闲持续DIFS长,则传输整个帧 (no CD)
  2. 如果侦测到信道忙碌,那么 选择一个随机回退值,并在信道空闲时递减该值;如果信道忙碌,回退值不会变化
  3. 到数到0时(只生在信道闲时)发送整个帧如果没有收到ACK, 增加回退值,重复2
接收方 ​

如果帧正确,则在SIFS后发送ACK

3)冲突避免 ​

无法完全避免冲突

两个站点相互隐藏

选择了非常靠近的随机回退值

允许发送方“预约”信道,而不是随机访问该信道:避免长数据帧的冲突

  1. 发送方首先使用CSMA向BS发送一个小的RTS分组 --> RTS可能会冲突(但是由于比较短,浪费信道较少)
  2. BS广播 clear-to-send CTS,作为RTS的响应
  3. CTS能够被所有涉及到的节点听到
    1. 发送方发送数据帧
    2. 其它节点抑制发送

采用小的预约分组,可以完全避免数据帧的冲突

四、以太网MAC层 ​

1、MAC层概述 ​

IEEE 802委员会把局域网的数据链路层拆分为两个子层

  1. 逻辑链路控制LLC
  2. 媒体接入控制MAC

2、MAC地址 ​

在局域网中,硬件地址又称为物理地址,或MAC地址。

MAC地址(48bit) = IEEE指定前缀(24bit)+ 设备序号(24bit)

MAC地址全球唯一。但是可以伪造,并不安全

win修改本机mac地址

3、MAC帧格式 ​

以太网v2格式

当数据字段的长度小于 46 字节时,应在数据字段的后面加入整数宇节的填充字段,以保证以太网的MAC 帧长不小于64字节。

MAC帧长度为64~1518字节

最大传输单元MTU长度为46~1500字节

4、无效的MAC帧 ​

1、帧的长度不是整数个字节

2、用收到的帧检验序列FCS查出有差错

3、数据字段的长度不在46~1500字节之间

4、有效的MAC帧长度为64~1518字节之间

5、对于检查出的无效MAC 帧就简单地丢弃。以太网不负责重传丢弃的帧。

五、扩展以太网 ​

1、集线器 ​

1)集线器概述 ​

集线器是使用电子器件来模拟实际电缆线的工作,因此整个系统仍然像一个传统的以太网那样运行。集线器使用了大规模集成电路芯片,因此这样的硬件设备的可靠性已大大提高了

使用集线器的以太网在逻辑上仍是一个总线网,各工作站使用的还是 CSMA/CD协议,并共享逻辑上的总线。

2)集线器优缺点 ​
优点 ​

使原来属于不同碰撞域的局域网上的计算机能够进行跨碰撞域的 通信。

扩大了局域网覆盖的地理范围。

缺点 ​

碰撞域增大了,但总的吞吐量并未提高。

如果不同的碰撞域使用不同的数据率,那么就不能用集线器将它们互连起来。

2、网桥 ​

1)网桥概述 ​

网桥工作在数据链路层,它根据 MAC 帧的目的地址对收到的帧进行转发

网桥具有过滤帧的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的MAC 地址,然后再确定将该帧转发到哪一个接口

2)网桥优缺点 ​
优点 ​

过滤通信量。

扩大了物理范围。

提高了可靠性。

可互连不同物理层、不同MAC 子层和不同速率(如10Mb/s和100Mb/s以太网)的局域网。

缺点 ​

存储转发增加了时延。

在MAC 子层并没有流量控制功能。

具有不同MAC 子层的网段桥接在一起时时延更大。

网桥只适合于用户数不太多(不超过几百个)和通信量不太大的局域网,否则有时还会因传播过多的广播信息而产生网络拥塞。这就是所谓的广播风暴。

3)透明网桥 ​

透明网桥是即插即用设备。"透明"是指局域网上的站点并不知道所发送的帧将经过哪几个网桥,因为网桥对各站来说是看不见的。

3、交换机 ​

以太网交换机实质上就是一个多接口的网桥,通常都有十几个或更多的接口,和工作在物理层的转发器、集线器有很大的差别。以太网交换机的每个接口都直接与一个单台主机或另一个以太网交换机相连,并且一般都工作在全双工方式。以太网交换机还具有并行性,即能同时连通多对接口,使多对主机能同时通信(而网桥只能一次分析和转发一个帧)。相互通信的主机都是独占传输媒体,无碰撞地传输数据

以太网交换机的接口还有存储器,能在输出端口繁忙时把到来的帧进行缓存。因此,如果连接在以太网交换机上的两台主机,同时向另一台主机发送帧,那么当这台主机的接口繁忙时,发送帧的这两台主机的接口会把收到的帧暂存一下,以后再发送出去。

以太网交换机是一种即插即用设备,其内部的帧交换表(又称为地址表)是通过自学习算法自动地逐渐建立起来的。以太网交换机由于使用了专用的交换结构芯片,用硬件转发,其转发速率要比使用软件转发的网桥快很多。

网络层(数据平面) ​

一、网络层提供的服务 ​

1、虚电路服务 ​

通讯前建立虚电路,发送前认为选择路径,所以分组沿着同一条虚电路。

特点:带宽固定

2、数据报服务 ​

数据可能沿着不同路径传输

3、网络层的两个层面 ​

数据层面:源主机到目标主机

控制层面:路由器之前传递路由信息

同一网段:直接交付

非同一网段:间接交付

路由器基本功能:不同网段数据的转发

4、互联网络与虚拟互联网络 ​

二、IP协议 ​

1、IP地址 ​

1)IP地址概述 ​

每一类地址都由两个固定长度的字段组成其中一个字段是网络号 net-id,它标志主机(或路由器)所连接到的网络,而另个字段则是主机号 host-id,它标志该主机(或路由器)。

IP地址:网络号+主机号

32位(4字节)

点分十进制:每8个字节二进制转换成10进制,用.分隔

2)IP地址的分类 ​

以ip地址第一位区分

  1. A类:1-126:默认255.0.0.0
  2. B类:128-191:默认255.255.0.0
  3. C类:192-223:默认255.255.255.0
  4. D类:224-239:多播/组播(一个地址代表一组)
  5. E类:240-254:科研保留

127.0.0.1:回环地址localhost

xxx.xxx.0.0:本网络(网段)

xxx.xxx.255.255:广播地址

192.0.0.0、128.0.0.0:未指派

3)IP地址的特点 ​

IP地址是标志一个主机(或路由器)和一条链路的接口

当一个主机同时连接到两个网络上时,该主机就必须同时具有两个相应的IP地址,其网络号 net-id 必须是不同的。这种主机称为多归属主机。

由于一个路由器至少应当连接到两个网络,这样它才能将IP数据报从一个网络转发到另一个网络。因此一个路由器至少应当有两个不同的IP地址

用转发器、网桥或交换机连接起来的局域网仍为一个网络,因此这些局域网都具有同样的网络号net-id(内网转发)

所有分配到网络号net-id的网络,无论范围大小都是平等的

2、ARP地址解析协议 ​

1)ARP概要 ​

不管网络层使用的是什么协议,在实际网络的链路上传送数据帧时,最终还是必须使用MAC地址

每一个主机都设有一个 ARP 高速缓存(ARP cache),里面有所在的局域网上的各主机和路由器的IP地址到MAC地址的映射表

查看arp缓存:cmd => arp -a

ARP 是解决同一个局域网上的主机或路由器的IP地址和硬件地址的映射问题

2)ARP过程 ​

3)RARP逆地址解析协议 ​

逆地址解析协议 RARP :通过MAC地址获得IP地址

3、IP数据报格式 ​

1)版本:4 ​

区分ipv4和ipv6

0100(ipv4包头)

0110(ipv6包头)

2)首部长度:4 ​

IP包头的长度是可变的:20~60字节,大多为20字节

首部长度存储ip包头的长度,0101(20字节)

首部长度以4字节为单位

首部长度 * 4字节 = 首部真实长度

3)区分服务:8 ​

1-3位:优先级

4-7位:服务类型(低延迟、高通道服务类型)

8位:未被启用

4)总长度:16 ​

表明整个IP包(三四五层)的总长度

5)标识:16 ​

标识同一个报文的所有分片,由发送端随机生成

标识用于区分不同分片,接收方据此将收到的分片进行"拼接"

6)标志:3 ​
第一个比特 ​

永远为0(未被启用)

第二个比特 DF ​

不能分片:Donot Fragment

若为0,则表明进行了分片

若为1,则表明未进行分片

第三个比特 MF ​

更多分片:More Fragment

表明本分片后面是否还有分片(本分片是否为最后一个分片)

1:本分片不是最后一个分片

0:最后一个分片

7)片偏移:13 ​

段偏移量:标志IP分片的先后顺序

片偏移以8字节为单位

片偏移 * 8字节 = 片的真实偏移

防火墙会拦截IP分片:防火墙只让标志位的010通过,则将分片任务交给应用层,应用层将其分成1480的分片

8)TTL:8 ​

TTL(time to live):防止一个数据包在网络上兜圈子

TTL由8个比特组成(0~255),这个数字表示通过路由器的个数,每经过一个路由器TTL值-1

通过TTL初始值可以大概判断对方是什么主机

9)协议:8 ​

6:通向TCP协议

17:通向UDP协议

1: 通向同层的ICMP协议

41:IPv6

10)首部校验和:16 ​

11)原ip:32 ​
12)目标ip:32 ​
13)可选项目 ​

排错、测量、安全...

增加首部的可变部分是为了增加IP数据报的功能,但这同时也使得IP数据报的首部长度成为可变的,这就增加了每一个路由器处理数据报的开销。实际上这些选项很少被使用。

4、划分子网 ​

1)划分子网概述 ​

目的: 隔离网络广播,保证网络的安全,节约IP地址

特点:对内划分子网,对外表现为没有划分子网的网络

IP地址:网络号 + 子网号 + 主机号

2)子网掩码 ​

IP地址无法判断子网号 => 用子网掩码找出IP地址中的子网部分 => 用于(交换机、路由器)判断是否在同一网段

IP地址 AND(按位与) 子网掩码 = 网络地址(网段)

子网掩码两种写法:

  1. 点分十进制:192.168.0.1/255.255.255.0
  2. 网络位长度:192.168.0.1/24
  1. 子网掩码是一个网络或一个子网的重要属性
  2. 路由器在和相邻路由器交换路由信息时,必须把自己所在网络(或子网)的子网掩码告诉相邻路由器
  3. 路由器的路由表中的每一个项目,除了要给出目的网络地址外,还必须同时给出该网络的子网掩码
3)路由聚合 ​

**路由汇聚:**是把一组路由汇聚为一个单个的路由广播。路由汇聚的最终结果和最明显的好处是缩小网络上的路由表的尺寸。

tex
192.128.0.0/25		192.168.2.1
192.128.0.128/25	192.168.2.1

=>192.168.0.0/24	192.168.2.1

5、ICMP ​

1)ICMP概述 ​

网际控制报文协议:ICMP (Internet Control Message Protocol)

ICMP允许主机或路由器报告差错情况和提供有关异常情况的报告

ICMP是IP层的协议。但ICMP报文作位IP层数据报的数据,加上IP包头组成IP数据报发送

2)ping命令 ​

PING (Packet Internet Grope):因特网包探索器

用于测试网络连接量的程序。Ping发送1个ICMP回声请求消息,给目的地并报告是否收到所希望的ICMP回声应答

cmd / term => ping 域名/ip地址

网络层(控制平面) ​

一、路由原理 ​

1、网络层功能 ​

1)数据平面 ​

转发:将分组从路由器的一个输入端口移到合适的输出端口

2)控制平面 ​

路由:确定分组从源到目标的路径

2、路由算法 ​

  1. 路径长度
  2. 可靠性
  3. 延迟
  4. 带宽
  5. 负载
  6. 通信代价

3、路由的原则 ​

1)正确性 ​

算法必须是正确的和完整的,使分组一站一站接力,正确发向目标站

完整:目标所有的站地址,在路由表中都能找到相应的表项,没有处理不了的目标站地址

2)简单性 ​

算法在计算机上应简单:最优但复杂的算法,时间上延迟很大,不实用,不应为了获取路由信息增加很多的通信量

3)健壮性 ​

算法应能适应通信量和网络拓扑的变化:通信量变化,网络拓扑的变化算法能很快适应;不向很拥挤的链路发数据,不向断了的链路发送数据

4)稳定性 ​

产生的路由不应该摇摆

5)公平性 ​

对每一个站点都公平

6)最优性 ​

某一个指标的接近最优,时间上,费用上,等指标,或综合指标

4、路由协议 ​

  1. 直连路由:路由器直接交付
  2. 静态路由:设置固定路由表,除非网络管理员干预,否则静态路由不发生变化
  3. 动态路由:路由器之间相互通信,传递路由信息,利用收到的路由信息,更新自己路由表的过程,能实时使用网络结构的变化

5、自治系统AS ​

自治系统AS(Autonomous System)的定义:在单一的技术管理下的一组路由器,而这些路由器使用一种AS内部的路由选择协议和共同的度量以确定分组在该AS内的路由,同时还使用一种AS之间的路由选择协议用以确定分组在AS之间的路由

现在对自治系统AS的定义是强调下面的事实:尽管一个AS使用了多种内部路由选择协议和度量,但重要的是一个AS对其他AS表现出的是一个单一的和一致的路由选择策略

二、AS的路由选择 ​

1、RIP距离向量算法 ​

1)RIP概述 ​

在 1982年发布的BSD-UNIX 中实现

采用 Distance vector 算法

2)RIP通告 ​

在邻居之间每30秒交换通告报文

定期且在改变路由的时候发送通告报文,在对方的请求下可以发送通告报文

要点

  1. 仅和相邻路由器交换信息
  2. 交换的信息是当前路由器所知道的全部信息,即自己的路由表
  3. 按固定的时间间隔交换路由信息
3)RIP链路失效和恢复 ​

如果180秒没有收到通告信息 => 邻居或者链路失效

  1. 发现经过这个邻居的路由已失效
  2. 新的通告报文会传递给邻居
  3. 邻居因此发出新的通告 (如果路由变化的话)
  4. 链路失效快速(?)地在整网中传输
  5. 使用毒性逆转阻止ping-pong回路(不可达的距离:跳数无限 = 16 段)
4)RIP进程处理 ​

RIP 以应用进程的方式实现,通告报文通过UDP报文传送,周期性重复

网络层的协议使用了传输层的服务,以应用层实体的方式实现

5)RIP协议优缺点 ​
  1. RIP存在一个问题就是当网络出现故障时,要经过比较长的时间才能将此信息传达到所有的路由器
  2. RIP协议最大的优点就是实现简单,开销较小
  3. RIP限制了网络的规模,并能使用的最大距离为15(16表示不可达)
  4. 路由器之间交换的路由信息是路由器中的完整路由表,因而随着网络规模的扩大,开销也就增大

2、OSPF内部网关协议 ​

1)OSPF协议的基本特点 ​

最短路径优先 是因为使用了Dijkstra提出的最短路径算法SPF

OSPF只是一个协议的名字,它并不表示其他的路由选择协议不是最短路径优先

OSPF是分布式的链路状态协议

2)OSPF三个要点 ​
  1. 向本自治系统中所有的路由器发送消息,这里使用的方法是洪泛法
  2. 发送的信息就是与本路由器相邻的所有路由器的链路状态,但这只是路由器所知道的部分信息 => 链路状态就是说明本路由器都和哪些路由器相邻,以及该链路的度量
  3. 只有当链路状态发生变化时,路由器才用洪泛法向所有路由器发送此信息
3)层次化的OSPF ​

为了使OSPF能够用于规模很大的网络,OSPF将一个自治系统再划分为若干个更小的范围,叫做区域(area)

2个级别的层次性:本地, 骨干

  1. 链路状态通告仅仅在本地区域Area范围内进行
  2. 每一个节点拥有本地区域的拓扑信息
  3. 关于其他区域,知道去它的方向,通过区域边界路由器

区域边界路由器: 汇总(聚集)到自己区域内网络的距离,向其它区域边界路由器通告

骨干路由器: 在骨干区域内运行OSPF路由

边界路由器: 连接其它的AS的边界路由

4)OSPF的特点 ​

1.OSPF对不同的链路可根据IP分组的不同服务类型TOS而设置成不同的代价,因此,OSPF对于不同类型的业务可计算出不同的路由

2.如果到同一个目的网络有多条相同的路径,那么可以将通信量分配给这几条路径,这叫作多路径间的负载平衡

3.所有在OSPF路由器之间交换的分组都具有鉴别的功能

4.支持可变长度的子网划分和无分类编址CIDR

5.每一个链路状态都带上一个32位符号,序号越大,状态就越新

6.OSPF还规定了每隔一段时间,要刷新一次数据库中的链路状态

7.由于一个路由器的链路状态只涉及到与相邻路由器的连通状态,因而整个互联网的规模并无直接关系,因此当互联网规模很大时,OSPF协议要距离向量协议RIP好得多

8.OSPF没有坏消息传得慢的问题,据统计,其相应网络变化的时间小于100ms

三、ISP的路由选择 ​

1、BGP ​

1)BGP概述 ​
  1. BGP是不同自治系统的路由器之间交换路由信息的协议
  2. BGP较新的版本是2006年1月发表的BGP-4,即RFC 4271~4278
  3. BGP-4 简写为 BGP
2)BGP发言人 ​
  1. 每一个自治系统至少有一个路由器作为该自治系统的 BGP发言人
  2. 两个BGP发言人都是通过一个共享网络连接在一起的,而BGP发言人往往是BGP边界路由器,但也可以不是BGP边界路由器
3)BGP交换路由信息 ​

1.一个BGP发言人与其他自治系统中的BGP发言人要交换路由信息,就要先建立TCP连接,然后在此连接上交换BGP报文建立BGP会话,利用BGP会话交换路由信息

2.使用TCP连接可以提供可靠服务,也简化了路由选择协议

3.使用TCP连接交换路由信息的两个BGP发言人,彼此成为了对方的邻站或对等站

4)BGP协议的特点 ​
  1. BGP协议交换路由信息的节点数量级是自治系统数的量级,这要比这些自治系统中的网络数少很多
  2. 每一个自治系统中BGP发言人(或边界路由器)的数目是很少的,这样就使得自治系统之间的路由选择不敢过分复杂
  3. BGP支持CIDR,因此BGP的路由表就应当包括目的网络前缀,下一跳路由器,以及到达该目的网络所要经过的各个自治系统序列
  4. 在BGP刚刚运行时,BGP的邻站是交换整个的BGP路由表,但以为只需要在发生变化时更新有变化的部分,这样做对节省网络宽带和减少路由器的处理开销方面都有好处

四、AS和ISP路由方式不同的原因 ​

1、策略方面 ​

Inter-AS:管理员需要控制通信路径,谁在使用它的网络进行数据传输

Intra-AS:一个管理者,所以无需策略。AS内部的各子网的主机尽可能地利用资源进行快速路由

2、规模方面 ​

AS间路由必须考虑规模问题,以便支持全网的数据转发

AS内部路由规模不是一个大的问题

  1. 如果AS太大,可将此AS分成小的AS => 规模可控
  2. AS之间只不过多了一个点而已
  3. AS内部路由支持层次性,层次性路由节约了表空间,降低了更新的数据流量

3、性能方面 ​

Intra-AS:关注性能

Inter-AS:策略可能比性能更重要

五、典型的路由器的结构 ​

传输层 ​

一、传输层概述 ​

1、传输层的功能 ​

传输层为应用进程之间提供端到端的逻辑通信(但网络层是为主机之间提供逻辑通信)

传输层还要对收到的报文进行差错检测

传输层提供面向连接和无连接的服务

2、端口 ​

端口号只具有本地意义,即端口号只是为了标志本计算机应用层中的各进程。

端口号服务
21FTP
23telnet
53DNS
80http
443https

二、用户数据报协议UDP ​

1、UDP概述 ​

  1. UDP 是无连接的,即发送数据之前不需要建立连接。
  2. UDP 使用尽最大努力交付,即不保证可靠交付,同时也不使用拥塞控制。
  3. UDP 是面向报文的,没有拥塞控制。
  4. UDP支持一对一、一对多、多对一和多对多的交互通信。
  5. UDP 的首部开销小,只有8个字节。

2、UDP首部格式 ​

  1. 源端口:源端口号。在需要对方回信时选用。不需要时可用全0
  2. 目的端口:目的端口号。这在终点交付报文时必须使用
  3. 长度:UDP 用户数据报的长度,其最小值是8(仅有首部)
  4. 检验和:检测 UDP 用户数据报在传输中是否有错。有错就丟弃

三、传输控制协议TCP ​

1、TCP概述 ​

  1. TCP 是面向连接的传输层协议
  2. 每一条TCP连接只能有两个端点,每一条TCP连接只能是点对点的
  3. TCP 提供可靠交付的服务
  4. TCP 提供全双工通信
  5. 面向字节流

2、套接字socket ​

TCP 连接的端点做套接字(socket)

套接字的表示方法:在点分十进制的 IP 地址后面写上端口号,中 用冒号或逗号隔开

套接字 socket = (IP 地址:端口号)

152.136.221.206:443

每一条 TCP 连接唯一地被通信两端的两个端点(两个socket)所确定

TCP 连接 = {socket1, sockct2} = {(IP1: port1), (IP2: port2))

3、TCP首部格式 ​

  1. 源端口和目的端口:各占2个字节,分别写入源端口号和目的端口号
  2. 序号:占4字节。报文段首字节的在字节流的编号
  3. 确认号:占4字节。期望收到对方下一个报文段的第一个数据字节的序号
  4. 数据偏移:占4位。 TCP 报文段的首部长度
  5. 保留:占6位
  6. 紧急 URG:当 URG 置1时,发送应用进程就告诉发送方的 TCP 有紧急数据要传送。于是发送方TCP 就把紧急数据插入到本报文段数据的最前面
  7. 确认 ACK:仅当 ACK =1时确认号字段才有效。当 ACK = 0时,确认号无效。TCP 规定,在连接建立后所有传送的报文段都必须把 ACK 置1
  8. 推送 PSH:在一端的应用进程希望在键入一个命令后立即就能够收到对方的响应,发送方TCP 把 PSH 置1。接收方直接交付接收应用进程(不进缓存)
  9. 复位 RST:TCP 连接中出现严重差错,必须释放连接,然后再重新建立运输连接
  10. 同步 SYN:SYN 置为1就表示这是一个连接请求或连接接受报文
  11. 终止 FIN:FIN=1时,释放一个连接
  12. 窗口:占2字节。窗口值作为接收方让发送方设置其发送窗口的 依据
  13. 检验和:占2字节。
  14. 紧急指针:占2字节。紧急指针仅在 URG = 1时才有意义,指出本报文段中的紧急数据的字节数
  15. 可选项
    1. 最大报文段长度 MSS:TCP 报文段长度减去 TCP 首部长度
    2. 时间戳:计算往返时间 RTT、防止序号绕回 PAWS

四、TCP可靠传输 ​

数据链路层的可靠传输通常使用 确认 和 超时重传 两种机制来完成。

1、工作原理 ​

1)停止等待协议 ​

在发送完一个分组后,必须暂时保留己发送的分组的副本

分组和确认分组都必须进行编号

在不可靠的传输网络上实现可靠的通信

自动重传请求ARQ

2)连续ARQ协议 ​

累积确认:接收方对按序到达的最后一个分组发送确认,这就表示:到这个分组为止的所有分组都己正确收到了

优点:容易实现,信道利用率高

缺点:不能向发送方反映出接收方己经正确收到的所有分组的信息

2、可靠传输的实现 ​

1)滑动窗口协议 ​

TCP连接的每一端都必须设有两个窗口:一个发送窗口和一个接收窗口

TCP的可靠传输机制用字节的序号进行控制

2)滑动窗口的缓存 ​

环形窗口

五、TCP流量控制 ​

1、流量控制概述 ​

让发送方的发送速率不要太快,既要让接收方来得及接收,也不要使网络发生拥塞

2、持续计时器 ​

发送方和接收方死锁局面的产生:ack=1、接受窗口为0

TCP 为每一个连接设有一个持续计时器

  1. 若持续计时器设置的时间到期,就发送一个零窗口探测报文段
  2. 若窗口仍然是零,则收到这个报文段的一方就重新设置持续计时器
  3. 若窗口不是零,打破死锁

六、TCP拥塞控制 ​

1、拥塞控制概述 ​

资源拥塞的原因:对资源需求的总和 > 可用资源

拥塞控制:是一个全局性的过程,涉及到所有的主机、所有的路由器,以及与降低网络传输性能有关的所有因素

流量控制:往往指在给定的发送端和接收端之间的点对点通信量的控制,它所要做的就是抑制发送端发送数据的速率,以便使接收端来得及接收。

2、拥塞控制起到的作用 ​

3、拥塞控制算法策略 ​

拥塞窗口cwnd

原则:没拥塞就增大窗口、出现拥塞就减小窗口

SendWin=min{CongWin, RecvWin}:同时满足拥塞控制和流量控制要求

1)慢开始 ​

当 TCP 连接进行初始化时,将拥塞窗口cwnd置为1。

可用带宽可能 >> MSS/RTT,应该尽快加速,到达希望的速率。

当连接开始时,指数性增加(每个RTT)发送速率直到发生丢失事件(启动初值很低,但是速度很快)

2)拥塞避免 ​

乘性减:丢失事件后将cwnd降为1, 将cwnd / 2作为门限 ssthresh,进入慢启动阶段(倍增直到ssthresh)

加性增:当cwnd > 门限 ssthresh(上次发生拥塞的窗口的一半)时,一个RTT如没有发生丢失事件,将cwnd加1(探测)

3)快重传与快恢复 ​

快重传:接收方每收到一个失序的报文段后就立即发出重复确认,让发送方尽早知道有报文段没有到达接收方。

快恢复:发送方收到3个重复的ACKs,cwnd减半、窗口线性增长

4)总结 ​

当cwnd<ssthresh:发送端处于慢启动阶段,窗口指数性增长。

当cwnd > ssthresh:发送端处于拥塞避免阶段,窗口线性增长。

当收到三个重复的ACK:ssthresh设置成 cwnd/2,进入拥塞避免阶段。

当发生超时timeout:cwnd=1,进入慢启动阶段。

七、TCP传输连接管理 ​

1、TCP3次握手的必要性 ​

2、TCP3次握手 ​

变化的初始序号 + 双方确认对方的序号(3次握手)

3、TCP关闭连接 ​

客户端,服务器分别关闭它自己这一侧的连接:发送FIN bit = 1的TCP段

一旦接收到FIN,用ACK回应:接到FIN段,ACK可以和它自己发出的FIN段一起发送,可以处理同时的FIN交换

应用层 ​

一、域名系统DNS ​

1、存在意义 ​

IP地址标识主机、路由器,但IP地址不好记忆,不便使用(ip没有意义)

人类一般倾向于使用一些有意义的字符串来标识网络设备

用户提供要访问机器的"字符串"名称,由DNS负责转换成为二进制的网络地址

2、域名空间 ​

因特网采用了层次树状结构的命名方法。

域名的结构由标号序列组成,各标号之间用点隔开。

3、区域划分 ​

区域的划分有区域管理者决定。

将DNS名字空间划分为互不相交的区域,每个区域都是树的一部分。

4、解析过程 ​

1)概述 ​

顶级域服务器:负责解析顶级域名和所有国家级的顶级域名

本地域名服务器:类似代理,将主机的查询转发到层次结构中

权限域名服务器:维护着它所管辖区域的信息,提供域名与和IP之间的映射

DNS:UDP 53端口

2)迭代查询 ​

3)递归查询 ​

二、文件传输协议FTP ​

1、FTP概述 ​

用于向远程主机上传输文件或从远程主机接收文件

ftp端口号:20、21

2、FTP传输方式 ​

1、FTP客户端与FTP服务器通过端口21联系,并使用TCP为传输协议

2、客户端通过控制连接获得身份确认

3、客户端通过控制连接发送命令浏览远程目录

4、收到一个文件传输命令时,服务器打开第二个TCP(端口20)数据连接用来传输另一个文件

5、FTP服务器维护用户的状态信息:当前路径、用户帐户与控制连接对应

6、一个文件传输完成后,服务器关闭连接

控制连接: 带外传送,控制与传输分离

FTP是有状态的连接

3、简单文件传送协议TFTP ​

使用UDP数据报

三、万维网 ​

1、统一资源定位符URL ​

格式

tex
协议类型://服务器地址[:端口号]/路径/文件名[参数=值]

2、超文本传输协议HTTP ​

  1. 客户发起一个与服务器的TCP连接(建立套接字),端口号为 80
  2. 服务器接受客户的TCP连接
  3. 在浏览器与 Web服务器交换HTTP报文
  4. TCP连接释放

3、代理服务器Proxy ​

四、电子邮件 ​

1、简单邮件传输协议SMTP ​

使用TCP在客户端和服务器之间传送报文,端口号为25

直接传输:从发送方服务器到接收方服务器

FoxMail:直接发给接收方服务器

2、邮件访问协议 ​

邮局访问协议POP3:下载后管理本地文件夹

邮件访问协议IMAP:管理远程文件夹

万维网协议HTTP:web网页读取与接收