株式会社ジオデータ開発 ロゴ
株式会社ジオデータ開発GEO DATA DEVELOPMENT Inc.
ファイバチャネルFibre ChannelSANDASNASSCSIiSCSIFCスイッチWWNゾーニングRAIDハミング符号ECCブロックストレージ

COMPUTER ARCHITECTURE / STORAGE NETWORK / FIBRE CHANNEL

ストレージの仕組みを体系解説|ブロック・SAN・FC・RAID・ハミング符号

公開日:2026-10-14

動画、会計データ、データベース。大量の情報を扱うサーバーは、どのように高速なストレージと接続しているのでしょうか。外付けディスクのイメージから始めて、SANとファイバチャネルの仕組みを一つずつ図で確認します。

この記事の学習ルート

身近な用途 → ブロックとファイルの違い → DAS・NAS・SAN → ファイバチャネル → ケーブルと構成 → SCSI・FCP → FCの階層 → 識別とアクセス制御 → iSCSI比較 → 操作ラボ

まずは英語名と略語を日本語の意味につなげます

SANやSCSIのような略語は、読み方だけで覚えようとすると混乱しやすいです。最初に英語の正式名称・カタカナの読み方・何をするものかをセットで確認しましょう。

SAN(サン)

Storage Area Network(ストレージ・エリア・ネットワーク)

サーバーとストレージ装置を接続する専用のネットワークです。一般にブロック単位でデータを提供します。

NAS(ナス)

Network Attached Storage(ネットワーク・アタッチド・ストレージ)

ネットワーク越しにファイルを共有する装置や方式です。

DAS(ダス)

Direct Attached Storage(ダイレクト・アタッチド・ストレージ)

USB接続の外付けSSDなど、コンピューターへ直接接続するストレージです。

SCSI(スカジー)

Small Computer System Interface(スモール・コンピューター・システム・インターフェース)

ストレージへ読み書きなどを指示するためのコマンド体系・インターフェースの系統です。

FC(エフシー)

Fibre Channel(ファイバチャネル)

主にストレージ接続に使われる高速なシリアル通信技術です。光だけでなく銅線も使えます。

FCP(エフシーピー)

Fibre Channel Protocol(ファイバチャネル・プロトコル)

SCSIコマンドをFC上で運ぶためのプロトコルです。

iSCSI(アイスカジー)

Internet Small Computer System Interface

SCSIコマンドをTCP/IPネットワーク上で運ぶ仕組みです。

LBA(エルビーエー)

Logical Block Addressing(ロジカル・ブロック・アドレッシング)

ディスク上の論理的なブロックへ番号を付けて指定する仕組みです。

HBA(エイチビーエー)

Host Bus Adapter(ホスト・バス・アダプター)

サーバーをストレージ接続ネットワークへつなぐアダプターです。

LUN(ラン/エルユーエヌ)

Logical Unit Number(ロジカル・ユニット・ナンバー)

ストレージ装置が提供する論理ユニットを識別する番号です。

WWN(ダブリューダブリューエヌ)

World Wide Name(ワールド・ワイド・ネーム)

FC機器のポートやノードなどを識別する名前です。

NVMe(エヌブイエムイー)

Non-Volatile Memory Express(ノンボラタイル・メモリー・エクスプレス)

SSDなどの不揮発性メモリ向けに設計された高速なアクセス規格です。

01|まずは身近な例:パソコンの外付けSSDから考えます

写真を保存するとき、家庭ではUSBでSSDをつないだり、家庭内ネットワークのNASへ保存したりします。企業のデータベースや仮想マシンでは、多数のサーバーが大容量ストレージを高い信頼性で利用する場面があります。

そのような環境では、サーバーとストレージの間に専用の接続基盤を用意する設計が使われます。ファイバチャネル(Fibre Channel、FC)は、こうしたストレージ接続で広く利用されてきた高速な転送技術です。

図で見る|『ブロック』とは小さな番号付き区画です

例えば写真を1枚保存しても、SSDの中には写真と同じ形の箱があるわけではありません。ストレージは、OSから見ると一定サイズで区切られた番号付きの領域の集まりです。これを論理ブロックと呼びます。

イラスト|写真ファイルがディスクのブロックへ分かれて格納される様子
写真A.jpg利用者は1ファイルとして見ますSSDをブロック単位に見た模式図A0LBA 0A1LBA 1B0LBA 2空きLBA 3A2LBA 4C0LBA 5A3LBA 6空きLBA 7B1LBA 8C1LBA 9空きLBA 10B2LBA 11

青色の A0〜A3 は同じ写真のデータの一部です。説明のため小さい4区画へ分けていますが、実際のブロックサイズや配置は環境によって異なります。OSのファイルシステムが「写真のどの部分がどのブロックにあるか」を管理するため、利用者は1枚の写真として開けます。

例えば1ブロックが4KiBだとすると、12KiBのデータ部分は最低でも3ブロック分に相当します。ただし、ファイルシステムの管理領域や実際の割り付け単位まで含めると、単純な割り算だけでは保存サイズは決まりません。

ファイルを開くときはOSのファイルシステムがブロックの位置を管理しています。SANはその一段下で、サーバーに「ブロックを読み書きできるディスク」のようなものを提供します。

イラスト|同じ「データを読む」でも、NASとSANで依頼する内容が違います
NAS(ファイル単位)PC / アプリファイル共有サーバーSSDreport.pdf をくださいFC SAN(ブロック単位)サーバー / OSFCスイッチストレージ装置LBA 100から読んでください

NASでは共有先のファイルを指定し、SANではサーバー側のファイルシステムが指定する論理ブロックを転送します。ここでは違いが分かるよう構造を簡略化しています。

02|まず『ファイル』と『ブロック』の違いを整理します

普段は「報告書.pdfを開く」のようにファイル名で操作します。一方、OSはディスクを読み書きするとき、論理ブロックアドレス(LBA)で指定された領域にアクセスします。

ファイルがストレージ上のデータへ変わるまで
アプリ
report.pdfを保存します
OS・ファイルシステム
ファイルをブロックへ対応付けます
ストレージ
LBAで指定されたブロックを保存します

ブロックストレージは、OSからディスク装置のように見えます。NASのファイル共有とは、利用者に提供する抽象化の段階が異なります。

FC SANは一般的に、このブロック単位のアクセスをサーバーへ提供するために使われます。

03|DAS・NAS・SANは何が違うのですか

方式接続・アクセスの考え方具体的なイメージ
DASサーバーへストレージを直接接続します内蔵SSD、直結SAS装置など
NASネットワーク越しにファイルを共有しますSMB・NFSによる共有フォルダー
SAN専用または分離された接続基盤からブロック装置を提供しますFC SAN、iSCSI SANなど
DAS:1台のサーバーから直接利用する例
サーバー
OSとアプリ
直接接続
SASなど
SSD/HDD
ブロック装置

DASは一例です。直結ストレージにもさまざまな実装があります。

NAS:ファイルをネットワーク越しに共有する例
PC・サーバー
共有フォルダーを開きます
LAN
SMB / NFS
NAS
ファイルを提供します

NASはネットワーク経由でファイルを共有する構成として理解すると整理しやすいです。

SAN:サーバーにブロック装置を提供する例
DBサーバー
LUNをディスクとして使います
SAN
FCスイッチなど
ストレージアレイ
論理ボリュームを提供します

SANにはFC以外にiSCSIなどの方式もあります。

04|ファイバチャネルの仕組みと役割

FCは、サーバー側のHBA(Host Bus Adapter)、FCスイッチ、ストレージのポートを結ぶ高速なシリアル通信技術です。ストレージ用途ではSCSIコマンドをFC上に載せるFCP(Fibre Channel Protocol)が広く使われます。

FC SANの主要な部品
サーバー / HBA
I/O要求をFC通信へ変換します
FCスイッチ
宛先ポートへフレームを転送します
ストレージ
LUNを提供して読み書きします

FCは一般的なTCP/IP通信と同じものではありません。IPネットワークとの連携技術はありますが、FC自体をTCP/IPの上位プロトコルとして定義する説明は不適切です。

05|光ケーブルと電気ケーブル、何が違いますか

FCの物理接続には、対応した光ファイバーや銅線の伝送媒体を使います。光は長距離接続や電磁ノイズへの耐性が必要な環境で選ばれます。一方、短距離の配線では銅線のダイレクトアタッチケーブルなどが使われる場合があります。

