范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

TCP如何保证可靠传输

  TCP工作c在哪一层、为什么需要TCP协议?
  TCP/IP是一个四层的体系结构,主要包括:应用层、传输层、网络层和网络接口层。
  五层协议的体系结构主要包括:应用层、传输层、网络层,数据链路层和物理层。
  OSI七层协议模型主要包括是:应用层(Application)、表示层(Presentation)、
  会话层(Session)、传输层(Transport)、网络层(Network)、数据链路层(Data Link)、物理层(Physical)。
  发送端在层与层之间传输数据时,每经过一层时会被打上一个该层所属的首部信息。反之,接收端在层与层之间传输数据时,每经过一层时会把对应的首部信息去除。
  IP 层是不提供可靠性保障的、无状态的,它不保证网络包的交付、不保证网络包的按序交付、也不保证网络包中的数据的完整性。如果需要保障网络数据包的可靠性,那么就需要由上层(传输层)的 TCP 协议来负责。因为 TCP 是一个工作在传输层 的可靠数据传输的服务,它能确保接收端接收的网络包是无损坏 、无间隔 、非冗余 和按序的 。
  TCP首部
  每个TCP段都包含 源端和目的端的端口号 ,用于寻找发端和收端应用进程。这两个值加上IP首部中的源端IP地址和目的端IP地址唯一确定一个TCP连接。 序列号 用来标识从TCP发端向TCP收端发送的数据字节流,它表示在这个报文段中的的第一个数据字节。如果将字节流看作在两个应用程序间的单向流动,则 TCP用序列号对每个字节进行计数 。序列号是32 bit的无符号数,序列号到达232-1后又从0开始。 用来解决网络包乱序问题 。 确认应答号包含发送 确认的一端所期望收到的下一个序号 。因此,确认序号应当是上次已成功收到数据字节序号加1.  用来解决不丢包的问题 标志比特: ACK :该位为 1 时,「确认应答」的字段变为有效,TCP 规定除了最初建立连接时的 SYN 包之外该位必须设置为 1 。 RST :该位为 1 时,表示 TCP 连接中出现异常必须强制断开连接。 SYN :该位为 1 时,表示希望建立连接,并在其「序列号」的字段进行序列号初始值的设定。 FIN :该位为 1 时,表示今后不会再有数据发送,希望断开连接。当通信结束希望断开连接时,通信双方的主机之间就可以相互交换 FIN 位为 1 的 TCP 段。
  使用WireShark抓包分析三次握手
  TCP 建立连接为什么需要三次握手
  针对这个问题,首先我们需要知道什么是  连接  ,只有知道连接的定义,我们才能去尝试回答为什么 TCP 建立连接需要三次握手。  什么是TCP连接  ?用于保证可靠性和流量控制维护的某些状态信息,这些信息的组合,包括  Socket  、  序列号  和  窗口大小  称为连接。所以,重要的是为什么三次握手才可以初始化Socket、序列号和窗口大小并建立 TCP 连接。接下来以三个方面分析三次握手的原因:  三次握手才可以阻止重复历史连接的初始化(主要原因) 三次握手才可以同步双方的初始序列号 三次握手才可以避免资源浪费
  如果客户端的 SYN 阻塞了,重复发送多次 SYN 报文,那么服务器在收到请求后就会建立多个冗余的无效链接,造成不必要的资源浪费。
  TCP 协议的通信双方, 都必须维护一个「序列号」, 序列号是可靠传输的一个关键因素,它的作用:
  接收方可以去除重复的数据;接收方可以根据数据包的序列号按序接收;可以标识发送出去的数据包中, 哪些是已经被对方收到的;
  我们都知道 TCP 连接建立是需要  三次握手  ,假设攻击者短时间伪造不同 IP 地址的 SYN 报文,服务端每接收到一个 SYN 报文,就进入SYN_RCVD 状态,但服务端发送出去的 ACK + SYN 报文,无法得到未知 IP 主机的 ACK 应答,久而久之就会占满服务端的  SYN 接收队列  (未连接队列),使得服务器不能为正常用户服务。
  为什么 TIME_WAIT 等待的时间是 2MSL? 为了保证客户端最后一次挥手的报文能够到达服务器,如果第四次挥手的报文段丢失了,服务器会超时重传这个第三次挥手的报文段,所以客户端不是直接进入CLOSED,而是要保持TIME_WAIT(等待2MSL就是TIME_WAIT)就起到作用了,当再次收到服务器的超时重传的断开连接的第三次挥手的请求的时候,客户端会继续给服务器发送一个第四次挥手的报文, 能够保证对方(服务器)收到客户端的回应报文 ,最后客户端和服务器正确的关闭连接。 如果Client(客户端)直接CLOSED(关闭),然后又再向Server(服务器端)发起一个新连接,我们不能保证这个新连接与刚关闭的连接的端口号是不同的。也就是说有可能新连接和老连接的端口号是相同的。一般来说不会发生什么问题,但是还是有特殊情况出现:假设新连接和已经关闭的老连接端口号是一样的,如果前一次连接的 某些数据仍然滞留在网络中 ,这些延迟数据在建立新连接之后才到达Server,由于新连接和老连接的端口号是一样的,于是,TCP协议就认为那个延迟的数据是属于新连接的,这样就和真正的新连接的数据包发生混淆了。所以TCP连接还要在TIME_WAIT状态等待2倍MSL,这样可以 保证本次连接的所有数据都从网络中消失 。
  超时与重传
  超时重传   :在发送数据时,设定一个定时器,当超过指定的时间后,没有收到对方的 ACK 确认应答报文,就会重发该数据TCP 会在以下两种情况发生超时重传:  数据包丢失 确认应答丢失
  重传超时时间RTO计算
  TCP超时与重传中最重要的部分就是对一个给定连接的  往返时间(RTT)的测量  。由于路由器和网络流量均会变化,因此我们认为这个时间可能经常会发生变化,TCP应该跟踪这些变化并相应地改变其超时时间。
  滑动窗口
  win这个字段是接收端告诉发送端自己还有多少缓冲区可以接收数据。于是发送端就可以根据这个接收端的处理能力来发送数据,而不会导致接收端处理不过来。起到  流量控制  的作用
  可用窗口的大小为 0 时,表明可用窗口耗尽,在没收到 ACK 确认之前是无法继续发送数据了。
  拥塞控制
  前面的流量控制是避免「发送方」的数据填满「接收方」的缓存,但我们并不知道当时的网络状况是怎样的,在网络出现拥堵时,如果继续发送大量数据包,可能会导致数据包时延、丢失等,这时 TCP 就会重传数据,但是一重传就会导致网络的负担更重,于是会导致更大的延迟以及更多的丢包,这个情况就会进入恶性循环被不断地放大....
  每一个 TCP 连接都会维护一个拥塞控制窗口(cwnd),它决定了发送方同时能向接收方发送多少数据,其作用主要有两个:  防止发送方向接收方发送了太多数据,导致接收方无法处理; 防止 TCP 连接的任意一方向网络中发送大量数据,导致网络拥塞崩溃;
  使用 TCP 慢启动时,发送方每收到一个响应方的 ACK 消息,拥塞窗口大小就会加一。当拥塞窗口大小大于慢启动阈值时,就会使用拥塞避免算法:
  线性增长:每经过一个往返时间 RTT,拥塞窗口大小会加一;积式减少:当发送方发送的数据包丢包时,慢启动阈值会设置为拥塞窗口大小的一半;
  慢启动为发送方的TCP增加了另一个窗口:  拥塞窗口  (congestion window),记为cwnd。当与另一个网络的主机建立TCP连接时,拥塞窗口被初始化为  1  个报文段(即另一端通告的报文段大小)。  每收到一个ACK,拥塞窗口就增加一个报文段  (cwnd以字节为单位,但是慢启动以报文段大小为单位进行增加)。  发送方取拥塞窗口与通告窗口中的最小值作为发送上限  。拥塞窗口是发送方使用的流量控制,而通告窗口则是接收方使用的流量控制。
  当cwnd超过一定的阀值,就会启动拥塞避免算法.
  网络就会慢慢进入了拥塞的状况了,于是就会出现丢包现象,这时就需要对丢失的数据包进行重传。当触发了重传机制,也就进入了「拥塞发生算法」。当网络出现拥塞,也就是会发生数据包重传,重传机制主要有两种: 超时重传 快速重传当发生了「超时重传」,则就会使用拥塞发生算法。这个时候,ssthresh 和 cwnd 的值会发生变化:ssthresh 设为 cwnd/2,cwnd 重置为 1

