首页
学习
活动
专区
圈层
工具
发布

RUDP传输那些事儿

作为在教育公司来说,学霸君在很多实时场景下确实使用RUDP技术来解决我们的问题,不同场景我们采用的RUDP方式也不一样。...涉及到实时传输我们都会先考虑RUDP,RUDP应用在学霸君核心传输体系的各个方面,但不同的系统场景我们设计了不同的RUDP方式,所以基于那些激烈的讨论和我们使用的经验我扒一扒RUDP。...RUDP是怎么去找这个平衡点的,就要先从RUDP的可靠概念和使用场景来分析。...RUDP在分为发送端和接收端,每一种RUDP在设计的时候会做不一样的选择和精简,概括起来就是图中的单元。...窗口与拥塞控制 窗口 RUDP需要一个收发的滑动窗口系统来配合对应的拥塞算法来做流量控制,有些RUDP需要严格的发送端和接收端的窗口对应,有些RUDP是不要收发窗口严格对应。

1.1K50

不为人知的网络编程(七):如何让不可靠的UDP变的可靠?

涉及到实时传输我们都会先考虑 RUDP,RUDP 应用在我们APP核心传输体系的各个方面,但不同的系统场景我们设计了不同的 RUDP 方式,所以基于那些激烈的讨论和我们使用的经验,我决定扒一扒 RUDP...RUDP 是怎么去找这个平衡点的,就要先从 RUDP 的可靠概念和使用场景来分析。...在描述 RUDP 重传之前先来了解下 RUDP 基本框架,如图: ? RUDP 分为发送端和接收端,每一种 RUDP 在设计的时候会做不一样的选择和精简,概括起来就是图中的单元。...9.1 窗口 RUDP 需要一个收发的滑动窗口系统来配合对应的拥塞算法做流量控制,有些 RUDP 需要发送端和接收端的窗口严格地对应,有些 RUDP 不要求收发窗口严格对应。...TCP和UDP的差异》 《网络编程懒人入门(五):快速理解为什么说UDP有时比TCP更有优势》 >> 更多同类文章 …… [2] NIO异步网络编程资料: 《Java新一代网络编程模型AIO原理及Linux

2.6K31
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    【神兵利器】内网渗透之SPP隧道构建

    项目介绍 SPP是一款简单强大的网络代理工具,它可以满足我们在攻防演练过程中的打隧道的基本需求(除去DNS协议),它具备以下特点: 支持的协议:tcp、udp、rudp(可靠udp)、ricmp(可靠icmp.../spp -type server -proto tcp -listen :8888 -proto rudp -listen :9999 -proto ricmp -listen 0.0.0.0 c、同时可以使用...name "test" -type proxy_client -server www.server.com:8888 -fromaddr :8081 -toaddr :8081 -proxyproto rudp...8082 -toaddr :8082 -proxyproto ricmp e、Client和Server之间的内部通信,也可以修改为其他协议,外部协议与内部协议之间自动转换,例如 #代理tcp,内部用rudp...-type proxy_client -server www.server.com:8888 -fromaddr :8080 -toaddr :8080 -proxyproto tcp -proto rudp

    30200

    UDP比TCP高效?还真不一定!

    3.2 逐步分析 linux手册中有设置 UDP 发送缓冲区相关属性,也明确提到了send buffer的概念: 那这是否意味着 UDP 是有发送缓冲区的吗?...(sock,SOL_SOCKET,SO_RCVBUF,(char *)&rcv_size,(socklen_t *)&optlen); 但是,会发现查到的大小并不是1M而是256kb,后来发现原来是 linux...RUDP 主要解决以下相关问题。...:某些场景为了避免 TCP 的三次握手和四次挥手的过程,会采用 RUDP 来优化资源的占用率和响应时间,提高系统的并发能力,例如 QUIC。...[12] 从底层入手,深度分析TCP连接耗时的秘密 [13] 深入操作系统,从内核理解网络包的接收过程(Linux篇) [14] 浅析TCP协议中的疑难杂症(上篇) [15] UDP中一个包的大小最大能多大

    62800

    视屏面试传输协议到底是TCP还是UDP

    其实这个问题的答案不难想出,我们可以将TCP和UDP的特性互相结合起来,让这个协议既可以保证可靠性,又可以保证实时性,这也就是我们所说的RUDP((Reliable UDP),常见的RUDP协议有QUIC...,WebRTC,Aeron等等,我这里主要介绍谷歌提出的QUIC,带大家领略一下RUDP的精彩,看看他们是如何既能做到可靠又能保证效率。...来说发展依旧缓慢,要说最大的改进应该是Google 在 ACM CoNEXT 会议上发表的用于改善 Web 应用响应延时TCP Fast Open,通过修改 TCP 协议利用三次握手时进行数据交换,这个在Linux...总结 其实这篇帖子也算是一个扫盲贴,相信有很多朋友没有听说过RUDP相关的一些东西,或者说听说过但是一直以为他是一个很复杂,很难理解的东西,其实在这里摊开来讲RUDP就是一个UDP+应用层可靠协议组成的

    3.2K22

    P2P如何将视频直播带宽降低75%?

    我们推流传输使用的是 RUDP 传输算法,这个 RUDP 是采用了类似 BBR 基于延迟和丢包来设计的拥塞算法,并且对报文做了拥塞丢弃,示意图如下: 关于 RUDP 的细节可以参考我的另一篇文章《怎么让不可靠的...其实大部分时间跨运营商的 Edge server 之间延迟也没有想象的那么大,这可以考虑使用 Edge server 之间点对点通信来解决问题,所以我们设计了一个基于 RUDP 无窗口多路径的传输模型来进行...Edge server 之间的通信,如下图: 上图的通信模型是一个多路径并联通信模型,我们在 RUDP 发送前添加了一个路径路由表,这个路由表记录了各个路径的分发概率,RUDP 每次向接收端发送包时会通过路由表中的概率来选取路径...我们通过 RUDP 实时 ACK 反馈和路径实时 ping 探测来得到网络的状态 (丢包、延迟、抖动),再将网络状态参数输入到逼近函数 f(x) 来确定各条路由的概率,这里有条原则:如果 Edge server

    1.3K30

    P2P技术如何将实时视频直播带宽降低75%?

    我们推流传输使用的是 RUDP 传输算法,这个 RUDP 是采用了类似 BBR 基于延迟和丢包来设计的拥塞算法,并且对报文做了拥塞丢弃。 示意图如下: ?...关于 RUDP 的细节可以参考我的另一篇文章《怎么让不可靠的UDP可靠?》。...其实大部分时间跨运营商的 Edge server 之间延迟也没有想象的那么大,这可以考虑使用 Edge server 之间点对点通信来解决问题,所以我们设计了一个基于 RUDP 无窗口多路径的传输模型来进行...上图的通信模型是一个多路径并联通信模型,我们在 RUDP 发送前添加了一个路径路由表,这个路由表记录了各个路径的分发概率,RUDP 每次向接收端发送包时会通过路由表中的概率来选取路径。...我们通过 RUDP 实时 ACK 反馈和路径实时 ping 探测来得到网络的状态 (丢包、延迟、抖动),再将网络状态参数输入到逼近函数 f(x) 来确定各条路由的概率,这里有条原则:如果 Edge server

    6.1K30
    领券