tcp协议笔记整理

TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。以下是对TCP协议的一些笔记要点:

tcp与udp区别:

 1. 面向连接

- TCP在数据传输之前,需要先建立一个连接,这个过程称为“三次握手”。

- 连接的建立保证了数据传输的两端都准备好进行通信。

 2. 三次握手

- 第一次握手:客户端发送一个SYN(同步序列编号)报文到服务器,并进入SYN_SENT状态,等待服务器确认。

- 第二次握手:服务器收到SYN报文,需要确认客户端的SYN,同时自己也发送一个SYN报文,即SYN+ACK(确认)报文,此时服务器进入SYN_RCVD状态。

- 第三次握手:客户端收到服务器的SYN+ACK报文后,向服务器发送确认包ACK,此包发送完毕,客户端和服务器都进入ESTABLISHED状态,完成TCP三次握手。

3. 可靠传输

- TCP通过序列号、确认应答、重传机制、流量控制、拥塞控制等手段保证数据的可靠传输。

建⽴连接(标志位):通信前确认通信实体存在。

序号机制(序号、确认号):确保了数据是按序、完整到达。

数据校验(校验和):CRC校验全部数据。

超时重传(定时器):保证因链路故障未能到达数据能够被多次重发。

窗⼝机制(窗⼝):提供流量控制,避免过量发送。

- 序列号:TCP将每个字节的数据都进行了编号,确保数据的有序传输。

- 确认应答:接收方收到数据后,会发送确认应答(ACK),如果发送方在合理的时间内没有收到ACK,会重传数据。

- 重传机制:包括超时重传和快速重传两种策略。

4. 流量控制

- TCP使用滑动窗口机制进行流量控制,避免发送方发送数据过快,接收方来不及接收。

- 窗口大小会根据网络状况动态调整。

5. 拥塞控制

- TCP的拥塞控制算法包括慢开始、拥塞避免、快重传和快恢复。

- 目的是避免网络拥塞导致数据传输效率降低。

 6. 四次挥手

- 当通信结束时,TCP连接通过四次挥手来释放。

- 过程包括:终止方发送FIN报文,对方确认ACK,然后对方发送FIN报文,终止方确认ACK。

 7. TCP头部

- TCP头部包含源端口、目的端口、序列号、确认应答号、数据偏移、保留、控制位、窗口大小、校验和、紧急指针等字段。

 8. 状态转换

- TCP连接的建立、数据传输、连接释放过程中,涉及到多种状态转换,如LISTEN、SYN_SENT、SYN_RCVD、ESTABLISHED、FIN_WAIT_1、FIN_WAIT_2、TIME_WAIT等。

 9. 应用场景

- TCP适用于对数据准确性要求较高的场景,如文件传输、邮件传输、网页浏览等。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值