基于DPU的业务流量转发方法、装置及系统与流程

文档序号:36887953发布日期:2024-02-02 21:21阅读:22来源:国知局
本技术涉及dpu,尤其涉及基于dpu的业务流量转发方法、装置及系统。
背景技术
::1、服务网格(service mesh)用于云原生微服务间通信的基础设施层,负责微服务间的网络通信,维彼此连接。集中式服务网格模式是所有微服务共享一个服务网格,可以大量减少主机资源,提高一部分时延和效率。将服务网格卸载到dpu上,用于负责主机侧微服务间的网络通信以及进出微服务的流量控制。它不占用主机资源,能够提高主机侧微服务部署数量;更重要的是流量无需上送主机侧即可在dpu上就可以进行分发到主机侧某个微服务或转发到其他设备上,能够大幅度提高网络延时和转发效率。2、然而,现有的业务流量转发方式中,虽然将服务网格卸载到了dpu上,但由于其底座是基于软件协议栈,如内核iptables等,也有技术采用用户态软件协议栈。它的时延转发能力相较于未将服务网格卸载到dpu的方式虽有所提高,但没有质的突破,使得业务流量转发效率依然受限。而若直接将软件协议栈进行更换,又无法服务网格业务流量转发能够可靠实现。3、基于此,亟需设计一种能够进一步提高服务网格业务流量的转发效率并能够保证业务流量转发过程的可靠性的方式。技术实现思路1、鉴于此,本技术实施例提供了基于dpu的业务流量转发方法、装置及系统,以消除或改善现有技术中存在的一个或更多个缺陷。2、本技术的一个方面提供了一种基于dpu的业务流量转发方法,包括:3、在dpu中接收自所述dpu外部发来的下发业务流量报文;4、若确定所述下发业务流量报文的转发对象为设置在所述dpu中的服务网格转发面,则将该下发业务流量报文发送至所述dpu中的硬件协议栈,以使所述硬件协议栈基于预先与所述服务网格转发面之间构建的下发tcp连接路径将所述下发业务流量报文转发至所述服务网格转发面。5、在本技术的一些实施例中,在所述将该下发业务流量报文发送至所述dpu中的硬件协议栈之前,还包括:6、根据所述下发业务流量报文对应的属性信息,自本地的转发表中查找对应的转发对象,所述转发对象中包括所述服务网格转发面;7、其中,所述转发表预先接收自所述服务网格转发面并存储在本地,且所述转发表用于存储各个属性信息与所述转发对象之间的对应关系。8、在本技术的一些实施例中,所述若确定所述下发业务流量报文的转发对象为设置在所述dpu中的服务网格转发面,则将该下发业务流量报文发送至所述dpu中的硬件协议栈,以使所述硬件协议栈基于预先与所述服务网格转发面之间构建的下发tcp连接路径将所述下发业务流量报文转发至所述服务网格转发面,包括:9、若确定所述下发业务流量报文的转发对象为设置在所述dpu中的服务网格转发面,则将该下发业务流量报文发送至所述dpu中的硬件协议栈,以使该硬件协议栈在所述服务网格转发面中的各个线程中择一作为当前的目标线程,并基于预先与所述服务网格转发面之间构建的下发tcp连接路径将所述下发业务流量报文转发至所述服务网格转发面中的所述目标线程。10、在本技术的一些实施例中,还包括:11、接收所述硬件协议栈发送的上送业务流量报文,该上送业务流量报文是所述硬件协议栈对预先基于上送tcp连接路径接收到的业务流量数据封装得到的;其中,所述上送tcp连接路径是所述目标线程在接收到所述下发业务流量报文并基于预设的配置规则数据确定所述主机侧的目的端点信息后再与所述硬件协议栈之间建立的,而后所述目标线程基于该上送tcp连接路径将自身处理后的所述下发业务流量报文及目的端点信息对应的所述业务流量数据发送至所述硬件协议栈;12、基于所述目的端点信息将所述上送业务流量报文发送至所述主机侧的目的端点以使该目的端点信息对应的目的容器组获取该上送业务流量报文。13、在本技术的一些实施例中,所述下发tcp连接路径和所述上送tcp连接路径是所述硬件协议栈在接收到所述服务网格转发面发出的连接请求信号之时或之后,根据该连接请求信号向所述服务网格转发面发送自身的tcp协议报文而预先构建得到的。14、在本技术的一些实施例中,所述配置规则数据预先由主机侧的服务网格管理面发送至所述服务网格转发面并存储至所述服务网格转发面中。15、本技术的另一个方面提供了一种基于dpu的业务流量转发装置,包括:16、报文接收模块,用于在dpu中接收自所述dpu外部发来的下发业务流量报文;17、报文转发模块,用于若确定所述下发业务流量报文的转发对象为设置在所述dpu中的服务网格转发面,则将该下发业务流量报文发送至所述dpu中的硬件协议栈,以使所述硬件协议栈基于预先与所述服务网格转发面之间构建的下发tcp连接路径将所述下发业务流量报文转发至所述服务网格转发面。18、本技术的第三个方面提供了一种基于dpu的业务流量转发系统,包括:分别设置在dpu中且依次通信连接的网络转发器、硬件协议栈和设置在所述dpu的片上系统中的服务网格转发面;19、所述网络转发器用于执行所述的基于dpu的业务流量转发方法;20、所述硬件协议栈与所述服务网格转发面之间基于预设的pcie进行通信连接;21、所述服务网格转发面与主机侧的服务网格管理面之间基于预设的管理口进行通信连接,所述网络转发器与所述主机侧的容器集群中的各个容器组之间基于预设的接口直通网卡进行通信连接。22、在本技术的一些实施例中,所述硬件协议栈包括:23、tcp连接建立模块,用于在接收到所述服务网格转发面发出的连接请求信号之时或之后,根据该连接请求信号向所述服务网格转发面发送自身的tcp协议报文以构建得到对应的下发tcp连接路径或上送tcp连接路径;24、下发转发模块,用于在所述服务网格转发面中的各个线程中择一作为当前的目标线程,并基于预先与所述服务网格转发面之间构建的下发tcp连接路径将所述下发业务流量报文转发至所述服务网格转发面中的所述目标线程;25、上送转发模块,用于基于预先与所述服务网格转发面之间构建的上送tcp连接路径,接收所述服务网格转发面中的所述目标线程发送的业务流量数据,并对该业务流量数据进行封装以得到对应的上送业务流量报文,再将所述上送业务流量报文发送至所述主机侧的目的端点信息以使该目的端点信息对应的目的容器组获取该上送业务流量报文。26、在本技术的一些实施例中,所述服务网格转发面包括:27、配置接收模块,用于接收并存储主机侧的服务网格管理面发送的配置规则数据;28、tcp连接请求模块,用于向所述硬件协议栈发送连接请求信号,以使所述硬件协议栈根据该连接请求信号发出自身的tcp协议报文以与所述硬件协议栈之间构建得到对应的下发tcp连接路径或上送tcp连接路径;29、报文接收模块,用于基于本地的目标线程接收所述硬件协议栈转发的所述下发业务流量报文;30、报文上送模块,用于基于预设的配置规则数据确定所述主机侧的目的端点信息,并在经过所述tcp连接请求模块与所述硬件协议栈之间建立上送tcp连接路径后,由所述目标线程基于所述上送tcp连接路径将自身处理后的所述下发业务流量报文及目的端点信息对应的所述业务流量数据发送至所述硬件协议栈。31、本技术的第四个方面提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现所述的基于dpu的业务流量转发方法。32、本技术的第五个方面提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的基于dpu的业务流量转发方法。33、本技术提供的基于dpu的业务流量转发方法,在dpu中接收自所述dpu外部发来的下发业务流量报文;若确定所述下发业务流量报文的转发对象为设置在所述dpu中的服务网格转发面,则将该下发业务流量报文发送至所述dpu中的硬件协议栈,以使所述硬件协议栈基于预先与所述服务网格转发面之间构建的下发tcp连接路径将所述下发业务流量报文转发至所述服务网格转发面,不占用主机侧资源,使得主机侧资源都可以用于业务部署,能够大量节省主机侧资源,能够有效提高服务网格业务流量的转发效率,即能够大幅降低转发过程时延,使得服务网格能够支持如金融电信类等对时延敏感的业务场景,并能够保证业务流量转发过程的可靠性及有效性。34、本技术的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本技术的实践而获知。本技术的目的和其它优点可以通过在说明书以及附图中具体指出的结构实现到并获得。35、本领域技术人员将会理解的是,能够用本技术实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本技术能够实现的上述和其他目的。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1