家庭内機器制御のためのネットワーク設計とシミュレーション
2002MT026 梶川 千友
指導教員

2002MT043 前野 大輔

後藤 邦夫

1 はじめに
近年，身のまわりの電化製品はネットワーク化が進み，遠隔操作で制御・管理が可能になってきた．様々な企業がこれらの商品化に向けて取り組んでいる [1][2]．
しかし各企業が独自の規格を提案し，開発を進めているため同じネットワーク内に複数のメーカの情報家電を利用することが困難となっている．
今後，情報家電や利用者が増加し，サービスが大規模になった場合に応答時間やサーバへの負荷がどのくらいかかるのかわかっていない．その他にも現在 IPv4 を利用したシステムが多く導入されているが，これらにはアドレス変換が使われるため外部から直接制御ができない点や DHCP を必要とするため余分な DHCP サーバやクライアントが必要となり，複雑となるなど欠点がある．
そこで本研究では，存在する情報家電ネットワークの共通部分に注目し，現状のモデルを考える．JMeter[3]を用いてサーバの応答時間を計測し，その値から同時アクセス時にかかる応答時間の関数を導き，同時アクセス数やセンタの有無によりサービス時間にどのよう違いがあるか待ち行列モデルを用いて近似評価する．また端末からの機器制御手法について考え，実際に機器制御時の通信の流れを理解するためにエミュレータの試作を行う．そして今後使用されると思われる IPv6 の Mobile技術を利用したネットワーク全体の枠組を提案する．
梶川は主に現状や MobileIPv6 モデル提案のための調査と数値計算を，前野は JMeter でのサーバ応答時間の計測とエミュレータ作成を担当した．

2 家庭内機器制御システムの例
集合住宅での利用を前提としたあるシステムの家庭内機器制御モデルを図 1 に示す．端末から機器制御する場
合はセンタ装置で認証を行った後，Web 上で操作する．
2.1 機器説明
図 1 に示す機器の説明を以下に示す．各世帯間はVLAN でわける．

• センタ装置
Web サーバとデータベースを持ち，モバイル端末からのアクセスに対して認証を行い，操作命令を中継する．管理は企業側が行い，ホームサーバ経由でガスや電気などエネルギーの使用量を定期的に得るほか，異常時の通知やアプリケーションの更新，メンテナンスを行う．
• ホームサーバ：HS
Web サーバ，データベース，ルータの機能を持ち，DHCP サーバを実装．ユーザからの命令をセンタ+  ,-.

   VLAN

 

図1$#$IP  IP  %)&(* '%)&(* '"#"
! 

家庭内機器制御モデル経由で受け付け，その命令を家庭内機器に送信．さらに機器から受け取った状態通知をデータベースに書き込み，センタへの送信と機器の制御を行う．
• IP アダプタ
ネットワーク非対応の家庭内機器とシリアルポートなどで接続し，機器にインターフェイスを与え，DHCP クライアントを実装することでホームサーバとの IP 通信を可能にする．安価にするため機器自体の性能は低く，高度な処理はできない．
• 家庭内機器制御応答と故障情報を IP アダプタを通してホームサーバへ通知する．また端末より電源管理などの制御命令を受け付け，実行した後に通知する．機器動作に時間がかかるため TCP 接続時間に影響を与える．
• 携帯電話
センタ装置で認証を行った後，Web ブラウザ上で家庭内機器を操作する．また機器の状態や異常が起こった場合の通知を受け取る．
トラフィック予測
センタとホームサーバ間には，どの程度のトラフィックが流れるか予測する．1 つの集合住宅には 100 戸，1世帯あたり情報家電を 5 台所有し，利用者が頻繁に利用した状態を想定し，多めに見積って 1 台に対して毎分 12回，操作コマンドが来ると仮定すると，1 秒間にセンタとホームサーバ間のネットワークに流れる命令数は，

2.2

100 · 5 · 12= 10060(1)となる．また 1 命令の大きさは，Data 部分が約 25bytesである．TCP と IP ヘッダ，Ethernet ヘッダ部分は，合計して 58bytes 必要となる．TCP には，スリーウェイ



ハンドシェイクとコネクション切断処理にやりとりされる 7 つ以上のセッションがあり，1 つの命令を送信するのに必要なトラフィックは，7 · 58 + (83 + 58) · 2 = 688 bytes = 5504 bits

HS(2)

