JP2021027398A - Container daemon, information processing device, container-type virtualization system, packet distribution method, and program - Google Patents
Container daemon, information processing device, container-type virtualization system, packet distribution method, and program Download PDFInfo
- Publication number
- JP2021027398A JP2021027398A JP2019141338A JP2019141338A JP2021027398A JP 2021027398 A JP2021027398 A JP 2021027398A JP 2019141338 A JP2019141338 A JP 2019141338A JP 2019141338 A JP2019141338 A JP 2019141338A JP 2021027398 A JP2021027398 A JP 2021027398A
- Authority
- JP
- Japan
- Prior art keywords
- container
- packet
- daemon
- priority
- information processing
- 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
Links
- 238000000034 method Methods 0.000 title claims description 26
- 230000010365 information processing Effects 0.000 title claims description 19
- 238000012545 processing Methods 0.000 claims abstract description 93
- 230000008569 process Effects 0.000 claims description 12
- 238000004891 communication Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 8
- 238000011161 development Methods 0.000 description 6
- 239000000463 material Substances 0.000 description 5
- 238000007726 management method Methods 0.000 description 4
- 229910000906 Bronze Inorganic materials 0.000 description 3
- 239000010974 bronze Substances 0.000 description 3
- KUNSUQLRTQLHQQ-UHFFFAOYSA-N copper tin Chemical compound [Cu].[Sn] KUNSUQLRTQLHQQ-UHFFFAOYSA-N 0.000 description 3
- PCHJSUWPFVWCPO-UHFFFAOYSA-N gold Chemical compound [Au] PCHJSUWPFVWCPO-UHFFFAOYSA-N 0.000 description 3
- 229910052737 gold Inorganic materials 0.000 description 3
- 239000010931 gold Substances 0.000 description 3
- 229910052709 silver Inorganic materials 0.000 description 3
- 239000004332 silver Substances 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004040 coloring Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000015654 memory Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
Landscapes
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
本発明は、コンテナデーモン、情報処理装置、コンテナ型仮想化システム、パケット振り分け方法及びプログラムに関する。 The present invention relates to a container daemon, an information processing device, a container-type virtualization system, a packet distribution method, and a program.
1台の物理ホスト上のOS(Operating System)の仮想化を提供するコンテナ型仮想化と呼ばれる技術が知られている。コンテナ型仮想化では、1台の物理ホスト上で複数のコンテナを動作させることができる。例えば、音声通話を行うアプリケーションのコンテナと、映像を配信するアプリケーションのコンテナと、ドキュメント資料を配信するアプリケーションのコンテナとが動作する1台の物理ホストによって、テレビ会議サービスを提供することができる。快適なテレビ会議サービスを提供するためには、各コンテナの通信トラフィックに対して、配信コンテンツの特性に応じたQoS(Quality of Service)要件(例:遅延時間、ジッタ、帯域)を適用することが好ましい。つまり、コンテナ単位で異なるQoS要件を適用できる必要がある。 A technique called container-type virtualization that provides virtualization of an OS (Operating System) on one physical host is known. In container-type virtualization, a plurality of containers can be operated on one physical host. For example, a video conferencing service can be provided by a single physical host that operates a container for an application that makes a voice call, a container for an application that distributes video, and a container for an application that distributes document materials. In order to provide a comfortable video conferencing service, it is necessary to apply Quality of Service (QoS) requirements (eg, delay time, jitter, bandwidth) according to the characteristics of the delivered content to the communication traffic of each container. preferable. That is, it is necessary to be able to apply different QoS requirements for each container.
コンテナ型仮想化環境に適用可能なQoS改善に関する技術の一例として、DPDK(Data Plane Development Kit)等のツールが提供されている。例えば、DPDKをコンテナに導入すると、そのコンテナの通信トラフィックが高速化される。さらに、DPDK QoS(Quality of Service)フレームワークをコンテナに導入すると、通信トラフィックの高速化だけでなく、コンテナ間でのパケット処理の優先度を調整できるようになる。例えば、上記のテレビ会議サービスの場合、音声通話のコンテナの通信トラフィックに関する優先度を他のコンテナ(映像、資料)よりも高く設定し、会議中の音声の遅延などを防ぐことが可能である。 Tools such as DPDK (Data Plane Development Kit) are provided as an example of technologies related to QoS improvement applicable to a container-type virtualization environment. For example, when DPDK is introduced into a container, the communication traffic of the container is accelerated. Furthermore, by introducing the DPDK Quality of Service (DPDK) framework into a container, it becomes possible not only to speed up communication traffic but also to adjust the priority of packet processing between containers. For example, in the case of the above-mentioned video conferencing service, it is possible to set the priority of the communication traffic of the voice call container higher than that of other containers (video, materials) and prevent delay of voice during the conference.
なお、特許文献1には、コンテナ仮想化技術に関し、自動的にコンテナを生成する技術について開示されている。例えば、特許文献1には、SLA(Service Level Agreement)に従った特性を持つコンテナを生成する例が開示されている。
また、特許文献2には、コンテナからの通信に関するパケットの処理を、ルックアップテーブルの設定に基づいて、CPU(Central Processing Unit)又はアクセラレータで行う技術が開示されている。特許文献2には、パケットフローの帯域に応じてルックアップテーブルに割り当てるリソースの容量を変更することが開示されている。例えば、ルックアップテーブルに割り当てるリソースの容量を少なくすれば、その分、通信処理にリソースを割り当てることができる。
また、特許文献3には、サービスレベルに応じた中継装置を利用してコンテンツデータの伝送を行う伝送管理システムが開示されている。
In addition,
Further,
Further, Patent Document 3 discloses a transmission management system that transmits content data by using a relay device according to a service level.
しかし、DPDKのようなパケット高速処理機能を全てのコンテナに対して導入することは現実的ではない。また、ハードウェア制限等の理由で、コンテナ環境内のすべての装置にパケット高速処理機能が導入できるとは限らない。コンテナ仮想化環境において、コンテナに手を加えることなく、ネットワークの高速化やQoS制御を実現する方法が求められている。特許文献1、3には、このような課題を解決する方法は開示されていない。また、特許文献2の技術は、アクセラレータの存在が前提となっており、また、ルックアップテーブル容量の割り当て処理に負荷を要する。
However, it is not realistic to introduce a packet high-speed processing function such as DPDK to all containers. Moreover, due to hardware restrictions and the like, it is not always possible to introduce the packet high-speed processing function into all the devices in the container environment. In a container virtualization environment, there is a demand for a method for realizing high-speed network and QoS control without modifying the container.
そこでこの発明は、上述の課題を解決するコンテナデーモン、情報処理装置、コンテナ型仮想化システム、パケット振り分け方法及びプログラムを提供することを目的としている。 Therefore, an object of the present invention is to provide a container daemon, an information processing device, a container-type virtualization system, a packet distribution method, and a program that solve the above-mentioned problems.
本発明の一態様によれば、コンテナデーモンは、コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働するOS又はパケット高速処理層へ出力するパケット振分部、を備える。 According to one aspect of the present invention, the container daemon outputs the packet to the OS on which the container operates or the packet high-speed processing layer based on the setting information of the distribution destination of the packet delivered from the container. It has a part.
また、本発明の他の一態様によれば、情報処理装置は、上記のコンテナデーモンと、OSと、OSに導入されたパケット高速処理層と、を備える。 Further, according to another aspect of the present invention, the information processing apparatus includes the above-mentioned container daemon, an OS, and a packet high-speed processing layer introduced into the OS.
また、本発明の他の一態様によれば、情報処理装置は、上記のコンテナデーモンと、前記パケットの処理について優先制御を行う機能を有するOSと、を備える。 Further, according to another aspect of the present invention, the information processing apparatus includes the above-mentioned container daemon and an OS having a function of performing priority control on the processing of the packet.
また、本発明の他の一態様によれば、コンテナ型仮想化システムは、1台または複数台の上記の情報処理装置と、前記情報処理装置にて動作するコンテナの制御を行うコンテナオーケストレータと、を備え、前記コンテナオーケストレータが、前記情報処理装置のコンテナデーモンに対して、前記パケットの振り分け先の設定を行う。 Further, according to another aspect of the present invention, the container-type virtualization system includes one or a plurality of the above-mentioned information processing devices and a container orchestrator that controls a container operating in the information processing devices. , And the container orchestrator sets the distribution destination of the packet to the container daemon of the information processing apparatus.
また、本発明の他の一態様によれば、パケット振り分け方法は、コンテナデーモンが、コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働するOS又はパケット高速処理層へ出力する。 Further, according to another aspect of the present invention, in the packet distribution method, the container daemon transmits the packet to the OS or packet on which the container operates based on the setting information of the distribution destination of the packet delivered from the container. Output to the high-speed processing layer.
また、本発明の他の一態様によれば、プログラムは、コンピュータに、コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働するOS又はパケット高速処理層へ出力する処理、を実行させる。 Further, according to another aspect of the present invention, the program sends the packet to the computer based on the setting information of the distribution destination of the packet delivered from the container to the OS or the packet high-speed processing layer in which the container operates. Execute the process to output to.
本発明によれば、コンテナ型仮想化環境において、コンテナ側に手を加えることなく、SLAに応じたネットワークのQoS制御を実現することができる。 According to the present invention, in a container-type virtualization environment, it is possible to realize QoS control of a network according to SLA without modifying the container side.
以下、一実施形態に係るコンテナ型仮想化システムについて図1〜図9を参照して説明する。
(構成の説明)
図1は、本発明の一実施形態によるコンテナ型仮想化システムの構成例を示す第1の図である。
図1に示すようにコンテナ型仮想化システム1は、コンテナオーケストレータ10と、コンテナ動作装置20,20a,20b,20cと、中継装置30とを含む。
コンテナオーケストレータ10は、Kubernetesのマスタ機能等のソフトウェアがインストールされたコンピュータである。コンテナ動作装置20〜20cは、Kubernetesのノード機能やDocker等のソフトウェアがインストールされたコンピュータである。コンテナオーケストレータ10はマスタ、コンテナ動作装置20〜20cはノードである。コンテナ動作装置20〜20cでは、コンテナが動作する。中継装置30は、例えば、HAproxy等のソフトウェアがインストールされたコンピュータである。コンテナオーケストレータ10とコンテナ動作装置20〜20cのそれぞれとはメッセージパスNW1(マネジメントプレイン)で通信可能に接続されている。コンテナオーケストレータ10と中継装置30とはメッセージパスNW0(マネジメントプレイン)で通信可能に接続されている。メッセージパスNW0、NW1には制御情報が流れる。また、コンテナ動作装置20〜20cと中継装置30とは、ネットワークNW2(データプレイン)で通信可能に接続されている。また、中継装置30は、外部ネットワークNW3と接続されている。例えば、外部ネットワークNW3に接続されたPC、タブレット、スマートフォンなどの各種デバイスからコンテナ動作装置20等で稼働するコンテナへアクセスすると中継装置30は、そのアクセスを仲介し、コンテナ動作装置20等で稼働するコンテナとの通信を実現にする。
Hereinafter, the container-type virtualization system according to the embodiment will be described with reference to FIGS. 1 to 9.
(Explanation of configuration)
FIG. 1 is a first diagram showing a configuration example of a container-type virtualization system according to an embodiment of the present invention.
As shown in FIG. 1, the container-
The
コンテナオーケストレータ10は、指示部11と、選択部12と、記憶部13と、を備える。指示部11は、コンテナ動作装置20〜20cへ、パケットの振り分けに関する指示を行う。選択部12は、利用者から要求されたサービスを提供するコンテナを起動するコンテナ動作装置を、コンテナ動作装置20〜20cの中から選択する。記憶部13は、コンテナ動作装置20〜20cのそれぞれについて、パケット高速処理機能が導入されているか否かの情報を記憶している。例えば、記憶部13には、コンテナ動作装置20にはパケット高速処理機能が導入済みであり、コンテナ動作装置20a〜20cにはパケット高速処理機能が未導入であるとの情報が格納されている。
The
コンテナ動作装置20は、コンテナ群21−1,21−2,21−3と、コンテナデーモン22と、パケット高速処理層24と、OS25と、NIC(Network Interface Card)28と、指定NIC29と、を備える。
コンテナ群21−1〜21−3は、それぞれ1つ又は複数のコンテナである。例えば、コンテナ群21−1ではアプリケーション211、コンテナ群21−2ではアプリケーション212、コンテナ群21−3ではアプリケーション213が動作する。
コンテナデーモン22は、コンテナ動作装置20上で動作するコンテナ群21−1〜21−3を管理する。例えば、コンテナデーモン22は、コンテナ群21−1〜21−3に対する各種コマンドを受け付け、コンテナ群21−1〜21−3の起動や停止などを行う。また、コンテナデーモン22は、パケット振分部23を備える。パケット振分部23は、コンテナオーケストレータ10の指示部11による指示に従って、コンテナ群21−1〜21−3が配信するパケットを、OS25かパケット高速処理層24の何れかに振り分ける。例えば、アプリケーション211、212が提供するサービスが、アプリケーション213が提供するサービスよりも優先的である場合、パケット振分部23は、コンテナ群21−1,21−2が配信するパケットをパケット高速処理層24へ振り分け、コンテナ群21−3が配信するパケットをOS25へ振り分ける。
The
The container groups 21-1 to 21-3 are one or more containers, respectively. For example,
The
パケット高速処理層24は、DPDK等のパケット処理を高速化するソフトウェアである。本実施形態では、一例としてQoS制御が可能なソフトウェア(例えば、DPDK QoSフレームワーク)がコンテナ動作装置20にインストールされているとする。パケット高速処理層24は、OS25が提供するオーバーヘッドの大きいパケット処理をバイパスして直接指定NIC29にアクセスして通信を行う。この為、ネットワークの高速化が図れる。また、パケット高速処理層24は、QoS制御機能241を備えている。例えば、コンテナ群21−1の通信トラフィックの優先度が、コンテナ群21−2の通信トラフィックよりも優先度が高ければ、QoS制御機能241は、コンテナ群21−1が配信するパケットを、コンテナ群21−2が配信するパケットよりも優先して処理する。指定NIC29は、パケット高速処理層24用に搭載されており、パケット高速処理層24は、指定NIC29を占有する。
The packet high-
OS25は、OVS26と、カーネル27とを備える。OVS26は、仮想スイッチである。カーネル27は、一般的なパケット処理を行う。コンテナデーモン22からOS25へ振り分けられたパケットは、カーネル27で処理されてNIC28を介して配信される。カーネル27によるパケット処理は、パケット高速処理層24よる処理よりも高負荷で時間が掛かる。なお、カーネル27は、パケットヘッダのDSCP(Differentiated Services Code Point)やIP Precedenceの値を変更する機能(カラーリング機能)を備えていてもよい。DSCPやIP Precedenceの値を変更することにより、パケット処理の優先度を変更することができるため、OS25を介してパケット処理を行う場合でもQoS制御が可能である。
The
図2は、本発明の一実施形態によるコンテナ型仮想化システムの構成例を示す第2の図である。図1では、パケット高速処理層24を備えるコンテナ動作装置20の構成について説明した。次に図2を参照して、パケット高速処理層24が未導入のコンテナ動作装置20aの構成について説明する。
FIG. 2 is a second diagram showing a configuration example of a container-type virtualization system according to an embodiment of the present invention. In FIG. 1, the configuration of the
コンテナ動作装置20aは、コンテナ群21−1a,21−2a,21−3aと、コンテナデーモン22aと、OS25aと、NIC28aと、を備える。コンテナデーモン22aはパケット振分部23aを備え、OS25aはOVS26a、カーネル27aを備えている。コンテナ動作装置20aは、図1のパケット高速処理層24および指定NIC29に相当する構成を備えていない。
実際のコンテナ型仮想化環境では、ハードウェアの制約やコストなどの様々な理由によってパケット高速処理層24が導入できない、又は、導入の予定があっても未だ導入していない場合がある。コンテナ動作装置20aは、そのような場合のコンテナホストの構成例である。
The
In an actual container-type virtualization environment, the packet high-
コンテナ群21−1a〜21−3a、コンテナデーモン22a、パケット振分部23a、OS25a、OVS26a、カーネル27a、NIC28aは、それぞれ、図1で説明したコンテナ群21−1〜21−3、コンテナデーモン22、パケット振分部23、OS25、OVS26、カーネル27、NIC28と同様の機能を有している。
図2の構成の場合、例えば、アプリケーション211aが提供するサービスの優先度が最も高く、次にアプリケーション212aの優先度が高く、次にアプリケーション213aの優先度が高い場合、コンテナオーケストレータ10の指示部11は、コンテナ群21−1a〜21−3aが配信するパケットを全てOS25aへ振り分けることと、上記の優先度でコンテナ群21−1a〜21−3aが配信するパケットを処理することをコンテナデーモン22aへ指示する。
The container groups 21-1a to 21-3a, the
In the case of the configuration of FIG. 2, for example, when the service provided by the
パケット振分部23aは、指示部11による指示に従って、コンテナ群21−1a〜21−3aが配信するパケットを、OS25aに振り分ける。また、OS25aでは、カーネル27aが指示部11による指示に従って、コンテナ群21−1aが配信するパケットが最優先、コンテナ群21−2aが配信するパケットが2番目の優先、コンテナ群21−3aが配信するパケットが3番目に優先的に処理されるようパケットのヘッダを書き換える。これにより、パケット高速処理層24が導入されていないコンテナ動作装置についても、通信トラフィックのQoS制御が可能になる。
The
(動作)
次に図3〜図5を参照してコンテナ型仮想化システム1の動作について説明する。
図3は、本発明の一実施形態による処理の一例を示す第1のフローチャートである。
図5は、本発明の一実施形態によるパケット振り分けの設定例を示す図である。
まず、中継装置30が利用者トラフィックを受信する(ステップS1)。利用者トラフィックには、利用者が要求するアプリケーションの種類が含まれている。例えば、アプリケーション211、アプリケーション212、アプリケーション213が要求されたとする。中継装置30は、利用者から受信した情報を、メッセージパスNW0を通じてコンテナオーケストレータ10へ通知する(ステップS2)。
(motion)
Next, the operation of the container-
FIG. 3 is a first flowchart showing an example of processing according to the embodiment of the present invention.
FIG. 5 is a diagram showing a setting example of packet distribution according to an embodiment of the present invention.
First, the
(例1)
コンテナオーケストレータ10の記憶部13には、予めアプリケーション毎に通信トラフィックの優先度が設定された情報が登録されている。例えば、アプリケーション211、アプリケーション212、アプリケーション213には、それぞれ優先度1、2、3が設定されている(優先度1が最も優先度が高い)。
また、記憶部13には、コンテナ動作装置20〜20cごとにパケット高速処理層24の導入の有無が登録されている。例えば、コンテナ動作装置20はパケット高速処理層24が導入済みで、他は未導入であることが登録されている。
また、記憶部13には、優先度1、2のアプリケーションの通信トラフィックについては、パケット高速処理層24で処理させるようにするとの設定が登録されている。
これらの設定は、予め管理者がコンテナオーケストレータ10へ登録したものである。
(Example 1)
In the
Further, in the
Further, the
These settings are registered in advance in the
コンテナオーケストレータ10の選択部12は、これらの設定に基づいて、コンテナ動作装置20〜20cの中から、アプリケーション211〜213の優先度の要件に合うコンテナ動作装置20を特定する(ステップS3)。
Based on these settings, the
次にコンテナオーケストレータ10は、特定したコンテナ動作装置20にアプリケーション211が動作するコンテナ群21−1、アプリケーション212が動作するコンテナ群21−2、アプリケーション213が動作するコンテナ群21−3をデプロイする(ステップS4)。このとき、指示部11は、コンテナデーモン22へ、コンテナ群21−1〜21−3が配信するパケットの振り分け方法およびQoS制御について指示する設定を行う。図5(a)に設定内容を例示する。この例の場合、(1)コンテナ群21−1およびコンテナ群21−2が配信するパケットをパケット高速処理層24へ出力すること、(2)コンテナ群21−1が配信するパケットの処理に優先度1を設定し、コンテナ群21−2が配信するパケットの処理に優先度2を設定すること、(3)コンテナ群21−3が配信するパケットをOS25へ出力すること、を指示する設定を行う。この設定は、例えば、コンテナデーモン22が参照する設定ファイルとして、コンテナ動作装置20に保存される。
なお、指示部11は、コンテナ群21−3が配信するパケットについても、パケット高速処理層24へ出力するよう指示してもよい。
Next, the
The
(例2)
また、他の動作例として、ステップS1にて利用者からアプリケーション211a〜213aが要求され、コンテナオーケストレータ10の記憶部13には、アプリケーション211a、アプリケーション212a、アプリケーション213aには、それぞれ優先度4、5、6が設定されているとする(優先度4が最も優先度が高い)。この場合、優先度1,2が設定されたアプリケーションが要求されていないことから、パケット高速処理層24が導入されていないコンテナ動作装置20a〜20cの選択が可能である。コンテナオーケストレータ10の選択部12は、コンテナ動作装置20〜20cの中から、例えば、コンテナ動作装置20aを特定する(ステップS3)。
(Example 2)
Further, as another operation example,
次にコンテナオーケストレータ10は、特定したコンテナ動作装置20aにアプリケーション211aが動作するコンテナ群21−1a、アプリケーション212aが動作するコンテナ群21−2a、アプリケーション213aが動作するコンテナ群21−3aをデプロイする(ステップS4)。このとき、指示部11は、コンテナデーモン22aへ、コンテナ群21−1a〜21−3aが配信するパケットの振り分け方法およびQoS制御について指示する設定を行う。図5(b)に設定内容を例示する。この例の場合、(1)コンテナ群21−1a〜21−3aが配信するパケットをOS25aへ出力すること、(2)コンテナ群21−1aが配信するパケットの処理に優先度4を設定し、コンテナ群21−2aが配信するパケットの処理に優先度5を設定し、コンテナ群21−3aが配信するパケットの処理に優先度6を設定すること、を指示する設定を行う。この設定は、例えば、コンテナデーモン22が参照する設定ファイルとしてコンテナ動作装置20に保存される。
Next, the
次に実際にコンテナ群21−1等からパケットが配信される場面でのパケットの振り分け処理について、図4を参照して説明する。
図4は、本発明の一実施形態による処理の一例を示す第2のフローチャートである。
(例1の場合)
まず、コンテナ群21−1〜21−3からそれぞれ独立してパケットが配信される。コンテナデーモン22は、配信されたパケットを取得する(ステップS11)。
次にコンテナデーモン22のパケット振分部23は、パケット高速処理層24の有無によって動作する(ステップS12)。パケット高速処理層24ありの場合、パケット振分部23は、指示部11の設定に基づいて、パケット高速処理層24に振り分けるか、OS25へ振り分けるかの調整を行う(ステップS13)。
Next, a packet distribution process in a situation where packets are actually delivered from the container group 21-1 and the like will be described with reference to FIG.
FIG. 4 is a second flowchart showing an example of processing according to the embodiment of the present invention.
(In the case of Example 1)
First, packets are delivered independently from the container groups 21-1 to 21-3. The
Next, the
上記の例1の場合、パケット振分部23は、コンテナ群21−1から配信されたパケットには優先度1を付し、コンテナ群21−2から配信されたパケットには優先度2を付して、パケット高速処理層24へ出力する。パケット高速処理層24では、QoS制御機能241が優先制御を行う(ステップS14)。QoS制御機能241は、優先度1が付されたパケットをより優先的に処理する。パケット高速処理層24は、設定された優先度に応じて指定NIC29を通じて、コンテナから配信されたパケットを利用者側へ配信する(ステップS15)。
In the case of Example 1 above, the
また、例えば、パケット振分部23は、コンテナ群21−3から配信されたパケットを、OS25へ出力する。OS25では、カーネル27が、所定のパケット処理を行って、NIC28を通じて、コンテナから配信されたパケットを利用者側へ配信する(ステップS16)。
Further, for example, the
(例2の場合)
コンテナデーモン22aは、コンテナ群21a−1〜21−3aから配信されたパケットを取得する(ステップS11)。
次にコンテナデーモン22aのパケット振分部23aは、パケット高速処理層の有無によって動作する(ステップS12)。パケット高速処理層が無い場合、パケット振分部23aは、指示部11からの設定に基づいてパケットをOS25へ振り分けるよう調整する(ステップS17)。例えば、上記の例2の場合、パケット振分部23aは、コンテナ群21−1aから配信されたパケットには優先度4を付し、コンテナ群21−2aから配信されたパケットには優先度5を付し、コンテナ群21−3aから配信されたパケットには優先度6を付してOS25aへ出力する。OS25aでは、カーネル27aが所定のパケット処理を行う。また、カーネル27aは優先制御を行う(ステップS18)。例えば、カーネル27aは、コンテナデーモン22aから指示された優先度に従って、パケットヘッダのIP Precedence又はDSCPの値を書き換えて、パケットの優先度を変更する。カーネル27aは、優先制御後のパケットを、NIC28を通じて利用者側へ配信する(ステップS19)。
(In the case of Example 2)
The
Next, the
本実施形態によれば、コンテナ動作装置20のコンテナ群21−1等に手を加えることなく、コンテナオーケストレータ10に必要な設定を行い、コンテナデーモン22を導入するだけで、コンテナから配信されるパケットの高速化やQoS制御が可能になる。
例えば、パケット高速処理層24が導入されたコンテナ動作装置20の場合、コンテナ動作装置20で動作する所望のコンテナ群21−1等について、パケット高速処理層24への振り分けを設定するだけで、通信トラフィックを高速化することができる。さらに優先度の設定を行うことで、コンテナ間の優先度を調整することができる。
According to the present embodiment, it is delivered from the container only by making the necessary settings for the
For example, in the case of the
また、パケット高速処理層24を導入していないコンテナ動作装置20aの場合、コンテナ群21−1a等についてOS25aへ振り分けるよう設定し、コンテナ群21−1a〜21−3aの優先度の設定を行うことで、コンテナ間の通信トラフィックの優先度を調整することができる。
Further, in the case of the
これにより、パケット高速処理層24の導入の有無にかかわらず、コンテナ型仮想化システム1内で動作するコンテナの通信トラフィックについてSLAに応じたQoS制御を行うことができる。また、アプリケーションの開発者は、パケット高速処理層24をコンテナへ導入することを考慮せずにアプリケーションの開発に専念できる。また、アプリケーションの開発から提供までを迅速に行うことができる。
As a result, regardless of whether or not the packet high-
(実施例1)
図6は、本発明の一実施形態によるコンテナ型仮想化システムの適用例を示す第1の図である。
図6に、音声通話を行うためのアプリケーション211が動作するコンテナ群21−1、映像配信を行うアプリケーション212が動作するコンテナ群21−2、資料の配信を行うアプリケーション213が動作するコンテナ群21−3を含むコンテナ動作装置20によって、テレビ会議サービスを提供する実施例を示す。
アプリケーション211にはGold、アプリケーション212にはSilver、アプリケーション213にはBronzeの各SLAレベルが設定されている。例えば、コンテナオーケストレータ10は、図5(a)に例示するような設定をコンテナデーモン22に対して行う。コンテナ群21−1から配信される音声データと、コンテナ群21−2から配信される映像データは、パケット高速処理層24を経由して利用者側へ配信される。コンテナ群21−3から配信される資料のデータは、OS25を経由して利用者側へ配信される。
会議では音声データを確実に配信するために、音声データを最優先(Gold)として処理し低ジッタ・低遅延の配信を実現する。映像ストリーミングを中間の優先度(Silver)とし、音声と映像の優先順位をパケット高速処理層24のQoS制御機能241で差別化するが、音声データは映像ストリーミングよりも高優先とする。資料共有の品質の劣化は、会議への影響が小さいため、優先度低(Bronze)とする。
(Example 1)
FIG. 6 is a first diagram showing an application example of a container-type virtualization system according to an embodiment of the present invention.
FIG. 6 shows a container group 21-1 in which the
The SLA levels of Gold are set in the
In the conference, in order to reliably deliver the voice data, the voice data is processed as the highest priority (Gold) to realize low jitter and low delay delivery. Video streaming is set as an intermediate priority (Silver), and the priority of audio and video is differentiated by the
(実施例2)
図7は、本発明の一実施形態によるコンテナ型仮想化システムの適用例を示す第2の図である。
図7に、IOT(Internet of Things)データの処理、加工サービスへの適用例を示す。
人命にかかわる処理や加工速度の低下が許容されない医療用データの処理を行うアプリケーション211にはGold、タイムラグが発生しても問題にはならないが、例えば、GPSが提供する移動中の移動体の位置データの処理など、ある程度のリアルタイム性が求められるアプリケーション212にはSilver、気象データ等のある程度時間が経った後のデータを処理するアプリケーション213にはBronzeの各SLAレベルが設定されている。
この場合も、コンテナオーケストレータ10は、図5(a)に例示するような設定をコンテナデーモン22に対して行う。コンテナ群21−1から配信される医療用データと、コンテナ群21−2から配信される位置データは、パケット高速処理層24を経由して利用者側へ配信される。コンテナ群21−3から配信される気象データは、OS25を経由して利用者側へ配信される。
この例のように独立したサービスを各コンテナのアプリケーションから提供する場合であっても、各アプリケーションのサービスレベルに応じて、コンテナ単位での通信トラフィックの優先制御を行うことが可能である。
(Example 2)
FIG. 7 is a second diagram showing an application example of the container-type virtualization system according to the embodiment of the present invention.
FIG. 7 shows an example of application to processing and processing services of IOT (Internet of Things) data.
There is no problem even if there is a Gold or time lag in the
Also in this case, the
Even when independent services are provided from the applications of each container as in this example, it is possible to perform priority control of communication traffic on a container-by-container basis according to the service level of each application.
アプリケーションのマイクロサービス化により、アプリケーションの開発から提供までが迅速になってきている。しかし、アプリケーションの開発と提供に主眼が置かれており、ネットワークと関連付けたSLAの提供は後回しになっている。本実施形態によれば、迅速なアプリケーション開発と迅速なサービス提供というコンテナ型仮想化の利点を損なわず、SLAを満たすサービスの提供も同時に実現できる。また、コンテナ環境内のパケット高速処理層の有無に関わらず、パケット処理を優先制御することでSLAを満たすサービスを提供することができる。また、コンテナ環境内にパケット高速処理層を適用する際に発生する手間や煩雑な運用管理を省くことができる。 With the shift to microservices of applications, the process from application development to delivery is becoming faster. However, the focus is on application development and delivery, and the provision of SLAs associated with networks has been postponed. According to this embodiment, it is possible to provide a service satisfying the SLA at the same time without impairing the advantages of container-type virtualization such as rapid application development and rapid service provision. Further, regardless of the presence or absence of the packet high-speed processing layer in the container environment, it is possible to provide a service that satisfies the SLA by preferentially controlling packet processing. In addition, it is possible to eliminate the troublesome and complicated operation management that occurs when applying the packet high-speed processing layer in the container environment.
図8は、本発明の一実施形態によるコンテナデーモンの最小構成を示す図である。
図8に示すようにコンテナデーモン22は、少なくともパケット振分部23を備える。
パケット振分部23は、コンテナから配信されるパケットについての振り分け先の設定に基づいて、前記パケットを、前記コンテナが稼働するOS又はパケット高速処理層へ出力する。コンテナデーモン22は、パケット高速処理層の有無と、コンテナ別のパケット処理の優先度とに基づくパケットの振り分け先の設定情報を備えていてもよい。
FIG. 8 is a diagram showing a minimum configuration of a container daemon according to an embodiment of the present invention.
As shown in FIG. 8, the
The
図9は、本発明の一実施形態におけるコンテナ型仮想化システムのハードウェア構成の一例を示す図である。
コンピュータ900は、CPU901、主記憶装置902、補助記憶装置903、入出力インタフェース904、通信インタフェース905を備える。上述のコンテナ動作装置20,20a〜20cは、コンピュータ900に実装される。そして、上述した各機能部の動作は、プログラムの形式で補助記憶装置903に記憶されている。CPU901は、プログラムを補助記憶装置903から読み出して主記憶装置902に展開し、当該プログラムに従って上記処理を実行する。また、CPU901は、プログラムに従って、記憶領域を主記憶装置902に確保する。また、CPU901は、プログラムに従って、処理中のデータを記憶する記憶領域を補助記憶装置903に確保する。
FIG. 9 is a diagram showing an example of the hardware configuration of the container-type virtualization system according to the embodiment of the present invention.
The
なお、少なくとも1つの実施形態において、補助記憶装置903は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、入出力インタフェース904を介して接続される磁気ディスク、光磁気ディスク、CD−ROM、DVD−ROM、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ900に配信される場合、配信を受けたコンピュータ900が当該プログラムを主記憶装置902に展開し、上記処理を実行しても良い。また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置903に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であっても良い。
In at least one embodiment, the
その他、本発明の趣旨を逸脱しない範囲で、上記した実施の形態における構成要素を周知の構成要素に置き換えることは適宜可能である。また、この発明の技術範囲は上記の実施形態に限られるものではなく、本発明の趣旨を逸脱しない範囲において種々の変更を加えることが可能である。 In addition, it is possible to replace the components in the above-described embodiment with well-known components without departing from the spirit of the present invention. Further, the technical scope of the present invention is not limited to the above-described embodiment, and various modifications can be made without departing from the spirit of the present invention.
1・・・コンテナ型仮想化システム
10・・・コンテナオーケストレータ
11・・・指示部
12・・・選択部
13・・・記憶部
20,20a,20b,20c・・・コンテナ動作装置
21−1,21−2,21−3、21−1a,21−2a,21−3a・・・コンテナ群
22、22a・・・コンテナデーモン
23、23a・・・パケット振分部
24・・・パケット高速処理層
241・・・QoS制御機能
25、25a・・・OS
26、26a・・・OVS
27、27a・・・カーネル
28、28a・・・NIC
29・・・指定NIC
30・・・中継装置
NW0、NW1・・・メッセージパス
NW2・・・ネットワーク
NW3・・・外部ネットワーク
900・・・コンピュータ
901・・・CPU
902・・・主記憶装置
903・・・補助記憶装置
904・・・入出力インタフェース
905・・・通信インタフェース
1 ... Container-
26, 26a ... OVS
27, 27a ...
29 ... Designated NIC
30 ... Relay device NW0, NW1 ... Message path NW2 ... Network NW3 ...
902 ...
Claims (10)
を備えるコンテナデーモン。 A packet distribution unit that outputs the packet to the OS in which the container operates or the packet high-speed processing layer based on the setting information of the distribution destination of the packet delivered from the container.
A container daemon with.
請求項1に記載のコンテナデーモン。 It includes setting information of the distribution destination based on the presence / absence of the packet high-speed processing layer and the priority of packet processing for each container.
The container daemon according to claim 1.
OSと、
OSに導入されたパケット高速処理層と、
を備える情報処理装置。 The container daemon according to claim 1 or 2,
OS and
The packet high-speed processing layer introduced in the OS and
Information processing device equipped with.
前記所定の優先度よりも低い優先度を有する前記パケットを前記OSへ出力する、
請求項3に記載の情報処理装置。 The container daemon outputs the packet having a priority higher than a predetermined priority to the packet high-speed processing layer.
The packet having a priority lower than the predetermined priority is output to the OS.
The information processing device according to claim 3.
請求項3または請求項4に記載の情報処理装置。 The packet high-speed processing layer has a function of performing priority control on the processing of the packet.
The information processing device according to claim 3 or 4.
前記パケットの処理について優先制御を行う機能を有するOSと、
を備える情報処理装置。 The container daemon according to claim 1 or 2,
An OS that has a function to perform priority control on packet processing, and
Information processing device equipped with.
前記情報処理装置にて動作するコンテナの制御を行うコンテナオーケストレータと、
を備え、
前記コンテナオーケストレータが、前記情報処理装置のコンテナデーモンに対して、前記パケットの振り分け先の設定を行う、
コンテナ型仮想化システム。 The information processing apparatus according to any one of claims 3 to 6, and the information processing apparatus according to any one of claims 3 to 6.
A container orchestrator that controls the container operating in the information processing device,
With
The container orchestrator sets the packet distribution destination for the container daemon of the information processing device.
Container-type virtualization system.
パケットの高速化が必要なサービスを実行するコンテナを起動する場合、前記パケット高速処理層が導入済みの前記情報処理装置を選択して、選択した前記情報処理装置にて前記コンテナを起動する、
請求項7に記載のコンテナ型仮想化システム。 The container orchestrator stores information on whether or not the packet high-speed processing layer has been introduced for each information processing device.
When starting a container that executes a service that requires high-speed packets, the information processing device in which the packet high-speed processing layer has been introduced is selected, and the container is started by the selected information processing device.
The container-type virtualization system according to claim 7.
コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働するOS又はパケット高速処理層へ出力する、
パケット振り分け方法。 The container daemon
The packet is output to the OS in which the container operates or the packet high-speed processing layer based on the setting information of the distribution destination of the packet delivered from the container.
Packet distribution method.
コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働するOS又はパケット高速処理層へ出力する処理、
を実行させるプログラム。 On the computer
A process of outputting the packet to the OS in which the container operates or the packet high-speed processing layer based on the setting information of the distribution destination of the packet delivered from the container.
A program that executes.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019141338A JP7363167B2 (en) | 2019-07-31 | 2019-07-31 | Container daemon, information processing device, container virtualization system, packet distribution method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019141338A JP7363167B2 (en) | 2019-07-31 | 2019-07-31 | Container daemon, information processing device, container virtualization system, packet distribution method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021027398A true JP2021027398A (en) | 2021-02-22 |
JP7363167B2 JP7363167B2 (en) | 2023-10-18 |
Family
ID=74664132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019141338A Active JP7363167B2 (en) | 2019-07-31 | 2019-07-31 | Container daemon, information processing device, container virtualization system, packet distribution method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7363167B2 (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023275983A1 (en) * | 2021-06-29 | 2023-01-05 | 日本電信電話株式会社 | Virtualization system failure separation device and virtualization system failure separation device method |
WO2023275985A1 (en) * | 2021-06-29 | 2023-01-05 | 日本電信電話株式会社 | Virtualization system failure isolation device and virtualization system failure isolation method |
WO2023275984A1 (en) * | 2021-06-29 | 2023-01-05 | 日本電信電話株式会社 | Virtualization system restoration device and virtualization system restoration method |
WO2024174737A1 (en) * | 2023-02-23 | 2024-08-29 | 中兴通讯股份有限公司 | Method and apparatus for setting process priority level in container |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060245358A1 (en) * | 2005-04-29 | 2006-11-02 | Beverly Harlan T | Acceleration of data packet transmission |
JP2008312094A (en) * | 2007-06-18 | 2008-12-25 | Ricoh Co Ltd | Communication apparatus and program |
JP2013535711A (en) * | 2010-07-21 | 2013-09-12 | 日本電気株式会社 | Computer system and offloading method in computer system |
JP2017538987A (en) * | 2014-09-30 | 2017-12-28 | クアルコム,インコーポレイテッド | System and method for accelerating user agent signaling requests by a transport accelerator |
JP2018087917A (en) * | 2016-11-29 | 2018-06-07 | 日本電気株式会社 | Secret calculation device, secret calculation method and program |
US20180322299A1 (en) * | 2017-05-04 | 2018-11-08 | Dell Products L.P. | Systems and methods for hardware-based security for inter-container communication |
CN108881425A (en) * | 2018-06-07 | 2018-11-23 | 中国科学技术大学 | A kind of data package processing method and system |
JP2019033351A (en) * | 2017-08-07 | 2019-02-28 | 日本電信電話株式会社 | Packet processor and packet processing method |
-
2019
- 2019-07-31 JP JP2019141338A patent/JP7363167B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060245358A1 (en) * | 2005-04-29 | 2006-11-02 | Beverly Harlan T | Acceleration of data packet transmission |
JP2008312094A (en) * | 2007-06-18 | 2008-12-25 | Ricoh Co Ltd | Communication apparatus and program |
JP2013535711A (en) * | 2010-07-21 | 2013-09-12 | 日本電気株式会社 | Computer system and offloading method in computer system |
JP2017538987A (en) * | 2014-09-30 | 2017-12-28 | クアルコム,インコーポレイテッド | System and method for accelerating user agent signaling requests by a transport accelerator |
JP2018087917A (en) * | 2016-11-29 | 2018-06-07 | 日本電気株式会社 | Secret calculation device, secret calculation method and program |
US20180322299A1 (en) * | 2017-05-04 | 2018-11-08 | Dell Products L.P. | Systems and methods for hardware-based security for inter-container communication |
JP2019033351A (en) * | 2017-08-07 | 2019-02-28 | 日本電信電話株式会社 | Packet processor and packet processing method |
CN108881425A (en) * | 2018-06-07 | 2018-11-23 | 中国科学技术大学 | A kind of data package processing method and system |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023275983A1 (en) * | 2021-06-29 | 2023-01-05 | 日本電信電話株式会社 | Virtualization system failure separation device and virtualization system failure separation device method |
WO2023275985A1 (en) * | 2021-06-29 | 2023-01-05 | 日本電信電話株式会社 | Virtualization system failure isolation device and virtualization system failure isolation method |
WO2023275984A1 (en) * | 2021-06-29 | 2023-01-05 | 日本電信電話株式会社 | Virtualization system restoration device and virtualization system restoration method |
WO2024174737A1 (en) * | 2023-02-23 | 2024-08-29 | 中兴通讯股份有限公司 | Method and apparatus for setting process priority level in container |
Also Published As
Publication number | Publication date |
---|---|
JP7363167B2 (en) | 2023-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7363167B2 (en) | Container daemon, information processing device, container virtualization system, packet distribution method and program | |
JP6503575B2 (en) | Method and system for realizing content distribution network based on software defined network | |
US8681614B1 (en) | Quality of service for inbound network traffic flows | |
US10938727B2 (en) | Method and device for offloading processing of data flows | |
US20200351204A1 (en) | Method, apparatus, and system for load balancing of service chain | |
US20170300353A1 (en) | Method for Allocating Communication Path in Cloudified Network, Apparatus, and System | |
EP3422646B1 (en) | Method and device for multi-flow transmission in sdn network | |
US10261834B2 (en) | Method and network node for selecting a media processing unit based on a media service handling parameter value | |
TWI434551B (en) | Driven multicast traffic distribution on link-aggregate-group | |
WO2017045471A1 (en) | Method and apparatus for acquiring service chain information in cloud computing system | |
US20190007322A1 (en) | Virtual network device and related method | |
US9479384B2 (en) | Data stream scheduling method, device, and system | |
JP2017531957A (en) | Method and system for implementing a content distribution network based on a software defined network | |
JP2016510581A (en) | Method, system, and computer-readable medium for providing a sinking Diameter network architecture | |
JP2002527999A (en) | Computer communication that gives quality of service | |
US7656797B2 (en) | Method, computer program product, and apparatus for providing a distributed router architecture | |
US20030033467A1 (en) | Method and apparatus for resource allocation in network router and switch | |
US20230022113A1 (en) | Management method for cdn function virtualization, electronic device, and computer readable medium | |
CN106411735B (en) | A kind of method for configuring route and device | |
EP3417576A1 (en) | Enhance communication of network traffic | |
US10382344B2 (en) | Generating and/or receiving at least one packet to facilitate, at least in part, network path establishment | |
Clemm et al. | High-precision latency forwarding over packet-programmable networks | |
JP5496353B2 (en) | Network resource management method and configuration | |
US20200359359A1 (en) | Network Function Virtualisation | |
KR101590288B1 (en) | Method and system for managing multimedia quality of experience in a transport-independent fashion |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220607 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230309 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230425 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230601 |
|
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: 20230905 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230918 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7363167 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |