IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 三菱重工業株式会社の特許一覧

特許7390879通信処理装置、通信処理方法およびプログラム、並びにネットワーク層のヘッダ部のデータ構造
<>
  • 特許-通信処理装置、通信処理方法およびプログラム、並びにネットワーク層のヘッダ部のデータ構造 図1
  • 特許-通信処理装置、通信処理方法およびプログラム、並びにネットワーク層のヘッダ部のデータ構造 図2
  • 特許-通信処理装置、通信処理方法およびプログラム、並びにネットワーク層のヘッダ部のデータ構造 図3
  • 特許-通信処理装置、通信処理方法およびプログラム、並びにネットワーク層のヘッダ部のデータ構造 図4
  • 特許-通信処理装置、通信処理方法およびプログラム、並びにネットワーク層のヘッダ部のデータ構造 図5
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-11-24
(45)【発行日】2023-12-04
(54)【発明の名称】通信処理装置、通信処理方法およびプログラム、並びにネットワーク層のヘッダ部のデータ構造
(51)【国際特許分類】
   H04L 69/00 20220101AFI20231127BHJP
   H04L 69/325 20220101ALI20231127BHJP
【FI】
H04L69/00
H04L69/325
【請求項の数】 7
(21)【出願番号】P 2019220315
(22)【出願日】2019-12-05
(65)【公開番号】P2021090163
(43)【公開日】2021-06-10
【審査請求日】2022-11-11
(73)【特許権者】
【識別番号】000006208
【氏名又は名称】三菱重工業株式会社
(74)【代理人】
【識別番号】110000785
【氏名又は名称】SSIP弁理士法人
(72)【発明者】
【氏名】江本 英晃
【審査官】和平 悠希
(56)【参考文献】
【文献】特開2015-109679(JP,A)
【文献】国際公開第2017/003248(WO,A1)
【文献】特開2018-023155(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 12/00-12/66
H04L 41/00-101/695
(57)【特許請求の範囲】
【請求項1】
プラントに設置されたフィールド機器と該フィールド機器を監視するための制御装置との制御ネットワークを介した通信を処理するための通信処理装置であって、
前記制御ネットワークから受信された通信フレームの物理層を処理する物理層処理部と、
前記物理層処理部による処理によって前記通信フレームから取り出されたデータリンク層を処理するデータリンク層処理部と、
前記データリンク層処理部の処理によって得られる制御フレームであるネットワーク層を処理するよう構成される処理部と、
を備え、
前記ネットワーク層のヘッダ部は、該ヘッダ部が標準的に有する標準ヘッダ部に定義されたヘッダ情報とは異なるヘッダ情報を定義するための拡張ヘッダ部を有するか否か示す拡張ヘッダ有無情報を含み、
前記処理部は、
前記標準ヘッダ部を処理する第1処理部と、
前記ヘッダ部が1以上の前記拡張ヘッダ部を有する場合に、前記ヘッダ部が有する前記1以上の拡張ヘッダ部の処理を個別に実行する第2処理部と、
i番目(iは1以上の整数)の前記拡張ヘッダ部に含まれる前記拡張ヘッダ有無情報に基づいて、i+1番目の前記拡張ヘッダ部の有無を判定する判定部と、を有する通信処理装置。
【請求項2】
1番目の前記拡張ヘッダ部は前記標準ヘッダ部の直後に配置され、
前記i+1番目の前記拡張ヘッダ部は、前記i番目の前記拡張ヘッダ部の直後に配置される請求項1に記載の通信処理装置。
【請求項3】
前記拡張ヘッダ部は固定長である請求項1または2に記載の通信処理装置。
【請求項4】
前記拡張ヘッダ部における前記拡張ヘッダ有無情報の領域のサイズは1ビットである請求項1~3のいずれか1項に記載の通信処理装置。
【請求項5】
前記拡張ヘッダ部は、種別情報を含み、
前記第2処理部は、前記拡張ヘッダ部から抽出した前記種別情報に応じた処理を実行する請求項1~4のいずれか1項に記載の通信処理装置。
【請求項6】
プラントに設置されたフィールド機器と該フィールド機器を監視するための制御装置との制御ネットワークを介した通信を処理するための通信処理方法であって、
前記制御ネットワークから受信された通信フレームの物理層を処理する物理層処理ステップと、
前記物理層処理ステップにおける処理によって前記通信フレームから取り出されたデータリンク層を処理するデータリンク層処理ステップと、
前記データリンク層処理ステップの処理によって得られる制御フレームであるネットワーク層を処理する処理ステップと、
を備え、
前記ネットワーク層のヘッダ部は、該ヘッダ部が標準的に有する標準ヘッダ部に定義されたヘッダ情報とは異なるヘッダ情報を定義するための拡張ヘッダ部を有するか否か示す拡張ヘッダ有無情報を含み、
前記処理ステップは、
前記標準ヘッダ部を処理するステップと、
前記ヘッダ部が1以上の前記拡張ヘッダ部を有する場合に、前記ヘッダ部が有する前記1以上の拡張ヘッダ部の処理を個別に実行するステップと、
i番目(iは1以上の整数)の前記拡張ヘッダ部に含まれる前記拡張ヘッダ有無情報に基づいて、i+1番目の前記拡張ヘッダ部の有無を判定する判定ステップと、を有する通信処理方法。
【請求項7】
プラントに設置されたフィールド機器と該フィールド機器を監視するための制御装置との制御ネットワークを介した通信の処理に用いられて、
前記制御ネットワークから受信された通信フレームの物理層を処理する物理層処理部と、
前記物理層処理部による処理によって前記通信フレームから取り出されたデータリンク層を処理するデータリンク層処理部と、
前記データリンク層処理部の処理によって得られる制御フレームであるネットワーク層を処理するよう構成される処理部と、
を実現させるためのプログラムであって、
前記ネットワーク層のヘッダ部は、該ヘッダ部が標準的に有する標準ヘッダ部に定義されたヘッダ情報とは異なるヘッダ情報を定義するための拡張ヘッダ部を有するか否か示す拡張ヘッダ有無情報を含み、
コンピュータに、
前記標準ヘッダ部を処理する第1処理部と、
前記ヘッダ部が1以上の前記拡張ヘッダ部を有する場合に、前記ヘッダ部が有する前記1以上の拡張ヘッダ部の処理を個別に実行する第2処理部と、
i番目(iは1以上の整数)の前記拡張ヘッダ部に含まれる前記拡張ヘッダ有無情報に基づいて、i+1番目の前記拡張ヘッダ部の有無を判定する判定部と、を有する前記処理部を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、伝送路から受信した通信フレームに格納されているOSI参照モデルのネットワーク層の処理技術に関する。
【背景技術】
【0002】
石油、ガス、電力、製造などのインフラストラクチャを支える産業用制御システム(ICS)の制御装置(例えばDCSなど)は、制御ネットワークを介してプラントに設置された複数のフィールド機器に接続し、これらの制御や監視を行う(特許文献1~2参照)。例えば制御装置は、プラントの操作および監視を行うための操作端末などから受信した命令に応じた指令を、制御ネットワークを介して宛先となるフィールド機器に通信することで、制御装置とフィールド機器との間の通信を行う。すなわち、制御装置から特定のフィールド機器宛ての上記の指令(通信情報)の通信など、制御ネットワークを介した通信は、そのペイロード部に通信情報が載せられ制御フレームが、制御フレームのヘッダ部に格納されている通信の宛先アドレスの情報などに基づいてルーティングされることで行われる。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2011-221846号公報
【文献】特開2012-226680号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
近年、このような産業用制御システムがインターネットなどの外部ネットワークに接続されるようになってきている。このため、そのセキュリティ対策の重要性が増しており、システムの可用性や完全性の要求事項が国際的な規格により随時強化されていく状況にある。具体的には、例えば制御フレームのヘッダ部に、セキュリティ対策の強化のための新たなヘッダ情報が追加されることで、ヘッダ部の機能が拡張される場合がある。しかし、ヘッダ部の機能の拡張が生じる度にヘッダ部の構造をも変更するのでは、その対応に要する負担が多大である。
【0005】
上述の事情に鑑みて、本発明の少なくとも一実施形態は、ネットワーク層のプロトコルの機能拡張に柔軟に対応可能な通信処理装置を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の少なくとも一実施形態に係る通信処理装置は、
伝送路から受信された通信フレームのネットワーク層を処理するよう構成される処理部を備え、
前記ネットワーク層のヘッダ部は、該ヘッダ部が標準的に有する標準ヘッダ部に定義されたヘッダ情報とは異なるヘッダ情報を定義するための拡張ヘッダ部を有するか否か示す拡張ヘッダ有無情報を含み、
前記処理部は、
前記標準ヘッダ部を処理する第1処理部と、
前記ヘッダ部が1以上の前記拡張ヘッダ部を有する場合に、前記ヘッダ部が有する前記1以上の拡張ヘッダ部の処理を個別に実行する第2処理部と、
i番目(iは1以上の整数)の前記拡張ヘッダ部に含まれる前記拡張ヘッダ有無情報に基づいて、i+1番目の前記拡張ヘッダ部の有無を判定する判定部と、を有する。
【0007】
本発明の少なくとも一実施形態に係る通信処理方法は、
伝送路から受信された通信フレームのネットワーク層を処理する処理ステップを備え、
前記ネットワーク層のヘッダ部は、該ヘッダ部が標準的に有する標準ヘッダ部に定義されたヘッダ情報とは異なるヘッダ情報を定義するための拡張ヘッダ部を有するか否か示す拡張ヘッダ有無情報を含み、
前記処理ステップは、
前記標準ヘッダ部を処理するステップと、
前記ヘッダ部が1以上の前記拡張ヘッダ部を有する場合に、前記ヘッダ部が有する前記1以上の拡張ヘッダ部の処理を個別に実行するステップと、
i番目(iは1以上の整数)の前記拡張ヘッダ部に含まれる前記拡張ヘッダ有無情報に基づいて、i+1番目の前記拡張ヘッダ部の有無を判定する判定ステップと、を有する。
【0008】
本発明の少なくとも一実施形態に係る通信処理プログラムは、
伝送路から受信された通信フレームのネットワーク層を処理するよう構成される処理部を実現させるためのプログラムであって、
前記ネットワーク層のヘッダ部は、該ヘッダ部が標準的に有する標準ヘッダ部に定義されたヘッダ情報とは異なるヘッダ情報を定義するための拡張ヘッダ部を有するか否か示す拡張ヘッダ有無情報を含み、
コンピュータに、
前記標準ヘッダ部を処理する第1処理部と、
前記ヘッダ部が1以上の前記拡張ヘッダ部を有する場合に、前記ヘッダ部が有する前記1以上の拡張ヘッダ部の処理を個別に実行する第2処理部と、
i番目(iは1以上の整数)の前記拡張ヘッダ部に含まれる前記拡張ヘッダ有無情報に基づいて、i+1番目の前記拡張ヘッダ部の有無を判定する判定部と、を有する前記処理部を実現させるためのプログラムである。
【0009】
本発明の少なくとも一実施形態に係るネットワーク層のフレームのデータ構造は、
ヘッダ部とペイロード部とを有するネットワーク層のフレームのデータ構造であって、
前記ヘッダ部は、
前記ヘッダ部が標準的に有する標準ヘッダ部と、
前記標準ヘッダ部に定義されたヘッダ情報とは異なるヘッダ情報を定義するための少なくとも1つの拡張ヘッダ部と、を有し、
i番目(iは1以上の整数)の前記拡張ヘッダ部は、i+1番目の前記拡張ヘッダ部の有無を示す拡張ヘッダ有無情報を含む。
【発明の効果】
【0010】
本発明の少なくとも一実施形態によれば、ネットワーク層のプロトコルの機能拡張に柔軟に対応可能な通信処理装置が提供される。
【図面の簡単な説明】
【0011】
図1】本発明の一実施形態に係る制御システムの構成を概略的に示す図である。
図2】本発明の一実施形態に係る制御フレームの構造を概略的に示す図である。
図3】本発明の一実施形態に係る通信処理装置の構成を概略的に示す図である。
図4】本発明の一実施形態に係る通信処理方法を示す図である。
図5】本発明の一実施形態に係る通信処理装置の構成を概略的に示す図であり、通信処理装置は振分部に接続される。
【発明を実施するための形態】
【0012】
以下、添付図面を参照して本発明の幾つかの実施形態について説明する。ただし、実施形態として記載されている又は図面に示されている構成部品の寸法、材質、形状、その相対的配置等は、本発明の範囲をこれに限定する趣旨ではなく、単なる説明例にすぎない。
例えば、「ある方向に」、「ある方向に沿って」、「平行」、「直交」、「中心」、「同心」或いは「同軸」等の相対的或いは絶対的な配置を表す表現は、厳密にそのような配置を表すのみならず、公差、若しくは、同じ機能が得られる程度の角度や距離をもって相対的に変位している状態も表すものとする。
例えば、「同一」、「等しい」及び「均質」等の物事が等しい状態であることを表す表現は、厳密に等しい状態を表すのみならず、公差、若しくは、同じ機能が得られる程度の差が存在している状態も表すものとする。
例えば、四角形状や円筒形状等の形状を表す表現は、幾何学的に厳密な意味での四角形状や円筒形状等の形状を表すのみならず、同じ効果が得られる範囲で、凹凸部や面取り部等を含む形状も表すものとする。
一方、一の構成要素を「備える」、「具える」、「具備する」、「含む」、又は、「有する」という表現は、他の構成要素の存在を除外する排他的な表現ではない。
【0013】
図1は本発明の一実施形態に係る制御システム8の構成を概略的に示す図である。また、図2は、本発明の一実施形態に係る制御フレームFの構造を概略的に示す図である。
【0014】
図1に示すように、制御システム8は、例えばプラントに設置されたフィールド機器91と、このフィールド機器91の制御および監視を実行するよう構成された制御装置93と、これらフィールド機器91と制御装置93とを通信可能に接続する制御ネットワーク81と、を備える。フィールド機器91は、例えば温度、流量、圧力などを計測する各種の計測器(センサ)や、ダンパや調節弁(バルブ)といった操作端などであり、通常、プラントには複数のフィールド機器91が設置されている。また、制御装置93は、プラントの自動制御および現場との入出力処理を実行する例えばDCS(Distributed Control System)などの装置である。
【0015】
図1に示す制御システム8は、電力、ガス、水道などの社会インフラや、発電プラント、化学プラントなどのプラントの監視および制御のための産業用制御システム(ICS:Industrial Control Systems)である。この制御システム8において上記の制御装置93は、例えばプラントの操作および監視を行うヒューマンマシンインタフェース(HMI)となるオペレータステーション(OPS94)や、プラントデータの大容量保存・管理を行うACS95(Accessory Station)など、プラント等の制御や監視、管理を行うための各種のコンピュータ装置が接続される制御情報ネットワーク82にも接続されている。この制御情報ネットワーク82は、例えばイーサネット(登録商標)などで構築され、ファイアウォール装置96などを介して、情報システムを構成するオフィス内のLAN(Local Area Network)や、インターネットなどの情報系ネットワーク83に接続される。
【0016】
図1に示す実施形態では、複数のフィールド機器91は、IOモジュール(IOM)などの入出力装置92を介して制御ネットワーク81に接続されている。この入出力装置92は、少なくとも1台のフィールド機器91を制御ネットワーク81に接続することが可能な装置である。そして、制御装置93と各フィールド機器91との間の通信は、制御ネットワーク81および入出力装置92を介して行われるようになっている。具体的には、制御装置93から各フィールド機器91への指令(通信情報U)などの通信は、入出力装置92を制御ネットワーク81上の宛先として行われる。そして、入出力装置92が受信した指令に応じた制御信号を指令先のフィールド機器91のアクチュエータに出力することで、指令が実行される。逆に、フィールド機器91が有する例えばセンサ値(通信情報U)などを制御装置93へ送るための通信は、通信情報Uを取得した入出力装置92が制御装置93を制御ネットワーク81上の宛先として行われる。
【0017】
より詳細には、例えば制御装置93と入出力装置92との間の制御ネットワーク81を介した通信は、ネットワーク層の機能を有する制御フレームF(図2)により行われる。この制御フレームFは、図2に示すように、ヘッダ部Hと、ペイロード部Pとを有する。なお、制御フレームFは、図2に示すように、ペイロード部Pの直後に配置されるトレイラ部Trを有しても良い。
【0018】
このヘッダ部Hは、送信元装置(例えば制御装置93/入出力装置92)から宛先装置(入出力装置92/制御装置93)までルーティングするのに必要となる制御フレームFの宛先アドレスArや送信元アドレスAsなどのヘッダ情報が格納される領域である。ペイロード部Pは、通信相手に通信したい通信情報U(アプリケーションデータ)を格納する領域である。そして、送信元装置は、制御フレームFに通信情報Uを搭載した後、データリンク層のフレームでカプセル化した通信フレームD(送信データの1単位)を、制御ネットワーク81に送信する。宛先装置は、制御ネットワーク81から受信した自装置宛ての通信フレームDを処理することで、制御フレームFを取得する。図1に示す実施形態では、制御ネットワーク81は、イーサネット(登録商標)で構築されており、制御フレームFは、MACフレームに搭載されて制御ネットワーク81を転送されるようになっている。
【0019】
ただし、本実施形態に本発明は限定されない。他の幾つかの実施形態では、制御フレームFを運ぶ下位レイヤ(第2層以下)は、任意のプロトコルで良い。その他、図1には、2台の入出力装置92(IOモジュール)が示されているが、入出力装置92の数は任意であり、プラントの規模に応じるなどした適切な数となる。また、入出力装置92はIOモジュールであるが、少なくとも1台は、制御装置であるPLC(Programable Logic Controller)であっても良い。PLCも1以上のフィールド機器91が接続可能である。
【0020】
ここで、上述したネットワーク層の制御フレームFのヘッダ部Hに新たなヘッダ情報を追加するなど、制御フレームF(ヘッダ部H)の構造(フォーマット)を変更する必要性が生じる場合がある。例えば、新たなヘッダ情報として、それまでのヘッダ部Hにはなかったシーケンス番号などを追加し、拡張機能を行う場合がある。このようなヘッダ部Hの構造の設計変更は容易ではなく、変更の必要性が生じる度にヘッダ部Hの構造を設計変更するのでは対応負担が多大である。
【0021】
そこで、制御フレームFのヘッダ部Hの構造を、例えば送信元アドレスAsや宛先アドレスArなどのネットワーク層の機能を実現する上で必須となるヘッダ情報が定義される標準ヘッダ部Hsと、拡張機能(付加機能)を実行するために必要となるヘッダ情報を定義するための拡張ヘッダ部Heとに分け、拡張機能の数だけ拡張ヘッダ部Heを増やすことで、拡張機能が実行されるような構造にした。
この制御フレームFのヘッダ部Hの構造について説明する。
【0022】
(制御フレームFのヘッダ部Hの構造)
詳述すると、制御フレームFのヘッダ部Hは、1つの標準ヘッダ部Hs(図2のL3)と、N個(N≧0)の拡張機能に応じたN個の拡張ヘッダ部He(図2のL3.5)を有することが可能に構成される(図2参照)。Nの上限値が定められていても良い。このNの上限値は、例えば、制御フレームFにおけるヘッダ部Hを固定長とし、この固定長のヘッダ部Hにおける標準ヘッダ部Hsを除いた残りの領域に格納可能な拡張ヘッダ部Heの数としても良い。これによって、固定長のヘッダ部Hに格納可能な最大数の拡張ヘッダ部Heを設けることが可能となる。
【0023】
そして、各拡張ヘッダ部Heは、その拡張ヘッダ部Heの他に処理すべき他の拡張ヘッダ部Heがヘッダ部Hに存在するか否かを示す拡張ヘッダ有無情報Eを定義するための領域(プロトコルフィールド。以下同様)を含む。このため、ヘッダ部Hにおける存在が認識された拡張ヘッダ部Heの拡張ヘッダ有無情報Eを参照することで、他の拡張ヘッダ部Heがさらに存在するか否かの判定が可能となる。要するに、各拡張ヘッダ部Heによって、複数の拡張ヘッダ部Heがチェーン繋ぎされるので、拡張ヘッダ有無情報Eを辿ることで、ヘッダ部Hに含まれる全ての拡張ヘッダ部Heの処理が可能となる。
【0024】
よって、複数の通信処理装置がネットワークを介して通信する通信情報を運ぶネットワーク層のヘッダ部H(例えば、上記の制御フレームFのヘッダ部H)は、1以上の拡張ヘッダ部Heを有する場合には、ヘッダ部Hが標準的に有する標準ヘッダ部Hsと、この標準ヘッダ部Hsに定義されたヘッダ情報とは異なるヘッダ情報を定義するための少なくとも1つの拡張ヘッダ部Heと、を有する。そして、ヘッダ部Hが有する拡張ヘッダ部Heの処理順序をi(iは1以上の整数)で示した場合、i番目の拡張ヘッダ部Heは、i+1番目の拡張ヘッダ部Heの有無を示す拡張ヘッダ有無情報Eを含む。
【0025】
例えば図2には、制御フレームFが、複数(合計でN個)の拡張ヘッダ部Heを有している場合を示しているが、1番目の拡張ヘッダ部Heは前記標準ヘッダ部の直後に配置されるようになっている。つまり、1番目の拡張ヘッダ部Heは一定のサイズを有する標準ヘッダ部Hsを構成する最後のビット情報が格納されたビット位置の次のビット位置から格納されるようになっている。また、2番目の拡張ヘッダ部Heは、1番目の拡張ヘッダ部Heの直後に配置されるようになっている。このように、i+1番目の拡張ヘッダ部Heは、i番目の拡張ヘッダ部Heの直後に配置されるようになっており、各拡張ヘッダ部Heの先頭の判別の容易化や、拡張ヘッダ部の管理の簡易化を図っている。
【0026】
図2に示す実施形態では、拡張ヘッダ部Heは固定長(例えば4バイトなど)であり、上述した拡張ヘッダ有無情報Eの情報を格納する領域と、拡張機能の内容を示す種別情報Tを格納する領域と、種別情報Tに対応した値(制御値)を格納する領域と、を有している。拡張ヘッダ有無情報Eは、拡張ヘッダ部Heの先頭に設けられている。各領域のサイズは固定長である。例えば拡張ヘッダ部Heでシーケンス番号を追加する場合には、種別情報Tによって制御値がシーケンス番号の値であることを示す。
【0027】
また、拡張ヘッダ部Heにおける上記の拡張ヘッダ有無情報Eの領域のサイズは1ビットである。そして、例えば、i番目の拡張ヘッダ部Heの拡張ヘッダ有無情報Eの値が1である場合にはi+1番目の拡張ヘッダ部Heがさらに存在していることを示し、その値が0である場合にはi+1番目の拡張ヘッダ部Heが存在していないことを示すようになっている。なお、拡張ヘッダ有無情報Eの値が1の場合に次の拡張ヘッダ部Heが存在せず、その値が0の場合には次の拡張ヘッダ部Heが存在していることを示すようにしても良い。これによって、拡張ヘッダ部Heのサイズの最小化を図っている。
【0028】
一方、上記の標準ヘッダ部Hsも固定長であっても良く、標準ヘッダ部Hsにおける予め定められた領域に、各種のヘッダ情報をそれぞれ格納する領域が定義される。図2に示す実施形態では、標準ヘッダ部Hsは固定長であり、少なくとも、送信元アドレスAsおよび宛先アドレスArを有している。
【0029】
(通信処理装置1の構成)
次に、上述したネットワーク層のヘッダ部Hの構造を有する制御フレームFを処理する通信処理装置1について、図3を用いて説明する。
図3は、本発明の一実施形態に係る通信処理装置1の構成を概略的に示す図である。
【0030】
図3(後述する図5も同様)に示すように、上記の通信処理装置1は、伝送路(図1図3では制御ネットワーク81)から受信した通信フレームDのネットワーク層を処理する処理部(以下、L3処理部2)を備える。このL3処理部2は、標準ヘッダ部Hsを処理する第1処理部(以下、標準ヘッダ処理部21)と、ヘッダ部Hが少なくとも1つの拡張ヘッダ部Heを有する場合に拡張ヘッダ部Heの処理を実行する第2処理部(以下、拡張ヘッダ処理部22)と、i番目(iは1以上の整数)の拡張ヘッダ部Heに含まれる拡張ヘッダ有無情報Eに基づいて、i+1番目の拡張ヘッダ部Heの有無を判定する判定部23と、を有する。
【0031】
この通信処理装置1は、制御ネットワーク81を介して通信を実行する上述した入出力装置92や制御装置93、ACS95などが備えても良い。制御ネットワーク81や制御情報ネットワーク82を構成するネットワーク装置であっても良く、この場合には、通信処理装置1は、制御フレームFに搭載された通信情報Uの処理を行うことなく、次ホップの装置に制御フレームFを転送する。
【0032】
図3に示す実施形態では、通信処理装置1は、伝送路から受信される通信フレームDの物理層を処理するL1処理部11と、L1処理部11による処理によって通信フレームDから取り出されたデータリンク層を処理するL2処理部12と、をさらに備えている。L1処理部11とL2処理部12とが接続され、L2処理部12とL3処理部2とが接続されている。そして、L3処理部2は、L1処理部11による物理層の処理、L2処理部12によるデータリンク層の処理を経ることで通信フレームDから取り出されたネットワーク層の制御フレームFが入力さると、その制御フレームFに対する処理を実行するようになっている。
【0033】
具体的には、図3に示すように、標準ヘッダ処理部21は、制御フレームFの標準ヘッダ部Hsの先頭からのビット位置およびサイズに基づくなどして各ヘッダ情報をそれぞれ取得し、各ヘッダ情報に応じた処理を実行する。同様に、拡張ヘッダ処理部22は、同じ制御フレームFの拡張ヘッダ部Heの各ヘッダ情報をそれぞれ取得し、各ヘッダ情報に応じた処理を実行する。
【0034】
より具体的には、拡張ヘッダ処理部22は、1番目の拡張ヘッダ部Heの有無については、例えば標準ヘッダ部Hsが1番目の拡張ヘッダ部Heの有無を示すヘッダ情報(第1拡張ヘッダ有無情報)を有することで、このヘッダ情報に基づいて判定しても良い。例えば第1拡張ヘッダ有無情報は、上述した拡張ヘッダ有無情報Eと同様に、例えば1ビットのサイズを有し、その値(二値)により1番目の拡張ヘッダ部Heの有無を示すように構成されても良い。このようにすれば、制御フレームFが拡張ヘッダ部Heを有しない場合にも対応が可能である。
【0035】
あるいは、他の幾つかの実施形態では、上記のヘッダ部Hが1番目の拡張ヘッダ部Heを必ず有していても良い。この場合には、拡張ヘッダ処理部22は1番目の拡張ヘッダ部Heの処理を必ず行うことになる。他方、2番目の拡張ヘッダ部Heの有無については、拡張ヘッダ処理部22は、ヘッダ部Hにおける1番目の拡張ヘッダ部Heの拡張ヘッダ有無情報Eのビット位置が分かることで、その値に基づいて判定する。たとえば、1番目の拡張ヘッダ部Heが標準ヘッダ部Hsの直後に配置されていれば、その拡張ヘッダ有無情報Eのビット位置の判別も容易となる。
【0036】
また、通信処理装置1は、制御装置93や入出力装置92であり、制御フレームFのペイロード部Pに格納された通信情報Uを取り出して、アプリケーション3(アプリケーション層)に転送されるようになっている。このアプリケーション3は、通信処理装置1上で動作しても良いし、通信処理装置1とは異なる装置上で動作しても良い。また、アプリケーション3は、例えばフィールド機器91を制御するプログラムであっても良く、通信情報Uに格納された指令を指令先のフィールド機器91に対して実行する。
【0037】
他方、L3処理部2は、アプリケーション3側から通信情報Uの通信要求に対しては、その通信情報Uを搭載する制御フレームFを生成し、L2処理部12に入力することで、
L2処理部12、L1処理部11による処理を順次経て、伝送路に通信フレームDの単位で送信される。
【0038】
なお、図3に示す実施形態では、通信処理装置1がL1処理部11およびL2処理部12を備えているが、他の幾つかの実施形態では、通信処理装置1は、L1処理部11およびL2処理部12を備えた装置など、L2処理部12を備えた装置に接続された装置であっても良い。L3処理部2から転送される通信情報Uの転送先のアプリケーション3は、例えば標準ヘッダ部Hsなどヘッダ部Hのヘッダ情報に基づいて特定されても良い。
【0039】
また、通信処理装置1はコンピュータで構成されても良い。すなわち、図示しないCPU(プロセッサ)や、ROMやRAMといったメモリなどとなる記憶装置を備え、メモリ(主記憶装置)にロードされたプログラム(通信制御プログラム)の命令に従ってCPUが動作(データの演算など)することで、通信処理装置1が備える上記の各処理部(機能部)を実現する。
【0040】
次に、上述した通信処理装置1の処理に対応する通信処理方法を、図4を用いて説明する。図4は、本発明の一実施形態に係る通信処理方法を示す図である。
図4に示す通信処理方法は、伝送路(図1図3では制御ネットワーク81)から受信した通信フレームDのネットワーク層を処理する処理する方法である。図4に示すように、通信処理方法は、標準ヘッダ部Hsを処理する第1処理ステップと、上記のヘッダ部Hが少なくとも1つの拡張ヘッダ部Heを有する場合に拡張ヘッダ部Heの処理を実行する第2処理ステップと、i番目(iは1以上の整数)の拡張ヘッダ部Heに含まれる拡張ヘッダ有無情報Eに基づいて、i+1番目の拡張ヘッダ部Heの有無を判定する判定ステップと、を有する。
【0041】
第1処理ステップ、第2処理ステップ、判定ステップは、それぞれ、上述した標準ヘッダ処理部21(第1処理部)、拡張ヘッダ処理部22(第2処理部)、判定部23が実行する処理内容と同じであるため、詳細は省略する。
【0042】
図4に示す実施形態では、ステップS0において制御フレームFを取得すると、ステップS1において、そのヘッダ部Hの標準ヘッダ部Hsの処理を実行し、ステップS2で、第2処理ステップおよび判定ステップを実行するようになっている。具体的には、ステップS21で変数iを初期化(例えばi=1など)し、ステップS22において、i番目の拡張ヘッダ部Heの処理を実行する。なお、図4に示す実施形態では、制御フレームFのヘッダ部Hは、少なくとも1つの拡張ヘッダ部Heを有しているのが前提となっている。
【0043】
ステップS23において、i番目の拡張ヘッダ部Heに含まれる拡張ヘッダ有無情報Eの値を抽出する。そして、ステップS24において、ステップS23で抽出した拡張ヘッダ有無情報Eの値が1であれば、さらに処理すべきi+1番目の拡張ヘッダ部Heが存在していると判断し、ステップS25に進む。このステップS25において変数iをインクリメントした後、ステップS22に戻る。逆に、ステップS24において、拡張ヘッダ有無情報Eの値が0であれば、例えば制御フレームFのペイロード部Pの通信情報Uをアプリケーション3に引き渡すなどして、フローを終了する。
【0044】
なお、図4のステップS21~ステップS23の順序は入れ替えても良い。例えば、標準ヘッダ部Hsの処理(S1)を、拡張ヘッダ部Heの処理(S22)の後に実行しても良いし、並列に実行しても良い。また、拡張ヘッダ部Heの処理(S23)を、拡張ヘッダ有無情報Eの値の確認(S24)の前に実行しても良いし、並列に実行しても良い。
【0045】
上記の構成によれば、ネットワーク層のヘッダ部(上述した制御フレームFのヘッダ部H)が標準ヘッダ部Hsの他に拡張ヘッダ部Heを有する場合には、拡張ヘッダ部Heが有する拡張ヘッダ有無情報Eに基づいて、既に存在することが認識されている拡張ヘッダ部Heの他に処理すべき他の拡張ヘッダ部Heがさらに存在するか否かを判断し、その処理を実行する。これによって、受信した通信フレームが有する全ての拡張ヘッダ部の存在を適切に判断することができ、ネットワーク層を正しく処理することができる。よって、例えば拡張ヘッダ部Heを有していないにも関わらず、ネットワーク層のペイロード部Pに格納されたデータを誤って拡張ヘッダ部Heとして処理することや、処理されない拡張ヘッダ部が存在するといったようなことを回避することができる。
【0046】
本発明は上述した実施形態に限定されることはなく、上述した実施形態に変形を加えた形態や、これらの形態を適宜組み合わせた形態も含む。
(付記)
【0047】
(1)本発明の少なくとも一実施形態に係る通信処理装置(1)は、
伝送路(図1図3では制御ネットワーク81)から受信された通信フレーム(D)のネットワーク層を処理するよう構成される処理部(2)を備え、
前記ネットワーク層のヘッダ部(H)は、該ヘッダ部(H)が標準的に有する標準ヘッダ部(Hs)に定義されたヘッダ情報とは異なるヘッダ情報を定義するための拡張ヘッダ部(He)を有するか否か示す拡張ヘッダ有無情報(E)を含み、
前記処理部(2)は、
前記標準ヘッダ部(Hs)を処理する第1処理部(21)と、
前記ヘッダ部(H)が1以上の前記拡張ヘッダ部(He)を有する場合に、前記ヘッダ部(H)が有する前記1以上の拡張ヘッダ部(He)の処理を個別に実行する第2処理部(22)と、
i番目(iは1以上の整数)の前記拡張ヘッダ部(He)に含まれる前記拡張ヘッダ有無情報(E)に基づいて、i+1番目の前記拡張ヘッダ部(He)の有無を判定する判定部(23)と、を有する。
【0048】
上記(1)の構成によれば、ネットワーク層のヘッダ部(H)(例えば後述する制御フレーム(F)のヘッダ部(H))が標準ヘッダ部(Hs)の他に拡張ヘッダ部(He)を有する場合には、拡張ヘッダ部(He)が有する拡張ヘッダ有無情報(E)に基づいて、既に存在することが認識されている拡張ヘッダ部(He)の他に処理すべき他の拡張ヘッダ部(He)がさらに存在するか否かを判断し、その処理を実行する。これによって、受信した通信フレーム(D)が有する全ての拡張ヘッダ部(He)の存在を適切に判断することができ、ネットワーク層を正しく処理することができる。よって、例えば拡張ヘッダ部(He)を有していないにもかかわらず、ネットワーク層のペイロード部(P)に格納されたデータを誤って拡張ヘッダ部(He)として処理することや、処理されない拡張ヘッダ部(He)が存在するといったようなことを回避することができる。
【0049】
(2)幾つかの実施形態では、上記(1)の構成において、
1番目の前記拡張ヘッダ部(He)は前記標準ヘッダ部(Hs)の直後に配置され、
前記i+1番目の前記拡張ヘッダ部(He)は、前記i番目の前記拡張ヘッダ部(He)の直後に配置される。
【0050】
上記(2)の構成によれば、拡張ヘッダ部(He)は、標準ヘッダ部(Hs)の直後から順番に定義される。これによって、各拡張ヘッダ部(He)の先頭の判別の容易化や、拡張ヘッダ部(He)の管理の簡易化を図ることができる。
【0051】
(3)幾つかの実施形態では、上記(1)~(2)の構成において、
前記拡張ヘッダ部(He)は固定長である。
上記(3)の構成によれば、拡張ヘッダ部(He)の処理の高速化を図ることができる。
【0052】
(4)幾つかの実施形態では、上記(1)~(3)の構成において、
前記拡張ヘッダ部(He)における前記拡張ヘッダ有無情報(E)の領域のサイズは1ビットである。
上記(4)の構成によれば、拡張ヘッダ部(He)のサイズの最小化を図ることができる。
【0053】
(5)幾つかの実施形態では、上記(1)~(4)の構成において、
前記拡張ヘッダ部(He)は、種別情報(T)を含み、
前記第2処理部(22)は、前記拡張ヘッダ部(He)から抽出した前記種別情報(T)に応じた処理を実行する。
【0054】
上記(5)の構成によれば、拡張ヘッダ部(He)の構造を各機能に対して統一することができ、ネットワーク層のプロトコルの機能拡張に柔軟に対応することができる。
【0055】
(6)本発明の少なくとも一実施形態に係る通信処理方法は、
伝送路(図1図3では制御ネットワーク81)から受信された通信フレーム(D)のネットワーク層を処理する処理ステップを備え、
前記ネットワーク層のヘッダ部(H)は、該ヘッダ部(H)が標準的に有する標準ヘッダ部(Hs)に定義されたヘッダ情報とは異なるヘッダ情報を定義するための拡張ヘッダ部(He)を有するか否か示す拡張ヘッダ有無情報(E)を含み、
前記処理ステップは、
前記標準ヘッダ部(Hs)を処理するステップと、
前記ヘッダ部(H)が1以上の前記拡張ヘッダ部(He)を有する場合に、前記ヘッダ部(H)が有する前記1以上の拡張ヘッダ部(He)の処理を個別に実行するステップと、
i番目(iは1以上の整数)の前記拡張ヘッダ部(He)に含まれる前記拡張ヘッダ有無情報(E)に基づいて、i+1番目の前記拡張ヘッダ部(He)の有無を判定する判定ステップと、を有する。
上記(6)の構成によれば、上記(1)と同様の効果を奏する。
【0056】
(7)本発明の少なくとも一実施形態に係る通信処理プログラムは、
伝送路(図1図3では制御ネットワーク81)から受信された通信フレーム(D)のネットワーク層を処理するよう構成される処理部(2)を実現させるためのプログラムであって、
前記ネットワーク層のヘッダ部(H)は、該ヘッダ部(H)が標準的に有する標準ヘッダ部(Hs)に定義されたヘッダ情報とは異なるヘッダ情報を定義するための拡張ヘッダ部(He)を有するか否か示す拡張ヘッダ有無情報(E)を含み、
コンピュータに、
前記標準ヘッダ部(Hs)を処理する第1処理部(21)と、
前記ヘッダ部(H)が1以上の前記拡張ヘッダ部(He)を有する場合に、前記ヘッダ部(H)が有する前記1以上の拡張ヘッダ部(He)の処理を個別に実行する第2処理部(22)と、
i番目(iは1以上の整数)の前記拡張ヘッダ部(He)に含まれる前記拡張ヘッダ有無情報(E)に基づいて、i+1番目の前記拡張ヘッダ部(He)の有無を判定する判定部(23)と、を有する前記処理部(2)を実現させるためのプログラムである。
上記(7)の構成によれば、上記(1)と同様の効果を奏する。
【0057】
(8)本発明の少なくとも一実施形態に係るネットワーク層のフレームのデータ構造は、
ヘッダ部(H)とペイロード部(P)とを有するネットワーク層のフレームのデータ構造であって、
前記ヘッダ部(H)は、
前記ヘッダ部(H)が標準的に有する標準ヘッダ部(Hs)と、
前記標準ヘッダ部(Hs)に定義されたヘッダ情報とは異なるヘッダ情報を定義するための少なくとも1つの拡張ヘッダ部(He)と、を有し、
i番目(iは1以上の整数)の前記拡張ヘッダ部(He)は、i+1番目の前記拡張ヘッダ部(He)の有無を示す拡張ヘッダ有無情報(E)を含む。
【0058】
上記(8)の構成によれば、ネットワーク層のフレーム(制御フレーム(F))は、標準ヘッダ部(Hs)と拡張ヘッダ部(He)とを有し、拡張ヘッダ部(He)は、拡張ヘッダ有無情報(E)を定義するための領域(フィールド)を有している。これより、各拡張ヘッダ部(He)の拡張ヘッダ有無情報(E)を参照することで、他に処理すべき拡張ヘッダ部(He)がヘッダ部(H)にさらに存在するかが分かるようになっている。よって、通信装置がネットワーク層のヘッダ部(H)を適切に処理が可能なように、任意の数の拡張ヘッダ部(He)をヘッダ部(H)に含めることができる。したがって、ネットワーク層のヘッダ部(H)の構造を動的に変えることができ、機能の拡張に容易に対応することができる。
【符号の説明】
【0059】
1 通信処理装置
11 L1処理部
12 L2処理部
2 L3処理部(処理部)
21 標準ヘッダ処理部(第1処理部)
22 拡張ヘッダ処理部(第2処理部)
23 判定部
3 アプリケーション
4 振分部
8 制御システム
81 制御ネットワーク
82 制御情報ネットワーク
83 情報系ネットワーク
91 フィールド機器
92 入出力装置
93 制御装置
94 OPS
95 ACS
96 ファイアウォール装置
As 送信元アドレス
Ar 宛先アドレス
D 通信フレーム
E 拡張ヘッダ有無情報
F 制御フレーム
H ヘッダ部
Hs 標準ヘッダ部
He 拡張ヘッダ部
T 種別情報
P ペイロード部
Tr トレイラ部
U 通信情報
図1
図2
図3
図4
図5