c语言sscanf函数的用法是什么
218
2022-09-24
TCP基础(2)
TCP基础(2)
前边(1)基本上说明了可靠传入的目标以及实现方式,那么把那些东西都实现一下并且解决更多的问题,这就是TCP。 TCP协议,也叫传输控制协议,是一种可靠传输的协议。因为可靠,被广泛的应用。是SOCKET里面的重点。现在N多应用层协议都是封装了它来实现数据的传输。TCP的基本流程就是:建立连接->传数据->断开连接。所有many people都说这是打电话。so 就按照流程来
建立连接
两次存在的问题
三次握手时,第三次似乎看起来没必要??逻辑分析一下,client问server在不在,server告诉client自己在,那么就可以开始通信了啊,为啥client还要告诉server自己在???似乎是多余的。 其实不然,因为server要和client通信,就需要分配CPU,内存这些资源,这是十分珍贵的,尤其是高并发状态下,本来服务器就忙不过来了,如果你是一个坏人,故意调戏他,每次发送第一次SYN之后就不管了,那么服务器每次都要给你准备点通信的资源,那完了,我开个几百万的线程瞬间就把服务器的资源抢占了,服务器gg。所以第三次握手实际上对client看上去没必要,对于服务器来说十分的重要。 当然了,在包重复时,也会产生对应的问题,所以第三次握手时必要的。
开始通信
这个和之前说的一样,可靠传输,滑动窗口机制。
断开连接
完成传输
到这里,TCP已经圆满完成任务了。建立了一个可靠的传输,但是这其中还是右许多的问题的。
RTT设置的问题
前边说了,如果一个包在RTT内没有被ACK,那么就开始重传。那么RTT怎么设置呢?静态RTT??但是网络环境时刻在变化,一会好一会坏,RTT太小导致大量数据被重传,浪费资源,太大传输效率变低。对于这个东西,可以采用自适应RTT,至于方法,不再深入讨论。
流量控制
那么TCP的样子?
结尾
TCP实现的不仅仅是可靠的传输,其中还有很多的设计才让它成为一个十分优秀的传输协议。当然了,这里只能说一些十分常用的。关于TCP的讨论,还有最后一篇:拥塞控制。然后我会的就是这么多了
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~