首页 > 其他分享 >服务器通用背板管理(UBM)实现

服务器通用背板管理(UBM)实现

时间:2023-04-13 16:44:59浏览次数:390  
标签:控制器 主机 背板 连接器 服务器 UBM 驱动器

本文分享自天翼云开发者社区《服务器通用背板管理(UBM)实现》,作者: 乘风

 

 

一 UBM概述

通过SGPIO 进行 SAS 和 SATA 背板管理的 SCSI 机箱服务 (SES) 标准于 2003 年首次推出。该规范提供主机控制 LED,并允许主机检测槽位和已安装驱动器的存在,以及槽位编号方案。该规范提供了驱动器活动和故障指示,同时控制器可以通过协议自动识别设备类型、分支和速度。 SGPIO 自 2006 年以来一直保持不变。此后,许多创新增加了背板管理的复杂性,超出了 SES 和 SGPIO 的能力。

现代存储产品包括多通道驱动器和第三种驱动器协议,即 NVMe。为了确保相同级别的存储功能,需要更智能的背板。这种需求产生了通用背板管理 (UBM) 标准。

Universal Backplane Management (UBM)为主机提供了一个通用背板管理框架,以确定 SAS/SATA/PCIe 背板功能、Drive Facing Connector (DFC) 状态和控制信息,并读取背板的面向驱动器的连接器(DFC)到面向主机的连接器Host Facing Connector (HFC) 的端口路径。

采用 UBM 标准可实现背板管理的两个关键方面:

在服务器内构建一套完全可互换的背板,无论背板与主机的接口或背板支持的介质如何变化。在各种存储架构中使用 UBM 是通用的,它可以避免手动配置的复杂性和错误配置的成本。

能够创建支持驱动器槽位内完全可互换的存储介质类型的背板,包括在系统运行时在 NVMe 和 SAS/SATA 之间进行切换。

二 UBM组成

UBM 可用于在单个驱动器机架中创建支持所有三种协议的 SAS/SATA 背板、NVMe 背板或组合背板。 同样,UBM 规范可用于带有 SAS/SATA 扩展器和 PCIe 开关的背板。UBM 使支持 UBM 的主机(例如 CPU、RAID 或 HBA 卡或其他存储控制器)能够准确了解背板的功能,以及感知驱动器类型和存在。

UBM 系统的组件由 FRU 和 UBM 控制器组成,它们通过 2 线接口连接到主机。

 

2.1 2线接口

UBM使用边带信号定义SAS,其他的标准定义使用2线模式。服务器主板的BMC提供到背板的2Wire主接口,可以实现对于背板的统一管理和远程控制,固件更新等功能。2Wire主接口定义 了UBM 背板管理功能和主机到背板的端口通路信息。该2Wire主接口会与背板上的UBM 控制器2Wire从接口和UBM FRU 2Wire接口互联。UBM 控制器2Wire从接口,提供背板点灯功能和 DFC 状态和控制描述符。连接到同一个 2Wire从接口的 UBM FRU 为一个NVRAM,实现了一个格式化的IPMI FRU 。同时,为了支持PCIE设备,例如NVME SSD硬盘,该2wire接口还会连接到MUX bridge,用于2wire接口扩展,以实现同一2wire接口管理多个PCIe SSD设备。

2.2 UBM FRU

提供将背板识别为支持 UBM 的子系统的方法,并通过 2 线接口连接到主机。UBM FRU 是具有 IPMI FRU 格式内容的 256 字节只读 NVRAM,负责上报静态背板信息,使用单字节 2Wire 寻址。

定义主机创建访问映射的端口路径信息描述符,该访问映射由面向驱动器的连接器 (DFC)、端口链路宽度、面向主机的连接器 (HFC) 和 HFC 起始通道组成。

指定连接到 HFC 的 UBM 控制器的 2 线地址,允许存储控制器访问。

2.3 UBM控制器

负责管理面向驱动器的连接器 (DFC),通过 2 线接受预先确定的命令序列,可分为以下几类:

控制器状态和身份:报告命令和控制器状态。

背板功能:反映 UBM 控制器实现支持的功能。

面向驱动器的连接器状态:允许 UBM 控制器报告每个面向驱动器的连接器中“安装了什么”的关键功能。

定义 PCIe 参考时钟预期、PCIe 复位预期、PwrDIS 信号支持和双端口支持。

背板 UBM 控制器固件更新

三 UBM操作

3.1 驱动器检测

驱动器类型识别是通过从驱动器中采样 PRSNT#、IFDET# 和 IFDET2# 引脚来执行的。 这些引脚的值通过 DFC 状态和控制描述符命令报告给主机。 驱动器引脚状态与背板映射数据结合使用,允许将适当的配置应用于连接到该驱动器的存储控制器 PHY。

3.2 端口分叉

支持从面向主机的连接器到面向驱动器的连接器的 x4 或 x2 连接的背板可分别重新用作 x2 或 x1 背板。 这是使用端口分叉字段完成的。 当从主机连接到背板的电缆不再直接映射,而是连接每个驱动器只有一条链路时,背板将以 DFC 的宽度分为两部分运行。 通过使用端口分叉字段,可以在两种配置中使用单个背板,从而减少所需的背板 SKU 数量。

3.3 LED 和电源控制

LED 和电源控制是使用 SES 阵列设备元素字段执行的,类似于 SAS 扩展器。 主机可以通过 UBM 控制器的 2 线接口请求以下操作:

禁用电源

灯识别 LED

显示“重建”LED 模式

显示“失败的阵列”LED

如果LED 闪烁模式超出了 UBM 规范的范围,可以遵循 IBPI 规范 SFF-8489,对应于主机与 UBM 控制器接口发出的信号。

