存储网关制造技术

技术编号:39720888 阅读:10 留言:0更新日期:2023-12-17 23:27
本申请提供一种存储网关

【技术实现步骤摘要】
存储网关、芯片及电子设备


[0001]本申请涉及计算机网络
,特别是一种存储网关

芯片及电子设备


技术介绍

[0002]云基础设施中包含了计算

存储

虚拟化

安全

网络等资源,其中存储资源可能涉及到本地存储和远端磁阵等多种协议连接的方式

存储网关是一种设备或服务,可以实现本地数据和云端数据的无缝集成,它的主要功能是提供存储协议转换,以解决云基础设施中不同异构存储后端的使用复杂性

[0003]目前,相关技术实现的存储网关由于使用内核态传输控制协议栈
(Transmission Control Protocol

TCP)
来传输输入输出数据
(Input/Output

IO)
,以使
IO
路径上存在用户态和内核态的切换,导致存储网关的
IO
处理的性能低


技术实现思路

[0004]本申请提供一种存储网关

芯片及电子设备,可以克服相关技术实现的存储网关的
IO
处理性能低的问题

[0005]第一方面,本申请提供一种存储网关,包括:
SPDK
通用块设备
、SPDK
控制器及用户态网络协议栈,
[0006]SPDK
通用块设备,用于通过存储协议来访问远端存储设备;
[0007]SPDK
控制器,用于将
SPDK
通用块设备转换为虚拟块设备后端,并为虚拟块设备后端和虚拟机的虚拟块设备创建数据通道,以使应用通过访问虚拟机的虚拟块设备来实现与远端存储设备进行交互;
[0008]用户态网络协议栈,用于替换内核态网络协议栈以传输应用与远端存储设备的交互数据,为交互数据构建全用户态
IO
路径

[0009]可选的,用户态网络协议栈包括:用户态网卡驱动,用于替换内核态网卡驱动来驱动主机的网卡设备,使用户态网络协议栈绕过内核态网络协议栈直接访问网卡设备以传输交互数据

[0010]可选的,用户态网卡驱动用于在网卡设备从内核态网卡驱动解绑后,绑定网卡设备以作为交互数据的收发引擎

[0011]可选的,用户态网卡驱动为基于
DPDK
的网卡驱动,内核态网卡驱动为基于
linux
内核的网卡驱动

[0012]可选的,用户态网络协议栈包括
POSIX API
应用接口,
POSIX API
应用接口用于向应用在与远端存储设备交互数据时提供从内核态网络协议栈移植至用户态网络协议栈以调用用户态网络协议栈传输交互数据的接口,
[0013]用户态网络协议栈通过
POSIX API
应用接口替换内核态网络协议栈

[0014]可选的,用户态网络协议栈在用户态
IO
路径通过内存引用的方式传递交互数据

[0015]可选的,用户态网络协议栈包括
mbuf
数据结构申请单元,
mbuf
数据结构申请单元
用于申请用于描述存储交互数据的内存的
mbuf
数据结构,
[0016]用户态网络协议栈在用户态
IO
路径使用
mbuf
数据结构引用存储交互数据的内存以传递交互数据

[0017]可选的,用户态网络协议栈为基于
DPDK

mTCP
协议栈,内核态网络协议栈为基于
linux
内核的
TCP
协议栈

[0018]第二方面,本申请提供一种芯片,包括如本申请第一方面提供的存储网关

[0019]第三方面,本申请提供一种电子设备,包括如本申请第一方面提供的存储网关,或者,包括如本申请第二方面提供的芯片

[0020]本申请具有以下优点:
[0021]本申请提供的存储网关通过用户态网络协议栈替换内核态网络协议栈以传输应用与远端存储设备的交互数据,为交互数据构建全用户态
IO
路径,使得数据交互的
IO
路径上不存在用户态和内核态的切换,提高了
IO
处理的性能

附图说明
[0022]为了更清楚地说明本申请的技术方案,下面将对本申请的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图

[0023]图1是相关技术提供的存储网关连接远端存储设备进行数据交互的示意图;
[0024]图2是本申请一实施例提供的存储网关连接远端存储设备进行数据交互的示意图;
[0025]图3本申请另一实施例提供的存储网关连接远端存储设备进行数据交互的示意图

具体实施方式
[0026]为使本申请的所述目的

特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请做进一步详细的说明

显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例

基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围

[0027]存储网关可以用来连接不同网络的存储设备,例如,可以连接本地存储设备和远端存储设备
(
如:云存储
)
,实现本地存储设备和远端存储设备的无缝衔接

目前,相关技术提供的存储网关如图1所示

图1是相关技术提供的存储网关连接远端存储设备进行数据交互的示意图

在相关技术中,安装于主机
(Host)
上的存储网关
A100
运行于
Host
的操作系统的用户态空间

用户态存储网关
A100
通过网卡
A140
连接远端存储设备
20
的网卡
B200
以与远端存储设备
20
进行数据交互时,需要调用
Host
的操作系统的内核态网络协议栈
(
如:内核态传输控制协议栈
(Transmission Control Protocol

TCP))
以访问远端存储设备
20。
用户态存储网关
A100
调用内核本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种存储网关,其特征在于,包括:
SPDK
通用块设备
、SPDK
控制器及用户态网络协议栈,
SPDK
通用块设备,用于通过存储协议来访问远端存储设备;
SPDK
控制器,用于将
SPDK
通用块设备转换为虚拟块设备后端,并为虚拟块设备后端和虚拟机的虚拟块设备创建数据通道,以使应用通过访问虚拟机的虚拟块设备来实现与远端存储设备进行交互;用户态网络协议栈,用于替换内核态网络协议栈以传输应用与远端存储设备的交互数据,为交互数据构建全用户态
IO
路径
。2.
根据权利要求1所述的存储网关,其特征在于,用户态网络协议栈包括:用户态网卡驱动,用于替换内核态网卡驱动来驱动主机的网卡设备,使用户态网络协议栈绕过内核态网络协议栈直接访问网卡设备以传输交互数据
。3.
根据权利要求2所述的存储网关,其特征在于,用户态网卡驱动还用于在网卡设备从内核态网卡驱动解绑后,绑定网卡设备以作为交互数据的收发引擎
。4.
根据权利要求3所述的存储网关,其特征在于,用户态网卡驱动为基于
DPDK
的网卡驱动,内核态网卡驱动为基于
linux
内核的网卡驱动
。5.
根据权利要求1所述的存储网关,其特征在于,用户态网络协议栈包括
POSIX API
应用接口,
POSIX...

【专利技术属性】
技术研发人员:刘静涛杨斌张明礼
申请(专利权)人:云豹创芯南京智能科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1