媒体特徴注意点
光ファイバー光信号で伝送します。距離や光トランシーバーの種類に応じた構成が必要です対応する規格、モジュール、ファイバー種別を確認します
銅線電気信号で伝送します。短距離接続に向く製品があります距離、ポート仕様、ケーブル規格に制約があります

06|接続方法はスイッチ型だけではありません

FCにはポイントツーポイント、スイッチドファブリック、調停ループ(FC-AL)といった接続トポロジーがあります。現在のSANで代表的なのはスイッチドファブリックですが、FCの定義がそれだけに限定されているわけではありません。

ポイントツーポイントのノード図
サーバーストレージ

線は論理的な接続関係を示す概念図です。実際の物理配線や障害対策構成は環境によって異なります。

スイッチドファブリックのノード図
サーバー Aサーバー BFCスイッチストレージ Aストレージ B

線は論理的な接続関係を示す概念図です。実際の物理配線や障害対策構成は環境によって異なります。

調停ループ(FC-AL)のノード図
サーバーストレージ Aストレージ Bストレージ C

線は論理的な接続関係を示す概念図です。実際の物理配線や障害対策構成は環境によって異なります。

イラスト|名称を「役割」で整理する接続マップ

SCSI

何を読み書きするか

READ / WRITEなどのコマンド

FCP

どうFCへ載せるか

SCSIコマンドをFCで運びます

FC

どこを通って運ぶか

HBA → FCスイッチ → ストレージ

SCSIは命令の考え方、FCPはFCへ載せるプロトコル、FCは通信基盤です。名前が似ていても同じ層の技術ではありません。

07|SCSI・SAS・FCPをまとめて整理します

SCSIはストレージ操作のコマンド体系としての意味と、昔のパラレルSCSI接続方式の意味で使われることがあります。両者を分けることが重要です。FCPは、SCSIコマンドをFCの通信上で運ぶための仕組みです。FCの物理層がパラレルSCSIになるわけではありません。

用語主な役割区別するポイント
SCSIコマンドREAD / WRITEなどのストレージ操作物理ケーブルの名前ではありません
パラレルSCSI従来の並列信号による接続方式FCの物理層ではありません
SASSerial Attached SCSI。シリアル接続方式ですFCとは別の接続技術です
FCPFC上でSCSIコマンドを運びますFCとSCSIをつなぐ上位マッピングです
iSCSITCP/IP上でSCSIコマンドを運びますFC SANとは異なる転送基盤です
ストレージへ読み出し要求が届くまで
OS
ブロック読出しを要求します
SCSIコマンド
READを指定します
FCP / FC
コマンドをFC上で転送します
ストレージ
指定ブロックを返します

データが利用者の手元へ届くまでには、ホストやストレージ内部でさらに多くの処理が行われます。

08|FCの階層はどのように分かれますか

FCはFC-0からFC-4までの機能層で整理されます。TCP/IPの階層をそのまま置き換えたものではありませんが、どの層が物理伝送を扱い、どの層が上位プロトコルとの橋渡しをするかを分けると理解しやすくなります。

階層役割の概略具体例
FC-0物理媒体・電気光学的な伝送光ファイバー、対応する銅線接続
FC-1信号の符号化などライン符号化
FC-2フレーム・シーケンス・フロー制御などFCフレームの転送
FC-3共通サービスに関係する階層共通サービスの概念
FC-4上位プロトコルとのマッピングFCPによるSCSIコマンド転送

09|WWN・LUN・ゾーニングは何のために必要ですか

複数のサーバーとストレージが同じSANに接続されると、「どの機器が、どの記憶領域を見られるのか」を管理する必要があります。WWNはFC機器やポートの識別に利用される名前です。ゾーニングは主にFCファブリック側で相互に通信できるポートを制御します。LUNマスキングはストレージ側でホストに公開する論理ユニットを制御します。

アクセスが届くまでの制御
サーバー / HBA
WWPNなどで識別します
FCゾーニング
通信を許可する相手を絞ります
LUNマスキング
利用できる論理装置を絞ります
ボリューム
ホストからブロック装置として見えます

ゾーニングとLUNマスキングは役割の異なるアクセス制御です。設定だけで完全なセキュリティが保証されるわけではありません。

10|冗長化とマルチパスは何を守りますか

