JP2007096539A - 変換装置 - Google Patents
変換装置 Download PDFInfo
- Publication number
- JP2007096539A JP2007096539A JP2005280875A JP2005280875A JP2007096539A JP 2007096539 A JP2007096539 A JP 2007096539A JP 2005280875 A JP2005280875 A JP 2005280875A JP 2005280875 A JP2005280875 A JP 2005280875A JP 2007096539 A JP2007096539 A JP 2007096539A
- Authority
- JP
- Japan
- Prior art keywords
- bacnet
- router
- ipv4
- address
- ipv6
- 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.)
- Pending
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
【課題】 設備系の通信システムにおいて、異なる通信プロトコルを実装した設備機器及び中継装置が存在する場合、中継装置同士に共通した通信プロトコルを利用してルータの設定をする。
【解決手段】 第1機器と第2機器とルータとが、IPよりも上位のBACnetプロトコルに従って動作する通信システムに設けられ、トランスレータ装置1は、IPv4、IPv6用の通信I/F部11,12と、ルータが接続されるネットワーク番号と、ルータのIPv4アドレスとIPv6アドレスとを対応付けて登録したルータ変換テーブルを記憶した記憶部13とを備える。ルータ変換テーブルは、BACnetプロトコルに従って、ルータが接続されているネットワーク番号と、ルータのIPv4アドレス又はルータのIPv6アドレスとを取得してアドレスを割り当て、割り当てたアドレス情報を、ルータのネットワーク番号と取得したアドレス情報に対応づけて作成される。
【選択図】 図2
【解決手段】 第1機器と第2機器とルータとが、IPよりも上位のBACnetプロトコルに従って動作する通信システムに設けられ、トランスレータ装置1は、IPv4、IPv6用の通信I/F部11,12と、ルータが接続されるネットワーク番号と、ルータのIPv4アドレスとIPv6アドレスとを対応付けて登録したルータ変換テーブルを記憶した記憶部13とを備える。ルータ変換テーブルは、BACnetプロトコルに従って、ルータが接続されているネットワーク番号と、ルータのIPv4アドレス又はルータのIPv6アドレスとを取得してアドレスを割り当て、割り当てたアドレス情報を、ルータのネットワーク番号と取得したアドレス情報に対応づけて作成される。
【選択図】 図2
Description
本発明は、例えばインターネットを介して接続された設備系の機器間で通信されるパケットを変換して中継するための変換装置に関する。
従来より、インターネットプロトコルを利用した通信システムにおいて、異なる通信プロトコルを実装した機器同士での通信を実現するための技術として、下記の特許文献1などが知られている。
例えば、図12(a)に示すように、複数のIPv4機器と、複数のIPv6機器との中間に中継装置を設けた通信システムや、図12(b)に示すように、共通した通信線にIPv4機器、IPv6機器と共に接続された中継装置を設けた通信システムや、図12(c)に示すように、IPv4機器、IPv6機器のみならずDHCP(Dynamic Host Configuration Protocol)サーバに接続された中継機器を設けた通信システムにおいて、中継装置は、IPv4機器とIPv6機器との間で通信可能とするための変換処理を行っている。
この中継装置は、図13に示すように、IPv4用通信インターフェース部101とIPv6用通信インターフェース部102とを備え、記憶部103にIP変換テーブルを記憶しておき、当該記憶部103したテーブルを参照して、中央処理部104によって送受信されるパケット内の宛先アドレス及び送信元アドレスを書き換える。
記憶部103に記憶されたIP変換テーブルは、中継装置に接続された機器ごとにIPv4アドレスとIPv6アドレスとの組を登録している。これにより、中継装置は、例えばIPv6機器を宛先としたIPv4パケットをIPv4用通信インターフェース部101で受信すると、中央処理部104によって記憶部103のIP変換テーブルを参照して、当該IPv4パケットに含まれる送信元アドレスをIPv6アドレスに変換し、宛先のIPv4アドレスをIPv6アドレスに変換する。これにより、宛先及び送信元をIPv6アドレスに変換したIPv6パケットをIPv6用通信インターフェース部102から送信できるとしている。
特開2004−236096号公報
しかしながら、上述の中継装置において、IPv4アドレスとIPv6アドレスとの変換するためのIP変換テーブルを作成するためにDHCPサーバ等を使用することができるが、例えばBACnetプロトコルにおいてはIPアドレスのみならず、BACnetデバイスIDを使用して双方向通信を行う必要がある。したがって、単にIPアドレスの変換作業を行うのみの中継装置は、BACnetプロトコルを採用した通信システムに直接導入することができないという問題点がある。
また、照明機器や空調機器等にIPアドレスを割り当てて、膨大な数の機器を、所定数の機器からなるサブネットワーク単位で管理したい場合など、IPv4アドレスを割り付けなくてはいけない数がサブネット内の最大収容数(クラスCの場合254)以上となる時には、IPv6機器にIPv4アドレスを割り付けることができず、IPv4機器とIPv6機器との通信ができないという問題がある。
更に、ルータがBACnetプロトコルのルーティング機能を用いている場合には、IPアドレスが含まれるヘッダ部のみならず、BACnetプロトコルに関するデータが格納されている上位プロトコルのペイロードまでも変換する必要があり、既存の中継装置を使用しても通信ができないという問題がある。
そこで、本発明は、上述した実情に鑑みて提案されたものであり、設備系の通信システムにおいて、異なる通信プロトコルを実装した設備機器及び中継装置が存在する場合に、当該中継装置同士に共通した通信プロトコルを利用して自動的に中継装置の設定をすることができる変換装置を提供することを目的とする。
本発明は、第1の通信プロトコルに従ってパケットを送受信する第1機器及び第2の通信プロトコルに従ってパケットを送受信する第2機器と、当該第1機器と第2機器との間で送受信されるパケットを中継するルータとを少なくとも有し、当該第1機器と第2機器とルータとが、第1の通信プロトコル及び第2の通信プロトコルよりも上位のプロトコルに従って動作する通信システムに設けられ、第1機器と第2機器との間で送受信されるパケットのアドレス情報を変換する変換装置に係るものである。
この変換装置は、第1機器と第2機器との間で送受信されるパケットを中継する通信手段と、第1機器が所属するサブネットワークと第2機器が所属するサブネットワークとを識別するサブネットワーク番号と、ルータの第1の通信プロトコルのアドレス情報と、当該ルータの第2の通信プロトコルのアドレス情報とを対応付けて登録したルータ変換テーブルを記憶する記憶手段と、通信手段でパケットを受信し、当該パケットがルータで中継されて通信されるパケットであると判定した場合に、記憶手段に記憶されたルータ変換テーブルを参照して、第1の通信プロトコルのアドレス情報を第2の通信プロトコルのアドレス情報に変換する処理、又は、第2の通信プロトコルのアドレス情報を第1の通信プロトコルのアドレス情報に変換する変換手段とを有し、上述の課題を解決するために、変換テーブル作成手段は、上位の通信プロトコルに従って、ルータが接続されているネットワーク番号と、当該ルータの第1の通信プロトコルのアドレス情報又は当該ルータの第2の通信プロトコルのアドレス情報とを取得し、取得していない通信プロトコルのアドレス情報を割り当てて、当該割り当てたアドレス情報を、当該ルータのネットワーク番号と取得した当該ルータのアドレス情報に対応づけてルータ変換テーブルを作成する。
本発明に係る変換装置によれば、上位のプロトコルで提供しているサービスを利用して、ルータが接続されているネットワーク番号と、当該ルータの第1の通信プロトコルのアドレス情報又は当該ルータの第2の通信プロトコルのアドレス情報とを取得し、取得していない前記通信プロトコルのアドレス情報を割り当てるので、異なる通信プロトコルを実装した第1機器及び第2機器のパケットを中継するルータが有る場合であっても、自動的に、ルータ変換テーブルを作成することができる。
以下、本発明の実施の形態について図面を参照して説明する。
本発明を適用した変換装置であるトランスレータ装置1は、図1に示すように、HIM(Human Interface Module)機器2と、IPv4ネットワークと、IPv6ネットワークと接続された通信システムを構成する。IPv4ネットワークは、IPv4機器であるIcont(Intelligent Controller)3A〜3B(以下、総称する場合には「IPv4型Icont3」と呼ぶ。)と、IPv4に対応したBACnet(A Data Communication Protocol for Building Automation and Control Networks)ルータ5(以下、「IPv4型BACnetルータ5」と呼ぶ。)とで構成される。また、IPv6ネットワークは、IPv6機器であるIcont4A〜4C(以下、総称する場合には「IPv6型Icont4」と呼ぶ。)と、IPv6に対応したBACnetルータ6(以下、「IPv6型BACnetルータ6」と呼ぶ。)とで構成される。
IPv4型Icont3(第1機器)及びIPv6型Icont4(第2機器)は、それぞれOSI参照モデルにおけるネットワーク層プロトコルとしてのインターネットプロトコルに従ってパケットの送受信を行い、IPv4型Icont3は、インターネットプロトコルのバージョン4(第1の通信プロトコル)に対応した機器であり、IPv6型Icont4は、インターネットプロトコルのバージョン6(第2の通信プロトコル)に対応した機器となっている。また、IPv4型BACnetルータ5及びIPv6型BACnetルータ6は、それぞれOSI参照モデルにおけるネットワーク層プロトコルとしてのインターネットプロトコルに従ってパケットの送受信を行い、IPv4型BACnetルータ5は、インターネットプロトコルのバージョン4(第1の通信プロトコル)に対応した機器であり、IPv6型BACnetルータ6は、インターネットプロトコルのバージョン6(第2の通信プロトコル)に対応した機器となっている。
IPv4型Icont3及びIPv6型Icont4は、例えばビル内の通信システムにおける防災機器、防犯機器、空調機器、電気機器、照明機器等の設備機器であり、当該設備機器の管理及び制御を目的としたビルオートメーションシステム用共通通信プロトコルであるBACnetプロトコルをアプリケーション層プロトコルとして実装している。
したがって、IPv4型Icont3及びIPv6型Icont4は、インターネットプロトコルに従ったIPv4又はIPv6のIPアドレスに加えて、当該インターネットプロトコルよりも上位の通信プロトコルであるBACnetプロトコルに準拠したBACnetデバイスIDが割り当てられている。
これにより、IPv4型Icont3及びIPv6型Icont4は、インターネットプロトコルに従った送受信処理を行ってIPヘッダを解析して、BACnetプロトコルに準拠したBACnetデータを含むBACnetパケットを受信すると共に、BACnetプロトコルに従った処理を行うことにより、ビル内の設備機器としての動作を行う。なお、IPv4型Icont3及びIPv6型Icont4は、BACnetプロトコルにおけるIcontとして機能するように設定されており、ビル管理者等に操作されるHIM機器2によってBACnetデバイスIDや、後述のBACnetネットワーク番号等が管理される。
トランスレータ装置1は、IPv4型Icont3及びIPv6型Icont4で送受信されるBACnetパケットに含まれるIPアドレスを変換して、IPv4型Icont3とIPv6型Icont4との間で送受信されるパケットを中継するものである。トランスレータ装置1は、図2に示すように、通信手段としてIPv4用通信インターフェース部11とIPv6用通信インターフェース部12とを備え、記憶部(記憶手段)13にBACnetルータ変換テーブルを記憶している。そして、トランスレータ装置1は、記憶部13したBACnetルータ変換テーブルを参照して、変換手段及び変換テーブル作成手段として機能する中央処理部14によって送受信されるIPヘッダ内の宛先アドレス及び送信元アドレスを書き換える。これにより、IPv4型BACnetルータ5には、IPv4アドレスを含むBACnetパケットを受信させ、IPv4型BACnetルータ5には、IPv6アドレスを含むBACnetパケットを受信させることで、IPv4型Icont3には、IPv4アドレスを含むBACnetパケットを受信させ、IPv6型Icont4には、IPv6アドレスを含むBACnetパケットを受信させる。
記憶部13に記憶されているBACnetルータ変換テーブルは、BACnetプロトコルにおけるBACnetネットワークの識別子であるBACnetネットワーク番号と、IPv4アドレスと、IPv6アドレスとが全てのIPv4型BACnetルータ5及びIPv6型BACnetルータ6ごとに登録されている。そして、中央処理部14は、IPv4用通信インターフェース部11又はIPv6用通信インターフェース部12でBACnetパケットを受信すると、BACnetルータ変換テーブルに登録されたIPv4アドレスとIPv6アドレスとを参照して、IPアドレスを変換した新たなIPヘッダを含むBACnetパケットを作成して、IPv4用通信インターフェース部11又はIPv6用通信インターフェース部12から送信させる。
このような通信システムで送受信されるBACnetパケットは、図3に示すように、BACnetプロトコルによって作成されたアプリケーションデータが格納される領域がBACnet領域21となっており、当該BACnet領域21に、リンク(LINK)領域22,トランスポート層ヘッダである8バイトのUDP(User Datagram Protocol)領域23,IPv4に準拠したIP層ヘッダである20バイト又はIPv6に準拠したIP層ヘッダである40byte(拡張ヘッダ無し)(図示せず)IP領域24,リンク層ヘッダである14バイトのイーサネット(登録商標)領域25が付加されて構成されている。このIP領域24には、送信元IPアドレス及び最終的な宛先となるIcontやBACnetルータのIPアドレスが格納される。
BACnet領域21は、BACnetプロトコルのバージョン情報が格納されるVersion領域31,NPCI(Network Protocol Control Information)領域の状態を表すControl領域32からなる不変領域と、可変領域であるNPCI領域33と、実際のサービス種類や制御コマンドからなるBACnetデータが格納されるAPDU(Application layer Protocol Data Unit)領域34とに区分されている。
NPCI領域は、2オクテット長の最終宛先ネットワークアドレスであるBACnetデバイスIDが格納されるDNET領域41,1オクテット長の最終宛先MAC(リンク)層アドレスが格納されるDLEN領域42,最終宛先MAC層アドレスが格納されるDADR領域43,2オクテット長の送信元ネットワークアドレスが格納されるSNET領域44,1オクテット長の送信元MAC層アドレスが格納されるSLEN領域45,送信元MAC層アドレスが格納されるSADR領域46,ルータを通過するときに無限循環させないためのホップカウントが格納されるHC領域47,ルータやネットワークの状態情報であるネットワーク層メッセージが格納されるMT領域48,ベンダーIDが格納されるVID領域49から構成されている。
ここで、トランスレータ装置1は、IPv4型BACnetルータ5及びIPv6型BACnetルータ6を超えてBACnetパケットを転送する場合には、DNET領域41、DLEN領域42及びDADR領域43と、SNET領域44、SLEN領域45及びDADR領域46とに格納されるIPアドレスをIPv4アドレスとIPv6アドレスとの間で変換して、IPv4型BACnetルータ5又はIPv6型BACnetルータ6に転送する。
図4にIPv4型BACnetルータ5及びIPv6型BACnetルータ6を備えたシステム構成の一例を示すように、IPv4型BACnetルータ5には、BACnetネットワーク番号が「1」の複数のIPv4型Icont3(本例ではデバイス番号がDev-11,Dev-12の2台)からなるIPv4のサブネットワークと、BACnetネットワーク番号が「2」の複数のIPv4型Icont3(本例ではデバイス番号がDev-21,Dev-22,Dev-23の3台)からなるIPv4のサブネットワークとが接続されている。また、IPv4型BACnetルータ5には、BACnetネットワーク番号が「3」の複数のIPv6型Icont4からなるIPv6のサブネットワークとの間に、トランスレータ装置1が接続されている。
このようなIPv4型BACnetルータ5は、BACnetネットワーク番号が「1」のサブネットワークに対するインターフェースにIPアドレス「192.168.1.250」が割り当てられ、BACnetネットワーク番号が「2」のサブネットワークに対するインターフェースにIPアドレス「192.168.2.250」が割り当てられ、トランスレータ装置1に対するインターフェースにIPアドレス「192.168.3.250」が割り当てられている。
トランスレータ装置1は、IPv4型BACnetルータ5から転送されたBACnetパケットを受信すると、当該BACnetパケットのIPアドレスを変換してBACnetネットワーク番号が「3」のサブネットワークにIPv6型BACnetルータ6経由で転送すると共に、BACnetネットワーク番号が「3」のサブネットワークからのBACnetパケットをIPv6型BACnetルータ6経由で受信すると、当該BACnetパケットのIPアドレスを変換してIPv4型BACnetルータ5に転送する。
また、このシステム構成では、BACnetネットワーク番号が「3」の複数のIPv6型Icont4(本例ではデバイス番号がDev-31,Dev-32の2台)からなるIPv6のサブネットワークに接続されると共に、トランスレータ装置1が接続されたIPv6型BACnetルータ6を備える。
このようなシステム構成において、IPv4型BACnetルータ5,IPv6型BACnetルータ6は、所定数以内のIPv4型Icont3,IPv6型Icont4を、通信システム全体においてBACnetネットワーク同士を識別するためのBACnetネットワーク番号で区分している。このBACnetネットワーク番号は、BACnetプロトコルに準拠して通信及び動作を行うBACnetネットワーク単位で論理的に決定された識別子であり、通信システム全体でユニークな値となっている。
IPv4型BACnetルータ5,IPv6型BACnetルータ6は、BACnetパケットを受信すると、BACnetパケットに含まれるBACnetネットワーク番号と、BACnetのデバイス番号と、IPアドレスとを参照して、BACnetパケットの転送先を決定する。例えば、BACnetネットワーク番号が「1」のサブネットワークに所属するDev-11のIPv4型Icont3から、BACnetネットワーク番号が「3」のサブネットワークに所属するDev-31のIPv6型Icont4にBACnetパケットを送信する場合、当該Dev-31宛のメッセージ(BACnetパケット)はIPv4型BACnetルータ5で受信されて、経路選択の結果、トランスレータ装置1に転送される。その後、Dev-31宛のメッセージは、トランスレータ装置1でIPアドレスが変換されて、BACnetネットワーク番号が「3」のサブネットワーク内のDev-31のIPv6型Icont4で受信される。
このように、IPv4型BACnetルータ5を超えてIcont同士が通信を行う場合、通信相手となるIcontが所属するBACnetネットワークと接続されたBACnetルータを経由してBACnetパケットの授受を行う。BACnetプロトコルは、相互のBACnetルータの生存確認を行うために、当該生存確認を問い合わせる「WhoIs Router」サービスをサポートしており、自己の生存状態を連絡するための「Iam Router」サービスをサポートしている。これにより、トランスレータ装置1は、通信線で接続されたBACnetルータに対してWhoIs Routerサービスを表す情報を含むBACnetパケットを同報通信(ブロードキャスト、マルチキャスト)し、応答としてのIam Routerサービスを表す情報を含むBACnetパケットを受信して、他のBACnetルータの存在を確認できる。
このような通信システムにおいては、トランスレータ装置1により、IPv4型BACnetルータ5及びIPv6型BACnetルータ6の属しているBACnetネットワーク番号とIPv4アドレス又はIPv6アドレスとを対応づけたBACnetルータテーブルを作成して、IPv4型BACnetルータ5,IPv6型BACnetルータ6同士が通信できるようにする。このBACnetルータテーブルの作成処理は、図5に示すように、先ず、トランスレータ装置1は、IP領域24にブロードキャストアドレスを格納し、APDU領域34にWhoIs Routerサービスを表す情報を格納して、同報通信を行うと共に、IP領域24にマルチキャストアドレスを格納し、APDU領域34にWhoIs Routerサービスを表す情報を格納して、同報通信を行う。これにより、IPv4型BACnetルータ5は、ブロードキャストを格納したBACnetパケットを受信し、IPv6型BACnetルータ6は、マルチキャストアドレスを格納したBACnetパケットを受信する。
WhoIs Routerサービスを表す情報を格納したBACnetパケットを受信したIPv4型BACnetルータ5及びIPv6型BACnetルータ6は、BACnetプロトコルに従ってAPDU領域34を解析することによって、WhoIs Routerサービスを含むBACnetパケットであると認識して、IP領域24に送信元アドレスとして自己のIPアドレスを格納し、APDU領域34に、自己のBACnetネットワーク番号及び自己の状態を連絡するIam Routerサービスを表す情報を格納したBACnetパケットをトランスレータ装置1に返信する。
これにより、トランスレータ装置1は、IPv4型BACnetルータ5,IPv6型BACnetルータ6に割り当てられているIPアドレスと、接続されているBACnetネットワークのBACnetネットワーク番号との組をそれぞれ取得できる。例えば、IPv4型BACnetルータ5が2台(192.168.1.250、192.168.1.251)存在し、IPv6型BACnetルータ6が2台(Fe80::0001:00FC、Fe80::0001:00FD)が存在する場合には、図6に示すようなBACnetルータテーブルを作成できる。この図6に示すBACnetルータテーブルは、WhoIs Routerサービス及びIam Routerサービスによって取得したIPアドレスのみが登録された状態を示している。この図6に示すようなBACnetルータテーブルが作成される通信システムは、IPv4アドレスが「192.168.1.250」のIPv4型BACnetルータ5に、BACnetネットワーク番号が「2」、「3」、「4」のBACnetネットワークが接続されており、IPv4アドレスが「192.168.1.251」のIPv4型BACnetルータ5に、BACnetネットワーク番号が「5」のBACnetネットワークが接続されており、IPv6アドレスが「Fe80::0001:00FC」のIPv6型BACnetルータ6に、BACnetネットワーク番号が「6」、「7」のBACnetネットワークが接続されており、IPv6アドレスが「Fe80::0001:00FD」のIPv6型BACnetルータ6に、BACnetネットワーク番号が「8」、「9」、「10」のBACnetネットワークが接続されているものである。
次に、トランスレータ装置1は、図7(a)に示すように、IPv4型Icont3からWhoIs Routerサービスを表す情報を含むBACnetパケットが送信されると共に、IPv6型Icont4からWhoIs Routerサービスを含むBACnetパケットが送信される。これに対し、トランスレータ装置1は、図6において空欄となっているIPv4型BACnetルータ5のIPv6アドレスを割り当てると共に、IPv6型BACnetルータ6のIPv4アドレスを割り当てる。このとき、現在使用されていない固有のIPv4アドレス及びIPv6アドレスを選択して、図7(c)に示すようなBACnetルータテーブルを作成できる。
そして、この選択したIPv6型BACnetルータ6のIPv4アドレスを送信元アドレスとし、当該IPv6型BACnetルータ6のBACnetネットワーク番号と、Iam Routerサービスを表す情報とを含むBACnetパケットを送信すると共に、選択したIPv4型BACnetルータ5のIPv4アドレスを送信元アドレスとし、当該IPv4型BACnetルータ5のBACnetネットワーク番号と、Iam Routerサービスを表す情報とを含むBACnetパケットを送信する。
これにより、IPv4型Icont3は、トランスレータ装置1で割り当てられたIPv6型BACnetルータ6のIPv4アドレスを認識でき、IPv6型Icont4は、トランスレータ装置1で割り当てられたIPv4型BACnetルータ5のIPv6アドレスを認識できる。そして、IPv4型Icont3は、自己のテーブルにIPv4型BACnetルータ5及びIPv6型BACnetルータ6のIPv4アドレスを登録でき、IPv6型Icont4は、自己のテーブルにIPv4型BACnetルータ5及びIPv6型BACnetルータ6のIPv6アドレスを登録できる。
また、IPv4型Icont3及びIPv6型Icont4にBACnetルータテーブルを作成させる他の手順として、トランスレータ装置1は、図7(b)に示すように、例えばIPv4型Icont3からブロードキャストアドレスとWhoIs Routerサービスを表す情報とを含むBACnetパケットを受信した場合には、ブロードキャストアドレスをマルチキャストアドレスに変換してWhoIs Routerサービスを表す情報を含むBACnetパケットをIPv6型BACnetルータ6に送信し、IPv6型BACnetルータ6から、Iam Routerサービスを表す情報を含むBACnetパケットの返信があった場合に、当該返信のBACnetパケットのIPv6アドレスをIPv4アドレスに書き換えて、IPv4型Icont3に転送しても良い。これにより、IPv4型Icont3は、トランスレータ装置1に対して返信があったIPv6型BACnetルータ6についてのBACnetルータテーブルを作成できる。逆に、IPv6型Icont4からトランスレータ装置1にWhoIs Routerサービスを表す情報を含むBACnetパケットがトランスレータ装置1に送信された場合であっても、IPv4型BACnetルータ5からの返信があった場合に、Iam Routerサービスを表す情報を含むBACnetパケットをIPv6型Icont4に転送することができ、IPv6型Icont4にBACnetルータテーブルを作成させることができる。
このようにBACnetルータテーブルを作成したトランスレータ装置1は、WhoIsサービスに対するIamサービスによってIPv4型Icont3及びIPv6型Icont4が属しているBACnetネットワークのBACnetネットワーク番号及びIPアドレスを取得することができる。そして、トランスレータ装置1は、IPv4型Icont3及びIPv4型BACnetルータ5のIcontごとに、BACnetネットワーク番号と、IPv4アドレスと、IPv6アドレスとを対応付けた変換テーブルを作成できる。
これにより、トランスレータ装置1は、例えばIPv6型BACnetルータ6を超えてIPv4型Icont3からIPv6型Icont4に送信されるBACnetパケットを受信した場合には、当該BACnetパケットに含まれるBACnetネットワーク番号から、転送先のIPv6型BACnetルータ6を認識し、BACnetに従ったDNET領域41、DLEN領域42及びDADR領域43で特定される最終宛先のIPv4アドレスをIPv6アドレスに変換すると共に、送信元のIPv4型BACnetルータ5のIPv4アドレスをIPv6アドレスに変換する。これにより、IPv4型Icont3からIPv4型BACnetルータ5を経由してトランスレータ装置1で受信したBACnetパケットを、IPv6型BACnetルータ6で受信させて、IP領域24で特定されるIPv6型Icont4に転送するといったユニキャスト通信を実現できる。
具体的には、図7(c)に示すようなBACnetルータテーブルをトランスレータ装置1で作成した場合に、BACnetネットワーク番号「1」に所属するIPv4アドレス「192.168.1.1」のIPv4型Icont3が、BACnetネットワーク番号「3」に所属するIPv6アドレス「fe80::3:1」のIPv6型Icont4にBACnetパケットを送信する場合を考える。なお、IPv6型Icont4は、IPv4型Icont3にとってはIPv4アドレス「192.168.3.1」として認識されているとする。このとき、IPv4型Icont3は、DADR領域43にIPv4アドレス「192.168.3.1」を格納し、SADR領域46にIPv4アドレス「192.168.1.5」を格納したBACnetパケットを送信して、BACnetネットワーク番号「1」に接続されたIPv4アドレス「192.168.1.250」のIPv4型BACnetルータ5を経由してトランスレータ装置1で受信される。すると、トランスレータ装置1は、BACnetネットワーク番号「3」に接続されたIPv6アドレス「Fe80::0001:00FC」のIPv6型BACnetルータ6に転送を行い、更に、IPv6アドレス「fe80::0003:00fc」のIPv6型Icont4に転送されることになる。
このようにBACnetパケットが転送されるとき、トランスレータ装置1は、BACnetパケットのDADR領域43に送信先のIPv4アドレス、SADR領域46に送信元のIPv4アドレスが含まれるので、当該IPv4アドレスも、IPv6アドレスに変更して、IPv6型BACnetルータ6で転送させる。
以上説明したように、本発明を適用したトランスレータ装置1によれば、WhoIs Routerサービスを利用して通信システムを構成するIPv4型BACnetルータ5及びIPv6型BACnetルータ6が接続されているBACnetネットワーク番号を取得して、当該BACnetネットワーク番号とIPv4型BACnetルータ5及びIPv6型BACnetルータ6のIPv4アドレスと、IPv6アドレスとを対応付けたBACnetルータテーブルを作成することができる。したがって、このトランスレータ装置1によれば、設備系の大規模な通信システムにおいて、IPv4とIPv6といったように異なる通信プロトコルを実装したルータが存在する場合に、当該ルータ同士に共通した通信プロトコルを利用して自動的にルータの情報を取得することができ、当該異なる通信プロトコルを超えて端末間通信を行わせることができる。すなわち、このトランスレータ装置1によれば、BACnetルータテーブルを作成することにより、BACnetルータ機能を持たせることができる。
つぎに、上述したトランスレータ装置1において、通信システムで必要なIPv4アドレスの数が、IPv4の同一サブネットで割り付けられる数よりも多い場合の動作について説明する。
IPv4を利用した通信システムにおいて、IPv4アドレスが所定数以下の場合、例えば図8(a)に示すようにIPv6型Icont4が255台未満である場合には、図8(b)のように全てのIPv6型Icont4にIPv4アドレスを割り当てることができる。一方、図8(c)のように、IPv6型Icont4の255台以上である場合には、同一のサブネット「192.168.1.X」のIPv4アドレスを割り当てることができないIPv6型Icont4が現れる。
これに対し、トランスレータ装置1は、図8(c)に示すように、255台未満のIPv6型Icont4を、擬似的なBACnetネットワーク番号「1」に属し、サブネットが「192.168.1.X」の複数のIPv6型Icont4と、擬似的なBACnetネットワーク番号「2」に属し、サブネットが「192.168.2.X」の複数のIPv6型Icont4と、擬似的なBACnetネットワーク番号「3」に属し、サブネットが「192.168.3.X」の複数のIPv6型Icont4とに区分する。
このような動作を行うトランスレータ装置1は、図9に示すように、先ずステップS1において、WhoIsサービスを表す情報を含むBACnetパケットをマルチキャスト配信し、Iamサービスを表す情報を含むBACnetパケットを、通信システムを構成する全てのIPv6型Icont4から受信する。これにより、トランスレータ装置1は、通信システムを構成するIPv6型Icont4の数を得る。
次にトランスレータ装置1は、ステップS2において、ステップS1で取得したIPv6型Icont4の数が、IPv4アドレスで管理できる所定数以上か否かを判定し、所定数以上ではないと判定した場合にはステップS3に処理を進め、所定数以上であると判定した場合にはステップS4に処理を進める。
ステップS3において、トランスレータ装置1は、WhoIsサービスに対するIPv6型Icont4からのIamサービスによって、全てのIPv6型Icont4に仮想的なIPv4アドレスを割り振って、ステップS7において、通信動作を開始させる。
このとき、トランスレータ装置1は、図10(a)に示すように、トランスレータ装置1は、接続機器の状態を問い合わせるWhoIsサービスであることを表す情報をAPDU領域34に含むBACnetパケットをブロードキャスト通信によってIPv4型Icont3に送信する。このとき、トランスレータ装置1は、IPヘッダの送信先アドレスを、IPv4に準拠したブロードキャストアドレスに設定して同報通信を行う。そして、IPv4型Icont3は、BACnetプロトコルに従ってAPDU領域34を解析することによって、WhoIsサービスを含むBACnetパケットであると認識して、IP領域24に送信元アドレスとして自己のIPv4アドレスを格納し、SNET領域44にBACnetデバイスIDを格納し、接続機器に自己の状態を連絡するIamサービスを表す情報をAPDU領域34に格納したBACnetパケットをトランスレータ装置1に返信する。
例えば、IPv4型Icont3が2台からなる場合、トランスレータ装置1は、IPv4アドレスが「192.168.1.1」、「192.168.1.2」のBACnetパケットを受信できる。このとき、トランスレータ装置1は、後の処理において、IPv4アドレスが割り当てられていないIPv6機器3に新たなIPv4アドレスを割り当てるために、IPv4型Icont3から受信したIamサービスを表す情報を含むBACnetパケットのIP領域24に格納されたIPv4アドレスのサブネット(本例では「192.168.1.X」)を取得しておく。
また、トランスレータ装置1は、IPv4に準拠したブロードキャストアドレスを含むBACnetパケットを同報通信すると共に、IPv6に準拠したマルチキャストアドレスをIP領域24に含み、WhoIsサービスであることを表す情報をAPDU領域34に含むBACnetパケットを同報通信する。そして、IPv6型Icont4は、BACnetプロトコルに従ってAPDU領域34を解析することによって、WhoIsサービスを含むBACnetパケットであると認識して、IP領域24に送信元アドレスとして自己のIPv6アドレスを格納し、SNET領域44にBACnetデバイスIDを格納し、Iamサービスを表す情報をAPDU領域34に格納したBACnetパケットをトランスレータ装置1に返信する。
例えばIPv6型Icont4が2台からなる場合、トランスレータ装置1は、IPv6アドレスが「Fe80::0001:0005」、「Fe80::0001:0006」のBACnetパケットを受信できる。
これにより、トランスレータ装置1は、図10(b)に示すIP変換テーブルを作成できる。
次に、この通信システムにおいて、図11(a)に示すように、WhoIsサービスを表す情報を含むBACnetパケットを受信して、Iamサービスを表す情報を含むBACnetパケットを返信したIPv4型Icont3及びIPv6型Icont4は、トランスレータ装置1に対してWhoIsサービスを表す情報を含むBACnetパケットをトランスレータ装置1に送信する。
トランスレータ装置1は、それぞれのIPv4型Icont3から、APDU領域34にWhoIsサービスを表す情報を含むBACnetパケットが送信されると、使用されていないIPv4アドレスを、IPv6型Icont4用のIPv4アドレスとして割り当てる。
そして、トランスレータ装置1は、割り当てたIPv4アドレス「192.168.1.5」をIP領域24に含むIamサービスを表す情報をAPDU領域34に含むBACnetパケットと、IPv4アドレス「192.168.1.6」をIP領域24に含むIamサービスを表す情報をAPDU領域34に含むBACnetパケットとをIPv4型Icont3に受信させることができる。これにより、トランスレータ装置1は、記憶部13に記憶するIP変換テーブルとして、図11(b)に示すように、IPv6型Icont4用のIPv4アドレスを設定できる。
また、トランスレータ装置1は、それぞれのIPv6型Icont4から、APDU領域34にWhoIsサービスを表す情報を含むBACnetパケットが送信されると、使用されていないIPv6アドレスを、IPv4型Icont3用のIPv6アドレスとして割り当てる。
そして、トランスレータ装置1は、割り当てたIPv6アドレス「Fe80::0001:0001」をIP領域24に含むIamサービスを表す情報をAPDU領域34に含むBACnetパケットと、IPv6アドレス「Fe80::0001:0002」をIP領域24に含むIamサービスを表す情報をAPDU領域34に含むBACnetパケットとをIPv6型Icont4に受信させることができる。これにより、トランスレータ装置1は、記憶部13に記憶するIP変換テーブルとして、図11(b)に示すように、IPv4型Icont3用のIPv6アドレスを設定できる。
ここで、IPv4型Icont3及びIPv6型Icont4は、WhoIsサービスに対するIamサービスに自己のBACnetネットワーク番号及びBACnetデバイスIDを含めることで、トランスレータ装置1によって、図11(b)に示すIPv4アドレスとIPv6アドレスとの組に対応したBACnetネットワーク番号とBACnetデバイスIDとを対応づけたBACnetルータテーブルを作成できる。また、トランスレータ装置1は、IPv4型Icont3及びIPv6型Icont4からのWhoIsサービスに対するIamサービスにBACnetネットワーク番号及びBACnetデバイスIDを含めることで、IPv4型Icont3及びIPv6型Icont4とは他のIcontのIPアドレスにBACnetネットワーク番号及びBACnetデバイスIDを対応づけることができる。
ステップS4において、トランスレータ装置1は、WhoIs Routerサービスを表す情報を含むBACnetパケットをIPv4型BACnetルータ5及びIPv6型BACnetルータ6に送信して、Iam Routerサービスを表す情報を含むBACnetパケットから、現在使用されていないBACnetネットワーク番号を選定して、ステップS5に処理を進める。
次にトランスレータ装置1は、ステップS5において、所定数以上のIPv6型Icont4を、所定数よりも少ない複数のIPv6型Icont4にグループ分けを行い、それぞれのグループにBACnetネットワーク番号を割り付ける。また、このステップS5においては、上述の図10及び図11に示したように、各IcontのIPv4アドレスとIPv6アドレスとBACnetデバイスIDとBACnetネットワーク番号とを対応づけたテーブルを作成する。このとき、トランスレータ装置1は、異なるBACnetネットワーク番号を割り付けたIcont同士は、異なるIPv4アドレスのサブネットとなるようにIPv4アドレスを割り付ける。
また、トランスレータ装置1は、ステップS5において、例えば図8(c)に示すように、擬似的なBACnetネットワーク番号「1」〜「3」を割り付けたことによって、BACnetルータテーブルの内容を、BACnetネットワーク番号「1」〜「3」に対応したIPv4型BACnetルータ5及びIPv6型BACnetルータ6が存在するものに変更する。
次にトランスレータ装置1は、ステップS6において、図11に示すWhoIsサービス、Iamサービスを行って、ステップS5で新たに割り付けたIPv4アドレスをIPv4型Icont3及びIPv6型Icont4に連絡するとともに、変更したBACnetネットワーク番号に対するIPv4型BACnetルータ5及びIPv6型BACnetルータ6のIPアドレスの対応関係を連絡して、ステップS7で通信動作を開始させる。
以上のように、このトランスレータ装置1によれば、IPv4型Icont3からIPv4型BACnetルータ5及びIPv6型BACnetルータ6を超えてIPv6型Icont4にBACnetパケットを送信するような通信システムにおいて、IPv6型Icont4に割り付けるIPv4アドレスが所定数を超えるような場合であっても、新たなBACnetネットワーク番号を擬似的に割り付けて、異なるサブネットのIPv4アドレスを割り付けることができる。したがって、設備系のシステムにおいて多様な設備機器にIPv4アドレスを割り当てる必要がある場合でも、IPv4アドレスが不足することを防止できる。
なお、上述の実施の形態は本発明の一例である。このため、本発明は、上述の実施形態に限定されることはなく、この実施の形態以外であっても、本発明に係る技術的思想を逸脱しない範囲であれば、設計等に応じて種々の変更が可能であることは勿論である。
1 トランスレータ装置
3 IPv4型Icont
4 IPv6型Icont
5 IPv4型BACnetルータ
6 IPv6型BACnetルータ
11 IPv4用通信インターフェース部
12 IPv6用通信インターフェース部
13 記憶部
14 中央処理部
21 BACnet領域
24 IP領域
3 IPv4型Icont
4 IPv6型Icont
5 IPv4型BACnetルータ
6 IPv6型BACnetルータ
11 IPv4用通信インターフェース部
12 IPv6用通信インターフェース部
13 記憶部
14 中央処理部
21 BACnet領域
24 IP領域
Claims (3)
- 第1の通信プロトコルに従ってパケットを送受信する第1機器及び第2の通信プロトコルに従ってパケットを送受信する第2機器と、当該第1機器と第2機器との間で送受信されるパケットを中継するルータとを少なくとも有し、当該第1機器と第2機器とルータとが、前記第1の通信プロトコル及び前記第2の通信プロトコルよりも上位のプロトコルに従って動作する通信システムに設けられ、前記第1機器と前記第2機器との間で送受信されるパケットのアドレス情報を変換する変換装置において、
前記第1機器と前記第2機器との間で送受信されるパケットを中継する通信手段と、
前記第1機器が所属するサブネットワークと前記第2機器が所属するサブネットワークとを識別するサブネットワーク番号と、前記ルータの前記第1の通信プロトコルのアドレス情報と、当該ルータの前記第2の通信プロトコルのアドレス情報とを対応付けて登録したルータ変換テーブルを記憶する記憶手段と、
前記通信手段でパケットを受信し、当該パケットが前記ルータで中継されて通信されるパケットであると判定した場合に、前記記憶手段に記憶されたルータ変換テーブルを参照して、前記第1の通信プロトコルのアドレス情報を前記第2の通信プロトコルのアドレス情報に変換する処理、又は、前記第2の通信プロトコルのアドレス情報を前記第1の通信プロトコルのアドレス情報に変換する変換手段と、
前記上位の通信プロトコルに従って、前記ルータが接続されているネットワーク番号と、当該ルータの前記第1の通信プロトコルのアドレス情報又は当該ルータの前記第2の通信プロトコルのアドレス情報とを取得し、取得していない前記通信プロトコルのアドレス情報を割り当てて、当該割り当てたアドレス情報を、当該ルータのネットワーク番号と取得した当該ルータのアドレス情報に対応づけて前記ルータ変換テーブルを作成する変換テーブル作成手段と
を備えることを特徴とする変換装置。 - 前記変換テーブル作成手段は、通信システムで必要なアドレス情報の数を調査して、所定数以上のアドレス情報が必要であると判定した場合には、擬似的なネットワーク番号を割り当てて、当該擬似的なネットワーク番号とルータのアドレス情報とを対応づけた変換テーブルを作成することを特徴とする請求項1に記載の変換装置。
- 前記変換手段は、前記第1の通信プロトコルのアドレス情報を前記第2の通信プロトコルのアドレス情報に変換する処理、又は、前記第2の通信プロトコルのアドレス情報を前記第1の通信プロトコルのアドレス情報に変換すると共に、前記上位の通信プロトコルに含まれる送信元のアドレス情報及び前記送信先のアドレス情報を変換することを特徴とする請求項1に記載の変換装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005280875A JP2007096539A (ja) | 2005-09-27 | 2005-09-27 | 変換装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005280875A JP2007096539A (ja) | 2005-09-27 | 2005-09-27 | 変換装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007096539A true JP2007096539A (ja) | 2007-04-12 |
Family
ID=37981737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005280875A Pending JP2007096539A (ja) | 2005-09-27 | 2005-09-27 | 変換装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2007096539A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CH701294A1 (fr) * | 2009-06-18 | 2010-12-31 | Archimede Solutions Sarl | Système multi-protocolaire de contrôle et de gestion d'objets communicants hétérogènes. |
US8493838B2 (en) | 2008-04-30 | 2013-07-23 | Panasonic Corporation | Device management system |
US8655973B2 (en) | 2008-04-30 | 2014-02-18 | Panasonic Corporation | Device management system |
US9509656B2 (en) | 2014-01-22 | 2016-11-29 | Honeywell International Inc. | Broadcast distribution table for BACnet/IP |
-
2005
- 2005-09-27 JP JP2005280875A patent/JP2007096539A/ja active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8493838B2 (en) | 2008-04-30 | 2013-07-23 | Panasonic Corporation | Device management system |
US8655973B2 (en) | 2008-04-30 | 2014-02-18 | Panasonic Corporation | Device management system |
CH701294A1 (fr) * | 2009-06-18 | 2010-12-31 | Archimede Solutions Sarl | Système multi-protocolaire de contrôle et de gestion d'objets communicants hétérogènes. |
US9509656B2 (en) | 2014-01-22 | 2016-11-29 | Honeywell International Inc. | Broadcast distribution table for BACnet/IP |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8103784B2 (en) | Communication device and communication control method using efficient echonet address determination scheme | |
US7352726B2 (en) | Communication device, communication method and program for packet communications between two networks that conform to different standards | |
US7483396B2 (en) | Method for assigning an IP address to a device | |
US7339895B2 (en) | Gateway device and control method for communication with IP and IPV6 protocols | |
CN112584393A (zh) | 一种基站配置方法、装置、设备及介质 | |
CN109936490B (zh) | 基于VXLAN和OpenFlow的虚拟家庭网络共享方法及*** | |
WO2007052913A1 (en) | Method of generating and managing connection identifiers for supporting multicast for each group in ipv6-based wireless network and network interface using the method | |
CN112106328B (zh) | 在工业自动化***的通信网络中确定设备地址的方法、通信设备和控制单元 | |
JP2007096539A (ja) | 変換装置 | |
JP4292897B2 (ja) | 中継装置とポートフォワード設定方法 | |
EP2566139B1 (en) | Method and device for obtaining remote ip address | |
CN112995038B (zh) | Profinet协议在工业sdn中的接入方法 | |
JP2007081456A (ja) | 変換装置 | |
KR100854681B1 (ko) | 인터넷 프로토콜 유비쿼터스 센서 네트워크와 단순네트워크 관리 프로토콜 망을 상호 연동하기 위한게이트웨이 및 인터넷 프로토콜 유비쿼터스 센서네트워크와 단순 네트워크 관리 프로토콜 망과의 상호 연동방법. | |
JP3406768B2 (ja) | パケット転送方法およびパケット転送装置 | |
KR101415978B1 (ko) | 가상랜을 이용한 데이터전송장치에서의 서브넷 디에이치씨피 서버 설정 및 운영 시스템 및 방법 | |
JP4940707B2 (ja) | Ipアドレス割付システムおよびipアドレス割付方法 | |
JP4151699B2 (ja) | 変換装置及び管理方法 | |
JP4670866B2 (ja) | トランスレータ | |
JP2005033317A (ja) | 無線アクセスポイント装置および制御方法 | |
JP3900157B2 (ja) | トランスレータ | |
CN112994994B (zh) | 基于工业以太网协议在工业sdn中的接入方法 | |
JP3808471B2 (ja) | ネットワーク及びルータ装置並びにそれらに用いるアドレス通知方法 | |
CN110505620B (zh) | 一种通信方法、管理站及热点设备 | |
JPH09252316A (ja) | パケット転送方法およびパケット転送システム |