一文搞懂HBA卡

2023-10-25 09:40
文章标签 一文 搞懂 hba

本文主要是介绍一文搞懂HBA卡,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

HBA卡是一个简称,准确叫法应该是:主机总线适配器(Host Bus Adapter,HBA),也叫做FC-HBA卡(俗称:光纤网卡)、iSCSI-HBA卡(RJ45接口)。这是一个在服务器和存储装置间提供输入/输出(I/O)处理和物理连接的电路板或集成电路适配器。由于传输协议的不同而出现,一般用在服务器的主板上,还提供一个光纤接口,后来被归为一种网卡(光纤网卡),传输ISCSI协议,接口类型与以太网卡相同,外接存储用的光纤交换机。因为HBA减轻了主处理器在数据存储和检索任务的负担,它能够提高服务器的性能。一个HBA和与之相连的磁盘子系统有时一起被称作一个磁盘通道。

HBA卡

 HBA 通常以其支持的互连技术以及速度、端口数和系统接口为特征。大多数 HBA 卡插入主机的外围组件互连高速 (PCIe) 插槽,尽管它们可能采用其他外形规格,例如刀片服务器的夹层卡。

HBA卡通常安装于计算机的PCIe插槽

虽然术语 HBA 适用于各种互连,但它最常用于存储协议,例如光纤通道 (FC)、小型计算机系统接口、串行高级技术附件 (SATA) 和串行连接 SCSI (SAS)。

光纤通道主机总线适配器
光纤通道 HBA 支持基于 FC 的存储区域网络 (SAN) 中的设备之间的连接和数据传输。FC HBA 可以将主机服务器连接到交换机或存储设备、连接多个存储系统,或者连接多个服务器(当它们同时用作应用程序主机和存储系统时)。SAN 管理软件将 HBA 识别为连接点。

FC HBA 的制造商通常会根据 FC 网络技术数据速率的提高来更新其产品。光纤通道产品于 1997 年首次上市。从那时起,FC HBA 的增长速度稳步加快。首次推出时,FC HBA 提供的数据速率为 1 Gbps,但每一代新产品的速度都翻了一番:

2 Gbps(第 2 代)
4 Gbps(第 3 代)
8 Gbps(第 4 代)
16 Gbps(第 5 代)
32 Gbps(第 6 代)
64 Gbps(第 7 代)

第 6 代 FC (32 Gbps) 可以配置为提供 128 Gbps,方法是使用并行 FC 链路对 32 Gbps FC 的四个通道进行条带化,从而创建 128 Gbps 的单个链路。FC路线图表明,到128年,单通道FC速度将达到2024 Gbps,因此四通道解决方案可能会过时或应用于更快的速度。

FC HBA 制造商通常会在更新到新一代 FC 技术时增强产品附加功能。多年来的改进包括数据完整性功能,以防止数据库环境中的在线损坏。改进还包括扩展对虚拟化的支持,以提高虚拟服务器的密度。

