論文
DBSJ Letters Vol.6, No.1――――――――――――――――――――――――――――――――――――

VPN 上の iSCSI 環境における複数経路アクセス適応制御手法の提案と評価
A Proposal and Evaluation of a Method toControl Multi-route Access for iSCSI over
VPN Environment

武田 裕子♥

小口 正人♠

Yuko TAKEDA Masato OGUCHI

近年サーバにおけるストレージ接続にSANを用いることが多くなってきた．SANを利用することによってサーバとストレージを高速ネットワークで接続することが可能となるが，現状では主にサーバサイト内のみでしか使用されていない．
そこでVPNを利用して，iSCSIを広域ネットワークに適用する手法を考察していく．VPNでは一般にオープンなインターネット環境を利用することが多いため，接続が不安定であったり帯域が保障されないという問題点が生じる．そこで本稿では複数経路を使用した実験を行った結果，複数経路を用いたほうが単一経路よりも高いスループットを得ることができた．さらに本稿では負荷を考慮した適応制御手法を検討する．
SAN has come to be often used for the storage connectionin the server in recent years. It is chiefly used only in theserver site under the present situation though connecting
the server with storage on a high-speed network becomes
possible by using SAN. Thus, the technique for applying
iSCSI to the wide area network is considered by using
VPN. The problem is caused that the connection isunstable because open and unsecured Internet
environment is often used in general in VPN. Therefore,
we did the experiment that used multi-routes and as aresult, the throughput was higher to use multi-routes
than a single route. In addition, the adjustment controltechnique for considering the load is examined in thispaper.

1. はじめに組織や企業などが保持するデータ量は年々増加しており，その管理コストが問題となっている．そこで，SAN(StorageArea Network)が導入されるようになってきた．SANはサーバとストレージを高速なネットワークで接続するもので，他のストレージソリューションに比べて高性能であり，管理コストや管理負荷を大幅に削減することが可能となる．現在SANの中で広く使用されているのはFC-SAN(Fibre Channel-SAN)である．しかし機器が高価であること，管理技術者が少ないこと，接続距離に制限があることなどの問題があるため，EthernetとTCP/IPを用いて構築するIP-SANが普及し始めている．IP-SANはFC-SANよりも安価で，既存のIPネットワークとシームレスな統合が可能となり，接続距離に制限がない．
IP-SANの中で現在特に期待されているのは，2003年にIETFによって承認されたiSCSIである[1]．iSCSIとは，イニシエー
タと呼ばれるサーバとターゲットと呼ばれるストレージ間をEthernetで接続し，TCP/IPパケット内のSCSIコマンドをカプセル化してストレージアクセスを行う技術のことである．
SANを利用することによって，管理コストや管理負荷を大幅に削減することができる．しかし，現状においてはSANは主にサーバサイト内においてのみしか使用されていない．そこで本稿では，VPN(Virtual Private Network)を利用して，iSCSIを広域ネットワークに適用する手法を検討する．VPNとは公衆回線をあたかも専用回線であるかのように利用できるサービスのことで，安価で安全な通信を可能にする．しかしVPNはオープンなインターネット環境を利用するため，接続が不安定で帯域が保障されないという問題点が生じる．そこで本稿ではネットワークの性能と信頼性を高めるために，複数経路を使用してiSCSIリモートアクセスを行い，その制御を行う手法を検討する．

2. 基礎実験
2.1

実験環境

インターネット環境におけるIP-SANの利用モデルを評価するため，低スループットのVPNルータ2台を用いてVPN上に単一経路のiSCSI実験システムを構築し，その性能評価を行った(図1)．iSCSIはニューハンプシャー大学
InterOperability Labが提供するドライバを用いた[2]．VPN
ルータには富士通のSi-R180を用いており，このVPNルータのIPsec暗号化スループットは3DES使用時に100Mbpsである[3]．
測定ツールには自作のベンチマークツールを用いており，rawデバイスに対してシーケンシャルリードアクセスをし，スループットを測定した．実験システムの概要は以下のとおりである．
zInitiator，Target¾
OS: Linux2.4.18-3¾
CPU: Intel Xeon 2.4GHz¾Main Memory: 512MB DDR SDRAM¾HDD: 36GB SCSI HD¾NIC: Intel PRO/1000XT Server Adapter on
PCI-X(64bit, 100MHz)¾iSCSI: UNH IOL reference implementation
ver.3 on iSCSI Draft 18z
VPNルータ: 富士通Si-R180(3DES使用時IPsec暗号化
スループット: 100Mbps)

VPN
VPNルータ1

Initiator

VPNルータ2Target♥

学生会員 お茶の水女子大学大学院人間文化研究科数理・情報科学専攻
yuko@ogl.is.ocha.ac.jp♠
正会員 お茶の水女子大学理学部情報科学科
oguchi@computer.org

