计算机网络(二)—— 传输层协议(TCP & UDP)

      最后更新:2022-05-22 06:34:34 手机定位技术交流文章

      目录

      1.UDP协议

      1. 关于联合民主党一揽子计划的信息:

      1.2 UDP特点

      2.TCP协议

      2.1.1 TCP头(延长)

      2.2 可靠性评价:

      2.3 可靠性机制 -- -- 答复确认(数据号+随着时间推移再传送)

      2.4 连接管理——3次握手

      2.5 连接控制——4个波浪

      2.6 建议的访谈题目:

      2.7 对电流控制与交通控制

      3.UDP & TCP

      1.UDP协议

      1. 关于联合民主党一揽子计划的信息:

      解包很简单, 因为长度固定在 8 字节 。

      16位位源端口+ 16位端口+ 16位点端口+ 16位点UDP长度(确定传输数据的最大量为64K)+ 16位点校验和(仅用于避免数据错误)。类似hash算法,发件人的计算已经得到确认。它由接收者使用同样的散列物计算。比对数据,如果接收器的散列值与源的散列值不符,会直接丢弃)

      1.2 UDP特点

      • 无连接(在没有连接的情况下传送);

      • 不值得信赖。

      • 以数据为基础的通信(从申请一级,直接发送给我,没有分割、合并或发送缓冲区)

      2.TCP协议

      职责:

      • 进程-进程通信

      • TCP是可靠的(但不能保证它的安全)。

      2.1.1 TCP头(延长)

      2.2 可靠性评价:

      • TCP将尽一切努力相互交流数据。

      • 如果没有,TCP会通知程序, 让它知道我没有, 数据就会失效。

      • 核对总和也确保了我的数据正确无误。

      • TCP可以保证所收到的数据在交付的正确顺序上。

      • TCP将根据彼此的接收能力和网络线路的承载能力来管理流量。

      2.3 可靠性机制 -- -- 答复确认(数据号+随着时间推移再传送)

      用于确认另一方对收到的TCP数据的反应的TCP技术

      确认应答机制:

      双方都保留自失效装置,自失效装置对对方的自失效装置有反应。

      如果没有收到应答:

      也许他们没拿到?

      也许解决办法还没到?

      也许答案被省略了?

      无论如何,发件人不应无休止地等待,可以规定时间限制。

      在这两种情况下,发件人都不关心,如果在截止日期前没有收到发件人,发件人再次发一份副本,因此接收人必须拥有巨大的容量(按序号),接收人必须丢弃已经收到的东西。

      不应永远重复,因为重复的次数有限。

      当达到最大数时, TCP 将关闭连接并警告进程( 通过异常返回), 最终 TCP 将把重置的文本传送给接收者( 最后一次清除尝试 ) 。

      2.4 连接管理——3次握手

      ???什么是连接?

      TCP缓冲区包括接收和传递缓冲区。

      TCP必须在发送时保留序号SN。

      TCP必须保留获得的确认号码。

      (在操作系统中,TCP占有一个完整的空间。 )

      TCP, 连接的理念, 摘述这些属性的集合 。

      为什么你想 建立连接?

      确认对方存在;

      所需数据交换(SN、ASN)

      接连 - 三次握手

      (除上述资料外,还必须保持连接。 )

      • 从徽标的角度来看,有三种握手方式:

      第三种仅允许运输数据。

      • 从序列号的角度来看,有三种握手方式:

      • 从TCP变化的角度来看,有三种握手方式:

      TCP连接是全时的,只要它们连接起来,而且谁先传输它,谁就能赢。

      有关代码的实现:

      2.5 连接控制——4个波浪

      标志位是 FIN

      4个波浪可以组合,但没有必要。

      如合并为三次:

      FIN——FIN+ACK——ACK

      如双方同时关闭:

      状态转移图:

      2.6 建议的访谈题目:

      (1) 为什么使用时报状态,而不是直接接近?

      Time_WAIT是一个用来冷藏的状态。

      • 如果状态被直接改变,有关这一程序的信息,如五组信息,可能会被重新使用,从而产生新的连接,不知道应提供哪些数据。

      • 避免再次传送最新数据损失。

      (笑声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声) (掌声)

      (3)异常关闭连接

      RST 标记 -- -- 收到重置信号后, TCP 立即关闭连接,程序出现异常。

      TCP 异常(4)

      • 直接使用任务管理员终止进程的任务管理器终止过程 - TCP 连接到进程: OS 知道要终止的连接, OS 控制 4 个手握锁定

      • 单击重新启动/关闭时,与操作过程的连接一般关闭(OS控制)。

      • 断电使计算机失效;什么也不会发生。我没有空闲时间我不知道街对面发生了什么不会处理——>直到对方有写操作,然后多次超时重连,才会发现问题,但我还是不确定是线还是线如果对方刚刚读了手术也是永远发现不了问题的——>所以一般也会给读操作增加一个超时时间,定期向对方发送对面通信。

      • 这条线有一个问题;与往常一样,它是只读的。

      2.7 对电流控制与交通控制

      流动控制-TCP允许根据接收端的处理能力确定发送方的发送速度。

      基于选区的控制--基于网络承载能力的控制

      (1)流量控制

      知道你对应方的接收能力(即,在对方的缓冲接待区内可能再放置多少人)――接收窗口信息中的窗口大小与接收能力相对应

      发送方的发送量<=对方的实时窗口大小——发送方利用滑动窗口机制进行发量控制

      滑动窗口:

      (2)拥塞控制

      了解网络的承载能力--堵塞的窗口

      发送数量 - 发送窗口 = f( 默认窗口, 接收窗口), F 是最小函数 。

      最后,控制也以滑动窗口技术为基础。

      [重点差异:了解网络承载能力]:

      没有确切的数字,但它是基于算法——这是1990年代的旧算法。

      缓慢启动+快速扩展(指数阶段+附加阶段)

      • 慢开始:初始值为1

      • 快速增长: 设定一个称为慢速启动 shstresh 的阈值, 当凝结窗口穿过屏障时, 它会直线增长而不是指数增长 。

      • 当出现网络干扰时,缓慢的起步门槛降低到一半。

      • 当再传输的数量超过特定阈值时,网络将被关闭,抽搐窗口被重置为1。

      • UDP:应用级的写作取得了成功;数据通过网页卡写入网络,但没有相互联系。

      • TCP: 书写成功, 但数据只保存在 TCP 的传输缓冲中 。

      报头中的其他信息:

      使用 URG+16 比特的紧急指针

      PSH = 0,运行 TCP 以保存一定时间长度的接收数据,并为应用级别组装设定数量

      选项:其他扩展信息

      其他机制:

      延迟应答

      捎带应答

      快重传

      3.UDP & TCP

      • 主要区别:

      UDP:不可靠、不连接、以数据为导向的协议

      TCP:可靠、连接和字节流动

      • 当为网络编程时, 您如何选择合适的传输层协议?

      默认一般选TCP;

      当可靠性不那么重要而实时性更重要时,就雇用UDP。

      TCP只得到一对一的关注,广播得到民进联的支持。

      UDP 视频、语音电话和部分现场直播

      • UDP如何变成可靠的?——>把它变成tcp呗,tcp有的他都可以借鉴

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/25735.html

          热门文章

          文章分类