3 サービス時間の近似評価
センタの役割が違うモデルを 2 つ述べ，サービス時間の違いを単純な待ち行列モデルで近似評価する．
3.1 センタを利用する場合
λ は，全世帯からセンタにアクセスする制御命令の到λ着率であり，N 個の各ホームサーバに Nずつ振り分けられるものとする．µ は，センタに来た命令がホームサーバで処理を行い，その応答が返るサービス率であり，並行処理数に依存する．ホームサーバの処理はセンタに比べ十分に早く処理できると仮定し，考えないとする．長所は，センタ装置を必ず通るためユーザ認証やサービスの監視などが容易になり，管理しやすくセキュリティ的にも安全にしやすい．短所は，各ホームサーバへ振り分けられるすべての命令がセンタ装置に到着するため，センタの並行処理数が大きくなり µ は小さくなる．
N

HS(1)
HS(2)



センタ利用モデル

ホームサーバを直接利用する場合
ホームサーバを直接利用する場合は，センタでは認証などの処理があっても，機器操作時間待ちは含まないので，短時間で処理が終了する．よって，直接利用では，センタの待ち行列はないものとして，図 3 に示すように各ホームサーバが独立かつ同様に機能するモデルとする．
λ，並行処理数に依存す
各ホームサーバへの到着率は N
0るサービス率を µ とする．なお，全世帯分のサービス1
率が µ であり，ホームサーバはその Nのサービスがで0きれば十分なので µ ≤ µ とする．センタを利用する場合に比べてすべてのホームサーバを別々に管理しなくてはならないが，中央サーバを制御通信のために設置する必要性がなくなる．

3.2

HS(N)

 ’
図3

ホームサーバ直接利用モデル

サーバ応答時間の計測
並行処理数に依存する µ と µ0 の一般的なモデルがない．そこで Web サーバに負荷を与え，応答時間を測定し，実験的に決める．Web サーバに Apache2，負荷発生には Apache プロジェクトの JMeter を使用する．
サーバの CPU に負荷をかけるインクリメント演算を繰りかえす CGI スクリプトと負荷をかけない Sleepを 10 秒する CGI スクリプトのそれぞれに JMeter のス
レッド数を 1 から 100 ずつ順に増やし，同時アクセス数を変化させる．測定はそれぞれのスレッド数に対し 10回行い，10 個の平均応答時間の平均を測定値とした．
インクリメント演算をする CGI ファイルの同時アクセス時にかかる応答時間の測定結果を図 4 に示す．結果

3.3  (ms)
30000

’’95%

 ’



f(m)
’

25000

20000

15000

10000

5000

0

HS(N)

図2N(3)となる．また，東海 5 県だけでも 600 万を超える世帯があり，1 つのセンタでホームサーバを管理する時，仮に同様の条件でセンタにアクセスした場合，センタには，約 33Gbits/sec の通信量がかかり，センタ側にはそれに耐えるだけの通信帯域が必要になる．

HS(1)

N(2)となり，1 つのホームサーバ当りにかかるネットワーク上に流れる制御命令の最もかかった場合の通信量は，5504 · 100 = 550.4 kbits/sec

N0100200300

400500600700800 

図 4 インクリメント演算をする CGI ファイルの同時アクセス時にかかる応答時間から m を同時アクセス数とし，測定値を 3 次関数で近似すると同時アクセス数から処理にかかる時間 (msec) は，
f (m) = 9.0058m3 · 10−5 − 1.0206m2 · 10−1 + 5.7197m · 101(4)と得ることができる．
一方，表示のみの場合と表示に加え Sleep する場合とでは，応答時間の変化が変わらず，およそ 10 秒の Sleep分しか常に差がないため TCP 接続を保持するコネクション時間は，応答時間にあまり影響しない．
3.4 待ち行列モデル
Web サーバでは待ち行列がなく，1 つの CPU で並行処理するため f (m) を用いてサービス率を考える．また性能低下や停止を招かないように最大並行処理数を M-1とし，超えた場合はロスする．

■実行時間と認証が負荷となる場合 ポアソン到着，指数サービスと仮定すると待ち行列モデルは M/M/c/cとなる．センタを利用する場合，全世帯からセンタへの命令の到着率を λ(命令数/秒)，命令のサービス率をmµ(m)(命令数/秒) とし，状態遷移図を図 5 に示す．

10


(1)

図5

m2


(2)

m (m)
M-1(m+1) (m+1) (M-1)


(M-1)