1

図1
Fig.1

基礎実験の実験環境

Environment of Basic Experiment

日本データベース学会 Letters Vol.6, No.1

論文
DBSJ Letters Vol.6, No.1――――――――――――――――――――――――――――――――――――
2.2 測定結果と考察

3. 複数経路アクセス実験

VPN接続時とVPNルータをはさまない直接接続時においてスループットを測定し比較を行った．その結果を図2に示す．
また，図3は図2に示すVPN接続時の測定結果を拡大したものである．VPN接続時には直接接続時と比べかなりスループットが低下している．

3.1

400
350throughput(Mbps)

300
250
200

3.2150
100
5008K

16K

32K

64K

128K 256K 512K

1M

2M

4M

8M

16M

32M

16M

32M

block size(byte)
VPN接続

直接接続

図 2 VPN 接続時と直接接続時の比較
Fig.2 Comparison of Direct Connection
with VPN Connection
3530throughput(Mbps)

2520
1510
508K

16K

32K

64K

128K 256K 512K

1M

2M

4M

8M

block size(byte)
VPN接続

図 3 VPN 接続時の測定結果
Fig.3 Result of VPN ConnectioniSCSI の複数コネクション

iSCSIにおいて，イニシエータとターゲット間の論理的な通信路は，iSCSIセッションと呼ばれる．iSCSIセッションは，1つもしくは複数のTCPコネクションから構成される[4]．
iSCSIの複数コネクションとは単一のiSCSIセッションをドライバが分割し複数のTCPコネクション上に載せることである．一つのiSCSIセッションの中に複数のTCPコネクションを確立することによって複数コネクションを実現する．このようにiSCSIセッション中にTCPコネクションを一本張ることも複数束ねることも可能となっている．本稿ではこの仕組みを利用して複数経路において複数コネクションを実現している．
また本実験で用いたUNH-iSCSIの複数コネクションにおいて，パケットはラウンドロビンで振り分けられている．ドラ
イバの実装を修正することによって全てのコネクションに公平にラウンドロビンで振り分けるのではなく，コネクションごとのスループットに応じてパケットの振り分け配分を変えることも可能である．そしてパケットを受け取ったターゲットでは，パケットを送出順に戻して処理を行っていく．
この実装においては，複数のコネクションが同一経路を通ることを前提としてすべてのコネクションに公平にパケットの振り分けが行われている．しかしコネクションごとに経路が異なった場合，所要時間がコネクションごとに異なる形になるであろう．そのような場合には，ラウンドロビンのパケットの振り分けを比例配分するように変えれば，より高い性能をあげられる可能性があると考えられる．

3.3
直接接続時にはスループットは最大330Mbps程度出ているが，VPN接続時には33Mbps程度で飽和状態となっている．実
験機器のVPNルータはIPsec暗号化スループットが100Mbps程度である．本実験環境においては，VPNルータの性能と両端の端末でのプロトコル処理がボトルネックになり得ると考えられるが，これらの結果からVPNルータの性能がボトルネックとなりスループットを大幅に低下させていると考えられる．
また直接接続時にはブロックサイズが 128Kbyte まで，VPN接続時にも 256Kbyte まではスループットが増加し続けている．このようにブロックサイズが変化するとスループットも変化しており，適切なパラメータ設定が必要であるといえる．

2

複数経路ルーティング

インターネットにはもともと複数の経路が存在するが，実際にはあて先が同じパケットは同じ経路を通って相手に送られる．これに対し複数経路ルーティングとは，同じあて先のパケットを，送信元IPアドレス，ポート番号，上位プロトコル，TOS値といった区別を指定し異なる経路を通すことで，これはVPNルータに備わっている機能を利用している．この機能の本来の目的はVoIPと通常トラフィック，専用線とISDN回線などといった異なる回線を分離することである．本稿では異なったポート番号を指定することによって複数経路を実現している．

実験環境

高スループットのVPNルータ4台を用いてVPN上に複数経路のiSCSI環境を構築し，性能評価を行った(図4)[5]．VPNルータの機能とiSCSIの性質を用いて複数経路，複数コネクションを生成し，単一経路単一コネクションと複数経路複数コネクションの条件でそれぞれスループットを測定し，基礎実験の結果と比較した．なお，Write時は図4のVPN I-1とVPN T-1
間，VPN I-1とVPN T-2間を通り，Read時はVPN T-2とVPN I-1間，VPN T-2とVPN I-2間を通るものとする．
イニシエータとターゲットには基礎実験と同じマシンを用いた．VPNルータは富士通のSi-R570を用いた．基礎実験で用いたSi-R180は3DES使用時のIPsec暗号化スループットが100Mbpsだったが，複数経路実験で用いるSi-R570の暗号化ス
ループットは500Mbpsである．
zInitiator，Target¾
OS: Linux2.4.18-3¾
CPU: Intel Xeon 2.4GHz

