LIO

The Linux SCSI Target Wiki

(Difference between revisions)
Jump to: navigation, search
m
m
Line 36: Line 36:
The LIO target ([http://git.kernel.org/?p=linux/kernel/git/nab/lio-core-2.6.git;a=tree;f=drivers/target;hb=HEAD target_core_mod.ko]) is the generic multiprotocol target engine of LIO.  
The LIO target ([http://git.kernel.org/?p=linux/kernel/git/nab/lio-core-2.6.git;a=tree;f=drivers/target;hb=HEAD target_core_mod.ko]) is the generic multiprotocol target engine of LIO.  
-
It supports a wide range of [[platforms]] (from PC architecture to mobile devices, STBs and game consoles), basically all Linux block devices for [[#backstores|backstores]], and a growing number of [[#fabric modules|fabric modules]].
+
It supports a wide range of [[platforms]] (from PC architecture to mobile devices, STBs and game consoles), based on a wide range of CPU architectures (x86, ia64, Alpha, [[PlayStation 3|Cell]], [[Platforms#Nintendo Gamecube|PPC]], [[TS-7800|ARM]], [[PlayStation 2|MIPS]], etc.), basically all existing Linux block devices for [[#backstores|backstores]], and a growing number of [[#fabric modules|fabric modules]].
The LIO [[SCSI]] engine implements a significant [[SPC-3]]/[[SPC-4]] feature set with support for high-end SCSI and [[iSCSI]] features, such as [[Persistent Reservations]] (PR), [[ALUA]], [[Multiple Connections per Session|MC/S]] and [[Error Recovery Level#2|ERL=2]] in a fabric agnostic way.
The LIO [[SCSI]] engine implements a significant [[SPC-3]]/[[SPC-4]] feature set with support for high-end SCSI and [[iSCSI]] features, such as [[Persistent Reservations]] (PR), [[ALUA]], [[Multiple Connections per Session|MC/S]] and [[Error Recovery Level#2|ERL=2]] in a fabric agnostic way.

Revision as of 13:05, 7 December 2010

The Target is the generic multiprotocol target engine of LIO. Template:AdSense right

Contents

Overview

LIO Target
Logo
RisingTide Systems
Multiprotocol Target Engine
Original author(s) Nicholas Bellinger
Developer(s) RisingTide Systems LLC
Initial release January 14, 2011 (2011-01-14)
Stable release 4.1.0 / June 20, 2012;
7 years ago
 (2012-06-20)
Preview release 4.2.0-rc5 / June 28, 2012;
7 years ago
 (2012-06-28)
Development status Production
Written in C
Operating system Linux
Type Target engine
License GNU General Public License
Website datera.io
SCSI Portal Group architecture overview.
LIO iSCSI architecture diagram.
SCSI standards diagram.

The LIO target (target_core_mod.ko) is the generic multiprotocol target engine of LIO.

It supports a wide range of platforms (from PC architecture to mobile devices, STBs and game consoles), based on a wide range of CPU architectures (x86, ia64, Alpha, Cell, PPC, ARM, MIPS, etc.), basically all existing Linux block devices for backstores, and a growing number of fabric modules.

The LIO SCSI engine implements a significant SPC-3/SPC-4 feature set with support for high-end SCSI and iSCSI features, such as Persistent Reservations (PR), ALUA, MC/S and ERL=2 in a fabric agnostic way.

Backstores

A backstore subsystem plugin is a physical storage object that provides the actual storage underlying an SCSI Endpoint. Backstore objects can be added via the Storage Hardware Abstraction Layer (SHAL) that brings storage hardware into the Target engine as raw block devices, on which the full Linux stack just works (including complex functionality such as software RAID, the LVM, snapshots, virtualization, etc.).

The Target supports the SCSI-3 standard for all backstore devices (block devices and/or VFS):

The SCSI functionality is implemented directly in the target engine in a fabric agnostic way, including a number of high-end features, such as Persistent Reservations (PR) and ALUA, which have been available with LIO 3, following the SPC-4 standard.

Fabric modules

The LIO Fabric Hardware Abstraction Layer (FHAL) accommodates novel fabric technologies and requirements, and allows all protocol-specific processing to be encapsulated in fabric modules:

Setup

The LIO 3 CLI manual describes a simple userspace shell (lio-utils) for LIO 3 (Target+iSCSI). It also describes how to setup a number of different subsystem storage object backstores for LIO LUN endpoints:

RisingTide Systems makes available upon request and for free RTSadmin, a comprehensive, powerful, yet easy storage management tool that can efficiently handle even complex LIO installations.

Lastly, the Target engine configuration is mapped into Target/configFS, where it can be configured manually from user space by using inter- and intra-module symbolic links.

Specifications

The following specifications are available as T10 Working Drafts:

Glossary

RFCs

Timeline

Timeline of the LinuxIO
Release Details 2011 2012 2013 2014 2015
123456789101112 123456789101112 123456789101112 123456789101112 123456789101112
4.x Version 4.0 4.1
Feature LIO Core Loop back FCoE iSCSI Perf SRP
CM WQ FC
USB
1394
vHost Perf Misc 16 GFC iSER Misc VAAI Misc DIF Core
NPIV
DIF iSER DIF FC vhost TCMU Xen Misc Misc virtio 1.0 Misc NVMe OF
Linux 2.6.38 2.6.39 3.0 3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 3.12 3.13 3.14 3.15 3.16 3.17 3.18 3.19 3.20 3.21 3.22

See also

Template:AdSense See also

Notes

Wikipedia entries

External links

Personal tools
Namespaces
Variants
Actions
Navigation
Toolbox
Google AdSense