本番のストレージ接続では、HBA、スイッチ、ケーブル、ストレージ側のポートが故障してもサービスを継続できることが重要です。そのため、異なる経路を用意するマルチパス接続が使われます。

2つの独立した経路を用意する考え方
サーバー
複数のHBA / ポート
Fabric A・Fabric B
別々のスイッチ経路
ストレージ
複数のターゲットポート

概念図としてまとめています。実構成では独立した配線・スイッチ・電源など、単一障害点の削減も検討します。

マルチパスソフトウェアは、利用できる経路を把握し、障害が起きたときの切替えや経路選択を支援します。冗長化は単にケーブルを2本に増やすことではありません。

11|FC SANとiSCSI SANはどこが違いますか

比較項目FC SANiSCSI SAN
運ぶコマンド一般にSCSISCSI
転送基盤FCのフレーム・ファブリックTCP/IPネットワーク
代表的な接続機器FC HBA、FCスイッチNIC、Ethernetスイッチ
よく検討する点専用接続の運用、対応機器IPネットワークの設計、帯域・遅延・分離

両者は対立する考え方ではなく、サーバーへブロックストレージを提供するための異なる選択肢です。どちらが必ず高速か・安価かは、製品と環境によって変わります。

12|NVMeとNVMe over Fabricsは何が違うのですか

NVMeは、主にSSDに向けて設計されたコマンド体系です。NVMe over Fabrics(NVMe-oF)は、NVMeのコマンドをネットワークを通じて利用するための仕組みです。NVMe/FCはその転送方式の一つで、FCファブリック上でNVMeを利用します。

13|仕組みを短い擬似コードで確認します

以下は実際のFC制御ソフトウェアではなく、サーバーがストレージへ要求を送るときに考えるべき段階を表した学習用の擬似コードです。

ストレージアクセスの概念的な流れ
const request = { operation: "READ", lun: 2, lba: 4096 };

// 1. 対象となる論理ボリュームを確認します。
// 2. ホストが利用できる経路を選択します。
// 3. FCPならSCSIコマンドをFCフレームで運びます。
// 4. ストレージが該当するブロックを読み出します。
// 5. 完了応答とデータがホストに戻ります。

14|操作ラボ:接続方式と通信経路を切り替えます

下のラボでは、DAS・NAS・FC SAN・iSCSI SANを切り替え、サーバーからストレージへどの経路でアクセスするかを確認できます。FC SANを選ぶと、ポイントツーポイントとファブリックの構成、光と銅線の媒体、ゾーニング、2系統の冗長化を操作できます。

INTERACTIVE STORAGE LAB

サーバーとストレージをつなぐラボ

データの届け方を切り替え、機器の役割と障害発生時の通信可否を確認します。実機のFCフレームや認証機構を再現するものではなく、構成理解を目的としたモデルです。

現在の接続図

サーバー A / HBA要求元
FC Fabric A・B接続・転送
ストレージ 1 / LUN要求先

媒体:光信号。SCSIコマンドはFCPでFC上を流れます。

現在の通信判定:到達できます(サーバーA→ストレージ1、B→ストレージ2だけを許可する学習用ルールです)

要求ログ

「読み出し要求を送信」を押すと結果が表示されます。

試してみましょう

① FC SANでA→1が到達できることを確認します。② ゾーニングを有効にしたままA→2へ切り替えます。③ Fabric Aを故障させ、冗長化の有無で結果を比べます。④ 光/銅線を切り替えてもFCという通信方式自体が変わらないことを確認します。

15|似た言葉を取り違えないための整理

間違えやすい組合せ正しい考え方覚えるイメージ
FCと光ケーブルFCは伝送規格であり、媒体は光だけに限りません仕組みとケーブルは別です
FCとTCP/IPFCはTCP/IPの上位層として誕生した規格ではありませんFCとIPは転送基盤が異なります
FCとパラレルSCSIFCPはSCSIコマンドをFC上に載せますが、FCの物理層がパラレルSCSIになるわけではありませんコマンドと物理配線は別です
SANとNASSANはブロック提供、NASはファイル共有が代表的ですディスクを見せるか、ファイルを見せるかです

16|まとめ:どの技術がどの役割かを押さえます

大容量ストレージへの接続を考えるときは、ファイルかブロックか、どのネットワーク基盤で運ぶか、どの機器を通るか、どのようにアクセスを制御するかの4点を整理すると理解しやすくなります。

