JP2014530545A - 互換性がないネットワークルーティングプロトコルを使用する通信ネットワークにわたるデータフレームの伝達 - Google Patents

互換性がないネットワークルーティングプロトコルを使用する通信ネットワークにわたるデータフレームの伝達 Download PDF

Info

Publication number
JP2014530545A
JP2014530545A JP2014530886A JP2014530886A JP2014530545A JP 2014530545 A JP2014530545 A JP 2014530545A JP 2014530886 A JP2014530886 A JP 2014530886A JP 2014530886 A JP2014530886 A JP 2014530886A JP 2014530545 A JP2014530545 A JP 2014530545A
Authority
JP
Japan
Prior art keywords
network
protocol
network routing
data packet
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2014530886A
Other languages
English (en)
Other versions
JP6276183B2 (ja
JP2014530545A5 (ja
Inventor
マーク ジェイ. ニクソン
マーク ジェイ. ニクソン
ソン ハン
ソン ハン
エリック ロットボールド
エリック ロットボールド
チェンデジ
デジ チェン
Original Assignee
フィッシャー−ローズマウント システムズ,インコーポレイテッド
フィッシャー−ローズマウント システムズ,インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by フィッシャー−ローズマウント システムズ,インコーポレイテッド, フィッシャー−ローズマウント システムズ,インコーポレイテッド filed Critical フィッシャー−ローズマウント システムズ,インコーポレイテッド
Publication of JP2014530545A publication Critical patent/JP2014530545A/ja
Publication of JP2014530545A5 publication Critical patent/JP2014530545A5/ja
Application granted granted Critical
Publication of JP6276183B2 publication Critical patent/JP6276183B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/283Processing of data at an internetworking point of a home automation network
    • H04L12/2836Protocol conversion between an external network and a home network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/52Multiprotocol routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/321Interlayer communication protocols or service data unit [SDU] definitions; Interfaces between layers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/325Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the network layer [OSI layer 3], e.g. X.25
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/04Network layer protocols, e.g. mobile IP [Internet Protocol]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L2012/284Home automation networks characterised by the type of medium used
    • H04L2012/2841Wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/681Types of network addresses using addresses for wireless personal area networks or wireless sensor networks, e.g. Zigbee addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks
    • H04W84/22Self-organising networks, e.g. ad-hoc networks or sensor networks with access to wired networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Automation & Control Theory (AREA)
  • Multimedia (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Small-Scale Networks (AREA)

Abstract

通信方法は、非IPネットワークルーティングプロトコルを使用する通信ネットワーク、すなわち、WirelessHARTプロトコル等のIPネットワークルーティングプロトコル以外のネットワークルーティングプロトコルを実装する、またはIPネットワークルーティングプロトコルと互換性がない通信ネットワーク上で、IPv6データフレーム等のインターネットプロトコル(IP)データフレームをシームレスに伝送するように動作する。この通信方法は、例えば、非IP通信ネットワーク(IPベースのネットワークルーティングを使用しないネットワーク)を使用するプロセスプラントネットワーク内のフィールドデバイスまたは他の知的デバイスが、プロセスプラントネットワーク内またはプロセスプラントネットワーク外のいずれかで、インターネットプロトコル使用可能デバイスにおいて生成される、またはそれによって受信されるIPデータフレームのメッセージングを行うことを可能にする。本通信方法は、IPベースの通信ネットワーク内で後にメッセージをルートするため、またはIP使用可能デバイスにおいてIPメッセージデータフレームを復号して使用するために必要とされる、IPデータフレームのIPネットワークルーティング情報を保存しながら、非IP通信ネットワーク内でIPデータフレームを伝送するために非IP通信ネットワークのネットワークルーティング構造を使用するため、本通信方法は、非IP通信ネットワーク内の通常の通信に影響を及ぼさない、または変更しない。

Description

本開示は、第2のネットワークルーティングプロトコルを使用してネットワーク上で送信される1つのネットワークルーティングプロトコルを使用して、通信データフレームのルーティングを可能にするように、異なる通信ネットワークを介して、デバイス間でデータフレームを受信、処理、および伝送することに関する。
当初は、プロセスプラントにおいてプロセス制御を達成するために採用されたプロセス制御システムおよびフィールドデバイスは、概して、分散様式で監視および制御されていた。標準化通信プロトコルおよび計算能力を欠いていたため、閉ループ監視および制御は、原位置がプロセスプラント自体に局所的であったプラントオペレータに委ねられたものであった。遠隔集中プロセス制御監視および制御の必要性は、例えば、周知の2線式4〜20mA電流ループ計器および他の2点間配線通信システムを採用する、フィールドデバイスの開発ならびに展開をもたらした。
低費用で低電力のコンピュータデバイスの可用性が、増進した処理能力(マイクロプロセッサ)および電気通信能力を装備した知的フィールドデバイスの展開を助長した。知的フィールドデバイスは、現在ではますます、相互に、および自動制御を行うように集中プロセス制御システムと通信(ネットワーク化)することができる。この向上したネットワーキング能力は、増進したプロセスプラント制御、その結果として、向上したプロセスプラント出力に変わった。
プロセス制御業界で知的フィールドデバイスの受け入れを向上させることに配慮し、部分的に、これらのフィールドデバイス間の内部運用性を向上させるために、フィールドデバイスベンダは、プロセスプラント間フィールドデバイス通信を可能にするように、いくつかのデジタルネットワークプロトコルを開発し、標準化した。標準のうちのいくつか、例えば、ハイウェイアドレス可能遠隔トランスデューサ(HART)プロトコルは、フィールドデバイス間でデジタル情報を伝送および受信するように、現在ではプロセスプラント作業場の至る所にある、既存のアナログ2線式4〜20mAインフラストラクチャを活用したため、特に魅力的であった。他の標準は、FOUNDATION(登録商標)フィールドbus標準、Profibus標準等のバスベースのシステムを含んだ。
最終的に、計算能力の増加、構成要素統合の増加、および信号処理の一般分野における発展が、プロセス制御業界で使用するための低域で低スループットの無線周波数(RF)または無線通信標準を開発および展開することを経済的に実行可能にした。これらのプロトコルのうちのいくつかは、2.4GHz帯域等の、認可されていない、または認可が緩い、工業、科学、および医療(ISM)電磁周波数で動作するように開発された。ISM帯域内でそのような低域で低スループットのRF通信プロトコルをサポートする、フィールドデバイスが、プロセスプラント環境で展開され、かつ展開され続けている。無認可であっても、政府機関が、最大伝送電力を制限し得る、規制を制定し得る。したがって、頻繁に、そのようなプロトコルは、低電力通信プロトコルと呼ばれる。また、例えば、HARTプロトコルを含む、いくつかの有線ネットワークプロトコルが、そのようなフィールドデバイスの無線能力を活用するように適合された。具体的には、WirelessHARTプロトコルが、有線HARTプロセスプラントネットワーク内のWirelessHART対応フィールドデバイスの相互運用性を活用して可能にするように、有線HARTプロトコルから進化した。これらの改良にもかかわらず、プロセスプラント通信は、概して、非常に特異的なロバスト性およびセキュリティの問題を有する、プロセスプラント環境に限定される。
しかしながら、別個の業界では、およそ1960年代に始まって、パーソナルコンピュータが、ますます世界中で一般的になってきた。同時に、汎用コンピュータネットワーキングの分野で遂げられた進歩は、それを介してパーソナルコンピュータが相互にシームレスに通信する、インターネットの構築につながった。このシームレスな通信は、大部分が、インターネットプロトコルバージョン4(IPv4)の受け入れおよび順守によって可能にされてきた。IPv4プロトコルは、部分的に、ネットワーク、一般的には、インターネットを介して通信するコンピュータに、一意的なIPアドレスを割り当てる。IPv4の広範囲に及ぶ受け入れを予想することができず、IPv4仕様の開発者は、コンピュータのIPアドレスの最大サイズを32ビットに制約した。しかしながら、サーバ、ハンドヘルドコンピュータ、およびパーソナルコンピュータを含む、相互接続されたコンピュータの増設は、IPv4アドレスが予知できる未来に使い尽くされ得る状況を生み出してきた。この状況を先制して阻止するために、新たに提案されたIPv6プロトコル標準は、部分的に、IPアドレス空間または長を128ビットに増加させる。数学的に、これは、3.4×1038個の一意的なIPv6アドレスに変わる。いずれにしても、有線および無線環境の両方でルーティングおよび他の通信活動を行うためのインターネットプロトコル(本明細書では、概して、IPまたはIPネットワークプロトコルと呼ばれる)の使用が、普及してきた。実際に、デバイス外で通信するために現在開発されているほとんどのアプリケーションは、通信のバックボーンとして、またはネットワーク通信を行うために、インターネットプロトコルを使用して開発される。
また、プロセスプラント業界での必要性は、ますます、一般コンピューティング技術で遂げられている発展に関係または関連してきている。例えば、精油所、油田、および採掘作業所等のプロセスプラントが、ますます、原材料の場所に近い、地球の最遠隔の隅々で開発されている。グローバル化の増加により、これらのプラントは、別個の大陸上ではないにしても、少なくとも別個の国に位置する、複合企業によって、所有、監視、および制御されている。そのようなプロセスプラントの場所における地政学的な不安定性、天候条件、および/または住みやすい条件の入手不能性が、企業に、そのようなプロセスプラントを遠隔で監視および制御するための手段を探すことを余儀なくさせてきた。携帯電話、セキュリティ監視アプリケーション等の他の種類のネットワーク通信で使用されている、汎用コンピュータネットワーキングの進歩の多くの用途があるが、既存のプロセス制御ネットワークプロトコルは、設備が不十分であり、概して、有意な支援通信インフラストラクチャがないプロセスプラント環境内で、これらのプロトコルの統合を可能にする、IPv4またはIPv6等の汎用コンピュータネットワークプロトコルと互換性がない。実際に、既存のプロセス制御ネットワークプロトコルの大部分は、IPv4またはIPv6通信プロトコル等の現在ではより一般的または包括的な汎用コンピュータプロトコルとは独立して、またはそれらとは関係なく、開発された。さらに、128ビット暗号化等の汎用コンピュータプロトコルで利用可能であるロバストなセキュリティ機構は、プロセスプラント作業場ネットワークまで進展しておらず、再度、制御されたプラント環境外にプロセスプラントネットワークを拡張する能力を制限する。実際に、セキュリティ特徴を実装する、全てではないにしても、ほとんどのプロセスプラント通信プロトコルは、広く採用されているIPv4およびIPv6セキュリティプロトコルと互換性がない。
しかしながら、新たに拡張されたIPv6アドレス空間を用いて、IPv6アドレスとの通信が可能であるプロセスプラント内で各知的フィールドデバイスを割り当てることが、現在は実行可能であり得る。したがって、プラント環境内で通信を行うため、およびこれらの通信をプラント外のデバイスまで容易に拡張可能にするために、IPv4またはIPv6等の汎用コンピュータネットワーキングプロトコルを単純に使用することが、極めて有利になるであろう。しかしながら、全ての知的フィールドデバイスが、IPv4またはIPv6プロトコルに準拠するか、またはそれを使用するように適合されるわけではなく、または容易に適合できるわけではなく、したがって、プロセスプラント環境内で通信および他のルーティング機能を果たすためにIPv4またはIPv6通信プロトコルを使用することは、現在実行可能ではない。具体的には、限定されたフィールドデバイスメモリおよび処理能力等のハードウェア制約が、IPv4またはIPv6プロトコルに準拠している、またはそれをサポートするために必要とされるソフトウェアおよび/またはハードウェアを用いて、既存のフィールドデバイスを改造することを技術的に実行不可能にする。同様に、プロセスプラント作業場で遭遇するもの等の、現在の特殊用途ネットワークで実装される既存の低電力で低スループットの通信プロトコルを実装する全ての知的フィールドデバイスを、IPv6使用可能フィールドデバイスと交換することは、経済的に実行可能ではない。結果として、たとえプロセスプラント内の多くのコンピュータデバイスが、IPv4またはIPv6通信プロトコル環境内で使用するために開発されるアプリケーションを実行できること、またはそのような通信ネットワークプロトコルを使用するプロセスプラントネットワーク外のデバイスと容易に通信できることから利益を享受し得るとしても、プロセスプラントの中のデバイス内または間で通信を行うために、周知かつ現在では遍在的なIPv4またはIPv6プロトコルを使用することは、現在実行可能ではないか、またはあまり実用的ではない。結果として、同時にインターネット上のどこにでも位置するデバイスと通信するように適合される一方で、レガシー無線プロセスプラントネットワーク内で動作するように適合される、フィールドデバイスの必要性がある。
通信方法は、非IPネットワークルーティングプロトコルを使用する通信ネットワーク、すなわち、メッシュネットワークルーティングプロトコル、または明示宛先アドレス指定プロトコルであるIPネットワークルーティングプロトコル以外であるか、またはそれとは互換性がない、暗示宛先あるいはアドレス指定ルーティングプロトコル等のネットワークルーティングプロトコルを実装する通信ネットワーク上で、IPv6データフレームまたは他のタイプの汎用コンピュータデータフレーム等のインターネットプロトコル(IP)データフレームをシームレスに伝送するように動作する。WirelessHARTプロトコルは、(暗示宛先またはアドレス指定ネットワークルーティングプロトコルでもあり、ネットワーク層においてグラフルーティングを使用する)非IP通信ネットワークの実施例であるため、IPネットワークルーティングプロトコル、例えば、IPアドレスルーティングまたは明示宛先アドレス指定を使用するプロトコルを使用する、IPデータフレームのルーティングを本質的にサポートしない。この通信方法は、例えば、非IP通信ネットワーク(WirelessHART通信プロトコル等のIPベースのネットワークルーティングを使用しないネットワーク)を使用するプロセスプラントネットワーク内のフィールドデバイスまたは他の知的デバイスが、プロセスプラントネットワーク内またはプロセスプラントネットワーク外のいずれかで、インターネットプロトコル使用可能デバイスによって生成および受信されるIPデータフレームを使用して、メッセージルーティングを行うことを可能にする。重要なことに、本通信方法は、IPベースの通信ネットワーク内で後にメッセージをルートするため、またはIP使用可能デバイスにおいてIPメッセージデータフレームを復号して使用するために必要とされる、IPデータフレームのIPネットワークルーティング情報を保存しながら、非IP通信ネットワーク内でIPデータフレームを伝送するために非IP通信ネットワークのネットワークルーティングまたはネットワークルーティングプロトコル構造(メッシュネットワークルーティングプロトコル、または暗示宛先あるいはアドレス指定ルーティングプロトコル等)を使用するため、本通信方法は、非IP通信ネットワーク内の通常の通信に影響を及ぼさない、または変更しない。概して、この通信方法は、標準IPネットワーク通信を行うために、(非IP通信ネットワーク内、または非IP通信ネットワーク外のいずれかで)デバイス内のIP使用可能アプリケーションによってIPデータフレームを使用することができるように、ネットワークルーティング経路全体に沿って、および非IP通信ネットワークとIP通信ネットワークとの間の遷移点において、IPネットワークルーティング情報を保存する。
本質的に、本明細書で説明される通信方法は、非IP通信ネットワークがIPデータフレームまたはIPネットワークルーティングプロトコルの伝送を本質的にサポートしないときでさえも、非IPネットワークルーティングプロトコルに準拠する通信チャネルを介して、IPデータフレームを伝送および受信するために、非IP通信ネットワークのネットワークルーティング構造または機構を使用する。本通信方法は、概して、アプリケーションが存在するデバイス内のIPデータフレームおよびIPスタックを使用して通信するアプリケーションによって、IP通信ネットワーク内でIPネットワークルーティング情報(IPネットワークルーティングプロトコル情報)を使用することができるように、この情報をデータフレーム内で保存しながら、非IP通信ネットワークのネットワークルーティング機構(ネットワークルーティングプロトコル情報)を使用して、非IP通信ネットワーク上でIPデータフレームをルートすることによって動作する。この特徴は、標準IPデータフレームが、非IP通信ネットワークのプロトコルスタック(例えば、データリンク層機構および物理層構造)を使用する非IP通信ネットワークに従って構成されるデータフレームとともに、またはそれと同時に、送信されることを可能にする。ある場合では、本方法は、IPデータフレームを1つ以上の断片に断片化し、例えば、6LoWPANプロトコルの一部として開発または提供される断片化技法を使用して、非IP通信ネットワークの通信チャネルを介して、断片化データフレームをルートしてもよい。
有利なことに、本明細書で説明される通信方法は、非IP通信ネットワーク上のデバイスの処理能力または機能を有意に変化または増大させる必要なく、これらのネットワークにわたってIPデータフレームをシームレスに伝達することができるように、IP通信ネットワークが、プロセス制御情報の送信と関連付けられる特殊通信ネットワーク等の非IP通信ネットワークにシームレスに接続されることを可能にする。加えて、この通信方法は、IPネットワークルーティングを実装することを非IP通信ネットワークに強制する必要なく、通信経路の一部分に非IP通信ネットワークのネットワークルーティング機構を使用し、および通信経路の別の部分にIP通信ネットワークのネットワークルーティング機構を使用して、非IP通信ネットワーク内で動作するデバイスにおいて生成されるIPデータフレームが、(例えば、インターネットを介して)IP準拠通信ネットワーク内のデバイスに直接送信されることを可能にする。また、本方法は、非IP通信ネットワーク上で通信を行うために、IP使用可能スタックを非IP通信ネットワーク内で動作するデバイスの全てに提供する必要なく、IP通信ネットワーク内で生成されるIPデータフレームが、IPデータフレームとして非IP通信ネットワーク内のデバイスに送信され、デバイスによって受信されることも可能にする。結果として、この方法は、非IP通信ネットワーク上のデバイス内で実行されるIPデータフレームまたはIPベースの通信を生成、受信、および使用し、かつIPデータフレームを使用して、非IP通信ネットワーク上のデバイス内のアプリケーション、またはIP通信ネットワーク等の他のネットワーク上のデバイスのいずれかに、依然として通信するように開発される、ソケットベースのアプリケーションを可能にする。結果として、IP通信を使用し、それに依存するアプリケーション(例えば、ソケットベースのアプリケーション)は、非IP通信ネットワーク内のデバイス上で実行することができ、IPデータフレームを使用して、非IP通信ネットワーク内のデバイスまたは非IP通信ネットワークに外部から接続されたデバイス上で動作する他のアプリケーションとシームレスに通信することができる。この利点は、異なるタイプの通信ネットワークにわたって使用されるアプリケーションの広範囲の相互運用性を提供する。
また、IPデータフレームを生成するため、および非IP通信ネットワークのネットワークルーティング機構を介してこれらのIPデータフレームを送信するために、アプリケーションによって使用することができる関数呼び出しをプログラマに提供することによって、通信方法を実装するために、アプリケーションプログラミングインターフェース(API)が使用されてもよい。このAPIは、プログラマが、非IP通信ネットワーク内および外の両方でIPベースの通信を提供するように、非IP通信ネットワーク内でソケットベースのアプリケーションを効率的に設定して使用することを可能にする。また、ソフトウェア開発キット(SDK)等のプログラミング環境は、ユーザが、アプリケーションが実行される非IP通信ネットワーク内で動作するデバイスを選択すること、IPデータフレームを生成するデバイス用のアプリケーションを開発すること、非IP通信ネットワークのネットワークルーティング機構を介してこれらのIPデータフレームを送信すること、およびアプリケーションを試験することを可能にすることによって、非IP通信ネットワーク内のデバイス上で実行されるアプリケーションをプログラムすることにおいてユーザを支援してもよい。プログラミング環境は、いったん開発されると、アプリケーションを、IPデータフレームの形態で、非IP通信ネットワーク内で動作するデバイスに伝送する、ルーチンを含んでもよい。
そのうちのいくつかが、IPネットワークルーティングプロトコルをサポートし、そのうちのいくつかが、IPネットワークルーティングプロトコルをサポートしない、非IP通信ネットワーク内のデバイスが、ネットワーク内で、または異なる通信ネットワークにわたって、IPデータフレームを受信および伝送することができる、通信システム例を図示する。 ネットワークデバイスの通信スタック内の標準IPデータフレームの作成を図示する。 IPデータフレームが非IP通信ネットワーク上でルートされることを可能にするための、本明細書で説明される通信方法に従ったIPデータフレームの作成を図示する。 IPネットワークルーティングプロトコルを使用またはサポートしない非IP通信ネットワークを介して、IPデータフレームを作成および送信する方法を図示する。 第1のIPネットワークルーティングプロトコルを使用する第1のネットワーク内でIPデータフレームを生成するために、およびこのデータフレームを、メッシュネットワークルーティングプロトコル、または暗示宛先あるいはアドレス指定ルーティングプロトコル等の非IPネットワークルーティングプロトコルを使用する第2のネットワーク内のデバイスに送信するために使用され得る、通信方法のフローチャートである。 メッシュネットワークルーティングプロトコル、または暗示宛先あるいはアドレス指定ルーティングプロトコル等の非IPネットワークルーティングプロトコルを使用するネットワーク内で、IPデータフレームを生成するため、およびこのデータフレームを、IPネットワークルーティングプロトコル、または明示宛先あるいはアドレス指定ルーティングプロトコルを使用するネットワーク内のデバイスに送信するために使用され得る、通信方法のフローチャートである。 WirelessHARTフィールドデバイスが、IPv6ネットワークルーティングプロトコルをサポートまたは実装する通信ネットワークを使用して、WirelessHARTネットワーク内で、および異なるWirelessHARTネットワーク間で、IPv6データフレームを受信および伝送するように動作し得る、WirelessHARTネットワーク例を図示する。 それを介して、遠隔接続されたコンピュータデバイスが、IPv6データフレームを利用してWirelessHARTフィールドデバイスと通信し得る、別のWirelessHARTネットワーク例を図示する。 非IP通信ネットワーク上でIPv6データフレームのルーティングを同時にサポートしながら、例えば、インターネットから、IPv6データフレームを受信および伝送するためにゲートウェイデバイスで使用され得る、ネットワークプロトコルスタック例のブロック図である。 WirelessHART通信ネットワーク上のデバイスを往復して、IPv6データフレームならびにWirelessHARTデータフレームを受信および伝送するために使用され得る、ネットワークプロトコルスタック例のブロック図である。 WirelessHARTネットワーク等の非IP通信ネットワーク上でIPv6データフレームのルーティングを提供するように、WirelessHART通信ネットワーク内で動作するフィールドデバイスまたはゲートウェイにおいて実装され得る、6LoWPANブロック例のブロック図である。 図8の6LoWPANブロック例で実装され得る、断片化モジュール例のブロック図である。 図8の6LoWPANブロック例で実装され得る、再組立モジュールのブロック図である。 受信したIPv6データフレームからのWirelessHARTネットワークルーティングプロトコルヘッダカプセル化IPv6データフレーム断片の生成を図示する。 IPv6データフレームを示すために利用され得る、WirelessHARTネットワークルーティングプロトコルヘッダの中のデータフィールド例を図示する。 IPv6データフレームを受信および伝送するために利用され得る、いくつかの可能なセキュリティ機構を示すために利用され得る、WirelessHARTネットワークルーティングプロトコルヘッダのデータフィールド例を図示する。 WirelessHART通信ネットワーク内でIPv6データフレームおよびWirelessHARTデータフレームをルートするように第1の通信技法例を実装する、WirelessHART通信ネットワーク上の一組のWirelessHARTデバイスを図示する。 WirelessHART通信ネットワーク内でIPv6データフレームおよびWirelessHARTデータフレームをルートするように第2の通信技法例を実装する、WirelessHART通信ネットワーク上の一組のWirelessHARTデバイスを図示する。 IPv6データフレームまたはIPv6ネットワークルーティング機構をサポートしないWirelessHARTデバイスを使用して、WirelessHART通信ネットワーク内でIPv6データフレームおよびWirelessHARTデータフレームをルートするように第3の通信技法例を実装する、WirelessHART通信ネットワーク上の一組のWirelessHARTデバイスを図示する。 WirelessHART通信ネットワークを介してIPv6データフレームを受信および伝送するために、フィールドデバイスのアプリケーションプログラミングインターフェース(API)を利用するように構成される、カスタムアプリケーションを生成するために利用されてもよい、SDK例のブロック図である。
一般的に言えば、複数の異なる通信ネットワーク上で、IPデータフレーム等の第1のネットワークルーティングプロトコルに基づいて作成されるデータフレームをシームレスに伝達するためのシステムおよび方法は、第1のネットワークルーティングプロトコル、例えば、インターネットプロトコルバージョン6(IPv6)プロトコル、または任意の他の明示宛先あるいはアドレス指定ルーティングプロトコル、またはネットワークトポロジーアドレス指定プロトコルと関連付けられる、ネットワークルーティングプロトコル情報(ネットワークルーティング情報とも呼ばれる)を伴って構成されるデータフレームを作成または受信することと、第1のネットワークルーティング情報を維持しながら、WirelessHARTネットワークルーティングプロトコル、または任意の他のメッシュネットワーク、暗示宛先あるいはアドレス指定または非ネットワークトポロジーアドレスベースのルーティングプロトコル等の第2のネットワークルーティングプロトコルによって定義されるようなネットワークルーティングプロトコル情報を追加することと、データフレーム内で第1のネットワークルーティングプロトコルのネットワークルーティング情報を維持しながら、第2の通信ネットワーク上でデータフレームを伝達するために第2の通信ネットワークのネットワークルーティング機構およびプロシージャを使用することとを含む。また、本システムおよび方法は、データフレームが方向付けられるアプリケーションを有するデバイス、または第2の通信ネットワーク内のゲートウェイデバイスにおいて等、例えば、第2の通信ネットワーク内の端末デバイスにおいて、データフレームを復号してもよく、インターネット等の第1のネットワークルーティングプロトコルに準拠する通信ネットワーク内の元のデータフレームの通信を指図するため、または第1のネットワークルーティングプロトコルに準拠するデータフレームを用いてメッセージに応答するために、第1のネットワークルーティングプロトコルのネットワークルーティング情報を使用してもよい。
背景として、概して、本明細書では明示宛先(明示アドレス指定とも呼ばれる)ルーティングプロトコルおよび暗示宛先(本明細書では、暗示アドレス指定とも呼ばれる)ルーティングプロトコルと呼ばれる、2つのタイプのネットワークルーティングプロトコルがある。明示宛先または明示アドレス指定ネットワークルーティングプロトコルは、概して、ネットワーク上でルートされるデータパケットの内側に配置されるネットワークルーティング情報の一部として、1つ以上の宛先または宛先アドレスを定義し、そのアドレスは、ネットワーク内の中間デバイスがネットワーク内でルーティングを行うために十分である。送信されているパケット内のネットワークルーティング情報内の宛先情報または宛先アドレスは、パケットが送達されるネットワーク内のデバイスまたは論理位置(宛先)を明示的に(すなわち、それら自体で、または独力で)定義する。このアドレス情報は、データパケットを宛先アドレスと関連付けられる宛先デバイスにルートするために(ネットワーク内のデバイスによって作成されるルーティングテーブルとともに)使用される。データパケットのIP宛先アドレスは、概して、ネットワーク上のデバイスがネットワーク内でデータパケットをルートすることを可能にするために、パケットから必要とされる唯一の情報であるため、IPアドレス指定またはIPネットワークルーティングプロトコルは、明示宛先またはアドレス指定ルーティングプロトコルの特定の実施例である。実際に、IPアドレス指定は、宛先アドレスを伴うデバイスに到達するために必要とされる、ルートまたはネットワークトポロジーの関数である、アドレス(例えば、宛先アドレス)を使用する。つまり、IPアドレスは、それを通して宛先デバイスが到達可能である中間デバイスへパケットを送信するように、デバイスがネットワーク内でパケットをルートすることを可能にするか、または支援するよう、ネットワークのトポロジー内のデバイスの場所(IPアドレスが割り当てられる)の関数として、作成されるか、または割り当てられる。したがって、IPアドレス指定は、ネットワークトポロジーベースまたは依存性であるため、本明細書ではネットワークトポロジーベースのアドレス指定プロトコルとも呼ばれる。概して、中間ルーティングデバイスにおける不十分な出力により、またはデバイス間の距離によるネットワーク内のデバイス間の通信チャネルの損失により、ネットワーク内で失われている(ルートされていない)パケットの懸念がほとんどまたは全くないため、多くの2点間有線または高出力ネットワークルーティングプロトコル(IPルーティングプロトコルを含む)は、明示宛先ルーティングまたは宛先アドレス指定ルーティング(ネットワークトポロジーベースのアドレス指定を含む)を使用する。
他方で、暗示宛先ルーティングまたは暗示アドレス指定ルーティングは、パケットがネットワークを通してルートされる方法を定義するために、データパケット内の宛先アドレス以外の他の情報を使用する。いくつかの暗示宛先ルーティング技法は、例えば、ネットワークを通した種々のルートを定義するグラフが定義され、次いで、特定のデータパケットがネットワークを通してルートされるであろう方式を示すために使用される、グラフルーティングと呼ばれる概念を使用する。グラフルーティングの使用により、各データパケットは、特定のパケットのためにネットワーク内でルーティングを行うために使用されるグラフを識別する、グラフ識別子(グラフID)の形態で、ネットワークルーティング情報を提供される。場合によっては、グラフルーティングを使用するネットワークルーティングプロトコルはまた、パケットの中で提供されるネットワークルーティング情報内に1つ以上の宛先アドレスも含むが、これらのアドレスは、パケットのネットワークルーティング情報内のグラフIDまたは他の情報と併せて使用され、したがって、それら自体で、かつ独力で、通信ネットワーク内でルーティングを行うために十分ではない。当然ながら、グラフルーティングは、暗示宛先ルーティング技法の一実施例にすぎない。
実際に、多くのメッシュ無線ネットワークは、通信スタックまたはネットワーク内のデバイスの電力(バッテリ)容量に過度な負荷をかけることなく、接続性を確保するように、データパケットがネットワークを通して特定の方式でルートされることを確実にする必要があるため、およびこれらのネットワークは、ルーティングに宛先アドレスを使用せず、または使用する場合は、ネットワーク内のデバイスの場所に依存する方式で宛先アドレスを割り当てず(アドレスがネットワークトポロジー依存性ではない)、それにより、宛先アドレスのみに基づいてネットワークルーティングを行うことを困難にするため、これらのネットワークは、グラフルーティング技法等の暗示ネットワークルーティング技法を使用する。これらの理由により、ほとんどのメッシュネットワークルーティングプロトコルは、IPアドレスルーティング等の明示宛先ルーティングを使用せず、実際には、そのようなルーティングプロトコルと互換性がない。
一般的に言えば、メッシュネットワークは、各ノードが各自のデータを捕捉して広めるだけでなく、他のノードのための中継としての機能も果たさなければならず、したがって、各ノードが、ネットワーク内でデータを伝搬するように協働しなければならない、あるタイプのネットワーキングである、メッシュネットワーキング(トポロジー)を使用する。無線メッシュネットワーク(WMN)は、メッシュトポロジーにおいて組織化される無線ノードで構成される通信ネットワークである。無線メッシュネットワークはしばしば、メッシュクライアント、メッシュルータ、およびゲートウェイを含む。メッシュクライアントが、しばしば、ラップトップ、携帯電話、および他の無線デバイスである一方で、メッシュルータは、インターネットに接続し得るが、その必要はない、ゲートウェイを往復してトラフィックを転送する。単一のネットワークとして稼働する無線ノードの受信可能域は、メッシュクラウドと呼ばれることもある。このメッシュクラウドへのアクセスは、無線ネットワークを作成するように相互と調和して稼働する無線ノードに依存している。メッシュネットワークは、信頼性があり、冗長性を提供する。1つのノードがもはや動作できなくなったとき、他のノードは、直接的に、または1つ以上の中間ノードを通して、依然として相互と通信することができる。メッシュネットワークルーティング技法の実施例は、ZigBeeネットワークによって使用されるアドホックオンデマンド距離ベクトルルーティング、およびWirelessHARTネットワークで採用されるグラフルーティングを含む。AODVでは、宛先デバイスを見出すために、デバイスが、ルート要求をその隣接デバイス等の全てにブロードキャストする。次いで、隣接デバイスは、宛先に到達するまで、要求をそれらの隣接デバイス等にブロードキャストする。いったん宛先に到達すると、それは、ソースに戻る最低費用の経路を辿るユニキャスト伝送を介して、そのルート返信を送信する。いったんソースが返信を受信すると、経路における次のホップおよび経路費用を用いて、宛先アドレスのそのルーティングテーブルを更新するであろう。経路費用は、距離に対応するホップの数を含んでもよい。
ここで図1を参照すると、異なる通信ネットワークと関連付けられる複数の異なる物理ネットワーク内で、またはそれにわたって、データフレームまたはデータメッセージをルートするために、複数の異なるネットワークルーティングプロトコルのネットワークルーティング情報を使用する、通信方法を実装するように使用され得る、通信システム例5が図示されている。この実施例では、本通信方法は、WirelessHART通信ネットワーク等のメッシュネットワークルーティングプロトコルまたは非ネットワークトポロジーベースのアドレス指定プロトコルのような、暗示宛先ルーティングプロトコル等の第1のネットワークルーティングプロトコルを使用するルーティングをサポートしない、1つ以上の通信ネットワークを介して、IPプロトコル、とりわけ、IPv6ネットワークプロトコルのような、明示宛先ルーティングプロトコルまたはネットワークトポロジーアドレスベースのプロトコル等の第1のネットワークルーティングプロトコルを使用して作成される、データフレームをルートする、または送信するために使用されるであろう。したがって、一般的に言えば、本明細書で提供される実施例で説明される第1のネットワークルーティングプロトコルは、(明示宛先ルーティングプロトコルである、およびネットワークトポロジーアドレス指定ベースのルーティングプロトコルである)IPアドレス指定を使用するIPv4またはIPv6ネットワークルーティングプロトコル等のIPネットワークルーティングプロトコルとなり、このIPアドレス指定は、例えば、TCP/IPプロトコル、UDP/IPプロトコル、またはICMP/IPプロトコル(全て、概して本明細書では、IPネットワークルーティングプロトコルと呼ばれる)であってもよいが、それらに限定されない。また、第2のネットワークルーティングプロトコルは、暗示宛先ルーティングプロトコルまたは非IPネットワークルーティングプロトコル、例えば、IPアドレス、またはIPルーティングあるいはネットワークトポロジーベースのアドレス指定ルーティングプロトコルを使用またはサポートしない、ネットワークルーティングプロトコルとして、以下で提供される実施例で説明されるであろう。そのようなプロトコルの実施例は、WirelessHARTプロトコル、ZigBeeプロトコル等を含む。しかしながら、ネットワークルーティングプロトコルの他のタイプおよび特定の実施例を、本明細書で説明される第1および第2のネットワークルーティングプロトコルとして使用することができ、本明細書で説明される第1および第2のネットワークルーティングプロトコルは、それぞれ、IPおよび非IPプロトコルに限定されないことが理解されるであろう。例えば、本明細書で説明される通信およびルーティング技法は、第1の暗示宛先ルーティングプロトコル、または非IPネットワークルーティングプロトコルあるいは非ネットワークトポロジーアドレス指定ベースのプロトコルのデータパケットが、第2の暗示宛先ルーティングプロトコル、または非IPネットワークルーティングプロトコルあるいは非ネットワークトポロジーアドレス指定ベースのプロトコルを使用する通信ネットワーク上で送信されることを可能にするために、使用することができる。別の実施例として、本明細書で説明される通信およびルーティング技法は、IPネットワークルーティングプロトコルではない第1の明示宛先ルーティングプロトコルのデータパケットが、第2の明示宛先ルーティングプロトコル(IPまたは非IPベース)を使用する通信ネットワーク上で送信されることを可能にするために使用することができ、または、第1の暗示宛先、非IP、または非ネットワークトポロジーベースのアドレス指定ネットワークルーティングプロトコルのデータパケットが、例えば、Pネットワークルーティングプロトコルではない、第2の明示宛先ルーティングプロトコルを使用する通信ネットワーク上で送信されることを可能にするために使用することができる。当然ながら、第1および第2のタイプのネットワークの他の組み合わせも、本明細書で説明される通信およびルーティング技法を実装するために使用することができる。
一般的に言えば、図1の通信システム5は、IPネットワークルーティングプロトコルまたは非IPネットワークルーティングプロトコルのいずれかを実装し得る1つ以上の他の物理ネットワークに接続する、インターネット10の形態でIP通信ネットワークを含む。この場合、インターネットネットワーク10上の通信は、IPv6ネットワークルーティングプロトコルを使用するが、インターネット10上の通信はまた、または代わりに、IPv4ネットワークルーティングプロトコルまたは他のIPルーティングプロトコルを使用することができると推定されるであろう。図1のインターネット10に接続されているものとして図示される通信ネットワークは、WirelessHARTネットワーク12、ZIGBEEネットワーク13、Bluetooth(登録商標)ピコネット14、セルラーネットワーク15、および無線ローカルエリアネットワーク(WLAN)/ローカルエリアネットワーク(LAN)16を含む。理解されるように、ネットワーク12〜16は、その中でネットワーク通信を行うように、異なるネットワークルーティングプロトコル(本明細書ではルーティングプロトコルとも呼ばれる)を実装または使用してもよく、これらの通信を行うために異なるデータリンクおよび物理層プロトコルを使用してもよい。Bluetooth(登録商標)ネットワーク、WLAN/LANネットワーク、およびセルラーネットワーク等を用いた、多くの場合において、通信ネットワークが、IPネットワークルーティングまたはネットワークトポロジーアドレス指定ルーティングあるいは別の明示宛先ルーティングプロトコルをサポートしてもよい一方で、WirelessHARTネットワーク等を用いた他の場合においては、通信ネットワークが、ネットワークルーティング活動にIPアドレス指定を使用しなくてもよいため、このネットワークは、IPネットワークルーティングプロトコルまたはネットワークトポロジーアドレス指定ルーティングあるいは他の明示宛先ルーティングプロトコルを使用またはサポートしなくてもよい。例えば、上述のように、WirelessHARTネットワークは、典型的には、WirelessHARTネットワーク内でメッセージのルーティングを行うために、グラフルーティングと呼ばれる概念を使用する。
以下で説明される通信方法は、WirelessHARTネットワーク12内のデバイスが、IPv6またはIPv4データフレームを作成すること、および非IPネットワークルーティングプロトコルではないWirelessHARTネットワーク12のネットワークルーティングプロトコルが、ルーティング目的でIPアドレス指定を使用またはサポートしないため、このネットワークルーティングプロトコルを使用して、WirelessHARTネットワーク12上でこれらのデータフレームを伝達することを可能にするために、使用されてもよい。また、理解されるように、WirelesHARTネットワークが、メッシュネットワークルーティングプロトコルを実装する一方で、インターネット10および1つ以上の他の通信ネットワーク13〜16は、2点間ルーティングプロトコル等の非メッシュネットワークルーティングプロトコルを使用してもよい。いずれにしても、この通信方法を使用して、これらのIPv6データフレームは、WirelessHARTネットワーク12内の他のデバイスに、または図1で図示される他の通信ネットワーク13〜16のうちの1つ以上の中のデバイスに送信され、それらによって復号されてもよい。同様に、以下で説明される通信方法は、WirelessHARTネットワーク12内のデバイスが、IPv6データフレームとしてIPv6データフレームを受信して復号し、したがって、デバイスがIPネットワークルーティング準拠通信ネットワーク(すなわち、IPネットワークルーティング機構を使用する通信ネットワーク)に接続された場合と本質的に同様に、これらのデータフレームを使用し、それらに応答することを可能にするために使用されてもよい。この場合、WirelessHARTネットワーク12内の受信デバイスは、WirelessHARTネットワーク12内の別のデバイスから、または図1の他のネットワーク13〜16のうちのいずれか1つの中のデバイスから、IPv6データフレームを受信してもよい。
一般的に言えば、本明細書で説明される通信方法を実装するために、IPv6使用可能WirelessHARTゲートウェイ11aは、WirelessHARTネットワーク12をインターネット10に接続する。同様に、図1で図示されるように、他のゲートウェイデバイス11b、11c、11d、および11eは、ZigBeeネットワーク13、Bluetooth(登録商標)ピコネット14、セルラーネットワーク15、およびWLAN/LAN16のそれぞれを、インターネット10に接続する。ゲートウェイデバイス11ならびに通信ネットワーク12〜16内の1つ以上のデバイスは、以下でさらに詳細に説明される通信方法のステップまたは態様を実装するように動作して、例えば、IPベースの通信が、WirelessHARTネットワーク12内の2つのデバイス(またはアプリケーション)間で、またはWirelessHARTネットワーク12内の第1のデバイス(またはアプリケーション)とネットワーク13〜16のうちの別のネットワーク内の第2のデバイス(またはアプリケーション)との間で起こることを可能にしてもよい。
より具体的には、WirelessHARTネットワーク12内のデバイス(ゲートウェイデバイス11aを含む)は、IPネットワークルーティングプロトコル通信を使用またはサポートしないネットワークルーティングプロトコルおよび/またはデータリンク層プロトコルを使用する、通信ネットワークの中または外へIPデータフレームをシームレスに送信することができるよう、非IPネットワークルーティング情報およびIPネットワークルーティング情報の両方を含むように構成されるデータフレームを使用して、WirelessHARTネットワーク12の物理層を介してデータフレームを受信および伝送するように動作してもよい。実施例として、図1のIPv6使用可能WirelessHARTゲートウェイ11aは、インターネット10を介して、IPv6ネットワークルーティングプロトコルに従って情報とともにカプセル化されたデータフレームを受信してもよく、そのようなデータフレームは、インターネット10内の802.3プロトコルデータリンク層および/または任意の標準あるいはサポートされた物理層を使用して、インターネット10上で通信チャネルを通して伝送される。IPv6使用可能WirelessHARTゲートウェイ11aによってインターネット10から受信されるデータフレームは、本来、例えば、標準IPv6データフレームとして、ZIGBEEネットワーク13、Bluetooth(登録商標)ピコネット14、セルラーネットワーク15、またはWLAN/LAN16のうちのいずれか1つの中で動作するデバイス内のアプリケーションによって伝送または作成されていてもよい。次いで、IPv6使用可能WirelessHARTゲートウェイ11aは、WirelessHART準拠ネットワークルーティングプロトコルを使用して、WirelessHARTネットワーク12内で動作するデバイス内のネットワーク位置(例えば、アプリケーション)へ、受信したIPv6データフレームを伝送し、それにより、ネットワーク13〜16のうちの1つの中に位置するデバイスとWirelessHARTネットワーク12内に位置するデバイスとの間で、IPv6メッセージまたはデータフレームを送達するように動作してもよい。同様に、WirelessHARTゲートウェイ11aは、WirelessHARTネットワーク12内のIP使用可能デバイスによって作成され、したがって、IPv6ネットワークルーティングプロトコルに従って最初にカプセル化され、次いで、修正され、本明細書でさらに詳細に説明される方式で構成されるWirelessHARTネットワークルーティングプロトコルを使用して、WirelessHARTネットワーク12を介してルートされる、データフレームまたはメッセージを受信してもよい。WirelessHARTゲートウェイ11aは、WirelessHARTネットワーク12によって使用される802.15.4データリンク層および物理プロトコルを介して、これらのデータフレームまたはメッセージを受信してもよい。次いで、IPv6使用可能WirelessHARTゲートウェイ11aは、IPネットワークルーティングまたはアドレス指定を使用して、データフレームを他のネットワーク13〜16のうちの1つの中のデバイスに送信するために、受信したメッセージまたはデータフレーム内のIPネットワークルーティング情報を使用してもよい。当然ながら、この場合、IPv6使用可能WirelessHARTゲートウェイ11aは、標準802.3物理層通信プロトコルおよびIPv6ネットワークプロトコル技法を使用して、インターネット10を介して、受信したIPv6データフレームをアプリケーションまたはデバイスに伝送するように動作する。
理解されるように、WirelessHARTネットワーク12内のデバイスは、802.15.4標準に準拠する通信チャネルを介して、データフレームを受信および伝送してもよい。しかしながら、以下でさらに詳細に説明されるように、WirelessHARTネットワーク12上のIPv6使用可能WirelessHARTゲートウェイ11aまたは他のIP使用可能デバイスは、WirelessHARTネットワーク12上でIPv6データフレームを送信するとき、例えば、6LoWPAN標準に従って、IPv6データフレームをいくつかの断片に断片化してもよい。この場合、デバイスは、WirelessHARTネットワークルーティングプロトコルおよび802.15.4データリンク層プロトコルに準拠する通信チャネルを介して、IPv6データフレーム断片をWirelessHARTデバイスに伝送してもよい。この場合、IPv6使用可能WirelessHARTゲートウェイ11aは、WirelessHARTネットワーク12上でIPv6データフレーム断片を送信するように、WirelessHARTネットワークルーティングプロトコルに対応するヘッダ情報とともに、これらのIPv6データフレーム断片をカプセル化してもよい。その後、WirelessHARTプロトコルヘッダに含まれる情報は、IPv6データフレーム断片を意図したWirelessHARTデバイスまたはアプリケーションにルートするために、WirelessHARTネットワーク12内の1つ以上のWirelessHARTデバイスによって利用されてもよい。有意なこととして、WirelessHARTネットワーク12内で動作するWirelessHARTデバイスは、非IPアプリケーションデータまたはペイロードを伝達または交換し続けてもよい。これは、ネットワーク内非IP通信、ならびにネットワーク内および間両方のIP通信を同時に可能にしながら、後方互換性を推進する。
ネットワーク上でルートされている特定のWirelessHARTメッセージまたはデータフレームが、標準WirelessHARTメッセージであるか、またはカプセル化IPv6データメッセージであるかを、ネットワーク12上のWirelessHARTデバイスが認識することを可能にするために、メッセージを生成するIPv6使用可能WirelessHARTゲートウェイ11aまたは他のデバイスは、そのデータフレームがIPv6データフレームまたは標準WirelessHARTデータフレームであることを示すフラグを、データフレームのWirelessHARTネットワークルーティング情報の中に含んでもよい。フラグは、WirelessHARTネットワークルーティング情報の中に1つ以上のデータフィールドを備えてもよい。好ましくは、非IP使用可能およびIP使用可能WirelessHARTデバイス間の後方互換性および相互運用性を推進するために、フラグは、WirelessHARTネットワークルーティング情報の中の以前に使用されていないデータフィールドを利用してもよい。
理解されるように、IPv6データフレームが断片化され、WirelessHARTネットワーク12上で送信されるとき、図1のWirelessHARTネットワーク12内のIPv6使用可能WirelessHARTゲートウェイ11aまたは他のデバイスは、802.15.4通信プロトコルに従って動作する通信チャネルを介して、WirelessHARTネットワークルーティングプロトコル情報とともにカプセル化されたIPv6データフレーム断片を受信するであろう。IPv6データフレーム断片は、上記で示されるように、6LoWPAN標準に準拠してもよい。次いで、IPv6使用可能WirelessHARTゲートウェイ11aまたは他のWirelessHARTデバイスは、データフレームがIPv6データフレームに対応することを示すフラグを、データフレーム断片のWirelessHARTネットワークルーティング情報の中で検出してもよい。この場合、次いで、IPv6使用可能WirelessHARTゲートウェイ11aまたは他のWirelessHARTデバイスは、IPv6データフレームを生成するように6LoWPANデータフレームを組み立て直す。次いで、WirelessHARTゲートウェイ11aは、標準IPv6通信を使用して、IPv6データフレームを、ZIGBEEネットワーク13、Bluetooth(登録商標)ピコネット14、セルラーネットワーク15、および/またはWLAN/LAN16内のデバイスに送信するために、IPv6データフレームおよび標準IPルーティングソフトウェアおよびハードウェアのIP宛先アドレス情報を使用してもよい。当然ながら、組み立て直されたデータフレームのIPアドレスが、受信デバイス内のアプリケーションを示す場合、データフレームは、IPv6データフレームとしてアプリケーションに送達され、標準IPv6準拠技法に従って処理される。
IPv6使用可能通信は、概して、WirelessHARTネットワーク12である非IPネットワークに関して起こるものとして図1で説明されているが、これらの場合において、ネットワーク13〜16上のデバイスが、WirelessHART物理層、データリンク層、およびネットワークルーティング層プロトコルの代わりに、これらの他のネットワークによってサポートまたは特定される、物理層、データリンク層、およびネットワークルーティング層プロトコルを使用するであろうことを除いて、本明細書で説明される同一の技法を使用して、ZIGBEEネットワーク13、Bluetooth(登録商標)ピコネット14、セルラーネットワーク15、および/またはWLAN/LAN16(これらのネットワークが、例えば、非IPネットワークルーティングプロトコルを使用するとき)内等の、他の非IPネットワーク内でIPv6ベースの通信を行うために、同一の技法を使用できることが理解されるであろう。
非IPネットワーク、すなわち、ネットワークルーティングを行うためにIPネットワークルーティングプロトコルを使用しないネットワークを介して、IPデータフレームを符号化してルートすることができる、特定の方式をさらに十分に説明するために、データフレーム全般、具体的にはIPデータフレームが作成され、通信ネットワークを介してルートされる、一般的な方式を説明することが役立つであろう。まず第1に、データフレームが作成されてルートされる、いくつかの異なる層またはレベルがあると留意することが重要であり、これらの異なるレベルが相互に関連し、ネットワーク通信を行うために現在使用されている種々の異なるネットワークおよび通信プロトコルで使用される方式を理解することが必要である。一般的に言えば、通信ネットワーク上で送信されるデータフレームは、典型的には開放型システム間相互接続(OSI)モデルを使用して定義される、いくつかの通信スタック層と関連付けられる、またはそれらによって提供される情報を含む。
一般的に言えば、OSIモデルは、7つの基本層を使用してネットワークプロトコルを実装するためのネットワーキングフレームワークを定義する。メッセージを作成し、通信チャネル上で次のステーションに送信するように、1つのステーションの中の上層から始まって、そのステーションの中の底層へ進んで、1つの層から次の層へ制御が渡される。受信ステーションにおいて、制御が底層に提供され、受信したメッセージの復号を行うように、上層まで階級を再び横断する。一般的に言えば、OSIモデルの7つの層は、アプリケーション層(層7と呼ばれる上層)、プレゼンテーション層(層6)、セッション層(層5)、トランスポート層(層4)、ネットワーク層(層3)、データリンク層(層2)、および物理層(層1)を含む。概して、アプリケーション層は、アプリケーションおよびエンドユーザプロセスをサポートする。アプリケーション層における全ては、アプリケーション特有であり、アプリケーション層(またはアプリケーション層におけるアプリケーション)は、通信相手、サービスの質、ユーザ認証、プライバシー、データ構文への制約等を定義してもよい。この層はまた、ファイル転送、Eメール、および他のネットワークサービスのためのアプリケーションサービスも提供する。構文層と呼ばれることもある、プレゼンテーション層は、アプリケーション形式からネットワーク形式へ、およびその逆も同様に変換することによって、データ表現(例えば、暗号化)の差異からの独立を提供する。したがって、プレゼンテーション層は、データを、例えば、このデータが符号化または暗号化されている場合にアプリケーション層が受け入れることができる形式に変換するように稼働する。したがって、この層は、ネットワークにわたって送信されるデータをフォーマットして暗号化し、互換性の問題を低減または排除する。
セッション層は、アプリケーション間の接続を確立し、管理し、および終了させ、概して、通信の両端でアプリケーション間の会話、交換、および対話を設定し、協調させ、終了させる。セッション層はまた、セッションおよび接続協調を扱う。トランスポート層は、終端システムまたはホスト間のトランスペアレントなデータの転送を提供し、終端間エラー回復およびフロー制御に関与する。したがって、この層は、完全なデータ転送を確保する。ネットワーク層は、種々のデータリンク上の一連の交換が、どのようしてネットワーク内の任意の2つのノード間でデータを送達することができるかを説明する。ネットワーク層は、ネットワークのアドレス指定、切替、およびルーティング構造を定義し、ノードからノードへデータを伝送するための仮想回路として知られている、論理経路を作成または定義する。重要なこととして、ネットワーク層は、ネットワークルーティングおよび転送機能、ならびにネットワークアドレス指定方式、インターネット機能、エラー処理、ふくそう制御、およびパケット順序制御を定義する。
データリンク層は、データパケットをビットに符号化し、およびビットから復号し、特定の媒体上で伝送されるデータビットの論理的組織を説明する。この層は、物理層におけるパケットのフレーミング、アドレス指定、およびチェックサム(エラー処理)を定義する。データリンク層は、概して、媒体アクセス制御(MAC)層および論理リンク制御(LLC)層を含む、2つの副層に分割される。MAC副層は、ネットワーク上のコンピュータが、どのようにしてデータへのアクセスおよびこのデータを伝送する許可を獲得するかを制御する。LLC層は、フレーム同期化、フロー制御、およびエラーチェックを制御する。物理層は、電気および機械レベルでネットワークを通して、例えば、電気インパルス、光、または無線信号を介して、ビットストリームを伝える。物理層は、ケーブル、カード、およびネットワークハードウェアの物理的態様の定義を含む、キャリア上でデータを送信および受信するハードウェア手段を提供する。
重要なこととして、いくつかのプロトコルが、最も顕著には、トランスポート層(層4)、ネットワーク層(層3)、データリンク層(層2)、および物理層(層1)を含む、これらの層のうちのいくつかのために定義されている。例えば、ユニバーサルデータグラムプロトコル(UDP)、伝送制御プロトコル(TCP)、およびインターネット制御メッセージプロトコル(ICMP)を含む、種々のトランスポート層プロトコルが存在する。これらのプロトコルは、例えば、IPネットワーク層プロトコルとともに使用される、特定のトランスポート層規則およびプロシージャを提供する。加えて、最も広範には、IPv4およびIPv6ネットワーク層プロトコル等のIPプロトコル、およびWirelessHARTネットワーク層プロトコルを含む多くの非IPネットワーク層プロトコルを含む、種々のネットワーク層プロトコルが存在する。ネットワーク層プロトコルは、概して、ネットワーク内の1つの論理点からネットワーク内の別の論理点へメッセージまたはデータフレームをルートするために使用される規則およびプロシージャを定義し、なおもさらに、ネットワークルーティングが起こることを可能にするためにデータパケットの中へ配置される必要があるネットワーク層情報を定義する。ネットワーク層プロトコルはまた、本明細書ではネットワークルーティングプロトコルとも呼ばれる。なおもさらに、例えば、802.3データリンク層プロトコル(Ethernet(登録商標))、802.15.4物理層プロトコル(例えば、WirelessHART物理層プロトコルによって使用される)等を含む、種々の物理層またはデータリンク層プロトコルが定義されている。種々の異なるネットワークが、異なるデータリンク層プロトコルを使用しながら、同一のネットワーク層プロトコルを使用してもよく、または逆も同様であることが理解されるであろう。また、あるデータリンク層プロトコルは、あるネットワーク層プロトコルと互換性がなくてもよい。この問題の一般的な理由は、ネットワーク層プロトコルが、データリンク層プロトコルによって許容されるメッセージサイズよりも長い最大メッセージサイズまたは長を定義し得ることである。
本明細書で説明される通信技法は、上記で説明されるいくつかの層を利用してもよいが、いくつかの実装では、本通信方法は、「層状」アプローチを避け、命令の単一モノリシックブロックとして以下で説明される機能性を実装してもよい。このアプローチは、メモリが制約されたデバイスにおいて本通信方法を実装するときに特に魅力的である。しかしながら、命令の単一モノリシックブロックは、依然として、本明細書で説明される層状アプローチで使用される要素またはスタック要素を含む。
典型的には、コンピュータデバイスに常駐するコンピュータデバイスおよび/またはアプリケーションは、デバイスが接続される通信ネットワークの物理層上で送信されるメッセージを作成(符号化)するようにOSIモデルの種々の層を実装するか、または下方に横断するため、あるいは通信ネットワークの物理層上で受信されるメッセージを復号するようにOSIモデルの種々の層を上方に横断するために、ネットワークまたは通信スタックを利用してもよい。したがって、デバイスの通信スタックは、データフレームを伝送する前に特定のプロトコルに従ってデータフレームをパッケージ化またはカプセル化するように、あるいはデバイスにおいて受信されるデータフレームを非パッケージ化または復号して、復号されたメッセージを、メッセージが方向付けられるアプリケーションに提供するように、スタックの種々の層における種々のプロトコルによって定義されるプロシージャを実装する、プロセッサにおいて実行されるアプリケーションを備えてもよい。プロトコルに従ってデータフレームをパッケージ化することは、データフレームに現在作用している層のプロトコルによって定義されるようなヘッダおよび/またはトレーラ情報を付加し、次いで、そのデータフレームをスタックの次の下層に渡すことを含んでもよい。同様に、データフレームを非パッケージ化することは、スタックの特定の層のデータフレームからヘッダおよび/またはトレーラ情報を除去および復号し、非パッケージ化されたデータフレームをスタックの中の次の上位層に渡すことを含む。スタックの中の特定の層のデータフレームのヘッダおよび/またはトレーラセクションの中の情報は、典型的には、適切な層における特定のプロトコル標準によって定義される規則に準拠する。例えば、TCP/IPプロトコルに従ってデータフレームをパッケージ化することは、(スタックのトランスポート層において)TCPヘッダをデータフレームに付加し、後に、(スタックのネットワーク層において)IPヘッダを結果として生じるデータフレームに付加することを含む。TCPヘッダは、TCPプロトコルに準拠し、IPヘッダは、例えば、IPv4またはIPv6標準に準拠する。IPv6プロトコルのうちの特定のものが、http://www.ietf.org/rfc/rfc2460.txtで入手可能な仕様で説明されている。他のネットワーク層プロトコルの実施例は、WirelessHARTプロトコル、ZigBeeネットワーク層プロトコル等を含む。当然ながら、特定のネットワークプロトコルに従ってパッケージ化されるデータフレームは、802.3標準(Ethernet(登録商標))、802.11a/b/g/n標準(Wi−Fi)、802.15.4標準、802.16標準(Wimax)、CDMA、GSM、LTE等のセルラー標準等の一組のデータリンク層プロトコルまたは物理層プロトコルのうちのいずれか1つに準拠する通信チャネルを介して、伝送されてもよい。
図2Aは、データフレームまたはデータメッセージがデバイスの通信スタックの種々のOSI層を通して下方に処理される際に、データフレームまたはデータメッセージを作成する方式を図示する、チャートを描写する。具体的には、(アプリケーション層における)アプリケーションが、アプリケーションによって任意の所望の方式で定義される一組のビットおよびバイトとして、元のデータメッセージ20を作成し、このメッセージをトランスポート層に提供する。概して、メッセージを層に「提供すること」は、層のアプリケーションプログラミングインターフェース(API)または「ラッパ」を呼び出すことによって達成されてもよい。当業者はまた、層の「ラッパ機能を呼び出すこと」によってメッセージを提供してもよい。(ここで、セッションおよびプレゼンテーション層の詳細は、詳細に論議されず、スタックのトランスポート層で遂行されると仮定されるであろう。)スタックのトランスポート層は、(図2で図示されるように)アプリケーションからのデータメッセージをペイロードとして扱い、使用されているトランスポート層プロトコルによって定義されるように、ヘッダ(およびおそらくトレーラ)情報をそこに付加する。本明細書ではトランスポート層情報22と呼ばれる、ヘッダ(およびおそらくトレーラ)情報は、セッション情報の定義(例えば、セッションID)、使用されているトランスポートプロトコルのタイプの定義または指示等を含んでもよい。結果として生じるメッセージ23は、図2で図示されるように、トランスポート層からのメッセージ23をペイロードとして扱う、スタックのネットワーク層に提供される。ネットワーク層において、ネットワークルーティング情報またはネットワークルーティングプロトコル情報24は、付加的なヘッダおよびトレーラ情報(ヘッダセクションとして図2で図示される)の形態でペイロード23に付加される。ネットワークルーティング情報24は、例えば、ネットワークソースおよび宛先の識別(IPネットワークルーティングプロトコルのソースIPアドレスおよび宛先IPアドレス、またはWirelessHARTネットワークルーティングプロトコルのグラフID等)、タイムアウト情報(有効期限情報)、チェックサム情報、メッセージまたはペイロード長情報、種々の目的で使用されるフラグ等を含んでもよい。
その後、ネットワーク層によって作成されるようなメッセージは、データリンク層に提供され、そこで、ネットワーク層によって作成されたメッセージは、ペイロード25として扱われ、付加的なデータリンク情報26が、通信ネットワークで使用されているデータリンクプロトコルによって定義されるように、ヘッダおよび/またはトレーラセクションの形態で追加される。具体的には、データリンク層は、典型的には、デバイスソースおよび宛先識別(ソースおよび宛先MACアドレス等)の形態のデータリンク情報、停止および開始ビット等の媒体制御情報、フロー制御ビット、長さ情報、チェックサム情報、および順序情報を含む断片化情報等を追加する。場合によっては、スタックの物理層と関連付けられるアプリケーションは、物理層プロトコル情報をデータフレームに追加する。
データリンク層によって作成されるようなメッセージは、物理層上へ出力され、物理層上で、データリンクヘッダ情報26の中の宛先アドレスによって定義されるようなデバイスへ送信される。理解されるように、デバイス内で復号されているとき、メッセージは、受信デバイスのスタックの上方に進み、スタックの各層は、メッセージを復号し、メッセージの適切な処理を行うために層によって使用される適切なヘッダおよびトレーラ情報を取り除く。したがって、受信デバイスにおいて、スタックのデータリンク層は、メッセージが正しく受信されており、(例えば、データリンク情報26内のMACアドレスによって定義されるような)このデバイスにアドレス指定されているかどうかを判定するように、データリンクヘッダおよびトレーラ情報26を取り除いて復号するであろう。もしそうであれば、データリンク層におけるメッセージのペイロード部分25は、送信および受信ネットワークアドレスまたは他のルーティング情報を判定するように、ネットワーク層ヘッダおよびトレーラ情報24を取り除く、ネットワーク層に提供される。スタックのネットワーク層は、このメッセージを受信するものであるネットワーク内の論理点、およびこのメッセージをネットワーク内の正しい点にルートする適切な方式を判定するために、このネットワークルーティング情報を使用してもよい。ネットワーク内のネットワークアドレスまたは論理点が、受信デバイスまたは受信デバイス内のアプリケーションと関連付けられると仮定すると、次いで、残りのペイロード23が、残りのメッセージ20をアプリケーション層内の適切なアプリケーションに与える前に、メッセージを処理するためにスタックのトランスポート層によって使用される、メッセージ、データタイプ等で使用するトランスポート層プロトコルを判定するように、トランスポート層情報22を取り除いて復号する、トランスポート層に提供される。
理解されるように、ネットワークルーティング情報(またはネットワークプロトコル情報)は、概して、データフレームの意図した受信側であるコンピュータデバイスまたはアプリケーションの論理アドレスに対応する、情報を含む。データフレームのネットワークルーティング情報はまた、データフレームを伝送したコンピュータデバイスの論理アドレスに対応する、情報を含んでもよい。例えば、データフレームをカプセル化するIPネットワークプロトコルのIPヘッダは、ソースIPアドレスおよび宛先IPアドレスを含む。ソースIPアドレスは、データフレームを伝送するコンピュータデバイスまたはアプリケーションの論理アドレスに対応し、宛先IPアドレスは、データフレームの意図した受信側であるコンピュータデバイスまたはアプリケーションの論理アドレスに対応する。(コンピュータデバイスは、1つよりも多くの論理IPアドレスを有してもよい。)ルータ等の中間デバイスは、例えば、データフレームを、データフレームの意図した受信側であるコンピュータデバイスに「ルートする」か、または転送するために、IPアドレスを利用する。
しかしながら、本明細書で説明される通信方法は、第1のネットワークルーティングプロトコルまたは技法(明示宛先またはアドレス指定ルーティング技法、非メッシュネットワークルーティング技法、あるいはネットワークトポロジーアドレス指定ベースのルーティング技法等)に準拠し、かつそれらを使用して復号可能であるが、第2の異なるネットワークルーティングプロトコルまたは技法(暗示宛先またはアドレス指定ルーティング技法、メッシュネットワークルーティング技法、あるいは非ネットワークトポロジーアドレス指定ベースの技法等)を使用する通信ネットワークを介して送信される、データメッセージを作成する能力を提供するように、上記で説明されるデータフレーム作成および復号プロセスを変更する。一般的に言えば、新しい通信方法は、メッセージが通信ネットワーク上で送信される際にメッセージに符号化される、複数の異なるネットワークルーティングプロトコルと関連付けられるネットワークルーティング情報またはネットワークプロトコル情報を有する、メッセージを作成する。この特徴は、メッセージが、第1のネットワークルーティングプロトコルを使用して送信されるメッセージとして作成されることを可能にするが、次いで、メッセージが、実際には、第2のネットワークルーティングプロトコルを使用するか、またはそれに準拠する通信ネットワーク上で送信されることを可能にする。加えて、メッセージは、アプリケーション層までメッセージを復号する必要なく、異なるネットワークルーティングプロトコルを使用する2つの通信ネットワーク間の接合点に配置されるゲートウェイデバイスにおいて容易に変換されてもよい。代わりに、ゲートウェイデバイスは、第2のネットワークから第1のネットワークへメッセージを送達するときに、第2のネットワークルーティングプロトコル情報を取り除くか、または第2のネットワーク内のデバイスによって受信されるようにメッセージを第2のネットワークの中へ送信するときに、第2のネットワークルーティングプロトコル情報を追加する必要しかない。
図2Bおよび3は、例えば、WirelessHART通信ネットワーク上でルートされ、IPデータフレームとして、WirelessHART通信ネットワーク上でIP使用可能WirelessHARTゲートウェイ等の別のIP使用可能WirelessHARTデバイスによって復号されることが可能である、IPデータフレームをIP使用可能WirelessHARTデバイスの中で作成する方法を説明するために使用されるであろう。具体的には、図2Bが、データフレームが本明細書で説明される通信技法に従って作成される際のこのデータフレームを図示する一方で、図3は、図2Bのデータフレームを生成するために使用される通信技法のステップを図示するフローチャート40を描写する。
具体的には、図3のフローチャート40のブロック41では、メッセージ30が、IPv4またはIPv6プロトコルによって提供されるもの等の標準IPルーティングを使用して符号化および送信されるであろうと仮定して、WirelessHARTデバイスのアプリケーション層におけるアプリケーションが、データメッセージ30(図2B)を生成する。所望であれば、WirelessHARTデバイスのアプリケーション層内のこのアプリケーションまたは別のアプリケーションは、最初に、DNS(ドメイン名システム)サービスを実施または実装するように、およびデバイス、ウェブサイト、サーバ、ルータ、Eメール受信側等の特定のネットワークエンティティのIPアドレス(例えば、IPv6またはIPv4アドレス)をWirelessHARTデバイスに提供するようにゲートウェイデバイスに要求するメッセージを、(WirelessHARTネットワークルーティングプロトコルを使用するWirelessHARTネットワーク上で)ゲートウェイデバイスに送信してもよい。この場合、WirelessHARTデバイスは、最初に、ウェブサイトホスト名またはEメールサーバホスト名、あるいはDNSサービスによって使用される任意の他の名前等のネットワークエンティティ(例えば、第2またはIPネットワーク内のエンティティ)のドメイン名を提供してもよい。DNSサービス(IPネットワーク上のゲートウェイまたは別のデバイスにおいて実装され得る)を介してネットワークエンティティのIPアドレスを取得した後、次いで、ゲートウェイデバイスは、WirelessHARTネットワークルーティングプロトコルを使用して、WirelessHARTネットワーク上で、ネットワークエンティティのIPアドレスをWirelessHARTデバイス内のアプリケーションに返信し、次いで、アプリケーションは、IPv6またはIPv4データパケットを使用して通信するために、このIPアドレスを使用してもよい。アプリケーションは、他のIP使用可能デバイスを用いて通信を行うためにIPベースのソケットアドレス指定を使用する、ソケットベースのアプリケーションであってもよい。
いずれにしても、ブロック42では、アプリケーションメッセージが、IP使用可能WirelessHARTデバイスのスタックのトランスポート層の中で処理され、TCPヘッダおよびトレーラ情報等の典型的なIPベースのトランスポート層情報をデータメッセージ30(スタックのトランスポート層で作成されているデータフレームのペイロードセクションとして扱われる)に追加する。
次に、IP使用可能デバイスのスタックのネットワーク層で実施され得るブロック43が、IPソースおよび宛先アドレス情報等のIP準拠ネットワークルーティング情報、データパケット長情報等をデータフレームに追加する。このIPネットワークルーティング情報は、ヘッダ情報34aとして図2Bで図示され、第1のネットワークルーティングプロトコル(この場合はIPネットワークルーティングプロトコル)と関連付けられるか、またはそれによって定義されるものとして例証される。上述のように、IP宛先アドレスは、IP宛先アドレスを判定するようにDNSサービスを行うか、または呼び出すゲートウェイデバイスとの通信を介して、取得されてもよい。次に、所望であれば、図3のブロック44が、IPネットワークルーティングによってサポートされるサイズまたは長さのデータフレームをサポートしない、ネットワークルーティングプロトコル、データリンク層プロトコル、または物理層プロトコルを使用して、ブロック43によって生じさせられたIPデータフレームが通信ネットワーク上で送信されることを可能にするように、ブロック43によって生じさせられたデータフレームを断片化してもよい。そのような断片化は、概して、その中で送信されるデータパケットのサイズまたは長さを、従来のIPネットワークルーティングによってサポートされるサイズよりも小さいサイズに限定する、低出力IPネットワークで一般的である。より低い出力のIPネットワークで使用される、1つの一般的な断片化技法は、あるサイズを超える各IPv6データパケットを、ネットワークのデータリンクおよび物理層プロトコルによってサポートされる長さまたはサイズを有する複数のパケットまたは断片化データフレームに断片化する、6LoWPANプロトコルである。6LoWPAN断片化技法は、本明細書では断片化およびデフラグ目的で使用されるものとして説明されるが、他のタイプの断片化技法も使用することができる。加えて、場合によっては、例えば、第2のネットワークルーティングプロトコルまたは物理ネットワークが、第1のネットワークプロトコルの長さまたはサイズのデータフレームをサポートする場合において、いかなる断片化も必要とされなくてもよい。これらの場合において、ブロック44を省略することができる。
いずれにしても、断片化が行われると仮定すると、ブロック46(第2のネットワークルーティングプロトコルを使用するネットワークルーティングを行うことと関連付けられる、スタックのネットワーク層で実施され得る)が、ブロック44からのデータパケットをペイロードとして扱い、第2のネットワークルーティングプロトコルによって定義されるようなネットワークルーティング情報を各データフレームまたは断片化データフレームに追加する。この点におけるデータパケットは、ブロック43(またはブロック44)によって作成されたパケット35に追加されるヘッダ情報として、第2のネットワークルーティング情報34bを含むものとして図2Bで図示される。この第2のネットワークルーティング情報34bは、例えば、WirelessHARTネットワーク内のグラフルーティングのグラフID、ならびに、例えば、WirelessHARTプロトコルのWirelessHARTネットワークルーティング層によって定義されるような、データパケットの他のネットワークルーティング情報を含んでもよい。当然ながら、他のメッシュネットワーキング、暗示宛先またはアドレス指定、非ネットワークトポロジーアドレス指定ベース、あるいは非IPネットワークルーティングプロトコル等の他のネットワークルーティングプロトコルを、第2のネットワークルーティングプロトコルとして使用することができる。加えて、このレベルでデータパケットに追加されるネットワークルーティング情報の一部として、ブロック46は、基礎的データパケットまたはデータフレーム35が、実際には、第2のネットワークルーティングプロトコルではなく第1のネットワークルーティングプロトコルと関連付けられるデータフレームであることを示すように、ネットワークルーティング情報34bの別様に未使用の部分またはビットの中にフラグ(ビット39として図2Bで図示される1ビットフラグ等)を追加または設定する。より具体的には、典型的には、特定のネットワークルーティングプロトコルによって各データパケットに追加されるネットワークルーティング情報の中に未使用のビットまたはバイトがある。ネットワークルーティングプロトコルを復号するデバイスは、典型的には、復号プロセス中にこれらのビットを無視する。しかしながら、この場合、これらの別様に未使用のビットまたはバイトのうちの1つ以上は、基礎的データパケットが、本来、第1のネットワークルーティングプロトコルまたは第2のネットワークルーティングプロトコルと関連付けられているものであるかどうかを示すフラグとして、使用されてもよい。例えば、第2のネットワークルーティングプロトコルのネットワークルーティング情報34bの中の特定のビットを「1」に設定することにより、基礎的データパケット35がIPv6データパケットであることを示してもよい一方で、第2のネットワークルーティングプロトコルのネットワークルーティング情報の中のこの特定のビットを「0」に設定することは、基礎的データが、本来、第2のネットワークルーティングプロトコルを使用して作成またはカプセル化されているデータ(例えば、本来、WirelessHARTデータフレームとして作成されたデータフレーム)を示してもよい。当然ながら、そのようなフラグまたは指示は、単一のビット、複数のビット、バイト、複数のバイト等の任意の所望の長さであってもよい。
次に、図3のブロック47では、スタックのデータリンク層が、(ヘッダおよび/またはトレーラ情報の形態の)データリンク情報36を、ブロック46によって作成される結果として生じたパケット37に追加してもよく、データリンク層情報36は、第2の通信ネットワークで使用されている特定のデータリンクプロトコルによって定義される。次いで、ブロック48が、第2の通信ネットワークの物理層によって定義されるように、物理層情報38を、ブロック47からの結果として生じたパケットに追加してもよい。次いで、ブロック49が、データパケット(その中に第1および第2の両方のネットワークルーティングプロトコルの両方のネットワークルーティング情報を有する)を送信または伝送してもよい。
一般的に言えば、第2のネットワークルーティングプロトコルを使用する通信ネットワーク(すなわち、第2の通信ネットワーク)内の受信デバイスにおいて、パケットの種々の物理およびデータリンク層情報が、取り除かれて復号され、典型的な方式で使用されるであろう。また、受信デバイスのスタックは、第2のネットワークルーティングプロトコルのネットワークルーティング情報を取り除いて復号する、ネットワーク層を有するであろう。このプロセス中に、受信デバイスのスタックのネットワーク層は、基礎的データパケットが第1または第2のネットワークルーティングプロトコルパケットであるかどうかを示すために、フラグまたは他の指示として使用されている、この第2のネットワークルーティング情報の特定のビットまたはバイトを復号し、その情報をさらなる処理のために使用するであろう。具体的には、フラグまたは指示が、復号されると、基礎的パケットが、第2のネットワークルーティングプロトコルを使用する典型的または通常パケットであることを示す場合、パケットは、第2の通信ネットワークプロトコルに従って動作するスタックのトランスポート層に渡される。他方で、フラグまたは他の指示が、復号されると、例えば、基礎的パケットがIPv6パケットである(すなわち、第1のネットワークルーティングプロトコルと関連付けられる)ことを示す場合には、パケットは、第1のネットワークルーティングプロトコルに従ってパケットの復号およびルーティングを処理する、スタックのネットワーク層に渡される。例えば、パケットがIPv6パケットである場合において、ネットワークスタックは、元のIPv6パケットを形成するように一連の受信したパケットを集結することによって、パケットをデフラグしてもよく、次いで、典型的な方式でトランスポート層復号および処理を行うように、デフラグされたIPv6パケットを、第1のネットワーク通信プロトコルに従って構成されるスタックのトランスポート層に提供してもよい。このように、IPv6パケットは、処理のためにデバイス内の正しいアプリケーションに提供されるか、またはIPネットワークルーティングを使用して別のネットワーク上でルートされてもよい。
しかしながら、理解されるように、第1のネットワーク通信プロトコル(すなわち、第1のネットワークルーティングプロトコルに依存するもの)を使用して作成されるデータパケットは、第2の通信ネットワーク(ルーティング通信用の第2のネットワークルーティングプロトコルを使用する)上で送信され、第1のネットワークルーティングプロトコルおよび第2のネットワークルーティングプロトコルの両方に対する、またはそれらによって定義されるようなネットワークルーティング情報を含む。この通信技法は、ネットワーク通信用の第1のネットワークルーティングプロトコルを使用しない通信ネットワークに接続されるデバイスでもある、任意のデバイスの中で第1のネットワーク通信プロトコル(IPネットワークルーティングプロトコル等の第1のネットワークルーティングプロトコルに依存する)を使用してネットワーク上で伝送されるであろうということに従って、またはそのように仮定して、データパケットが作成されることを可能にする。この通信技法はまた、第2の通信ネットワークが第1のネットワークルーティングプロトコルを使用するルーティングを使用またはサポートしないときでさえも、第1のネットワークルーティングプロトコルを使用しない第2の通信ネットワーク上のデバイスが、第2の通信ネットワーク上で第1のネットワークルーティングプロトコルに従って作成されるデータパケットを送信および受信することも可能にする。この特徴は、第2の通信ネットワーク上のデバイスが、第1のネットワークルーティングプロトコルに準拠するデータパケットを使用して相互に通信することを可能にし、加えて、第2の通信ネットワーク上のデバイスが、第1のネットワークルーティングプロトコルに従って構成されるデータパケットを使用して、異なる通信ネットワーク(例えば、第1のネットワークルーティングプロトコルを使用するルーティングをサポートするネットワーク)上のデバイスと直接通信することを可能にする。
ここで、この通信技法を使用して生じ得る通信のタイプのいくつかの実施例を、さらに詳細に論議する。以下で提供される実施例のうちのいくつかでは、第1の通信ネットワーク上の第1のコンピュータデバイスが、第1のネットワークルーティングプロトコル、例えば、TCP/IPを使用する、1つのネットワーク通信プロトコルに従ってデータフレームを作成し、これらのデータフレームを、第2のネットワークルーティングプロトコル、例えば、WirelessHARTプロトコルを使用する、第2の通信ネットワーク上に位置する第2のコンピュータデバイスへ伝送する。(しかしながら、上述のように、ネットワークルーティングプロトコルの他のタイプまたは具体的実施例を第1および第2の通信ネットワークで使用することができる。)以下の実施例では、第1のコンピュータデバイスは、802.3標準等のデータリンク層通信プロトコルに準拠する通信チャネルを介して、データフレームを伝送してもよく、第2のコンピュータデバイスは、802.15.4標準等の同一または異なるデータリンクプロトコルに準拠する通信チャネルを介して、データフレームを受信してもよい。本明細書で使用されるように、データリンクプロトコルはまた、概して、物理層プロトコルとも呼ばれる。
上述のように、データリンクプロトコルまたは標準は、とりわけ、特定の通信プロトコルに準拠する通信チャネルを介した通信トランザクション中に伝送または受信され得る、データフレームの最大サイズを定義する。データフレームの最大サイズは、概して、最大伝送単位(MTU)サイズと呼ばれる。例えば、802.15.4標準に準拠する通信チャネルを介して伝送されるデータフレームのMTUサイズは、典型的には、102バイトである。802.11標準に準拠する通信チャネルを介して伝送されるデータフレームのMTUは、典型的には、2272バイトである。802.3標準に準拠する通信チャネルを介したデータフレームのMTUは、1500バイトである。
別個に、ネットワークルーティングプロトコル標準はまた、ネットワークルーティングプロトコルに従ってパッケージ化されるデータフレームのMTUサイズを定義してもよい。例えば、IPv6標準は、典型的には1280バイトであるものとして、データフレームのMTUを定義する。したがって、いくつかのシナリオでは、単一のトランザクションにおいて、802.15.4標準に準拠する通信チャネルを介してIPv6データフレームを伝送することが不可能であり得る。これらのシナリオにおいて、IPv6データフレームが802.15.4標準に準拠する通信チャネルを介して伝送される前に、IPv6データフレームは、いくつかのデータフレームに断片化されてもよい。データフレーム断片は、受信デバイスにおいてデータフレーム断片の再組立を可能にする情報とともにカプセル化されてもよく、IPv6データフレームの意図した受信側であるコンピュータデバイスにおいて組み立て直されてもよい。断片化および再組立は、6LoWPAN等のプロトコルを利用することによって行われてもよい。断片化の結果として、IPv6データ断片のうちのいくつかまたは全てが、IPヘッダを含まなくてもよい。
以下で説明される実施例では、IPv6データフレームの断片は、WirelessHARTプロトコルに準拠するデータフレームを処理するように構成されるコンピュータデバイス間のIPv6データフレームのルーティングを促進するように、第2のネットワークルーティングプロトコル、例えば、WirelessHARTネットワークルーティングプロトコルに対応するヘッダ情報とともにカプセル化されてもよい。いくつかの実施例では、上述のように、WirelessHARTネットワークプロトコルヘッダは、データフレームがIPv6データフレームであることを示すフラグを含んでもよい。ここで、コンピュータデバイスは、WirelessHARTネットワークプロトコル情報とともにカプセル化されるIPv6データフレーム断片、およびWirelessHARTネットワークプロトコル情報とともにカプセル化される非IPv6データフレームを受信および伝送するように構成されてもよい。
一般的に言えば、本明細書で説明される通信技法は、ある場合では、第1のタイプのデータフレームを作成すること、すなわち、IPプロトコル等の第1のネットワークプロトコルを使用することと、そのデータフレームを、第1のネットワークプロトコルに従ったネットワークルーティングを使用するネットワーク上で、非IPプロトコル等の第2の異なるネットワークルーティングプロトコルを使用する第2の通信ネットワークに接続される第2のデバイスへ送信することとを伴う。第2のデバイスは、第2のネットワークルーティングプロトコルによって定義されるネットワークルーティング情報を有するデータフレームの中で、その中に第1のネットワークルーティング情報を伴うデータフレームをカプセル化し、データフレームを、第2のネットワークルーティングプロトコルを使用する第2の通信ネットワーク上で、第1のタイプのデータフレーム(例えば、IPデータフレーム)を生じるように受信したデータフレームを復号する第3のデバイスへ送信またはルートする。図4Aのフローチャート200は、この方法をさらに詳細に図示し、その上で通信が起こる種々の通信ネットワーク内の異なるデバイスにおいて講じられる、またはデバイスによって行われる、いくつかのステップを含む。
具体的には、図4Aのフローチャート200のブロック202、204、および206は、IPネットワークルーティングプロトコル(例えば、IPv6)等の第1のネットワークルーティングプロトコルを使用する第1の通信ネットワークに接続された第1のデバイスにおいて実施される。ブロック208、210、および212は、第1の通信ネットワークと、第1のネットワークルーティングプロトコルとは異なるWirelessHART通信ネットワーク等の第2のネットワークルーティングプロトコルを使用する第2の通信ネットワークとの間の接合点に位置する、ゲートウェイデバイス等の第2のデバイスにおいて実施される。(ここでは、WirelessHART通信ネットワークは、典型的には、プロセスプラントおよび他のタイプの製造プラントで通信を実装するためにプロセス制御業界で使用される、特殊メッシュネットワークであると留意されるであろう。一般的に言えば、WirelessHARTネットワークプロトコルは、プロセス制御ネットワーク内でより良好なルーティングを可能にするように、プロセス制御またはプロセスシステムコマンド等の種々の他のタイプの情報がデータパケットのネットワークルーティング情報の中に配置されることを求める。そのようなコマンドは、IPネットワークルーティングプロトコルによってサポートされていない。)ブロック214、216、218、および220は、第1の通信ネットワーク上の第1のデバイスによって作成される元のデータパケットを受信するデバイスである、第2の通信ネットワークに接続された受信デバイスにおいて実施される。
具体的には、ブロック202では、第1の通信ネットワーク(例えば、IPベースの通信ネットワーク)上の第1のデバイス内のアプリケーションが、第1のネットワークルーティングプロトコル(この実施例についてはIPv6プロトコル等のIPプロトコルであると仮定される)を使用する通信ネットワーク上で、アプリケーションデータパケットまたはメッセージをルートすることと一致する方式で、そのメッセージを生成する。ブロック204は、第1のネットワークルーティングプロトコルに準拠する第1のネットワークルーティング情報とともに、(そのように所望される場合、スタックのプレゼンテーション層、セッション層、およびトランスポート層によって処理されるような)アプリケーションメッセージをカプセル化するように動作する。この実施例では、ブロック204の出力は、インターネット等のIPネットワーク上で伝送する準備ができている標準IPv6データパケットであってもよい。次に、ブロック206は、例えば、IPアドレスルーティングを使用して、第1のネットワークルーティングプロトコルを使用する第1の通信ネットワークまたはチャネルにわたって、カプセル化アプリケーションデータパケットを伝送させる。当然ながら、ブロック206は、第1の通信ネットワーク上でIPv6データパケットを送信する前に、通信スタックのデータリンクおよび物理層においてデータパケットを処理してもよい。
次に、例えば、第1の通信ネットワークを第2の通信ネットワークに接続するゲートウェイデバイス内のブロック208が、データフレームを受信して復号し、データフレームの第1のネットワークルーティング情報内のIPアドレスが第2の通信ネットワーク上のデバイスに対するものである、またはそれと関連付けられることを認識する。次いで、ゲートウェイデバイス内のブロック208は、第2のネットワークルーティングプロトコルに準拠し、元のIPv6データパケット内のIPアドレスと関連付けられる第2の通信ネットワーク上に位置するデバイスへデータパケットをルートするように構成される、第2のネットワークルーティング情報とともに、受信したデータパケット(第1のネットワークルーティングプロトコルのネットワークルーティング情報を含む)をフレームに入れることによって、第2の通信ネットワークによって使用される第2のネットワークルーティングプロトコルに準拠するデータフレームを生成する。必要または所望であれば、ブロック208は、それらの作成されたデータパケットのそれぞれ(またはデータパケット断片)上に第2のネットワークルーティング情報を配置する前に、受信したIPv6データパケットからいくつかのデータパケットを作成するために、例えば、6LoWPAN断片化技法を使用して、受信したIPv6データパケットを断片化するように動作してもよい。
加えて、ブロック210は、作成されているパケット内の基礎的データフレームが、第1のネットワークルーティングプロトコルと関連付けられるアプリケーションデータを有することを示す、フラグを、データパケットの第2のネットワークルーティング情報の中に設定すること等によって、指標を生成する。次いで、ゲートウェイデバイス内のブロック212は、データパケット内の第2のネットワークルーティングプロトコル情報を使用する第2のネットワークルーティングプロトコルに従って動作する、第2の通信ネットワークまたは第2の通信ネットワーク上のチャネルにわたって、データフレームを伝送させる。
受信デバイス、すなわち、元のデータフレームのIPアドレスと関連付けられるが、第2の通信ネットワーク上に位置するデバイスにおけるブロック214は、データフレームの第2のネットワークルーティング情報に基づいて、スタックの物理、データリンク、およびネットワーク層において、データフレームを受信して復号する。このデバイス内のブロック216は、受信したデータパケットの第2のネットワークルーティング情報の中の指標またはフラグの存在または非存在を検出するように動作する。そのようなフラグが存在しない場合、または基礎的データパケットが本来、第2のネットワークルーティングプロトコルと関連付けられたデータパケットとして作成されたことをフラグが示す場合、ブロック218は、データパケットを、処理するために、第2のネットワーク通信プロトコルと関連付けられる受信デバイスのスタックのトランスポート層に提供する。しかしながら、指標が存在する場合、または基礎的データパケットが、本来、第1のネットワークルーティングプロトコル(例えば、IPプロトコル)と関連付けられたデータパケットとして作成されたことをフラグが示す場合、ブロック220は、パケットを復号して処理するように、データを、第1のネットワークルーティング情報を使用する受信デバイスのスタックのネットワーク層に提供する。スタックのこのネットワーク層は、最初に、元のIPv6データパケットを組み立て直すように、一連のそのような受信したパケットをデフラグしてもよく、次いで、IPネットワークルーティングプロトコルを使用して受信デバイスに送信されたかのように、IPv6データパケットが受信デバイスのスタックの中のアプリケーションまたはアプリケーション層に送達され得るように、標準IPネットワーク層およびトランスポート層処理を使用して、IPv6データパケットを処理してもよい。
同様に、本明細書で説明される通信技法は、第1のタイプのデータフレームを作成すること、すなわち、IPプロトコル等の第1の通信ネットワークと関連付けられる第1のネットワークプロトコルを使用することと、最初に、そのデータフレームを、第2のネットワークルーティングプロトコル(第1のネットワークルーティングプロトコルとは異なる)を使用する第2のネットワーク上で、第1の通信ネットワークにも接続される第2のデバイスへ送信することとを伴うことができる。この場合、第1のデバイスは、第2のネットワークルーティング情報とともに、その中に第1のネットワークルーティングプロトコル情報を有するデータフレームをカプセル化し、第2のネットワークルーティングプロトコルを使用する第2の通信ネットワーク上で、データフレームを第2のデバイスに送信またはルートする。次いで、第2のデバイスは、第1のタイプのデータフレーム(例えば、IPデータフレーム)を生じるように、第2のネットワークルーティングプロトコルを使用して、受信したデータフレームを復号し、次いで、第1のネットワークルーティングプロトコルを使用する第1の通信ネットワーク上で、復号されたデータフレームを送信する。図4Bのフローチャート250は、その上で通信が起こる種々の通信ネットワーク内の異なるデバイスにおいて講じられる、またはデバイスによって行われる、いくつかのステップを含むものとして、この方法をさらに詳細に図示する。
具体的には、図4Bのフローチャート250のブロック252、254、256、258、および260は、WirelessHARTネットワークルーティングプロトコル等の第2のネットワークルーティングプロトコルを使用する、第2の通信ネットワークに接続された第1のデバイスにおいて実施される。ブロック262、264、および268は、第1の通信ネットワーク(例えば、IPベースの通信ネットワーク)と、第2のネットワークルーティングプロトコルを使用する第2の通信ネットワークとの間の接合点に位置する、ゲートウェイデバイス等の第2のデバイスにおいて実施される。ブロック270は、第2の通信ネットワーク上の第1のデバイスによって作成される元のデータパケットを受信するデバイスである、第1の通信ネットワークに接続された受信デバイスにおいて実施されてもよい。
具体的には、ブロック252が、第2の通信ネットワーク上のIP使用可能デバイス(例えば、IP使用可能WirelessHARTデバイス)内で実施され、データパケットが第1の通信プロトコルに準拠する通信ネットワーク上で送信されるであろう(例えば、IPネットワークプロトコルに準拠するデータパケット)と仮定して、アプリケーションデータパケットを生成する。したがって、このデータパケットを生成するアプリケーションは、ソケットベースのアプリケーションであってもよい。図4Aに関して上述のように、このデータパケットで使用されるIPアドレスは、最初に、例えば、IPネットワークに接続されるWirelessHART通信ネットワーク上で、ゲートウェイデバイスと通信し、WirelessHARTデバイスによって提供されるドメイン名の正しいIPアドレスを判定するように、ゲートウェイデバイスにDNSサービスを行わせる(例えば、DNSサーバの役割を果たさせる)ことによって、取得されてもよい。IP使用可能デバイスのブロック254は、例えば、IPアドレス指定情報をデータメッセージに追加することによって、第1のネットワークルーティングプロトコルに準拠する第1のネットワークルーティング情報とともに、(IP使用可能デバイス内のスタックの適切なプレゼンテーション、セッション、およびトランスポート層によって処理された後の)アプリケーションメッセージをカプセル化する。次に、ブロック256は、第2のネットワークルーティングプロトコルに準拠する第2のネットワークルーティング情報とともに、ブロック254からのアプリケーションデータパケットをフレームに入れることによって、第2のネットワークルーティングプロトコルに準拠するデータフレームを生成する。この場合、ブロック256は、第2のネットワークルーティング情報を断片化データパケットのそれぞれに追加する前に、第2の通信ネットワークによって許容されるサイズに準拠する一組のデータパケットを作成するように、ブロック254によって作成されたデータパケットを断片化してもよい。ブロック258もまた、基礎的データフレームが、第1のネットワークルーティングプロトコルと関連付けられるアプリケーションデータ(例えば、IPv6データパケット)を有することを示す指標を、それぞれのそのようなデータパケットの第2のネットワークルーティング情報内に生成または配置する。次いで、ブロック260は、これらのパケット内の第2のネットワークルーティング情報を使用する第2のネットワークルーティングプロトコルに従って動作する、第2の通信ネットワークのチャネルにわたって、ブロック256および258によって作成されたデータフレームを伝送させる。
例えば、その異なる入力において、第2の通信ネットワークおよび第1の通信ネットワークの両方に接続される、ゲートウェイデバイスにおいて実施されるブロック262は、第2の通信ネットワークを介して受信されるデータフレームを受信し、これらのデータフレーム内の第2のネットワークルーティング情報に基づいて復号する。ブロック264は、基礎的IPデータの存在を示す、受信したデータフレームの第2のネットワークルーティング情報の中の指標またはフラグの存在を検出するように、このゲートウェイデバイス内で動作する。そのようなフラグがデータパケットの中に存在しない場合、ブロック266は、データを復号して処理するように第2の通信プロトコルに従って動作する受信デバイスのトランスポート層にデータパケットを提供してもよく、または第2の通信ネットワークを介して、そのデータにさらなるルーティングを行ってもよい。しかしながら、フラグが存在するか、または設定されている場合、ブロック268は、例えば、元のIPv6データパケット内にIPネットワークルーティング情報を含む、その元のIPv6データパケットを生じるように、第2の通信ネットワーク上で受信される複数のデータパケットからIPデータフレーム情報を復号して組み立て直すことによって、基礎的IPデータフレームを回収する。次いで、ブロック268は、第1のネットワークルーティングプロトコルを使用する第1の通信ネットワークの通信チャネルを介して、データパケットを受信側に伝送するために、その組み立て直されたIPv6データパケット内のIPネットワークルーティング情報(例えば、IPアドレス情報)を使用してもよい。ブロック270では、受信デバイス(すなわち、第1のデバイスによって作成されるようなIPv6データパケットのIP宛先アドレスを有するデバイス)が、任意の公知または標準の方式で、IPv6データパケットを受信して復号してもよい。
理解されるように、これらの基本的通信技法は、その中の通信にIPベースのルーティングを使用またはサポートしない、プロセスプラント通信ネットワーク等の通信ネットワーク内で、またはそれにわたって、IPデータメッセージングまたは通信(例えば、IPv6データフレーム等のIPデータフレームのメッセージング)を提供するために、種々の異なるシナリオで使用することができる。いくつかのこれらのシナリオを、以下で実施例のみとして説明する。
図5は、プロセスプラント内のフィールドデバイスが、インターネット51を介して、およびIPネットワークルーティングをサポートしないWirelessHART通信ネットワークであり得る、1つ以上のプロセス制御ベースの通信ネットワーク53および71を介して、IPv6データフレームを受信および伝送するように、本明細書で説明される通信方法を実装する、通信ネットワーク例50を図示する。一般に、化学、石油、または他のプロセスプラントで使用されるもの等のプロセス制御システムは、プロセス内で感知および物理的制御機能を果たす、フィールドデバイス59〜65および76〜81として図5で図示される、フィールドデバイスを含む。フィールドデバイス59〜65および76〜81のそれぞれは、例えば、弁、弁ポジショナ、スイッチ、センサ(例えば、温度、圧力、または流速センサ)、ポンプ、ファン、コントローラ、入出力デバイス等であってもよい。フィールドデバイスは、弁を開放または閉鎖すること、およびプロセスパラメータの測定を行うこと等の、プロセスまたはプロセス制御ループ内の制御および/または物理的機能を果たす。無線通信ネットワーク53および71では、フィールドデバイス59〜65および76〜81は、WirelessHARTデータフレームおよびIPv6データフレーム等のデータフレームの生産装置および消費装置である。IPv6データフレームを作成、受信、および使用することが可能である、ネットワーク53および71内のデバイスを、本明細書ではIP使用可能デバイスと呼ぶ。
概して、WirelessHARTネットワーク53および71内で、コンピュータデバイスは、データフレームをデータフレームの意図した受信側であるコンピュータデバイスへルートするために、WirelessHARTネットワークルーティング技法を利用する。フィールドデバイスは、典型的であるように、WirelessHARTネットワーク53および71上で典型的なWirelessHARTデータフレームを作成して伝送してもよい。しかしながら、上記の論議から理解されるように、データフレームはまた、WirelessHARTネットワークルーティング情報とともにカプセル化されたIPv6データフレーム断片を含んでもよく、またはWirelessHARTネットワークルーティング情報とともにカプセル化された非IPv6データフレーム断片を含んでもよい。この状況において、例えば、IPv6使用可能WirelessHARTゲートウェイ54は、好適なプロトコル、例えば、6LoWPANを利用して、インターネット51から受信されるIPv6データフレームを断片化するステップ、およびデータフレーム断片がWirelessHARTネットワーク53内でルートされることを可能にするWirelessHARTネットワークプロトコル情報とともに、データフレーム断片をカプセル化するステップを行ってもよい。
図5で図示されるように、ネットワーク53と関連付けられるIPv6使用可能WirelessHARTゲートウェイ54、およびネットワーク71と関連付けられるIPv6使用可能WirelessHARTゲートウェイ70は、インターネット51に接続される。IPv6使用可能WirelessHARTゲートウェイ54および70はそれぞれ、独立型デバイスとして、ワークステーション(図示せず)の拡張スロットの中へ挿入可能なカードとして、プログラマブルロジックコントローラ(PLC)ベースのシステムの入出力サブシステムの一部として、または任意の他の方式で実装されてもよい。プロトコルおよびコマンド変換に加えて、IPv6使用可能WirelessHARTゲートウェイ54および70は、それぞれ、WirelessHART通信ネットワーク53および71のスケジューリング方式のタイムスロットおよびスーパーフレーム(時間的に同等に離間された通信タイムスロットのセット)によって使用される同期クロッキングを提供してもよい。
加えて、WirelessHART通信ネットワーク53は、ルータデバイス57および58を含んでもよい。ルータデバイス57は、例えば、1つの無線ネットワークデバイスから別の無線ネットワークデバイスへデータフレームを転送する、ネットワークデバイスである。ルータデバイスの役割を果たしているネットワークデバイスは、どの無線ネットワークデバイスが特定のデータフレームの次の受信側であるかを決定するために、内部ルーティングテーブルを使用する。ルータ57等の独立型ルータは、WirelessHART通信ネットワーク53上の全てのデバイスがルーティングをサポートするシナリオで必要とされなくてもよい。しかしながら、WirelessHART通信ネットワーク53内でルーティング57等の専用ルータを有すること(例えば、ネットワークを拡張すること、またはネットワーク内のフィールドデバイスの電力を節約すること)が有益であり得る。
WirelessHART通信ネットワーク53はまた、IPv6使用可能WirelessHARTフィールドデバイス62、63、64、および65を含むものとしても図示される。IPv6使用可能WirelessHARTフィールドデバイス62は、例えば、WirelessHARTネットワークルーティングプロトコル情報内でカプセル化された6LoWPAN IPv6データフレーム断片を受信して処理することが可能であり得、かつWirelessHARTネットワークルーティングプロトコル情報内でカプセル化された6LoWPAN IPv6データフレーム断片を作成してルートすることが可能であり得る。同様に、IPv6使用可能WirelessHARTフィールドデバイス62は、例えば、WirelessHARTプロトコルヘッダとともにカプセル化された非IPv6データフレームを別のWirelessHARTフィールドデバイスへルートすることが可能であり得る。ルーティングを行うために、WirelessHARTフィールドデバイス62は、例えば、特定のデータフレームをカプセル化するWirelessHARTネットワークルーティングヘッダの中のルーティング情報を利用する。
WirelessHART通信ネットワーク53はまた、従来のWirelessHARTフィールドデバイス59、60、および61を含んでもよい。WirelessHARTフィールドデバイス59、60、および61は、WirelessHARTネットワークプロトコル情報とともにカプセル化されたデータフレームを受信および伝送することが可能である。WirelessHARTフィールドデバイス59、60、および61はまた、WirelessHARTネットワークプロトコルヘッダ内にカプセル化された6LoWPAN IPv6データフレーム断片を、データフレーム断片の意図した受信側であるIPv6使用可能WirelessHARTフィールドデバイスへルートすることも可能であり得る。ルーティングを行うために、WirelessHARTフィールドデバイス59は、例えば、ルーティングを行うように6LoWPAN IPv6データフレーム断片をカプセル化する、WirelessHARTネットワークルーティングプロトコルヘッダの中のルーティング情報を利用する。WirelessHART使用可能フィールドデバイス59、60、および61は、その中にIPv6データフレームを含む、そのようなデータフレームを含む、WirelessHARTメッセージまたはデータフレームをルートすることが可能であるが、これらのデバイスは、IPv6データフレーム自体を復号または使用することが可能ではない。
WirelessHARTネットワーク53内のルータ58は、例えば、フィールドデバイス59からのWirelessHARTネットワークプロトコルヘッダとともにカプセル化されたデータフレームを受信することが可能であり得る。ルータ58は、例えば、WirelessHARTネットワークプロトコルヘッダの中のルーティング情報に基づいて、データフレームを隣接フィールドデバイス60へルートしてもよい。
図5のシステム例では、WirelessHART通信ネットワーク71は、IPv6使用可能WirelessHARTゲートウェイデバイス70、1つ以上のルータデバイス74および75、いくつかのIPv6使用可能フィールドデバイス79、80、81、および82、ならびにいくつかの従来のWirelessHARTフィールドデバイス76、77、および78を含む。上述のデバイスは、802.15.4標準に準拠する通信チャネルを介して、データフレームを伝送および受信してもよい。この場合、WirelessHART通信ネットワーク71内のコンピュータデバイス82は、ハンドヘルドコンピュータデバイスであってもよい。コンピュータデバイス82は、802.15.4標準に準拠する通信チャネルを介してWirelessHART通信ネットワーク71内でデータフレームを伝送および受信することが可能である、アダプタを提供されてもよい。加えて、コンピュータデバイス82は、IPv6使用可能フィールドデバイス82から、WirelessHARTネットワークプロトコル情報内にカプセル化されたIPv6データフレーム断片、およびWirelessHARTネットワークプロトコル情報内にカプセル化された非IPv6データフレームを受信および伝送してもよい。所望であれば、コンピュータデバイス82は、非IPv6使用可能フィールドデバイス81から、WirelessHARTネットワークプロトコル情報内にカプセル化された非IPv6データフレームを受信および伝送してもよい。これらの実施例のそれぞれでは、データフレームをカプセル化するWirelessHARTネットワークプロトコルヘッダ内のルーティング情報は、データフレームのWirelessHARTネットワーキングルーティング情報に基づいて、WirelessHARTネットワーク71内のデータフレームをデータフレームの意図した受信側であるデバイスへルートするために、中間IPv6使用可能WirelessHARTデバイスおよび非IPv6使用可能WirelessHARTデバイスによって利用される。
本明細書で説明される1つのシナリオでは、異なるWirelessHARTネットワーク53および71内の2つのIPv6使用可能WirelessHARTデバイスはまた、ネットワーク53および71のそれぞれの上で送信され、かつインターネット51を介してネットワーク53および71の間で送信される、IPv6データフレームを使用して、相互と通信してもよい。実施例として、ネットワーク71内のコンピュータデバイス82は、これらのネットワークにわたって、およびインターネット51上で送信されるIPv6データフレームを伝送および受信することによって、例えば、他方のWirelessHARTネットワーク53内に位置する、IPv6使用可能フィールドデバイス63と通信してもよい。このシナリオでは、コンピュータデバイス82において実行する、ウェブブラウザ等のアプリケーションが、IPv6データフレームを生成してもよい。実施例のみとして、データフレームの中のデータは、IPv6使用可能フィールドデバイス63からのウェブページデータの要求に対応してもよい。コンピュータデバイス82は、ウェブページ要求に対応する1つ以上のIPv6データフレームを生成するためにTCP/IPネットワークプロトコルスタックを利用してもよい。
再度、上述のように、コンピュータデバイス82は、最初に、標準WirelessHARTメッセージングを使用して、WirelessHARTネットワーク71を通してゲートウェイデバイス71へ通信することによって、(例えば、デバイスまたはデバイス63のホストと関連付けられる)IPv6データフレームを生成するために使用する1つまたは複数のIPアドレスを判定してもよい。この場合、デバイス82は、デバイス63において到達されるウェブサイトまたは他のホストのドメイン名等の名前を有するメッセージを送信し、DNSサービスを実装して(またはインターネット51上のDNSサーバとしての役割を果たし、あるいはDNSサーバに連絡して)IPアドレスに対するドメイン名を解決するように、ゲートウェイデバイス71に要求してもよい。次いで、ゲートウェイデバイス70は、デバイス82がその中に正しいIPv6宛先アドレスを伴う(例えば)IPv6データパケットを作成することを可能にするように、このIPアドレスをデバイス82に返信してもよい。デバイス82は、ゲートウェイデバイス72からIPアドレスDNSサービスを要求するために標準WirelessHARTメッセージングを使用することができるが、デバイス82はまた、本明細書で説明される通信技法を使用して(すなわち、WirelessHARTネットワークルーティング情報の中にそのようなIPデータフレームをカプセル化し、処理するためにカプセル化データフレームをゲートウェイデバイス70に送信し、ゲートウェイデバイス70内のIPまたはソケットベースのアプリケーションによって復号することによって)別のネットワークエンティティのIPアドレスを要求するために、ゲートウェイデバイス70にアドレス指定されたIPv6データパケットを使用することもできる。同様に、ゲートウェイデバイス70は、WirelessHARTネットワークルーティング情報の中にカプセル化されたIPデータメッセージを介して、または標準WirelessHARTメッセージングを介して、WirelessHARTネットワーク71上で判定されたIPアドレスを返信することができる。
いったん作成されると、次いで、IPv6データフレームは、6LoWPANプロトコルスタックによって断片化されてもよく、1つ以上の断片は、図3のフローチャート40に関して説明される方式でデータフレームをIPv6使用可能WirelessHARTゲートウェイ70に送信するように設計されている、WirelessHARTネットワークルーティング情報内でカプセル化されてもよい。次いで、コンピュータデバイス82は、WirelessHARTネットワークルーティングを使用して、WirelessHARTネットワーク71内の802.15.4準拠通信チャネルを介して、データ断片をIPv6使用可能WirelessHARTゲートウェイ70へ伝送してもよい。データフレーム断片は、IPv6使用可能WirelessHARTゲートウェイ70によって受信されてもよく、IPv6使用可能WirelessHARTゲートウェイ70は、ウェブページ要求に対応するIPv6データフレームを生成するように、いくつかのデータフレーム断片を組み立て直してもよい。
次いで、IPv6使用可能WirelessHARTゲートウェイ70は、インターネット51を介してIPv6データフレームをIPv6使用可能WirelessHARTゲートウェイ54へルートするために、組み立て直されたIPv6データフレームのIPv6ヘッダの中で入手可能な宛先IPアドレス情報を利用してもよい。この場合、IPv6データパケットの宛先IPアドレスは、IPv6使用可能フィールドデバイス63のIPv6アドレスに対応し、ゲートウェイ54は、ネットワーク53内のデバイスのIPアドレスのリストを記憶するであろう。当然ながら、IPv6使用可能WirelessHARTゲートウェイ70は、インターネットを介したIPv6使用可能WirelessHARTゲートウェイ54への適切なルートを判定するために、典型的または利用可能なTCP/IPルーティングプロトコルを利用してもよい。
次いで、IPv6使用可能WirelessHARTゲートウェイ54は、ネットワーク53上でIPv6データフレームをIP使用可能フィールドデバイス63に送信するために、図3のフローチャート40の後部分の方法を使用してもよい。具体的には、ゲートウェイ54は、受信したIPv6データフレームを1つ以上の6LoWPANデータフレーム断片に断片化してもよく、次いで、WirelessHARTネットワーク53内のデバイス63にアドレス指定またはルートされる方式で、そのネットワーク上でデータフレーム断片を伝送する前に、WirelessHARTネットワークルーティングプロトコル情報内でデータフレーム断片をカプセル化してもよい。WirelessHARTネットワークルーティングプロトコル情報は、例えば、中間WirelessHARTデバイス59、58、および65が、(WirelessHARTネットワークルーティング情報内でカプセル化された)IPv6データフレーム断片をIPv6使用可能WirelessHARTフィールドデバイス63へルートすることを可能にする、WirelessHARTルーティング情報を含む。
IPv6使用可能WirelessHARTフィールドデバイス63は、WirelessHART通信ネットワーク53を介して、いくつかのWirelessHARTデータパケットの中の(WirelessHARTネットワークルーティング情報の中でカプセル化された)いくつかのデータ断片を受信し、データフレームがデバイス63に意図されていることを判定するように、WirelessHARTネットワークルーティング情報を使用してデータ断片を復号してもよい。その場合、デバイスは、コンピュータデバイス82によって伝送されるウェブページ要求に対応するIPv6データフレームを生成するように、異なるデータパケットからいくつかのデータフレーム断片を組み立て直し、この要求を、IPv6データフレームが最初に送信されたアプリケーションに提供する。デバイスは、デバイス63内の適正な宛先を判定するために、IPv6データパケットの中のIPアドレス情報を使用してもよい。次いで、IPv6使用可能WirelessHARTフィールドデバイス63は、例えば、同一の方法論を使用して、すなわち、WirelessHARTネットワーク53、インターネット51、およびWirelessHARTネットワーク71を介して、これらのIPv6データパケットを作成して送信することによって、ウェブページデータに対応するハイパーテキストマークアップ言語(html)IPv6データフレームを、要求デバイス82へ戻して伝送してもよい。具体的には、上記で詳述されるもののような類似ステップを実装することによって、html IPv6データフレームは、ネットワーク53内の1つ以上のWirelessHARTフィールドデバイス、IPv6使用可能WirelessHARTゲートウェイ54、インターネット51、IPv6使用可能WirelessHARTゲートウェイ70、およびネットワーク71内の1つ以上のWirelessHARTフィールドデバイスを介して、コンピュータデバイス82によって送信または受信されてもよい。
コンピュータデバイス82はまた、好適な通信プロトコルを利用することによって、1つ以上の他の通信ネットワークと通信してもよい。例えば、図1を参照して、コンピュータデバイス82は、ゲートウェイデバイス70を介してセルラーネットワーク15と通信してもよい。別のシナリオでは、コンピュータデバイス82は、ゲートウェイデバイス70を介してWLANネットワーク16と通信してもよい。なおもさらに、IPメッセージまたはデータパケットは、WirelessHARTネットワーク53または71のうちの1つの中の第1のIP使用可能フィールドデバイスによって作成され、本明細書で説明される通信技法を使用して、同一のWirelessHARTネットワーク53または71内の別のIP使用可能フィールドデバイスへ送信されてもよく、それにより、非IP通信ネットワーク上の2つデバイス間のIPメッセージングを可能にする。この場合、理解されるように、第1のIP使用可能フィールドデバイスによって作成されるIPデータメッセージは、上記で説明される方式で、そのデータをWirelessHART通信ネットワーク53または71上で送信するために使用される、WirelessHARTネットワークルーティング情報を用いて符号化されるであろう。しかしながら、この場合、これらのデバイスが、適切なWirelessHARTネットワーク53または71内のデバイスのIPアドレス間の関連を定義するリンクまたはルーティングテーブル、およびこれらのデバイスのWirelessHARTネットワークルーティング情報を記憶するため、メッセージは、依然としてゲートウェイデバイス54または70のうちの1つを通過する必要があり得る。しかしながら、別の場合において、IP使用可能デバイス自体が、ネットワーク内通信用のIPアドレスおよびルーティングテーブルを記憶してもよく、かつWirelessHARTネットワーク内のルーティングのためにデータパケットのヘッダの中に配置される必要があるWirelessHARTネットワークルーティング情報を判定するために、これらのIPルーティングテーブルを使用してもよい。
図6は、WirelessHART通信プロトコルに従って動作するWirelessHARTフィールドデバイスが、インターネット101を介して、コンピュータデバイス115、116、および117からIPv6データフレームを受信し、かつそれらへIPv6データフレームを伝送するように動作し得る、別のWirelessHART通信ネットワーク例100を図示する。コンピュータデバイス115、116、および117は、WLAN、GSM、CDMA、Bluetooth(登録商標)、ZIGBEE等のプロトコルを実装するネットワーク等の非WirelessHARTネットワークを介して、インターネット101に通信可能に連結されてもよい。
WirelessHART通信ネットワーク100は、IPv6使用可能WirelessHARTゲートウェイ102、いくつかのWirelessHARTルータ105および106、いくつかのIPv6使用可能WirelessHARTフィールドデバイス107、108、109、および110、ならびにいくつかの非IPv6使用可能WirelessHARTフィールドデバイス111、112、および113を含む。図6で図示されるように、IPv6使用可能WirelessHARTゲートウェイ102は、インターネット101に、およびネットワーク100内のいくつかのフィールドデバイス103、104、および111に通信可能に連結される。
一実施例では、コンピュータデバイス115は、インターネット101およびWirelessHARTネットワーク100の構造の両方を使用して、IPv6使用可能WirelessHARTデバイス107からIPv6データフレームを受信し、かつそこへIPv6データフレームを伝送する。コンピュータデバイス115は、例えば、図1で描写されるように、WLANネットワーク16を介してインターネット101に通信可能に連結されてもよい。しかしながら、これらの実施例では、コンピュータデバイス115は、IPv6使用可能通信能力のみを有すると仮定され、WirelessHARTネットワーク100内で直接通信することはできないであろう。しかしながら、コンピュータデバイス115は、無線周波数識別(RFID)スキャナ115−1等の好適な近距離通信(NFC)スキャナを含んでもよい。IPv6使用可能WirelessHARTフィールドデバイス107は、RFIDタグ118を提供されてもよく、このタグは、IPv6使用可能WirelessHARTフィールドデバイス107の識別に対応する識別コードまたはID(例えば、IPアドレス)を記憶してもよい。プラント内のユーザは、例えば、RFIDスキャナ115−1を介して、デバイス107上のRFIDタグをコンピュータデバイス115の中へスキャンしてもよい。RFIDタグ上の情報は、IPv6使用可能WirelessHARTフィールドデバイス107と関連付けられ得る、IPv6アドレス、ウェブURL、または他のデータに対応してもよい。別のシナリオでは、コンピュータデバイス115は、IPv6使用可能WirelessHARTフィールドデバイス107のIPv6アドレスまたはウェブURLを受信して、コンピュータデバイス115がフィールドデバイス107と通信することを可能にするように、RFIDタグ118から受信される情報を伴う遠隔データベースに問い合わせを行ってもよい。
ウェブブラウザ等のコンピュータデバイス115上で実行するアプリケーションは、例えば、フィールドデバイス107のIPアドレスを使用してIPv6使用可能WirelessHARTフィールドデバイス107へ伝送される、ウェブページデータの要求に対応するIPv6データフレームを生成してもよい。そのようなものとして、IPv6データフレームのIPヘッダの中の宛先IPアドレスは、IPv6使用可能WirelessHARTフィールドデバイス107のIPv6アドレスに対応してもよい。コンピュータデバイス115は、WLANネットワーク16を介して、IPv6データフレームを、例えば、インターネット101の中へ伝送してもよい。IPv6データフレームは、最終的に、標準IPv6またはIPネットワークルーティングプロトコル技法を使用して、インターネット101を介してIPv6使用可能WirelessHARTゲートウェイ102へルートされ、それによって受信されてもよい。以前に説明されたように、IPv6使用可能WirelessHARTゲートウェイ102は、IPv6データフレームのIP宛先アドレスと関連付けられるデバイスがWirelessHARTネットワーク100内にあることを判定するために、IPルーティングテーブルを使用してもよく、ネットワーク100上で情報をそのデバイスへ送信するために必要とされる、WirelessHARTネットワークルーティング情報を判定してもよい。次いで、IPv6使用可能WirelessHARTゲートウェイ102は、受信したIPv6データフレームを断片化し、これらのデータフレームをネットワーク100内のデバイス107へルートするために必要とされるWirelessHARTネットワークルーティング情報を用いてデータフレーム断片のそれぞれを符号化してもよい。ゲートウェイ102はまた、基礎的パケットまたは情報がIPv6データパケットに由来する、またはそれと関連付けられることを示すフラグを用いて、このWirelessHARTネットワークルーティング情報を符号化してもよく、次いで、WirelessHARTネットワークルーティングを使用するWirelessHARTネットワーク100を介して、符号化されたデータフレームをフィールドデバイス107へ(またはフィールドデバイス107と関連付けられるアプリケーションまたはIPアドレスへ)送信してもよい。一実施例では、WirelessHARTゲートウェイ102は、6LoWPANプロトコルに従ってIPv6データフレームを断片化してもよく、次いで、グラフID等のIPv6使用可能WirelessHARTフィールドデバイス107のWirelessHARTアドレス指定情報を含む、WirelessHARTネットワークルーティングプロトコルヘッダの中に結果として生じるデータフレーム断片をカプセル化してもよい。当然ながら、WirelessHARTゲートウェイ102は、802.15.4標準に従って動作する通信チャネル等の低出力通信チャネルを介して、WirelessHARTカプセル化IPv6データフレーム断片をWirelessHARTネットワーク100の中へ伝送する。
この実施例では、IPv6使用可能フィールドデバイス107は、ネットワーク100上で、標準WirelessHART通信を介してWirelessHARTカプセル化IPv6データフレームを受信する。IPv6使用可能フィールドデバイス107は、WirelessHARTカプセル化パケットを受信すると、コンピュータデバイス115によって伝送されるIPv6データフレームに対応するIPv6データフレームを生成するように、いくつかのデータフレーム断片を組み立て直し、このデータフレームを、パケットがアドレス指定されたフィールドデバイス107内のアプリケーションに提供してもよい。次いで、IPv6使用可能フィールドデバイス107は、コンピュータデバイス115によって要求される情報を含むIPv6データフレームを生成し、本明細書で説明される技法を使用して、これらのIPv6データフレームをコンピュータデバイス115へ送信してもよい。以前に説明されたように、フィールドデバイス107において作成されるIPv6データフレームは、断片化されてもよく、断片は、フィールドデバイス107内のWirelessHARTネットワーク層プロトコルヘッダとともにカプセル化されてもよい。次いで、IPv6使用可能フィールドデバイス107は、インターネット101を介してデバイス115へ送信するために、WirelessHARTネットワーク100を介してデータフレーム断片をWirelessHARTゲートウェイデバイス102へ伝送してもよい。IPv6使用可能WirelessHARTゲートウェイ102は、IPv6使用可能フィールドデバイス107によって生成されるIPv6データフレームに対応するIPv6データフレームを生成するように、受信したデータフレーム断片を組み立て直してもよい。次いで、IPv6使用可能WirelessHARTゲートウェイ102は、IPv6データフレームのIPアドレスを使用して、インターネット101を介してIPv6データフレームをデバイス115のIPアドレスへ伝送する。コンピュータデバイス115は、例えば、WLANネットワーク16を介してIPv6データフレームを受信してもよく、IPv6データフレームの中の情報を復号し、ウェブブラウザの中で、例えば、ユーザに表示してもよい。したがって、この実施例では、WirelessHART通信能力を持たないデバイス115は、デバイス間の通信がWirelessHART通信プロトコル(IPv6データフレームルーティングをサポートしない)を使用して起こらなければならない、WirelessHARTネットワーク上のフィールドデバイス107と直接的にIPv6データパケットを通信させるために、本明細書で説明される通信技法を使用してもよい。したがって、この技法は、たとえWirelessHART通信ネットワークがIPベースの通信をサポートしなくても、WirelessHARTネットワーク100外のデバイスの中で作動するアプリケーションが、IPベースの通信を使用してWirelessHARTネットワーク内のデバイスと通信することを可能にする。この技法はまた、たとえWirelessHART通信ネットワークがIPベースの通信を本質的にサポートしなくても、IPベースの通信またはソケットベースのアプリケーションを使用して、WirelessHARTネットワーク外のデバイスと通信するように、WirelessHARTネットワーク100内のデバイスの中で作動するアプリケーションの使用も可能にする。したがって、これらの利点は、標準IP使用可能アプリケーション(非常に普及し、公知である)が、IPベースの通信を使用しないWirelessHARTネットワーク等の特殊通信ネットワーク内のデバイス内で使用されること、およびそれらと通信することを可能にする。したがって、これらの技法は、ひいては、WirelessHART通信ネットワーク、またはIPベースのネットワークルーティングをサポートまたは使用しない、あるいはIPアドレス指定をサポートしない他の通信ネットワークにわたって標準IPベースの通信が起こることを可能にする。
別の実施例では、QRリーダ116が、IPv6使用可能WirelessHARTフィールドデバイス109に添着されたQRコード119から情報を読み取ってもよい。情報は、例えば、IPベースの通信を使用してIPv6使用可能WirelessHARTフィールドデバイス109と通信するためのIPv6アドレスを含んでもよい。QRリーダ116は、有線または無線ネットワークを介してインターネット101に通信可能に連結されてもよく、デバイス115に関して説明されるのと同様に、インターネット101を介して、IPv6使用可能WirelessHARTフィールドデバイス109へIPv6データフレームを伝送し、かつそこから受信するために、QRコード119から読み取られた情報を利用してもよい。別の実施例では、バーコードリーダ117が、IPv6使用可能WirelessHARTフィールドデバイス120に添着されたバーコード120を読み取ってもよい。バーコードリーダ117は、インターネット101を介して、IPv6使用可能WirelessHARTフィールドデバイス109へIPv6データフレームを伝送し、かつそこから受信するために、バーコード120の中で符号化された情報を利用してもよい。当然ながら、ネットワーク100内のIPv6使用可能フィールドデバイスと通信して、これらのデバイスから情報を取得する、および情報をこれらのデバイスへ送信する(コマンド、命令、データの要求等)ために、多くの他のタイプのアプリケーションが使用されてもよい。したがって、ある場合では、オペレータまたは技術者が、IPベースのネットワークルーティングを使用しないWirelessHARTまたは他のネットワーク内のフィールドデバイスから任意のタイプの情報を取得する、または任意の性質の情報をこれらのデバイスへ送信するよう、これらのデバイスと通信するようにインターネットに接続されたデバイス内のIPベースのアプリケーションを使用してもよい。
図7は、一方で、IPv6データフレームをインターネットから受信し、かつそこへ伝送するように、他方で、WirelessHARTネットワークを介してIPv6データパケットをルートするように、本明細書で説明される通信技法の部分を実装するために使用され得る、ネットワークプロトコルスタック例300のブロック図である。この場合、通信プロトコルスタック300は、例えば、図1のIPv6使用可能WirelessHARTゲートウェイ11aにおいて、あるいは図5のゲートウェイデバイス54または70のいずれか一方において、あるいは図6のゲートウェイデバイス102において、実装されてもよい。スタック300を実装するデバイスは、汎用コンピュータであってもよく、または代替として、例えば、フィールドデバイス(プロセスコントローラであり得る)またはプロセス制御ネットワークと関連付けられる、特殊用途組み込みコンピュータデバイスであってもよい。通信プロトコルスタック300を備える、いくつかの機能ブロックが、ソフトウェア命令、ハードウェア、ファームウェア、ASIC等を使用して実装されてもよい。ソフトウェア命令が使用される場合において、ソフトウェア命令は、ハードウェアマイクロプロセッサによって実行され得るいくつかのブロックを含んでもよく、これらのブロックは、ソフトウェアメッセージング待ち行列、ソフトウェアコールバック、メモリバッファ、バス等を介して、相互と通信可能に、かつプログラムで連結されてもよい。ソフトウェアブロックは、IPv6データフレームを受信および伝送するために、タイマ、ハードウェア割り込み、高速イーサネットコントローラ、シリアル通信コントローラ等のいくつかのハードウェアリソースを使用してもよい。図7に示されていないが、通信プロトコルスタック300は、リアルタイムオペレーティングシステム(RTOS)とプログラムで連動してもよい。RTOSの実施例は、PSOS、UCOS、RTLinux等を含む。上述のように、通信プロトコルスタック300を構成する、いくつかの機能ブロックのうちのいくつかまたは全ては、特定用途向け集積回路(ASIC)において、またはそのように所望される場合はフィールドプログラマブルゲートアレイ(FPGA)デバイスあるいは他のハードウェア/ファームウェアデバイスにおいて実装されてもよい。
図7のシステムでは、スタック300は、概して、第1の分岐303および第2の分岐305を含む。第1の分岐は、概して、IPネットワークルーティング準拠通信ネットワークを使用して、イーサネットインターフェース301を介して、IPv6データフレーム等のIPデータフレームを受信および復号すること、または符号化および伝送することと関連付けられる。第2の分岐305は、概して、WirelessHARTアクセスポイント313を介して、WirelessHART通信ネットワーク等の非IPネットワークルーティング準拠通信システム上で、IPv6データパケットまたは他のタイプのパケットを受信および復号すること、または符号化および伝送することと関連付けられる。分岐303および305は、相互に、および概して、IPv6データフレーム通信に依存する、またはそれを使用するスタックの上層(スタック300のトランスポートおよび層等)に接続される。
より具体的には、通信プロトコルスタック300の第1の分岐303は、この場合、単一の物理的インターフェースを含み得る、イーサネットインターフェース301に接続するイーサネットドライバ302を含む。他の場合において、イーサネットインターフェース301は、2つ以上の物理的インターフェースを含んでもよい。IPv4、IPv6、およびIPv4カプセル化IPv6データフレームは、イーサネットインターフェース301を介してインターネットから受信(進入)され、かつそこへ伝送(退出)されてもよく、したがって、物理層スタック要素および/またはデータリンク層スタック要素を実装する。この実施例では、イーサネットインターフェース301は、IEEE 802.3標準に従って動作するように適合される。しかしながら、イーサネットインターフェース301は、任意の他の数の同期、非同期、および/または等時シリアル通信標準に従って動作してもよく、イーサネットドライバ302はまた、必要に応じてイーサネットインターフェース301を構成してもよい。当然ながら、典型的であるように、イーサネットドライバ302は、イーサネットインターフェース301を介して受信されるデータフレームの完全性を受信して検証し、イーサネットドライバ302は、スタック300が操作されるデバイスの中に位置する1つ以上のメモリバッファの中に受信したデータフレームを記憶してもよい。イーサネットドライバ302は、データフレームがイーサネットインターフェース301を介して受信されるとき、および/またはデータフレームがメモリバッファの中に記憶されるときに、IPv4カプセル化/脱カプセル化ブロック304に警告してもよく、イーサネットドライバ302は、メモリバッファの中の受信したデータフレームの場所に対応する指示をIPv4カプセル化/脱カプセル化ブロック304に提供してもよい。イーサネットドライバ302はまた、イーサネットインターフェース301を介して、IPv4脱カプセル化/カプセル化ブロック304から受信されるデータフレームを伝送してもよい。
IPv4カプセル化/脱カプセル化ブロック304は、イーサネットインターフェース301を介して受信されるデータフレームを処理するように動作する。IPv4カプセル化/脱カプセル化ブロック304は、受信されるデータフレームがIPv4データフレーム、IPv6データフレーム、またはIPv4カプセル化IPv6データフレームであるかどうかを判定してもよい。所望であれば、IPv4カプセル化/脱カプセル化ブロック304は、IPv6データフレームを生成するように、IPv4カプセル化IPv6データフレームに作用してもよい。IPv4カプセル化/脱カプセル化ブロック304はまた、受信したIPv4カプセル化IPv6データフレームの脱カプセル化の完了中または後に、IPSec暗号化/解読ブロック306に警告してもよい。
当然ながら、IPv4カプセル化/脱カプセル化ブロック304はまた、IPsec暗号化/解読ブロック306からデータフレームを受信してもよく、IPv4カプセル化/脱カプセル化ブロック304は、IPsec暗号化/解読ブロック306から受信されるデータフレームがIPv4データフレームまたはIPv6データフレームであるかどうかを判定してもよい。IPv4カプセル化/脱カプセル化ブロック304は、IPsec暗号化/解読ブロック306から受信されるIPv6データフレームから、IPv4カプセル化IPv6データフレームを生成するように構成されてもよい。IPv4カプセル化/脱カプセル化ブロック304は、IPsec暗号化/解読ブロック306から受信されるIPv4データフレームをカプセル化しないように動作してもよい。いずれにしても、IPv4カプセル化/脱カプセル化ブロック304は、イーサネットドライバ302にIPv4カプセル化IPv6データフレームまたはIPv4データフレームを提供する。以前に説明されたように、イーサネットドライバ302は、イーサネットインターフェース301を介して、IPv4脱カプセル化/カプセル化ブロック304から受信されるデータフレームを伝送してもよい。純IPv6ネットワークでは、IPv4カプセル化/脱カプセル化ブロック304が必要とされなくてもよい。
IPSec暗号化/解読ブロック306は、IPv4カプセル化/脱カプセル化ブロック304から脱カプセル化IPv6データフレームおよび/またはIPv4データフレームを受信する。そのようにすると、IPsec暗号化/解読ブロック306は、受信されるデータフレームが暗号化されているかどうかを判定する。必要であれば、IPsec暗号化/解読ブロック306は、1つ以上の暗号化/解読アルゴリズムを使用して、受信したデータフレームを解読してもよい。暗号化/解読アルゴリズムの一般的実施例の部分的リストは、データ暗号化標準(DES)、高度暗号化標準(AES)等を含む。暗号化/解読を行うために、IPsec暗号化/解読ブロック306は、暗号化/解読キーのプログラミングおよび交換を可能にするプロトコル(図示せず)を実装してもよい。終了したとき、IPsec暗号化/解読ブロック306は、データフレームルーティングブロック308に解読されたデータフレームを提供する。
他方で、IPsec暗号化/解読ブロック306はまた、データフレームルーティングブロック308からデータフレームを受信し、好適な暗号化アルゴリズムを用いてデータフレームを暗号化するように構成される。この場合、IPsec暗号化/解読ブロック306は、イーサネットインターフェース301を介して伝送される、暗号化されたデータフレームまたは暗号化されていないデータフレームのいずれか一方を、IPv4カプセル化/脱カプセル化ブロック304に提供する。
概して、ネットワークルーティング層スタック要素を実装し得る、または含み得る、データフレームルーティングブロック308は、1つ以上のデータフレーム提供側からデータフレームを受信する。受信したデータフレームの中の情報に基づいて、データフレームルーティングブロック308は、受信したデータフレームをデータフレームの1つ以上の意図した受信側へ伝送し、その受信側は、スタック300のアプリケーション層内のアプリケーション、またはイーサネット通信ネットワーク上にあり、スタック分岐303を介して到達可能なデバイス、あるいはWirelessHARTネットワーク上にあり、スタック分岐305を介して到達可能なデバイスの中のアプリケーションのいずれか一方である。当然ながら、1つの場合におけるデータフレームの意図した受信側はまた、他の場合においてデータフレーム提供側として動作してもよい。一般的に言えば、図7のスタックの中の直近のデータフレーム提供側およびデータフレーム受信側は、IPsec暗号化/解読ブロック306、6LoWPAN適合層310、およびこの場合、TCP、UDP、またはICMPトランスポートプロトコルを使用する、トランスポート層スタック311を含む。
動作中、IPsec暗号化/解読ブロック306からデータフレームを受信すると、データフレームルーティングブロック308は、受信したデータフレームの意図した受信側デバイスのIPアドレスを判定するように、受信したデータフレームを調べる。データフレームルーティングブロック308は、データフレームの意図した受信側がIP拡張ゲートウェイ自体であると判定してもよく、その場合、データフレームルーティングブロック308は、データフレームが利用可能であるという指示で、トランスポート層スタック311に警告してもよい。トランスポート層スタック311の詳細(所望であれば、スタック300の中のネットワーク層スタック要素の一部であり得るか、またはそれを実装し得る)を、以降でさらに詳細に論議する。代替として、データフレームルーティングブロック308は、データフレームの意図した受信側デバイスが、無線アクセスポイント313を介してデータフレームルーティングブロック308が位置するIP使用可能ゲートウェイデバイスに接続された、WirelessHARTネットワーク内に位置する1つ以上のIPv6使用可能WirelessHARTデバイスであると判定してもよい。この場合、データフレームルーティングブロック308は、データフレームを6LoWPAN適合層310に提供する。なおもさらに、データフレームルーティングブロック308は、データフレームの意図した受信側デバイスが、イーサネットインターフェース301を介して、データフレームルーティングブロック308が位置するIP使用可能ゲートウェイデバイスに接続された、1つ以上のデバイスであると判定してもよい。この場合、データフレームルーティングブロック308は、データフレームをIPSec暗号化/解読ブロック306に提供する。
データフレームルーティングブロック308は、特定のデータフレームをルートする場所を判定する際にデータフレームルーティングブロック308を支援するように、1つまたはいくつかの「ルーティングテーブル」(ルーティングテーブル309として図7で図示される)を維持してもよい。概して、ルーティングテーブル309は、1つまたはいくつかのルート入力を含み、各ルート入力は、サブネットマスク、別のゲートウェイまたはルータのIPアドレス等を含んでもよい。ルーティングテーブル309の中の入力は、データフレームがインターネットに接続された意図した受信側デバイスに到達するために、データフレームが送信され得る、次のゲートウェイ/ルータのアドレスまたは場所を判定するように、データフレームルーティングブロック308によって利用されてもよい。IPルーティングテーブル309の中でデータフレームルーティングブロック308によって維持されるルーティングテーブル入力は、構成可能であり得、ルーティングテーブル309は、インターネットから、または場合によってはWirelessHARTネットワークを介して受信される、ルート入力を用いて更新されてもよい。
データフレームルーティングブロック308はまた、6LoWPAN適合層310からIPv6データフレームを、および/またはIP使用可能ゲートウェイのネットワーク層スタック311からIPv6データフレームを受信してもよい。データフレームルーティングブロック308は、受信したIPv6データフレームの意図した受信側デバイスのIPアドレスを判定してもよく、ルーティングテーブル309の中の情報に基づいて、データフレームルーティングブロック308は、IPv6データフレームを適切なルート入力と関連付けてもよい。次いで、データフレームルーティングブロック308は、IPv6データフレームを、関連ルート入力とともにIPsec暗号化/解読ブロック306へ伝送してもよく、またはIPv6パケットのIPアドレスがWirelessHARTネットワーク内のデバイスと関連付けられる場合、処理してWirelessHARTネットワーク上で送信するためにIPv6データフレームを第2の分岐305へ送信してもよい。
一般的に言えば、WirelessHARTネットワーク上でIPv6データパケットを送信するために、データフレームが、IP使用可能ゲートウェイデバイスが接続されるWirelessHARTネットワーク内のデバイスへ、またはデバイスと関連付けられるIPアドレスへ送信される必要があることを、データフレームルーティングブロック308が判定するときに、6LoWPAN適合層310は、データフレームルーティングブロック308からIPv6データフレームを受信する。この場合、6LoWPAN適合層310は、データフレームルーティングブロック308から受信されるIPv6データフレームから、1つ以上の6LoWPANデータフレームを生成するように、データフレーム断片を行い、そうする際に、6LoWPAN適合層310は、生成された6LoWPANデータフレームのそれぞれを、IPv6データフレームの意図した受信側のIPv6アドレスと関連付けてもよい。当然ながら、IPv6データフレームの意図した受信側のIPv6アドレスは、IPv6データフレーム自体から回収されてもよい。
しかしながら、図7で図示されるように、6LoWPAN適合層310は、WirelessHARTネットワーク上にある、またはそれに接続されるデバイスへ送達されるように、スタック300を実装するゲートウェイデバイス内のトランスポート層スタック要素311(少なくとも部分的に、IPネットワーク用のネットワーク層スタック要素も実装し得る)から直接、IPv6データフレームを受信してもよい。この場合、6LoWPAN適合層310は、トランスポート層スタック311から受信されるIPv6データフレームから、1つ以上の6LoWPANデータフレームを生成するように動作する。一般的に言えば、6LoWPAN適合層310が、データフレームルーティングブロック308から、および/またはスタック311から、IPv6データフレームを受信するとき、6LoWPAN適合層310は、受信される各IPv6データフレームに対する1つ以上の6LoWPANデータフレームを生成する。次いで、6LoWPAN適合層310は、分岐305において、1つ以上の6LoWPANデータフレームをWirelessHARTネットワーク層315(WirelessHART通信ネットワーク用のネットワーク層スタック要素である)へ伝送する。この通信の一部として、WirelessHARTネットワーク層315は、6LoWPAN適合ブロック310によって作成される1つ以上の6LoWPANデータフレームの意図した受信側のIPv6アドレスを受信してもよく、またはWirelessHARTネットワーク層315は、データフレーム自体からそのようなIPアドレスを判定してもよい。
当然ながら、理解されるように、6LoWPAN適合層310はまた、WirelessHARTネットワーク層315から6LoWPANデータフレームを受信してもよい。この場合において、6LoWPANブロック310は、これらのデータフレームをデフラグすることによって、すなわち、IPv6データフレームを生じるように種々の6LoWPANデータフレームまたは断片化データフレームからのデータペイロードを組み合わせることによって、受信した6LoWPANデータフレームから1つ以上のIPv6データフレームを生成するように動作する。この場合、6LoWPANブロック310は、生成されたIPv6データフレームをデータフレームルーティングブロック308へ、またはトランスポート層スタック311へ伝送してもよい。
ここで、WirelessHARTネットワーク層315が6LoWPANブロック310から6LoWPANデータフレームを受信するとき、WirelessHARTネットワーク層315は、6LoWPANデータフレームの中にある、またはそれと関連付けられるIPアドレス(元のIPv6データフレームのIPアドレスであろう)を有するWirelessHARTネットワーク内のデバイスの場所またはルーティング情報を判定するように、スタック300の動作の一部として記憶または保持される、WirelessHARTルーティングまたはリンキングテーブル316にアクセスしてもよい。当然ながら、WirelessHARTルーティングまたはリンキングテーブル316は、いくつかのルーティングテーブル入力および各ルーティングを含んでもよく、またはリンキングテーブル入力は、WirelessHARTネットワーク上のIPv6使用可能WirelessHARTデバイスのIPv6アドレス、およびIPv6使用可能WirelessHARTデバイスのWirelessHARTルーティング情報を含んでもよい。したがって、ルーティングまたはリンキングテーブル316は、WirelessHARTルーティングプロトコルを使用して、WirelessHART通信ネットワーク内のデバイスに到達することを可能にするように、これらのデバイスの特定のIPアドレス(すなわち、第1のネットワークルーティングプロトコルの中のルーティング情報)を、これらのデバイスのグラフID等のWirelessHARTルーティング情報(すなわち、第2のネットワークルーティングプロトコルのルーティング情報)と結び付ける、情報を記憶する。この場合、WirelessHARTネットワーク層315は、WirelessHARTルーティングテーブル316からのIPv6アドレスを有するWirelessHARTデバイスのWirelessHARTルーティング情報を「調べる」ために、6LoWPANデータフレームのそれぞれと関連付けられるIPv6アドレスを利用してもよい。次いで、WirelessHARTネットワーク層315は、これらのデータパケット内でIPv6プロトコルのネットワークルーティング情報を維持しながら、データパケットをWirelessHARTネットワーク内のデバイスへルートするために必要とされる、WirelessHARTネットワークルーティングプロトコルに対応するネットワークルーティング情報とともに、6LoWPANデータフレームのそれぞれをカプセル化してもよい。加えて、WirelessHARTネットワーク層315は、基礎的データパケットがIPv6データパケットである、またはIPv6データパケットに基づく(すなわち、IPv6データパケットの6LoWPAN断片である)ことを指示するフラグを用いて、WirelessHARTネットワークルーティング情報を符号化してもよい。
当然ながら、WirelessHARTネットワーク層315はまた、シリアルポートドライバ312からWirelessHARTカプセル化6LoWPANデータフレームを受信してもよい。この場合、WirelessHARTネットワーク層315は、これらのデータパケットからWirelessHARTネットワークルーティング情報を取り除き、生成された6LoWPANデータフレームを6LoWPAN適合層310に提供することによって、受信したWirelessHARTカプセル化6LoWPANデータフレームから1つ以上の6LoWPANデータフレームを生成してもよい。
シリアルドライバ312は、WirelessHARTネットワーク内で通信を提供するように、シリアル受信機/伝送機デバイス(図示せず)と連動してもよい(データリンク層スタック要素および物理層スタック要素を実装し得る)。一実施例では、シリアル受信機/伝送機デバイスが、RS−232プロトコルに従って動作してもよい一方で、他の別の実施例では、シリアル受信機/伝送機デバイスは、RS−485プロトコルに従って動作してもよい。本明細書に記載されるシリアルプロトコルは、実施例としての機能を果たすのみであり、一般に、任意の好適な有線または無線、直列または並列プロトコルが利用されてもよい。いずれにしても、シリアルドライバ312は、例えば、シリアル受信機/伝送機デバイスを介して、WirelessHARTカプセル化6LoWPANデータフレームを図6のアクセスポイント103および104等のWirelessHARTアクセスポイント(AP)へ伝送する。当然ながら、シリアルドライバ312は、シリアル受信機/伝送機デバイスを介して、WirelessHARTアクセスポイント(AP)からWirelessHARTカプセル化6LoWPANデータフレームを受信してもよい。
以前に論議されたように、(例えば、IPルーティングテーブル309を使用して)トランスポート層スタック311がIPv6データフレームの意図した受信側であることをデータフレームルーティングブロック308が判定するとき、データフレームルーティングブロック308は、データフレームがTCP、UDP、またはICMPデータフレームに対応するかどうかを判定するように、受信したデータフレーム(具体的には、そのデータフレームのヘッダ内のトランスポート情報)を調べてもよい。受信したデータフレームが、それぞれ、TCP、UDP、またはICMPデータフレームに対応することを判定すると、データフレームルーティングブロック308は、パケットのTCPブロック311−1、UDPブロック311−2、またはICMPブロック311−3に警告し、パケットをスタック311のトランスポート層の適切な部分に提供してもよい。この場合、1つ以上の標準および/またはカスタムアプリケーションが、スタック300が位置するデバイスのアプリケーション層314内に存在してもよく、これらの標準アプリケーションは、例えば、ファイル転送プロトコル(FTP)、TELNET、ハイパーテキスト転送プロトコル(HTTP)、簡易ネットワーク管理プロトコル(SNMP)、動的ホスト制御プロトコル(DHCP)等を実装するものを含んでもよい。カスタムアプリケーションは、例えば、IP使用可能ゲートウェイの監視および構成を含む、特定のタスクを行うものを含んでもよい。アプリケーション層314の中に常駐するアプリケーションは、アプリケーションプログラミングフレームワークおよびインターフェース315によって提供されるソフトウェアフレームワーク内で実行してもよい。常駐アプリケーションは、TCPブロック311−1、UDPブロック311−2、またはICMPブロック311−3からデータフレームを受信するために、アプリケーションプログラミングフレームワークおよびインターフェース層315の中に常駐するソフトウェアモジュールを利用してもよい。場合によっては、アプリケーションプログラミングフレームワークおよびインターフェース層315は、実行アプリケーションがデータフレームを受信、処理、および送信することを可能にするように、「ソケット」インターフェースを提供してもよい。加えて、常駐アプリケーションは、受信したデータフレームに応答して、データフレームを生成してもよい。常駐アプリケーションは、自律的に、または受信したデータフレームに応答して、データフレームを生成してもよく、常駐アプリケーションは、アプリケーションプログラミングフレームワークおよびインターフェース層315の中に常駐するソフトウェアモジュールを利用することによって、生成されたデータフレームを伝送してもよい。これらのモジュールは、ひいては、生成されたデータフレームを、TCPブロック311−1、UDPブロック311−2、またはICMPブロック311−3のうちのいずれか1つに伝送してもよい。次いで、TCPブロック311−1、UDPブロック311−2、またはICMPブロック311−3は、付加的な情報をデータフレームに付加し、イーサネットインターフェース301またはWirelessHARTアクセスポイント313のいずれかを介して、何らかの他のデバイスへ送達するために、データフレームをデータフレームルーティングブロック308へ伝送してもよい。
図8は、WirelessHART通信およびIPv6データフレーム(または任意の他のIPデータフレーム)を使用する通信を実装するように、例えば、図5のフィールドデバイス109等のIP使用可能WirelessHARTフィールドデバイスにおいて実装され得る、別のネットワークプロトコルスタック例320のブロック図である。一般的に言えば、プロトコルスタック320は、WirelessHART通信プロトコルの物理層およびデータリンク層、ならびにスタック320の拡張WirelessHARTネットワーク層を実装する、一般的な一組の下層321を有する。プロトコルスタック320はまた、2組の上層323および325も含み、一組の上層のそれぞれは、WirelessHART通信ネットワークプロトコル(323)またはIP通信ネットワークプロトコル(325)のいずれか一方のトランスポートおよびアプリケーション層を実装することに関与する。ここで、一般的な一組の下層321は、WirelessHART通信ネットワークと関連付けられる802.15.4プロトコル標準に準拠する通信チャネルを介してデータフレームを受信および伝送する、802.15.4PHYブロック322を含むものとして図示される。通信チャネルは、例えば、図6のWirelessHART通信ネットワーク100内の通信チャネルに対応してもよい。802.15.4PHYブロック322は、デジタル減衰器、シンセサイザ、アナログフィルタ、アナログ・デジタル変換器(ADC)、およびデジタル・アナログ変換器等のハードウェアデバイス、ならびにWirelessHART通信ネットワーク内の任意の他のデバイスと通信する。そうするために、802.15.4PHYブロック322は、受信したデータフレームの完全性をフィルタにかけ、復調し、および検証するアルゴリズム、伝送前に802.15.4プロトコル標準に準拠する形式にデータフレームを変換するアルゴリズム、および802.15.4プロトコル標準に準拠するようにデータフレームの伝送をスケジュールに入れるアルゴリズムを実装する。一般的な場合のように、802.15.4PHYブロック322は、WirelessHART媒体アクセス制御(MAC)ブロック324に接続され、802.15.4プロトコル標準に準拠するデータフレームが受信されるときに指示をブロック324に伝送する。802.15.4PHYブロック322(物理層スタック要素または物理層要素である)はまた、データフレームが802.15.4プロトコル標準に準拠する通信チャネルを介して伝送されるために利用可能であるときに、WirelessHART MACブロック324から指示を受信し、そのような場合において、WirelessHARTネットワーク上で、そのデータフレームをWirelessHARTネットワーク内の別のデバイスへ伝送するように、標準方式で動作する。
一般に、WirelessHART MACブロック324は、WirelessHARTデータリンク層プロトコルに従って受信したデータフレームのルーティングを実装するステップを行い、したがって、データリンク層スタック要素である。WirelessHART MACブロック324は、WirelessHARTネットワーク内の受信したデータフレームの意図した受信側デバイスを判定するように、受信したデータフレームのWirelessHARTデータリンク層プロトコルヘッダを調べてもよい。例えば、WirelessHART MACブロック324は、受信したデータフレームの意図した受信側を判定するように、WirelessHARTデータリンク層プロトコルヘッダの中の宛先アドレスフィールドを利用してもよい。1つのシナリオでは、受信したデータフレームのWirelessHARTプロトコルヘッダの中の宛先アドレスは、WirelessHART MACブロック324を実装するフィールドデバイスのWirelessHART MACアドレスに対応してもよい。この場合、WirelessHART MACブロック324は、このデータパケットの存在を示す指示を拡張WirelessHARTネットワーク層326へ伝送してもよく、かつネットワーク層326の中で処理するためにパケットを転送してもよい。別のシナリオでは、WirelessHART MACブロック324は、別のフィールドデバイスが受信したデータフレームの意図した受信側であることを判定してもよい。このシナリオでは、WirelessHART MACブロック324は、802.15.4PHYブロック322を介して、受信したデータフレームをデータフレームの意図した受信側へ伝送してもよい。
WirelessHART MACブロック324はまた、拡張WirelessHARTネットワークブロック326(WirelessHARTネットワーク用のネットワーク層スタック要素である)からデータフレームを受信してもよい。理解されるように、WirelessHART MACブロック324は、WirelessHARTデータリンクプロトコルヘッダとともに、WirelessHARTネットワーク上で送信されるデータフレームをカプセル化してもよい。WirelessHART MACブロック324は、例えば、1つまたは複数の意図した受信側のデバイスの宛先アドレスに対応する情報を用いて、WirelessHARTデータリンクプロトコルヘッダを更新してもよい。以前に説明されたように、WirelessHART MACブロック324は、データフレームが伝送されるために利用可能であることを802.15.4PHYブロック322に指示してもよい。
拡張WirelessHARTネットワークブロック326は、例えば、受信したデータフレームのWirelessHARTプロトコルヘッダの中の宛先アドレスが、フィールドデバイスがデータフレームの意図した受信側であることを示すときに、WirelessHART MACブロック324から指示を受信するように動作する。以前に説明されたように、伝送デバイス、例えば、図1のIPv6使用可能WirelessHARTゲートウェイ11、またはWirelessHARTネットワーク内の別のフィールドデバイスは、データフレームが基礎的IPv6データパケットまたはデータフレームと関連付けられることを示すフラグを、IPv6データフレーム断片をカプセル化するWirelessHARTネットワークルーティングプロトコルヘッダの中に含んでもよい。拡張WirelessHARTネットワークブロック326は、WirelessHARTネットワーク層プロトコルヘッダの中のフラグまたは指示の検出に基づいて、受信したデータフレームがIPv6データフレーム断片であるかどうか、または代わりに、受信したデータフレームが標準WirelessHARTデータパケットであるかどうかを判定してもよい。パケットがIPv6パケットまたは断片を含有することを示すフラグを検出すると、拡張WirelessHARTネットワークブロック326は、IPv6データフレーム断片を待ち行列にコピーしてもよく、かつ1つ以上のIPv6データフレーム断片が待ち行列にコピーされるという指示を、第2組の上層325内の6LoWPANブロック328に提供してもよい。
加えて、動作中、拡張WirelessHARTネットワークブロック326は、WirelessHARTネットワークルーティングプロトコルを使用してWirelessHARTネットワーク上で送信するために、6LoWPANブロック328からIPv6データフレーム断片を受信してもよい。そうするために、WirelessHARTネットワークブロック326は、これらのパケット内にIPネットワークルーティングプロトコル情報の全てを維持しながら、WirelessHARTネットワークルーティングプロトコルヘッダとともに受信したIPv6データフレームをカプセル化する。しかしながら、拡張WirelessHARTネットワークブロック326はまた、WirelessHARTデータパケット(またはネットワークルーティングプロトコルヘッダ)がIPv6データフレーム断片をカプセル化することを示すフラグまたは他の指示を、WirelessHARTネットワークルーティングプロトコルヘッダの中に設定する。
一組のパケットが、IPデータパケットと関連付けられるスタック325の第2組の上層へ送達されるとき、6LoWPANブロック328は、拡張WirelessHARTネットワークブロック326から受信される1つ以上のIPv6データフレーム断片を組み立て直してIPv6データフレームを生成するように動作する。6LoWPANブロック328は、6LoWPANブロック328がIPv6データフレームを生成するときに、指示をIPv6ネットワークルーティング層ブロックおよびトランスポート層プロトコルブロック330へ伝送してもよい。6LoWPANブロック328はまた、IPv6ネットワークルーティング層ブロックおよびトランスポートプロトコルブロック330からIPv6データフレームを受信してもよく、この場合、6LoWPANブロック328は、6LoWPAN断片化技法を使用して、IPv6データフレームを1つ以上のデータフレーム断片に断片化するように動作する。そうすると、6LoWPANブロック328は、パケットが伝送されるべきであるWirelessHARTデバイスの指示とともに、指示を拡張WirelessHARTネットワークブロック326へ伝送し、および/またはWirelessHARTネットワークルーティングプロトコルを使用してWirelessHART通信ネットワーク上で送信するために、ネットワークブロック326に生成されたデータフレーム断片を提供する。多くの場合において、この指示は、WirelessHARTネットワーク内のゲートウェイデバイスへのものであってもよい。いずれにしても、6LoWPANブロック328の構造および機能要素は、図9を参照してさらに詳細に論議される。
また、スタック325の第2組の上層内で、IPv6ネットワークルーティング層ブロックおよびトランスポートプロトコルブロック330は、ネットワークルーティング層スタック要素、ならびにIPベースのネットワークルーティングプロトコル活動およびトランスポート層プロトコル処理を行うトランスポート層スタック要素を実装し、6LoWPANブロック328によって提供されるIPv6データフレームを復号するか、またはアプリケーションプログラミングインターフェース(API)332を介してアプリケーションブロック334によって提供されるIPv6データフレームを符号化するかのいずれかである、UDP、TCP、またはICMPトランスポートブロックのうちのいずれかまたは全てを含んでもよい。アプリケーションプログラミングインターフェースの実施例は、ソケットインターフェースを含む。当然ながら、ブロック330はまた、IPv6データパケットの中のネットワークルーティング情報の符号化および復号等のネットワークルーティング層活動も行う。別個に、アプリケーションブロック334の中で実行するアプリケーションは、アプリケーションプログラミングインターフェース332を介して、フィールドデバイス特有の情報336にアクセスし、それを制御し、および構成してもよい。アプリケーションブロック334(IPまたはソケットベースのアプリケーション層スタック要素であるか、またはそれを実装する)の中で実行するアプリケーションは、制約アプリケーションプロトコル(CoAP)に準拠してもよい。CoAPプロトコルの詳細は、tools.ietf.org/html/draft−ietf−core−coap−03というウェブURLで入手可能である。
実施例として、アプリケーションブロック334で実行するアプリケーションは、WirelessHART通信ネットワーク100を介して、遠隔コンピュータデバイス、例えば、図6のデバイス116から、フィールドデバイス状態情報の要求を受信してもよい。アプリケーションは、アプリケーションプログラミングインターフェース332を介してフィールドデバイス状態情報を回収し、コンピュータデバイス116へ送達されるように、IPv6トランスポートプロトコルブロック330、6LoWPANブロック328、およびスタックの一般的な一組の下層321を介して、1つ以上のIPv6データフレームとして状態情報を伝送してもよい。図6を参照して以前に説明されたように、IPv6データフレームは、WirelessHART通信ネットワーク100を介してコンピュータデバイス116へ伝送されてもよい。
以前に論議されたように、拡張WirelessHARTネットワークブロック326は、WirelessHART MACブロック324から受信される着信データパケットを処理し、そのデータパケットのネットワークルーティング情報内のフラグの存在を検出することによって、WirelessHARTネットワークルーティングプロトコルヘッダによってカプセル化されたデータフレームがIPv6データフレーム断片に対応することを判定してもよい。しかしながら、受信したデータフレームをカプセル化するWirelessHARTプロトコルヘッダがフラグを含まない(またはフラグが基礎的IPv6データパケットを示すように設定されていない)場合において、拡張WirelessHARTネットワークブロック326は、標準WirelessHARTデータパケットの存在の指示を、スタック323の第1組の上層内のWirelessHARTトランスポートブロック338へ伝送する。次いで、WirelessHARTトランスポート層スタック要素を実装するWirelessHARTトランスポートブロック338は、このデータパケットにアクセスし、標準WirelessHARTトランスポート層処理を使用してデータパケットを処理し、受信したデータフレームを処理した後に指示をHARTアプリケーションブロック340(WirelessHARTアプリケーション層スタック要素であるか、またはそれを実装する)へ伝送してもよい。次いで、アプリケーションブロック340は、任意の公知または所望の方式でデータパケットを処理するように、WirelessHART準拠アプリケーションを実装する。
理解されるように、拡張WirelessHARTネットワークブロック326は、WirelessHARTトランスポートブロック338から、WirelessHARTネットワークを介して伝送するためのWirelessHARTデータフレームを受信してもよい。前述のように、WirelessHARTネットワークブロック326は、WirelessHARTネットワークプロトコルヘッダとともに、受信したWirelessHARTデータフレームをカプセル化するように動作してもよい。しかしながら、この場合、データフレームがWirelessHARTトランスポートブロック338から受信され、したがって、標準WirelessHARTデータパケットであるため、拡張WirelessHARTネットワークブロック326は、IPv6データフレーム断片としてWirelessHARTトランスポートブロック338から受信されるデータフレームにフラグを付けない。この動作の結果として、WirelessHARTネットワークブロック326は、WirelessHART通信ネットワーク上でWirelessHARTパケットを送信するように、公知のWirelessHARTネットワークルーティングプロトコルプロシージャに従ってWirelessHARTパケットを処理する。
前述のように、図7のアプリケーション層314の中に常駐するアプリケーション、および図8のアプリケーションブロック334は、APIを利用することによって動作するように適合されてもよい。APIにおける機能性の起動を含むプログラミング情報が、ソフトウェア開発キット(SDK)の形態で、フィールドデバイスベンダによって入手可能にされてもよい。動作中、第三者ソフトウェア開発者が、CD−ROM等の有形で非一過性の媒体を介してSDKを受容してもよい。開発者は、SDKを利用することによって、汎用コンピュータ上でカスタムアプリケーションを作成してもよい。そのようなカスタムアプリケーションは、そのように所望される場合、インターネットおよびWirelessHARTネットワークを介してフィールドデバイスに「プッシュ配信」されてもよい。代替として、ベンダは、オンラインアプリケーションストアでそのようなカスタムアプリケーションを「ホスト」してもよい。プラントオペレータは、インターネットおよびWirelessHARTネットワークを介して、オンラインアプリケーションストアから、カスタムアプリケーションをフィールドデバイスへ選択的に「引き出し」てもよい。
図9は、それぞれ、受信した6LoWPANデータフレームからIPv6データフレームを、および受信したIPv6データフレームから6LoWPANデータフレームを生成し得る、6LoWPANブロック例350のブロック図である。6LoWPANブロック350は、図7の6LoWPAN適合層310に対応してもよく、その場合、6LoWPANブロック350は、インターフェース360を介してデータフレームルーティングブロック308(図7)と通信してもよい。6LoWPANブロック350はまた、インターフェース361を介して、WirelessHARTネットワーク層315(図7)と通信してもよい。別の実施例では、6LoWPANブロック350は、図8の6LoWPANブロック328に対応してもよい。この実施例では、6LoWPANブロック350は、図8のIPv6トランスポートプロトコルブロック330からIPv6データフレームを受信し、かつそこから伝送してもよく、6LoWPANブロック350は、図8の拡張WirelessHARTネットワークブロック326からIPv6データフレーム断片を受信し、かつそこから伝送してもよい。
図9で図示されるように、6LoWPANブロック350は、断片化モジュール353に通信可能に連結されるヘッダ圧縮モジュール351と、ヘッダ解凍モジュール352に通信可能に連結される再組立モジュール354とを含んでもよい。ここで、ヘッダ圧縮モジュール351は、インターフェース360−1を介してIPv6データフレームを受信してもよく、かつ6LoWPAN準拠圧縮IPv6ヘッダを生成するように受信したIPv6データフレームに作用してもよい。ヘッダ圧縮モジュール351に連結される断片化モジュール353は、ヘッダ圧縮モジュール351から、圧縮IPv6ヘッダを含むIPv6データフレームを受信し、IPv6データフレームをいくつかの6LoWPAN準拠データフレームに「断片化」するように動作する。断片化モジュール353は、「断片ヘッダ」をいくつかの6LoWPANデータフレームのそれぞれに付加してもよい。断片化モジュール例353は、図10Aを参照して以下で説明される。断片ヘッダは、いくつかの6LoWPANデータフレームを元のIPv6データフレームへ組み立て直すことを可能にする情報を含んでもよい。当然ながら、再組立は、IPv6データフレームの意図した受信側であるデバイスにおいて、または中間デバイスにおいて行われてもよい。6LoWPANプロトコルに従った、圧縮IPv6ヘッダの生成およびIPv6データフレームの断片化に関する情報は、RFC 4944, “Transmission of IPv6 Packets over IEEE 802.15.4 Networks”で、より具体的に説明されている。
図9の断片化モジュール353は、例えば、インターフェース361−1を介して、IPv6データフレームから生成されるいくつかの6LoWPAN準拠データフレームをWirelessHARTネットワーク層315へ伝送してもよい。このプロセスの一部として、断片化モジュール353は、いくつかの6LoWPAN準拠データフレームの意図した受信側のIPv6アドレスをWirelessHARTネットワーク層315に提供してもよい。以前に説明されたように、WirelessHARTネットワーク層315は、いくつかの6LoWPANデータフレームの意図した受信側であるIPv6使用可能WirelessHARTデバイスのWirelessHARTルーティング情報を、WirelessHARTルーティングテーブル316(図7)から「参照する」ために、IPv6アドレスを利用してもよい。当然ながら、そのような参照テーブルは、本明細書で説明される他のIP使用可能WirelessHARTデバイスのうちのいずれかの中に存在してもよい。
別個に、図9の6LoWPANブロック350は、例えば、インターフェース361−2を介して、WirelessHARTネットワーク層315から6LoWPANデータフレーム断片を受信してもよい。6LoWPANデータフレーム自体は、IPv6使用可能WirelessHARTデバイスによってIPv6フレームから生成されてもよい。次いで、再組立モジュール354が、受信した6LoWPANデータフレームからIPv6データフレームを生成してもよい。受信した6LoWPANデータフレーム断片のそれぞれは、典型的には、断片ヘッダを含み、再組立モジュール354は、任意の公知の方式でIPv6データフレームを組み立て直すために断片ヘッダを利用するであろう。再組立モジュール例354が、図10Bを参照して以下で説明される。再組立モジュール354は、(データパケットのIPアドレス等のIPネットワークルーティングプロトコル情報とともに)元のIPv6ヘッダを作成するように圧縮IPv6ヘッダを「解凍」するヘッダ解凍モジュール352へ、組み立て直されたIPv6データフレームを伝送してもよい。次いで、ヘッダ解凍モジュール352は、インターフェース360−2を介して、IPv6データフレームを、例えば、図7のデータフレームルーティングブロック308へ伝送する。
図10Aは、6LoWPANブロック350において実装され得る、断片化モジュール例500を描写する。この場合、待ち行列501が、ヘッダ圧縮モジュール351から1つ以上のIPv6データフレームを受信してもよく、フラグメンタ502が、1つ以上のIPv6データフレームが待ち行列501の中で受信されるときに指示を受信してもよい。フラグメンタ502は、標準6LoWPAN断片化技法を使用して、待ち行列501から回収される1つ以上のIPv6データを断片化してもよく、かつ送信バッファ503の中に断片を記憶してもよい。ここで、一組の断片503−1、503−2、および503−3のそれぞれは、6LoWPANデータフレームからの異なる断片に対応し、これらの断片のサイズ(長さ)は、他の予期されたWirelessHARTネットワークルーティング、データリンク、および物理層情報がそれに追加された後に、各断片が、WirelessHARTプロトコル内のデータパケットの最大許容サイズ内に収まるであろうということを確実にするように選択されてもよい。以前に論議されたように、フラグメンタ502は、断片ヘッダをいくつかの6LoWPANデータフレーム503−1、503−2、503−3等のそれぞれに付加してもよい。所望であれば、6LoWPANデータフレーム503−1...503−3が送信バッファ503の中に記憶される前に、断片ヘッダが、6LoWPANデータフレーム503−1...503−3のそれぞれに付加されてもよい。送信バッファ503は単一の連続バッファとして描写されているが、他の実施形態では、送信バッファ503は、いくつかの不連続バッファを含んでもよい。
フラグメンタ502はまた、そのそれぞれが送信バッファ503の中の場所を参照する、いくつかのポインタ504−1...504−3を含み得る、送信バッファマップ504を含んでもよい。これらのポインタのそれぞれは、6LoWPANデータフレームの開始を示してもよい。所望であれば、各ポインタはまた、対応する6LoWPANデータフレームの状態を示し得る、状態ブロックと関連付けられてもよい。フラグメンタ502は、送信バッファマップ504に基づいて送信バッファ503にアクセスしてもよく、かつ6LoWPANデータフレーム503−1...503−2のそれぞれをアウトバウンド待ち行列505に転送してもよい。この場合、フラグメンタ502は、6LoWPANデータフレーム503−1...503−2のそれぞれがアウトバウンド待ち行列505に転送された後に指示をWirelessHARTネットワーク層315へ伝送してもよく、以前に論議されたように、フラグメンタ502は、6LoWPANデータフレーム503−1...503−3等の意図した受信側のIPアドレスをWirelessHARTネットワーク層315に提供してもよい。
図10Bは、例えば、6LoWPAN適合モジュール350において実装され得る、再組立モジュール例520を描写する。ここで、再組立モジュール520は、1つ以上の6LoWPANデータフレームがインバウンド待ち行列521の中で受信されるときに、WirelessHARTネットワーク層(例えば、ネットワーク層315)から指示を受信するリアセンブラ522を含む。リアセンブラ522は、インバウンド待ち行列521から受信バッファ523の中へ6LoWPANデータフレームのそれぞれを転送してもよい。次いで、リアセンブラ522は、標準または周知の6LoWPAN再組立技法を使用してIPv6データフレームを生成するように作成されるときに、6LoWPANデータフレームのそれぞれに付加された断片ヘッダを利用してもよい。リアセンブラ522は、特定のIPv6データフレームを構成する6LoWPANデータフレームのそれぞれの受信を追跡するために、受信側バッファマップ524を利用してもよい。1つのシナリオでは、WirelessHARTネットワーク層315は、順番に反して6LoWPANデータフレームを受信してもよく、リアセンブラ522は、データフレーム断片を含むデータパケットの全てがインバウンド待ち行列521の中で受信されて記憶されたときに、IPv6データフレームを依然として組み立て直してもよい。
図11Aは、IPデータフレームとしてインターネットを介して受信され、低出力断片化技法を使用して、WirelessHARTネットワークルーティングプロトコル等の第2のネットワークルーティングプロトコルを介して伝送され得る、データフレーム例550の説明図を描写する。例証の目的で、データフレーム550は、IPv6データフレームであってもよく、インターネットを介してIPv6使用可能WirelessHARTゲートウェイにおいて受信されると仮定される。図11Aで見られるように、データフレーム550は、遠隔コンピュータデバイスによって生成され得るアプリケーションペイロードデータ550−1、ならびにIPデータパケット作成およびルーティングの通常動作に従ってそこに付加される、種々の他のヘッダおよびトレーラを含む。
好適なプロトコルが、IPv6データフレーム550を1つ以上のデータフレーム断片552−1...552−nに断片化するために利用されてもよい。この実施例では、IPv6データフレーム550は、6LoWPANプロトコルに準拠する方法を使用して断片化されてもよいが、他の断片化技法が代わりに使用されてもよい。各データフレーム断片は、データフレーム断片552−1が断片ヘッダ情報553−1とともにカプセル化されるものとして例証されるように、6LoWPAN断片ヘッダ情報553とともにカプセル化されてもよい。データフレーム断片ヘッダ情報が、断片ヘッダ、圧縮IPプロトコルヘッダ、および(IPトランスポートプロトコル用の)圧縮トランスポートプロトコルヘッダを含むものとして例証される一方で、各データフレーム断片のペイロードは、元のIPv6データパケットのアプリケーションペイロード550−1の一部分である。
理解されるように、データフレーム断片552−1等の各データフレーム断片は、WirelessHARTネットワーク等の低出力ネットワーク内でデータフレーム断片552−1のルーティングを可能にするように、好適な第2のネットワークルーティングプロトコルヘッダとともにカプセル化される。この実施例では、データフレーム552−1は、WirelessHARTカプセル化IPv6データフレーム断片554を生成するようにWirelessHARTプロトコルヘッダとともにカプセル化されてもよい。WirelessHARTプロトコルヘッダは、WirelessHARTネットワークルーティングヘッダ554−1と、WirelessHARTデータリンク層ヘッダ554−2とを備える。WirelessHARTカプセル化IPv6データフレーム断片554はさらに、WirelessHART通信ネットワークを介して伝送される前に、低出力通信標準、例えば、802.15.4標準に準拠する、物理的ヘッダ554−3および物理的トレーラ554−4とともにカプセル化されてもよい。
WirelessHARTプロトコルに対応するデータフィールドの中の1つまたはいくつかのビットは、データフレーム断片がIPv6データフレームに対応することを受信デバイスに示すように割り振られてもよい。図11Bは、HARTネットワークルーティングヘッダ554−1のDLPDUフィールド560を図示する。この実施例では、WirelessHARTヘッダがIPv6データフレーム断片をカプセル化することを受信デバイスに示すために、ビット7(参照番号561によって示される)がフラグとして利用される。ビット7(561)は、WirelessHARTデータフレームがWirelessHARTデータフレーム内のIPv6データフレーム断片の存在を示すように伝送される前に、「1」に設定されてもよい。図7および8を参照すると、WirelessHARTネットワーク層315および拡張WirelessHARTネットワークブロック326は、データフレームが伝送される前に、WirelessHARTネットワークルーティングプロトコルヘッダのDLPDUフィールド560のビット7(561)を論理「1」に設定してもよい。
図11Cは、WirelessHARTネットワークルーティングヘッダ554−1の制御バイト565に対応し、制御バイト565の中のデータフィールドも、または代わりに、WirelessHARTプロトコルヘッダが暗号化された通信チャネルを介して受信されるデータフレーム断片をカプセル化するかどうかを示すように割り振られてもよい。例えば、データフレーム断片が暗号化されたWirelessHART通信チャネルを介して受信されるかどうかを示すために、ビット4(参照番号566で示される)が利用されてもよい。この実施例では、ビット5(567)が、データフレーム断片内のセキュリティヘッダの場所を示すために利用される。
以下の表1は、WirelessHARTネットワークルーティング情報内で暗号化およびセキュリティを提供するために使用され得る、制御バイトのビット4(566)およびビット5(567)の一組の可能な組み合わせを示す。


ビット4およびビット5の設定は、IPv6使用可能WirelessHARTゲートウェイにおいて、およびWirelessHARTネットワーク内のフィールドデバイスの中で構成されてもよい。表1を参照すると、ビット4が論理「0」であるように構成される場合において、WirelessHART通信ネットワーク内で動作するフィールドデバイスは、データフレームを受信および伝送するために安全なIP通信を利用してもよい。代替として、フィールドデバイスは、安全でない通信チャネルを介して通信してもよい。安全なIP通信チャネルが利用される場合において、アプリケーションは、安全な通信を実施することに関与し得る。
ビット4(566)が論理「1」に構成され、ビット5(567)が論理「1」に構成される場合において、IPv6使用可能WirelessHARTゲートウェイは、WirelessHARTネットワークヘッダ554−1の後にセキュリティヘッダを挿入するように、WirelessHARTネットワーク層において方法を実装してもよい。これらの場合において、IPv6使用可能WirelessHARTは、安全なIP通信チャネルを介してインターネットからIPv6データフレームを受信してもよいが、IPv6データフレーム断片は、IPv6使用可能WirelessHARTゲートウェイにおいて断片化される前に解読されてもよい。
ビット4(566)が論理「1」に構成され、ビット5(567)が論理「0」に構成される場合において、IPv6使用可能WirelessHARTゲートウェイは、6LoWPANデータフレーム断片ヘッダ554−5の後にセキュリティヘッダを挿入するように、WirelessHARTネットワーク層において方法を実装してもよい。受信フィールドデバイスが、IPv6データフレーム断片を受信および伝送するときに、適切なセキュリティ機構を実施するようにビット4およびビット5を解釈するであろう。
図8を参照して論議されたように、拡張WirelessHARTネットワークブロック326は、受信したデータフレームのビット7(561)が設定されていない(0)ことを判定してもよい。この場合、拡張WirelessHARTネットワークブロック326は、標準WirelessHART通信を使用して、処理するために指示を着信データフレームのWirelessHARTトランスポートブロック338へ伝送する。データフレーム554は、例えば、どのWirelessHARTプロトコルまたはWirelessHARTアプリケーションにデータフレーム554アプリケーションペイロードが対応するかを判定するために、WirelessHARTトランスポートブロック338および/またはHARTアプリケーションブロック340によって利用される情報を含み得る、WirelessHARTプロトコル指標フィールドを含んでもよい。
図6のネットワーク例を再び参照すると、IPv6使用可能WirelessHARTフィールドデバイス108は、受信したIPv6データフレーム断片の意図した受信側が、他のIPv6使用可能フィールドデバイスである状況で、WirelessHART通信ネットワーク100を介して、WirelessHARTプロトコルカプセル化IPv6データフレーム断片を受信してもよい。IPv6使用可能フィールドデバイス108はまた、受信したIPv6データフレーム断片の意図した受信側が他のIPv6使用可能フィールドデバイスである状況で、WirelessHART通信ネットワーク100を介して、WirelessHARTプロトコルカプセル化非IPv6データフレームを受信してもよい。ここで、WirelessHART通信ネットワーク内でIPv6データフレーム断片をルートするようにWirelessHARTフィールドデバイスにおいて実装され得るいくつかの方法を、さらに詳細に論議する。理解されるように、IPv6使用可能WirelessHARTフィールドデバイス、場合によっては、非IPv6使用可能WirelessHARTフィールドデバイスは、WirelessHART通信ネットワーク内でIPv6データフレーム断片および標準WirelessHARTデータフレームをルートするために、以下で論議されるいくつかの方法のうちのいずれか1つを利用するように構成されてもよい。場合によっては、以下で論議される先述の方法は、2つの他のIPv6使用可能WirelessHARTフィールドデバイスの間でIPv6データフレーム断片をルートするために、単一の中間IPv6使用可能WirelessHARTデバイスまたは単一の中間非IPv6使用可能WirelessHARTデバイスを使用するが、いくつかの中間IPv6使用可能WirelessHARTデバイスまたは非IPv6使用可能WirelessHARTデバイスが、WirelessHART通信ネットワーク内でIPv6データフレームの「マルチホップ」ルーティングを可能にするために、以下で論議される方法で中間デバイスとして使用されてもよい。
図12は、WirelessHART通信ネットワーク例600内のIPv6使用可能WirelessHARTフィールドデバイスにおいて実装され得る、ルーティング方法例の説明図を描写する。ネットワーク600内の種々の異なるIPv6使用可能WirelessHARTフィールドデバイスのネットワーク通信スタック601、602、および603はそれぞれ、別個のIPv6使用可能WirelessHARTフィールドデバイスにおいて実装される。理解されるように、スタック601、602、および603は、図8のスタック320の記述と同一または同様であり得、概して、それに従って動作してもよい。この場合、ネットワーク通信スタック602は、中間WirelessHARTフィールドデバイスにおいて実装され、ネットワーク通信スタック601および603を実装するフィールドデバイス間で、WirelessHARTデータフレームおよびWirelessHARTデータフレームの中にカプセル化されたIPv6データフレーム断片の両方をルートするように動作する。理解されるように、IPv6データフレーム断片は、IPv6データフレーム断片のそれぞれ1つをカプセル化するWirelessHARTプロトコルヘッダに含まれる情報(ネットワークルーティング情報、データリンク層情報、および物理層プロトコル情報を含む)に基づいて、通信ネットワーク600上でルートされる。
1つのシナリオ例では、スタック601内のHARTアプリケーションブロック601−1の中で実行するアプリケーションは、スタック603を実装するデバイスのHARTアプリケーションブロック603−1の中で実行するアプリケーションに意図されたWirelessHARTデータフレームを生成する。アプリケーションブロック601−1は、WirelessHARTネットワークルーティング情報をデータパケットに追加し、ネットワーク600上での処理およびルーティングのために、このデータパケットをWirelessHART MAC(データリンク)層601−6および物理層601−7へ送信することによって、データパケットを処理する拡張WirelessHARTネットワークブロック601−2へ送達するために、そのデータフレームをWirelessHARTトランスポートブロック601−3に提供する。別のシナリオ例では、アプリケーションブロック601−4の中で実行するアプリケーションが、スタック603を実装するデバイスのアプリケーションブロック603−4の中で実行するIPv6アプリケーションに意図されたIPv6データフレームを生成する。図8を参照して以前に説明されたように、スタック601のIPトランスポート層の中の6LoWPANブロック601−5は、アプリケーションブロック601−4の中で実行するアプリケーションから受信されるIPv6データフレームを断片化する。この場合、拡張WirelessHARTネットワークブロック601−2は、スタック601−2、601−6、および601−7の下層を使用して、上記で説明されるように、WirelessHARTプロトコルヘッダともに、(アプリケーションブロック601−4および6LoWPANブロック601−5からの)IPv6データフレーム断片のそれぞれをカプセル化する。当然ながら、拡張WirelessHARTネットワークブロック601−2は、WirelessHART通信ネットワークを介してデータフレームを伝送する前に、ネットワーク通信スタック603を実装するWirelessHARTフィールドデバイスの論理アドレス、またはそこへのルートに対応するルーティング情報を用いて、それぞれのそのようなデータフレームに対応するWirelessHARTプロトコルヘッダを更新する。この情報は、WirelessHARTネットワーク内のデバイスのIPアドレスを、これらのデバイスに到達するためのWirelessHARTルーティング情報に関係付ける、ルーティングテーブル(図12では示されていない)の中に記憶されてもよい。拡張WirelessHARTネットワークブロック601−2はまた、伝送前に、WirelessHARTプロトコルヘッダがIPv6データフレーム断片をカプセル化することを示すフラグを用いて、IPv6データフレーム断片に対応するデータフレームのWirelessHARTプロトコルヘッダを符号化する。
ネットワーク上で送信された後、通信スタック602を実装するIPv6使用可能フィールドデバイスは、いくつかのWirelessHART符号化IPv6データフレーム断片またはWirelessHARTパケットを受信し、スタック602の物理層602−7、データリンク層602−6、およびネットワーク層602−2の部分の中で、これらのパケットを処理する。両方の場合において、各データパケット(WirelessHARTデータパケットまたはWirelessHARTプロトコルヘッダとともにカプセル化されたIPv6データフレーム断片のいずれか一方)のWirelessHARTネットワークルーティング情報は、パケットがWirelessHARTネットワーク600内で別のデバイスへ送信されるものであることを示すであろう。通信スタック602の下層602−7、602−6、および602−2は、パケットを、次のWirelessHARTデバイス、この場合はスタック603を実装するデバイスへ送信する前に、このパケットの中の適切なWirelessHARTネットワークルーティング、データリンク、および物理層情報を復号および再符号化するように、標準WirelessHARTネットワークルーティングおよびデータリンクおよび物理リンクアドレス指定を使用して、パケットを処理する。理解されるように、データパケット(WirelessHARTデータパケットまたはWirelessHARTネットワークルーティング情報とともにカプセル化されるIPv6データパケット)が、スタック602を実装するデバイス内のアプリケーションにアドレス指定されないため、各データパケットは、このデバイスを通してルートされるように、スタック602のWirelessHARTネットワークブロック602−2まで処理される必要しかない。したがって、この場合、拡張WirelessHARTネットワークブロック602−2は、(WirelessHARTネットワークおよびデータリンクルーティングプロトコルを使用して)ネットワークおよびデータリンク層ルーティングを行って、受信したデータフレーム断片またはWirelessHARTパケットを、通信スタック603を実装するIPv6使用可能フィールドデバイスへ送信するために、受信したデータフレーム断片のそれぞれをカプセル化するWirelessHARTプロトコルヘッダの中、またはWirelessHARTパケットの中の情報を利用する。経路610は、IPv6および非IPv6データフレームの両方が横断し得る、例証的なルートに対応し、点線は、標準WirelessHARTパケットまたはIPv6符号化パケットがスタック601、602、603内で横断する、異なる経路を示す。
当然ながら、メッセージまたはデータパケットがスタック603を実装するデバイスにおいて受信されるとき、メッセージは、図8に関して上記で説明されるように拡張WirelessHARTネットワークブロック603−2まで処理される。この場合、パケットは、最終的に、データパケットのネットワークルーティング情報を介して、スタック603を実装するデバイスの中のアプリケーションにアドレス指定されるため、ネットワークブロック603−2は、復号および処理のために、復号されたパケットをWirelessHARTトランスポートブロック603−3(パケットがWirelessHARTパケットまたはデータフレームであるとき)またはIPトランスポート層603−5(パケットが断片化IPv6データフレームを含有する)のいずれかに提供する。当然ながら、後者の場合、IPネットワークルーティング情報は、受信側アプリケーションのIPアドレスを使用および判定することができ、それにより、スタック603のアプリケーション層603−4の中の正しいアプリケーションへ送達するために、IPv6データフレームを適切なソケットへ送達するように、ブロック603−5において維持される。
図13は、WirelessHART通信ネットワーク例600内のIPv6使用可能WirelessHARTフィールドデバイスにおいて実装され得る、別のルーティング方法例を図示する。この通信方法は、1つの違い以外、図12に関して説明されるものと非常に類似する。この方法では、(スタック602を実装する)中間IPv6使用可能WirelessHARTフィールドデバイスは、WirelessHARTプロトコルヘッダの中に含まれる情報を利用することによって非IPv6データフレーム断片をルートするが、WirelessHARTネットワーク600上で再断片化IPv6データフレーム断片を返送する前に、IPv6データフレーム断片を組み立て直して再断片化する。この技法は、WirelessHARTネットワーク上でデータフレームまたはメッセージをルートするかどうか、またはどのようにしてルートするかを判定するためにIPアドレスを使用する必要があり得る、あるいはIPv6データパケット内のIPネットワークルーティング情報の中のデータを使用するIPベースのセキュリティ技法を実装し得る、ルータまたはゲートウェイ等のIPv6使用可能WirelessHARTデバイスにおいて必要とされてもよい。
ルート線660によって図13で図示されるように、スタック601を実装するIPv6使用可能WirelessHARTデバイスは、ネットワーク600上で送信されるWirelessHARTパケットおよび/またはIPv6データパケットを作成し、これらのパケットは、通信ネットワーク600上に配置されるように、上記で説明されるようにスタック601の中で処理される。通信スタック602を実装する中間IPv6使用可能WirelessHARTフィールドデバイスは、標準WirelessHARTルーティング技法を介して、IPv6データフレーム断片および非IPv6データフレーム(例えば、WirelessHARTデータフレーム)を受信する。受信したパケットは、上記で説明されるように、下スタック層602−7、602−6、および602−2の中で処理される。しかしながら、ここで、WirelessHARTネットワークブロック602−2は、データフレームがIPv6データフレーム断片であることを示す、WirelessHARTプロトコルヘッダの中のフラグの存在を検出するように動作し、そのようなフラグが検出されたとき、拡張WirelessHARTネットワークブロック602−2は、IPv6データフレーム断片を6LoWPANブロック602−5へルートする。次いで、拡張WirelessHARTネットワークブロック602−5は、例えば、これらのパケットをデフラグし、次いで、標準IPルーティングに必要とされ得るようなIPアドレスおよびセキュリティ情報を取得するように、これらのパケットからIPv6ネットワーク層情報を読み取ることによって、データフレーム断片からIPv6ネットワーク層情報を復号する。このアクションは、ブロック602−5を通る経路660の点線部分によって示される。ここで、6LoWPANブロック602−5は、IPv6データフレームを再生するように、6LoWPAN断片ヘッダの中の情報を利用して、いくつかのIPv6データフレーム断片を組み立て直す。次いで、6LoWPANブロック602−5は、生成されたIPv6データフレームのIPヘッダの中の宛先IPアドレス情報および/またはセキュリティ情報を復号して利用し、セキュリティ処理を行ってもよい。加えて、ブロック602−5は、通信スタック603を実装するIPv6使用可能WirelessHARTフィールドデバイス、すなわち、IPv6アドレス指定を使用してIPv6データフレームがアドレス指定されるデバイスに対応する、WirelessHARTアドレス情報を調べてもよい。次いで、6LoWPANブロック652−2は、WirelessHART通信ネットワーク600を介してデータフレームが送信されるべきであるWirelessHARTデバイスに関する情報とともに、拡張WirelessHARTネットワークブロック602−2を介してIPv6データフレーム断片を返送する前に、生成されたIPv6データフレームをいくつかのIPv6データフレーム断片に断片化してもよい。次いで、拡張WirelessHARTネットワークブロック602−2は、WirelessHARTネットワークルーティング情報をこれらのフレームに追加し、WirelessHART通信ネットワーク600上でのルーティングのためにスタック602の下位レベル602−6および602−7において処理するために、これらのフレームを送信する。
スタック603を実装する受信デバイスにおいて、データパケットは、上記で説明されるように処理され、データフレームのタイプに基づいて、適切なアプリケーション層あるいはブロック603−1または603−4に提供される。当然ながら、スタック602を実装する1つだけの中間デバイスが、図13で図示されるが、1つよりも多くの中間デバイスが、経路660内に位置することができ、それぞれのそのような中間デバイスが、スタック602に関して上記で説明される処理を行うことができる。
図14は、WirelessHART通信ネットワーク上でWirelessHARTデータパケットおよびIPv6データパケットの両方をルートするか、または送達するために使用することができる、さらに別のルーティングまたは通信方法を図示する。図14の実施例では、ルーティングは、図12に関して上記で説明されるのと同様に行われる。しかしながら、この場合、中間デバイスのうちの1つ以上は、非IP使用可能フィールドデバイスであってもよいため、IPベースのネットワークスタックのネットワーク、トランスポート、およびアプリケーション層を含まない。しかしながら、図14で図示されるように、各データパケットが、再符号化され、ルートの中の次のデバイスへ送信される前に、WirelessHARTネットワーク層ブロック602−2までしか処理されないため、これらの中間デバイスを通して、IPベースのデータフレームおよびWirelessHARTデータフレームの両方を依然としてルートすることができる。つまり、この場合、WirelessHARTネットワークの中の中間デバイスを通したルーティングは、WirelessHARTネットワークルーティングプロトコル情報のみを使用して起こることができるため、これらのデバイスは、IPv6使用可能である必要がない。結果として、スタック602の中のネットワーク層ブロック602−2は、基礎的IPv6データパケットの存在を認識するか、またはこれらのタイプのデータパケットの存在を示すフラグをWirelessHARTネットワークルーティング層情報の中へ符号化する必要がないため、このブロックは、「拡張」WirelessHARTネットワーク層である必要がない。
例えば、図7および8を参照して以前に論議されたように、アプリケーション層314およびアプリケーションブロック334は、WirelessHART通信ネットワークを介して、生成されたIPv6データフレームを受信および伝送するために、アプリケーションプログラミングフレームワークおよびインターフェース315ならびにアプリケーションプログラミングインターフェース332を利用し得る、カスタムアプリケーションを含んでもよい。図6のIPv6使用可能WirelessHARTフィールドデバイス107、108、109、および110のベンダは、例えば、いくつかのシナリオでは、第三者アプリケーション開発者がカスタムアプリケーションを作成して配布することを可能にするように、ソフトウェア開発キット(SDK)を作成してもよい。そのようなSDKは、例えば、CD−ROMを介して提供されてもよく、またはインターネットを介してサーバ(図示せず)からダウンロードされてもよい。
図15は、開発者が、例えば、IPv6データフレームを受信および伝送するために、図7のアプリケーションプログラミングインターフェース315を利用し得る、フィールドデバイス特有のカスタムアプリケーションを開発することを可能にする、汎用コンピュータ701上にインストールされ得る、SDK例700のブロック図を提供する。WirelessHART通信ネットワーク716内で動作するIPv6使用可能WirelessHARTフィールドデバイス715上で実行されたとき、カスタムアプリケーションは、例えば、IPv6使用可能WirelessHARTフィールドデバイス715から、フィールドデバイス特有の構成および状態情報を回収し、別のコンピュータデバイス(例えば、デバイス701)へのゲートウェイ720を介して、IPv6データフレームの中のこの情報をインターネット717へ伝送するように構成されてもよい。
SDK例700は、図6で参照されるIPv6使用可能WirelessHARTフィールドデバイス107、108、109、および110、ならびに、例えば、ベンダによって製造されるIPv6使用可能WirelessHARTフィールドデバイス715のうちのいくつかまたは全てのモデルの情報を記憶し得る、フィールドデバイスデータベース702を含んでもよい。当然ながら、フィールドデバイスデータベース702は、IPv6使用可能WirelessHARTフィールドデバイスのより新しいモデルを用いて、周期的に更新されてもよい。IPv6使用可能WirelessHARTフィールドデバイスの特定のモデルの情報は、サポートされたアプリケーションプログラミングインターフェース、IPv6使用可能WirelessHARTフィールドデバイスの特定のモデルの中に存在するマイクロプロセッサ群を示すプロセッサ識別子等を含んでもよい。
フィールドデバイスプロセッサツール連鎖データベース704は、実行可能なカスタムアプリケーションを生成するために利用され得る、コンパイラおよびリンカを含んでもよい。当業者であれば、各マイクロプロセッサ群が、ソフトウェアコードをコンパイルして実行可能なカスタムアプリケーションを生成するために各自の一意的なツール連鎖を必要とし得ることを認識するであろう。
本明細書で説明されるいくつかのデータベースは、汎用コンピュータ701のローカルにあってもよく、または代替として、インターネット717に接続された別のコンピュータデバイスに位置し、または「マップ」されてもよい。グラフィカルユーザインターフェース(GUI)モジュール706は、第三者ソフトウェア開発者(プログラマ)がSDK700と相互作用することを可能にしてもよい。当然ながら、GUI706は、例えば、キーボードおよびマウス718を介して、プログラマ入力を受信してもよい。また、GUI706は、例えば、表示モニタ719を介して、ウィンドウベースのソフトウェアインターフェースを提供してもよい。プログラマは、フィールドデバイスセレクタ707を介して、例えば、フィールドデバイスデータベース702から、IPv6使用可能WirelessHARTフィールドデバイス715の特定のモデルを選択するように、SDK700と相互作用してもよい。フィールドデバイスセレクタ707は、例えば、GUI706において、ドロップダウンメニューとして表されてもよい。
構築エンジン708は、プログラマがフィールドデバイスセレクタ707を介してIPv6使用可能WirelessHARTフィールドデバイスを選択するときに、フィールドデバイスプロセッサツール連鎖データベース704から適切なツール連鎖を自動的に選択するために使用されてもよい。当然ながら、選択されるツール連鎖は、例えば、IPv6使用可能WirelessHARTフィールドデバイス715の選択されたモデルの中に存在するマイクロプロセッサに対応するであろう。
GUI706は、プログラマがコードエディタモジュール710にソフトウェアアプリケーション(ソースコード)を書き込むことを可能にする。プログラマは、ソフトウェアアプリケーションをコンパイルし、例えば、IPv6使用可能WirelessHARTフィールドデバイス715のモデルのアプリケーションブロック334の中で実行され得るカスタムアプリケーションを生成するように、構築エンジン708に命令してもよい。構築エンジン708は、以前に選択されたツール連鎖を利用するであろう。
次いで、プログラマは、フィールドデバイスエミュレータ712を介して、実行可能なカスタムアプリケーションを有効にし、試験してもよい。フィールドデバイスエミュレータ712は、例えば、IPv6使用可能WirelessHARTフィールドデバイス715の選択されたモデルの中に存在するアプリケーションプログラミングインターフェース334を含む、ソフトウェア環境を提供してもよい。
実行可能なカスタムアプリケーションおよび対応するソースコードは、そのように所望される場合、アプリケーションデータベース714の中に記憶されてもよい。プラントオペレータが、所望されるときに、インターネット717を介して、実行可能なカスタムアプリケーションをデバイス715等のIPv6使用可能WirelessHARTフィールドデバイスにダウンロードしてもよい。カスタムアプリケーションは、例えば、IPv6使用可能WirelessHARTフィールドデバイス715のアプリケーションブロック334において実行し、ブロック336においてデバイス特有の機能と相互作用するためにAPI332を利用してもよい。同様に、カスタムアプリケーションは、API332に含まれる機能性および本明細書で説明される技法を利用することによって、WirelessHART通信ネットワーク717を介して、インターネット717からIPv6データフレームを受信し、かつそこへ伝送してもよい。
上述のように、上記の通信方法例および/またはこれらの方法を実装するための装置のうちの少なくともいくつかは、コンピュータプロセッサ上で作動する1つ以上のソフトウェアおよび/またはファームウェアプログラムによって実装されてもよい。しかしながら、全体的または部分的のいずれかで、本明細書で説明される方法および/または装置例のうちのいくつかまたは全てを実装するように、特定用途向け集積回路、プログラマブルロジックアレイ、および他のハードウェアデバイスを含むが、それらに限定されない、専用ハードウェア実装を、同様に構築することができる。さらに、分散処理またはコンポーネント/オブジェクト分散処理、並列処理、または仮想マシン処理を含むが、それらに限定されない、代替的なソフトウェア実装もまた、本明細書で説明される方法および/またはシステム例を実装するように構築することができる。
また、本明細書で説明されるソフトウェアおよび/またはファームウェア実装例は、磁気媒体(例えば、磁気ディスクまたはテープ)、光ディスク等の磁気光学または光学媒体、あるいはメモリカードまたは1つ以上の読取専用(不揮発性)メモリを収納する他のパッケージ、ランダムアクセスメモリ、または他の書換可能(揮発性)メモリ等のソリッドステート媒体等の、有形コンピュータ可読記憶媒体上に記憶されることにも留意されたい。したがって、本明細書で説明されるソフトウェアおよび/またはファームウェア例は、上記で説明されるもの等の有形記憶媒体または後続記憶媒体上に記憶することができる。上記の明細書が、特定の標準およびプロトコルを参照して構成要素および機能例を説明する限りでは、本特許の範囲は、そのような標準およびプロトコルに限定されないことが理解される。例えば、インターネットおよび他のパケット交換ネットワーク伝送のための標準のそれぞれ(例えば、伝送制御プロトコル(TCP)/インターネットプロトコル(IP)、ユーザデータグラムプロトコル(UDP)/IP、ハイパーテキストマークアップ言語(HTML)、ハイパーテキスト転送プロトコル(HTTP))、IPv4、IPv6、WirelessHART等は、現在の最先端技術の実施例を表す。そのような標準は、周期的に、同一の一般機能性を有する、より速い、またはより効率的な同等物に取って代わられる。したがって、同一の機能を有する代替標準およびプロトコルは、本特許によって考慮される同等物であり、添付請求項の範囲内に含まれることを目的としている。
加えて、本特許は、ハードウェア上で実行されるソフトウェアまたはファームウェアを含む、方法および装置例を開示するが、そのようなシステムは、例証的にすぎず、限定的と見なされるべきではないことに留意されたい。例えば、これらのハードウェアおよびソフトウェア構成要素のうちのいずれかまたは全てを、独占的にハードウェアで、独占的にソフトウェアで、独占的にファームウェアで、あるいはハードウェア、ファームウェア、および/またはソフトウェアの何らかの組み合わせで、具現化できることが考慮される。したがって、上記の明細書は、方法、システム、および/または機械がアクセス可能な媒体例を説明するが、実施例は、そのようなシステム、方法、および機械がアクセス可能な媒体を実装する唯一の方法ではない。したがって、ある方法、システム、および/または機械がアクセス可能な媒体例が本明細書で説明されているが、本特許の対象範囲は、それらに限定されない。

Claims (94)

  1. 通信ネットワーク内でデータパケットをルートする方法であって、
    第1のネットワークルーティングプロトコルを使用する第1の通信プロトコルに準拠する第1のネットワークルーティング情報を含む、データパケットとして、前記通信ネットワーク内の第1のデバイスにおいて一次データパケットを取得することと、
    第2のネットワークルーティング情報が、第2のネットワークルーティングプロトコルを使用する第2の通信プロトコルに準拠し、前記第2のネットワークルーティングプロトコルが、前記第1のネットワークルーティングプロトコルとは異なり、暗示宛先ルーティングプロトコルを含み、それにより、カプセル化一次データパケットを作成する、前記第2のネットワークルーティング情報を前記一次データパケットに追加することと、
    前記第1のデバイスから第2のデバイスへ、前記2のネットワークルーティングプロトコルを使用して、前記通信ネットワーク上で前記カプセル化一次データパケットを送信することと
    を含む、データパケットをルートする方法。
  2. その中に前記第1のネットワークルーティング情報を伴う前記一次データパケットを生じるように、前記第2のデバイスにおいて、前記送信されたカプセル化一次データパケットから前記第2のネットワークルーティング情報を復号することをさらに含む、請求項1に記載のデータパケットをルートする方法。
  3. 前記一次データパケットのペイロードを前記第2のデバイス内のアプリケーションに送達するために、前記第2のデバイス内の前記第1のネットワークルーティング情報を使用することをさらに含む、請求項2に記載のデータパケットをルートする方法。
  4. 前記第1のネットワークルーティングプロトコルを使用する第2の通信ネットワーク上で使用して、前記一次データパケットをさらなるデバイスに伝送するために、前記第2のデバイス内の前記一次データパケットの前記第1のネットワークルーティング情報を使用することをさらに含む、請求項2に記載のデータパケットをルートする方法。
  5. 前記第1のネットワークルーティングプロトコルは、IPアドレス指定を使用するインターネットプロトコル(IP)であり、前記一次データパケットの前記第1のネットワークルーティング情報は、1つ以上のIPアドレスを含み、
    前記第2のネットワークルーティングプロトコルは、データパケットをルートするためにIPアドレス指定を使用しない非IPネットワークルーティングプロトコルである、
    請求項4に記載のデータパケットをルートする方法。
  6. 前記第2のネットワークルーティングプロトコルは、WirelessHARTネットワークルーティングプロトコルである、請求項5に記載のデータパケットをルートする方法。
  7. 前記第2のネットワークルーティングプロトコルは、ネットワークルーティングを行うためにグラフルーティングを使用する、ネットワークルーティングプロトコルである、請求項5に記載のデータパケットをルートする方法。
  8. 一組の断片化一次データパケットを作成するように、前記第2のネットワークルーティング情報を前記一次データパケットに追加する前に、前記第1のデバイスにおいて前記一次データパケットを断片化することをさらに含み、
    前記第2のネットワークルーティング情報を前記一次データパケットに追加することは、第2のネットワークルーティング情報を前記一組の断片化一次データパケットのそれぞれに追加することを含む、
    請求項1に記載のデータパケットをルートする方法。
  9. 前記第1のデバイスにおいて前記一次データパケットを断片化することは、断片ヘッダを前記一組の断片化一次データパケットのそれぞれに追加することを含む、請求項8に記載のデータパケットをルートする方法。
  10. 前記一組の断片化一次データパケットのそれぞれから前記第2のネットワークルーティング情報を復号した後に、前記第2のデバイスにおいて前記一次データパケットを生じるように前記一組の断片化一次データパケットを組み立て直すことをさらに含む、請求項8に記載のデータパケットをルートする方法。
  11. 前記第1のデバイスにおいて前記一次データパケットを断片化することは、前記一次データパケットを断片化するために6LoWPAN断片化プロトコルを使用することを含む、請求項8に記載のデータパケットをルートする方法。
  12. 前記第2のネットワークルーティング情報を前記一次データパケットに追加することは、前記カプセル化一次データパケットが、前記第1のネットワークルーティングプロトコルに準拠する前記第1のネットワークルーティング情報を伴う前記一次データパケットを含むという指示を用いて、前記第2のネットワークルーティング情報を符号化することを含む、請求項1に記載のデータパケットをルートする方法。
  13. 指示を用いて前記第2のネットワークルーティング情報を符号化することは、前記第2のネットワークルーティング情報の特定のビットを特定の値に設定することを含む、請求項12に記載のデータパケットをルートする方法。
  14. 前記第1のネットワークルーティング情報を伴う前記一次データパケットを生じるように、前記第2のデバイスにおいて、前記送信されたカプセル化一次データパケットから前記第2のネットワークルーティング情報を復号することは、前記送信されたカプセル化一次データパケットが、前記第1のネットワークルーティングプロトコルに準拠する前記第1のネットワークルーティング情報を伴う前記一次データパケットを含むという前記指示を検出することを含む、請求項12に記載のデータパケットをルートする方法。
  15. 前記第1のデバイスから前記第2のデバイスへ、前記第2のネットワークルーティングプロトコルを使用して前記通信ネットワーク上で前記カプセル化一次データパケットを送信することは、前記第2のネットワークルーティングプロトコルの情報を使用して、前記通信ネットワーク上の1つ以上の中間デバイスを介して前記カプセル化一次データパケットを送信することを含む、請求項1に記載のデータパケットをルートする方法。
  16. 前記第1のネットワークルーティングプロトコルを使用する前記第1の通信プロトコルに準拠する前記第1のネットワークルーティング情報を含む、データパケットとして、前記通信ネットワーク内の第1のデバイスにおいて前記一次データパケットを取得することは、前記第1のネットワークルーティングプロトコルを使用する、さらなる通信ネットワークを介して、前記一次データパケットを受信することを含む、請求項1に記載のデータパケットをルートする方法。
  17. 前記一次データパケットが前記通信ネットワーク上で前記第2のデバイスに送信されるかどうかを判定するために、前記一次データパケットの前記第1のネットワークルーティング情報、および前記第1のデバイスの中の記憶されたルーティングテーブルを使用することをさらに含む、請求項16に記載のデータパケットをルートする方法。
  18. 複数の通信ネットワークを介してデータパケットを送信する方法であって、
    データパケットが、第2のネットワークルーティングプロトコルによって特定される第2のネットワークルーティング情報を含む、前記データパケットが、前記第2のネットワークルーティングプロトコルを使用する第2の通信ネットワークを介して、第2のデバイスに送信されるように、ネットワーク通信を行うために暗示宛先ルーティングプロトコルである第1のネットワークルーティングプロトコルを使用する、第1の通信ネットワーク内の第1のデバイスにおいて前記データパケットを作成することと、
    第1のネットワークルーティング情報が、前記第1のネットワークルーティングプロトコルに準拠し、それにより、カプセル化データパケットを作成する、前記データパケットを前記第1のネットワークルーティング情報とともにカプセル化することと、
    前記第1のデバイスから、前記第1の通信ネットワークおよび前記第2の通信ネットワークに接続されるゲートウェイデバイスへ、前記第1のネットワークルーティングプロトコルを使用して、前記第1の通信ネットワーク上で前記カプセル化データパケットを送信することと、
    その中に前記第2のネットワークルーティング情報を伴う前記データパケットを生じるように、前記ゲートウェイデバイスにおいて、前記送信されたカプセル化データパケットから前記第1のネットワークルーティング情報を復号することと、
    前記第2のネットワークルーティングプロトコルを使用して、前記第2の通信ネットワーク上で前記データパケットを前記第2のデバイスに伝送するために、前記ゲートウェイデバイスにおいて前記データパケットの前記第2のネットワークルーティング情報を使用することと、
    を含む、データパケットを送信する方法。
  19. 前記第2のネットワークルーティングプロトコルは、IPアドレス指定を使用するインターネットプロトコル(IP)ルーティングプロトコルであり、
    前記第1のネットワークルーティングプロトコルは、IPアドレス指定を使用しない非IPルーティングプロトコルである、
    請求項18に記載のデータパケットを送信する方法。
  20. 前記第1の通信ネットワークは、WirelessHART通信ネットワークであり、 前記第2の通信ネットワークは、インターネットプロトコルベースの通信ネットワークである、
    請求項18に記載のデータパケットを送信する方法。
  21. 一組の断片化データパケットを作成するように、前記データパケットを前記第1のネットワークルーティング情報とともにカプセル化する前に、前記第1のデバイスにおいて前記データパケットを断片化することをさらに含み、
    前記データパケットを前記第1のネットワークルーティング情報とともにカプセル化することは、前記第1のネットワークルーティング情報を前記一組の断片化データパケットのそれぞれに追加することを含む、
    請求項18に記載のデータパケットを送信する方法。
  22. 前記第1のデバイスにおいて前記データパケットを断片化することは、断片ヘッダを前記一組の断片化データパケットのそれぞれに追加することを含む、請求項21に記載のデータパケットを送信する方法。
  23. 前記一組の断片化データパケットのそれぞれから前記第1のネットワークルーティング情報を復号した後に、前記ゲートウェイデバイスにおいて、その中に前記第2のネットワークルーティング情報を有する前記データパケットを生じるように、前記一組の断片化データパケットを組み立て直すことをさらに含む、請求項21に記載のデータパケットを送信する方法。
  24. 前記データパケットを前記第1のネットワークルーティング情報とともにカプセル化することは、前記カプセル化データパケットが、第2のネットワークルーティング情報と関連付けられるデータパケットを含むという指示を用いて、前記第1のネットワークルーティング情報を符号化することを含む、請求項18に記載のデータパケットを送信する方法。
  25. 前記第2のネットワークルーティング情報を伴う前記データパケットを生じるように、前記ゲートウェイデバイスにおいて、前記送信されたカプセル化一次データパケットから前記第1のネットワークルーティング情報を復号することは、前記送信されたカプセル化データパケットが、第2のネットワークルーティング情報と関連付けられるデータパケットを含むという前記指示を、前記第1のネットワークルーティング情報内で検出することを含む、請求項24に記載のデータパケットを送信する方法。
  26. 前記第1のデバイスから前記ゲートウェイデバイスへ、前記第1のネットワークルーティングプロトコルを使用して、前記第1の通信ネットワーク上で前記カプセル化データパケットを送信することは、前記第1のネットワークルーティングプロトコル情報を使用して、前記第1の通信ネットワーク上の1つ以上の中間デバイスを介して前記カプセル化データパケットを送信することを含む、請求項18に記載のデータパケットを送信する方法。
  27. 前記第2の通信ネットワークおよび第3の通信ネットワークに接続される、さらなるゲートウェイデバイスにおいて、前記第2の通信ネットワークを介して前記データパケットを受信することと、
    前記データパケットが前記第3の通信ネットワーク上で前記第2のデバイスに送信されるものであると判定するために、前記データパケットの前記第2のネットワークルーティング情報を使用することと、
    をさらに含む、請求項18に記載のデータパケットを送信する方法。
  28. 前記第3の通信ネットワークは、前記第1のネットワークルーティングプロトコルを使用し、
    前記データパケットの前記第2のネットワークルーティング情報から、前記第3の通信ネットワークを介して前記データパケットを前記第2のデバイスに送信するために必要とされる、さらなる第1のネットワークルーティング情報を判定することと、
    前記さらなる第1のネットワークルーティング情報とともに、その中に前記第2のネットワークルーティング情報を有する前記データパケットをカプセル化することと、
    前記第1のネットワークルーティングプロトコルを使用して、前記第3の通信ネットワークを介して前記第2のデバイスへ、前記さらなる第1のネットワークルーティング情報を伴う前記カプセル化データパケットを送信することと、
    を含む、請求項27に記載のデータパケットを送信する方法。
  29. 前記さらなる第1のネットワークルーティング情報とともに、その中に前記第2のネットワークルーティング情報を有する前記データパケットをカプセル化することは、
    一組のさらなる断片化データパケットを生じるように、前記第2のネットワークルーティング情報を保存しながら前記データパケットを断片化することと、
    さらなる第1のネットワークルーティング情報を前記一組のさらなる断片化データパケットのそれぞれに追加することと、
    を含む、請求項28に記載のデータパケットを送信する方法。
  30. 複数の通信ネットワークを介してデータパケットをルートする方法であって、
    第1のデバイスにおいてデータパケットを作成することと、
    第1のネットワークルーティングプロトコルに準拠する第1のネットワークルーティング情報であって、前記データパケットが第2のデバイスにルートされるものであると特定する第1のネットワークルーティング情報を、前記第1のデバイスにおいて前記データパケットに提供することと、
    前記第1のネットワークルーティングプロトコルを使用する第1の通信ネットワークを介して、前記データパケットを送信することと、
    前記第1の通信ネットワーク、および暗示宛先ルーティングプロトコルである第2のネットワークルーティングプロトコルを使用する第2の通信ネットワークに連結される、ゲートウェイデバイスにおいて、前記送信されたデータパケットを受信することと、
    前記第1のネットワークルーティング情報から、前記ゲートウェイデバイスにおいて、前記受信されたデータパケットが前記第2の通信ネットワークを介して前記第2のデバイスに送信されるものであると判定することと、
    前記第2のネットワークルーティングプロトコルに準拠する第2のネットワークルーティング情報とともに、その中に前記第1のネットワークルーティング情報を有する前記データパケットをカプセル化し、それにより、カプセル化データパケットを作成することと、
    前記第2のネットワークルーティングプロトコルを使用して、前記第2の通信ネットワークを介して前記第2のデバイスへ前記カプセル化データパケットを送信することと、
    前記第2のデバイスにおいて、前記送信されたカプセル化データパケットを受信し、前記第2のネットワークルーティング情報から、前記データパケットが前記第2のデバイスによって受信されるものであると判定することと、
    前記第2のデバイスにおいて、前記第1のネットワークルーティング情報を復号し、前記第1のネットワークルーティングから、前記データパケットを受信するものである前記第2のデバイス内の宛先を判定することと、
    を含む、データパケットをルートする方法。
  31. 前記第1のネットワークルーティングプロトコルは、IPアドレス指定を使用するインターネットプロトコル(IP)ルーティングプロトコルであり、
    前記第2のネットワークルーティングプロトコルは、IPアドレス指定を使用しない非IPプロトコルである、
    請求項30に記載のデータパケットをルートする方法。
  32. 一組の断片化データパケットを作成するように、前記データパケットを前記第2のネットワークルーティング情報とともにカプセル化する前に、前記ゲートウェイデバイスにおいて前記データパケットを断片化することをさらに含み、
    前記データパケットを前記第2のネットワークルーティング情報とともにカプセル化することは、前記第2のネットワークルーティング情報を前記一組の断片化データパケットのそれぞれに追加することを含む、
    請求項30に記載のデータパケットをルートする方法。
  33. 前記断片化データパケットのそれぞれから前記第2のネットワークルーティング情報を復号した後に、その中に前記第1のネットワークルーティング情報を有する前記データパケットを生じるように、前記第2のデバイスにおいて前記断片化データパケットを組み立て直すことをさらに含む、請求項32に記載のデータパケットをルートする方法。
  34. 前記データパケットを前記第2のネットワークルーティング情報とともにカプセル化することは、前記カプセル化データパケットが、前記第1のネットワークルーティング情報を伴う前記データパケットを含むという指示を用いて、前記第2のネットワークルーティング情報を符号化することを含む、請求項30に記載のデータパケットをルートする方法。
  35. 前記第1のネットワークルーティング情報を伴う前記データパケットを生じるように、前記第2のデバイスにおいて、前記送信されたカプセル化データパケットから前記第2のネットワークルーティング情報を復号することは、前記送信されたカプセル化データパケットが、前記第1のネットワークルーティング情報を伴うデータパケットを含むという前記指示を、前記第2のネットワークルーティング情報内で検出することを含む、請求項34に記載のデータパケットをルートする方法。
  36. 第1のネットワークルーティングプロトコル、データリンクプロトコル、および物理プロトコルを含む、第1の通信プロトコルを使用する、第1の通信ネットワーク上で通信するための通信デバイスであって、
    前記物理プロトコルを使用してデータパケットを受信および送信する、第1の通信ネットワークに連結される物理層要素と、
    前記データリンクプロトコルを使用して前記データパケットを符号化および復号する、前記第1の物理層要素に連結されるデータリンク層スタック要素と、
    第1のネットワークルーティング情報が前記第1のネットワークルーティングプロトコルに準拠する、前記第1のネットワークルーティング情報を前記第1の通信ネットワーク上で送信されるデータパケットに追加することによって、前記通信ネットワーク上で送信されるデータパケットを符号化するように動作する、および前記第1の通信ネットワークを介して受信されるデータパケットから第1のネットワークルーティング情報を読み取ることによって、前記第1の通信ネットワークを介して受信されるデータパケットを復号するように動作する、前記データリンク層スタック要素に連結される第1のネットワークルーティング層スタック要素であって、前記第1のネットワークルーティング情報は、前記第1のネットワークルーティングプロトコルに準拠する、第1のネットワークルーティング層スタック要素と、
    前記第1のネットワークルーティング層スタック要素を使用して、前記第1の通信ネットワーク上で通信するアプリケーションを実行する、前記第1のネットワークルーティング層スタック要素に連結される第1のアプリケーション層スタック要素と、
    第2のネットワークルーティングプロトコルに準拠するデータパケット内の第2のネットワークルーティング情報を符号化および復号するように動作する、前記第1のネットワークルーティング層スタック要素に連結される第2のネットワークルーティング層スタック要素であって、前記第2のネットワークルーティング層スタック要素は、第2のネットワークルーティング情報が前記第1のネットワークルーティングプロトコルとは異なる第2のネットワークルーティングプロトコルに準拠する、前記第2のネットワークルーティング情報を前記第1の通信ネットワーク上で送信されるデータパケットに追加することによって、前記通信ネットワーク上で送信されるデータパケットを符号化するように動作し、および前記第1のネットワークルーティング層スタック要素から受信されるデータパケットから第2のネットワークルーティング情報を読み取ることによって、前記第1のネットワークルーティング層スタック要素から受信されるデータパケットを復号するように動作し、前記第2のネットワークルーティング情報は、前記第2のネットワークルーティングプロトコルに準拠する、第2のネットワークルーティング層スタック要素と、
    前記第2のネットワークルーティング層スタック要素を使用するデータパケットを使用して通信する、アプリケーションを実行する、前記第2のネットワークルーティング層スタック要素に連結される第2のアプリケーション層スタック要素と、
    を備え、
    前記第1のネットワークルーティング層スタック要素は、
    前記データパケットが、前記第2のネットワークルーティングプロトコルと関連付けられるデータを含むかどうかを判定するように、前記第1のネットワークルーティングプロトコルに準拠する前記データリンク層スタック要素から、データパケット内の第1のネットワークルーティング情報を復号し、
    前記復号されたデータパケットが前記第2のネットワークルーティングプロトコルと関連付けられるデータを含まない場合、前記復号されたデータパケットを前記第1のアプリケーション層スタック要素に送達し、
    前記復号されたデータパケットが前記第2のネットワークルーティングプロトコルと関連付けられるデータを含む場合、前記復号されたデータパケットを前記第2のネットワーク層スタック要素に送達し、
    前記第1のネットワークルーティング層スタック要素は、前記第1のアプリケーション層スタック要素および前記第2のネットワークルーティング層スタック要素の両方を介して受信される、データパケットを符号化する、
    通信デバイス。
  37. 前記第1の通信ネットワークのトランスポートプロトコルに従って、データパケットのトランスポート情報符号化および復号を行う、前記第1のネットワークルーティング層スタック要素と前記第1のアプリケーション層スタック要素との間に連結される第1のトランスポート層スタック要素をさらに含む、請求項36に記載の通信デバイス。
  38. 第2の通信ネットワークのトランスポートプロトコルに従って、データパケットのトランスポート情報符号化および復号を行う、前記第2のネットワークルーティング層スタック要素と前記第2のアプリケーション層スタック要素との間に連結される第2のトランスポート層スタック要素をさらに含む、請求項37に記載の通信デバイス。
  39. 前記第1のネットワークルーティング層スタック要素は、前記データリンク層スタック要素から受信される前記データパケット内の第1のネットワークルーティング情報内の識別子を読み取ることによって、前記第1のネットワークルーティングプロトコルに準拠する前記データリンク層スタック要素から受信される、データパケット内の前記第1のネットワークルーティング情報を復号する、請求項36に記載の通信デバイス。
  40. 前記第1のネットワークルーティング層スタック要素は、基礎的データパケットが前記第2のネットワークルーティングプロトコルと関連付けられるデータを含むという識別子を、前記第2のネットワーク層スタック要素から受信されるデータパケット内の前記第1のネットワークルーティング情報内に配置することによって、前記第2のネットワーク層スタック要素から受信される前記データパケット内の第1のネットワークルーティング情報を符号化する、請求項36に記載の通信デバイス。
  41. 前記第2のネットワーク層スタック要素は、
    その中に第2のネットワークルーティング情報を含むようにデータパケットを符号化し、
    符号化された前記データパケットのそれぞれを2つ以上のデータパケットに断片化し、
    断片化された前記データパケットを前記第1のネットワークルーティング層スタック要素に提供する、
    パケットフラグメンタを含む、請求項36に記載の通信デバイス。
  42. 前記第2のネットワーク層スタック要素は、その中に前記第2のネットワークルーティング情報を含むデータパケットを生じるように、前記第1のネットワークルーティング層スタック要素から受信される2つ以上のデータパケット断片を組み立てる、デフラグメンタを含む、請求項41に記載の通信デバイス。
  43. 前記第1のネットワークルーティングプロトコルの中の特定のデバイスのルーティング情報を、前記第2のネットワークルーティングプロトコルの中の前記特定のデバイスのルーティング情報に結び付ける、リンキング情報を記憶する、ルーティングテーブルをさらに含む、請求項36に記載の通信デバイス。
  44. 前記第2のネットワークルーティングプロトコルは、インターネットプロトコルルーティングを使用するインターネットプロトコル(IP)であり、
    前記第1のネットワークルーティングプロトコルは、非IPプロトコルである、
    請求項36に記載の通信デバイス。
  45. 前記第2のネットワークルーティングプロトコルは、IPバージョン6ルーティングプロトコルである、請求項44に記載の通信デバイス。
  46. 前記第1のネットワークルーティングプロトコルは、WirelessHARTネットワークルーティングプロトコルである、請求項45に記載の通信デバイス。
  47. 第1のネットワークルーティングプロトコルを使用する第1の通信ネットワーク上で通信するため、および前記第1のネットワークルーティングプロトコルとは異なる第2のネットワークルーティングプロトコルを使用する第2の通信ネットワーク上で通信するためのゲートウェイデバイスであって、
    前記第1の通信ネットワークの第1の物理層プロトコルを使用してデータパケットを受信および送信する、前記第1の通信ネットワークに接続するための第1の物理層要素と、
    前記第1の通信ネットワークの第1のデータリンク層プロトコルを使用してデータパケットを符号化および復号する、前記第1の物理層要素に連結される第1のデータリンク層スタック要素と、
    第1のネットワークルーティング情報が前記第1のネットワークルーティングプロトコルに準拠する、前記第1の通信ネットワーク上で送信されるデータパケット内の前記第1のネットワークルーティング情報を使用して、前記第1の通信ネットワーク上で前記データパケットを送信するように動作する、および前記第1の通信ネットワークを介して受信されるデータパケットから第1のネットワークルーティング情報を読み取ることによって、前記第1の通信ネットワークを介して受信されるデータパケットを復号するように動作する、前記第1のデータリンク層スタック要素に連結される第1のネットワークルーティング層スタック要素であって、前記第1のネットワークルーティング情報は、前記第1のネットワークルーティングプロトコルに準拠する、第1のネットワークルーティング層スタック要素と、
    を含む、第1の通信スタックと
    前記第2の通信ネットワークの第2の物理層プロトコルを使用してデータパケットを受信および送信する、前記第2の通信ネットワークに接続するための第2の物理層要素と、
    前記第2の通信ネットワークの第2のデータリンク層プロトコルを使用してデータパケットを符号化および復号する、前記第2の物理層要素に連結される第2のデータリンク層スタック要素と、
    第2のネットワークルーティング情報が、暗示宛先アドレス指定ネットワークルーティングプロトコルである前記第2のネットワークルーティングプロトコルに準拠する、前記第2のネットワークルーティング情報を前記第2の通信ネットワーク上で送信されるデータパケットに追加することによって、前記第2の通信ネットワーク上で送信されるデータパケットを符号化するように動作する、および前記第2の通信ネットワークを介して受信されるデータパケットから第2のネットワークルーティング情報を読み取ることによって、前記第2の通信ネットワークを介して受信されるデータパケットを復号するように動作する、前記第2のデータリンク層スタック要素に連結される第2のネットワークルーティング層スタック要素であって、前記第2のネットワークルーティング情報は、前記第2のネットワークルーティングプロトコルに準拠する、第2のネットワークルーティング層スタック要素と、
    前記第2の通信ネットワーク内の1つ以上のデバイスのリンキング情報であって、前記第2の通信ネットワーク内の1つ以上のデバイスの第1のネットワークルーティング情報を、前記第2の通信ネットワーク内の1つ以上のデバイスの第2のネットワークルーティング情報に結び付ける、リンキング情報を記憶する、ルーティングテーブルと、
    を含む、第2の通信スタックと、
    を備え、
    前記第2のネットワークルーティング層スタック要素は、
    前記第2のデータリンク層スタック要素から受信される、その中に含まれた第1のネットワークルーティング情報を有するデータパケットを復号し、
    前記第1のネットワークルーティング情報を使用してデバイスに送達するために、その中に含まれた前記第1のネットワークルーティング情報を有する前記データパケットを前記第1の通信スタックに送信し、
    前記第2のネットワークルーティング層スタック要素は、
    その中に含まれた第1のネットワークルーティング情報を有するデータパケットを受信し、
    前記ルーティングテーブルに記憶された前記リンキング情報に基づいて、前記第2のネットワークルーティング情報を、その中に含まれた前記第1のネットワークルーティング情報を有する前記データパケットに追加することによって、その中に含まれた第1のネットワークルーティング情報を有する前記データパケットを前記第2の通信ネットワーク上のデバイスに送達する、
    ゲートウェイデバイス。
  48. 前記第2のネットワークルーティング層スタック要素に連結される断片化ユニットをさらに含み、
    前記断片化ユニットは、
    その中に含まれた第1のネットワークルーティング情報を有するデータパケットを、2つ以上のデータ断片化パケットに断片化し、
    前記第2の通信ネットワーク上で送信するために、前記断片化データパケットを前記第2のネットワークルーティング層スタック要素に提供する、
    請求項47に記載のゲートウェイデバイス。
  49. 前記第2のネットワークルーティング層スタック要素に連結されるデフラグユニットをさらに含み、
    前記デフラグユニットは、第1のネットワークルーティング情報を有する前記データパケットを再作成するように、第1のネットワークルーティング情報を有するデータパケットから以前に形成され、かつ前記第2の通信ネットワークを介して受信された、断片化データパケットを組み立てる、
    請求項47に記載のゲートウェイデバイス。
  50. 前記第2のネットワークルーティング層スタック要素および前記第1のネットワークルーティング層スタック要素に連結される、断片化/デフラグユニットをさらに含み、
    前記断片化/デフラグユニットは、
    前記第1のネットワークルーティング層スタック要素から受信される、その中に含まれた第1のネットワークルーティング層情報を有するデータパケットを、2つ以上のデータ断片パケットに断片化し、
    前記第2の通信ネットワーク上で送信するために、前記断片化データパケットを前記第2のネットワークルーティング層スタック要素に提供し、
    前記断片化/デフラグユニットは、
    第1のネットワークルーティング情報を有する前記データパケットを再作成するように、第1のネットワークルーティング情報を有するデータパケットから以前に形成され、かつ前記第2の通信ネットワークを介して受信された、断片化データパケットを組み立て、
    前記再作成されたデータパケットを前記第1のネットワークルーティング層スタック要素に送達する、
    請求項47に記載のゲートウェイデバイス。
  51. アプリケーション層スタック要素と、前記第1の通信ネットワークのトランスポートプロトコルに従って、データパケットのトランスポート情報符号化および復号を行うように、前記第1のネットワークルーティング層スタック要素と前記アプリケーション層スタック要素との間に連結されるトランスポート層スタック要素とをさらに含む、請求項50に記載のゲートウェイデバイス。
  52. 前記第1のネットワークルーティング層スタック要素は、前記第1の通信ネットワーク上でデータパケットをルートするためのルーティング情報を記憶する、ルーティングテーブルを含む、請求項50に記載のゲートウェイデバイス。
  53. 前記第2のネットワークルーティング層スタック要素は、その中に第1のネットワークルーティング情報を伴うデータパケットの存在を示す、前記第2のネットワークルーティング情報内の識別子を読み取ることによって、前記第2のネットワークルーティングプロトコルに準拠する、前記第2のデータリンク層スタック層要素からのデータパケット内の第2のネットワークルーティング情報を復号する、請求項47に記載のゲートウェイデバイス。
  54. 前記第2のネットワークルーティング層スタック要素は、基礎的データが前記第1のネットワークルーティング情報と関連付けられるという識別子を、前記第2のネットワークルーティング情報内に配置することによって、データパケット内の第2のネットワークルーティング情報を符号化する、請求項47に記載のゲートウェイデバイス。
  55. 前記第1のネットワークルーティングプロトコルを使用して特定されるデバイスのルーティング情報を、前記第2のネットワークルーティングプロトコルを使用して特定されるデバイスのルーティング情報に結び付ける、リンキング情報を記憶する、ルーティングテーブルをさらに含む、請求項54に記載のゲートウェイデバイス。
  56. 前記第1のネットワークルーティングプロトコルは、インターネットプロトコルルーティングを使用するインターネットプロトコル(IP)であり、
    前記第2のネットワークルーティングプロトコルは、非IPプロトコルである、
    請求項47に記載のゲートウェイデバイス。
  57. 前記第1のネットワークルーティングプロトコルは、IPバージョン6ルーティングプロトコルである、請求項56に記載のゲートウェイデバイス。
  58. 前記第2のネットワークルーティングプロトコルは、WirelessHARTネットワークルーティングプロトコルである、請求項57に記載のゲートウェイデバイス。
  59. データパケットを転送するための方法であって、
    第1の通信プロトコルに準拠する第1の通信チャネルを介して、前記データパケットを受信することと、
    第1のルーティング情報が前記データパケット内にある、第1のルーティングプロトコルに準拠する前記第1のルーティング情報の分析に基づいて、前記データパケットの第1の宛先アドレスを識別することと、
    前記第1の宛先アドレスの識別に基づいて、第2の宛先アドレスがメッシュネットワークルーティングプロトコルである第2のルーティングプロトコルに準拠する、前記第2の宛先アドレスを判定することと、
    前記データパケットをフレームに入れることが、前記第1のルーティング情報を保持することを含む、前記第2のルーティングプロトコルに準拠する第2のルーティング情報とともに前記データパケットをフレームに入れることと、
    前記データパケットが、前記第2のルーティング情報を利用して転送される、第2の通信プロトコルに準拠する第2の通信チャネルを介して、前記データパケットを前記第1の宛先アドレスに転送することと、
    を含む、方法。
  60. データパケットを伝送するための方法であって、
    前記データパケットが、第1の宛先アドレスの指示を含み、前記第1の宛先アドレスが、第1のルーティングプロトコルに準拠する、前記第1のルーティングプロトコルに準拠する前記データパケットを受信することと、
    前記第1の宛先アドレスに基づいて前記データパケットが前記第1のルーティングプロトコルに準拠するという指示を生じることを含む、非インターネットプロトコルアドレス指定ルーティングプロトコルである第2のルーティングプロトコルに準拠するとともに第2のルーティングプロトコルに準拠する第2の宛先情報を含むルーティング情報とともに、前記データパケットをフレームに入れることと、
    通信プロトコルが、前記データパケットを前記第1の宛先アドレスにルートするために、前記第2のルーティングプロトコルに準拠する前記ルーティング情報を利用する、通信プロトコルに従って確立される通信チャネルを介して、前記データパケットを伝送することと、
    を含む、方法。
  61. ネットワーク内で通信するための方法であって、
    第1のネットワークルーティングプロトコルであって、非インターネットプロトコルアドレス指定ネットワークルーティング技法を使用する、第1のネットワークルーティングプロトコルに対応する、ルーティング情報とともにカプセル化されるデータパケットを、通信チャネルを介して受信することと、
    前記第1のネットワークルーティングプロトコルに対応する前記情報を利用することによって、カプセル化された前記データパケットが、第2のネットワークルーティングプロトコルに準拠するアプリケーションの情報を含むかどうかを判定することと、
    カプセル化された前記データパケットが、前記第2のネットワークルーティングプロトコルに準拠するアプリケーションの情報を含むという判定に基づいて、前記第2のネットワークルーティングプロトコルに準拠する通信スタックを介して、カプセル化された前記データパケットを前記アプリケーションに転送することと、
    を含む、方法。
  62. 前記第1のネットワークプロトコルは、WirelessHARTプロトコルである、請求項61に記載の方法。
  63. 前記データパケットは、複数のデータパケットのうちの1つであり、
    前記複数のデータパケットは、データフレームに対応する、
    請求項61に記載の方法。
  64. 前記データフレームは、前記第2のネットワークプロトコルに準拠する、請求項63に記載の方法。
  65. 前記第2のネットワークプロトコルは、インターネットプロトコルバージョン6(IPv6)である、請求項64に記載の方法。
  66. 前記複数のデータパケットは、6LoWPANプロトコルに従って前記データフレームを断片化することによって生成される、請求項63に記載の方法。
  67. 前記通信チャネルは、802.15.4プロトコルに従って動作するように構成される、請求項61に記載の方法。
  68. 前記アプリケーションは、制約アプリケーションプロトコル(CoAP)に準拠する、請求項61に記載の方法。
  69. 前記データパケットは、暗号化される、請求項61に記載の方法。
  70. 前記データフレームは、暗号化される、請求項61に記載の方法。
  71. 第1の通信プロトコルに従って動作するように構成される第1の通信チャネルを介して、無線ネットワーク内で複数のデータパケットのうちの少なくとも1つを伝送するための方法であって、
    データフレームが第2のネットワークプロトコルに準拠する、第2の通信プロトコルに従って動作するように構成される第2の通信チャネルを介して、前記データフレームを受信することと、
    前記複数のデータパケットを生成するように前記データフレームを断片化することと、
    情報が前記無線ネットワークの論理レイアウトに対応するルーティング情報を含む、第1のネットワークプロトコルに対応する前記情報とともに、前記複数のデータパケットのうちの前記少なくとも1つをカプセル化することと、
    指示が、前記複数のデータパケットのうちの前記少なくとも1つが前記第2のネットワークプロトコルに対応するデータを含むことを示す、前記第1のネットワークプロトコルに対応する前記情報の中で指示を作成することと、
    前記第1の通信チャネルを介して、前記複数のデータパケットのうちの前記少なくとも1つを伝送することと、
    を含む、方法。
  72. 前記第1の通信プロトコルは、802.15.4プロトコルである、請求項71に記載の方法。
  73. 前記第2の通信プロトコルは、802.3プロトコルである、請求項71に記載の方法。
  74. 前記第1のネットワークプロトコルは、WirelessHARTネットワークプロトコルである、請求項71に記載の方法。
  75. 前記第2のネットワークプロトコルは、インターネットプロトコルバージョン6(IPv6)である、請求項71に記載の方法。
  76. 前記データフレームを断片化することは、6LoWPANプロトコルに従って前記データフレームを断片化することを含む、請求項71に記載の方法。
  77. 前記受信したデータフレームは、暗号化され、
    前記方法はさらに、前記データフレームを解読することを含む、
    請求項71に記載の方法。
  78. データフレームが、第1のネットワークルーティングプロトコルに準拠する、第1の通信プロトコルに従って動作するように構成される通信チャネルを介して、前記データフレームを伝送するための方法であって、
    複数のデータパケットのそれぞれが、第2のネットワークルーティングプロトコルに対応するルーティング情報とともにカプセル化され、ルーティング情報が、前記第2のネットワークルーティングプロトコルに準拠するルーティング情報を含み、前記ルーティング情報が、無線ネットワークの論理レイアウトに対応する、前記無線ネットワークを介して前記複数のデータパケットを受信することと、
    前記複数のデータパケットのうちのデータパケットのサブセットについて、第2のネットワークルーティングプロトコルに対応する前記ルーティング情報の中の指示が、前記データパケットのサブセットのうちの1つ以上が、前記第1のネットワークルーティングプロトコルに対応するデータを含むことを示す、前記指示を検出することと、
    前記第1のネットワークルーティングプロトコルに準拠する前記データフレームを生成するように、前記データパケットのサブセットを処理することと、
    前記第1の通信プロトコルに従って動作するように構成される前記通信チャネルを介して、前記データフレームを伝送することと、
    を含む、方法。
  79. 前記無線ネットワークは、第2の通信プロトコルに従って動作するように構成される通信チャネルを備える、請求項78に記載の方法。
  80. 前記第1のネットワークルーティングプロトコルは、インターネットプロトコルバージョン6(IPv6)である、請求項79に記載の方法。
  81. 前記第1の通信プロトコルは、802.3プロトコルである、請求項79に記載の方法。
  82. 前記第2の通信プロトコルは、802.15.4プロトコルである、請求項79に記載の方法。
  83. 前記第2のネットワークルーティングプロトコルは、WirelessHARTプロトコルである、請求項78に記載の方法。
  84. 前記データパケットのサブセットのそれぞれは、6LoWPANヘッダを含む、請求項78に記載の方法。
  85. 前記データパケットのサブセットを処理することは、前記6LoWPANヘッダのそれぞれに基づいて、前記データフレームを生成するように前記データパケットのサブセットを組み立て直すことを含む、請求項84に記載の方法。
  86. 前記伝送されたデータフレームは、高度暗号化標準(AES)に従って暗号化される、請求項78に記載の方法。
  87. 前記伝送されたデータフレームは、データ暗号化標準(DES)に従って暗号化される、請求項78に記載の方法。
  88. 非インターネットプロトコル(非IP)アドレスベースのネットワークルーティングプロトコルである第1のネットワークルーティングプロトコルを使用し、第1の通信ネットワークに接続される第1のデバイスと、第1の通信ネットワーク、およびIPアドレスベースのネットワークルーティングプロトコルを使用する第2の通信ネットワークの両方に接続されるゲートウェイデバイスとを含む、前記第1の通信ネットワーク内で通信するための方法であって、
    前記第1のネットワークルーティングプロトコルを使用して、メッセージであって、特定のネットワークエンティティのための前記第2のネットワークルーティングプロトコルと関連付けられるIPアドレスを要求するメッセージを、前記第1のデバイスから前記ゲートウェイデバイスへ送信することと、
    前記第1の通信ネットワークを介して、前記ゲートウェイデバイスにおいて前記メッセージを受信することと、
    前記特定のネットワークエンティティのIPアドレスを判定するように、前記ゲートウェイデバイスを介して、前記特定のネットワークエンティティの前記IPアドレスの検索を行うことと、
    前記第1の通信ネットワークを介して、前記ゲートウェイデバイスから前記第1のデバイスへ、メッセージの中で前記判定されたIPアドレスを送信することと、
    前記IPアドレスベースのネットワークルーティングプロトコルに準拠する第1のネットワークルーティング情報を含む、および前記第1のネットワークルーティング情報の一部として前記特定のネットワークエンティティの前記IPアドレスを含む、データパケットとして、第1のデバイスにおいて一次データパケットを作成することと、
    第2のネットワークルーティング情報が、前記非IPアドレスベースのネットワークルーティングプロトコルを使用する前記第1の通信プロトコルに準拠する、前記第2のネットワークルーティング情報を前記一次データパケットに追加することと、
    前記第1のデバイスから第2のデバイスへ、前記第1のネットワークルーティングプロトコルを使用して、前記第1の通信ネットワーク上でカプセル化された前記一次データパケットを送信することと、
    を含む、方法。
  89. 前記第2のデバイスは、前記ゲートウェイデバイスである、請求項88に記載の通信方法。
  90. 前記一次データパケットの前記第1のネットワークルーティング情報を使用して、前記第2の通信ネットワーク上で、前記第2のデバイスから前記ネットワークエンティティの前記IPアドレスへ、前記一次データパケットをルートすることをさらに含む、請求項88に記載の通信方法。
  91. 前記第1のネットワークルーティングプロトコルを使用して、前記第1のデバイスから前記ゲートウェイデバイスへ前記メッセージを送信することは、ドメイン名を使用して前記ネットワークエンティティを識別することを含む、請求項88に記載の通信方法。
  92. 前記第1のデバイスから前記ゲートウェイデバイスへ前記メッセージを送信することは、前記第1のネットワークルーティングプロトコルに準拠するネットワークルーティング情報の中にカプセル化される、前記第2のネットワークルーティングプロトコルに準拠するネットワークルーティング情報を有する、データフレームを含むものとして、前記メッセージを送信することを含む、請求項88に記載の通信方法。
  93. その上に命令を記憶する、プロセス制御デバイスのプロセッサに電気的に連結される、有形コンピュータ可読メモリであって、
    前記命令は、前記プロセッサによって実行されたときに、
    前記プロセス制御デバイス上で実行するアプリケーションへのプロセス制御データの伝送を引き起こし、前記プロセス制御データの伝送は、前記アプリケーションからのプロセス制御データの要求の受信に応答し、
    前記アプリケーションからのペイロードデータの受信に応答してデータフレームを生成し、前記データフレームを生成することは、第1のネットワーキングプロトコルに準拠する第1のルーティング情報とともに前記ペイロードデータをカプセル化することと、さらに、第2のネットワーキングプロトコルに準拠する第2のルーティング情報とともにカプセル化された前記ペイロードデータをフレームに入れることとを含み、前記第1のルーティング情報は、受信側アプリケーションの宛先アドレスを含み、前記第2のルーティング情報は、ルート定義を含み、
    第1の通信プロトコルに従って動作可能な通信チャネルを介して、前記データフレームの伝送を引き起こす、
    有形コンピュータ可読メモリ。
  94. 前記通信チャネルを介したデータパケットの受信に応答して、前記プロセッサによって実行されたとき、前記データパケットが前記第1のネットワーキングプロトコルに対応するルーティング情報とともにカプセル化されることを判定する、命令をさらに備え、
    前記データパケットが前記第1のネットワーキングプロトコルに対応するルーティング情報とともにカプセル化されると判定することは、前記第2のネットワーキングプロトコルに対応する前記ルーティング情報の中の指示を検出することを含み、
    前記第2のネットワーキングプロトコルに対応する前記ルーティング情報は、前記第1のネットワーキングプロトコルに対応する前記ルーティング情報をフレームに入れる、
    請求項93に記載の有形コンピュータ可読メモリ。
JP2014530886A 2011-09-15 2012-09-14 互換性がないネットワークルーティングプロトコルを使用する通信ネットワークにわたるデータフレームの伝達 Active JP6276183B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161535316P 2011-09-15 2011-09-15
US61/535,316 2011-09-15
PCT/US2012/055545 WO2013040438A1 (en) 2011-09-15 2012-09-14 Communicating data frames across communication networks that use incompatible network routing protocols

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2017192917A Division JP6817174B2 (ja) 2011-09-15 2017-10-02 互換性がないネットワークルーティングプロトコルを使用する通信ネットワークにわたるデータフレームの伝達

Publications (3)

Publication Number Publication Date
JP2014530545A true JP2014530545A (ja) 2014-11-17
JP2014530545A5 JP2014530545A5 (ja) 2015-11-05
JP6276183B2 JP6276183B2 (ja) 2018-02-07

Family

ID=46970421

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2014530886A Active JP6276183B2 (ja) 2011-09-15 2012-09-14 互換性がないネットワークルーティングプロトコルを使用する通信ネットワークにわたるデータフレームの伝達
JP2017192917A Active JP6817174B2 (ja) 2011-09-15 2017-10-02 互換性がないネットワークルーティングプロトコルを使用する通信ネットワークにわたるデータフレームの伝達

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2017192917A Active JP6817174B2 (ja) 2011-09-15 2017-10-02 互換性がないネットワークルーティングプロトコルを使用する通信ネットワークにわたるデータフレームの伝達

Country Status (6)

Country Link
US (1) US8908666B2 (ja)
JP (2) JP6276183B2 (ja)
CN (1) CN103828477B (ja)
DE (1) DE112012003840T5 (ja)
GB (2) GB2510721B (ja)
WO (1) WO2013040438A1 (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016527757A (ja) * 2013-08-06 2016-09-08 シスコ テクノロジー、インコーポレイテッド コンピュータネットワークにおける多トポロジールーティングアーキテクチャ
US9559750B2 (en) 2013-08-06 2017-01-31 Cisco Technology, Inc. Interleaving low transmission power and medium transmission power channels in computer networks
US9590896B2 (en) 2013-08-06 2017-03-07 Cisco Technology, Inc. On-demand medium to low transmission power channel switching in computer networks
JP2018014105A (ja) * 2016-07-22 2018-01-25 フィッシャー−ローズマウント システムズ,インコーポレイテッド 携帯型フィールド保守ツールとプロセス制御デバイス間のプロセス制御通信
US11605037B2 (en) 2016-07-20 2023-03-14 Fisher-Rosemount Systems, Inc. Fleet management system for portable maintenance tools

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9940118B2 (en) * 2012-02-23 2018-04-10 Dahrwin Llc Systems and methods utilizing highly dynamic wireless ad-hoc networks
US8774147B2 (en) 2012-02-23 2014-07-08 Dahrwin Llc Asynchronous wireless dynamic ad-hoc network
EP2640156B1 (de) * 2012-03-14 2014-09-24 Landis+Gyr AG Funknetzwerk mit geringer Leistungsaufnahme und Verfahren zum Betrieb eines solchen Funknetzwerks
US10003565B2 (en) 2012-03-22 2018-06-19 Time Warner Cable Enterprises Llc Use of DNS information as trigger for dynamic IPV4 address allocation
US9462089B1 (en) * 2013-03-15 2016-10-04 Kaazing Corporation Communication channels
US9398490B2 (en) * 2013-03-15 2016-07-19 Trane International Inc. Method of fragmenting a message in a network
WO2014170930A1 (ja) * 2013-04-19 2014-10-23 三菱電機株式会社 ゲートウェイ装置、ゲートウェイ装置を含むネットワークシステム、空調室外機、及び空調ネットワークシステム
US8874120B1 (en) * 2013-05-02 2014-10-28 Alcatel Lucent Avoiding formation of a call loop resulting from handling of a mobile terminated call in parallel with a location update in a wireless communication network
US9455959B1 (en) * 2013-05-31 2016-09-27 Parallel Wireless, Inc. Method of connecting security gateway to mesh network
US9294584B2 (en) * 2013-06-19 2016-03-22 Cisco Technology, Inc. Transporting serially over TCP/IP using raw TCP encapsulation
US9191209B2 (en) * 2013-06-25 2015-11-17 Google Inc. Efficient communication for devices of a home network
US20150223157A1 (en) * 2013-06-28 2015-08-06 Intel Corporation Seamless connectivity across devices with heterogeneous transports
KR102118002B1 (ko) * 2013-07-26 2020-06-02 삼성전자주식회사 근접 통신을 통해 교환한 아이피 주소 정보를 사용한 통신 방법 및 장치
US20150120863A1 (en) * 2013-10-25 2015-04-30 Qualcomm Incorporated Proxy network device selection in a communication network
WO2015068472A1 (ja) * 2013-11-06 2015-05-14 ソニー株式会社 端末装置、情報処理装置及び情報提供装置
US9930476B2 (en) * 2013-11-18 2018-03-27 Provenance Asset Group Llc Methods and apparatuses for providing content data and accessing content data
CN104683173B (zh) * 2013-12-03 2018-08-28 北京赛迪电子系统测评实验室有限公司 一种异构物联网的检测系统及其方法
GB2515853B (en) 2014-02-25 2015-08-19 Cambridge Silicon Radio Ltd Latency mitigation
GB2517086B (en) * 2014-02-25 2015-06-17 Cambridge Silicon Radio Ltd Communicating data over a mesh network
GB2512502B (en) 2014-02-25 2015-03-11 Cambridge Silicon Radio Ltd Device authentication
US10379873B2 (en) 2014-02-28 2019-08-13 Tyco Fire & Security Gmbh Distributed processing system
US11747430B2 (en) 2014-02-28 2023-09-05 Tyco Fire & Security Gmbh Correlation of sensory inputs to identify unauthorized persons
US8824299B1 (en) 2014-02-28 2014-09-02 tw telecom holdings, inc. Selecting network services based on hostname
US10878323B2 (en) 2014-02-28 2020-12-29 Tyco Fire & Security Gmbh Rules engine combined with message routing
US11451489B2 (en) 2014-03-12 2022-09-20 British Telecommunications Public Limited Company Wireless access gateway
US10996236B2 (en) * 2014-07-22 2021-05-04 Fisher Controls International Llc Control device position feedback with accelerometer
US9869981B2 (en) * 2014-08-11 2018-01-16 Fisher Controls International Llc Control device diagnostic using accelerometer
EP3183868A1 (en) * 2014-08-21 2017-06-28 Nokia Technologies Oy Ipv4 communications using 6lowpan header compression mechanisms
US9753439B2 (en) * 2014-10-02 2017-09-05 Fisher-Rosemount Systems, Inc. Multi-protocol device supporting wireless plant protocols
EP3010183B1 (de) * 2014-10-13 2019-06-19 Deutsche Telekom AG Vorrichtung, System und Verfahren zum Verbinden von Feldbusgeräten mit dem Internet
US10477372B2 (en) * 2014-12-24 2019-11-12 Abb Schweiz Ag Inter-operable remote terminal unit
US9787638B1 (en) * 2014-12-30 2017-10-10 Juniper Networks, Inc. Filtering data using malicious reference information
US10205733B1 (en) 2015-06-17 2019-02-12 Mission Secure, Inc. Cyber signal isolator
US10250619B1 (en) * 2015-06-17 2019-04-02 Mission Secure, Inc. Overlay cyber security networked system and method
US9686240B1 (en) * 2015-07-07 2017-06-20 Sprint Communications Company L.P. IPv6 to IPv4 data packet migration in a trusted security zone
CN105142157B (zh) * 2015-07-29 2018-07-24 上海斐讯数据通信技术有限公司 基于SNMP和CoAP的报文转换方法、无线控制器及网络管理系统
RU2690756C1 (ru) * 2015-08-25 2019-06-05 Хуавэй Текнолоджиз Ко., Лтд. Способ передачи данных и связанные с ним устройство и система
CN113300927B (zh) * 2015-08-31 2024-03-22 松下电器(美国)知识产权公司 网关装置、车载网络系统以及转送方法
US9749294B1 (en) 2015-09-08 2017-08-29 Sprint Communications Company L.P. System and method of establishing trusted operability between networks in a network functions virtualization environment
US10542115B1 (en) 2015-10-01 2020-01-21 Sprint Communications Company L.P. Securing communications in a network function virtualization (NFV) core network
US9781016B1 (en) 2015-11-02 2017-10-03 Sprint Communications Company L.P. Dynamic addition of network function services
US10491569B1 (en) * 2015-11-10 2019-11-26 Alterednets Cyber Solutions LLC Secure transfer of independent security domains across shared media
WO2017121134A1 (en) * 2016-01-11 2017-07-20 Huawei Technologies Co., Ltd. Method for node identification and service advertisement in communication networks
CN105488990A (zh) * 2016-02-03 2016-04-13 苏州见微物联网科技有限公司 一种基于无线适配器的工业实时数据采集系统
US10462054B2 (en) * 2016-02-04 2019-10-29 Trinity Mobile Networks, Inc. Overloading address space for improved routing, diagnostics, and content-relay network
US10382312B2 (en) 2016-03-02 2019-08-13 Fisher-Rosemount Systems, Inc. Detecting and locating process control communication line faults from a handheld maintenance tool
CN109076020A (zh) * 2016-03-30 2018-12-21 Idac控股公司 用于在下一代无线网络中支持低移动性设备的系统和方法
US10034158B2 (en) * 2016-04-22 2018-07-24 Electronics And Telecommunications Research Institute Method of maintaining internet protocol (IP) connectivity in low power internet of things (IoT) communication device based on near field communication (NFC), and device operating the same
WO2017200868A1 (en) 2016-05-16 2017-11-23 Fisher-Rosemount Systems, Inc. Multi-protocol field device in process control systems
CN105847136B (zh) * 2016-06-17 2019-07-09 广东工业大学 一种支持多协议的无线传感网通信方法及IPv6网关
US10805205B2 (en) * 2016-07-19 2020-10-13 Schneider Electric Industries Sas Time-sensitive software defined networking
US10554644B2 (en) 2016-07-20 2020-02-04 Fisher-Rosemount Systems, Inc. Two-factor authentication for user interface devices in a process plant
US10599134B2 (en) 2016-07-22 2020-03-24 Fisher-Rosemount Systems, Inc. Portable field maintenance tool configured for multiple process control communication protocols
US10270853B2 (en) * 2016-07-22 2019-04-23 Fisher-Rosemount Systems, Inc. Process control communication between a portable field maintenance tool and an asset management system
US10585422B2 (en) 2016-07-22 2020-03-10 Fisher-Rosemount Systems, Inc. Portable field maintenance tool system having interchangeable functional modules
US10375162B2 (en) * 2016-07-22 2019-08-06 Fisher-Rosemount Systems, Inc. Process control communication architecture
US10505585B2 (en) 2016-07-25 2019-12-10 Fisher-Rosemount Systems, Inc. Portable field maintenance tool with a bus for powering and communicating with a field device
US10481627B2 (en) 2016-07-25 2019-11-19 Fisher-Rosemount Systems, Inc. Connection check in field maintenance tool
US10764083B2 (en) 2016-07-25 2020-09-01 Fisher-Rosemount Systems, Inc. Portable field maintenance tool with resistor network for intrinsically safe operation
US10244536B1 (en) * 2016-08-31 2019-03-26 Marvell International Ltd. Method and apparatus for determining whether a secondary channel is idle
US10250498B1 (en) 2016-10-03 2019-04-02 Sprint Communications Company L.P. Session aggregator brokering of data stream communication
CN108123870B (zh) * 2016-11-30 2021-06-01 华为技术有限公司 报文转发方法和装置
US10742746B2 (en) 2016-12-21 2020-08-11 Nicira, Inc. Bypassing a load balancer in a return path of network traffic
US11310350B2 (en) * 2017-01-04 2022-04-19 Futurewei Technologies, Inc. Network bridge between different network communication protocols
US10552122B2 (en) 2017-05-02 2020-02-04 Mastercard International Incorporated Systems and methods for customizable regular expression generation
CN108959134B (zh) * 2017-05-24 2022-02-15 微软技术许可有限责任公司 用于现场可编程门阵列设备的通信
US10499226B2 (en) 2017-07-06 2019-12-03 Dell Products, Lp Method and apparatus for compatible communication between access points in a 6LoWPAN network
JP6904846B2 (ja) * 2017-08-07 2021-07-21 キヤノン株式会社 通信装置、通信装置の制御方法、および、プログラム
US10348488B1 (en) 2017-08-25 2019-07-09 Sprint Communications Company L.P. Tiered distributed ledger technology (DLT) in a network function virtualization (NFV) core network
US10938819B2 (en) 2017-09-29 2021-03-02 Fisher-Rosemount Systems, Inc. Poisoning protection for process control switches
US10530463B2 (en) * 2017-11-16 2020-01-07 Grand Mate Co., Ltd. Method of extending RF signals in a wireless control system
KR102411691B1 (ko) * 2018-01-03 2022-06-22 삼성전자주식회사 외부 전자 장치를 통해 데이터를 송수신하는 전자 장치 및 그 데이터 송수신 방법
CN111742534B (zh) * 2018-01-29 2024-07-26 皇家飞利浦有限公司 无线设备、中继设备和用于通信的系统和方法
EP3750284A1 (en) 2018-02-23 2020-12-16 Huawei Technologies Co., Ltd. Advertising and programming preferred path routes using interior gateway protocols
JP7113246B2 (ja) * 2018-03-28 2022-08-05 パナソニックIpマネジメント株式会社 通信装置
CN112055954B (zh) 2018-04-26 2022-08-26 华为技术有限公司 网络中优选路径路由的资源预留和维护
WO2019210769A1 (en) * 2018-05-03 2019-11-07 Huawei Technologies Co., Ltd. Explicit routing with network function encoding
US11218569B1 (en) * 2019-01-11 2022-01-04 Architecture Technology Corporation IP packet translation for low-overhead out-of-band data embedding
JP7326860B2 (ja) * 2019-05-17 2023-08-16 富士フイルムビジネスイノベーション株式会社 システム、プログラム
US10962962B2 (en) * 2019-05-20 2021-03-30 Fisher-Rosemount Systems, Inc. Quick connection techniques for skid communicator tool
US11219112B2 (en) * 2019-09-09 2022-01-04 Appleton Grp Llc Connected controls infrastructure
US11102743B2 (en) * 2019-11-26 2021-08-24 Endress+Hauser SE+Co. KG Method to configure wireless HART device using Bluetooth
JP7390879B2 (ja) * 2019-12-05 2023-12-04 三菱重工業株式会社 通信処理装置、通信処理方法およびプログラム、並びにネットワーク層のヘッダ部のデータ構造
US11462898B2 (en) 2020-02-21 2022-10-04 Rockwell Automation Technologies, Inc. Gateway interface for an enhanced circuit breaker disconnect
US11158477B2 (en) 2020-02-21 2021-10-26 Rockwell Automation Technologies, Inc. Motor control center with enhanced circuit disconnect
CN111817915B (zh) * 2020-06-30 2022-04-01 武汉虹旭信息技术有限责任公司 一种基于dpdk的协议解析系统
US11616755B2 (en) * 2020-07-16 2023-03-28 Vmware, Inc. Facilitating distributed SNAT service
US11606294B2 (en) 2020-07-16 2023-03-14 Vmware, Inc. Host computer configured to facilitate distributed SNAT service
US11611613B2 (en) 2020-07-24 2023-03-21 Vmware, Inc. Policy-based forwarding to a load balancer of a load balancing cluster
US11902050B2 (en) 2020-07-28 2024-02-13 VMware LLC Method for providing distributed gateway service at host computer
US11451413B2 (en) 2020-07-28 2022-09-20 Vmware, Inc. Method for advertising availability of distributed gateway service and machines at host computer
CN113271226B (zh) * 2021-05-19 2022-06-24 湖南经研电力设计有限公司 电力通信网关键链路识别方法及其保护方法
US11556403B1 (en) 2021-10-19 2023-01-17 Bank Of America Corporation System and method for an application programming interface (API) service modification
CN114531476B (zh) * 2021-12-30 2023-10-20 爱普(福建)科技有限公司 一种工业协议解析和数据转换的方法和系统
US11978606B2 (en) 2022-07-29 2024-05-07 Rockwell Automation Technologies, Inc. Systems and methods for modifying solid-state breaker operations based on load profiles

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006279168A (ja) * 2005-03-28 2006-10-12 Kddi Corp アドホック網を構成する通信装置、ブリッジ装置及び通信システム
JP2007074198A (ja) * 2005-09-06 2007-03-22 Yokogawa Electric Corp ネットワーク通信システム
US20090073983A1 (en) * 2007-09-13 2009-03-19 Jin-Hyoung Kim METHOD AND APPARATUS FOR PROVIDING GATEWAY TO TRANSMIT IPv6 PACKET IN A WIRELESS LOCAL AREA NETWORK SYSTEM
US20090103731A1 (en) * 2007-10-23 2009-04-23 Futurewei Technologies, Inc. Authentication of 6LoWPAN Nodes Using EAP-GPSK
JP2010503276A (ja) * 2006-08-31 2010-01-28 ソニー エリクソン モバイル コミュニケーションズ, エービー Zigbee/ipゲートウェイ

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4273535B2 (ja) * 1998-05-12 2009-06-03 ソニー株式会社 データ伝送制御方法、データ伝送システム、データ受信装置及びデータ送信装置
JP2001313672A (ja) * 2000-04-28 2001-11-09 Toshiba Corp ネットワークシステム、パケット中継装置、無線端末及びパケット処理方法
US7339895B2 (en) * 2001-08-21 2008-03-04 Hitachi, Ltd. Gateway device and control method for communication with IP and IPV6 protocols
US7336642B2 (en) * 2003-08-07 2008-02-26 Skypilot Networks, Inc. Communication protocol for a wireless mesh architecture
US7437470B2 (en) * 2004-11-18 2008-10-14 International Business Machines Corporation Tunneling IPv6 packets
US20070030848A1 (en) * 2005-07-28 2007-02-08 Yokogawa Electric Corporation Network communication system
CN1905527A (zh) * 2005-07-28 2007-01-31 横河电机株式会社 网络通信系统
US7965664B2 (en) * 2006-05-31 2011-06-21 Honeywell International Inc. Apparatus and method for integrating wireless field devices with a wired protocol in a process control system
US8325627B2 (en) * 2007-04-13 2012-12-04 Hart Communication Foundation Adaptive scheduling in a wireless network
US8230108B2 (en) * 2007-04-13 2012-07-24 Hart Communication Foundation Routing packets on a network using directed graphs
KR101475345B1 (ko) * 2007-12-20 2014-12-22 삼성전자주식회사 아이피 기반 저 전력 무선 개인 네트워크의 주소 설정 방법및 장치
EP2096505A1 (en) * 2008-02-26 2009-09-02 ABB Research Ltd. Methods, products and system for configuring a new node of an industrial wireless network
GB0808447D0 (en) * 2008-05-12 2008-06-18 Nortel Networks Ltd A mechanism to divert an IP flow over a non-IP transport
CN101325598A (zh) * 2008-07-22 2008-12-17 中兴通讯股份有限公司 传输设备接收侧和发送侧的数据封装方法及同步数字系统
KR101524316B1 (ko) * 2009-02-09 2015-06-01 삼성전자주식회사 6LoWPAN 기반의 MANEMO 환경에서 통신 경로 최적화를 지원하기 위한 방법
DE102009046503A1 (de) * 2009-11-06 2011-05-26 Endress + Hauser Process Solutions Ag Verfahren zum Bedienen eines Feldgeräts der Automatisierungstechnik in ein Funknetzwerk
US20110158160A1 (en) * 2009-12-31 2011-06-30 Elster Electricity, Llc Ip encapsulation and routing over wireless radio networks
JP4900487B2 (ja) * 2010-01-06 2012-03-21 横河電機株式会社 制御ネットワーク管理システム
EP2580899B1 (en) * 2010-06-11 2014-04-30 ABB Research LTD An energy efficient method for communication between a wireless sensor network and an industrial control system
EP2413649B1 (en) * 2010-07-28 2015-02-25 ABB Research Ltd. Wireless communication method and system with collision avoidance protocol
CN103748852A (zh) * 2011-03-11 2014-04-23 美国汉物天公司 WirelessHART设备整合到有线HART网络的方法和设备
US8472348B2 (en) * 2011-07-05 2013-06-25 Cisco Technology, Inc. Rapid network formation for low-power and lossy networks
US8654711B2 (en) * 2012-02-24 2014-02-18 Mitsubishi Electric Research Laboratories, Inc. Channel scan for smart meter networks to determine operating channels

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006279168A (ja) * 2005-03-28 2006-10-12 Kddi Corp アドホック網を構成する通信装置、ブリッジ装置及び通信システム
JP2007074198A (ja) * 2005-09-06 2007-03-22 Yokogawa Electric Corp ネットワーク通信システム
JP2010503276A (ja) * 2006-08-31 2010-01-28 ソニー エリクソン モバイル コミュニケーションズ, エービー Zigbee/ipゲートウェイ
US20090073983A1 (en) * 2007-09-13 2009-03-19 Jin-Hyoung Kim METHOD AND APPARATUS FOR PROVIDING GATEWAY TO TRANSMIT IPv6 PACKET IN A WIRELESS LOCAL AREA NETWORK SYSTEM
US20090103731A1 (en) * 2007-10-23 2009-04-23 Futurewei Technologies, Inc. Authentication of 6LoWPAN Nodes Using EAP-GPSK

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
G.MONTENEGRO ET AL.: "Transmission of IPv6 Packets over IEEE802.15.4 Networks", RFC4944, JPN7016001187, September 2007 (2007-09-01), ISSN: 0003318184 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016527757A (ja) * 2013-08-06 2016-09-08 シスコ テクノロジー、インコーポレイテッド コンピュータネットワークにおける多トポロジールーティングアーキテクチャ
US9559750B2 (en) 2013-08-06 2017-01-31 Cisco Technology, Inc. Interleaving low transmission power and medium transmission power channels in computer networks
US9590896B2 (en) 2013-08-06 2017-03-07 Cisco Technology, Inc. On-demand medium to low transmission power channel switching in computer networks
US9722909B2 (en) 2013-08-06 2017-08-01 Cisco Technology, Inc. Multiple topology routing architecture in computer networks
US11605037B2 (en) 2016-07-20 2023-03-14 Fisher-Rosemount Systems, Inc. Fleet management system for portable maintenance tools
JP2018014105A (ja) * 2016-07-22 2018-01-25 フィッシャー−ローズマウント システムズ,インコーポレイテッド 携帯型フィールド保守ツールとプロセス制御デバイス間のプロセス制御通信
JP6990534B2 (ja) 2016-07-22 2022-01-12 フィッシャー-ローズマウント システムズ,インコーポレイテッド 携帯型フィールド保守ツールとプロセス制御デバイス間のプロセス制御通信

Also Published As

Publication number Publication date
DE112012003840T5 (de) 2014-08-14
GB2577423A (en) 2020-03-25
CN103828477A (zh) 2014-05-28
GB2510721A8 (en) 2017-06-28
JP6276183B2 (ja) 2018-02-07
GB2510721B (en) 2020-02-26
JP6817174B2 (ja) 2021-01-20
GB2510721A (en) 2014-08-13
WO2013040438A1 (en) 2013-03-21
GB201403228D0 (en) 2014-04-09
JP2018023155A (ja) 2018-02-08
GB201917847D0 (en) 2020-01-22
CN103828477B (zh) 2018-05-22
US8908666B2 (en) 2014-12-09
US20130070745A1 (en) 2013-03-21
GB2577423B (en) 2020-09-02

Similar Documents

Publication Publication Date Title
JP6817174B2 (ja) 互換性がないネットワークルーティングプロトコルを使用する通信ネットワークにわたるデータフレームの伝達
CN102934407B (zh) 用于无线传感器网络和工业控制系统之间的通信的高能效方法
Hong et al. SNAIL: an IP-based wireless sensor network approach to the internet of things
Olsson 6LoWPAN demystified
US10462054B2 (en) Overloading address space for improved routing, diagnostics, and content-relay network
Bergmann et al. A CoAP-gateway for smart homes
JP4764737B2 (ja) ネットワークシステム、端末およびゲートウェイ装置
KR101320538B1 (ko) 네트워크 상호 연동 실현 방법 및 시스템
JP6402583B2 (ja) 中継装置、中継システム、中継方法、及び、プログラム
CN106797406A (zh) 使用6LoWPAN头部压缩机制的IPv4通信
US20220209996A1 (en) Interface Extension Method, Apparatus, and System
JP6693799B2 (ja) 中継方法並びに対応する通信ネットワークデバイス、システム、コンピュータプログラム及びコンピュータ可読記憶媒体
Lamkimel et al. The Internet of Things: Overview of the essential elements and the new enabling technology 6LoWPAN
Haseeb et al. Connectivity, interoperability and manageability challenges in internet of things
CN111740908A (zh) 通信方法及相关设备
Han et al. Building wireless embedded internet for industrial automation
WO2013005832A1 (ja) 通信装置、通信システム、及び通信方法
WO2014067065A1 (zh) 实现隧道处理的方法、装置和系统
González González Study of the protocol for home automation Thread
Culler Secure, low-power, IP-based connectivity with IEEE 802.15. 4 wireless networks
KR102300600B1 (ko) NFC 무선 기술 기반 IPv6 패킷 전송 방법 및 이를 수행하는 장치
Ise et al. Design and implementation of home network protocol for appliance control based on IEEE 802.15. 4
Schmidt 6LoWPAN: An Open IoT Networking Protocol
KR20170060561A (ko) 통합 사물 id와 id/loc 분리 구조를 이용한 이종 사물네트워크 간 인터네트워킹 방법 및 시스템
Madadi-Barough et al. Matter: IoT Interoperability for Smart Homes

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150914

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160415

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160517

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20160816

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20161017

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161117

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20170530

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171002

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20171011

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20171219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180111

R150 Certificate of patent or registration of utility model

Ref document number: 6276183

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250