日本データベース学会 Letters Vol.6, No.1

論文
DBSJ Letters Vol.6, No.1――――――――――――――――――――――――――――――――――――¾¾¾

Main Memory: 512MB DDR SDRAM
HDD: 36GB SCSI HD
NIC: Intel PRO/1000XT Server Adapter on
PCI-X(64bit, 100MHz)¾iSCSI: UNH IOL reference implementation ver.3
on iSCSI Draft 18
VPNルータ:富士通Si-R570(3DES使用時IPsec暗号化スループット: 500Mbps)

zVPN I-2
Initiator

VPN

Targetswitch

switchVPN I-1

switchVPN T-2

図4 複数経路実験の実験環境
Environment of Multi-routes Access Experiment

Fig.4

3.4

VPN T-1

測定結果と考察

250

200
throughput(Mbps)

4.1

ネットワーク負荷による影響の評価実験

次に複数経路の実験環境においてネットワークの片経路のみにトラフィックを流し負荷をかけて，単一経路と複数経路の環境でスループットを測定し負荷がない場合と比較を行った(図6)．負荷は，大きなファイルをscpコマンドで転送し続けるもので，約130Mbpsである．
その結果を図7に示す．単一経路の場合も複数経路の場合も負荷をかけることによりともに6割程度と同じくらいの割合で低下していることがわかる．
これはUNH-iSCSIの複数コネクションにおいて，2つのコネクションに対しパケットはラウンドロビンで振り分けられているため，iSCSI層では，片方のコネクションへ送り出したパケットが処理されないと，もう片方のコネクションも次を送り出すことができずに待つことになってしまうためであると考えられる．
したがって，複数コネクションでパケットを送り出した場合に，たとえ片方のコネクションは空いていてパケットを遅れる状態であっても，もう片方のコネクションが混んでいて遅いとそちらを待つことになり，性能は遅い方に引きずられて，結局混んでいる単一コネクションでパケットを送り出した場合と同程度に複数コネクションにおいても性能低下が起こっていると考えられる．
Initiator

TargetVPN T-1

VPN I-2

switchswitchswitchVPN
負荷

VPN I-1

VPN T-2

SCP実行ノード

Fig.6

SCP実行ノード

図6 負荷評価実験
Load Evaluation Experiment250200throughput(Mbps)

単一経路と複数経路でスループットを測定し比較を行った．その結果を図5に示す．単一経路も複数経路もブロックサイズが128Kbyteまではほぼ等しい値となっており，これはブロックサイズが小さいためまだネットワークに余裕がある状態であると考えられる．しかしその後伸び方に差が出て，512Kbyteでともに飽和状態となっている．
単一経路と複数経路を比較すると複数経路のほうが高いスループットを得た．これは，本実験環境の中でスループットの性能限界であるボトルネックとなっている箇所はVPNを通るところであり，VPNルータで暗号化の処理などを行うからであると考えられる．したがって複数経路にすると負荷が2つに分散されるので，スループットが高くなったと考えられる．しかし複数経路にしてもVPNルータをはさまない直接接続時の結果よりは低い値となっており，複数経路の実験環境においても基礎実験の環境と同様，VPNルータがボトルネックとなっているといえる．
また単一経路と基礎実験の結果を比較すると単一経路が165Mbps程度，基礎実験が33Mbps程度と約5倍となっており，VPNルータの性能の差，100Mbpsと500Mbpsと比例していることがわかる．

4. ネットワーク負荷に対する適応制御

150100501500100

8K

16K

32K

64K

128K

256K

512K

1M

2M

4M

8M

16M

32M

block size(byte)

複数経路(負荷なし)
複数経路(負荷あり)

5008K

16K 32K 64K 128K 256K 512K 1M
block size(byte)
複数経路

単一経路

2M

4M

8M

16M 32M

Fig.7

単一経路(負荷なし)
単一経路(負荷あり)

図7 負荷評価実験の結果
Result of Load Evaluation Experiment

基礎実験

図5 複数経路アクセス実験の実験結果
Fig.5 Result of Multi-routes Access Experiment3

日本データベース学会 Letters Vol.6, No.1

論文
DBSJ Letters Vol.6, No.1――――――――――――――――――――――――――――――――――――負荷に対する適応制御手法の提案