センタ利用モデルの状態遷移図

式 (4) より同時アクセス時の処理効率が下がることが得られているので，各 Job に対するサービス率は，µ(m) =1000af (m)(5)とおける．ここで仮に機器の平均動作時間を 7 秒，認証に必要な時間を 3 秒とすると情報家電を制御するには最低 10 秒かかることになり，サービス率は，mµ(m) =57m · 1000
10000f (m)表 1 実行時間と認証が負荷の場合の平均応答時間とロス率の推移
λ0.01
0.02
0.03
0.04
0.05
0.06
0.07
0.08
0.09
0.1

LOSSM=10
8.57 · 10−127.80 · 10−9
3.93 · 10−7
5.99 · 10−6
4.65 · 10−5
2.32 · 10−4
8.32 · 10−4
2.30 · 10−3
5.14 · 10−3
9.65 · 10−3

■認証のみ負荷の場合 機器が命令を実行している時間がセンタに負荷をあたえないと仮定する．するとセンタを利用する場合におけるセンタの負荷はユーザ認証のみになり，並行処理される．そこで認証時間を 3 秒と仮定するとサービス率は，(6)となる．状態遷移図から連立方程式をたて，数値計算ソ
フトウェア Octave[4] を用いて定常状態確率分布を求め，平均応答時間やロス率を導く．その結果を表 1 に示す．

W
M=10M=1000
11.1
11.1
12.5
12.5
14.2
14.2
16.6
16.6
19.7
19.9
23.9
24.7
29.2
32.6
35.6
47.2
42.5
81.5
49.3
191.1

たり 1 世帯 1 つ送ることも考えられるため λ は 0.28 を越え，平均応答時間も増えてしまうことがわかる．
ホームサーバ直接利用モデルの場合，ホームサーバへ
λ，命令のサービス率を mµ0 (m) との命令の到着率を N
λすると，状態遷移図は図 5 の λ が Nに変わるだけの同じ待ち行列モデルとなる．ホームサーバ直接利用モデルの平均応答時間の計算結果は，µ = µ0 ならばセンタを利λ用するモデルの λ を Nにしたグラフと同じになる．そのためすべてのホームサーバに来る全体の λ は横軸の N倍と同じになる．ここで N は，センタが管理するホームサーバの数なのでセンタが 10 個のホームサーバを管理すると，1 時間あたり 1 世帯 1 つ送る場合の λ = 0.28の平均応答時間は，13.8 となり，センタを利用する場合に比べ良い値となる．

M=10000000000
2.70 · 10−305
2.07 · 10−254
3.40 · 10−209

表 1 より M=1000 に比べ，M=10 の方が平均応答時間が短くなり，ロス率があがることがわかる．しかし実際のピーク時に多くの人が同時にアクセスする状態では，ロスが増えると考えられる．通常 10 秒かかる命令であるため，長くても 20 秒で終わる必要がある．そのため表 1 より λ = 0.05 までしか命令を受け付けることができない．λ は，1 秒あたりに到着する率であるため，1 世帯 1 秒あたりに送信する命令数とホームサーバが受け持つ世帯数，さらにセンタが受け持つホームサーバ数の 3 つの積となる．よって 1 つのホームサーバが 100 世
帯管理し，そのホームサーバを 10 個管理するセンタの場合，λ が 0.05 の時は，1 世帯 1 時間あたりに 0.18 命令受け付ける場合となる．実際のピーク時は，1 時間あmµ(m) =57m · 1000
3000f (m)(7)となる．同様の状態遷移図から数値計算する．結果を表2 に示す．また実際の応答時間には 7 秒間機器が命令を実行している時間があるため，表 2 の平均応答時間に 7秒足した値が実際の平均応答時間となる．
表2認証のみ負荷の場合の平均応答時間とロス率の推移

λ0.01
0.10
0.20
0.22
0.24
0.26
0.28
0.30
0.32
0.34

M=10
3.09
4.28
7.18
8.10
9.15
10.2
11.5
12.7
13.9
15.1

W
M=1000
3.09
4.28
7.43
8.69
10.4
13.0
17.1
24.4
39.0
70.5

LOSS
M=10M=1000
1.81 · 10−1601.31 · 10−60
7.72 · 10−40−3
1.72 · 100
3.46 · 10−30
6.37 · 10−3
9.95 · 10−316
1.08 · 10−2
1.13 · 10−283
1.71 · 10−2
6.90 · 10−254
2.54 · 10−2
3.97 · 10−226
3.58 · 10−2
2.94 · 10−200