FC HBA的市场主导制造商是Marvell QLogic和Emulex。(Avago Technologies收购了Emulex,然后收购了Broadcom,在此过程中采用了Broadcom的名称。其他FC HBA制造商包括Atto Technology和Hewlett Packard Enterprise(HPE)。

FC HBA 的显著特点包括性能、可靠性、安全性、电源功能、对服务器虚拟化的支持以及单窗格管理软件的可用性。

SCSI 适配器/SCSI HBA
SCSI HBA通常与并行SCSI相关联,这是一种曾经流行的数据传输技术,在很大程度上已被更快的SAS所取代。SCSI HBA 或 SCSI 适配器有助于主机与外围设备或存储系统之间的连接和数据传输,这些设备或存储系统由美国国家标准协会 I/O 互连的 SCSI 标准集定义。

插入式 HBA 卡通常向目标设备(如存储驱动器或阵列)发起并发送服务和任务管理请求,并接收来自目标的响应。

并行 SCSI 设备连接到共享总线。最大并行 SCSI 速度为每秒 320 兆字节。这被认为太慢,无法满足现代计算系统的需求,并且随着更多设备添加到共享总线,性能通常会下降。并行 SCSI HBA 被视为过时的技术,大多数制造商已停止生产它们。

SAS 和 SATA HBA
SAS的开发是为了解决传统并行SCSI的局限性,并提供更高的数据传输速率。与并行 SCSI 一样,SAS 使用 SCSI 命令集,但数据传输方法不同。SAS 是一种点对点串行数据传输协议。

SAS HBA 是一种 SCSI HBA,通常将主机连接到存储设备,例如硬盘驱动器、固态驱动器、一堆磁盘设备或磁带驱动器。SAS HBA 能够连接到与 SATA 或 SAS 接口兼容的单端口或双端口存储设备。事实上,当今的许多 SAS HBA 都是作为 SAS/SATA 设备出售的。

SAS 带宽从 3 Gbps 开始,然后发展到 6 Gbps,然后是 12 Gbps。每一代新一代SAS还带来了额外的功能,例如跨更长电缆距离连接设备的能力。SAS HBA 产品之间的区别包括支持的 SAS 速度、数据传输速率、端口数、PCIe 总线类型和功耗。

戴尔、HPE 和 IBM 等供应商销售的入门级存储阵列支持 SAS SAN 结构,可直接连接到配备 SAS HBA 的服务器,无需网络交换机。SAS HBA 通常比 FC HBA 便宜,尽管 FC SAN 比 SAS 环境提供更好的性能和更多的配置选项。

SAS HBA 还可以连接到 SAS 交换机,以启用多个服务器和外部存储之间的连接,但交换式 SAS 的使用不如服务器和存储阵列之间的直接连接那么常见。

主要的SAS HBA制造商包括Atto Technology,Broadcom(通过Avago收购LSI),Microsemi(通过收购PMC-Sierra)和HPE。

其他类型的网络适配器
与 HBA 一样,以下适配器也可以将主机系统连接到存储或网络设备:

网络接口卡 (NIC)。NIC 支持通过以太网在主机和网络设备之间进行连接和数据传输 备用名称包括以太网适配器和以太网网络适配器。
Internet SCSI (iSCSI) 适配器。iSCSI 适配器(也称为 iSCSI HBA 或 iSCSI NIC)通过 TCP/IP 和以太网网络基础结构提供 SAN 连接,并将 iSCSI 和 TCP/IP 处理卸载到适配器以提高性能。
聚合网络适配器 (CNA)。CNA 结合了 FC HBA 和 TCP/IP 以太网网卡的功能,并支持局域网和 FC SAN 流量。
主机通道适配器 (HCA)。HCA,也称为 InfiniBand 适配器,可通过无损 InfiniBand 网络在服务器和存储之间实现低延迟数据通信;当服务器同时用于应用程序托管和存储时,它还用作服务器到服务器的互连。用例包括高性能计算、数据分析、云数据中心以及大规模 Web 和交易应用程序。
通过融合以太网 (RoCE) NIC 进行远程直接内存访问。RoCE NIC,也称为带 RoCE 的 NIC,有助于在不同服务器的应用程序内存之间直接传输数据 - 无需 CPU 参与 - 以加速无损以太网网络的性能。它支持比以太网 NIC 更快的数据传输,通常用于大容量事务应用程序以及存储和内容交付网络

参考文献:

[1]什么是HBA卡?全面了解HBA卡-HBA卡知识-中存储网 (chinastor.com)

[2]HBA卡和HCA卡的区别是什么? - 知乎 (zhihu.com)

[3]What is a host bus adapter (HBA)? An introduction (techtarget.com)

[4]Host Bus Adapters (HBAs):The Basics

这篇关于一文搞懂HBA卡的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/281704

相关文章

一文带你迅速搞懂路由器/交换机/光猫三者概念区别

《一文带你迅速搞懂路由器/交换机/光猫三者概念区别》讨论网络设备时,常提及路由器、交换机及光猫等词汇,日常生活、工作中,这些设备至关重要,居家上网、企业内部沟通乃至互联网冲浪皆无法脱离其影响力,本文将... 当谈论网络设备时,我们常常会听到路由器、交换机和光猫这几个名词。它们是构建现代网络基础设施的关键组成

一文解密Python进行监控进程的黑科技

《一文解密Python进行监控进程的黑科技》在计算机系统管理和应用性能优化中,监控进程的CPU、内存和IO使用率是非常重要的任务,下面我们就来讲讲如何Python写一个简单使用的监控进程的工具吧... 目录准备工作监控CPU使用率监控内存使用率监控IO使用率小工具代码整合在计算机系统管理和应用性能优化中,监

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

一文详解SpringBoot中控制器的动态注册与卸载

《一文详解SpringBoot中控制器的动态注册与卸载》在项目开发中,通过动态注册和卸载控制器功能,可以根据业务场景和项目需要实现功能的动态增加、删除,提高系统的灵活性和可扩展性,下面我们就来看看Sp... 目录项目结构1. 创建 Spring Boot 启动类2. 创建一个测试控制器3. 创建动态控制器注

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

一文详解Java Stream的sorted自定义排序

《一文详解JavaStream的sorted自定义排序》Javastream中的sorted方法是用于对流中的元素进行排序的方法,它可以接受一个comparator参数,用于指定排序规则,sorte... 目录一、sorted 操作的基础原理二、自定义排序的实现方式1. Comparator 接口的 Lam

一文深入详解Python的secrets模块

《一文深入详解Python的secrets模块》在构建涉及用户身份认证、权限管理、加密通信等系统时,开发者最不能忽视的一个问题就是“安全性”,Python在3.6版本中引入了专门面向安全用途的secr... 目录引言一、背景与动机:为什么需要 secrets 模块?二、secrets 模块的核心功能1. 基

一文详解MySQL如何设置自动备份任务

《一文详解MySQL如何设置自动备份任务》设置自动备份任务可以确保你的数据库定期备份,防止数据丢失,下面我们就来详细介绍一下如何使用Bash脚本和Cron任务在Linux系统上设置MySQL数据库的自... 目录1. 编写备份脚本1.1 创建并编辑备份脚本1.2 给予脚本执行权限2. 设置 Cron 任务2

一文详解如何在idea中快速搭建一个Spring Boot项目

《一文详解如何在idea中快速搭建一个SpringBoot项目》IntelliJIDEA作为Java开发者的‌首选IDE‌,深度集成SpringBoot支持,可一键生成项目骨架、智能配置依赖,这篇文... 目录前言1、创建项目名称2、勾选需要的依赖3、在setting中检查maven4、编写数据源5、开启热

六个案例搞懂mysql间隙锁

《六个案例搞懂mysql间隙锁》MySQL中的间隙是指索引中两个索引键之间的空间,间隙锁用于防止范围查询期间的幻读,本文主要介绍了六个案例搞懂mysql间隙锁,具有一定的参考价值,感兴趣的可以了解一下... 目录概念解释间隙锁详解间隙锁触发条件间隙锁加锁规则案例演示案例一:唯一索引等值锁定存在的数据案例二: