千家信息网

linux I/O栈 之 SCSI TARGET (1) 基础介绍

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,我们之前介绍了,linux I/O 栈的预习方面。简单地了解了一下整个linux I/O 栈的组成。从今天开始我们仔细介绍linux I/O栈的导出I/O栈,linux I/O target。一、基础
千家信息网最后更新 2026年11月01日linux I/O栈 之 SCSI TARGET (1) 基础介绍

我们之前介绍了,linux I/O 栈的预习方面。简单地了解了一下整个linux I/O 栈的组成。

从今天开始我们仔细介绍linux I/O栈的导出I/O栈,linux I/O target。

一、基础介绍

I/O导出协议栈是什么?

从广义上讲,大家每天可能都会去接触这个东西。

比如:我们每天使用的移动硬盘,它的内部也是一个I/O导出协议栈,但是由于它不涉及于I/O命令的解析,它仅仅是做了从SATA转USB的工作。

其实硬盘本身也是一个I/O导出的标准规范,它用的规范往往是在后端存储协议实现(SAS 、SATA等)。

那么我今天主要介绍的是前端导出I/O协议栈,主要是包括:iscsi、fiber channel等大家比较常见的方式。

历史上很多导出I/O协议栈,如我最早接触的IET(iSCSI Enterprise Target),他只能导出iscsi target,还有SCST,他比较全面debug,很多hba板卡厂商推荐它。

我们重点介绍的是:linux 主线维护的LIO,也就是内核里的target模块。

linux I/O target的架构是很清晰的,从最上层的管理由CLI实现。

CLI由/usr/lib/python3/dist-packages/rtslib_fb等支持。

rtslib_fb通过操作/sys/kernel/config/target目录下面的目录和文件来创建target内核支持。

target在内核的configfs是一套比较复杂的代码,用来管理kernel里的target的各个实例。

target core模块由内核实现,它主要是做SCSI CMD的仿真工作,能够提供各样先进的能力。

比如在cluster的角度,支持persistent reservations,ALUA(asymmetric logical unit assigntment),

REFERRALS特性,fence特性等。能够实现高级VAAI特性,这主要用于vmware exsi。

这其中主要的SCSI命令unmap,zero,write same,xcopy等也可以适用于其他虚拟化存储平台。

存储管理引擎包括:标准storage,内存map和RDMA等功能。

最下层的fabric mod主要是导出协议驱动的支持。

storage mod,主要是提供backend的种类支持。


【本文只在51cto博客作者 "底层存储技术" https://blog.51cto.com/12580077 个人发布,公众号发布:存储之谷】,如需转载,请于本人联系,谢谢。





存储 支持 内核 特性 命令 标准 模块 目录 硬盘 工作 接触 管理 基础 复杂 高级 上层 东西 主线 也就是 代码 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 亿人帮互联网科技有限公司 湖南永感互联网科技有限公司 苏州找大状互联网科技有限公司 深圳恒合互联网络科技有限公司 互联网电商科技 互联网科技公司税收优惠 上海致骋互联网科技 融贸通互联网科技 科技伦理 互联网公司 富国互联网科技创新基金 云创客互联网科技公司 互联网系的金融科技公司 常德市电业局互联网科技部 现代互联网科技股 花神(南京)互联网科技有限公司 互联网数据科技专业 本届互联网大会上的黑科技 广州三三互联网科技有限公司 互联网科技大会大佬 河南商务圈互联网科技有限公司 互联网科技公司华为 科技互联网项目 佰商互联网科技有限公司 互联网科技热点资讯 剑昆互联网络科技有限公司临桂 四川慕妮娅互联网科技有限公司 工业互联网等科技实现智能化赋能 互联网营销推广黑科技 上海万顺科技互联网有限公司招聘 10位科技互联网大佬
0