HTTP/TCP/IP通信におけるリアルタイム性を阻害する要因

北九州市立大学 大迫 貴(*1),山崎 進(*2),中武 繁寿(*2),藤本 悠介(*2),永原 正章(*3)

*1 北九州市立大学 国際環境工学部 情報メディア工学科
*2 北九州市立大学 国際環境工学部
*3 北九州市立大学 環境技術研究所  

1. はじめに

HTTP/TCP/IPによるプロトコルスタックでのネットワーク通信は,ベストエフォート方針で設計されている。ベストエフォートが前提であるため,所定時間内にパケットが確実に到達することを保証できない。一方,機器制御等の組込みシステム用途ではリアルタイム性を要求される。このことから、ネットワーク通信のリアルタイム性を保証できない以上,リモートでネットワーク超しに機器制御を行うことは、現実的には困難であることになる。

本発表の目的は,リモートでネットワーク越しに機器制御を行うケースで,HTTP通信でもある程度リアルタイム性を担保したいと考えたときに,どのような技術的課題が存在するかをサーベイすることである。本発表を叩き台として議論したい。

2. リアルタイム性を阻害する3大要因

ネットワーク通信のリアルタイム性を阻害する要因は基本的に次の3つだと認識している。

  1. パケットロスによる再送
  2. ビット誤りによる再送
  3. 中継の遅延

3. プロトコルスタックの各階層

OSI参照モデルとHTTP/TCP/IPを中心とした各プロトコルの対応関係を図1[1]に示す。

レベル プロトコル 概要
5, 6, 7 アプリケーション層 TELNET, SSH, HTTP, SMTP, POP, SSL/TLS, FTP, MIME, HTML, SNMP, MIB, SIP, RTPなど アプリケーション特有の通信処理を行う
4 トランスポート層 TDP, UDP, UDP-Lite, SCTP, DCCPなど 宛先のアプリケーションにデータを確実に届ける
3 ネットワーク層 ARP, IP(v4/v6), ICMP, IPsecなど 宛先までデータを届ける
2 データリンク層 イーサネット, 無線LAN, PPPなど 物理層で直接接続されたノード間での通信を可能にする
1 物理層 ツイストペアケーブル, 無線, 光ファイバーなど 信号と物理的尺度を相互変換する

図1 OSI参照モデルと各プロトコルの対応関係

以下,各階層について,リアルタイム性を損ねる要因を列挙する。

3.1 物理層

物理層におけるリアルタイム性を損ねる要因は,次の通りだと認識している。

3.2 データリンク層

データリンク層におけるリアルタイム性を損ねる要因は,次の通りだと認識している。

3.3 ネットワーク層

ネットワーク層におけるリアルタイム性を損ねる要因は,次の通りだと認識している。

3.4 トランスポート層

トランスポート層におけるリアルタイム性を損ねる要因は,次の通りだと認識している。

3.5 アプリケーション層

アプリケーション層におけるリアルタイム性を損ねる要因は,次の通りだと認識している。

3. ルーター/PC等による遅延

他にはルーター/PC等による通信・中継でも遅延は生じる。これらに搭載されているOSやミドルウェアのリアルタイム性の不足・欠如によってもリアルタイム性を損ねてしまう。これによってパケットロスや中継の遅延が生じる。

4. パケットロスについて

パケットロスについて解析している研究は,大別して次の3つのアプローチのいずれかまたは複数を用いている。

今回の目的では,数理モデルを求めたいと考えている。

Bhadraらのサーベイ[2]が,合計24編のパケットロスに関して詳細に解析した有用な文献をまとめて,パケットロスに影響を与えるパラメータを列挙している。

Bhadraらのサーベイはとても有用ではあるが,複数のプロトコルスタックの階層にわたって言える結論と,特定のプロトコルに特化した結論を,同列に扱っているため,今回の目的に即した数理モデルを策定するのには情報が欠如している。そこで,Bhadraらのサーベイを元にして,プロトコルスタックの階層や各プロトコルごとに整理しなおして,数理モデルを策定する必要がある。

また,最終的にはリアルタイム性に与える影響を分析したいことから,パケットロスと遅延の関係性についても数理モデルを策定したい。

5. ビット誤りと中継の遅延について

ビット誤りと中継の遅延については,まだ有力なサーベイ論文を見出していない。もし存在しないようであれば,体系的なサーベイを敢行する必要がある。

6. 今度の方向性

我々は今後,制御理論に基づいて,ネットワーク経路等を制御・最適化する研究を推し進めようと考えている。方向性としては,Hespanhaらのサーベイ研究[3]が近い。実際の遅延の各要因について設定した数理モデルを制約条件として,制御モデルを構築することを考えている。

また,制御理論の観点では,パケットロスよりも遅延の方がよりクリティカルである。パケットロスしてしまった時に,パケットを再送するよりも,パケットがロスした事実を通知して,前後関係から推論・近似復元するというアプローチを取った方が良いかもしれない。そうするとTCPを前提とせずにプロトコルスタックを構築した方が良い可能性もある。我々は今後,この点についても考察を深める。

謝辞

本研究の一部は,JST未来社会創造事業 JPMJMI17B4 の支援を受けた。

研究遂行にあたり多くの助言をいただいた北九州工業高等専門学校の滝本 隆先生,北九州市立大学の古閑 宏幸先生,佐藤 敬先生に感謝する。

参考文献