技术领域
[0001] 实施例涉及一种数据中心。
相关背景技术
[0002] 作为收集各种数据并提供服务的设施的数据中心可以是用于操作搜索引擎和数据库的系统,或者可以是用于公司和组织的计算系统。
具体实施方式
[0011] 软件定义网络(SDN)是经由提供物理连接的网络中的软件来控制网络的操作的技术。OpenDaylight或OpenFlow是SDN的接口标准技术之一。
[0012] 基于SDN的网络被划分为数据平面(其由硬件组成)和控制平面(其由软件组成)。OpenFlow或OpenDaylight交换机实现数据平面的集中控制,允许网络管理员经由数据平面有效且灵活地管理网络。
[0013] 数据平面确定在网络中如何以及经由哪条路径处理和发送数据包,并且在控制平面的控制下递送数据包。
[0014] 在下文中将描述在基于以太网的网络中以SDN方式连接的数据中心。
[0015] 图1是根据一些示例实施例的数据中心的框图。
[0016] 参照图1,数据中心1A可包括服务器100和至少一个存储组2。数据中心1A被示出为包括一个服务器100和一个存储组2,但是数据中心1A实际上可包括多个服务器100和多个存储组2。
[0017] 服务器100和存储组2可经由网络连接。网络可基于例如以太网协议。
[0018] 存储组2可包括多个存储装置(例如,E‑SSD)200和300‑1至300‑3。存储组2可被实现为例如固态驱动器(SSD)的组。
[0019] 作为主机装置的服务器100可对数据中心1A执行各种操作。服务器100可经由网络(例如,在用户或客户端的请求下)将数据存储在存储组2中。例如,服务器100可将数据存储在存储组2的存储装置200和300‑1至300‑3中的一个中。此外,服务器100可经由网络(例如,在用户或客户端的请求下)从存储装置200和300‑1至300‑3读取数据。
[0020] 服务器100可包括控制平面10。在本示例实施例中,控制平面10管理连接到控制平面10的存储组2中的数据流,并且确定从数据的出发点到目的地点的路径。例如,当服务器100发送数据时,控制平面10可将网络连接信息与数据一起发送到存储组2。控制平面10可设置数据流的路径,并且可基于网络连接信息来执行路由和信令,使得经由网络发送的数据可被适当地输出到任何指定的物理端口。
[0021] 网络连接信息可包括例如路径信息、关于网络拓扑的通用控制信息(诸如,网络带宽管理、恢复、安全和策略设置)以及装置编排(orchestration)信息。
[0022] 存储组2可包括存储装置200和300‑1至300‑3,存储装置200可包括数据平面20。在本示例实施例中,数据平面20管理到连接到数据平面20的存储装置300‑1至300‑3的数据的传输。响应于数据被输入到输入端口,数据平面20确定数据将被转发到哪个输出端口。
[0023] 数据平面20可包括网络流表。例如,网络流表可存储数据路径与输出端口之间的映射信息。数据平面20可基于从控制平面10接收的网络连接信息将数据转发到与数据的路径对应的输出端口。数据平面20还可在数据的传输期间执行各种功能(诸如,数据包修改、服务质量(QoS)和滤波)。
[0024] 存储装置200和300‑1至300‑3中的每个可包括存储控制器201或301。尽管未具体示出,但是存储装置200和300‑1至300‑3中的每个还可包括连接到存储控制器201或301(例如,SSD控制器201和301‑1至301‑3)的非易失性存储器装置。存储控制器201或301可控制非易失性存储器装置的一般操作。例如,存储控制器201或301可控制与非易失性存储器装置相关联的访问操作(诸如,写入操作、读取操作或删除操作)或后台操作。
[0025] 根据由来自控制平面10的网络连接信息设置的路径,请求被存储在服务器100中或从服务器100读取的数据可被存储在存储装置300‑1至300‑3中的至少一个中或者从存储装置300‑1至300‑3中的至少一个被读取,储装置300‑1至300‑3中的至少一个连接到由数据平面20指定的输出端口。因此,数据中心1A可根据以SDN方式设置的来自控制平面10的网络连接信息,经由数据平面20将数据转发到存储装置200和300‑1至300‑3,从而防止网络瓶颈并高效地管理网络。
[0026] 图2A至图2C是根据一些示例实施例的存储装置的框图。为了方便起见,在下文中将通过主要集中与图1的实施例的差异来描述图2A至图2C的实施例。
[0027] 参照图2A,存储装置(例如,以太网SSD)210可包括数据平面20和存储控制器(例如,SSD控制器)201。存储装置210可根据数据平面20的设置来控制数据的传输。非易失性存储器装置(未示出)可进一步设置在存储装置210中,因此,存储装置210也可作为公共数据存储装置进行操作。
[0028] 数据平面20可被实现为与存储控制器201分离的元件,或者可被并入到存储控制器201中。存储装置210可被包括在存储组2中,或者可连接在服务器100与存储组2之间。存储装置210可根据网络连接信息连接到不包括数据平面20的公共存储装置(即,图1的存储装置300‑1至300‑3),并且将数据转发到公共存储装置。
[0029] 参照图2B,存储装置220可包括控制平面10和存储控制器201。存储装置220可根据控制平面10的设置来编排、管理和控制数据平面所属的装置。非易失性存储器装置(未示出)可进一步设置在存储装置220中,因此,存储装置220也可作为公共数据存储装置进行操作。
[0030] 控制平面10可根据来自用户的请求生成用于处理数据的网络连接信息。存储装置220可以是诸如服务器的主机装置,或者可以是设置并连接在服务器100与存储组2之间的介质。控制平面10可选择性地向与其连接的数据平面分发与数据平面对应的网络连接信息。
[0031] 参照图2C,存储装置230可包括控制平面10、数据平面20和存储控制器201。非易失性存储器装置(未示出)可进一步设置在存储装置230中,因此,存储装置230也可作为公共数据存储装置进行操作。
[0032] 存储装置230可以是诸如服务器的主机装置,或者可以是设置并连接在服务器100与存储组2之间的介质。
[0033] 图3A和图3B是根据一些示例实施例的存储装置的框图。
[0034] 参照图3A,存储装置240可包括多个数据平面20‑1至20‑n(其中,n是自然数)和存储控制器201。数据平面20‑1至20‑n可从不属于存储装置240的控制平面(未示出)接收网络连接信息。
[0035] 参照图3B,存储装置250可包括控制平面10、多个数据平面20‑1至20‑n(其中,n是自然数)和存储控制器201。数据平面20‑1至20‑n可从控制平面10接收网络连接信息。
[0036] 参照图3A和图3B,存储装置240和250中的每个的控制平面10可发送用于不同的数据平面(即,数据平面20‑1至20‑n)的不同的网络连接信息。例如,数据平面可以是多个数据平面(即,数据平面20‑1至20‑n)中的一个,多个数据平面被配置为基于网络连接信息来设置独立的连接环境。
[0037] 在另一示例实施例中,存储装置240和250中的每个的控制平面10可针对所有的数据平面20‑1至20‑n发送相同的网络连接信息。在这种情况下,当数据平面20‑1至20‑n中的一个(例如,数据平面20‑1)不能操作时,其它数据平面中的至少一个可替换数据平面20‑1并基于网络连接信息转发数据。
[0038] 在下文中将描述如何在网络上实现图2A至图2C以及图3A和图3B的存储装置。
[0039] 图4至图9是根据一些示例实施例的数据中心的框图。
[0040] 参照图4,数据中心1B可包括服务器100和至少一个存储组2。服务器100可包括控制平面10。服务器100可以是应用服务器,或者可以是图2B的存储装置220。
[0041] 存储组2可包括一个或多个存储装置200和300‑1以及一个或多个电子装置400‑1和400‑2。存储装置200可与图2A的存储装置200相同。
[0042] 服务器100和存储装置200可通过网络连接。存储装置200和300‑1以及电子装置400‑1和400‑2可通过以太网连接。因此,存储装置200和300‑1以及电子装置400‑1和400‑2可经由以太网接口彼此连接。
[0043] 在存储装置200中,数据平面20可基于网络连接信息(例如,在用户的请求下)将数据存储在存储装置200或300‑1中或者(例如,在用户的请求下)从存储装置200或300‑1读取数据,并且可基于网络连接信息转发用于电子装置400‑1和400‑2的连接控制和编排的控制命令。电子装置400‑1和400‑2可以是可经由有线通信或无线通信进行控制的物联网(IoT)电子装置。
[0044] 参照图5,数据中心1C可包括服务器100、以太网交换机(“E‑Switch”)500以及多个存储组2‑1和2‑2。
[0045] 以太网交换机500可以是能够管理大型网络的TOR(架顶式)交换机。以太网交换机500可连接服务器100与存储组2‑1和2‑2。以太网交换机500可选择性地将与数据平面20对应的网络连接信息分发到数据平面20。在这种情况下,网络连接信息可包括以太网交换机
500的交换控制信息。
[0046] 存储组2‑1和2‑2中的每个可包括多个存储装置210和300‑1至300‑3。类似于图2A的存储装置的对应物,存储装置210可包括数据平面20,并且可因此根据网络连接信息将数据转发到其它存储装置300‑1至300‑3。
[0047] 参照图6,数据中心1D可包括服务器100、存储装置210以及多个存储组2‑1和2‑2。
[0048] 存储装置210可设置在服务器100与存储组2‑1和2‑2之间,以连接服务器100与存储组2‑1和2‑2。类似于图2A的存储装置的对应物,存储装置210可根据数据平面20的设置选择性地将数据转发到存储组2‑1和2‑2中的至少一个。
[0049] 存储组2‑1和2‑2中的每个可包括以太网交换机510或520以及多个存储装置300‑1至300‑3。以太网交换机510或520可根据数据平面20的设置执行交换,并且可因此将数据转发到存储装置300‑1至300‑3。
[0050] 参照图7A,数据中心1E可包括存储装置220和至少一个存储组2‑1。类似于图2B的存储装置的对应物,存储装置220可包括控制平面10,并且可因此生成定制的网络连接信息。
[0051] 存储组2‑1可包括包含数据平面20的存储装置210和不包含数据平面20的公共存储装置300‑1和300‑2。
[0052] 存储装置210可基于接收的网络连接信息将数据转发到存储装置300‑1和300‑2。
[0053] 参照图7B,数据中心1E可包括存储装置220和至少一个存储组2‑2。在图7B的示例实施例中,与图7A的实施例不同,数据平面20可在SDN模块600中而不是在存储装置中实现,并且可被包括在存储组2‑2中。
[0054] 参照图8A,数据中心1F可包括存储装置230和至少一个存储组2‑1。
[0055] 类似于图2C的存储装置的对应物,存储装置230可包括控制平面10和数据平面20。数据平面20可将自适应网络连接信息发送到存储组2‑1。存储装置230的数据平面20中的网络连接信息可包括存储组2‑1的数据输出端口信息。
[0056] 存储组2‑1可包括存储装置210(与图2A的存储装置210相同)和公共存储装置300‑1和300‑2。存储装置210的数据平面20中的网络连接信息可包括存储装置300‑1和300‑2的数据输出端口信息。
[0057] 参照图8B,数据中心1F可包括存储装置230和至少一个存储组2‑2。在图8B的实施例中,与图8A的实施例不同,存储组2‑2中的数据平面20可实现为与存储装置300‑1和300‑2分离的SDN模块600。
[0058] 参照图9,数据中心1G可包括存储装置230、存储装置210以及多个存储组2‑1和2‑2。
[0059] 最上面的存储装置230(与图2C的存储装置230相同)可包括控制平面10。
[0060] 包括在存储装置210中的数据平面20可以是中间数据平面20。中间数据平面20可以是包括在SDN模块中的数据平面20。
[0061] 包括在存储装置230中的数据平面20可针对至少一个中间存储装置210设置数据输出端口信息。包括在存储装置210中的数据平面20可针对存储组2‑1和2‑2设置数据输出端口信息。
[0062] 存储组2‑1可包括存储装置210(与图2A的存储装置210相同)以及公共存储装置300‑1和300‑2。存储组202可包括SDN模块600以及公共存储装置300‑1和300‑2。尽管未具体示出,但是存储组2‑1或2‑2还可包括一个或多个基于以太网的电子装置。
[0063] 包括在存储组2‑1和2‑2中的每个中的数据平面20可针对属于并连接到存储组2‑1或2‑2的公共存储装置300‑1和300‑2设置数据输出端口信息。
[0064] 包括数据平面的图4至图9的存储装置或SDN模块可被实现为如图3A或图3B中所示的多个数据平面。
[0065] 通过总结和回顾,数据中心可包括主机装置与存储装置之间或系统之间的网络装置。例如,路由器或交换机可设置在主机装置与存储装置之间,以连接主机装置和存储装置。然而,大型网络的管理可能是复杂且昂贵的。此外,物理位置或硬件的改变可需要手动配置,路由器和/或交换机的改变可带来成本。
[0066] 软件定义网络(SDN)是将数据流与数据的传输分离的网络范例,并且可因此通过动态管理和控制形成灵活的网络。
[0067] 如上所述,实施例涉及以软件定义网络(SDN)方式连接的数据中心。当在数据中心中使用基于SDN的网络时,数据中心的用户或管理员可设置定制的网络连接,并且可因此支持各种服务。
[0068] 实施例可提供经由软件定义网络(SDN)作为定制网络操作的数据中心。实施例还可提供经由SDN作为定制网络操作的存储装置。
[0069] 已经在此公开了示例实施例,尽管特定的术语被采用,但是它们仅以一般性和描述性的意义被使用并将被解释,而不出于限制的目的。在一些情况下,对本领域的普通技术人员将清楚的是,除非另有具体地指示,否则自提交本申请起,结合特定实施例描述的特征、特性和/或元件可被单独使用,或者与结合其它实施例描述的特征、特性和/或元件组合使用。因此,本领域技术人员将理解,在不脱离所附权利要求中阐述的本发明的精神和范围的情况下,可在形式和细节上进行各种改变。