- 2024-04-30KCP 协议介绍与优化项
参考:https://luyuhuang.tech/2020/12/09/kcp.htmlhttps://xiaolincoding.com/network/https://coolshell.cn/articles/11564.html1.概述kcp是一个基于udp的应用层协议,其只负责实现ARQ算法,需要调用者提供网络数据收发和时钟驱动能力。其典型图示如下:ikcp_sendi
- 2024-04-053.5 ICMPv6 报文和报文类型
目录3.5ICMPv6报文和报文类型1.ICMPv6报头2.ICMPv6报文类型3.5ICMPv6报文和报文类型1.ICMPv6报头ICMPv6的报头由type(8bit)\code(8bit)\checksum(16bit)和可变数据组成,由于可变数据太多,这里暂不罗列,由具体协议展开。structicmp6hdr{ __u8 icmp6_type;
- 2024-03-15[原创] KCP 源码解析(下)
ikcp_input先从下层协议将数据读出来,并将对应的包头信息解析出来,根据不同的包头命令进入不同的处理逻辑。intikcp_input(ikcpcb*kcp,constchar*data,longsize){ IUINT32prev_una=kcp->snd_una; IUINT32maxack=0, //收到的这组包里最大的ack latest_ts=0
- 2023-12-07详解网络数据包接受的过程
在tcp_v4_rcv中,得到TCP的头之后,我们可以开始处理TCP层的事情。因为TCP层是分状态的,状态被维护在数据结构structsock里面,因而我们要根据IP地址以及TCP头里面的内容,在tcp_hashinfo中找到这个包对应的structsock,从而得到这个包对应的连接的状态。接下来,我们就根据
- 2023-11-22【算法】状态之美,TCP/IP状态转换探索
最近城市里甲流肆虐,口罩已经成为了出门必备的物品。小悦也不得不开始采取防护措施,上下班过程中,将口罩戴起来以保护自己不受病毒的侵害。每天下班后,小悦总是喜欢投入到自己的兴趣爱好中,她热衷于翻阅与IT相关的资料,希望能够更深入地了解计算机科学。而她的大学同学小欣,则总是拿她开