一种基于virtio协议用于前后端的同步系统及方法与流程

文档序号:37595120发布日期:2024-04-18 12:31阅读:8来源:国知局
一种基于virtio协议用于前后端的同步系统及方法与流程

本发明属于新兴信息,尤其涉及一种基于virtio协议用于前后端的同步系统及方法。


背景技术:

1、智能网卡自带soc小系统,智能网卡硬件集成了ovs virtio_net virtio_blk等模块。当智能网卡soc小系统没有完全启动完成的情况下,host通过virtio下发的请求业务报文是无法通过智能网卡转发的。因此主机host与智能网卡soc存在一个异步的问题。

2、该异步问题带来的现实问题。例如主机host利用pxe进行装机。主机host开电后,进入bios启动,bios会识别virtio-net设备,然后利用virtio-net设备进行pxe装机。由于host bios启动较快,智能网卡soc启动慢,soc上的软件业务还没给硬件配置流表及流转发规则,因此,主机的host下发的pxe协议报文无法转发到远端,导致pxe装机失败。现有的方案,主板开电以后,主机host上的bmc软件先不给主机host开电,智能网卡上单独供电,且其上的soc运行bmc软件,bmc软件通过pcie插槽上的smbus与host上的bmc进行通信。待智能网卡soc启动完成后,通过smbus通知主机上的bmc给主机host开电。

3、现有方法的缺点:

4、1)主机host及智能网卡soc上都需要运行bmc业务。对bmc具有强依赖,切bmc与bmc之间的通信非标准。

5、2)智能网卡需要独立供电,不能通过标准的金手指供电,设计比较复杂。


技术实现思路

1、本发明所要解决的技术问题是针对背景技术的不足提供一种基于virtio协议用于前后端的同步系统及方法,在现有的virtio协议上增加一个feature,即支持同步状态特性,同时在协议状态机中增加一个同步等待状态;实现一个通用标准方法,解决主机host与智能网卡soc存的异步问题;从而解决实际环境中因为异步导致的很多问题。

2、本发明为解决上述技术问题采用以下技术方案:

3、一种基于virtio协议用于前后端的同步系统,具体包含智能网卡fpga virtio模块、virtio option rom驱动模块、智能网卡soc模块;

4、其中,智能网卡fpga virtio模块,用于virtio模块默认支持同步等待特性,并进入同步等待状态;

5、virtio option rom驱动模块,用于在初始化流程中,读取并等待virtio同步等待状态释放;

6、智能网卡soc模块,用于在智能网卡soc模块完成业务逻辑初始化后,设置virtio模块进入同步等待状态释放状态。

7、作为本发明基于virtio协议用于前后端的同步系统的进一步优选方案,virtiooption rom驱动模块,具体如下:

8、步骤2.1,virtio option rom驱动模块被加载到主机后,进入初始化流程;

9、步骤2.2,在初始化之前,判断是否支持同步等待特性;

10、步骤2.3,若支持同步等待特性,则读取状态寄存器,否则进入步骤2.6;

11、步骤2.4,读取状态寄存器,并判断是否进入同步等待状态;

12、步骤2.5,如果判断是,进入步骤2.4,否则进入步骤2.6;

13、步骤2.6,继续完成初始化逻辑。

14、作为本发明基于virtio协议用于前后端的同步系统的进一步优选方案,智能网卡soc模块,具体如下:

15、步骤3.1,智能网卡soc模块启动完成,正常对外转发报文后;

16、步骤3.2,判断virtio模块是否支持同步等待特性;

17、步骤3.3,若支持同步等待特性,则读取状态寄存器,否则进入步骤3.6;

18、步骤3.4,读状态寄存器,并判断是否进入同步等待状态;

19、步骤3.5,如果判断是,则设置virtio模块进入同步等待释放状态,否则进入步骤3.6;

20、步骤3.6,正常继续运行。

21、作为本发明基于virtio协议用于前后端的同步系统的进一步优选方案,智能网卡fpga virtio模块virtio模块默认支持同步等待特性,支持同步等待状态。

