The disclosure relates to a FEC-based VPN proxy method, device, storage medium and system to solve the problem of poor data transmission stability of the VPN proxy in the prior art. The method includes: the first FEC proxy receives a message sent by the VPN device proxyed by the first FEC proxy, caches the message and sends the message to the second FEC proxy, FEC codes the cached message according to the redundancy ratio, obtains the redundant message, and sends the redundant message to the second FEC proxy. Second FEC agent side.
【技术实现步骤摘要】
基于FEC的VPN代理方法、装置、存储介质和系统
本公开涉及通信领域,具体地,涉及一种基于FEC的VPN代理方法、装置、存储介质和系统。
技术介绍
目前,在使用VPN(VirtualPrivateNetwork,虚拟专用网络)技术构建安全的专用网络过程中,由于移动网络或wifi网络有一定丢包与抖动,导致终端通过VPN接入安全网络传输时,常常卡顿,特别是针对具有高速数据传输需求的终端,例如云端智能机器人,现有的专用网络体验效果非常差。FEC(ForwardErrorCorrection,前向纠错)技术是利用数据进行传输冗余信息的方法,当传输中出现错误,将允许接收方再建数据,从而增加数据通讯的可信度。为了解决丢包对VPN上层业务的影响,同时保证延迟的稳定性,在VPN代理中使用FEC是一个不错的选择。但是,相关技术对FEC的使用很不灵活,无法扩展,比如基于流媒体服务的FEC处理仅能用于媒体的客户端与服务器程序,如何使得FEC技术能够通用于VPN代理,本领域技术人员未做考虑。
技术实现思路
本公开的目的是提供一种基于FEC的VPN代理方法、装置、存储介质和系统,以解决现有技术 ...
【技术保护点】
1.一种基于FEC的VPN代理方法,其特征在于,所述方法包括:第一前向纠错FEC代理端接收到被所述第一FEC代理端代理的虚拟专用网络VPN设备发送的报文后,缓存所述报文,并将所述报文发送给第二FEC代理端;根据冗余比对缓存的所述报文进行FEC编码,得到冗余报文,并将所述冗余报文发送给所述第二FEC代理端。
【技术特征摘要】
1.一种基于FEC的VPN代理方法,其特征在于,所述方法包括:第一前向纠错FEC代理端接收到被所述第一FEC代理端代理的虚拟专用网络VPN设备发送的报文后,缓存所述报文,并将所述报文发送给第二FEC代理端;根据冗余比对缓存的所述报文进行FEC编码,得到冗余报文,并将所述冗余报文发送给所述第二FEC代理端。2.根据权利要求1所述的方法,其特征在于,所述根据冗余比对缓存的所述报文进行FEC编码,得到冗余报文,包括:在所述第一FEC代理端接收到属于同一会话的数据包达到预设数量阈值和/或所述第一FEC代理端缓存报文的时长达到预设时长阈值时,根据冗余比对缓存的所述报文进行FEC编码,得到所述冗余报文。3.根据权利要求1所述的方法,其特征在于,所述方法包括:接收所述第二FEC代理端返回的丢包率;根据所述丢包率调整所述第一FEC代理端的所述冗余比。4.根据权利要求3所述的方法,其特征在于,所述根据所述丢包率调整所述第一FEC代理端的所述冗余比,包括:基于如下公式计算所述第一FEC代理端的冗余比O1:O1=M:N;其中,M为所述第一FEC代理端接收到的属于同一会话的同一组数据报文的数量值,N为大于的最小整数值,LossRate为丢包率。5.根据权利要求1至4中任一项所述的方法,其特征在于,所述方法应用于基于用户数据报协议UDP协议的VPN代理,则所述将所述报文发送给第二FEC代理端,包括:在缓存所述报文的同时并行复制所述报文进行FEC数据报协议FDP格式的封包,并将封包后的报文发送给所述第二FEC代理端;所述将所述冗余报文发送给所述第二FEC代理端,包括:对所述冗余报文进行所述FDP格式的封包,并将封包后的冗余报文发送给所述第二FEC代理端;其中,所述FDP格式规定的报文头部大小为20字节,所述报文头部包括以下字段:报文序列号、数据报文编号、冗余报文编号、报文标识、丢包率、会话标识、数据报文长度、填充位。6.一种基于FEC的VPN代理方法,其特征在于,所述方法包括:第二FEC代理端接收到第一FEC代理端发送的报文后,缓存所述报文;将所述报文发送给被所述第二FEC代理端代理的VPN设备;并判断所述报文是否发生丢失,若所述报文发生丢失,则基于缓存的所述报文通过FEC对丢失的报文进行恢复,并将恢复后的报文发送给被所述第二FEC代理端代理的VPN设备。7.根据权利要求6所述的方法,其特征在于,所述方法还包括:所述第二FEC代理端计算所述报文的丢包率,并将所述丢包率发送给所述第一FEC代理端。8.根据权利要求7所述的方法,其特征在于,所述第二FEC代理端计算所述报文的丢包率包括:以同一会话的同一组报文为计算基础,通过如下公式计算所述丢包率LossRate:其中,DataNum代表数据报文的数据量,ReduNum代表冗余报文的数据量,RecvNum代表接收到的数据报文与冗余报文的数据量之和,LossRate’为本组报文的上一组报文的丢包率,ratio为前后两次丢包率的占用比例系数。9.一种FEC代理端,其特征在于,包括:缓存模块,用于在所述FEC代理端接收到被所述FEC代理端代理的虚拟专用网络VPN设备发送的报文后,缓存所述报文;发送模块,用于将所述报文发送给第二FEC代理端;FEC编码模块,用于根据冗余比对缓存的所述报文进行FEC编码,得到冗余报文;所述发送模块还用于,将所述冗余报文发送给所述第二FEC代理端。10.根据权利要求9所述的FEC代理端,其特征在于,所述FEC编码模块用于:在所述第一FEC代理端接收到属于同一会话的数据...
【专利技术属性】
技术研发人员:李侠,
申请(专利权)人:达闼科技北京有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。