【技术实现步骤摘要】
一种UDP数据包的传输方法、系统及相关组件
本申请涉及云计算
,特别涉及一种UDP数据包的传输方法、系统、一种计算机可读存储介质及一种电子设备。
技术介绍
随着互联网的高速发展,云产业的快速突起,基础架构网络逐渐向基于通用计算平台的架构融合,以支持多样化的网络系统。高速数据进出速率是衡量网络系统性能的关键指标之一,AF老架构是基于Linux内核转发的模式,这种模式主要存在两个问题,一个是性能问题,Linux内核协议栈一直饱受诟病,存在性能瓶颈,无法满足AF新业务的发展需求,另一个是可靠性问题,运行在内核态的进程一旦执行失败,将会引起AF业务的中断。现有技术中的UDP(UserDatagramProtocol,用户数据报文协议)的数据平面运行在内核态,其数据处理性能受到基于Linux内核的AF传统架构的制约。因此,如何将UDP数据包的数据平面迁移至用户态,提高UDP数据包的处理效率是本领域技术人员目前需要解决的技术问题。申请内容本申请的目的是提供一种UDP数据包的传输方法、系统、一 ...
【技术保护点】
1.一种UDP数据包的传输方法,其特征在于,包括:/n通过输入接口接收UDP数据包,并判断所述UDP数据包是否为广播数据包;/n若是,则将所述广播数据包传输至用户态VPN模块;其中,所述用户态VPN模块为基于VPP架构的VPN模块;/n若否,则根据所述UDP数据包对应的VPN路由表将所述UDP数据包路由至对应的虚拟网卡,调用所述虚拟网卡对应的封装接口将所述UDP数据包传输至所述用户态VPN模块;/n当所述用户态VPN模块对所述UDP数据包执行加密操作或解密操作后,将加密后的UDP数据包或解密后的UDP数据包传输至对应的物理网口。/n
【技术特征摘要】
1.一种UDP数据包的传输方法,其特征在于,包括:
通过输入接口接收UDP数据包,并判断所述UDP数据包是否为广播数据包;
若是,则将所述广播数据包传输至用户态VPN模块;其中,所述用户态VPN模块为基于VPP架构的VPN模块;
若否,则根据所述UDP数据包对应的VPN路由表将所述UDP数据包路由至对应的虚拟网卡,调用所述虚拟网卡对应的封装接口将所述UDP数据包传输至所述用户态VPN模块;
当所述用户态VPN模块对所述UDP数据包执行加密操作或解密操作后,将加密后的UDP数据包或解密后的UDP数据包传输至对应的物理网口。
2.根据权利要求1所述传输方法,其特征在于,判断所述UDP数据包是否为广播数据包,包括:
利用ip4-input节点确定所述UDP数据包的数据包类型;
根据所述数据包类型判断所述UDP数据包是否为广播数据包。
3.根据权利要求1所述传输方法,其特征在于,根据所述UDP数据包对应的VPN路由表将所述UDP数据包路由至对应的虚拟网卡包括:
当所述UDP数据包为ipv4单播数据包时,利用ip4-lookup节点查询所述UDP数据包对应的第一VPN路由表,并根据所述第一VPN路由表将所述UDP数据包路由至对应的虚拟网卡;
当所述UDP数据包为多播数据包时,利用mfib-forward-rpf节点查询所述UDP数据包对应的第二VPN路由表,并根据所述第二VPN路由表将所述UDP数据包路由至对应的虚拟网卡。
4.根据权利要求1所述传输方法,其特征在于,将所述广播数据包传输至用户态VPN模块包括:
利用目标函数xcast-input将所述广播数据包传输至所述用户态VPN模块。
5.根据权利要求1至4任一项所述传输方法,其特征在于,所述将加密后的UDP数据包或解密后的UDP数据包传输至对应的物理网口包括:
将所述加密后的UDP数据包或所述解密后的UDP数据包传输至数据包队列;
获取所述加密后的UDP数据包或所述解密后的UDP数据包的UDP头中的目的IP地址;
根据所述目的IP地址将所述加密后的UDP数据包或所述解密后的UDP数据包转发至对应的物理网口。
6.一种UDP数据包的传输系统,其特征在于,包括:
判断模块,用于通过输入接口接收UDP数据包,并判断所述UDP数据包是否为广播数据包;
第一处理模块,用于当所述UDP数据包为所述广播数据包,则将所述广播数据包传输至用户态VPN模块;其中,所述用户态VPN模块为基于VPP架构的VPN模块;
第二处理模块,用于当所述UDP数据包不为所述广播数据包,则根...
【专利技术属性】
技术研发人员:丁万夫,方统浩,张结辉,王铭峰,房上,吴炳廉,古亮,
申请(专利权)人:深信服科技股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。