JP7437272B2 - 処理システム及び方法 - Google Patents

処理システム及び方法 Download PDF

Info

Publication number
JP7437272B2
JP7437272B2 JP2020149081A JP2020149081A JP7437272B2 JP 7437272 B2 JP7437272 B2 JP 7437272B2 JP 2020149081 A JP2020149081 A JP 2020149081A JP 2020149081 A JP2020149081 A JP 2020149081A JP 7437272 B2 JP7437272 B2 JP 7437272B2
Authority
JP
Japan
Prior art keywords
module
address
processing server
processing
packet
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.)
Active
Application number
JP2020149081A
Other languages
English (en)
Other versions
JP2022043677A (ja
Inventor
和 三村
誠由 高瀬
剛志 柴田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020149081A priority Critical patent/JP7437272B2/ja
Priority to US17/464,873 priority patent/US20220078158A1/en
Publication of JP2022043677A publication Critical patent/JP2022043677A/ja
Application granted granted Critical
Publication of JP7437272B2 publication Critical patent/JP7437272B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/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
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2592Translation of Internet protocol [IP] addresses using tunnelling or encapsulation
    • 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
    • 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/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/10Mapping addresses of different types
    • H04L61/106Mapping addresses of different types across networks, e.g. mapping telephone numbers to data network addresses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/256NAT traversal
    • H04L61/2575NAT traversal using address mapping retrieval, e.g. simple traversal of user datagram protocol through session traversal utilities for NAT [STUN]
    • 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/4541Directories for service discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/09Mapping addresses
    • H04L61/25Mapping addresses of the same type
    • H04L61/2503Translation of Internet protocol [IP] addresses
    • H04L61/2514Translation of Internet protocol [IP] addresses between local and global IP addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、概して、情報処理技術に関する。
情報処理に関する技術として、例えば、エッジコンピューティングがある。エッジコンピューティングに関する技術として、例えば、特許文献1及び2に開示の技術がある。特許文献1に開示の技術は、複数のデータ処理ノードに、アプリケーションを構成する複数のモジュールを配置する。特許文献2に開示の技術は、データ処理を行うプログラムであるモデルを分割し、複数のエッジサーバに複数の分割モデルを割り当てる。
JP2018-190124 JP2019-144864
複数のネットワークが混在する環境が知られている。そのような環境の一例として、工場がある。工場では、例えば、業務の要件に合わせて、制御ネットワーク、情報ネットワーク、オフィスネットワークなど、複数のネットワークが混在している。これらのネットワークは、一般に、アドレス体系が異なる(例えば、種類の異なるネットワークではアドレス構成が異なる)。また、業務によって、通信遅延やデータの流通範囲など要件が多様である。システムエンジニアが、これらアドレス体系及び要件を意識して、それぞれ入出力を行う複数のモジュールで構成されたアプリケーションを設定したり、システム構成(例えば、ネットワークに接続されているサーバの構成、及び、ネットワークそれ自体の構成)を設定したりするのでは、頻繁に(例えば秒オーダ又は分オーダで)生じる現場環境変化(例えば、需給変動又は工程変更)に適切に追従することは困難である。例えば、制御対象の機器に送信するリクエストのパラメータを変更することでは対応不可能な現場環境変化が考えられ、そのような現場環境変化に追従することはできない。また、例えば、変化後の現場環境に適切なアプリケーションを構成する複数のモジュールを配置する場合に、それぞれのネットワークのアドレス体系が異なっているため、システムエンジニアが、マニュアルで、各モジュールに対してアドレスを設定しなければならない。
上述の課題は、今後ネットワークが、例えばプライベートLTE(LTEは、Long Term Evolutionの略)やローカル5Gを導入し無線化していくと、より顕著となると予測される。また、上述の課題は、工場以外の環境についてもあり得る。また、上述の課題は、エッジコンピューティング以外の情報処理技術についてもあり得る。
アドレス体系が異なる複数のネットワークに接続されそれぞれネットワーク通信のための物理的なインターフェース装置を備える複数の処理サーバが備えられる。一つ又は複数のアプリケーションの各々に関し、当該アプリケーションを構成しそれぞれデータの入出力を行う複数のモジュールの各々について、当該モジュールの配置先の処理サーバがトンネリング転送情報を有する。トンネリング転送情報は、複数のモジュールの各々についてのモジュールアドレス及び処理サーバアドレスを表す情報である。当該配置先の処理サーバに当該モジュールが配置されている。モジュールアドレスは、仮想ネットワークのアドレス体系に従うアドレスであってモジュールに割り振られたアドレスである。処理サーバアドレスは、モジュールが配置された処理サーバのアドレスであって当該処理サーバが接続されているネットワークのアドレス体系に従うアドレスである。モジュールが配置されている処理サーバが、パケットの転送先のモジュールが配置されている処理サーバの処理サーバアドレスを、当該処理サーバに設定されているトンネリング転送情報から特定し、当該特定された処理サーバアドレスを基にパケットを転送する。
本発明によれば、現場環境変化に適切に追従する、アプリケーション配置を含むシステム構成設定が、可能である。
第1の実施形態に係る処理システムの構成例を示す。 オーケストレーションサーバの構成例を示す。 処理サーバの構成例を示す。 アプリケーションの構成例を示す。 メトリックテーブルの構成例を示す。 アプリケーション要件テーブルの構成例を示す。 アプリケーション管理テーブルの構成例を示す。 トンネリング転送テーブルの構成例を示す。 アドレス変換テーブルの構成例を示す。 名前解決テーブルの構成例を示す。 処理サーバが送受信するパケットの構成例を示す。 デプロイメント処理の流れの一例を示す。 デプロイメント処理の後の複数の処理サーバの構成の概要を示す。 デプロイメント処理結果画面の一例を示す。 デプロイメント処理の後の通信処理の流れの一例を示す。 アンデプロイメント処理の流れの一例を示す。 処理サーバが行う通信処理の流れの一例の一部を示す。 処理サーバが行う通信処理の流れの一例の一部を示す。 処理サーバが行う通信処理の流れの一例の残りを示す。 第2の実施形態に係る処理システムの構成例を示す。
以下の説明では、「インターフェース装置」は、一つ以上の通信インターフェースデバイスでよい。一つ以上の通信インターフェースデバイスは、一つ以上の同種の通信インターフェースデバイス(例えば一つ以上のNIC(Network Interface Card))であってもよいし二つ以上の異種の通信インターフェースデバイス(例えばNICとHBA(Host Bus Adapter))であってもよい。
また、以下の説明では、「メモリ」は、一つ以上の記憶デバイスの一例である一つ以上のメモリデバイスであり、典型的には主記憶デバイスでよい。メモリにおける少なくとも一つのメモリデバイスは、揮発性メモリデバイスであってもよいし不揮発性メモリデバイスであってもよい。
また、以下の説明では、「永続記憶装置」は、一つ以上の記憶デバイスの一例である一つ以上の永続記憶デバイスでよい。永続記憶デバイスは、典型的には、不揮発性の記憶デバイス(例えば補助記憶デバイス)でよく、具体的には、例えば、HDD(Hard Disk Drive)、SSD(Solid State Drive)、NVME(Non-Volatile Memory Express)ドライブ、又は、SCM(Storage Class Memory)でよい。
また、以下の説明では、「記憶装置」は、メモリと永続記憶装置の少なくともメモリでよい。
また、以下の説明では、「プロセッサ」は、一つ以上のプロセッサデバイスでよい。少なくとも一つのプロセッサデバイスは、典型的には、CPU(Central Processing Unit)のようなマイクロプロセッサデバイスでよいが、GPU(Graphics Processing Unit)のような他種のプロセッサデバイスでもよい。少なくとも一つのプロセッサデバイスは、シングルコアでもよいしマルチコアでもよい。少なくとも一つのプロセッサデバイスは、プロセッサコアでもよい。少なくとも一つのプロセッサデバイスは、処理の一部又は全部を行うハードウェア記述言語によりゲートアレイの集合体である回路(例えばFPGA(Field-Programmable Gate Array)、CPLD(Complex Programmable Logic Device)又はASIC(Application Specific Integrated Circuit))といった広義のプロセッサデバイスでもよい。
また、以下の説明では、「xxxテーブル」といった表現にて、入力に対して出力が得られる情報を説明することがあるが、当該情報は、どのような構造のデータでもよいし(例えば、構造化データでもよいし非構造化データでもよいし)、入力に対する出力を発生するニューラルネットワーク、遺伝的アルゴリズムやランダムフォレストに代表されるような学習モデルでもよい。従って、「xxxテーブル」を「xxx情報」と言うことができる。また、以下の説明において、各テーブルの構成は一例であり、一つのテーブルは、二つ以上のテーブルに分割されてもよいし、二つ以上のテーブルの全部又は一部が一つのテーブルであってもよい。
また、以下の説明では、「yyy部」の表現にて機能を説明することがあるが、機能は、一つ以上のコンピュータプログラムがプロセッサによって実行されることで実現されてもよいし、一つ以上のハードウェア回路(例えばFPGA又はASIC)によって実現されてもよいし、それらの組合せによって実現されてもよい。プログラムがプロセッサによって実行されることで機能が実現される場合、定められた処理が、適宜に記憶装置及び/又はインターフェース装置等を用いながら行われるため、機能はプロセッサの少なくとも一部とされてもよい。機能を主語として説明された処理は、プロセッサあるいはそのプロセッサを有する装置が行う処理としてもよい。プログラムは、プログラムソースからインストールされてもよい。プログラムソースは、例えば、プログラム配付計算機又は計算機が読み取り可能な記録媒体(例えば非一時的な記録媒体)であってもよい。各機能の説明は一例であり、複数の機能が一つの機能にまとめられたり、一つの機能が複数の機能に分割されたりしてもよい。
また、以下の説明では、同種の要素を区別しないで説明する場合には、参照符号のうちの共通符号を使用し、同種の要素を区別する場合は、参照符号を使用することがある。
また、要素を識別するための情報として、任意の情報(例えば、「ID」、「名前」、及び「番号」のうちの少なくとも一つ)が採用されてよい。
本発明は有線通信にも無線通信にも適用できるが、以下の実施形態では、無線通信が採用されている。
無線通信の例として、第5世代移動体通信(又はLTE(Long Term Evolution))が挙げられる。第5世代移動体通信(5G)によって、低遅延、広帯域且つ高信頼な無線通信が可能になってきている。そのような中、5Gの無線ネットワークを自営網向けに導入するローカル5G(又は、プライベートLTE)が着目されている。ローカル5Gの適用の一例として、工場への適用が考えられる。工場では、例えば、業務の要件に合わせて、制御ネットワーク、情報ネットワーク、オフィスネットワークなど、複数のネットワークが混在している。これらのネットワークは、一般に、アドレス体系が異なり、故に、単純に工場のネットワークを無線化すると、異なるアドレス体系が混在する。また、業務によって、通信遅延やデータの流通範囲など要件が多様である。システムエンジニアが、これらアドレス体系及び要件を意識して、それぞれ入出力を行う複数のモジュールで構成されたアプリケーションを設定するのでは、頻繁に(例えば秒オーダ又は分オーダで)生じる現場環境変化(例えば、需給変動又は工程変更)に適切に追従することは困難である。
そこで、以下の実施形態では、複数のネットワークに複数の処理サーバが接続され、それら複数の処理サーバに、アプリケーションを構成しそれぞれデータの入出力を行う複数のモジュールが配置され、複数のモジュールの各々のモジュールアドレスが、仮想ネットワークのアドレス体系に従う。
以下、幾つかの実施形態を説明する。
[第1の実施形態]
図1は、第1の実施形態に係る処理システムの構成例を示す。
工場ネットワークシステム5が構築されている。工場ネットワークシステム5は、公衆キャリアネットワーク120Pを通じて、クラウド128に基づくクラウドコンピューティングサービスを受ける。公衆キャリアネットワーク120Pにエッジ処理サーバ17EPが接続される。
工場ネットワークシステム5には、製造ライン10(10A及び10B)と、MBH(Mobile Back Haul)120M、モバイルコア装置121、LAN(Local Area Network)120L、エッジ処理サーバ17EL、ファイアウォール124及び既存工場ネットワーク125が属する。LAN120Lに、エッジ処理サーバ17EL、ファイアウォール124及び既存工場ネットワーク125が接続される。LAN120通じてエッジ処理サーバ17EP又はクラウド128との間でパケットの送受信が行われる場合、パケットは、ファイアウォール124及び公衆キャリアネットワーク120Pを経由する。
製造ライン10には、フィールドネットワーク120F、カメラ11、制御装置12、エッジ処理サーバ17EF、CG(セルラーゲートウェイ)14、基地局16及びエッジ処理サーバ17EMが属する。製造ライン10において、フィールドネットワーク120Fに、カメラ11、制御装置12、エッジ処理サーバ17EF及びCG14が接続されており、エッジ処理サーバ17EFが、CG14及び基地局16通じて、エッジ処理サーバ17EMと通信を行う。CG14は、基地局16と間の無線通信を行う装置である。基地局16は、例えば、gNB(next generation Node B)(又はLTEではeNB(evolved Node B))と呼ばれてもよい。カメラ11は、例えば、制御装置12により制御される対象及びその周辺を撮影する。
複数のネットワーク(通信ネットワーク)の一例として、フィールドネットワーク120F、MBH120M、LAN120L及び公衆キャリアネットワーク120Pがある。フィールドネットワーク120Fは、カメラ11や制御装置12といった機器が接続されるネットワークである。MBH120Mは、第1ネットワーク(コアネットワークと一つ又は複数の基地局16とを繋ぐネットワーク)の一例であり、例えば、MNO(Mobile Network Operator)が持つ複数の設備を含んだネットワークでよいしユーザにより構築されたネットワークでもよい。LAN120Lは、第2ネットワークの一例である。公衆キャリアネットワーク120Pは、通信キャリアが提供するネットワークである。MBH120MとLAN120L間にモバイルコア装置121が介在する。MBH120MとLAN120L間で送受信されるパケットは、モバイルコア装置121を経由する。モバイルコア装置121が、コアネットワークの少なくとも一部である。モバイルコア装置121は、例えば、5Gコアネットワーク(又は、EPC(Evolved Packet Core))である。
処理システム1は、複数の処理サーバ17と、アプリケーションを構成する複数のモジュールを複数の処理サーバ17に配置するオーケストレーションサーバ130(管理サーバの一例)とを備える。
処理サーバ17の一例として、複数のネットワーク120に接続される複数のエッジ処理サーバ17Eの各々がある。エッジ処理サーバ17Eは、例えば、MEC(Multi‐access Edge Computing)でよい。エッジ処理サーバ17Eとしては、フィールドネットワーク120Fに接続されるエッジ処理サーバ17EFと、MBH120Mに接続されるエッジ処理サーバ17EMと、LAN120Lに接続されるエッジ処理サーバ17ELと、公衆キャリアネットワーク120Pに接続されるエッジ処理サーバ17EPがある。また、処理サーバ17の一例として、クラウド128に基づく処理サーバであるクラウド処理サーバ17Cがある。
オーケストレーションサーバ130は、クラウド128に基づくサーバであるが、他種のサーバ、例えば、オンプレミスのサーバでもよい。
図2は、オーケストレーションサーバ130の構成例を示す。
オーケストレーションサーバ130は、インターフェース装置131、記憶装置132及びそれらに接続されたプロセッサ133といった複数種類の物理的なハードウェアリソースに基づき実現される。インターフェース装置131を通じてデータが送受信される。記憶装置132は、情報及びプログラムを格納する。記憶装置132に格納される情報の例として、メトリックテーブル500、アプリケーション要件テーブル800及びアプリケーション管理テーブル900がある。プロセッサ133が記憶装置132内のプログラムを実行することで、アプリケーション管理部300、モジュール配置決定部301、メトリック収集部302及びネットワーク制御部303が実現される。
図3は、処理サーバ17の構成例を示す。
処理サーバ17は、インターフェース装置311、記憶装置312及びそれらに接続されたプロセッサ313といった複数種類の物理的なハードウェアリソースに基づき実現される。インターフェース装置311を通じてパケットが送受信される。記憶装置312は、情報及びプログラムを格納する。記憶装置312に格納される情報の例として、トンネリング転送テーブル1000、アドレス変換テーブル1100及び名前解決テーブル1200がある。これらのテーブル1000、1100及び1200は、オーケストレーションサーバ130から格納されたり削除されたりするテーブルである。プロセッサ313が記憶装置312内のプログラムを実行することで、トンネリング部400、アドレス変換部401、仮想ネットワークインターフェース(I/F)402、名前解決部403、モジュール実行部404及びメトリック測定部405が実現される。仮想ネットワークI/F402が動的に生成されたり削除されたりする。プロセッサ313は、一つ又は複数のCPUコアを含む。
図4は、アプリケーションの構成例を示す。
アプリケーション700は、それぞれがデータの入出力を行う複数のモジュール71で構成されている。モジュール71は、ビジュアルプログラミングツールを用いて用意されたノード(又は、ノードにより呼び出されるプログラム)でもよいし、API(Application Programming Interface)を通じて呼び出されるプログラムでよい。モジュール71としては、別のモジュール71との間でデータ通信を行うモジュールと、別のモジュール71に加えて機器との間でデータ通信を行うモジュールがある。
図5以降は、適宜、図4に例示のアプリケーション700を例に取っている。図4に例示のアプリケーション700は、次の通りである。すなわち、アプリケーション700は、データ収集モジュール71a、映像解析モジュール71b、一次学習モジュール71c及び二次学習モジュール71dで構成されている。これらのモジュール71a~71dが、複数のモジュール71の一例である。データ収集モジュール71aは、カメラ11から映像データ(カメラ11が撮影した映像のデータ)を収集したり制御装置12から制御データ(制御装置12が制御のために送信したデータ)を収集したりし、収集されたデータ(映像データ及び制御データ)を記憶装置に蓄積したり、収集されたデータを一次学習モジュール71cに送信したりする。映像解析モジュール71bは、カメラ11から映像データを受信し、解析モデル(映像解析用の学習モデル)を用いて映像データの解析を行い、解析の結果を制御装置12にフィードバックする。一次学習モジュール71cは、データ収集モジュール71aからデータを受信し、受信したデータを基に解析モデルの学習を行い、映像解析モジュール71bが使用する解析モデルを、学習後の解析モデルに更新し、学習後のモデルを二次学習モジュール71dに送信する。二次学習モジュール71dは、一次学習モジュール71cからの学習モデルを記憶装置に蓄積し、蓄積された一つ以上の学習モデルを基に二次学習を行うことにより得られた情報をノウハウとして記憶装置に蓄積する。
図5は、メトリックテーブル500の構成例を示す。
メトリックテーブル500は、処理サーバ17から収集されたメトリック値が登録されるテーブルである。メトリックテーブル500は、例えば、処理サーバ17毎にエントリを有する。各エントリは、例えば、処理サーバID501、通信遅延502、通信帯域503、論理位置504、CPUコア数505、CPUクロック数506及びメモリ量507といった情報を保持する。一つの処理サーバを例に取る(図5の説明において「注目処理サーバ」)。
処理サーバID501は、注目処理サーバ17のIDを表す(本実施形態では、処理サーバのIDと参照符号が同じである)。通信遅延502は、注目処理サーバ17から制御装置12までの通信の遅延時間を表す。通信帯域503は、注目処理サーバ17からカメラ11までの通信帯域を表す。論理位置504は、注目処理サーバ17の論理的な位置のラベル(名前)を表す。CPUコア数505は、注目処理サーバ17において使用中(割当済み)のCPUコア数を表す。CPUクロック数506は、注目処理サーバにおけるCPUクロック数を表す。メモリ量507は、注目処理サーバ17において使用中のメモリ量を表す。
通信遅延502、通信帯域503、CPUコア数505、CPUクロック数506及びメモリ量507の各々が表すメトリック値が、処理サーバ17のメトリック測定部405により測定され、オーケストレーションサーバ130のメトリック収集部302により各処理サーバ17から収集されるメトリック値である。オーケストレーションサーバ130は、各処理サーバ17のスペック(例えば、CPUコア数、CPUクロック数及びメモリ量等)を表すサーバ管理テーブル(図示せず)を管理してよい。オーケストレーションサーバは、各処理サーバ17について、当該処理サーバ17のスペックと収集されたメトリック値との差分から空きのリソース量を特定してよい。
図6は、アプリケーション要件テーブル800の構成例を示す。
アプリケーション要件テーブル800は、各アプリケーションについての要件を表す。アプリケーション要件テーブル800は、例えば、アプリケーション毎にエントリを有する。各エントリは、例えば、アプリケーションID801、モジュール名802、通信遅延803、通信帯域804、配置範囲805、CPUコア数806、CPUクロック数807及びメモリ量808といった情報を保持する。一つのアプリケーションを例に取る(図6の説明において「注目アプリケーション」)。
アプリケーションID801は、注目アプリケーションのIDを表す。モジュール名802は、注目アプリケーションを構成する複数のモジュールの各々の名前を表す。一つのモジュールを例に取る(図6の説明において「注目モジュール」)。情報803~808が、注目モジュールの要件を表す。通信遅延803は、注目モジュールから制御装置12までの通信の遅延時間を表す。通信帯域804は、注目モジュールからカメラ11までの通信帯域を表す。配置範囲805は、注目モジュールが配置される位置の範囲を表す。CPUコア数806は、注目モジュールの実行に必要なCPUコア数を表す。CPUクロック数807は、注目モジュールの実行に必要なCPUクロック数を表す。メモリ量808は、注目モジュールの実行に必要なメモリ量を表す。
オーケストレーションサーバ130が管理する上述したサーバ管理テーブル(図示せず)は、各処理サーバの位置を表してよい。各処理サーバについて、当該処理サーバの位置が、配置位置804を満たすか否かの判定が可能でよい。
図7は、アプリケーション管理テーブル900の構成例を示す。
アプリケーション管理テーブル900は、各アプリケーションについて、モジュール毎の決定された配置先を表す。アプリケーション管理テーブル900は、例えば、アプリケーション毎にエントリを有する。各エントリは、例えば、アプリケーションID901、配置ID902、VNID903、モジュール名904、モジュールアドレス905、処理サーバID906及び処理サーバアドレス907といった情報を保持する。一つのアプリケーションを例に取る(図7の説明において「注目アプリケーション」)。
アプリケーションID901は、注目アプリケーションのIDを表す。配置ID902は、注目アプリケーションの配置(デプロイメント)のIDを表す。VNID903は、注目アプリケーションを構成する各モジュールが通信に利用する仮想ネットワークのIDを表す。モジュール名904は、注目アプリケーションを構成する複数のモジュールの各々の名前を表す。一つのモジュールを例に取る(図7の説明において「注目モジュール」)。モジュールアドレス905は、注目モジュールのモジュールアドレスを表す。処理サーバID906は、注目モジュールの配置先の処理サーバ17のIDを表す。処理サーバアドレス907は、注目モジュールの配置先の処理サーバ17の処理サーバアドレスを表す。
ここで、各モジュールについて、「モジュールアドレス」とは、当該モジュールが通信に利用する仮想ネットワークのアドレス体系に従うアドレスであって当該モジュールに割り振られたアドレスである。同一の仮想ネットワークに属する複数のモジュールについて、モジュールアドレスは、例えば、オーケストレーションサーバ130により自動で割り振られてもよい。
また、各モジュールについて、当該モジュールが配置された処理サーバ17の「処理サーバアドレス」とは、当該処理サーバ17のアドレスであって当該処理サーバ17が接続されているネットワーク120のアドレス体系に従うアドレスである。
図8は、トンネリング転送テーブル1000の構成例を示す。
トンネリング転送テーブル1000は、複数のモジュールの各々についてのモジュールアドレス及び処理サーバアドレスを表す。トンネリング転送テーブル1000は、例えば、モジュール毎に、エントリを有する。各エントリは、VNID1001、モジュールアドレス1002、処理サーバアドレス1003及び出力先I/F1004といった情報を保持する。一つのモジュールを例に取る(図8の説明において「注目モジュール」)。
VNID1001は、注目モジュールが属する仮想ネットワークのIDを表す。モジュールアドレス1002は、注目モジュールのモジュールアドレスを表す。処理サーバアドレス1003は、注目モジュールのモジュールアドレスが送信元又は送信先である場合の転送先の処理サーバアドレスを表す。出力先I/F1004は、注目モジュールのモジュールアドレスが送信元又は送信先である場合のパケットの出力先のインターフェースを表す。“通信I/F”は、注目モジュールが配置されている処理サーバ17の物理的なインターフェース装置311を意味する。“vnf1”や“vnf2”は、仮想ネットワークI/F402(の名前)を表す。
図9は、アドレス変換テーブル1100の構成例を示す。
アドレス変換テーブル1100は、モジュールのモジュールアドレスとモジュール外部アドレス(機器と通信するための外部通信向けのモジュールのアドレス)との対応関係を表す。アドレス変換テーブル1100は、例えば、機器と通信するモジュール毎に、エントリを有する。各エントリは、例えば、VNID1101、モジュールアドレス1102及びモジュール外部アドレス1103といった情報を保持する。一つのモジュールを例に取る(図9の説明において「注目モジュール」)。
VNID1101は、注目モジュールが属する仮想ネットワークのIDを表す。モジュールアドレス1102は、注目モジュールのモジュールアドレスを表す。モジュール外部アドレス1103は、注目モジュールが機器と通信するための外部通信向けアドレスを表す。
図10は、名前解決テーブル1200の構成例を示す。
名前解決テーブル1200は、モジュールのサービス名とモジュール外部アドレスとの対応関係を表す。名前解決テーブル1200は、例えば、機器と通信するモジュール毎にエントリを有する。各エントリは、例えば、モジュールサービス名1201及びモジュール外部アドレス1202といった情報を保持する。一つのモジュールを例に取る(図10の説明において「注目モジュール」)。
モジュールサービス名1201は、注目モジュールのサービス名を表す。モジュール外部アドレス1202は、注目モジュールが機器と通信するための外部通信向けアドレスを表す。
図11は、処理サーバ17が送受信するパケットの構成例を示す。
処理サーバ17が送受信するパケットは、データペイロード1520及びインナーヘッダ1510を含むパケットにアウターヘッダ1500が付加されたパケットである。
データペイロード1520は、送信元又は送信先のモジュールが送信又は受信するデータである。インナーヘッダ1510は、送信元MA1511及び送信先MA1512を含む。送信元MA1511は、送信元モジュールのモジュールアドレスである。送信先MA1512は、送信先モジュールのモジュールアドレスである。モジュールが、インナーヘッダ1510及びデータペイロード1520を含んだパケットを送受信するようになっている。
アウターヘッダ1500は、送信元SA1501、送信先SA1502及びVNID1503を含む。送信元SA1501は、送信元処理サーバの処理サーバアドレスである。送信先SA1502は、送信先処理サーバの処理サーバアドレスである。VNID1503は、仮想ネットワークのIDである。アウターヘッダ1500は、トンネリング部400により付加されたり削除されたりする。
以下、本実施形態で行われる処理の例を説明する。
図12は、デプロイメント処理の流れの一例を示す。
オーケストレーションサーバ130のアプリケーション管理部300が、デプロイメント処理の開始のイベントを検出する(S61)。当該イベントが検出された場合、S62以降が行われる。
当該イベントは、ユーザ(例えば、オーケストレーションサーバ130のクライアント端末)からデプロイメント処理の要求を受けたことでよい。これにより、ユーザ任意のタイミングでデプロイメント処理が行われる。なお、当該要求には、配置されるアプリケーションのIDが指定されていてよく、当該指定されているIDに対応したアプリケーションが、デプロイメント処理において複数の処理サーバ17に配置されてよい。
また、当該イベントは、監視対象の環境の状態が未配置のアプリケーションに対応した状態であることでよい。具体的には、例えば、オーケストレーションサーバ130が、アプリケーションに対応する環境状態をアプリケーション毎に表すテーブルを保持していてよい。アプリケーション管理部300が、当該テーブルを基に、未配置のアプリケーションに対応した状態に監視対象の環境の状態が該当することを検出した場合、当該アプリケーションを配置対象に決定してよい。これにより、環境状態の変化に応じて自動的に適切なアプリケーションが配置されることが期待される。
「監視対象の環境の状態が未配置のアプリケーションに対応した状態である」の例として、メトリックテーブル500から特定されるメトリック値(オーケストレーションサーバ130のメトリック収集部302が各処理サーバ17から収集する各種メトリックのメトリック値)が、未配置のアプリケーションに対応したメトリック値範囲に該当することでよい。これにより、配置済のアプリケーションに代えてより適切なアプリケーションを自動的に配置し実施することが期待される。
さて、上述のイベントが検出された場合、モジュール配置決定部301が、配置対象のアプリケーションを構成する複数のモジュールの各々について、当該モジュールの配置先の処理サーバを決定し、当該モジュールのエントリをアプリケーション管理テーブル900に追加する(S62)。S62では、例えば、モジュール配置決定部301が以下の処理を行う。
・モジュール配置決定部301が、メトリックテーブル500を基に、各処理サーバについて、当該処理サーバのスペックと、当該処理サーバの情報502~507とを基に、当該処理サーバの位置及び空きリソース量を特定する。
・モジュール配置決定部301が、配置対象のアプリケーションを構成する複数のモジュールの各々について、当該モジュールの要件(アプリケーション要件テーブル800から特定される情報803~808)を満たす位置及び空きリソース量に対応した処理サーバを特定し、特定した処理サーバを、当該モジュールの配置先に決定する。
・モジュール配置決定部301が、配置対象のアプリケーションを構成する複数のモジュールの仮想ネットワークのIDを決定する。モジュール配置決定部301が、当該複数のモジュールの各々について、当該仮想ネットワークのアドレス体系に従うモジュールアドレスを割り振る。
・モジュール配置決定部301が、配置対象のアプリケーションを構成する複数のモジュールの各々について、当該モジュールのエントリ(情報901~907)をアプリケーション管理テーブル900に追加する。
S62の結果として、以下の説明では、配置対象のアプリケーションは、図4に例示のアプリケーション700であり、モジュール71a~71dの配置先が、図7に例示の通り決定されたとする。すなわち、データ収集モジュール71a及び一次学習モジュール71cの配置先は、エッジ処理サーバ17ELであり、映像解析モジュール71bの配置先は、エッジ処理サーバ17EFAであり、二次学習モジュール71dの配置先は、クラウド処理サーバ17Cである。
ネットワーク制御部303が、アプリケーション管理テーブル900から、アプリケーション700を構成する複数のモジュール71a~71dの各々の配置先処理サーバ17を特定し、当該処理サーバ17向けのトンネリング転送テーブル1000を、当該処理サーバ17に送信する(S63)。例えば、エッジ処理サーバ17EFA向けのトンネリング転送テーブル1000は、図8に例示する通りのテーブル1000である。すなわち、映像解析モジュール71b(モジュールアドレス“10.0.0.13”)に対応した出力先I/F1004が“vnf1”であり、残りのモジュール71a、71c及び71dに対応した出力先I/F1004が“通信I/F”である。
それぞれトンネリング転送テーブル1000を受信した処理サーバ17EFA、17EL及び17Cの各々では、トンネリング部400が、当該トンネリング転送テーブル100を基に、モジュール71の仮想ネットワークI/F402を設定する(S64F、S64L及びS64C)。当該仮想ネットワークI/Fには、当該仮想ネットワークI/F402に対応したモジュールのモジュールアドレスが関連付けられる。処理サーバ17EFA、17EL及び17Cの各々では、トンネリング部400が、受信したトンネリング転送テーブル1000を保存する(S65F、S65L及びS65C)。
その後、処理サーバ17EFA、17EL及び17Cの各々におけるトンネリング部400により、トンネリングの作成が行われる(S610)。この段落で言う「トンネリング」は、例えば、VXLAN(Virtual eXtensible Local Area Network)、NVGRE(Network Virtualization using Generic Routing Encapsulation)、STT(Stateless Transport Tunneling)などでよい。S610はオプショナルの処理でよい。また、本実施形態で言う「仮想ネットワーク」は、VXLAN上の仮想ネットワークでよい。
オーケストレーションサーバ130のネットワーク制御部303が、アドレス変換テーブル1100を、カメラ11A及び制御装置12Aと同一ネットワーク120FAに接続されているエッジ処理サーバ17EFAに送信する(S67)。エッジ処理サーバ17EFAの各々では、アドレス変換部401が、当該アドレス変換テーブル1100を保存する(S68)。
モジュール71a~71dに機器通信モジュールがあり、カメラ11A及び制御装置12Aを含む製造ライン10Aを出入りするパケットは、MBH120Mに接続されているエッジ処理サーバ17EMAを必ず経由する。そのようなエッジ処理サーバ17EMAに、ネットワーク制御部303が、名前解決テーブル1200に送信する(S69)。エッジ処理サーバ17EMAでは、名前解決部403が、当該名前解決テーブル1200を保存する(S70)。
ネットワーク制御部303が、アプリケーション700を構成するモジュール71a~71dを、特定された配置先の処理サーバ17EFA、17EL及び17Cに送信する(S71)。処理サーバ17EFA、17EL及び17Cの各々では、モジュール実行部404が、モジュール71を保存し、起動する(S72F、S72L及びS72C)。モジュール実行部404が、モジュール71を実行する。
図13は、デプロイメント処理の後の複数の処理サーバ17の構成の概要を示す。なお、図13において、モジュール内の“#n”(nは自然数)は、配置IDを表す。また、図13において、複数のモジュールのうち、図4に例示のアプリケーション700を構成する各モジュールは参照符号で示されている。
配置(デプロイメント処理)毎に、仮想ネットワーク1300がある。具体的には、配置ID“#1”に対応した仮想ネットワーク1300aと、配置ID“#3”に対応した仮想ネットワーク1300bがある。
各処理サーバ17には、当該処理サーバ17に配置されたモジュール毎に、仮想ネットワークI/F402が設定されており、当該仮想ネットワークI/Fには、当該モジュールのモジュールアドレスが関連付けられており、当該仮想ネットワークI/F402は、トンネリング部400とモジュールとの間に介在する。各モジュールについて、当該モジュールの実行環境は、仮想計算機やコンテナといった環境でよい。各モジュールは、当該モジュールに対応した仮想ネットワークI/F402を通じて、データを送受信する。各仮想ネットワークI/F402は、インナーヘッダと当該仮想ネットワークI/F402に対応したモジュールが送受信するデータとを含んだパケットを送受信する。トンネリング部400は、トンネリング転送テーブル1000を基に、インナーヘッダとデータとを含んだパケットに対してアウターヘッダを付加したり削除したりする。
モジュールが送受信するデータを含んだパケットの通信には、当該モジュールの配置の配置IDに対応した仮想ネットワークが利用される。異なる仮想ネットワークに属するモジュール間の通信は不可であり、故に、セキュリティ範囲(複数のモジュールが配置されるセグメント)毎に配置(デプロイメント処理)が行われれば、セキュリティを維持することができる。例えば、製造ライン10Aへのモジュールの配置(デプロイメント処理)と製造ライン10Bへのモジュールへの配置(デプロイメント処理)とが別々に行われれば、製造ライン10A及び10Bの各々について独立した仮想ネットワークが設けられることになり、結果として、製造ライン10Aに関するデータと製造ライン10Bに関するデータとの混在を避けることができる。なお、一つのデプロイメント処理において配置されるモジュールは、一つのアプリケーションの一部のモジュールでもよいし、複数のアプリケーションの全てのモジュールでもよい。
図13に示したデプロイメント結果は、アプリケーション管理テーブル900に従うデプロイメント処理の結果である。オーケストレーションサーバ130のアプリケーション管理部300が、ユーザ(例えば、オーケストレーションサーバ130のクライアント端末)に、アプリケーション管理テーブル900に基づき、図14に例示のデプロイメント処理結果画面1800を表示してよい。デプロイメント処理結果画面1800は、いずれの処理サーバにいずれのモジュール及び仮想ネットワークI/Fが設定されいずれの仮想ネットワークがいずれのモジュールに利用されるかを表す。VNIDと配置IDとが同一番号を含むことで、いずれのモジュールがいずれの仮想ネットワークを利用するかが目視により特定可能とされてよい。
図15は、デプロイメント処理の後の通信処理の流れの一例を示す。
図15は、下記の(ケースA)及び(ケースB)を例示する。
(A)カメラ11Aからのデータの宛先がモジュール71aのケース。
(B)カメラ11Aからのデータの宛先がモジュール71bのケース。
(ケースA)の流れは、例えば次の通りである。カメラ11は、モジュール71aに対してデータを送信しようとする。モジュール71aの指定方法は、モジュールのサービス名、または外部アドレスのいずれでもよいが、ここではモジュールサービス名にて指定する。カメラ11は、モジュール71aと通信を行うために、モジュールサービス名(例えば“datagather.deploy1”)を指定して名前解決クエリを送信する。エッジ処理サーバ17EMAの名前解決部403が、カメラ11から、モジュール71aのモジュールサービス名を指定した名前解決クエリを受信する(S1400)。当該名前解決部403が、当該モジュールサービス名に対応したモジュール外部アドレスを名前解決テーブル1200から特定し(S1401)、特定したモジュール外部アドレスを含むレスポンスをカメラ11に送信する(S1402)。エッジ処理サーバ17EFAのトンネリング部400FAが、モジュール外部アドレスの通知を受けたカメラ11から、映像データを含んだパケットを受信する(S1403)。エッジ処理サーバ17EFAのアドレス変換部401が、当該パケットで送信先に指定されているモジュール外部アドレスを、アドレス変換テーブル1100を基にモジュール71aのモジュールアドレスに変換し(S1404)、トンネリング部400FAが、当該モジュールアドレス宛にパケットを転送する(S1405)。モジュール71aはエッジ処理サーバ17ELに配置されているため、エッジ処理サーバ17ELのトンネリング部400Lが、当該パケットを受信する(S1406)。当該パケット内のデータを、モジュール71aが処理し、また、モジュール71aが、データを含んだパケットを、同エッジ処理サーバ17EL内にあるモジュール71cに転送し、モジュール71cが、当該パケット内のデータを処理する(S1407)。エッジ処理サーバ17ELが、モジュール71cが送信するデータを含んだパケットを、モジュール71dが配置されているクラウド処理サーバ17Cに送信し、クラウド処理サーバ17Cのトンネリング部400Cが、当該パケットを受信する(S1408)。クラウド処理サーバ17C内のモジュール71dが、当該パケット内のデータを処理する(S1409)。
(ケースB)の流れは、例えば次の通りである。カメラ11は、モジュール71bに対してデータを送信しようとする。モジュール71bの指定方法は、ケースAと同様にモジュールのサービス名、または外部アドレスのいずれでもよいが、ここではモジュールサービス名にて指定する。カメラ11は、モジュール71bと通信を行うために、モジュールサービス名(例えば“videoanalisys.deploy1”)を指定して名前解決クエリを送信する。エッジ処理サーバ17EMAの名前解決部403が、カメラ11から、モジュール71bのモジュールサービス名を指定した名前解決クエリを受信する(S1410)。当該名前解決部403が、当該モジュールサービス名に対応したモジュール外部アドレスを名前解決テーブル1200から特定し(S1411)、特定したモジュール外部アドレスを含むレスポンスをカメラ11に送信する(S1412)。エッジ処理サーバ17EFAのトンネリング部400FAが、モジュール外部アドレスの通知を受けたカメラ11から、映像データを含んだパケットを受信する(S1413)。エッジ処理サーバ17EFAのアドレス変換部401が、当該パケットで送信先に指定されているモジュール外部アドレスを、アドレス変換テーブル1100を基にモジュール71bのモジュールアドレスに変換し(S1414)、トンネリング部400FAが、当該モジュールアドレス宛にパケットを転送する(S1415)。当該パケット内のデータを、モジュール71bが処理し、モジュール71bが、制御装置12A宛のパケットを転送する(S1416)。トンネリング部400FAが、当該パケットを受信し、アドレス変換部401が、アドレス変換テーブル1100を基に、当該パケットで送信元となっているモジュールアドレスをモジュール外部アドレスに変換する(S1417)。トンネリング部400FAが、当該機器アドレス宛にパケットを送信する(S1418)。
図16は、アンデプロイメント処理の流れの一例を示す。
オーケストレーションサーバ130のアプリケーション管理部300が、アンデプロイメント処理の開始のイベントを検出する(S160)。当該イベントが検出された場合、S161以降が行われる。
当該イベントは、ユーザ(例えば、オーケストレーションサーバ130のクライアント端末)からアンデプロイメント処理の要求を受けたことでよい。これにより、ユーザ任意のタイミングでアンデプロイメント処理が行われる。なお、当該要求には、削除されるアプリケーションのIDが指定されていてよく、当該指定されているIDに対応したアプリケーションが、アンデプロイメント処理において複数の処理サーバ17から削除されてよい。
また、当該イベントは、監視対象の環境の状態が既存のアプリケーションに対応しない状態であることでよい。具体的には、例えば、アプリケーション管理部300が、既存のアプリケーションのうち、監視対象の環境の状態に対応せずデプロイメント処理において配置対象とされたアプリケーションが代わって配置されるアプリケーションを、削除対象のアプリケーションに決定してよい。これにより、環境状態の変化に応じて自動的に不適切なアプリケーションが削除されることが期待される。監視対象の環境の状態が既存アプリケーションに対応するか否かは、例えば、当該アプリケーションを構成する各モジュールの要件と、当該モジュールが配置されている処理サーバの空きリソース量とに基づいてよい。
ここでは、削除対象のアプリケーションは、説明を分かりやすくするために、図4に例示のアプリケーション700であり図12に例示のデプロイメント処理で配置されたアプリケーションであるとする。
上述のイベントが検出された場合、アプリケーション管理部300が、アドレス変換テーブル1100が設定されているエッジ処理サーバ17EFAに対して、アドレス変換テーブル1100の削除を要求する(S161)。当該要求に応答して、エッジ処理サーバ17EFAのアドレス変換部401が、アドレス変換テーブル1100をエッジ処理サーバ17EFAから削除する(S162)。
アプリケーション管理部300が、名前解決テーブル1200が設定されているエッジ処理サーバ17EMAに対して、名前解決テーブル1200の削除を要求する(S163)。当該要求に応答して、エッジ処理サーバ17EMAの名前解決部403が、名前解決テーブル1200をエッジ処理サーバ17EMAから削除する(S164)。
アプリケーション管理部300が、トンネリング転送テーブル1000が設定されている(モジュール71a~71dの少なくとも一つが設定されている)処理サーバ17EFA、17EL及び17Cに対して、トンネリング転送テーブル1000の削除(例えば、削除対象のアプリケーション700に該当する部分の削除)を要求する(S165)。当該要求には、例えば、削除対象のアプリケーションの名前又はモジュールアドレス、及び、削除対象の仮想ネットワークI/Fの名前が指定されてよい。当該要求に応答して、トンネリングの削除が行われる(S166)。処理サーバ17EFA、17EL及び17Cの各々において、トンネリング部400が、トンネリング転送テーブル1000を当該処理サーバ17から削除し(S167F、S167L及びS167C)、仮想ネットワークI/F402を削除する(S168F、S168L及びS168C)。
アプリケーション管理部300が、処理サーバ17EFA、17EL及び17Cに対して、モジュールの削除を要求する(S165)。当該要求には、例えば、削除対象のアプリケーションの名前又はモジュールアドレスが指定されてよい。当該要求に応答して、処理サーバ17EFA、17EL及び17Cの各々において、モジュール実行部404が、削除対象のモジュール71を停止し、当該モジュール71を削除する(S170F、S170L及びS170C)。
アプリケーション管理部300が、アプリケーション管理テーブル900から、削除対象のアプリケーションに対応するエントリを削除する(S171)。
図17、図18及び図19は、処理サーバ17が行う通信処理の流れの一例を示す。一つの処理サーバ17を例に取る(図17~図19の説明において「注目処理サーバ17」)。
図17に示すように、トンネリング部400が、パケットを受信する(S1700)。トンネリング部400が、受信したパケットが、名前解決クエリか否かを判定する(S1701)。
S1701の判定結果が真の場合(S1701:Yes)、トンネリング部400が、当該名前解決クエリで指定されているモジュールサービス名が名前解決テーブル1200に存在するか否かを判定する(S1702)。
S1702の判定結果が真の場合(S1702:Yes)、当該パケットはモジュールに対する名前解決クエリであるため、トンネリング部400が、当該モジュールサービス名に対応したモジュール外部アドレスを名前解決テーブル1200から特定し、特定されたモジュール外部アドレスを含んだレスポンスを送信する(S1703)。このようにして、外部の機器との通信については、当該モジュールに対して外部機器と通信可能なアドレス(典型的にはIPアドレス)を付与することができる。
S1702の判定結果が偽の場合(S1702:No)、当該パケットは通常の名前解決クエリであるため、トンネリング部400が、当該パケットをそのまま、注目処理サーバ17のインターフェース装置311経由で送信する(S1704)。
S1701の判定結果が偽の場合(S1701:No)、図18に示すように、トンネリング部400が、S1700で受信したパケットが経由したインターフェースが仮想ネットワークI/F402か否かを判定する(S1711)。
S1711の判定結果が真の場合(S1711:Yes)、トンネリング部400が、トンネリング転送テーブル1000を参照する(S1712)。トンネリング部400が、当該仮想ネットワークI/Fの名前に対応したVNID1001及び処理サーバアドレス1003(送信元処理サーバアドレス)を、トンネリング転送テーブル1000から特定する(S1713)。そして、トンネリング部400が、受信したパケット内のインナーヘッダが表す送信先モジュールアドレスとS1713で特定されたVNIDとに対応した処理サーバアドレス(送信先処理サーバアドレス)を、トンネリング転送テーブル1000から特定する(S1714)。トンネリング部400が、S1714が成功か否か、すなわち、送信先処理サーバアドレスを特定できたか否かを判定する(S1715)。
S1715の判定結果が真の場合(S1715:Yes)、当該パケットはモジュール間にて送信されるデータ通信パケットであるため、トンネリング部400が、S1713で特定した送信元処理サーバアドレスとS1714で特定した送信先処理サーバアドレスとを含んだアウターヘッダを、S1700で受信したパケットに付加する(S1716)。トンネリング部400が、アウターヘッダが付加されたパケットを、注目処理サーバ17のインターフェース装置311経由で送信する(S1717)。
S1715の判定結果が偽の場合(S1715:No)、当該パケットは外部の機器に送信されるデータ通信パケットであるため、トンネリング部400が、アドレス変換テーブル1100を参照する(S1718)。トンネリング部400が、受信したパケット内の送信元モジュールアドレスとS1713で特定されたVNIDとに対応したモジュール外部アドレスを、アドレス変換テーブル1100から特定する(S1719)。トンネリング部400が、受信したパケット内の送信元モジュールアドレスを、S1719で特定したモジュール外部アドレスに置換する(S1720)。トンネリング部400が、このパケットを、注目処理サーバ17のインターフェース装置311経由で送信する(S1721)。
S1711の判定結果が偽の場合(S1711:No)、すなわち、S1700で受信したパケットが経由したインターフェースが注目処理サーバ17のインターフェース装置311の場合、トンネリング部400が、当該パケットにアウターヘッダが存在するか否かを判定する(S1731)。
S1731の判定結果が真の場合(S1731:Yes)、当該パケットはモジュール間で受信したデータ通信パケットであるため、トンネリング部400が、トンネリング転送テーブル1000を参照する(S1732)。トンネリング部400が、パケット内のアウターヘッダが表すVNIDと当該パケット内のインナーヘッダが表す送信先モジュールアドレスとに対応した仮想ネットワークI/Fの名前を、トンネリング転送テーブル1000から特定する(S1733)。トンネリング部400が、アウターヘッダをパケットから削除する(S1734)。トンネリング部400が、アウターヘッダが削除されたパケットを、S1733で特定した仮想ネットワークI/F402に出力する(S1735)。
S1731の判定結果が偽の場合(S1731:No)、当該パケットは外部の機器から受信したデータ通信パケットであるため、トンネリング部400が、アドレス変換テーブル1100を参照する(S1736)。当該パケットの送信先アドレスには、外部の機器とモジュール間で通信するためのモジュール外部アドレスが指定されている。トンネリング部400が、パケットで指定されている送信先アドレスに対応したVNID及びモジュールアドレスを、アドレス変換テーブル1100から特定する(S1737)。トンネリング部400が、パケットの送信先アドレスを、S1737で特定したモジュールアドレスに置換する(S138)。トンネリング部400が、トンネリング転送テーブル1000を参照する(S1739)。トンネリング部400が、S1737で特定されたVNIDとS1738の置換後のモジュールアドレスとに対応した仮想ネットワークI/Fの名前を、トンネリング転送テーブル1000から特定する(S1740)。トンネリング部400が、パケットを、S1740で特定した仮想ネットワークI/F402に出力する(S1741)。
以上が、第1の実施形態の説明である。
第1の実施形態によれば、処理システム1が、アドレス体系が異なる複数のネットワーク120に接続された複数の処理サーバ17を備える。一つ又は複数のアプリケーションの各々に関し、当該アプリケーションを構成する複数のモジュールの各々について、トンネリング転送テーブル1000(複数のモジュールの各々についてのモジュールアドレス及び処理サーバアドレスを表すテーブル)を、複数の処理サーバのうちの当該モジュールの配置先の処理サーバ17が有し、当該配置先の処理サーバ17に当該モジュールが配置される。モジュールが配置されている処理サーバ17が、パケットの転送先のモジュールが配置されている処理サーバの処理サーバアドレスを、当該処理サーバに設定されているトンネリング転送情報から特定し、当該特定された処理サーバアドレスを基にパケットを転送する。
処理サーバアドレスは、モジュールが配置された処理サーバ17が接続されているネットワーク120のアドレス体系に従うアドレスであるが、モジュールアドレスは、仮想ネットワークのアドレス体系に従うアドレスである。システムエンジニア(例えば、アプリ開発者)は、モジュールがいずれのネットワーク120に接続されている処理サーバ17に配置されるかに関わらず(つまり、モジュールの配置先の処理サーバ17が接続されているネットワーク120のアドレス体系を考慮することなく)、モジュールのアドレスを決定できる。同一の仮想ネットワークについてモジュールアドレスが重複しなければよく、故に、一つのモジュールが複数の仮想ネットワークに属してもよいし、異なる仮想ネットワークに属する異なるモジュールのアドレスが同一でもよい。これは、ネットワークの無線化がされ異なるアドレス体系が混在し得る環境で有用である。モジュールアドレスと処理サーバアドレスとの関係を表すトンネリング転送テーブル1000を基に、モジュール間で送受信されるパケットの処理サーバ17間での送受信が実現される。これにより、現場環境変化(例えば、需給変動や工程変更)に適切に追従する、アプリケーション配置を含むシステム構成設定が、可能である。具体的には、例えば、システムエンジニアがモジュールの配置や接続方法を検討する必要がなく、アプリケーション開発が容易化する。処理システム1を保有する事業者も、システムエンジニアとの調整が不要になるため、アプリケーションの導入が容易になる。
一つ又は複数のアプリケーションの各々について、当該アプリケーションを構成する複数のモジュールの各々は、モジュール間通信に、一つ又は複数の仮想ネットワークのうち、当該モジュールに割り振られたモジュールアドレスのアドレス体系に対応した仮想ネットワークを利用する。このように、モジュールの配置に、配置先の処理サーバ17が接続されているネットワーク120のアドレス体系の考慮は不要である。
複数の処理サーバ17は、複数のネットワーク120に接続された複数のエッジ処理サーバ17Eを含んでよい。これにより、アプリケーションの少なくとも一部をエッジコンピューティングにより実施できる。
複数の処理サーバ17は、クラウドベースの処理サーバであるクラウド処理サーバ17Cを更に含んでよい。クラウド処理サーバ17Cはエッジ処理サーバ17Eに比べて利用効率が高く故に利用コストが低い。これにより、性能とコストを両立したアプリケーション配置が期待できる。
複数のネットワーク120は、MBH120M及びLAN120Lを含んでよい。MBH120Mは、モバイルコア装置121と基地局16とを繋ぐネットワークである。LAN120Lは、モバイルコア装置121に接続されたネットワークである。これらは、ローカル5GやプライベートLTEに従うネットワークの一例である。すなわち、ローカル5GやプライベートLTEに従うネットワーク上で、現場環境変化に適切に追従することを可能にしたアプリケーション配置が可能である。
処理システム1は、複数の処理サーバ17に接続されたオーケストレーションサーバ130(管理サーバの一例)を備える。一つ又は複数のアプリケーションの各々に関し、当該アプリケーションを構成する複数のモジュールの各々について、オーケストレーションサーバ130が、複数の処理サーバ17のうちの当該モジュールの配置先の処理サーバ17に、当該処理サーバ向けのトンネリング転送テーブル1000を設定し、当該配置先の処理サーバ17に当該モジュールを配置してよい。これは、現場環境変化に適切に追従することに貢献する。例えば、オーケストレーションサーバ130は、各処理サーバ17の各種メトリックのメトリック値から空きリソース量を特定し、各処理サーバの位置及び空きリソース量と、各モジュールの要件とを基にモジュールの配置先処理サーバ17を自動で決定し、モジュールを決定された配置先処理サーバ17に配置してよい。これにより、現場環境変化に応じて自動でアプリケーションを配置することが期待できる。
各処理サーバ17が、トンネリング転送テーブル1000が設定された場合、当該処理サーバ17に配置されるモジュール毎に、当該モジュールが属する仮想ネットワークに対する仮想ネットワークI/F402を設定するようになっていてよく、且つ、トンネリング部400を有していてよい。トンネリング部400は、インナーヘッダを含むパケットに対して、当該処理サーバ17に設定されたトンネリング転送テーブル1000を基に、処理サーバアドレスを含んだアウターヘッダを付加してよい。処理サーバ17に設定されたトンネリング転送テーブル1000は、各モジュールのモジュールアドレスについて、出力先のインターフェースを表す情報を含んでよい。このようにして、仮想ネットワークI/F402経由の通信とインターフェース装置311経由の通信を制御できる。
トンネリング部400が、当該トンネリング部400を備える処理サーバ17内のモジュールから当該モジュールの仮想ネットワークI/F402経由で受信したパケットについて、当該パケット内のインナーヘッダが表すモジュールアドレスに対応した処理サーバアドレスを、当該処理サーバに設定されているトンネリング転送テーブル1000から特定できた場合、当該特定された処理サーバアドレスを含んだアウターヘッダを、パケットに付加し、当該アウターヘッダが付加されたパケットを、当該処理サーバのインターフェース装置311に出力してよい。このようにして、処理サーバ内のモジュールから受信したパケットの当該処理サーバによる通信を実現できる。
トンネリング転送テーブル1000は、各モジュールのモジュールアドレスについて、VNIDを含んでよい。アウターヘッダが、VNIDを含んでよい。トンネリング部400が、当該トンネリング部400を備える処理サーバ17内のインターフェース装置311経由で受信したパケットについて、当該受信したパケットにアウターヘッダが付加されている場合、当該パケット内のアウターヘッダが表すVNIDと、当該パケット内のインナーヘッダが表す送信先のモジュールアドレスとを基に、トンネリング転送テーブル1000から、当該パケットの出力先の仮想ネットワークI/F402を特定し、アウターヘッダを削除し、当該特定した仮想ネットワークI/F402に、アウターヘッダが削除されたパケットを出力してよい。このようにして、処理サーバが外部から受信したパケットを仮想ネットワークI/F402経由でモジュールへ転送することができる。
機器通信モジュールがある場合、オーケストレーションサーバ130が、当該機器通信モジュールが配置される処理サーバ17に、当該モジュールのモジュールアドレスと機器と通信するためのモジュール外部アドレスとの対応関係を表すアドレス変換テーブル1100を設定してよい。トンネリング部400が、当該トンネリング部400を備える処理サーバ17内のモジュールから仮想ネットワークI/F402経由で受信したパケットについて、当該パケット内のモジュールアドレスに対応した処理サーバアドレスを、当該処理サーバ17に設定されているトンネリング転送テーブル1000から特定できなかった場合、当該受信したパケット内のモジュールアドレスに対応したモジュール外部アドレスを、アドレス変換テーブル1100から特定し、当該特定したモジュール外部アドレスを指定したパケットを、当該処理サーバ17のインターフェース装置311に出力してよい。このようにして、仮想ネットワークのアドレス体系に従うモジュールアドレスが付与されたモジュールから外部の機器へパケットを送信できる。
当該トンネリング部が、インターフェース装置311経由でパケットを受信したパケットにアウターヘッダが付加されていない場合、当該パケットで指定されているアドレスに対応したモジュールアドレスをアドレス変換テーブル1100から特定し、当該特定したモジュールアドレスに対応した仮想ネットワークI/Fをトンネリング転送テーブル1000から特定し、当該特定した仮想ネットワークI/F402に、パケットを出力してよい。このようにして、モジュールが外部の機器からデータを受信できる。
[第2の実施形態]
第2の実施形態を説明する。その際、第1の実施形態との相違点を主に説明し、第1の実施形態との共通点については説明を省略又は簡略する。
図20は、第2の実施形態に係る処理システムの構成例を示す。
第2の実施形態に係る処理システム2000では、LAN120Lに接続されたエッジ処理サーバ17ELとMBH120Mに接続されたエッジ処理サーバ17EM(17EMA及び17EMB)とに代えて、LAN120L及びMBH120Mに接続されたエッジ処理サーバ17EX(特定エッジ処理サーバの一例)が備えられる。エッジ処理サーバ17EXが、MBH120Mに接続されている第1の論理的なエッジ処理サーバとLAN120Lに接続されている第2の論理的なエッジ処理サーバとに分割されていてよい。MBH120M側からのパケットは、第1の論理的なエッジ処理サーバが受け付け、LAN120L側からのパケットは、第2の論理的なエッジ処理サーバが受け付けてもよい。各論理的なエッジ処理サーバに対して、モジュールの配置が可能でよく、故に、各論理的なエッジ処理サーバに、トンネリング部や仮想ネットワークI/Fが設けられてよい。
エッジ処理サーバ17EXが、パケットを受け付け、当該パケットがいずれかの処理サーバ17宛のパケットであるか否かを判定してよい。当該判定の結果が真の場合、エッジ処理サーバ17EXが、当該パケットを、モバイルコア装置121非経由で宛先の処理サーバに転送してよい。当該判定の結果が偽の場合(例えば、あて先が既存工場ネットワーク125の場合)、エッジ処理サーバ17EXが、当該パケットをモバイルコア装置121に転送してよい。モバイルコア装置121が行うパケット処理は比較的長い時間がかかるが、第2の実施形態によれば、処理サーバ間17で送受信されるパケットについては、モバイルコア装置121によるパケット処理を省くことができる。これにより、モジュール間の通信遅延を削減できることが期待できる。
以上、幾つかの実施形態を説明したが、これらは本発明の説明のための例示であって、本発明の範囲をこれらの実施形態にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実行することが可能である。例えば、オーケストレーションサーバ130のネットワーク制御部303が、定期的に又は不定期的に、各モジュールについて、当該モジュールの配置先の処理サーバ17の空きリソース量が、当該モジュールの要件を満たしているか否かを判定してよい。ネットワーク制御部303は、当該判定の結果が否となったモジュールを、当該モジュールの要件を満たす別の処理サーバに移動してよい。
1,2000:処理システム

Claims (19)

  1. アドレス体系が異なる複数のネットワークに接続されそれぞれネットワーク通信のための物理的なインターフェース装置を備える複数の処理サーバを備え、
    一つ又は複数のアプリケーションの各々に関し、当該アプリケーションを構成しそれぞれデータの入出力を行う複数のモジュールの各々について、
    前記複数のモジュールの各々についてのモジュールアドレス及び処理サーバアドレスを表す情報であるトンネリング転送情報を、前記複数の処理サーバのうちの当該モジュールの配置先の処理サーバが有し、
    当該配置先の処理サーバに当該モジュールが配置されており、
    モジュールアドレスは、仮想ネットワークのアドレス体系に従うアドレスであってモジュールに割り振られたアドレスであり、
    処理サーバアドレスは、モジュールが配置された処理サーバのアドレスであって当該処理サーバが接続されているネットワークのアドレス体系に従うアドレスであり、
    モジュールが配置されている処理サーバが、パケットの転送先のモジュールが配置されている処理サーバの処理サーバアドレスを、当該処理サーバに設定されているトンネリング転送情報から特定し、当該特定された処理サーバアドレスを基にパケットを転送する、
    処理システム。
  2. 前記複数の処理サーバは、前記複数のネットワークに接続された複数のエッジ処理サーバを含む、
    請求項1に記載の処理システム。
  3. 前記複数の処理サーバは、クラウドベースの処理サーバであるクラウド処理サーバを含む、
    請求項2に記載の処理システム。
  4. 前記複数のネットワークは、無線通信において送受信されるパケットが経由する第1ネットワーク及び第2ネットワークを含み、
    前記第1ネットワークは、コアネットワークと一つ又は複数の基地局とを繋ぐネットワークである、
    前記第2ネットワークは、前記コアネットワークに接続されたネットワークである、
    請求項1に記載の処理システム。
  5. 前記複数の処理サーバは、前記複数のネットワークに接続された複数のエッジ処理サーバを含み、
    前記複数のエッジ処理サーバは、前記第1ネットワーク及び第2ネットワークに接続されたエッジ処理サーバである特定エッジ処理サーバを含み、
    前記特定エッジ処理サーバが、
    パケットを受け付け、
    当該パケットがいずれかの処理サーバ宛のパケットであるか否かを判定し、
    当該判定の結果が真の場合、当該パケットを、前記コアネットワーク非経由で転送し、
    当該判定の結果が偽の場合、当該パケットを、前記コアネットワークに転送する、
    請求項4に記載の処理システム。
  6. 前記一つ又は複数のアプリケーションの各々について、当該アプリケーションを構成する複数のモジュールの各々は、モジュール間通信に、一つ又は複数の仮想ネットワークのうち、当該モジュールに割り振られたモジュールアドレスのアドレス体系に対応した仮想ネットワークを利用する、
    請求項1に記載の処理システム。
  7. 前記複数の処理サーバに接続された管理サーバを備え、
    前記一つ又は複数のアプリケーションの各々に関し、当該アプリケーションを構成する複数のモジュールの各々について、前記管理サーバが、
    前記複数の処理サーバのうちの当該モジュールの配置先の処理サーバに、当該処理サーバ向けのトンネリング転送情報を設定し、
    当該配置先の処理サーバに当該モジュールを配置する、
    請求項6に記載の処理システム。
  8. 一つ以上のモジュールの配置毎に、仮想ネットワークが存在する、
    請求項7に記載の処理システム。
  9. 前記複数の処理サーバの各々が、
    トンネリング転送情報が設定された場合、当該処理サーバに配置されるモジュール毎に、当該モジュールが属する仮想ネットワークに対する仮想的なインターフェースである仮想ネットワークインターフェースを設定するようになっており、且つ、
    モジュールアドレスを含んだインナーヘッダを含むパケットに対して、当該処理サーバに設定されたトンネリング転送情報を基に、処理サーバアドレスを含んだアウターヘッダを付加するトンネリング部を有しており、
    処理サーバに設定されたトンネリング転送情報は、各モジュールのモジュールアドレスについて、出力先のインターフェースを表す情報を含む、
    請求項7に記載の処理システム。
  10. トンネリング部が、当該トンネリング部を備える処理サーバ内のモジュールから当該モジュールの仮想ネットワークインターフェース経由で受信したパケットについて、当該パケット内のインナーヘッダが表すモジュールアドレスに対応した処理サーバアドレスを、当該処理サーバに設定されているトンネリング転送情報から特定できた場合、当該特定された処理サーバアドレスを含んだアウターヘッダを、前記受信したパケットに付加し、当該アウターヘッダが付加されたパケットを、当該処理サーバのインターフェース装置に出力する、
    請求項9に記載の処理システム。
  11. 処理サーバに設定されたトンネリング転送情報は、各モジュールのモジュールアドレスについて、仮想ネットワークの識別情報を含み、
    アウターヘッダが、仮想ネットワークの識別情報を含み、
    当該トンネリング部が、当該トンネリング部を備える処理サーバ内のインターフェース装置経由で受信したパケットについて、当該受信したパケットにアウターヘッダが付加されている場合、当該パケット内のアウターヘッダが表す仮想ネットワークの識別情報と、当該パケット内のインナーヘッダが表す送信先のモジュールアドレスとを基に、当該処理サーバに設定されているトンネリング転送情報から、当該パケットの出力先の仮想ネットワークインターフェースを特定し、当該アウターヘッダを削除し、当該特定した仮想ネットワークインターフェースに、アウターヘッダが削除されたパケットを出力する、
    請求項9に記載の処理システム。
  12. 前記複数のモジュールが、機器と通信するモジュールである機器通信モジュールを含む場合、前記管理サーバが、当該機器と同一ネットワークに接続されている処理サーバに、当該モジュールのモジュールアドレスと当該モジュールと機器と通信するためのモジュール外部アドレスとの対応関係を表すアドレス変換情報を設定し、
    前記トンネリング部が、当該トンネリング部を備える処理サーバ内のモジュールから当該モジュールの仮想ネットワークインターフェース経由で受信したパケットについて、当該パケット内のモジュールアドレスに対応した処理サーバアドレスを、当該処理サーバに設定されているトンネリング転送情報から特定できなかった場合、当該受信したパケット内のモジュールアドレスに対応したモジュール外部アドレスを、当該処理サーバに設定されているアドレス変換情報から特定し、当該特定したモジュール外部アドレスを指定したパケットを、当該処理サーバのインターフェース装置に出力する、
    請求項10に記載の処理システム。
  13. 前記トンネリング部が、当該トンネリング部を備える処理サーバ内のインターフェース装置経由でパケットを受信したパケットにアウターヘッダが付加されていない場合、当該パケットで指定されているアドレスに対応したモジュールアドレスを前記アドレス変換情報から特定し、当該特定したモジュールアドレスに対応した仮想ネットワークインターフェースを前記トンネリング転送情報から特定し、当該特定した仮想ネットワークインターフェースに、パケットを出力する、
    請求項12に記載の処理システム。
  14. 前記一つ又は複数のアプリケーションの各々に関し、前記複数の処理サーバは、機器が存在する所定の範囲を出入りするパケットが必ず経由する処理サーバである対象処理サーバを含み、
    前記管理サーバが、前記対象処理サーバに、モジュールのサービス名とモジュール外部アドレスとの対応関係を表す名前解決情報を設定し、
    前記対象処理サーバは、モジュールのサービス名が指定された名前解決クエリとしてのパケットを受信し、当該サービス名に対応したモジュール外部アドレスを前記名前解決情報から特定できた場合、当該特定されたモジュール外部アドレスを、前記機器に返す、
    請求項12に記載の処理システム。
  15. 前記管理サーバが、監視対象の環境の状態が未配置のアプリケーションに対応した状態であることを検出した場合、当該アプリケーションを配置対象に決定し、当該アプリケーションを構成する複数のモジュールの各々について、
    当該モジュールの配置先の処理サーバを決定し、
    当該決定された配置先の処理サーバに当該モジュールを配置する、
    請求項7に記載の処理システム。
  16. 前記管理サーバが、各処理サーバからメトリック値を定期的に収集するようになっており、
    前記監視対象の環境の状態が未配置のアプリケーションに対応した状態であるとは、前記各処理サーバのメトリック値が、未配置のアプリケーションに対応したメトリック値範囲に該当することである、
    請求項15に記載の処理システム。
  17. 前記管理サーバが、既存のアプリケーションのうち、監視対象の環境の状態に対応せず配置対象のアプリケーションが代わって配置されるアプリケーションを、削除対象のアプリケーションに決定し、当該アプリケーションの削除のために、当該アプリケーションを構成する複数のモジュールの各々について、
    当該モジュールの配置先の処理サーバから削除し、
    当該アプリケーションの配置に関わるトンネリング転送情報を当該配置先の処理サーバから削除する、
    請求項7に記載の処理システム。
  18. アドレス体系が異なる複数のネットワークのうちのいずれかのネットワークに接続される処理サーバであって、
    当該ネットワークに接続される物理的なインターフェース装置と、
    記憶装置と、
    前記インターフェース装置及び前記記憶装置に接続されたプロセッサと
    を有し、
    一つ又は複数のアプリケーションの各々に関し、当該アプリケーションを構成しそれぞれデータの入出力を行う複数のモジュールが、前記複数のネットワークに接続されており前記処理サーバを含む複数の処理サーバに配置されており、
    前記記憶装置が、前記一つ又は複数のアプリケーションの各々に関し、当該アプリケーションを構成する複数のモジュールの各々についてのモジュールアドレス及び処理サーバアドレスを表す情報であるトンネリング転送情報を記憶し、
    モジュールアドレスは、仮想ネットワークのアドレス体系に従うアドレスであってモジュールに割り振られたアドレスであり、
    処理サーバアドレスは、モジュールが配置された処理サーバのアドレスであって当該処理サーバが接続されているネットワークのアドレス体系に従うアドレスであり、
    前記プロセッサが、
    当該処理サーバに配置されているモジュールが送信又は受信するデータを含んだパケットの転送先のモジュールが配置されている処理サーバの処理サーバアドレスを、前記トンネリング転送情報から特定し、
    当該特定された処理サーバアドレスを基にパケットを転送する
    処理サーバ。
  19. アドレス体系が異なる複数のネットワークのうちのいずれかのネットワークに接続される処理サーバが行う処理方法であって、
    一つ又は複数のアプリケーションの各々に関し、当該アプリケーションを構成しそれぞれデータの入出力を行う複数のモジュールの各々についてのモジュールアドレス及び処理サーバアドレスを表す情報であるトンネリング転送情報を記憶し、モジュールアドレスは、仮想ネットワークのアドレス体系に従うアドレスであってモジュールに割り振られたアドレスであり、処理サーバアドレスは、モジュールが配置された処理サーバのアドレスであって当該処理サーバが接続されているネットワークのアドレス体系に従うアドレスであり、
    当該処理サーバに配置されているモジュールが送信又は受信するデータを含んだパケットの転送先のモジュールが配置されている処理サーバの処理サーバアドレスを、前記トンネリング転送情報から特定し、
    当該特定された処理サーバアドレスを基にパケットを転送する
    処理方法。
JP2020149081A 2020-09-04 2020-09-04 処理システム及び方法 Active JP7437272B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020149081A JP7437272B2 (ja) 2020-09-04 2020-09-04 処理システム及び方法
US17/464,873 US20220078158A1 (en) 2020-09-04 2021-09-02 Processing system and processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020149081A JP7437272B2 (ja) 2020-09-04 2020-09-04 処理システム及び方法

Publications (2)

Publication Number Publication Date
JP2022043677A JP2022043677A (ja) 2022-03-16
JP7437272B2 true JP7437272B2 (ja) 2024-02-22

Family

ID=80470351

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020149081A Active JP7437272B2 (ja) 2020-09-04 2020-09-04 処理システム及び方法

Country Status (2)

Country Link
US (1) US20220078158A1 (ja)
JP (1) JP7437272B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230195529A1 (en) * 2021-12-16 2023-06-22 Rakuten Mobile, Inc. Method, apparatus, and computer readable medium
US12493710B2 (en) 2022-02-04 2025-12-09 Bank Of America Corporation System and method for data traffic control on a distributed network
JPWO2024176321A1 (ja) * 2023-02-20 2024-08-29

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006323579A (ja) 2005-05-18 2006-11-30 Canon Inc Dmaコントローラ
JP2015531212A (ja) 2012-08-14 2015-10-29 ヴィーエムウェア, インコーポレイテッドVMware, Inc. 仮想ネットワークおよび物理ネットワークを統合するための方法およびシステム

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7571154B2 (en) * 2005-01-31 2009-08-04 Cassatt Corporation Autonomic control of a distributed computing system using an application matrix to control application deployment
JP4732823B2 (ja) * 2005-07-26 2011-07-27 株式会社日立産機システム モジュール間通信装置
US11323508B2 (en) * 2009-05-22 2022-05-03 Comcast Interactive Media, Llc Web service system and method
WO2017113231A1 (zh) * 2015-12-30 2017-07-06 华为技术有限公司 一种报文传输的方法、装置和系统
US10212041B1 (en) * 2016-03-04 2019-02-19 Avi Networks Traffic pattern detection and presentation in container-based cloud computing architecture
US10511690B1 (en) * 2018-02-20 2019-12-17 Intuit, Inc. Method and apparatus for predicting experience degradation events in microservice-based applications
US11057459B2 (en) * 2018-06-06 2021-07-06 Vmware, Inc. Datapath-driven fully distributed east-west application load balancer
US20210250250A1 (en) * 2020-02-10 2021-08-12 Hewlett Packard Enterprise Development Lp Deployment of an application in a distributed computing environment
US12255972B2 (en) * 2020-08-21 2025-03-18 Intel Corporation Edge computing local breakout
CN114513770B (zh) * 2020-10-29 2024-01-30 伊姆西Ip控股有限责任公司 部署应用的方法、系统和介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006323579A (ja) 2005-05-18 2006-11-30 Canon Inc Dmaコントローラ
JP2015531212A (ja) 2012-08-14 2015-10-29 ヴィーエムウェア, インコーポレイテッドVMware, Inc. 仮想ネットワークおよび物理ネットワークを統合するための方法およびシステム

Also Published As

Publication number Publication date
JP2022043677A (ja) 2022-03-16
US20220078158A1 (en) 2022-03-10

Similar Documents

Publication Publication Date Title
CN107566541B (zh) 容器网络资源分配方法、系统、存储介质和电子设备
JP7437272B2 (ja) 処理システム及び方法
US9569289B2 (en) Generic distributed processing for multi-agent systems
CN113709810B (zh) 一种网络服务质量的配置方法、设备和介质
CN112165532A (zh) 节点访问方法、装置、设备及计算机可读存储介质
CN108449418A (zh) 一种混合云平台管理系统及方法
CN115225292B (zh) 一种内网访问方法、装置、设备及计算机可读存储介质
CN114172905B (zh) 一种集群网络组网的方法、装置、计算机设备及存储介质
US20140067914A1 (en) Computer system and packet transfer method
US10104177B2 (en) Distributed gateways with centralized data center for high throughput satellite (HTS) spot beam network
CN114979286B (zh) 容器服务的访问控制方法、装置、设备及计算机存储介质
CN115913937A (zh) 一种容器多网卡网络配置方法、装置、设备及存储介质
CN113965585A (zh) 一种多云互联方法及装置
CN119276928A (zh) 服务治理方法、装置及计算机可读存储介质
CN115086330A (zh) 跨集群负载均衡系统
US20210058478A1 (en) Communication proxy for devices in mobile edge computing networks
JP2015099547A (ja) ソフトウェア更新方法、ソフトウェア更新装置、ソフトウェア更新プログラム、及びソフトウェア更新システム
CN114911577A (zh) 网络隔离规则的设置方法、装置、设备及存储介质
CN111629059B (zh) 一种集群通信方法、系统、设备及计算机可读存储介质
US20210103457A1 (en) Control apparatus, control system, control method, and program
CN116974748A (zh) 资源调度方法、节点、设备、介质和程序产品
EP1589424A2 (en) Vertical perimeter framework for providing application services in multi-CPU environments
CN115955519A (zh) 多业务应用共享物理通信通道的方法、装置及系统
CN114124832A (zh) Dns系统业务处理方法及装置
CN114157455B (zh) 一种数据传输方法、装置、设备以及存储介质

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230215

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231219

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: 20240130

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240209

R150 Certificate of patent or registration of utility model

Ref document number: 7437272

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150