协议篇————2、TCP协议详解

本文详细介绍了TCP/IP协议的基础知识,包括TCP协议的特点、数据单位、自动重传请求等关键概念,并探讨了滑动窗口、拥塞处理等核心机制。

一、TCP协议简介

TCP/IP(Transmission Control Protocol/InternetProtocol) 即传输控制协议/网间协议,是一个工业标准的协议集,它是为广域网(WAN)设计的。它是由ARPANET网的研究机构发展起来的。

二、TCP协议首部格式


各个段位说明


三、数据单位

TCP 传送的数据单位协议是 TCP 报文段(segment)

四、特点

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

五、注意点

  • TCP 对应用进程一次把多长的报文发送到TCP 的缓存中是不关心的
  • TCP 根据对方给出的窗口值和当前网络拥塞的程度来决定一个报文段应包含多少个字节(UDP 发送的报文长度是应用进程给出的)
  • TCP 可把太长的数据块划分短一些再传送.TCP 也可等待积累有足够多的字节后再构成报文段发送出去
  • 每一条 TCP 连接有两个端点
  • TCP 连接的端点不是主机,不是主机的IP 地址,不是应用进程,也不是传输层的协议端口.TCP 连接的端点叫做套接字(socket)或插口

六、自动重传请求

定义:


具体实现:


七、发送缓存


八、接收缓存


九、滑动窗口


具体实现


 


十、确认丢失和确认迟到


十一、超时重传时间选择



十二、报文段的发送时机

TCP 维持一个变量,它等于最大报文段长度 MSS.只要缓存中存放的数据达到 MSS 字节时,就组装成一个 TCP 报文段发送出去
由发送方的应用进程指明要求发送报文段,即 TCP 支持的推送(push)操作
发送方的一个计时器期限到了,这时就把当前已有的缓存数据装入报文段(但长度不能超过 MSS)发送出去

十三、传输连接





十四、发送TCP请求客户端


十五、拥塞处理相关概念



十六、拥塞避免具体实现


十七、TCP的有限状态机



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值