ファイバチャネルはSANで使用される高速なシリアル転送技術であり、光ファイバーにも対応する銅線にも利用可能な方式があります。スイッチ型だけに限定されず、FCPでSCSIコマンドを運ぶこともできます。これらを一つのシステムとして説明できれば、関連技術の理解も進みます。

17|RAIDの前に、SSDを「区画の並び」として考えます

利用者が開く写真は1つのファイルに見えます。しかしストレージへアクセスするとき、OSやファイルシステムはデータを小さな単位に分け、論理ブロックアドレス(LBA:Logical Block Address)を使って管理します。ブロックは倉庫の棚番号が付いた小さな区画のようなものです。

ファイルを読み出すときの仕事の分担
写真を開く
利用者はファイル名を指定します
ファイルシステム
必要なブロック番号を特定します
ブロック要求
READ LBA=100 などを送ります
記憶装置
要求された区画のデータを返します

実際のSSD内部では論理アドレスを物理フラッシュ位置へ変換するFTLなども動作します。ブロックとフラッシュの消去ブロックは同じ意味ではありません。

18|RAIDはなぜ複数のディスクをまとめるのですか

RAID(Redundant Array of Independent Disks、レイド)は、複数の記憶装置を組み合わせ、性能や可用性などを高める技術です。例えば1台の故障で業務が止まらないようにする目的で使います。なおRAIDはバックアップの代わりではありません。誤削除・ランサムウェア・火災などには別の対策が必要です。

1台の論理ディスクとして見せるイメージ
アプリケーション
1つのドライブに見えます
RAID制御
保存先・複製・パリティを計算します
ディスク群
複数台へブロックを配置します

図は概念的な構成です。RAIDはOSのソフトウェアや専用コントローラーなどで構成できます。

方式書き込み方のイメージ主な特徴
RAID 0ブロックを複数台へ分散します速度向上を狙えますが冗長性はありません
RAID 1同じデータを別のディスクへ複製しますミラーリングにより単一障害への耐性を持てます
RAID 5データと分散パリティを記録します通常、1台までの故障を許容します
RAID 62種類の冗長情報を分散して記録します通常、2台までの故障を許容します
RAID 10ミラーリングした組をストライピングします性能と冗長性を両立します。耐障害数は故障した組の位置によります

19|図解:RAID 0・1・5はブロックをどう配置しますか

ここではA・B・C・Dをそれぞれ別のデータブロックとして考えます。RAID 0は分散、RAID 1は複製、RAID 5はデータとパリティを分散配置することが違いです。

RAID 0:ストライピング

Disk 1

A
C

Disk 2

B
D

片方のディスクが壊れると、データの一部が失われます。

RAID 1:ミラーリング

Disk 1

A
B

Disk 2

A
B

両方へ同じデータを書き込みます。

RAID 5:分散パリティ

Disk 1

A
P1

Disk 2

B
C

Disk 3

P0
D

パリティの担当ディスクを固定せず、分散させます。

RAID 5の図ではP0は最初のデータ組のパリティ、P1は次の組のパリティです。パリティの位置とデータの配置は実装やレイアウトにより異なります。図は各方式の仕組みを理解するための簡略図です。

20|XORで故障したブロックを復元する仕組み

RAID 5のパリティは、データブロックの各ビットをXOR(排他的論理和)で計算するのが基本です。XORは、同じビット同士なら0、異なるビット同士なら1になります。

ABA XOR B
000
011
101
110
3台構成を簡単にした1ビットの復元例
ディスクA: 1
ディスクB: 0
パリティP = A XOR B = 1

もしディスクAを失っても
A = B XOR P = 0 XOR 1 = 1

※実際にはブロックの各ビットで計算します。

21|パリティビットとハミング符号は何が違うのですか

どちらも「データが壊れる可能性」への対策ですが、役割が違います。単純なパリティビットは偶数・奇数の整合性を検査するもので、1ビットの誤りを検出できますが、一般には壊れた位置を決定できません。一方、ハミング符号(Hamming code、ハミングコード)は複数の検査ビットによって誤り位置を特定できるようにした符号です。

読み書きしたビット列を守る考え方
元データ
例:4ビット 1011
検査ビット追加
検査用の冗長情報を付けます
保存・転送
途中でビットが反転することがあります
整合性確認
検査結果から誤りを調べます