180基礎実験より，VPNをはさむとはさまない場合に比べ大幅にスループットが低下することがわかった．一方，複数経路アクセス実験より，複数経路にすると単一経路よりスループットがあがることがわかった．しかしネットワーク負荷影響評価実験より，iSCSIの場合には複数コネクションにしても片方のコネクションが遅いとそちらに引きずられて全体の性能が落ちてしまうことがわかった．
しかし負荷のかかっている複数経路より，負荷のかかっていない単一経路のほうがスループットが高いことがわかったので，本稿では複数経路で経路が混んでいる場合には，単一経路を利用するように切り替えることを提案する．具体的には図8のようにVPN I-2とVPNT-1間に負荷がかかっている場
合VPN I-1とVPN T-2間のみを通るように切り替え，VPN I-2とVPN T-2間，VPN I-1とVPN T-1は使用しないようにする．
負荷のかかっていない経路のみを使用することによって負荷の影響がなくなり，性能が向上すると考えられる．
SCP実行ノード

SCP実行ノード

VPN T-1

VPN I-2

負荷switchswitchswitch

VPN
Initiator

TargetVPN I-1

図8

VPN T-2

提案手法(負荷存在時の通信経路)
Fig.8 Proposal Method

ネットワーク負荷の影響評価実験と同様に，複数経路のiSCSI over VPN環境で図8ように片経路に負荷をかけてスループットを測定し比較を行った(図9)．提案手法と負荷のかかっていない単一経路のスループットの値がほぼ等しくなった．また負荷がかかっている複数経路より高いスループットを得ることができた．このことより負荷がかかっている場合には，複数経路を利用するよりも単一経路に切り替える提案手法のほうが性能がよくなると考えられる．
さらに負荷により異なるスループットに合わせて，各コネクションに対して配分するパケットの振り分けを変化させるように実装を変えることができれば，より性能の高いアクセスを実現する適応制御を行うことも可能である．

5. まとめと今後の課題
基礎実験として低スループット環境において単一経路のiSCSI over VPN環境を構築し，VPNルータをはさんだ場合とはさまない場合でスループットを測定し，比較を行った．VPNルータをはさむと，はさまないときと比べかなりスループットが低下した．これはVPNルータの性能がボトルネックとなっていると考えられる．
また，複数経路アクセス実験として高スループット環境において複数経路のiSCSI over VPN環境も構築し，スループットを測定した．経路の数だけでなくコネクションの数も単一，複数と変化させスループットの比較を行った．複数経路の場合のほうが高いスループットを得ることができた．これはVPNを通るときの暗号化処理などの負荷が分散されたからで

4160
140
throughput(Mbps)

4.2

120
100806040
2008K

16K

32K

64K 128K 256K 512K 1M
block size(byte)

提案手法使用時

Fig.9

単一経路(負荷なし)

2M

4M

8M

16M 32M

複数経路(負荷あり)

図9 提案手法の測定結果
Measurement Result of Proposal Techniqueあると考えられる．
しかし，負荷をかけると複数経路の場合も単一経路の場合もほぼ同程度スループットが落ちた．これは2つのコネクシ
ョンのうち，空いているほうも混んでいるほうに影響されて通信の待ち時間が長くなるからであると考えられる．
そこで負荷に対する適応制御手法を提案した．また評価実験より負荷がかかっている場合には複数経路を利用せず，単一経路に切り替えることによって性能向上が期待できることが実証できた．
今後は提案手法を実装し，評価を行っていく予定である．

[文献］[1] iSCSI Specification,
http://www.ietf.org/rfc/rfc3720.txt?number3270/[2] InterOperability Lab in the University of New

Hampshire,
http://www.iol.unh.edu/consortiums/iscsi/.
[3] IPアクセスルータ GeoStream Si-Rシリーズ，
http://fenics.fujitsu.com/products/sir/.
[4] 藤原啓成，若宮直紀，志賀賢太：“広域IP網を介したiSCSI通信におけるプロトコルチューニングの一検討”，情報処理学会第68回全国大会，pp.155-156，2006年3月[5]武田裕子，小口正人：“VPNを利用したIPストレージへの複数経路アクセス制御手法の提案”，電子情報通信学会コンピュータシステム研究会，CPSY2006-39，pp.7-12，2006
年12月

武田 裕子

Yuko TAKEDA

2007 年お茶の水女子大学大学院人間文化研究科博士前期課
程修了．2005 年お茶の水女子大学理学部情報科学科卒業．
iSCSI の研究に従事．現在は日本アイ・ビー・エム株式会社に勤務．

小口 正人

Masato OGUCHI

お茶の水女子大学理学部情報科学科教授．1995 年東京大学
大学院工学系研究科電子工学専攻博士課程修了，工学博士．
ネットワークコンピューティング・ミドルウェアに関する研究に従事．IEEE，ACM，日本データベース学会，情報処理学会，電子情報通信学会各正会員．

日本データベース学会 Letters Vol.6, No.1