背景
室内環境でmanetによる監視カメラを構築する
映像はメッシュネットワーク上で一定のフレームで転送される
問題
特定の端末に複数フローが集中したときに,
輻輳のために転送が出来なくなる問題がある.
また,アプリケーション側では輻輳が起こっていると判断
出来ないため,輻輳発生前と同じ転送レートで転送をし続けてしまう.
手法
中継端末は自身の負荷を監視し,送信元に報告する.
方法としては,一定間隔でHelloパケットに現在の負荷状況を
埋め込む方法と,一定以上の負荷が集中した際に報告する方法の
二つがある.前者の場合,一定間隔で全ての端末に対して
中継端末の負荷状況がわかるため,新規フロー作成時の
経路作成が容易に可能である.後者の場合は,
負荷集中が発生する以前に送信元に対して伝えることが出来ないが
新規フローが頻繁に発生しないような環境では使えるかもしれない.
また経路作成時に,既存の転送レートのままでは輻輳が発生する場合,
新規フロー作成端末は,現在流れているフローの送信元に対して
転送量削減の指令を出すことで,アプリケーション側での転送容量削減を測る.
見込
実装はアプリケーション側とルーティング側で行う
・負荷状況を監視し,helloパケットに埋め込む部分
・負荷状況を考慮してルーティング経路を決定する部分
・アプリケーションにデータ容量を下げさせるように命令する部分
・アプリケーションでレートを下げる部分
状態遷移図
新規フロー作成端末側:処理の流れ
余裕がある→通常通信へ戻る
↑
通常通信→(新規フロー発生)→<負荷計測>→余裕がない(集中状態)
↓
転送量削減←送信元ノードにReply
考慮すべき点
・負荷の計測
・送信元ノードへの連絡方法
・転送容量削減アルゴリズム
・負荷の計測
本システムでは動画Flowは一定間隔,一定期間で流れ続けるモデルのため
送信パケットごとに負荷分散を行う必要性は低い.
通常の負荷計測方法としては,RTTとパケットロス率を用いた
送信側でのトラフィック推定手法が多い(情報処理学会論文集2006Julyより)
他の負荷分散手法について調査
参考文献"マルチホップ無線LANにおける動的なトラヒック制御"
P36 過去の送信量と現在の送信量を基に使用帯域を推定するTSW(Time Sliding Window)
アルゴリズムというものがある.
D.D. Clark and W. Fang : “Explicit Allocation of Best-effort Packet Delivery Service,”
IEEE/ACM Transactions on Networking, vol.6, no.4, August. 1998.(古いナー)
一般的な負荷分散の話でそんなに役に立たない.
・送信元ノードへの連絡方法
映像データはUDPで転送されるが,ReplyパケットはTCPが好ましい.
負荷が集中している場合に迅速にTCPパケットが送信できるのか.
送信を開始する前なのでReplyパケットの遅延はさほど問題ない?
・転送容量削減アルゴリズム
アプリケーション側で容量削減(単純に送信データ総量を削減)するが
どの程度削減するべきか,スループットとの兼ね合いを考慮して
画像サイズ,フレーム数,転送間隔を何msにするか などを決定.