iSCSIは、SCSIプロトコルをTCP/IPネットワーク上で利用するための規格です。
2003年にIETFによってRFCとして公式に提案されました。従来の
ファイバーチャネルと比較して、より安価にストレージエリアネットワーク(SAN)を構築できる点が大きな特徴です。ギガビット
イーサネットの普及に伴い、iSCSIベースのSANは、そのコストパフォーマンスの高さから広く採用されるようになっています。
iSCSIの特徴
- - TCP/IPベースのデータ転送: iSCSIは、データ転送にTCP/IPを使用します。これにより、ファイバーチャネルのような専用のハードウェアが不要となり、既存のイーサネットインフラストラクチャを活用できます。
- - コスト効率: ファイバーチャネルと比較して、iSCSIは初期導入コストを大幅に削減できます。汎用的なイーサネットネットワークを利用できるため、特別なハードウェア投資を抑えることが可能です。
- - パフォーマンスの向上: TCP/IPのオーバーヘッドにより、ファイバーチャネルと比較してパフォーマンスが劣るという意見もありましたが、TCPオフロードエンジン(TOE)のような技術の進歩により、その差は縮まってきています。また、ギガビットイーサネットや10GbEの普及により、iSCSIの性能も向上しています。
- - 高い互換性: iSCSIは、多くのオペレーティングシステム、SAN製品、ストレージシステムでサポートされており、異なるベンダーの製品間でも互換性が高いです。
- - セキュリティ、可用性、拡張性: 従来のハードワイヤードSCSIに比べ、iSCSIはセキュリティ、可用性、拡張性に優れています。TCP/IPネットワークのセキュリティ機能を利用できる点もメリットです。
- - 高い可搬性: 既存のTCP/IPインフラを流用できるため、システム構築や運用が容易です。
iSCSIのプロトコル階層
iSCSIは、以下の5層から構成されています。
1.
物理層、リンク層: IEEE802.3が使用されます。これは、
イーサネットと同様のLANコネクタや物理現象が利用されることを意味します。10GbEが必須ではなく、1GbEでも利用可能です。
2.
IP層: ルーティングを可能にします。
3.
TCP層: セッションの保持や
パケットの確実な到達を保証します。
4.
iSCSI層: SCSI層からのSCSIコマンドを受け取り、iSCSI Protocol Data Unit (PDU)を作成(カプセル化)して下位層に渡します。
5.
SCSI層: SCSIコマンドが使用されます。
iSCSIとストレージ
- - iSCSIイニシエータ: ホスト側にはiSCSIイニシエータが必要です。これにより、リモートにあるディスクやテープなどのストレージデバイス(ターゲット)に接続できます。ドライバやアプリケーションからは、ストレージデバイスはローカルにSCSIで接続されているように見えます。
- - ストレージエリアネットワーク(SAN): 複数のホストやターゲットが存在する複雑な環境はSANとなります。iSCSIは、ストレージプールの共有を目的とするSANの構築に利用されます。
- - [ネットワークアタッチトストレージ]との違い: iSCSIは、イーサネットを使用するという点でNASと共通していますが、その目的は異なります。NASは、複数のホストからの同時アクセスを仲裁し、ファイル共有を提供しますが、iSCSIはストレージプールの共有を目的としています。
サポート状況
iSCSIイニシエータ
オペレーティングシステムのサポート
- Cisco iSCSI ドライバー: 最初期のソフトウェアiSCSIイニシエータの一つ。現在はCisco SAN-OSとしてSAN全体をサポート。
-
IBM iSCSI ソフトウェアイニシエータ for
AIX:
AIX 5.2以降で対応。
- FreeBSD: バージョン7.0以降で対応。
- HP
HP-UX iSCSI ソフトウェアイニシエータ
-
Linux: Core-iSCSI, Intel-iSCSI,
Linux-iSCSI, Open-iSCSI, UNH-iSCSIなど、様々な実装が存在。
-
マイクロソフト iSCSI ソフトウェアイニシエータ for
Microsoft Windows: Windows 2000, XP, Server 2003などに対応。
- ノベル iSCSI イニシエータ for
NetWare: Netware 6.5で使用可能。
-
サン・マイクロシステムズ Solaris iSCSI イニシエータ:
Solaris 10 1/06アップデートで使用可能。
- iSCSIホストバスアダプタ(HBA): iSCSIプロトコルをハードウェアで実装。TOE NICやiSCSI専用処理をオフロードする機能を持つものも。NVRAMを搭載し、リモートディスクからのOSブートを可能にするものもある。
- 主なベンダー: アダプテック、
インテル、Alacritech、Qlogic、Brocadeなど。
iSCSIターゲット
- - ディスク製品: 主にディスク製品が利用される。[テープドライブ]]やテープライブラリでも利用されることがあるが、サポート製品は限られる。
- - 仮想化: 仮想[[テープライブラリ]のように、外から見えるターゲットの種類とは関係なく、内部構造を自由に実装できる。仮想ターゲットは、専用コントローラやソフトウェアによってiSCSIターゲットとして見せかけることが可能。
- - ソフトウェア:
- Microsoft iSCSI Software Target (Windows)
- StarWind iSCSI SAN (Windows、Free Edition有り)
- LIO, iSCSI Enterprise Target, iSCSI_Tape,
Linux SCSI target framework, MayaStor (
Linux)
-
Solaris 10,
Solaris 11 (
Solaris)
- その他、
NetBSD,
NetWare, TrueNASなど。
関連項目
- - Small Computer System Interface (SCSI)
- - Fibre Channel Over IP (FCIP)
- - Fibre Channel Over Ethernet (FCoE)
- - RDMA over Converged Ethernet (RoCE)
- - ATA over Ethernet (ATAoE)
外部リンク
- - 絵で分かる iSCSI (ASCII.jp)
- - RFC(関連RFC一覧)
まとめ
iSCSIは、TCP/IPネットワーク上でSCSIプロトコルを使用可能にする革新的な技術です。コスト効率、パフォーマンス、互換性に優れ、現代のストレージ環境において重要な役割を果たしています。多くの
オペレーティングシステムやハードウェアでサポートされており、SAN構築における選択肢の一つとして広く検討されています。