22、作为本发明基于virtio协议用于前后端的同步系统的进一步优选方案,智能网卡fpga virtio模块上电工作后进入默认状态。

23、作为本发明基于virtio协议用于前后端的同步系统的进一步优选方案,在步骤3.1中,智能网卡soc启动完成包含配置流规则。

24、作为本发明基于virtio协议用于前后端同步系统的进一步优选方案,在步骤3.1中,在步骤3.1中,智能网卡soc启动完成包含ovs流表;其中,ovs是一个高质量、多层的虚拟交换组件。

25、作为本发明基于virtio协议用于前后端的同步系统的进一步优选方案,在步骤2.1中,virtio option rom驱动模块驱动自带驱动智能网卡。

26、一种基于virtio协议用于前后端的同步系统的同步方法,具体包含如下步骤;

27、步骤1,在virtio协议上增加一个feature,支持同步状态特性,同时在协议状态机中增加一个同步等待状态;

28、步骤2,智能网卡soc模块在开电后,virtio模块硬逻辑中支持同步状态特性,并进入同步等待状态;

29、步骤3,host主机在加载virtio模块的驱动后,驱动根据同步状态特性,读取同步状态,直到同步状态等待状态被释放;

30、步骤4,智能网卡soc模块在soc的业务启动完成并正常工作后,控制virtio模块逻辑释放同步状态等待状态。

31、作为本发明基于virtio协议用于前后端的同步方法的进一步优选方案,在步骤3中,设置virtio模块进入同步等待状态释放状态。

32、本发明采用以上技术方案与现有技术相比,具有以下技术效果:

33、本发明在现有的virtio协议上增加一个feature,即支持同步状态特性,同时在协议状态机中增加一个同步等待状态;实现一个通用标准方法,解决主机host与智能网卡soc存的异步问题;从而解决实际环境中因为异步导致的很多问题。



技术特征:

1.一种基于virtio协议用于前后端的同步系统,其特征在于:具体包含智能网卡fpgavirtio模块、virtio option rom驱动模块、智能网卡soc模块;

2.根据权利要求1所述的基于virtio协议用于前后端的同步系统,其特征在于:virtiooption rom驱动模块,具体如下:

3.根据权利要求1所述的基于virtio协议用于前后端的同步系统,其特征在于:智能网卡soc模块,具体如下:

4.根据权利要求1所述的一种基于virtio协议用于前后端的同步系统,其特征在于:智能网卡fpga virtio模块virtio模块默认支持同步等待特性,支持同步等待状态。

5.根据权利要求1所述的一种基于virtio协议用于前后端的同步系统,其特征在于:智能网卡fpga virtio模块上电工作后进入默认状态。

6.根据权利要求1所述的基于virtio协议用于前后端的同步系统,其特征在于:在步骤3.1中,智能网卡soc启动完成包含配置流规则。

7.根据权利要求1所述的基于virtio协议用于前后端的同步系统,其特征在于:在步骤3.1中,在步骤3.1中,智能网卡soc启动完成包含ovs流表;其中,ovs是一个高质量、多层的虚拟交换组件。

8.根据权利要求1所述的基于virtio协议用于前后端的同步系统,其特征在于:在步骤2.1中,virtio option rom驱动模块驱动自带驱动智能网卡。

9.一种基于权利要求1至8任一项所述的基于virtio协议用于前后端的同步系统的同步方法,其特征在于:具体包含如下步骤;

10.根据权利要求7所述的基于virtio协议用于前后端的同步方法,其特征在于:在步骤3中,设置virtio模块进入同步等待状态释放状态。


技术总结
本发明公开了一种基于virtio协议用于前后端的同步系统及方法,具体包含智能网卡FPGA virtio模块、virtio option rom驱动模块、智能网卡SOC模块;本发明在现有的virtio协议上增加一个feature,即支持同步状态特性,同时在协议状态机中增加一个同步等待状态;实现一个通用标准方法,解决主机HOST与智能网卡SOC存的异步问题;从而解决实际环境中因为异步导致的很多问题。

技术研发人员:向和礼
受保护的技术使用者:天翼云科技有限公司
技术研发日:
技术公布日:2024/4/17
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1