斑斓如梦!冬季的南隍城岛散发出无穷魅力!一说到海岛,印象里碧海蓝天,海鸥飞舞。可是,冬季的南隍城岛,总有些浪淘天地入东流的感觉。南隍城岛的冬天斑斓如梦,傍晚玫红的天空,红云漫天,是少女绯红的脸颊。南隍城岛冬天的海,以为也莫言别人的屋檐再大,都不如自己有把伞(人间清醒)头号解忧馆图片来自于网络躺床上好好想想,一辈子能相信谁,又能依赖谁,一路走来,行囊里装满了酸甜苦辣,当有一天你尝尽了社会的无情,金钱的压力,爱情的不堪,你终会明白,别人的屋檐再大,最贤的妻最才的女真正的平静,来自内心。若是一颗躁动的心,无论幽居于深山,还是隐没在古刹,都无法真正获得安静。在岁月的风华里,心不能是招摇的枝丫,而应是静默的根系,深理于地下,不为尘世的一切所动,只励志的文案短句子1如果一个人只把苦难看作是绊脚石,那么他其实只是绊脚石,如果把苦难看作是垫脚石,那么他就会成为你人生路上的阶梯。2战略没有细节就等于所以我给所有的创业者,包括你做透很重要。3世界本夜读感谢一路对我好的人谢谢你。匆匆岁月里,总有几个人,如冬日暖阳般,温暖和照耀着我们。说几句心里话,说给在乎的人听。致父母谢谢你们养我长大,为我遮风挡雨,护我周全。小时候,事无大小,叫一声爸妈,他们就像10个月没发新品员工在线讨薪,黑鲨陷入至暗时刻作者龚进辉上个月,小米合伙人卢伟冰大胆预言,2023年你已经不需要一部电竞手机,电竞手机注定要消亡。万万没想到,他一语成谶,悲剧发生在黑鲨身上,尽管这家小米投资的游戏手机品牌并未完2023年硬件将涨价,PC厂商集体过冬?老司机建议买电脑要趁早回顾过去一年,PC市场在走过了20202021年的疯狂后,终于迎来了平缓降价的一年,然而硬件市场的一番组合拳,再次让市场泛起巨浪。英伟达在发布全新的RTX40系移动平台后,有媒体曝韩国制定了iPhone和iPad等设备在国家机关使用时的安全标准据韩联社1月11日报道,韩国国家情报院1月11日表示,他们在有关网站上公开了针对iPhoneiPad设备的iOSiPadOS移动终端安全管理(MDM)产品的国家安全要求。这意味着在稀,稀缺,无法抗拒失去机会的焦虑模糊谈判力稀,稀缺,无法抗拒失去机会的焦虑模糊谈判力第五十七篇这是桔梗在谈判思维的第734篇推文。全文共2083字,阅读大约需要3分钟。1引言每次新一代iPhone上市,都是果粉们狂欢的节日iPhone14Pro出现屏幕质量问题!灵动岛出现大面积横条iPhone14Pro屏幕问题近期大量用户反馈,自己的iPhone14Pro灵动岛区域的屏幕出现了类似于烧屏的问题,屏幕硬件出现问题,苹果官方告知只能换屏幕。这个问题首先在国外频繁Adobe2023全家桶1月新版来啦!更智能更好用!哈喽!小伙伴们!熟悉Adobe的朋友都知道,Adobe每年10月份都会带来新一年的软件!这不,Adobe2023全家桶1月更新又来啦!(此次主要还是Win系统更新,小版本更替,主要
水环境一张网守护泰城清流碧波春寒料峭,新年伊始。刚刚过去的春节小长假,文旅市场强势复苏,泰山脚下的龙泽湖游园水碧景绿山水辉映成为市民游客流连忘返的网红打卡地。这个游园就是沿湖建成,往年天一热湖水就有异味,今年贵州深山最原始民族,女人上衣只有两片,时而春光乍泄在贵州的大山中有一个少数部落。(此处已添加小程序,请到今日头条客户端查看)听说这里的女孩子只穿两片衣服,很容易暴露隐私,看到的男性游客都会觉得很不好意思。大家都知道,云南,贵州等地不为人知的非洲原始部落(2)很高兴今天又和大家见面了,上一期小编跟大家一起走进了解了四个非洲神秘的原始部落,不知道大家还是否对上期的内容还有没有印象,但是在辽阔的非洲大草原茂盛的原始森林中,还孕育了无数原始部青年旅游联盟得保卫全球旅游权友林哲学20200725飞厢元宇宙科幻小说全球旅游青年联盟发布了一个超级宣言世界被搞得很糟了!年轻人快苏醒!一定要防止第N次世界大战!防止核弹轰炸地球任何地方!因为地球属于我们的!广州出发江门1天游,打卡紫花风铃花海彩虹村三十三墟街今天给大家分享一条从广州出发,江门1天旅游行程,走进近日热播的连续剧狂飙取景地三十三墟街行走于蓬江长堤历史文化街,寻地道美食。行摄紫花风铃花海打卡彩虹村,拍不一样的风景照。紫花风铃倒计时1小时!赶紧来瓦屋山抖音直播间,景区内酒店免费送啦!!保存图片,打开抖音扫一扫进入直播间!!抖音搜索瓦屋山景区进入直播间哦!!福利抢不停今日十点整,最后一波福利!!千万不要再错过啦一元畅游瓦屋山套票景区内酒店免费住抓住假期的尾巴,赶紧当代年轻人旅行图鉴不拘一格的玩乐家马蜂窝最新发布当代年轻人旅行图鉴不拘一格的玩乐家32页报告获取方式见文末。年轻人的新玩法,意味着不循旧途,也意味着及时满足。他们谈论旅行时,已经不仅仅是去远方。他们出门的理由,也早香港通关攻略上环热狗之王香港旅游香港美食香港通关根据消息,香港中国内地终于实行真正意义的通关,不用申请配额,也不用提前做核酸,回復到三年前的安排。很欢迎内地的朋友继续过来购物或进行商务拜访,有内地的老朋友绝美!今年元宵节福州这些地方别错过!元宵节马上到了过节的仪式感怎么能少了逛灯会看花灯呢?福州的元宵花灯自古闻名有天下上元,灯烛之盛无逾闽中的美誉今年,福州早早安排了美美的花灯这个元宵节我们一起逛起来!秀闽江福满仓20总台记者看世界丨同样是喝茶,印度人喝茶有何不同?总台记者看世界!我是总台驻印度记者王建兵,今天想跟大家聊一聊印度的茶叶生产以及茶文化。喝茶在印度南北各地都十分流行。可以说,印度人如果一天不喝茶,就会走路迈不开步子。一小杯茶10卢元宵节哪里去?台州这些地方放心去,不踩坑!春节期间,台州市文化和广电旅游体育局推出了台州味过大年文化民俗活动。即将在元宵节上线的台州味迎兔年非遗展示体验系列活动,将为这场新春文化嘉年华画上一个圆满的句号。新颖的非遗市集文化