impact-eintr
|
1e7321ec92
|
抄了一遍reno算法 慢启动还是没找到在哪里实现了成倍增长
|
2022-12-20 16:34:24 +08:00 |
|
impact-eintr
|
c2dccc5c49
|
慢启动 倍速增长在哪里实现的?
|
2022-12-19 18:40:12 +08:00 |
|
impact-eintr
|
7c7b745482
|
reno算法 快速重传
|
2022-12-19 16:50:48 +08:00 |
|
impact-eintr
|
9fa4a0b87f
|
开始研究拥塞算法
|
2022-12-19 12:39:28 +08:00 |
|
impact-eintr
|
682299e895
|
keepalive 成功解决 ZWP 问题 当接收端不理发送端的时候 每 idleTime 就会重发一个询问报文
|
2022-12-17 19:02:24 +08:00 |
|
impact-eintr
|
cca8ccd914
|
明天实现 keepalive 来解决发送端的 零窗口问题
|
2022-12-16 20:11:06 +08:00 |
|
impact-eintr
|
1c11c2ed4c
|
是时候该了解什么是keepalive了
|
2022-12-16 19:49:07 +08:00 |
|
impact-eintr
|
81839177f6
|
Sleep Waker 这两个库写得好啊 通过注册事件 让事件发生与事件处理变成异步过程
|
2022-12-16 18:38:05 +08:00 |
|
impact-eintr
|
479afd0737
|
终于知道怎么调试了 显示发送端的snd 和 接收端的 rcv即可 同时让应用层延迟读或者不读 就可以看到非常明显的窗口滑动
|
2022-12-16 15:55:25 +08:00 |
|
impact-eintr
|
407f4c0b42
|
发送接收窗可视化Debug
|
2022-12-16 12:23:30 +08:00 |
|
impact-eintr
|
56a6639730
|
可视化发送端滑动窗口
|
2022-12-15 19:49:54 +08:00 |
|
impact-eintr
|
f1d0311303
|
拆分测试主函数
|
2022-12-15 18:22:05 +08:00 |
|
impact-eintr
|
eb69911120
|
亿脸懵逼
|
2022-12-15 17:55:09 +08:00 |
|
impact-eintr
|
971eaa8e6d
|
加下来看滑动窗口的流程
|
2022-12-14 23:24:26 +08:00 |
|
impact-eintr
|
7f3002f5bc
|
数据没有截取已消费头部 导致了bug 已经修复
|
2022-12-14 22:22:48 +08:00 |
|
impact-eintr
|
57fcf28f83
|
好难好难好难 窗口控制失效 主要表现为 segment.data.Size() 在 cap操作后进入下个循环时恢复初始值 截取失败
|
2022-12-14 21:45:51 +08:00 |
|
impact-eintr
|
0b6ffaa995
|
数据发了65536 但是其他数据怎么办 还有对端怎么收到了却不打印?
|
2022-12-13 18:53:48 +08:00 |
|
impact-eintr
|
5a9042d890
|
tcp可靠性实现 抄了一堆东西 信息量太大了 看不过来
|
2022-12-13 16:17:57 +08:00 |
|
impact-eintr
|
fb578a6f9e
|
FIXBUG 没有清理sender.writeNext 导致客户端又发送了一次 ack|fin
|
2022-12-13 10:26:14 +08:00 |
|
impact-eintr
|
07fb40bb6a
|
FIXME!!! 为什么客户端会重复发送 fin|ack
|
2022-12-12 20:33:50 +08:00 |
|
impact-eintr
|
5324cb00cd
|
tcp太痛苦了 功能好多流程还都杂糅在一起
|
2022-12-09 18:57:51 +08:00 |
|
impact-eintr
|
e287d86855
|
先写四次挥手 我已经预感到前面是什么修罗场了。。。
|
2022-12-09 12:00:42 +08:00 |
|
impact-eintr
|
9a46ec9db5
|
可以把协议栈读到的数据发给用户层应用了! 下一步把用户层应用的数据写给客户端
|
2022-12-08 18:39:11 +08:00 |
|
impact-eintr
|
de9a9295b5
|
issues1
|
2022-12-07 19:43:27 +08:00 |
|
impact-eintr
|
5ca7a1858b
|
哇...tcp真的好复杂
目前网络层分发了数据包到tcp端,tcp的handlepacket把数据存到一个队列中并提醒事件驱动机制来取数据
取到数据后先进行一个解析 确认他是一个SYN包 然后解析SYN的相关选项
对于合法的数据包 开启一个goroutine去执行三次握手的第二步:返回确认包 TODO 返回确认包的实现
|
2022-12-06 18:02:18 +08:00 |
|