3.4 复位、REFCLK 控制

FRU 通过定义以下内容来定义背板和主机之间的状态和控制信号接口:

PCIe 参考时钟预期

PCIe 重置预期

PwrDIS 信号支持

双端口支持(如果适用)

3.5 通过 BP_TYPE 支持 SGPIO

BP_TYPE 信号指示背板是否支持 SGPIO 或 2 线接口。 使用信号的状态,主机可以确定它是应该使用 SGPIO 还是继续进行 UBM 发现。

3.6 维护

UBM 规范允许通过 UBM 控制器固件更新过程更新控制器代码。

四 UBM实现示例

UBM可以实现HFC通过x1、x2、x4或其它lane带宽连接多个DFC,还可以支持多个面向主机的连接器。但是,对于同一背板,UBM 控制器实现应在同一背板内提供唯一的面向主机的连接器标识字段,指示相同的背板编号字段。 多个面向主机的连接器不应将其 2Wire 接口与其他面向主机的连接器 2Wire 接口互连。

下图的 UBM 系统部署视图显示了主机(例如,适配器、PCIe 交换机、SAS 扩展器)和背板之间的连接关系。 服务器机箱内可以只有一个背板,也可能存在多个背板。 支持直接连接主机或存储控制器的 U.2 NVMe 和 SAS/SATA。每个面向主机的连接器支持两个 x4/x2/x1 U.2 NVMe 驱动器或 4 个 x1 SAS/SATA 驱动器。UBM 控制器位于背板上,用于管理来自驱动器的控制和状态信号。高速电缆和边带 I/O 信号用于与背板通信。UBM FRU 应在 0xAE 的固定 8 位地址上进行 2Wire 寻址。 UBM FRU 提供主机与底板上的 UBM 控制器通信所需的 UBM 控制器 2Wire 地址。

 

 

 

标签:控制器,主机,背板,连接器,服务器,UBM,驱动器
From: https://www.cnblogs.com/developer-tianyiyun/p/17315345.html

相关文章

  • 问道手游游戏服务器搭建(问道手游服务器架设)
    问道游戏架设步骤问道游戏私服架设源码1、服务器一台,1-1-1也可以搭建,但人数不可以多,任务开启不可多下载链接里面的服务端搭建教程:1.先安装宝塔2、放行安全组的相应端口具体要放行的端口有:3306、888、8888、5000、8101、8110、8120、8160-8168(这个是范围之8160是一线,依次类推)2、安......
  • GPS北斗卫星同步时钟(NTP服务器)助力电子政务网络系统
    GPS北斗卫星同步时钟(NTP服务器)助力电子政务网络系统GPS北斗卫星同步时钟(NTP服务器)助力电子政务网络系统京准电子科技官微——ahjzsz摘要:随着电子政务的不断发展,许多省份都建立了自己的政务网络,使用的网络设备和服务器日益增多,这些设备都有自己的时钟,是可以调节的,因此网络中的所......
  • CKEditor粘贴图片自动上传到服务器(VUE版)
    ​ 由于工作需要必须将word文档内容粘贴到编辑器中使用但发现word中的图片粘贴后变成了file:///xxxx.jpg这种内容,如果上传到服务器后其他人也访问不了,网上找了很多编辑器发现没有一个能直接解决这个问题考虑到自己除了工作其他时间基本上不使用windows,因此打算使用nodejs来解......
  • 汉枫HF2211,串口服务器 over tcp
      串口映射和tcp不能同时通信,串口和tcp,数据错乱。也可以找厂商询问帮助。 备注:同时使用,上位机软件和研华实用配置工具都会出现数据错乱不准。   ......
  • linux服务器CPU占用100%,宝塔负载100%情况问题排查处理记录(CentOS 8.1系统)
    问题描述:linux服务器cpu占比达到100%,站点无法正常访问,宝塔面板进入后卡顿,负载显示也是持续100%(下方测试系统为CentOS8.1)排查可能:1.使用netstat命令查看目前的链接IP数,看是否有异常IP大量链接:netstat-ntu|awk'{print$5}'|cut-d:-f1|sort|uniq-c|sort-n(查看显示......
  • C#服务器网络框架
    usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Net;usingSystem.Net.Sockets;usingGoogle.Protobuf;namespaceZG5_Server{classNetManager:Singleton<NetManager>{......
  • 搭建一个安全的Linux服务器教程
    要建立一个安全Linux服务器就首先要了解Linux环境下和网络服务相关的配置文件的含义及如何进行安全的配置。在Linux系统中,TCP/IP网络是通过若干个文本文件进行配置的,也许你需要编辑这些文件来完成联网工作,但是这些配置文件大都可以通过配置命令linuxconf(其中网络部分的配置可以通......
  • Windows安装SSH服务器
    1、打开Win的设置并在设置中找到应用2、在应用中依次选择应用和功能可选功能3、在可选功能中选择添加功能(OpenSSH客户端默认已存在)选中OpenSSH服务器后点击下方的安装 4、快捷键win+r在运行中打开cmd在控制台中输入ssh,如下显示则说明ssh服务安装成功5、打开防火墙......
  • System.Runtime.InteropServices.COMException: 服务器运行失败
    “/”应用程序中的服务器错误。服务器运行失败说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.Runtime.InteropServices.COMException:服务器运行失败源错误:执行......
  • 易微帮诚征服务器赞助商
    目录1、网站情况2、赞助服务器要求3、赞助服务商权益的保障 1、网站情况目前网站,每日访问用户数量在2000~3000左右,数据稳定增长中。网站地址:https://www.ewbang.com/ 2、赞助服务器要求服务器配置:要求4核8G10M带宽所需数量:1台3、赞助服务商权益的保障如果您成为易微......