计算机网络面经-TCP为什么可靠

先说结论:

  • 确认和重传:接收方收到报文就会确认,发送方发送一段时间后没有收到确认就重传。
  • 数据校验
  • 数据合理分片和排序:
  • 流量控制:当接收方来不及处理发送方的数据,能降低发送方的发送速度,防止包丢失。
  • 拥塞控制:当网络拥塞时,减少数据的发送。

具体分析:

  1. 确认和重传(Acknowledgment and Retransmission)

    • 确认:当接收方成功接收到一个数据报文(或称为数据包、帧等)后,它会向发送方发送一个确认报文,以告知发送方数据已成功接收。
    • 重传:发送方在发送数据后等待接收方的确认。如果在一段时间内没有收到确认(可能是由于网络延迟、丢包等原因),发送方会重新发送该数据报文,这就是重传。重传机制可以确保数据的可靠性传输。
  2. 数据校验(Data Checksum)

    • 数据校验是一种检查数据在传输过程中是否发生错误的方法。发送方会为每个数据报文计算一个校验和(或称为校验码、校验值等),并将其附加在数据报文上。
    • 接收方在收到数据报文后,会使用相同的算法重新计算校验和,并与发送方附带的校验和进行比较。如果两者一致,则数据很可能在传输过程中没有发生错误;如果不一致,则数据可能已损坏,需要进行错误处理(如请求重传)。
  3. 数据合理分片和排序(Data Fragmentation and Sequencing)

    • 分片:当要发送的数据包太大,不适合整个网络或某个特定的传输层协议时,发送方会将其分割成多个较小的数据包进行传输。每个数据包都是原始数据的一部分,称为分片。
    • 排序:接收方在接收到分片后,需要按照原始数据的顺序重新组合它们。这通常是通过在每个分片中附加一个序列号来实现的,接收方可以根据这些序列号对分片进行排序和重组。
  4. 流量控制(Flow Control)

    • 流量控制是一种机制,用于防止发送方发送数据过快,导致接收方来不及处理。当接收方的缓冲区已满或处理能力受限时,它会向发送方发送一个信号,告知其减慢发送速度或暂停发送。
    • 流量控制可以防止数据丢失和接收方资源的过度使用。
  5. 拥塞控制(Congestion Control)

    • 拥塞控制是一种机制,用于防止过多的数据同时进入网络,导致网络拥塞和性能下降。当网络出现拥塞时,发送方会采取措施减少数据的发送速度或数量,以减轻网络的负担。
    • 拥塞控制通常与流量控制结合使用,以确保网络的稳定和高效运行。 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值