笔记:TCP/IP与网络模型

网络模型

网络模型.jpg
TCP的特性:

1.面向连接
2.全双工允许双端同时收发数据
3.有超时重传机制(RTO,Retransmission TimeOut)与动态计算往返时延(RTT)
4.滑动窗口控制双端每次的发送和接收大小,进行流量控制,所谓窗口实际表示接收能力,用以限制发送方的发送速度。
多说无益,直接看图吧
5.面向连接的服务(例如Telnet、FTP、rlogin、X Windows和SMTP)需要高度的可靠性,所以它们使用了TCP。DNS在某些情况下使用TCP(发送和接收域名数据库),但使用UDP传送有关单个主机的信息。

TCP的三次握手与四次分手

先看图:


TCP.jpg
FAQ:
  • 为什么TCP握手是三次 不是两次也不是四次:
    答:TCP连接的建立是全双工的是可靠的。需要确定对方传输的seq(序列号)来确定传输中途是否有丢包,以确定是否需要出发。
    第一次我说是发起方发送序列号给到对端
    对端确定发起方的起始序列号后+1发起第二次握手回复ack给发起方并传递自己的seq给到发起方。
    三次过后刚好确定双方的起始序列号 因此三次刚好 2次 不能确定发起方确定对端知道自己的起始序列号; 四次又过多。
    发起方接到对端的起始序列号+1 第三次握手 回复ack给到对端。
  • 为什么分手需要TIME_WAITING状态
    答:设置TIME_WAITING状态的2个用途。1.网络传输可能丢包设置TIME_WAITING让服务器确切收到客户端回复的服务端的fin的ack报文。如果丢失客户端有时间重传。2.让客户端有足够的时间来断开连接舍弃后面的报文。避免其他程序在客户端分手后立刻占用其端口收到不该它收的数据。给客户端有足够的时间安全舍弃报文。通常为2个MSL周期(最长报文段寿命/最长分节生命期 max segement lifetime,MSL是任何IP数据报能够在因特网中存活的最长时间,任何TCP实现都必须为MSL选择一个值。RFC 1122[Braden 1989]的建议值是2分钟,不过源自Berkelcy的实现传统上改用30秒这个值。这意味着TIME_WAIT状态的持续时间在1分钟到4分钟之间)。如果发生网络异常此时keep-alive参数就会发挥作用
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.linux文件描述符 描述符从3开始以由小到大的顺序编号,0,1,2,分配给标准I/O用作标准输入、标准输出和...
    leon4ever阅读 5,368评论 0 2
  • tcp三次握手和四次挥手 为什么需要三次握手 TCP是全双工的,即客户端在给服务器端发送信息的同时,服务器端也可以...
    UPDOWN_GG阅读 3,269评论 0 2
  • 同样的,本文篇幅也比较长,先来一张思维导图,带大家过一遍。 一图看完本文 一、 计算机网络体系结构分层 计算机网络...
    WLAN专栏阅读 2,563评论 0 0
  • 从本节开始,我们开始学习最重要的传输层。传输层位于OSI七层模型的第四层(从下往上)。顾名思义,传输层的作用是实现...
    doudo阅读 4,608评论 0 1
  • 久违的晴天,家长会。 家长大会开好到教室时,离放学已经没多少时间了。班主任说已经安排了三个家长分享经验。 放学铃声...
    飘雪儿5阅读 12,211评论 16 22

友情链接更多精彩内容