运输层相关信息(可靠传输的原理、运输连接管理)

注意1、IP层只能提供尽最大能力努力服务,TCP下面的网络所提供的是不可靠的传输
解决方法我们用可靠传输协议,出现差错的时候让发送方重传出现错误的数据,
在接收方来不及接收数据时,降低发送方发送数据的速度。
两个相关协议及可靠的TCP的运输连接
1、停止等待协议(通过用超时重传来实现可靠传输)
2、连续ARQ协议(滑动窗口)
TCP可靠的传输连接
这里写图片描述
1、服务器端做好准备(创建传输控制块TCB、准备接收客户进程的连接请求、服务器端进程处于LISTEN(收听)状态,等待客户端的连接)
2、客户端发送连接请求(创建传输控制块TCB、同步位SYN=1,初始序号seq=x。TCP客户端进入SYN_SENT(同步已发送)状态)
3、服务器做出响应(SYN、ACK置1,确认号x+1,初始序列号seq=y。TCP服务器进程进入SYN_RECV(同步收到)状态)
4、客户端给出确认(ACK置1,ack=y+1,seq=x+1(客户端进入连接建立))
5、服务器收到客户端的连接确认,也进入已建立连接

为什么客户端最后还要发送一次确认
主要是为了防止已失效的连接请求保温段突然有传送到服务器。

四次挥手
这里写图片描述
1、客户端向服务器发送连接释放(FIN 1,seq=u,客户端进入(FIN_WAIT1)终止等待1
2、服务器发送确认(ACK 1,seq=v,ack=u+1,服务器进入CLOSE_WAIT关闭等待(a到b的连接释放)
3、客户端收到服务器的确认进入(FIN_WAiT2
4、服务器发送连接释放(ACK 1,FIN 1 ,seq=w,ack=u+1)(服务器进入LAST_ACK(最后确认))
5、客户端收到服务器的连接释放,发送确认信息(ACK 1 ,seq=u+1,ack=w+1)(服务器进入时间等待(TIME_WAIT)
6、服务器收到最后确认结束,客户端等待两秒后进入关闭状态

为什么客户端在TIME_WAIT状态必须等待2MSL的时间呢

因为客户端的发送ack能够到达服务器,假设丢失,服务器重传释放连接请求,则客户端就能在2MSL内接受到这个请求,则客户端就可以重新发送一次确认。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值