计算机装置及用于计算机装置的传输控制协议封包处理方法与流程
- 国知局
- 2024-08-02 14:35:25
本发明涉及不同计算机装置之间的网络通信,尤其涉及一种可藉由避免传输控制协议封包重传及降低处理器负载来改善网络测速结果的装置与方法。
背景技术:
1、传输控制协议(transmission control protocol,以下简称为tcp)是属于传输层(transport layer)的一种协议,也是属于端点对端点(end-to-end)的传输协议,亦称为主机对主机(host-to-host)或程序对程序(process-to-process)的传输协议,换句话说,在tcp两端的计算机装置可通过彼此的沟通,确保资料在传输中的正确性以及传输速率的控制,这些动作只是两端的计算机装置之间沟通即可,完全无关于中间所经过的任何节点,例如路由器(router)或交换机(switch)。tcp通过确认(acknowledgement)以及重传(retransmission)这两种机制来确保tcp封包通过网络传输的正确性(integrity)和可靠性(reliability),因此在传输的整体过程中会较没有效率,但却能保证将tcp封包正确无误地由一传送端传送至一接收端。然而,对于某些应用来说,这样的特性反而不是必要的,举例来说,对于网络测速的应用来说,光网络单元(optical network unit,onu)上可运行超文本传输协议(hypertext transfer protocol,http)用户端(client),来访问互联网上的http服务器以进行测速,例如,当用户上网速度变慢的时候,用户会想要进行网络测速来测量当前的网络带宽(例如下载速率),由于http是属于应用层(application layer),后续是通过传输层的tcp来负责让数据可以正确送达目的地,当接收端发现丢包时,会要求传送端进行tcp封包重传,然而,当网络上的时延(latency)越大,亦即传送端送出tcp封包和收到接收端响应的确认(acknowledgement,ack)封包的时间差(又称为往返时间(round triptime,rtt))越大时,则tcp掉包的比例会增加,同时降低传送端与接收端之间封包交换的效率,如此一来,若rtt越大,则tcp的性能越低,因而无法测出用户真实的下载速率。此外,对比于http服务器上具有强大运算能力的处理器,用户端的光网络单元往往因为成本考虑而采用运算能力较弱的处理器,为了让光网络单元在进行下行测速时能测出较准确的速率,光网络单元会使用大型接收卸载(large receive offload,lro)方式,亦即让光网络单元的硬件帮忙将多个小于最大传输单元(maximum transmission unit,mtu)的封包聚合成一个超大的封包送给处理器,假设聚合个数为12,则处理器所要处理的封包个数便可缩减为1/12,然而,当网络存在较多丢包时(例如光纤线路终端(optical line termination,olt)对光网络单元执行下行限速会有大量丢包),这种情况下的聚合个数会减少,进而造成处理器所要处理的封包个数增加,如此一来,光网络单元会因为本身处理器忙碌而无法准确测量出当前的网络带宽,举例来说,当光纤线路终端对光网络单元执行7.5gbps的下行限速,则处于高处理器负载状态的光网络单元的网络测速结果会远低于光纤线路终端的下行限速值。
技术实现思路
1、本发明的目的之一在于提出一种可藉由避免传输控制协议封包重传及降低处理器负载来改善网络测速结果的装置与方法。
2、在本发明的一个实施例中,公开一种计算机装置。该计算机装置包含一网络接口电路、一存储装置以及一处理器。该网络接口电路用来自另一计算机装置接收多个第一传输控制协议封包。该存储装置用来存储一程序代码。该处理器用来载入并执行该程序代码以进行以下操作:指示该网络接口电路来传送多个第二传输控制协议封包至该另一计算机装置,其中该多个第二传输控制协议封包包含连续传送的一第二传输控制协议封包与另一第二传输控制协议封包,该第二传输控制协议封包为该多个第一传输控制协议封包中的一第一传输控制协议封包的确认封包,该另一第二传输控制协议封包为该多个第一传输控制协议封包中的另一第一传输控制协议封包的确认封包,以及该第一传输控制协议封包与该另一第一传输控制协议封包具有不连续的序号;以及根据该多个第一传输控制协议封包的数据量来计算该计算机装置所使用的一网络的网络速率。
3、在本发明的另一个实施例中,公开一种计算机装置。该计算机装置包含一网络接口电路、一存储装置以及一处理器。该存储装置用来存储一程序代码。该处理器用来载入并执行该程序代码以进行以下操作:指示该网络接口电路传送一第一传输控制协议封包至另一计算机装置;以及在指示该网络接口电路传送该第一传输控制协议封包至该另一计算机装置之后,指示该网络接口电路传送另一第一传输控制协议封包至该另一计算机装置。该网络接口电路还用来接受来自该另一计算机装置的一第二传输控制协议封包,且该第二传输控制协议封包为该另一第一传输控制协议封包的确认封包。在该网络接口电路接收到该第二传输控制协议封包之前,该网络接口电路不会接收到对应该第一传输控制协议封包的确认封包。
4、在本发明的另一个实施例中,公开一种应用于一计算机装置的传输控制协议封包处理方法。该传输控制协议封包处理方法包含:自另一计算机装置接收多个第一传输控制协议封包;传送多个第二传输控制协议封包至该另一计算机装置,其中该多个第二传输控制协议封包包含连续传送的一第二传输控制协议封包与另一第二传输控制协议封包,该第二传输控制协议封包为该多个第一传输控制协议封包中的一第一传输控制协议封包的确认封包,该另一第二传输控制协议封包为该多个第一传输控制协议封包中的另一第一传输控制协议封包的确认封包,以及该第一传输控制协议封包与该另一第一传输控制协议封包具有不连续的序号;以及根据该多个第一传输控制协议封包的数据量来计算该计算机装置所使用的一网络的网络速率。
5、在本发明的另一个实施例中,公开一种应用于一计算机装置的传输控制协议封包处理方法。该传输控制协议封包处理方法包含:传送一第一传输控制协议封包至另一计算机装置;在传送该第一传输控制协议封包至该另一计算机装置之后,传送另一第一传输控制协议封包至该另一计算机装置;以及接受来自该另一计算机装置的一第二传输控制协议封包,其中该第二传输控制协议封包为该另一第一传输控制协议封包的确认封包,以及在接收到该第二传输控制协议封包之前,不会接收到对应该第一传输控制协议封包的确认封包。
6、由于网络测速实际上并不关注数据内容的正确性,因此可以不用依赖标准tcp流程所提供的重传机制来确保tcp封包通过网络传输的正确性,故本发明便针对网络测速的应用(至少包含下载速率的测试)提出修改过的tcp流程,可消除tcp封包重传对tcp性能的影响。此外,本发明另利用用户端的硬件来主动丢弃一部分已成功接收的tcp封包以减低丢包对处理器负载以及网络测速的影响。
技术特征:1.一种计算机装置,包含:
2.如权利要求1所述的计算机装置,其中在该计算机装置进行网络测速的期间,该计算机装置不会要求该另一计算机装置进行任何传输控制协议封包重传。
3.如权利要求1所述的计算机装置,其中该网络接口电路另主动丢弃所接收的该多个第一传输控制协议封包中部分的第一传输控制协议封包,来降低该处理器的负载。
4.一种计算机装置,包含:
5.如权利要求4所述的计算机装置,其中在该另一计算机装置进行网络测速的期间,该计算机装置不会进行任何传输控制协议封包重传。
6.一种应用在计算机装置的传输控制协议封包处理方法,包含:
7.如权利要求6所述的传输控制协议封包处理方法,其中在该计算机装置进行网络测速的期间,该计算机装置不会要求该另一计算机装置进行任何传输控制协议封包重传。
8.如权利要求6所述的传输控制协议封包处理方法,还包含:
9.一种应用于计算机装置的传输控制协议封包处理方法,包含:
10.如权利要求9所述的传输控制协议封包处理方法,其中在该另一计算机装置进行网络测速的期间,该计算机装置不会进行任何传输控制协议封包重传。
技术总结一种计算机装置及用于计算机装置的传输控制协议封包处理方法。该计算机装置包含网络接口电路、存储装置及处理器。该网络接口电路接收多个第一传输控制协议封包。该存储装置存储程序代码。该处理器载入并执行该程序代码以进行以下操作:指示该网络接口电路来传送多个第二传输控制协议封包至另一计算机装置,以及根据该多个第一传输控制协议封包的数据量来计算该计算机装置所使用的一网络的网络速率。该多个第二传输控制协议封包包含连续传送的一第二传输控制协议封包与另一第二传输控制协议封包,其分别为一第一传输控制协议封包及另一第一传输控制协议封包的确认封包且具有不连续的序号。技术研发人员:刘涛受保护的技术使用者:达发科技(苏州)有限公司技术研发日:技术公布日:2024/7/25本文地址:https://www.jishuxx.com/zhuanli/20240801/243287.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。
下一篇
返回列表