RAIDは複数ディスクのデータ消失への備え、ECCはメモリや転送データなどのビット誤りへの備えとして使われます。

技術何を守るかできることと限界
単一パリティビット小さなビット列奇数個のビット反転を検出できますが、位置を特定できません
ハミング(7,4)4ビットデータ+3検査ビット通常、1ビットの誤り訂正ができます。ただし2ビット誤りを安全に訂正することはできません
拡張ハミング(SECDED)追加の全体パリティ付き符号1ビット訂正・2ビット検出の性質を持ちます
RAID 5複数ディスク上のブロック通常、ディスク1台の喪失からデータを再構築できます

22|ハミング(7,4)をビットで計算してみます

7ビットの位置を1〜7とし、位置1・2・4をパリティ、位置3・5・6・7をデータとして使います。偶数パリティの場合、位置1の検査は1,3,5,7、位置2の検査は2,3,6,7、位置4の検査は4,5,6,7を対象とします。

データ1011をハミング(7,4)へ符号化する例
位置:     1 2 3 4 5 6 7
役割:     P P D P D D D
データ:   ? ? 1 ? 0 1 1

P1 = D3 XOR D5 XOR D7 = 1 XOR 0 XOR 1 = 0
P2 = D3 XOR D6 XOR D7 = 1 XOR 1 XOR 1 = 1
P4 = D5 XOR D6 XOR D7 = 0 XOR 1 XOR 1 = 0

符号語:   0 1 1 0 0 1 1  → 0110011

ここで位置6のビットが1から0に反転すると、受信側では検査P2とP4が不一致となり、P1は一致します。検査結果の値は2+4=6なので、「6番目のビットが壊れた」と判断して1ビットを反転させます。これをシンドロームによる位置特定といいます。

23|CRC・チェックサム・ECC・RAIDを整理します

データを守る方法は一つではありません。転送中のビット誤りを見つけたいのか、1ビットを直したいのか、ディスクが故障しても読み出したいのかによって技術を選びます。

技術英語と読み方主な使いどころ
CRCCyclic Redundancy Check(シーアールシー)転送・保存されたデータの誤り検出
ECCError-Correcting Code(イーシーシー)データ誤りの検出・訂正(訂正能力は符号に依存)
RAIDRedundant Array of Independent Disks(レイド)複数装置の構成で可用性や性能を高める
バックアップBackup(バックアップ)誤削除や災害等に備えて別コピーを保持する
ストレージ全体では複数の防御が重なります
アプリのデータ
必要ならチェックサム等
RAID・ストレージ
装置故障からの継続を支援
媒体・メモリ
内部ECC等でビット誤りに対応
別系統のバックアップ
論理障害・災害への備え

各対策は相互の代替ではありません。目的と障害モデルを分けて設計します。

24|ストレージ整合性ラボ:RAIDとハミング符号を操作します

RAIDタブでは複数ディスクに保存するブロックとXORパリティを確認できます。ハミングタブでは4ビットから7ビットの符号語を作り、任意の1ビットを反転させたときのシンドロームを調べられます。

STORAGE INTEGRITY LAB

冗長化と誤り訂正を試してみましょう

4ビットのブロックAとBからパリティPを作ります。ディスク1台が失われた場合に、残り2台のビットをXORして復元する仕組みです。

ディスクA

故障

ディスクB

0110

パリティP

1101

A を失っても、残りのブロックのXORで 1011 と復元できます。

25|全体像:どの層にどの技術が入りますか

ストレージへ保存されるまでの関係
アプリとファイル
名前でファイルを開きます
ファイルシステム
ファイルをブロックに対応させます
FC / iSCSI 等
コマンドをストレージへ届けます
RAID と記憶媒体
複数装置へ保存し、内部ECC等で保護します

FC・SCSI・RAID・ECCは別々の層・役割を持ちます。すべての構成にすべての技術が必須という意味ではありません。

ファイバチャネル(FC)はストレージへ要求を運ぶ技術、SCSIは読み書きのコマンド体系、ファイルシステムはファイルとブロックの対応付け、RAIDは複数ディスクの配置・冗長化、ECCはビット列の検出・訂正です。この区別が理解の土台になります。