Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

优化多个 worker 时的拥塞控制 #9

Open
fatedier opened this issue Mar 21, 2019 · 4 comments
Open

优化多个 worker 时的拥塞控制 #9

fatedier opened this issue Mar 21, 2019 · 4 comments

Comments

@fatedier
Copy link
Owner

当多个 worker 之间的传输速率不一致时,由于缓冲区大小有限,若窗口最前面的包 block 在慢速的 worker 中,需要等这些包传输完成后才能释放缓冲区的空间,导致整体传输速度变慢。

@tldzyx
Copy link

tldzyx commented Dec 1, 2020

源文件 -> 分卷压缩 => 并行传输 -> 合并解压

分片全部传输完之后再合并, 就不存在等待的问题了, 与其堆积在内存做衔接, 不如放在临时文件目录做合并.

@fatedier
Copy link
Owner Author

fatedier commented Dec 1, 2020

@tldzyx 只是传文件的话,这样的思路没有问题。但是当初设计的时候,其实是想兼容流式传输的内容,传文件是作为其中最简单的一个使用场景来测试验证这个想法的可行性。

之后可以作用于其他使用场景,提供一个通用的解决方案,这样就可以被复用,例如在内网穿透方面。

@shaojs321
Copy link

@tldzyx 只是传文件的话,这样的思路没有问题。但是当初设计的时候,其实是想兼容流式传输的内容,传文件是作为其中最简单的一个使用场景来测试验证这个想法的可行性。

之后可以作用于其他使用场景,提供一个通用的解决方案,这样就可以被复用,例如在内网穿透方面。

是否可以将窗口靠前的包放在线路良好的节点上,可以自主选择节点传输数据的权重以及优先级

@fatedier
Copy link
Owner Author

@shaojs321 和 TCP 一样,需要一个拥塞控制的算法来动态调节。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants