OushuDB 学习经验分享(六):高速互联网络
【摘要】 高速互联网络的作用是在多个节点之间交换大量数据。OushuDB高速互联网络基于UDP协议。大家可能会疑问为什么OushuDB不使用TCP。其实OushuDB同时支持TCP和UDP两种协议,TCP协议实现早于UDP协议。但是因为我们遇到了TCP不能很好解决的高连接数并发问题,我们才开发了基于UDP的协议。图4展示了一个高速互联网络的例子。高速互联网络例子中各个节点上的执行器进程形成了一个数据交...
高速互联网络的作用是在多个节点之间交换大量数据。OushuDB高速互联网络基于UDP协议。大家可能会疑问为什么OushuDB不使用TCP。其实OushuDB同时支持TCP和UDP两种协议,TCP协议实现早于UDP协议。但是因为我们遇到了TCP不能很好解决的高连接数并发问题,我们才开发了基于UDP的协议。图4展示了一个高速互联网络的例子。
高速互联网络
例子中各个节点上的执行器进程形成了一个数据交换的流水线。假设每个节点上有1000个进程。有1000个节点,这些进程需要相互交互,每个节点上就会有上百万个连接。TCP是没办法高效地支持这么多的连接数的。所以我们开发了基于UDP的互联协议。针对UDP传输,操作系统是不能保证可靠性的,并且不能保证是有序传递的。所以我们的设计需要保证和支持如下特性:
-
可靠性:能够保证在丢包的情况下,重传丢失的包
-
有序性:保证包传递给接受者的最终有序性
-
流量控制:如果不控制发送者的速度,接收者可能会被淹没,甚至会导致整个网络性能急剧下降
-
性能和可扩展性:性能和可扩展性是我们需要解决TCP问题的初衷
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)