(57)【要約】【課題】  規格の異なる複数のネットワークに接続することのできるストレージ装置を低コストで提供すること。【解決手段】  通信プロトコルに従って通信を行うネットワークに接続されるストレージ装置６に収容されるネットワークインタフェース１であって、通信の物理層に関する信号処理を行う物理層処理部と、クロック周波数と通信プロトコルとの対応情報を２つ以上格納するクロック供給部と、対応情報をもとに、受信したフレームのクロック周波数から通信プロトコルを特定し、送信するフレームの通信プロトコルからフレームのクロック周波数を特定するシリアル変換部と、特定した通信プロトコルごとのフレーム処理を行うプロトコル別処理部３０と、を有する。【選択図】      図２
2006237766.tif 000002
【特許請求の範囲】
【請求項１】
通信プロトコルに従って通信が行われるネットワークに接続されるストレージ装置に収容されるネットワークインタフェースであって、
通信の物理層に関する信号処理を行う物理層処理部と、
クロック周波数と前記通信プロトコルとの対応情報を２つ以上格納するクロック供給部と、
前記対応情報をもとに、受信したフレームの前記クロック周波数から前記通信プロトコルを特定し、送信するフレームの前記通信プロトコルからフレームの前記クロック周波数を特定するシリアル変換部と、
特定した前記通信プロトコルごとのフレーム処理を行うプロトコル別処理部と、
を有することを特徴とするネットワークインタフェース。
【請求項２】
前記ネットワークインタフェースは、フレームのブロック符号化およびブロック復号化を行う符号化復号化部をさらに備えることを特徴とする請求項１に記載のネットワークインタフェース。
【請求項３】
前記クロック供給部は、前記クロック周波数とファイバチャネルのプロトコルとの前記対応情報を格納し、
プロトコル別処理部は、特定した前記通信プロトコルがファイバチャネルのときには、ファイバチャネルに特有のフレーム処理を行うファイバチャネル処理部を含むこと
を特徴とする請求項１または請求項２に記載のネットワークインタフェース。
【請求項４】
前記クロック供給部は、前記クロック周波数とイーサのプロトコルとの前記対応情報を格納し、
前記プロトコル別処理部は、特定した前記通信プロトコルがイーサのときには、イーサに特有のフレーム処理を行うイーサ処理部を含むこと
を特徴とする請求項１または請求項２に記載のネットワークインタフェース。
【請求項５】
前記クロック供給部は、前記クロック周波数とｉＳＣＳＩのプロトコルとの前記対応情報を格納し、
前記プロトコル別処理部は、特定した前記通信プロトコルがｉＳＣＳＩのときには、ｉＳＣＳＩに特有のフレーム処理を行うｉＳＣＳＩ処理部を含むこと
を特徴とする請求項１または請求項２に記載のネットワークインタフェース。
【請求項６】
前記プロトコル別処理部は、特定用途向け集積回路により構成されることを特徴とする請求項１ないし請求項５のいずれか１項に記載のネットワークインタフェース。
【請求項７】
前記ネットワークインタフェースは、ＩＰ−ＳＡＮおよびＦＣ−ＳＡＮに接続されることを特徴とする請求項１ないし請求項６のいずれか１項に記載のネットワークインタフェース。
【請求項８】
ネットワークインタフェースを収容するストレージ装置が、通信プロトコルに従って通信が行われるネットワークを介して、ホストに接続する計算機システムであって、
前記ネットワークインタフェースは、
通信の物理層に関する信号処理を行う物理層処理部と、
クロック周波数と前記通信プロトコルとの対応情報を２つ以上格納するクロック供給部と、
前記対応情報をもとに、受信したフレームの前記クロック周波数から前記通信プロトコルを特定し、送信するフレームの前記通信プロトコルからフレームの前記クロック周波数を特定するシリアル変換部と、
特定した前記通信プロトコルごとのフレーム処理を行うプロトコル別処理部と、
前記ネットワークインタフェースは、フレームにブロック符号化およびブロック復号化を行う符号化復号化部とを有し、
前記ネットワークは、ＩＰ−ＳＡＮ、および、ＦＣ−ＳＡＮで構成されること
を特徴とする計算機システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークインタフェース、および、計算機システムに関する。
【背景技術】
【０００２】
記憶手段を有するストレージ装置がネットワークに接続されて使用される形態が、普及している（特許文献１など）。このようなネットワークとして、ＳＡＮ（Storage Area Network）などが、挙げられる。これにより、ストレージ装置とは別の装置が、ネットワークを介して記憶手段にアクセスすることができる。
【特許文献１】特開平１０−６９３５７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ストレージ装置を接続するネットワークに使用される通信プロトコルは、ストレージ装置の開発ベンダや、ネットワークの標準化団体などから、様々なものが提案されている。このような規格には、同一規格の装置間は接続可能であるが、異なった規格どうしの装置間は、互換性がないので、接続ができない。
【０００４】
よって、従来の技術では、所定のストレージ装置を個々の規格が異なる複数のネットワークに接続するときには、個々のネットワークの規格に合ったネットワークインタフェース基板を、規格の個数分だけ備えている必要がある。このような構成は、ストレージ装置の構成を大きくしてしまうので、ストレージ装置の開発ベンダにとっては、個々のネットワークインタフェース基板の開発コストと管理コストが増加する。ストレージ装置のユーザも、自分が必要とするネットワークインタフェース基板を、プロトコル毎に購入する必要があるため、導入コストが増加する。
【０００５】
そこで、本発明は、前記課題を解決し、規格の異なる複数のネットワークに接続することのできるストレージ装置を、低コストで提供することを主な目的とする。
【課題を解決するための手段】
【０００６】
前記課題を解決するため、本発明は、通信プロトコルに従って通信が行われるネットワークに接続されるストレージ装置に収容されるネットワークインタフェースであって、通信の物理層に関する信号処理を行う物理層処理部と、クロック周波数と前記通信プロトコルとの対応情報を２つ以上格納するクロック供給部と、前記対応情報をもとに、受信したフレームの前記クロック周波数から前記通信プロトコルを特定し、送信するフレームの前記通信プロトコルからフレームの前記クロック周波数を特定するシリアル変換部と、特定した前記通信プロトコルごとのフレーム処理を行うプロトコル別処理部と、を有することを特徴とする。その他の手段は、後記する。
【発明の効果】
【０００７】
本発明によれば、ネットワークの規格が異なっても、ネットワークインタフェースを交換することなく、複数の通信プロトコルを扱うことが可能となる。よって、規格の異なる複数のネットワークに接続することのできるストレージ装置を、低コストで提供することができる。
【発明を実施するための最良の形態】
【０００８】
以下に、本発明が適用される計算機システムの一実施形態について、図面を参照して詳細に説明する。まず、本実施形態の計算機システムの構成について、図１から図７を参照して説明する。
【０００９】
図１は、計算機システムを示す構成図である。計算機システムは、ストレージ装置６が、ネットワークを介して、ホスト９４と接続する形態である。ホスト９４は、演算処理装置と記憶手段とを備えるコンピュータである。このネットワークは、例えば、ＩＰ−ＳＡＮ（Internet Protocol−Storage Area Network）９０、ＦＣ−ＳＡＮ（Fibre Channel−Storage Area Network）９２などが挙げられる。
【００１０】
そして、ストレージ装置６は、ストレージ装置内を管理するストレージ管理部６０が、演算処理を行う際に用いられる記憶手段としてのメモリ６４と、前記演算処理を行う演算処理装置とを少なくとも備えるコンピュータとして構成される。なお、メモリ６４は、ＲＡＭ（Random Access Memory）などにより構成される。演算処理は、ＣＰＵ（Central Processing Unit）などのマイクロプロセッサ６２によって構成される演算処理装置が、メモリ６４上のプログラムを実行することで、実現される。
【００１１】
ストレージ装置６は、さらに、ディスクインタフェース８０を介して接続されるストレージ８２を、１つ以上有する。そして、ストレージ装置６の各構成要素は、内部接続用スイッチ７０を介して互いに接続される。ストレージ管理部６０は、転送制御部６６を介して内部接続用スイッチ７０と接続する。
【００１２】
さらに、ストレージ装置６は、ストレージ装置内に有するネットワークインタフェース（マルチプロトコル用）１を介して、ネットワーク上を流れる多種の通信プロトコルのデータを送受信する。以下、ネットワークインタフェース（マルチプロトコル用）１は、単にネットワークインタフェース１と略し、請求項に記載のネットワークインタフェースとする。なお、通信プロトコルは、例えば、ＦＣ（Fibre Channel）、ＦＩＣＯＮ（Fibre Connection）（登録商標）、ｉＳＣＳＩ（Internet Small Computer System Interface）、イーサネット（登録商標）（本明細書においてイーサとする）などが、挙げられる。
【００１３】
図２は、ネットワークインタフェース１を示す構成図である。ネットワークインタフェース１は、マイクロプロセッサ１６がメモリ１８内に格納されているプログラムを実行するコンピュータとして構成される。ネットワークインタフェース１は、転送制御部１４を介して、内部接続用スイッチ７０と接続する。以下、ネットワークインタフェース１の各構成要素を、具体的に説明する。
【００１４】
図３は、フレームの信号処理を示す説明図である。まず、フレームを送信するときには、ネットワークインタフェース１は、プロトコル別処理部３０が作成したプロトコルごとに特有のヘッダおよびフッタが付加されたフレームについて、符号化復号化部（マルチクロック用）２６が８Ｂ／１０Ｂ符号化をし、シリアル変換部（マルチクロック用）２２がシリアル化をし、信号変換部１２がＮＲＺ光変換をし、ギガビットインタフェース変換部１０を介してフレームを送信する。以下、シリアル変換部（マルチクロック用）２２をシリアル変換部２２と、符号化復号化部（マルチクロック用）２６を符号化復号化部２６とする。また、本明細書では、ギガビットインタフェース変換部１０と信号変換部１２とを物理層処理部と呼ぶ。図中では別々に記載しているが、同一基盤で実装してもよい。
【００１５】
一方、フレームを受信するときには、ネットワークインタフェース１は、ギガビットインタフェース変換部１０を介して受信したフレームについて、信号変換部１２がＮＲＺ光変換をし、シリアル変換部２２がシリアル化をし、符号化復号化部２６が８Ｂ／１０Ｂ符号化をし、プロトコルごとに特有のヘッダおよびフッタが付加されたフレームをプロトコル別処理部３０に割り振る。
【００１６】
まず、ネットワークインタフェース１は、外部のネットワーク（ＩＰ−ＳＡＮ９０、ＦＣ−ＳＡＮ９２など）と接続するためのポート（図示は省略）が、ギガビットインタフェース変換部１０と接続する。ギガビットインタフェース変換部１０は、データリンク層プロトコルに非依存の物理層に関する処理を行う。そして、ネットワークインタフェース１は、通信するフレームに関する信号を変換する信号変換部１２を有する。信号変換部１２は、電気信号と光信号との変換処理、および、信号波形の変換処理を行う。
【００１７】
次に、ネットワークインタフェース１は、シリアル変換部２２を有する。シリアル変換部２２は、ポートが外部ネットワークに接続されたときに、接続先の装置から送信されるアイドル符号の検出を行う。そして、検出したアイドル符号の周波数に対応する通信プロトコルのフレームの通信を許可する。つまり、アイドル符号を検出したクロックに関係するデータリンク層のフレームは、送受信の対象となる。なお、実際にアイドル符号を検出しなくても、管理者の設定により、アイドル符号が検出済みとみなすこととしてもよい。
【００１８】
そして、シリアル変換部２２は、アイドル符号が検出済みのクロック周波数をもとに、通信するフレームの通信プロトコルを判定する。具体的には、シリアル変換部２２は、受信時に、受信するフレームが伝送されたクロック周波数をもとに、そのフレームのプロトコル種別を特定する。そして、シリアル変換部２２は、送信時に、送信するフレームのプロトコル種別をもとに、そのフレームを伝送するクロック周波数を特定する。
【００１９】
シリアル変換部２２は、信号の周波数と通信プロトコルとの対応情報を、クロック供給部（マルチクロック用）２０から取得する。以下、クロック供給部（マルチクロック用）２０を、クロック供給部２０とする。図４は、クロック供給部２０を示す構成図である。図４（ａ）は、８Ｂ／１０Ｂ符号化（後記）を行うフレームに関する対応情報（クロック番号＃１〜＃６）を格納する一例を示す構成図であり、図４（ｂ）は、図４（ａ）の対応情報（クロック番号＃１〜＃６）に加え、６４Ｂ／６６Ｂ符号化（後記）を行うフレームに関する対応情報（クロック番号＃７、＃８）を格納する一例を示す構成図である。
【００２０】
クロック供給部２０の対応情報は、例えば、図４（ａ）のクロック番号＃１が、１ギガファイバチャネルというプロトコル種別と、クロック周波数（１×１．０６２５ＧＨｚ）とを対応づけるレコードを示し、そのアイドル符号は、受信済みである。なお、シリアル変換制御部２４は、例えば管理者からの設定により、シリアル変換部２２およびクロック供給部２０の動作内容（例えば周波数の変更など）を逐一更新する。
【００２１】
さらに、ネットワークインタフェース１は、符号化復号化部２６を備えてもよい。符号化復号化部２６は、通信するフレームに対して、８Ｂ／１０Ｂ符号化、６４Ｂ／６６Ｂ符号化などのブロック符号化処理を行う。これらのブロック符号化処理は、文献（石田修、瀬戸康一郎監修、“１０ギガビットＥｔｈｅｒｎｅｔ（登録商標）教科書”、ＩＤＧジャパン、ページ１４１，１４２）に記載されている。そして、符号化復号化制御部２８は、符号化復号化部２６の符号化に関する動作内容（例えばどの符号化方式を用いるかなど）を逐一更新する。
【００２２】
ネットワークインタフェース１は、シリアル変換部２２が特定したデータリンク層のフレームのプロトコル種別に応じて、そのプロトコル種別に合ったプロトコル別処理部３０に、処理を割り振る。プロトコル別処理部３０は、プロトコルごとに特有の処理を実行する構成要素であり、例えば、ファイバチャネルのフレームを処理するファイバチャネル処理部３２、ｉＳＣＳＩのフレームを処理するｉＳＣＳＩ処理部３４、および、イーサのフレームを処理するイーサ処理部３６などが挙げられる。なお、図２に示すプロトコル別処理部３０が扱うプロトコルの種別はあくまでも例示であり、この組み合わせに限定されることはなく、任意のデータリンク層のプロトコルの種別を扱う処理部を有する構成としてもよい。
【００２３】
ここで、ネットワークインタフェース１は、データリンク層のフレームのプロトコル種別に関わらず、図５に示すように、物理層を扱う処理は共通化する。共通化する処理は、例えば、イーサとファイバチャネルとで共に行われるブロック符号化（ギガビットでは８Ｂ／１０Ｂ符号が主に使用される）である。
【００２４】
図６は、フレームのフォーマットを示す説明図である。データリンク層のフレームは、イーサフレーム（図６（ａ）参照）またはファイバチャネルフレーム（図６（ｂ）参照）である。イーサの場合は、ｉＳＣＳＩ処理またはＮＡＳ（Network Attached Storage）処理を行い、ファイバチャネルの場合は、ファイバチャネル処理またはＦＩＣＯＮ処理を行うための手段を、プロトコル別処理部３０において独立に用意することで、ネットワークインタフェース１はマルチプロトコルを扱う。なお、本実施形態では、図６に示された標準のフレームのフォーマットへの変更は行わないものとする。これにより、従来のフレームのプロトコル処理を行う装置との互換性を保つことができるので、既存資産の活用による低コストのシステム構築が可能となる。
【００２５】
図７は、フレーム間のインターフレームギャップを示す説明図である。図７（ａ）に示すギガビットイーサのＭＡＣフレーム、および、図７（ｂ）に示すファイバチャネルのＦＣフレームは、いずれもフレームを送信する間に、アイドル符号が送信される。なお、ファイバチャネルには、ＩＦＧ（Inter Frame Gap）内にプリミティブ信号が定義されている。
【００２６】
以上、計算機システムの構成について、説明した。次に、本実施形態の計算機システムの動作について、図１から図７を参照しつつ、図８から図１１に沿って説明する。
【００２７】
図８（ａ）は、フレームの受信処理の概要を示すフローチャートである。
【００２８】
まず、ギガビットインタフェース変換部１０は、ネットワークにネットワークインターフェース１を接続する（Ｓ１０１）。次に、シリアル変換部２２は、Ｓ１０１で接続したネットワークから、アイドル符号を検出する（Ｓ１０２）。これにより、アイドル符号のクロック周波数に対応するプロトコルのデータ通信を許可する。
【００２９】
そして、ギガビットインタフェース変換部１０および信号変換部１２は、ネットワークからフレームを受信する（Ｓ１０３）。さらに、シリアル変換部２２は、クロック周波数から受信フレームの通信プロトコルを判定する（Ｓ１０４）。そして、符号化復号化部２６は、フレームを復号化する（Ｓ１０５）。さらに、プロトコル別処理部３０は、データリンク層のフレームを取り出す（Ｓ１０６）。
【００３０】
図８（ｂ）は、フレームの送信処理の概要を示すフローチャートである。
【００３１】
まず、プロトコル別処理部３０は、データリンク層のフレームを送信対象として設定する（Ｓ１１１）。次に、符号化復号化部２６は、フレームを符号化する（Ｓ１１２）。そして、シリアル変換部２２は、通信プロトコルから送信フレームのクロック周波数を設定する（Ｓ１１３）。さらに、ギガビットインタフェース変換部１０および信号変換部１２は、Ｓ１１３で設定したクロック周波数にて、ネットワークにフレームを送信する（Ｓ１１４）。
【００３２】
図９は、フレームの通信処理の一例を示すフローチャートである。このフローチャートは、クロック供給部２０が図４（ａ）のデータを有しているときの、通信処理を示すものである。図９は、単一の符号化復号化方式（８Ｂ／１０Ｂ符号化）を使用することを特徴とする。
【００３３】
以下、フレームの受信処理を説明する。まず、マイクロプロセッサ１６は、クロック選択用の変数Ｘに１を代入する（Ｓ２０１）。次に、シリアル変換部２２は、クロック＃Ｘを選択する（Ｓ２０２）。例えば、Ｘが１のときには、図４（ａ）の最上段のレコード（クロック＃１）を選択する。
【００３４】
ここで、シリアル変換部２２は、クロック＃Ｘについてのアイドル符号を検出したか否かを判定する（Ｓ２０３）。例えば、図４（ａ）のレコード（クロック＃１）は、アイドル符号が受信済であるので、Ｓ２０３のＹｅｓに分岐する。
【００３５】
まず、アイドル符号を未検出のとき（Ｓ２０３、Ｎｏ）には、シリアル変換部２２は、クロック＃Ｘが６未満であるか否かを判定する（Ｓ２０４）。もし、クロック＃Ｘが６未満なら（Ｓ２０４、Ｙｅｓ）、マイクロプロセッサ１６は、Ｘに１を加算し（Ｓ２０５）、処理をＳ２０２に戻す。一方、クロック＃Ｘが６未満ではないなら（Ｓ２０４、Ｎｏ）、マイクロプロセッサ１６は、処理をＳ２０１に戻す。
【００３６】
一方、アイドル符号を検出済のとき（Ｓ２０３、Ｙｅｓ）には、シリアル変換部２２は、クロック＃Ｘを選択する（Ｓ２０６）。そして、シリアル変換部２２は、クロック＃Ｘの値を判定する（Ｓ２０７）。もし、クロック＃Ｘの値が＃１〜＃４のいずれかなら、Ｓ２１１から示すファイバチャネルに関する処理に進み、クロック＃Ｘの値が＃５または＃６なら、Ｓ２１２から示すイーサに関する処理に進む。
【００３７】
ここから、プロトコルごとに異なる処理となる。まず、シリアル変換部２２は、ファイバチャネル（Ｓ２１１）、または、イーサ（Ｓ２１２）のフレームを抽出する。次に、符号化復号化部２６は、ファイバチャネル（Ｓ２１１）、または、イーサ（Ｓ２２２）の復号化をする。
【００３８】
そして、プロトコル別処理部３０（ファイバチャネル処理部３２またはイーサ処理部３６）は、受信したフレームに対して、プロトコルの仕様に依存する処理（例えば、ヘッダの除去処理）を、ファイバチャネル（Ｓ２３１）、または、イーサ（Ｓ２３２）の受信対象となるフレームに対して行う。以上により、フレームの受信処理を説明した。
【００３９】
以下、フレームの送信処理を説明する。プロトコル別処理部３０（ファイバチャネル処理部３２またはイーサ処理部３６）は、送信するフレームのプロトコル仕様に基づく符号化処理（例えば、ヘッダの付加処理）を、ファイバチャネル（Ｓ２４１）、または、イーサ（Ｓ２４２）の送信対象となるフレームに対して行う。
【００４０】
次に、シリアル変換部２２は、送信対象となるフレームのプロトコルに対応するクロック＃Ｘを選択し（Ｓ２５１）、符号化復号化部２６は、符号化（８Ｂ→１０Ｂに変換）を実施する（Ｓ２５２）。以上により、フレームの送信処理を説明した。
【００４１】
図１０は、複数の符号化方式を併用するフレームの受信処理を示すフローチャートである。このフローチャートは、クロック供給部２０が図４（ｂ）のデータを有しているときの、通信処理を示すものである。図１０では、２つの方式（８Ｂ／１０Ｂ符号化、および、６４Ｂ／６６Ｂ符号化）を併用している。なお、図９と同じ処理については、同一の符号を付して、説明を省略する。
【００４２】
まず、８Ｂ／１０Ｂ符号化（Ｓ３０１〜Ｓ３０６）を説明する。符号化復号化部２６は、１０Ｂ符号を選択する（Ｓ３０１）。次に、シリアル変換部２２は、クロックを選択する（Ｓ３０２）。ここで、シリアル変換部２２は、Ｓ３０２で選択したクロックのアイドル符号を検出したか否かを判定する（Ｓ３０３）。
【００４３】
まず、アイドル符号を検出していないとき（Ｓ３０３、Ｎｏ）には、シリアル変換部２２は、クロック供給部２０に登録されているクロックのうち、Ｓ３０２で選択したクロックを除く、まだ選択していないクロックがあるか否かを判定する（Ｓ３０４）。もし、まだ選択していないクロックがあるとき（Ｓ３０４、Ｙｅｓ）には、そのクロック処理をＳ３０２で選択する。一方、まだ選択していないクロックがないとき（Ｓ３０４、Ｎｏ）には、後記する６４Ｂ／６６Ｂ符号化の処理（Ｓ３１１〜Ｓ３１６）を行う。
【００４４】
一方、アイドル符号を検出しているとき（Ｓ３０３、Ｙｅｓ）には、符号化復号化部２６は、１０Ｂ→８Ｂ変換を行う（Ｓ３０５）。ここで、シリアル変換部２２は、Ｓ３０２で選択したクロックに応じて分岐する（Ｓ３０６）。まず、クロックが＃１〜＃４なら、ファイバチャネルに関する処理（Ｓ２１１、Ｓ２２１、Ｓ２３１）を行い、クロックが＃５、＃６なら、イーサに関する処理（Ｓ２１２、Ｓ２２２、Ｓ２３２）を行う。
【００４５】
以下、６４Ｂ／６６Ｂ符号化の処理（Ｓ３１１〜Ｓ３１６）を説明する。符号化復号化部２６は、６６Ｂ符号を選択する（Ｓ３１１）。次に、シリアル変換部２２は、クロックを選択する（Ｓ３１２）。ここで、シリアル変換部２２は、Ｓ３１２で選択したクロックのアイドル符号を検出したか否かを判定する（Ｓ３１３）。
【００４６】
まず、アイドル符号を検出していないとき（Ｓ３１３、Ｎｏ）には、シリアル変換部２２は、クロック供給部２０に登録されているクロックのうち、Ｓ３１２で選択したクロックを除く、まだ選択していないクロックがあるか否かを判定する（Ｓ３１４）。もし、まだ選択していないクロックがあるとき（Ｓ３１４、Ｙｅｓ）には、そのクロック処理をＳ３１２で選択する。一方、まだ選択していないクロックがないとき（Ｓ３１４、Ｎｏ）には、マイクロプロセッサ１６は、プロトコル未検出状態とする（Ｓ３１７）。
【００４７】
一方、アイドル符号を検出しているとき（Ｓ３１３、Ｙｅｓ）には、符号化復号化部２６は、６６Ｂ→６４Ｂ変換を行う（Ｓ３１５）。ここで、シリアル変換部２２は、Ｓ３１２で選択したクロックに応じて分岐する（Ｓ３１６）。まず、クロックが＃７なら、ファイバチャネルに関する処理（Ｓ２１１、Ｓ２２１、Ｓ２３１）を行い、クロックが＃８なら、イーサに関する処理（Ｓ２１２、Ｓ２２２、Ｓ２３２）を行う。
【００４８】
図１１は、複数の符号化方式を併用するフレームの送信処理を示すフローチャートである。このフローチャートは、クロック供給部２０が図４（ｂ）のデータを有しているときの、通信処理を示すものである。図１１では、２つの方式（８Ｂ／１０Ｂ符号化、および、６４Ｂ／６６Ｂ符号化）を併用している。なお、図９と同じ処理については、同一の符号を付して、説明を省略する。
【００４９】
まず、ネットワークインタフェース１は、図９で説明した処理（Ｓ２４１、Ｓ２４２、Ｓ２５１）を行う。次に、シリアル変換部２２は、クロックの値によって分岐する（Ｓ４０１、Ｓ４０２）。
【００５０】
もし、クロックが＃１〜＃４（ファイバチャネルのフレーム）、または、＃５、＃６（イーサのフレーム）なら、符号化復号化部２６は、符号化（８Ｂ→１０Ｂ変換）を行う（Ｓ４１１）。一方、クロックが＃７（ファイバチャネルのフレーム）、または、＃８（イーサのフレーム）なら、符号化復号化部２６は、符号化（６６Ｂ→６４Ｂ変換）を行う（Ｓ４１１）。
【００５１】
以上、計算機システムの動作について、説明した。次に、図１から図１１に示す本実施形態の計算機システムと、図１２から図１５に示す比較例の計算機システムとの差異を明確にし、本実施形態の顕著な効果を主張する。
【００５２】
図１２は、比較例の計算機システムを示す構成図である。この比較例の計算機システムにおけるストレージ装置６は、接続するネットワークで使用されるプロトコルごとに、そのプロトコル専用のネットワークインタフェースを備える必要がある。例えば、図１２では、ｉＳＣＳＩを使用するＩＰ−ＳＡＮ９０には図１３に示すネットワークインタフェース（ｉＳＣＳＩ用）４Ａが接続され、ファイバチャネルを使用するＦＣ−ＳＡＮ９２には図１４に示すネットワークインタフェース（ファイバチャネル用）４Ｂが接続されている。
【００５３】
図１３および図１４に示すネットワークインタフェースは、１つのプロトコルしか扱わない。よって、クロック周波数とプロトコルとの対応情報は、１つで済む。そのため、図２に示すネットワークインタフェース１では、マルチクロック用としていた構成要素は、図１３および図１４では、シングルクロック用となる。具体的には、クロック供給部（シングルクロック用）４０、シリアル変換部（シングルクロック用）４２、および、符号化復号化部（シングルクロック用）４４が、シングルクロック用となる。また、図２のプロトコル別処理部３０の代わりに、図１３および図１４では、扱うプロトコル特有の処理部（図１３のｉＳＣＳＩ処理部３４、図１４のファイバチャネル処理部３２）が構成される。
【００５４】
このように、プロトコルごとにネットワークインタフェースを用意する比較例の形態では、それぞれの通信プロトコルに応じたネットワークインタフェース基板を開発する必要がある。よって、ストレージ装置６の開発ベンダにとっては、個々のネットワークインタフェース基板の開発コストと管理コストが増加するとともに、ストレージ装置６のユーザも、自分が必要とするネットワークインタフェース基板を、プロトコル毎に購入する必要があるため、導入コストが増加してしまう。
【００５５】
一方、図１に示す本実施形態の計算機システムでは、接続するネットワークで使用されるプロトコルが異なっていても、ネットワークインタフェース１を用意することとする。これにより、ネットワークインタフェースを交換することなく、複数の通信プロトコルを扱うことが可能となる。よって、ホスト９４とストレージ装置間の通信プロトコルとして所望のプロトコルを使用することができるので、最適化した計算機システムを構成することができる。
【００５６】
さらに、本実施形態の計算機システムでは、同一ネットワークインタフェースに複数のポートを持つ場合にも、ポートごとに異なる通信プロトコルを扱うことで、少ないネットワークインタフェースで、多種の通信プロトコルをサポートすることが可能となり、ストレージ装置６のユーザの導入コストを抑えられる。
【００５７】
以上説明した本発明は、以下のようにその趣旨を逸脱しない範囲で広く変形実施することができる。
【００５８】
例えば、本実施形態では、シリアル変換部２２は、アイドル符号が検出済みのクロック周波数に対応するプロトコルを、通信対象とすることとしたが、ネットワーク接続をする前に、管理者によりあらかじめクロックの選択とフレーム種類の抽出を固定して設定することや、同様にフレーム種類のみを固定して設定することを可能とすることで、ネットワーク接続時には、管理者が設定した通信プロトコルしか扱えないようにすることもできる。そのため、管理者の設定ファイルなどにより、あらかじめ通信対象のプロトコルを明示的に指定してもよい。
【００５９】
図１５は、ポート設定テーブル（図１６）の設定を示す説明図である。管理端末５は、マイクロプロセッサ５２、メモリ５４、イーサ５６、および、記憶手段５８を有する計算機である。イーサ５６は、管理ＬＡＮを介してストレージ装置６の管理用イーサ６８と接続するネットワークのインタフェースである。管理端末５およびストレージ装置６は、プロトコル設定プログラムを実行することによって、以下の動作を行う。
【００６０】
まず、管理端末５は、メモリ５４に格納されたポート設定テーブルを、ストレージ装置６のメモリ６４に送信する。ストレージ装置６は、メモリ６４に格納されたポート設定テーブルをもとに、ストレージ装置６内の各ネットワークインタフェース１のポートを設定する。
【００６１】
管理者の設定ファイルの一例として、図１６は、ポート設定テーブルを示す構成図である。プロトコル欄内の“自動”は、アイドル符号の検出により、通信対象となるプロトコルを示し、プロトコル欄内の“固定”は、アイドル符号の検出に関わらず、通信対象となるプロトコルを示し、プロトコル欄内に記載されていないものは、アイドル符号の検出に関わらず、通信対象とならないプロトコルを示す。
【００６２】
例えば、ポートＡは、アイドル符号の検出により、クロック＃１〜＃８に対応する８つのプロトコルが通信対象となる。ポートＢは、アイドル符号の検出により、ファイバチャネル（クロック＃１〜＃４、＃７）のプロトコルが通信対象となる。しかし、ポートＢは、アイドル符号の検出に関わらず、イーサ（＃５、＃６、＃８）のプロトコルは、通信対象から除外する。
【００６３】
また、ネットワークインタフェース１の各構成要素の実装形態は、マイクロプロセッサ１６が実行するプログラムだけではなく、特定用途向け集積回路であるＡＳＩＣ（Application Specific Integrated Circuit）や、プログラマブルＡＳＩＣが実行するプログラムとしてもよい。さらに、論理回路として実装された１つ以上の構成要素を、専用のプロトコルチップに収めてもよい。
【００６４】
さらに、プロトコル別処理部３０の各処理部は、着脱可能な記憶媒体として構成し、その記憶媒体からプログラムを読み取って、実行することとしてもよい。これにより、プロトコルの追加や仕様変更を行う際には、ネットワークインタフェース１を交換する代わりに、記憶媒体を交換するだけで済むので、保守が容易になる。
【図面の簡単な説明】
【００６５】
【図１】本発明の一実施形態に関する計算機システムを示す構成図である。
【図２】本発明の一実施形態に関するネットワークインタフェースを示す構成図である。
【図３】本発明の一実施形態に関するフレームの信号処理を示す説明図である。
【図４】本発明の一実施形態に関するクロック供給部（マルチクロック用）を示す構成図である。
【図５】本発明の一実施形態に関するプロトコルスタックを示す説明図である。
【図６】本発明の一実施形態に関するフレームのフォーマットを示す説明図である。
【図７】本発明の一実施形態に関するフレーム間のインターフレームギャップを示す説明図である。
【図８】本発明の一実施形態に関するフレームの通信処理の概要を示すフローチャートである。
【図９】本発明の一実施形態に関するフレームの通信処理の一例を示すフローチャートである。
【図１０】本発明の一実施形態に関する複数の符号化方式を併用するフレームの受信処理を示すフローチャートである。
【図１１】本発明の一実施形態に関する複数の符号化方式を併用するフレームの送信処理を示すフローチャートである。
【図１２】比較例の計算機システムを示す構成図である。
【図１３】比較例のネットワークインタフェース（ｉＳＣＳＩ用）を示す構成図である。
【図１４】比較例のネットワークインタフェース（ファイバチャネル用）を示す構成図である。
【図１５】本発明の一実施形態に関するポート設定テーブルの設定を示す説明図である。
【図１６】本発明の一実施形態に関するポート設定テーブルを示す構成図である。
【符号の説明】
【００６６】
１      ネットワークインタフェース
６      ストレージ装置
１０    ギガビットインタフェース変換部（物理層処理部）
１２    信号変換部（物理層処理部）
１４    転送制御部
１６    マイクロプロセッサ
１８    メモリ
２０    クロック供給部（マルチクロック用）
２２    シリアル変換部（マルチクロック用）
２４    シリアル変換制御部
２６    符号化復号化部（マルチクロック用）
２８    符号化復号化制御部
３０    プロトコル別処理部
３２    ファイバチャネル処理部
３４    ｉＳＣＳＩ処理部
３６    イーサ処理部
【図１】
2006237766.tif 000003
【図２】
2006237766.tif 000004
【図３】
2006237766.tif 000005
【図４】
2006237766.tif 000006
【図５】
2006237766.tif 000007
【図６】
2006237766.tif 000008
【図７】
2006237766.tif 000009
【図８】
2006237766.tif 000010
【図９】
2006237766.tif 000011
【図１０】
2006237766.tif 000012
【図１１】
2006237766.tif 000013
【図１２】
2006237766.tif 000014
【図１３】
2006237766.tif 000015
【図１４】
2006237766.tif 000016
【図１５】
2006237766.tif 000017
【図１６】
2006237766.tif 000018