一,运输层引入的目的
1,网络通信主体标识
网络通信的本质是运行的主机上的进程之间的通信
同一个主机上有多个进程在工作,进程如何加以区分标识(PID)---本地主机
网络上的主机需要一个统一的进程标识分配机制
逻辑端口的概念(端口):一个整数值(16位);0-65535
网络上中进程工作方式:C/S 对应的端口号码的分配也分为两大类;
服务类(静态的预先指定的)
1-1013(默认系统熟知的服务)
1023-45191(需要申请注册的服务 QQ4000,8000都是它所使用的端口)
客户类(随机的由本地操作系统自己管控)
端口:相当于进程在网络中的地址
IP+PORT(端口号) 构成了网络中唯一的通信端点:我们称之为端到端的通信
(Socket) (Socket) Protocol
网络主机怎么区分
2,网络通信可靠性保障
要保障无论发生什么情况,两个端点之间都能进行数据的有效传输(或者说,接收端一定能够收到发送端发来的数据)
二,运输层引入的协议
1,TCP协议(负责完成端到端的可靠传输)
2,UDP协议(负责完成端到端的数据传输)
三,可靠性工作的基本原理
可靠性保障可以放在体系结构中的任何一层(数据链路层,网络层)实现,但现代网络系统面向的是主机(独立自主的计算力)系统,可以将可靠性保障交由主机来完成,进而减轻通信子网的负担,使得通信子网专注于数据包的高效传输
1.停止等待协议(ARQ自动请求重传协议)
A给B发送数据,B需要给一个确认,
否认应答:A再发,
2.后退N帧重传(Go Back N ARQ)
3.选择重传协议
目的提高发送速率,不在采用发送一个数据帧就停下来等待确认的模式,而是可以连续发送多个数据帧后才停下来等待的模式
接收端:引入一个接收窗口的概念(即应当接收的数据帧及数据帧序号);这类协议接收窗口大小为1
其中:连续发送多少个数据帧的个数称为 发送窗口
四.可靠传输的实现
1.可靠传输可以在任何层次上实现
2.可靠传输实现的基本原理
1)停止等待协议
2)后退N帧自动请求重传协议(接收窗口固定唯一,而TCP接收窗口不确定)
(1)发送窗口:没有得到确认的情况下,发送端可以连续发送分组的个数
(2)接收窗口:接收数据的个数以及包含能接受数据的序号
(3)工作协议
(4)窗口大小与序号关系
3)选择重传协议
(1)发送窗口
(2)接收窗口
(3)工作过程
(4)窗口大小与序号关系
五.TCP协议
回忆
一,TCP协议
1.协议特点
1)面向连接
2)可靠传输协议
3)面向字节流:对每个字节逐一进行编号
2.TCP连接管理
面向连接的意义
面向连接的工作流程
3.TCP协议的可靠实现及流量控制
1)滑动窗口 发送窗口 接收窗口
2)超时计时器
3)流量控制方法 :接收端控制发送端
2)超时计时器
3)流量控制方法:接收端控制发送端
4)流量控制的实现过程:0窗口
5)TCP协议效率管理:糊涂窗口
4.TCP的拥塞控制
1)拥塞控制的概念:拥塞就是拥堵了(网络拥堵了),拥堵的原因?数据包太多了,导致网络吞吐量下降,网络时延增加;网络时延增加又进而加剧了网络数据包增多
2)拥塞控制的手段方法
(1)核心方法:减少数据包数量
(2)具体实现:就根据不同情况,采用不同方法来减少数据包数量
(3)拥塞的主要表现就是时延的增加,为此,就围绕时延增加来进行数据包数量的调整
(4)数据包投放数量是由各主机的发送窗口大小决定的
(5)TCP又引入一个拥塞窗口的概念;拥塞发生时应该控制发送窗口的数量
结论:发送窗口的大小:min(拥塞窗口,接收窗口)
(6)拥塞控制算法:慢开始 拥塞避免 快重传 快恢复
1.TCP协议的特点
1)运输层协议,提供的可靠的进程间数据传输保障协议
2)面向连接的协议,TCP协议在管理数据传输时首先要进行连接的建立
3)面向字节流的,TCP协议将待传输数据看做一个个字节构成的字节流,并且为每个字节进行编号处理
4)TCP协议支持全双工的通信,就是在发送数据同时可以接收数据,为此维护了2个缓冲区,发送缓冲区和接收缓冲区
5)由于是面向连接的,因此只能支持1:1的通信
2.TCP协议连接管理
倒数第二节课
一,TCP的拥塞控制
1.核心方法:减少数据包的数量(尤其是新进入的数据包)
2.具体实现:根据不同情况,采用不同方法
3.拥塞主要表现:时延增加
4.拥塞窗口:拥塞发生时,能够发送数据包的个数
5.拥塞控制具体方法:
1)慢开始:设置门限值;门限值内,试探着向网络投入数据包,避免拥塞
2)拥塞避免:拥塞发生时,能够发送数据包的个数
3)快重传:当数据包未按序到达,导致重复确认增多,则立即重传该数据包,门限降为重复确认时拥塞窗口的一半,拥塞窗口同时调小
4)快恢复:发生超时时,立即急速的减少投入网络的数据包
二,TCP报文结构
三,UDP协议
1,UDP用户数据报协议
2,UDP协议特点
(1)无连接的,不可靠的运输层协议
(2)面向报文的
(3)可以支持1:n的通信