センタが 100 世帯管理するホームサーバを 10 個管理する場合，1 世帯が 1 時間あたり 1 世帯 1 つの命令を送る場合の到着率λ=0.28 とすると応答時間は 24.1 となるため 20 秒より大きな値となってしまう．
これらから利用者が増える将来は，センタの数を増やしてセンタが管理するホームサーバの数を減らすか，またはセンタを経由しないモデルを考える必要性がある．

4 機器操作エミュレータの試作
通信の流れを理解するためにホームサーバ，IP アダ
プタ，家庭内機器のエミュレータプログラムを作成し実行した．エミュレータは図 6 のように作成し，Kenchikiの電源を ON にするエミュレーションを実行する．
ユーザはホームサーバにアクセスするとホームサー 1

 2



Web(Apache)IPCGI    
 (PostgreSQL)

図6  

機器操作エミュレータの全体像

バはユーザの管理する部屋番号を調べ，部屋の機器の種類，状態を Web ページに表示する．ユーザは命令を選択し送信ボタンをクリックする．するとホームサーバがデータベースから機器の IP と PORT を調べ，機器に命令を送信する．命令を受けた機器は命令実行後に状態が

図7

命令後の機器制御画面と検知器エミュレータ変わったことをホームサーバに通知する．ホームサーバ
はデータベースを書き換え通信を終える．
データベースへのアクセスが多いことから今後データベースの負荷がボトルネックになる可能性がある．また同時に複数のユーザが Web にアクセスし，同時に同じ部屋の同じ機器を制御する場合があるので，排他制御の必要がある．

5 提案モデル今後 IPv6 ネットワークとなり機器や携帯端末の性能が向上した時により快適に利用できると思われる
MobileIPv6 を利用したモデルを提案する．






IPsec

HSHA  

図 8 Mobile IPv6 利用モデル

携帯端末は家庭内のグローバル IPv6 アドレスまたは必要に応じてサイトローカルアドレスをホームアドレスとして登録する．機器に命令を送信する時はホームサー
バと IPsec でトンネリングをすることであたかも携帯端末が住宅内ネットワークにいるように見せることができローカルアドレスで通信することができる．
このモデルを利用することでホームサーバが Web を公開する必要がなくなりさらに IPsec を使用するため安全な通信をすることができる．しかし IPsec 暗号化トンネリング処理などの高度な機能の負荷がかかり，携帯端末に高い性能が必要となる．そのため現在の環境で実現することは難しい．

6 おわりに
本研究では，現在使用されている情報家電制御モデルを調べ，機器制御命令を送るのにセンタを利用するモデルがよく使われていることがわかった．そこでセンタを利用するモデルとセンタ装置では認証のみを行うホームサーバを直接利用するモデルを比較した．
センタを利用するモデルはすべての命令がセンタに集中するため管理がしやすく，安全なモデルにしやすいが，サービスが大規模になった場合に並行処理数が増え，センタの処理が低下するためボトルネックになる．そのため応答時間が長くなりサービスが安定しない．ホームサーバを直接利用するモデルはホームサーバを別々に管理する必要があるが，命令が集中しないため安定したサービスを提供することができる．そのため将来サービスが大規模になった場合，制御命令を送る時にホームサーバを直接利用するモデルを採用する必要がある．
また今後 IPv6 携帯端末が一般に使われるになった場合に有効と思われる MobileIPv6 を使用したモデルを提案した．このモデルは，Web 操作をしながらネットワークを移動した場合も TCP 接続が切れず，また IPsec 通信のため安全で，どのアプリケーションにも対応できる．
そのため Web カメラなどの映像を家庭内ネットワークから流す場合も直接モバイル機器に安全な通信ができると考えられる．しかしこのモデルは，暗号化トンネリン
グ処理など大きな負荷がかかることは明らかである．今後はこのモデルの性能評価が必要になると考える．

参考文献[1] 東京ガス：ホッとねっとサービス,
http://www.tokyo-gas.co.jp/Press/20031110.html (参照 2005.8).
[2] 東芝：FEMINITY,
http://feminity.toshiba.co.jp/feminity/index_j.html (参照 2005.12).
[3] JMeter：http://jakarta.apache.org/jmeter/index.html (参照 2005.12).
[4] Octave：http://www.octave.org/index.html(参照 2005.10).