JP7363167B2 - Container daemon, information processing device, container virtualization system, packet distribution method and program - Google Patents

Container daemon, information processing device, container virtualization system, packet distribution method and program Download PDF

Info

Publication number
JP7363167B2
JP7363167B2 JP2019141338A JP2019141338A JP7363167B2 JP 7363167 B2 JP7363167 B2 JP 7363167B2 JP 2019141338 A JP2019141338 A JP 2019141338A JP 2019141338 A JP2019141338 A JP 2019141338A JP 7363167 B2 JP7363167 B2 JP 7363167B2
Authority
JP
Japan
Prior art keywords
container
packet
information processing
processing device
speed
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
JP2019141338A
Other languages
Japanese (ja)
Other versions
JP2021027398A (en
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.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP2019141338A priority Critical patent/JP7363167B2/en
Publication of JP2021027398A publication Critical patent/JP2021027398A/en
Application granted granted Critical
Publication of JP7363167B2 publication Critical patent/JP7363167B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

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 technology called container virtualization that provides virtualization of an OS (Operating System) on one physical host is known. Container virtualization allows multiple containers to run on a single physical host. For example, a video conference service can be provided by a single physical host that runs an application container for making voice calls, an application container for distributing video, and an application container for distributing document materials. In order to provide comfortable video conferencing services, it is necessary to apply QoS (Quality of Service) requirements (e.g. delay time, jitter, bandwidth) to the communication traffic of each container according to the characteristics of the distributed content. preferable. In other words, it is necessary to be able to apply different QoS requirements to 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 technology related to QoS improvement that can be applied to container-type virtualization environments. For example, when DPDK is introduced into a container, the communication traffic of that container becomes faster. Furthermore, by introducing the DPDK QoS (Quality of Service) framework into containers, 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 communication traffic priority of the audio call container higher than other containers (video, materials) to prevent audio delays during the conference.

なお、特許文献1には、コンテナ仮想化技術に関し、自動的にコンテナを生成する技術について開示されている。例えば、特許文献1には、SLA(Service Level Agreement)に従った特性を持つコンテナを生成する例が開示されている。
また、特許文献2には、コンテナからの通信に関するパケットの処理を、ルックアップテーブルの設定に基づいて、CPU(Central Processing Unit)又はアクセラレータで行う技術が開示されている。特許文献2には、パケットフローの帯域に応じてルックアップテーブルに割り当てるリソースの容量を変更することが開示されている。例えば、ルックアップテーブルに割り当てるリソースの容量を少なくすれば、その分、通信処理にリソースを割り当てることができる。
また、特許文献3には、サービスレベルに応じた中継装置を利用してコンテンツデータの伝送を行う伝送管理システムが開示されている。
Note that, regarding container virtualization technology, Patent Document 1 discloses a technology for automatically generating containers. For example, Patent Document 1 discloses an example of generating a container having characteristics according to SLA (Service Level Agreement).
Further, Patent Document 2 discloses a technology in which a CPU (Central Processing Unit) or an accelerator processes packets related to communication from a container based on settings of a lookup table. Patent Document 2 discloses changing the capacity of resources allocated to a lookup table depending on the bandwidth of a packet flow. For example, if the capacity of resources allocated to lookup tables is reduced, that amount of resources can be allocated to communication processing.
Further, Patent Document 3 discloses a transmission management system that transmits content data using relay devices according to service levels.

特表2019-503535号公報Special table 2019-503535 publication 特開2019-33351号公報JP2019-33351A 特開2017-38251号公報JP2017-38251A

しかし、DPDKのようなパケット高速処理機能を全てのコンテナに対して導入することは現実的ではない。また、ハードウェア制限等の理由で、コンテナ環境内のすべての装置にパケット高速処理機能が導入できるとは限らない。コンテナ仮想化環境において、コンテナに手を加えることなく、ネットワークの高速化やQoS制御を実現する方法が求められている。特許文献1、3には、このような課題を解決する方法は開示されていない。また、特許文献2の技術は、アクセラレータの存在が前提となっており、また、ルックアップテーブル容量の割り当て処理に負荷を要する。 However, it is not realistic to introduce a high-speed packet processing function such as DPDK to all containers. Furthermore, due to hardware limitations and other reasons, it is not always possible to introduce a high-speed packet processing function to all devices within a container environment. In a container virtualization environment, there is a need for a method to achieve network speedup and QoS control without modifying containers. Patent Documents 1 and 3 do not disclose a method for solving such problems. Further, the technique of Patent Document 2 assumes the existence of an accelerator, and requires a load for lookup table capacity allocation processing.

そこでこの発明は、上述の課題を解決するコンテナデーモン、情報処理装置、コンテナ型仮想化システム、パケット振り分け方法及びプログラムを提供することを目的としている。 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又は前記OSに導入されたパケット高速処理層へ出力するパケット振分部、を備える。 According to one aspect of the present invention, a container daemon included in an information processing apparatus is configured to transfer packets to a destination where the container operates, based on setting information of a distribution destination of packets delivered from the container . The information processing apparatus includes a packet distribution unit that outputs to the OS of the information processing device or a packet high-speed processing layer installed in the OS .

また、本発明の他の一態様によれば、情報処理装置は、上記のコンテナデーモンと、OSと、前記OSに導入されたパケット高速処理層と、を備える。 According to another aspect of the present invention, an information processing device includes the container daemon described above, an OS, and a high-speed packet processing layer installed in the OS.

また、本発明の他の一態様によれば、情報処理装置は、上記のコンテナデーモンと、前記パケットの処理について優先制御を行う機能を有するOSと、を備える。 According to another aspect of the present invention, an information processing apparatus includes the container daemon described above and an OS having a function of performing priority control on processing of the packet.

また、本発明の他の一態様によれば、コンテナ型仮想化システムは、1台または複数台の上記の情報処理装置と、前記情報処理装置にて動作するコンテナの制御を行うコンテナオーケストレータと、を備え、前記コンテナオーケストレータが、前記情報処理装置のコンテナデーモンに対して、前記パケットの振り分け先の設定を行う。 According to another aspect of the present invention, a container virtualization system includes one or more of the above information processing devices, and a container orchestrator that controls containers operating on the information processing device. , the container orchestrator sets a destination for distributing the packet to a container daemon of the information processing device.

また、本発明の他の一態様によれば、パケット振り分け方法は、情報処理装置が備えるコンテナデーモンが、コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働する前記情報処理装置のOS又は前記OSに導入されたパケット高速処理層へ出力する。 According to another aspect of the present invention, in the packet distribution method, a container daemon included in the information processing device distributes the packet to the container based on setting information of a distribution destination of the packet distributed from the container. It is output to the OS of the operating information processing device or a packet high-speed processing layer installed in the OS .

また、本発明の他の一態様によれば、プログラムは、情報処理装置のコンピュータに、コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働する前記情報処理装置のOS又は前記OSに導入されたパケット高速処理層へ出力する処理、を実行させる。 According to another aspect of the present invention, the program sends the packets to the computer of the information processing device based on the setting information of the distribution destination of the packets delivered from the container. A process of outputting to the OS of the processing device or a packet high-speed processing layer installed in the OS is executed.

本発明によれば、コンテナ型仮想化環境において、コンテナ側に手を加えることなく、SLAに応じたネットワークのQoS制御を実現することができる。 According to the present invention, network QoS control according to SLA can be realized in a container-type virtualization environment without modifying the container side.

本発明の一実施形態によるコンテナ型仮想化システムの構成例を示す第1の図である。FIG. 1 is a first diagram showing a configuration example of a container-type virtualization system according to an embodiment of the present invention. 本発明の一実施形態によるコンテナ型仮想化システムの構成例を示す第2の図である。FIG. 2 is a second diagram showing a configuration example of a container-type virtualization system according to an embodiment of the present invention. 本発明の一実施形態による処理の一例を示す第1のフローチャートである。It is a 1st flowchart which shows an example of a process by one embodiment of this invention. 本発明の一実施形態による処理の一例を示す第2のフローチャートである。12 is a second flowchart illustrating an example of processing according to an embodiment of the present invention. 本発明の一実施形態によるパケット振り分けの設定例を示す図である。FIG. 3 is a diagram showing an example of settings for packet distribution according to an embodiment of the present invention. 本発明の一実施形態によるコンテナ型仮想化システムの適用例を示す第1の図である。FIG. 1 is a first diagram showing an application example of a container-type virtualization system according to an embodiment of the present invention. 本発明の一実施形態によるコンテナ型仮想化システムの適用例を示す第2の図である。FIG. 2 is a second diagram illustrating an application example of a container-type virtualization system according to an embodiment of the present invention. 本発明の一実施形態によるコンテナデーモンの最小構成を示す図である。FIG. 3 is a diagram showing the minimum configuration of a container daemon according to an embodiment of the present invention. 本発明の一実施形態におけるコンテナ型仮想化システムのハードウェア構成の一例を示す図である。1 is a diagram showing an example of the hardware configuration of a container-type virtualization system in an embodiment of the present invention.

以下、一実施形態に係るコンテナ型仮想化システムについて図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等で稼働するコンテナとの通信を実現にする。
A container-type virtualization system according to one embodiment will be described below 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 virtualization system 1 includes a container orchestrator 10, container operating devices 20, 20a, 20b, and 20c, and a relay device 30.
The container orchestrator 10 is a computer in which software such as a Kubernetes master function is installed. The container operating devices 20 to 20c are computers in which Kubernetes node functions and software such as Docker are installed. The container orchestrator 10 is a master, and the container operating devices 20 to 20c are nodes. Containers operate in the container operating devices 20 to 20c. The relay device 30 is, for example, a computer in which software such as HAproxy is installed. The container orchestrator 10 and each of the container operating devices 20 to 20c are communicably connected via a message path NW1 (management plane). The container orchestrator 10 and the relay device 30 are communicably connected via a message path NW0 (management plane). Control information flows through message paths NW0 and NW1. Furthermore, the container operating devices 20 to 20c and the relay device 30 are communicably connected via a network NW2 (data plane). Further, the relay device 30 is connected to an external network NW3. For example, when a container running on the container operating device 20 or the like is accessed from various devices such as a PC, a tablet, or a smartphone connected to the external network NW3, the relay device 30 mediates the access and the container running on the container operating device 20 or the like is accessed. Realize communication with the container.

コンテナオーケストレータ10は、指示部11と、選択部12と、記憶部13と、を備える。指示部11は、コンテナ動作装置20~20cへ、パケットの振り分けに関する指示を行う。選択部12は、利用者から要求されたサービスを提供するコンテナを起動するコンテナ動作装置を、コンテナ動作装置20~20cの中から選択する。記憶部13は、コンテナ動作装置20~20cのそれぞれについて、パケット高速処理機能が導入されているか否かの情報を記憶している。例えば、記憶部13には、コンテナ動作装置20にはパケット高速処理機能が導入済みであり、コンテナ動作装置20a~20cにはパケット高速処理機能が未導入であるとの情報が格納されている。 The container orchestrator 10 includes an instruction section 11, a selection section 12, and a storage section 13. The instruction unit 11 instructs the container operating devices 20 to 20c regarding packet distribution. The selection unit 12 selects, from among the container operating devices 20 to 20c, a container operating device that starts a container that provides a service requested by a user. The storage unit 13 stores information as to whether or not a high-speed packet processing function is installed for each of the container operating devices 20 to 20c. For example, the storage unit 13 stores information indicating that the high-speed packet processing function has been installed in the container operation device 20, and that the high-speed packet processing function has not been installed in the container operation devices 20a to 20c.

コンテナ動作装置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 container operation device 20 includes container groups 21-1, 21-2, and 21-3, a container daemon 22, a high-speed packet processing layer 24, an OS 25, a NIC (Network Interface Card) 28, and a designated NIC 29. Be prepared.
Each of the container groups 21-1 to 21-3 is one or more containers. For example, an application 211 runs on the container group 21-1, an application 212 runs on the container group 21-2, and an application 213 runs on the container group 21-3.
The container daemon 22 manages the container groups 21-1 to 21-3 that operate on the container operating device 20. For example, the container daemon 22 accepts various commands for the container groups 21-1 to 21-3, and starts or stops the container groups 21-1 to 21-3. Further, the container daemon 22 includes a packet distribution section 23. The packet distribution unit 23 distributes packets distributed by the container groups 21-1 to 21-3 to either the OS 25 or the packet high-speed processing layer 24 according to instructions from the instruction unit 11 of the container orchestrator 10. For example, if the services provided by the applications 211 and 212 are given priority over the services provided by the application 213, the packet distribution unit 23 processes the packets distributed by the container groups 21-1 and 21-2 at high speed. The packets distributed by the container group 21-3 are distributed to the layer 24 and distributed to the OS 25.

パケット高速処理層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-speed processing layer 24 is software such as DPDK that speeds up packet processing. In this embodiment, it is assumed that software capable of QoS control (for example, DPDK QoS framework) is installed in the container operating device 20, as an example. The high-speed packet processing layer 24 bypasses the large overhead packet processing provided by the OS 25 and directly accesses the designated NIC 29 to perform communication. Therefore, the speed of the network can be increased. The high-speed packet processing layer 24 also includes a QoS control function 241. For example, if the priority of the communication traffic of the container group 21-1 is higher than the communication traffic of the container group 21-2, the QoS control function 241 controls the packets delivered by the container group 21-1 to the container group 21-1. It processes the packets with priority over the packets distributed by 21-2. The designated NIC 29 is installed for the packet high-speed processing layer 24, and the packet high-speed processing layer 24 occupies the designated NIC 29.

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 OS 25 includes an OVS 26 and a kernel 27. OVS26 is a virtual switch. The kernel 27 performs general packet processing. Packets distributed from the container daemon 22 to the OS 25 are processed by the kernel 27 and distributed via the NIC 28. Packet processing by the kernel 27 has a higher load and takes more time than processing by the packet high-speed processing layer 24. Note that the kernel 27 may have a function (coloring function) of changing the value of DSCP (Differentiated Services Code Point) and IP Precedence of the packet header. Since the priority of packet processing can be changed by changing the values of DSCP and IP Precedence, QoS control is possible even when packet processing is performed via the OS 25.

図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 container operation device 20 including the high-speed packet processing layer 24 has been described. Next, with reference to FIG. 2, the configuration of the container operating device 20a in which the high-speed packet processing layer 24 is not installed will be described.

コンテナ動作装置20aは、コンテナ群21-1a,21-2a,21-3aと、コンテナデーモン22aと、OS25aと、NIC28aと、を備える。コンテナデーモン22aはパケット振分部23aを備え、OS25aはOVS26a、カーネル27aを備えている。コンテナ動作装置20aは、図1のパケット高速処理層24および指定NIC29に相当する構成を備えていない。
実際のコンテナ型仮想化環境では、ハードウェアの制約やコストなどの様々な理由によってパケット高速処理層24が導入できない、又は、導入の予定があっても未だ導入していない場合がある。コンテナ動作装置20aは、そのような場合のコンテナホストの構成例である。
The container operation device 20a includes container groups 21-1a, 21-2a, and 21-3a, a container daemon 22a, an OS 25a, and a NIC 28a. The container daemon 22a includes a packet distribution section 23a, and the OS 25a includes an OVS 26a and a kernel 27a. The container operating device 20a does not have a configuration corresponding to the packet high-speed processing layer 24 and designated NIC 29 in FIG.
In an actual container-type virtualization environment, the packet high-speed processing layer 24 may not be installed due to various reasons such as hardware constraints and costs, or may not be installed yet even if it is planned to be installed. The container operating device 20a is a configuration example of a container host in such a case.

コンテナ群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 container daemon 22a, the packet distribution unit 23a, the OS 25a, the OVS 26a, the kernel 27a, and the NIC 28a are the container groups 21-1 to 21-3 and the container daemon 22 described in FIG. 1, respectively. , the packet distribution unit 23, the OS 25, the OVS 26, the kernel 27, and the NIC 28.
In the case of the configuration shown in FIG. 2, for example, if the service provided by the application 211a has the highest priority, then the application 212a has the next highest priority, and then the application 213a has the second highest priority, the instruction unit of the container orchestrator 10 11 is a container daemon 22a which distributes all packets delivered by the container groups 21-1a to 21-3a to the OS 25a and processes packets delivered by the container groups 21-1a to 21-3a with the above priority. Instruct to.

パケット振分部23aは、指示部11による指示に従って、コンテナ群21-1a~21-3aが配信するパケットを、OS25aに振り分ける。また、OS25aでは、カーネル27aが指示部11による指示に従って、コンテナ群21-1aが配信するパケットが最優先、コンテナ群21-2aが配信するパケットが2番目の優先、コンテナ群21-3aが配信するパケットが3番目に優先的に処理されるようパケットのヘッダを書き換える。これにより、パケット高速処理層24が導入されていないコンテナ動作装置についても、通信トラフィックのQoS制御が可能になる。 The packet distribution unit 23a distributes packets distributed by the container groups 21-1a to 21-3a to the OS 25a according to instructions from the instruction unit 11. In addition, in the OS 25a, the kernel 27a, according to instructions from the instruction unit 11, gives top priority to packets delivered by the container group 21-1a, second priority to packets delivered by the container group 21-2a, and delivery to the container group 21-3a. The header of the packet is rewritten so that the packet is processed with the third priority. This makes it possible to perform QoS control of communication traffic even for container operating devices in which the high-speed packet processing layer 24 is not installed.

(動作)
次に図3~図5を参照してコンテナ型仮想化システム1の動作について説明する。
図3は、本発明の一実施形態による処理の一例を示す第1のフローチャートである。
図5は、本発明の一実施形態によるパケット振り分けの設定例を示す図である。
まず、中継装置30が利用者トラフィックを受信する(ステップS1)。利用者トラフィックには、利用者が要求するアプリケーションの種類が含まれている。例えば、アプリケーション211、アプリケーション212、アプリケーション213が要求されたとする。中継装置30は、利用者から受信した情報を、メッセージパスNW0を通じてコンテナオーケストレータ10へ通知する(ステップS2)。
(motion)
Next, the operation of the container-type virtualization system 1 will be explained with reference to FIGS. 3 to 5.
FIG. 3 is a first flowchart illustrating an example of processing according to an embodiment of the present invention.
FIG. 5 is a diagram showing an example of settings for packet distribution according to an embodiment of the present invention.
First, the relay device 30 receives user traffic (step S1). User traffic includes the types of applications requested by users. For example, assume that application 211, application 212, and application 213 are requested. The relay device 30 notifies the container orchestrator 10 of the information received from the user via the message path NW0 (step S2).

(例1)
コンテナオーケストレータ10の記憶部13には、予めアプリケーション毎に通信トラフィックの優先度が設定された情報が登録されている。例えば、アプリケーション211、アプリケーション212、アプリケーション213には、それぞれ優先度1、2、3が設定されている(優先度1が最も優先度が高い)。
また、記憶部13には、コンテナ動作装置20~20cごとにパケット高速処理層24の導入の有無が登録されている。例えば、コンテナ動作装置20はパケット高速処理層24が導入済みで、他は未導入であることが登録されている。
また、記憶部13には、優先度1、2のアプリケーションの通信トラフィックについては、パケット高速処理層24で処理させるようにするとの設定が登録されている。
これらの設定は、予め管理者がコンテナオーケストレータ10へ登録したものである。
(Example 1)
Information in which communication traffic priorities are set for each application is registered in advance in the storage unit 13 of the container orchestrator 10. For example, priority levels 1, 2, and 3 are set for application 211, application 212, and application 213, respectively (priority level 1 is the highest priority).
Further, in the storage unit 13, presence or absence of the introduction of the packet high-speed processing layer 24 is registered for each of the container operation devices 20 to 20c. For example, it is registered that the high-speed packet processing layer 24 has been installed in the container operation device 20, but the others have not been installed.
Furthermore, a setting is registered in the storage unit 13 that the communication traffic of applications with priority levels 1 and 2 will be processed by the packet high-speed processing layer 24.
These settings are registered in advance in the container orchestrator 10 by the administrator.

コンテナオーケストレータ10の選択部12は、これらの設定に基づいて、コンテナ動作装置20~20cの中から、アプリケーション211~213の優先度の要件に合うコンテナ動作装置20を特定する(ステップS3)。 Based on these settings, the selection unit 12 of the container orchestrator 10 specifies a container operating device 20 that meets the priority requirements of the applications 211 to 213 from among the container operating devices 20 to 20c (step S3).

次にコンテナオーケストレータ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 container orchestrator 10 deploys a container group 21-1 in which the application 211 operates, a container group 21-2 in which the application 212 operates, and a container group 21-3 in which the application 213 operates on the specified container operating device 20. (Step S4). At this time, the instruction unit 11 performs settings to instruct the container daemon 22 regarding the method of distributing packets distributed by the container groups 21-1 to 21-3 and QoS control. FIG. 5(a) shows an example of the setting contents. In this example, (1) packets delivered by container group 21-1 and container group 21-2 are output to the packet high-speed processing layer 24, and (2) priority is given to processing of packets delivered by container group 21-1. (3) Settings to instruct priority level 1 to be set to priority 1, priority level 2 to processing of packets delivered by container group 21-2, and (3) output of packets delivered by container group 21-3 to OS 25. conduct. This setting is stored in the container operating device 20, for example, as a setting file that the container daemon 22 refers to.
Note that the instruction unit 11 may also instruct the packets distributed by the container group 21-3 to be output to the packet high-speed processing layer 24.

(例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)
In addition, as another example of operation, the applications 211a to 213a are requested by the user in step S1, and the storage unit 13 of the container orchestrator 10 stores the applications 211a, 212a, and 213a with priority levels 4 and 4, respectively. 5 and 6 are set (priority 4 is the highest priority). In this case, since applications set with priorities 1 and 2 are not requested, it is possible to select container operation devices 20a to 20c in which the high-speed packet processing layer 24 is not installed. The selection unit 12 of the container orchestrator 10 specifies, for example, the container operating device 20a from among the container operating devices 20 to 20c (step S3).

次にコンテナオーケストレータ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 container orchestrator 10 deploys a container group 21-1a in which the application 211a operates, a container group 21-2a in which the application 212a operates, and a container group 21-3a in which the application 213a operates on the specified container operating device 20a. (Step S4). At this time, the instruction unit 11 performs settings to instruct the container daemon 22a regarding the method of distributing packets delivered by the container groups 21-1a to 21-3a and QoS control. FIG. 5(b) shows an example of the setting contents. In the case of this example, (1) outputting the packets distributed by the container groups 21-1a to 21-3a to the OS 25a, (2) setting priority 4 to the processing of the packets distributed by the container group 21-1a, Settings are made to instruct priority 5 to be set for processing packets delivered by the container group 21-2a, and priority 6 to be set for processing packets delivered by the container group 21-3a. This setting is stored in the container operating device 20, for example, as a setting file that the container daemon 22 refers to.

次に実際にコンテナ群21-1等からパケットが配信される場面でのパケットの振り分け処理について、図4を参照して説明する。
図4は、本発明の一実施形態による処理の一例を示す第2のフローチャートである。
(例1の場合)
まず、コンテナ群21-1~21-3からそれぞれ独立してパケットが配信される。コンテナデーモン22は、配信されたパケットを取得する(ステップS11)。
次にコンテナデーモン22のパケット振分部23は、パケット高速処理層24の有無によって動作する(ステップS12)。パケット高速処理層24ありの場合、パケット振分部23は、指示部11の設定に基づいて、パケット高速処理層24に振り分けるか、OS25へ振り分けるかの調整を行う(ステップS13)。
Next, the packet distribution process when packets are actually distributed from the container group 21-1 etc. will be explained with reference to FIG.
FIG. 4 is a second flowchart illustrating an example of processing according to an embodiment of the present invention.
(For example 1)
First, packets are delivered independently from the container groups 21-1 to 21-3. The container daemon 22 acquires the distributed packet (step S11).
Next, the packet distribution unit 23 of the container daemon 22 operates depending on the presence or absence of the high-speed packet processing layer 24 (step S12). If the packet high-speed processing layer 24 is present, the packet distribution unit 23 adjusts whether to distribute the packet to the high-speed packet processing layer 24 or to the OS 25 based on the settings of the instruction unit 11 (step S13).

上記の例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 packet sorting unit 23 assigns priority 1 to the packet distributed from the container group 21-1, and assigns priority 2 to the packet distributed from the container group 21-2. and outputs it to the packet high-speed processing layer 24. In the packet high-speed processing layer 24, the QoS control function 241 performs priority control (step S14). The QoS control function 241 processes packets assigned priority 1 more preferentially. The high-speed packet processing layer 24 delivers the packets delivered from the container to the user side via the designated NIC 29 according to the set priority (step S15).

また、例えば、パケット振分部23は、コンテナ群21-3から配信されたパケットを、OS25へ出力する。OS25では、カーネル27が、所定のパケット処理を行って、NIC28を通じて、コンテナから配信されたパケットを利用者側へ配信する(ステップS16)。 Further, for example, the packet distribution unit 23 outputs the packets distributed from the container group 21-3 to the OS 25. In the OS 25, the kernel 27 performs predetermined packet processing and delivers the packets delivered from the container to the user side via the NIC 28 (step S16).

(例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)。
(For example 2)
The container daemon 22a acquires packets distributed from the container groups 21a-1 to 21-3a (step S11).
Next, the packet distribution unit 23a of the container daemon 22a operates depending on the presence or absence of the high-speed packet processing layer (step S12). If there is no high-speed packet processing layer, the packet distribution unit 23a makes adjustments to distribute the packets to the OS 25 based on the settings from the instruction unit 11 (step S17). For example, in the case of Example 2 above, the packet sorting unit 23a assigns priority 4 to the packet distributed from the container group 21-1a, and assigns priority 5 to the packet distributed from the container group 21-2a. The packets distributed from the container group 21-3a are given a priority level of 6 and output to the OS 25a. In the OS 25a, a kernel 27a performs predetermined packet processing. Furthermore, the kernel 27a performs priority control (step S18). For example, the kernel 27a changes the priority of the packet by rewriting the IP Precedence or DSCP value of the packet header according to the priority instructed by the container daemon 22a. The kernel 27a distributes the packet after priority control to the user side via the NIC 28 (step S19).

本実施形態によれば、コンテナ動作装置20のコンテナ群21-1等に手を加えることなく、コンテナオーケストレータ10に必要な設定を行い、コンテナデーモン22を導入するだけで、コンテナから配信されるパケットの高速化やQoS制御が可能になる。
例えば、パケット高速処理層24が導入されたコンテナ動作装置20の場合、コンテナ動作装置20で動作する所望のコンテナ群21-1等について、パケット高速処理層24への振り分けを設定するだけで、通信トラフィックを高速化することができる。さらに優先度の設定を行うことで、コンテナ間の優先度を調整することができる。
According to this embodiment, distribution from containers can be performed by simply making the necessary settings for the container orchestrator 10 and installing the container daemon 22 without modifying the container group 21-1 etc. of the container operating device 20. Packet speeding and QoS control become possible.
For example, in the case of a container operation device 20 in which the packet high-speed processing layer 24 has been introduced, communication can be performed simply by setting the distribution to the packet high-speed processing layer 24 for the desired container group 21-1 etc. operating on the container operation device 20. Traffic can be sped up. Furthermore, by setting the priority, it is possible to adjust the priority between containers.

また、パケット高速処理層24を導入していないコンテナ動作装置20aの場合、コンテナ群21-1a等についてOS25aへ振り分けるよう設定し、コンテナ群21-1a~21-3aの優先度の設定を行うことで、コンテナ間の通信トラフィックの優先度を調整することができる。 In addition, in the case of the container operating device 20a that does not have the high-speed packet processing layer 24 installed, the container group 21-1a etc. should be set to be distributed to the OS 25a, and the priority of the container groups 21-1a to 21-3a should be set. You can adjust the priority of communication traffic between containers.

これにより、パケット高速処理層24の導入の有無にかかわらず、コンテナ型仮想化システム1内で動作するコンテナの通信トラフィックについてSLAに応じたQoS制御を行うことができる。また、アプリケーションの開発者は、パケット高速処理層24をコンテナへ導入することを考慮せずにアプリケーションの開発に専念できる。また、アプリケーションの開発から提供までを迅速に行うことができる。 Thereby, regardless of whether or not the high-speed packet processing layer 24 is introduced, it is possible to perform QoS control according to the SLA for the communication traffic of containers operating within the container-type virtualization system 1. Moreover, the application developer can concentrate on developing the application without considering the introduction of the high-speed packet processing layer 24 into the container. Additionally, it is possible to quickly develop and provide applications.

(実施例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 an application 211 for making voice calls operates, a container group 21-2 in which an application 212 for video distribution operates, and a container group 21- in which an application 213 for distributing materials operates. 3 shows an embodiment in which a video conferencing service is provided by a container operation device 20 including a container operating device 3.
The SLA levels of Gold, Silver, and Bronze are set for the application 211, the application 212, and the application 213, respectively. For example, the container orchestrator 10 configures the container daemon 22 as illustrated in FIG. 5(a). The audio data distributed from the container group 21-1 and the video data distributed from the container group 21-2 are distributed to the user side via the packet high-speed processing layer 24. The data of the materials distributed from the container group 21-3 is distributed to the user side via the OS 25.
In order to reliably deliver audio data during a conference, audio data is processed with top priority (Gold) to achieve delivery with low jitter and low delay. Video streaming is given an intermediate priority (Silver), and the priorities of audio and video are differentiated by the QoS control function 241 of the packet high-speed processing layer 24, but audio data is given higher priority than video streaming. Since the deterioration in the quality of document sharing has little impact on the conference, it is given a low priority (Bronze).

(実施例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 an embodiment of the present invention.
FIG. 7 shows an example of application to IOT (Internet of Things) data processing and processing services.
Applications 211 that process medical data that involves human life or that cannot allow a reduction in processing speed are Gold.Although it is not a problem even if a time lag occurs, for example, the position of a moving object provided by GPS is Silver is set for the application 212 that requires a certain degree of real-time performance such as data processing, and Bronze is set for the application 213 that processes data such as weather data after a certain amount of time has passed.
In this case as well, the container orchestrator 10 performs settings for the container daemon 22 as illustrated in FIG. 5(a). The medical data distributed from the container group 21-1 and the position data distributed from the container group 21-2 are distributed to the user side via the packet high-speed processing layer 24. The weather data distributed from the container group 21-3 is distributed to the user side via the OS 25.
Even when independent services are provided by applications in 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を満たすサービスを提供することができる。また、コンテナ環境内にパケット高速処理層を適用する際に発生する手間や煩雑な運用管理を省くことができる。 The transition from application development to delivery is becoming faster as applications become microservices. However, the main focus is on application development and provision, and the provision of SLA associated with the network has been postponed. According to the present embodiment, it is possible to simultaneously provide services that satisfy SLA without impairing the advantages of container-based virtualization, such as rapid application development and rapid service provision. Further, regardless of the presence or absence of a high-speed packet processing layer in the container environment, it is possible to provide a service that satisfies the SLA by controlling packet processing with priority. Furthermore, it is possible to eliminate the effort and complicated operational management that occur when applying a high-speed packet processing layer within a container environment.

図8は、本発明の一実施形態によるコンテナデーモンの最小構成を示す図である。
図8に示すようにコンテナデーモン22は、少なくともパケット振分部23を備える。
パケット振分部23は、コンテナから配信されるパケットについての振り分け先の設定に基づいて、前記パケットを、前記コンテナが稼働するOS又はパケット高速処理層へ出力する。コンテナデーモン22は、パケット高速処理層の有無と、コンテナ別のパケット処理の優先度とに基づくパケットの振り分け先の設定情報を備えていてもよい。
FIG. 8 is a diagram showing the minimum configuration of a container daemon according to an embodiment of the present invention.
As shown in FIG. 8, the container daemon 22 includes at least a packet distribution section 23.
The packet distribution unit 23 outputs the packet to the OS or high-speed packet processing layer on which the container runs, based on the settings of the distribution destination for the packet distributed from the container. The container daemon 22 may be provided with setting information on where packets are distributed based on the presence or absence of a high-speed packet processing layer and the priority of packet processing for each container.

図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 a container-type virtualization system according to an embodiment of the present invention.
The computer 900 includes a CPU 901, a main storage device 902, an auxiliary storage device 903, an input/output interface 904, and a communication interface 905. The container operating devices 20, 20a to 20c described above are implemented in a computer 900. The operations of each functional unit described above are stored in the auxiliary storage device 903 in the form of a program. The CPU 901 reads the program from the auxiliary storage device 903, expands it to the main storage device 902, and executes the above processing according to the program. Further, the CPU 901 reserves a storage area in the main storage device 902 according to the program. Further, the CPU 901 secures a storage area in the auxiliary storage device 903 to store the data being processed according to the program.

なお、少なくとも1つの実施形態において、補助記憶装置903は、一時的でない有形の媒体の一例である。一時的でない有形の媒体の他の例としては、入出力インタフェース904を介して接続される磁気ディスク、光磁気ディスク、CD-ROM、DVD-ROM、半導体メモリ等が挙げられる。また、このプログラムが通信回線によってコンピュータ900に配信される場合、配信を受けたコンピュータ900が当該プログラムを主記憶装置902に展開し、上記処理を実行しても良い。また、当該プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、当該プログラムは、前述した機能を補助記憶装置903に既に記憶されている他のプログラムとの組み合わせで実現するもの、いわゆる差分ファイル(差分プログラム)であっても良い。 Note that in at least one embodiment, auxiliary storage device 903 is an example of a non-transitory tangible medium. Other examples of non-transitory tangible media include magnetic disks, magneto-optical disks, CD-ROMs, DVD-ROMs, semiconductor memories, etc. connected via the input/output interface 904. Further, when this program is distributed to the computer 900 via a communication line, the computer 900 that received the distribution may develop the program in the main storage device 902 and execute the above processing. Moreover, the program may be for realizing part of the functions described above. Further, the program may be a so-called difference file (difference program) that realizes the above-described functions in combination with other programs already stored in the auxiliary storage device 903.

その他、本発明の趣旨を逸脱しない範囲で、上記した実施の形態における構成要素を周知の構成要素に置き換えることは適宜可能である。また、この発明の技術範囲は上記の実施形態に限られるものではなく、本発明の趣旨を逸脱しない範囲において種々の変更を加えることが可能である。 In addition, it is possible to appropriately replace the components in the above-described embodiments 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 embodiments, and various changes 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-type virtualization system 10...Container orchestrator 11...Instruction section 12...Selection section 13...Storage section 20, 20a, 20b, 20c...Container operating device 21-1 , 21-2, 21-3, 21-1a, 21-2a, 21-3a... Container group 22, 22a... Container daemon 23, 23a... Packet sorting unit 24... Packet high-speed processing Layer 241...QoS control function 25, 25a...OS
26, 26a...OVS
27, 27a...Kernel 28, 28a...NIC
29...Specified NIC
30...Relay devices NW0, NW1...Message path NW2...Network NW3...External network 900...Computer 901...CPU
902... Main storage device 903... Auxiliary storage device 904... Input/output interface 905... Communication interface

Claims (10)

情報処理装置が備えるコンテナデーモンであって、
コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働する前記情報処理装置のOS又は前記OSに導入されたパケット高速処理層へ出力するパケット振分部、
を備えるコンテナデーモン。
A container daemon included in the information processing device,
a packet distribution unit that outputs the packet to an OS of the information processing device on which the container operates or a packet high-speed processing layer installed in the OS, based on setting information of a distribution destination of the packet distributed from the container;
Container daemon with .
前記パケット高速処理層の前記OSへの導入の有無と、前記コンテナ別のパケット処理の優先度とに基づく前記振り分け先の設定情報を備える、
請求項1に記載のコンテナデーモン。
comprising setting information of the distribution destination based on whether the high-speed packet processing layer is installed in the OS and the priority of packet processing for each container;
A container daemon according to claim 1.
請求項1または請求項2に記載のコンテナデーモンと、
OSと、
前記OSに導入されたパケット高速処理層と、
を備える情報処理装置。
A container daemon according to claim 1 or 2,
OS and
a packet high-speed processing layer introduced into the OS;
An information processing device comprising:
前記コンテナデーモンが、所定の優先度よりも高い優先度を有する前記パケットを前記パケット高速処理層へ出力し、
前記所定の優先度よりも低い優先度を有する前記パケットを前記OSへ出力する、
請求項3に記載の情報処理装置。
the container daemon outputs the packet having a higher priority than a predetermined priority to the packet high-speed processing layer;
outputting the packet having a lower priority than the predetermined priority 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 processing of the packet,
The information processing device according to claim 3 or 4.
請求項1または請求項2に記載のコンテナデーモンと、
前記パケットの処理について優先制御を行う機能を有するOSと、
を備える情報処理装置。
A container daemon according to claim 1 or 2,
an OS having a function of performing priority control regarding processing of the packet;
An information processing device comprising:
1台または複数台の請求項3から請求項6の何れか1項に記載の情報処理装置と、
前記情報処理装置にて動作するコンテナの制御を行うコンテナオーケストレータと、
を備え、
前記コンテナオーケストレータが、前記情報処理装置のコンテナデーモンに対して、前記パケットの振り分け先の設定を行う、
コンテナ型仮想化システム。
one or more information processing devices according to any one of claims 3 to 6;
a container orchestrator that controls containers operating in the information processing device;
Equipped with
The container orchestrator configures a destination to which the packet is to be distributed to a container daemon of the information processing device.
Container-based virtualization system.
前記コンテナオーケストレータが、前記情報処理装置ごとにパケット高速処理層が導入済みか否かの情報を記憶し、
パケットの高速化が必要なサービスを実行するコンテナを起動する場合、前記パケット高速処理層が導入済みの前記情報処理装置を選択して、選択した前記情報処理装置にて前記コンテナを起動する、
請求項7に記載のコンテナ型仮想化システム。
The container orchestrator stores information as to whether a high-speed packet processing layer has been introduced for each information processing device,
When starting a container that executes a service that requires high-speed packet processing, selecting the information processing device in which the packet high-speed processing layer has been installed, and starting the container on the selected information processing device;
The container-type virtualization system according to claim 7.
情報処理装置が備えるコンテナデーモンが、
コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働する前記情報処理装置のOS又は前記OSに導入されたパケット高速処理層へ出力する、
パケット振り分け方法。
The container daemon included in the information processing device is
outputting the packet to an OS of the information processing device on which the container operates or a packet high-speed processing layer installed in the OS, based on setting information of a distribution destination of the packet delivered from the container;
Packet distribution method.
情報処理装置のコンピュータに、
コンテナから配信されるパケットの振り分け先の設定情報に基づいて、前記パケットを、前記コンテナが稼働する前記情報処理装置のOS又は前記OSに導入されたパケット高速処理層へ出力する処理、
を実行させるプログラム。
In the computer of the information processing device ,
A process of outputting the packet to an OS of the information processing device on which the container operates or a packet high-speed processing layer installed in the OS, based on setting information of a distribution destination of the packet delivered from the container;
A program to run.
JP2019141338A 2019-07-31 2019-07-31 Container daemon, information processing device, container virtualization system, packet distribution method and program Active JP7363167B2 (en)

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 JP2021027398A (en) 2021-02-22
JP7363167B2 true 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)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2023275983A1 (en) * 2021-06-29 2023-01-05
WO2023275984A1 (en) * 2021-06-29 2023-01-05 日本電信電話株式会社 Virtualization system restoration device and virtualization system restoration method
WO2023275985A1 (en) * 2021-06-29 2023-01-05 日本電信電話株式会社 Virtualization system failure isolation device and virtualization system failure isolation method

Citations (8)

* Cited by examiner, † Cited by third party
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

Patent Citations (8)

* Cited by examiner, † Cited by third party
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

Also Published As

Publication number Publication date
JP2021027398A (en) 2021-02-22

Similar Documents

Publication Publication Date Title
US11405431B2 (en) Method, apparatus, and system for implementing a content switch
JP7363167B2 (en) Container daemon, information processing device, container virtualization system, packet distribution method and program
US8681614B1 (en) Quality of service for inbound network traffic flows
JP6503575B2 (en) Method and system for realizing content distribution network based on software defined network
CN107395501B (en) Cross-domain deployment method of network service function chain
WO2016107418A1 (en) Allocation method, apparatus and system for cloud network communication path
US10019213B1 (en) Composition control method for remote application delivery
CN105577549B (en) A kind of method and system for realizing content distributing network based on software defined network
WO2017167237A1 (en) Systems and methods for service and session continuity in software defined topology management
US10261834B2 (en) Method and network node for selecting a media processing unit based on a media service handling parameter value
CN106059915A (en) System and method for implementing limitation of north-south traffic of tenants based on SDN controller
US7656797B2 (en) Method, computer program product, and apparatus for providing a distributed router architecture
CN106411735B (en) A kind of method for configuring route and device
US11881998B2 (en) System for network-based reallocation of functions
EP3417576A1 (en) Enhance communication of network traffic
Capelle et al. Online virtual links resource allocation in Software-Defined Networks
KR102358821B1 (en) Network classification for applications
Chemeritskiy et al. On QoS management in SDN by multipath routing
KR101590288B1 (en) Method and system for managing multimedia quality of experience in a transport-independent fashion
KR20160025926A (en) Apparatus and method for balancing load to virtual application server
KR102174975B1 (en) Method and apparatus for controlling packet process in software router
WO2023021634A1 (en) Communication control system, communication control method, and communication control program
CN114900470B (en) Flow control method, device, equipment and storage medium
EP3652980A1 (en) Virtual anchoring in anchorless mobile networks
WO2021238763A1 (en) Routing management method, device and system

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