JP5457916B2 - メモリ共有装置 - Google Patents
メモリ共有装置 Download PDFInfo
- Publication number
- JP5457916B2 JP5457916B2 JP2010085341A JP2010085341A JP5457916B2 JP 5457916 B2 JP5457916 B2 JP 5457916B2 JP 2010085341 A JP2010085341 A JP 2010085341A JP 2010085341 A JP2010085341 A JP 2010085341A JP 5457916 B2 JP5457916 B2 JP 5457916B2
- Authority
- JP
- Japan
- Prior art keywords
- memory
- page
- sharing
- shared
- setting
- 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.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17331—Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/544—Buffers; Shared memory; Pipes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
- H04L69/161—Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
(2)サーバアプリケーションは取得したフレーム番号をグラントテーブルに登録し、そのフレーム番号に対応するインデックス値を取得する。
(3)サーバアプリケーションは、仮想化ホストOSが管理するデータベースに取得したインデックス値を登録させる。
(4)ページを共有する相手先であるゲストOS(クライアント)のクライアントアプリケーションは、データベースよりインデックス値を取得する。
(5)上記(4)に続いて、クライアントアプリケーションはハイパーバイザにマップ要求を出す。
(6)ハイパーバイザは上記マップ要求に応じて、仮想化ゲストOS(サーバ)側のグラントテーブルに対してマップ処理を行う。以上で共有するための処理が終了する。
本発明は、メモリ共有装置として提案される。
このメモリ共有装置は、共有メモリの実体である共有ページと、各共有ページのインデックス値を集めたデータである共有設定ページと、各共有設定ページのページフレーム番号とインデックス値を対応付けて記憶するグラントテーブルとを有するサーバと、グラントテーブルのインデックス値を管理するデータベースを有するホストと、前記共有ページ及び共有設定ページがマップされる共有ページ領域、及び共有設定ページ領域を有するクライアントとを有することを特徴とする。
1.グラントテーブル
「グラントテーブル」とは、仮想化環境(VMM)上で提供されている機能で、共有させたい実メモリ領域のページフレーム番号および共有先のOS(Operating System,以下「OS」)を示すID値を宣言するためのテーブルをいう。共有先のOSからは、このテーブルのどの場所に上記宣言が書かれているかを事前に知っておかなくてはならない。
2.ホストOS
「ホストOS」とは、仮想化環境上で動作するOSであって、動作中のゲストOSの管理・デバイスの管理等を行うOSをいう。
3.ゲストOS
「ゲストOS」とは、仮想化環境上で動作するOSであって、一般的なアプリケーションを動作させるためのOSをいう。
4.サーバ
「サーバ」とは、共有したい実メモリ領域を確保するゲストOSをいう。
5.クライアント
「クライアント」とは、共有したいメモリ領域を自身の仮想アドレス空間にマップするゲストOSをいう。
まず、本発明の一実施形態であるメモリ共有装置の主な構成要素について説明する。
本発明は、共有設定ページを有することを特徴の一つとしている。「共有設定ページ」とは、確保した実メモリ(ページ)に関する情報を共有するための機構(情報)である。共有設定ページを用いることにより、共有させたいページ領域のホストOS上での管理を最小限にすることが可能となる。
次に、上記共有設定ページ10の作成手順について説明する。なお、クライアントを限定した場合と、クライアントを任意に設定してよい場合とに分けて説明する。
まず、クライアントを限定した場合の作成手順について説明する。図2は、クライアントを限定した場合の共有設定ページ10の作成手順の例を示す図である。
次に、クライアントを任意にしてもよい場合の作成手順について説明する。図3は、クライアントを任意にしてもよい場合の共有設定ページ10の作成手順の例を示す図である。
本発明は、上記共有設定ページ10の利用に加えて、個別設定メモリ領域を特徴としてさらに備えていてもよい。
次に、本発明の一実施形態である、メモリ共有装置の構成例について説明する。図5は、本発明の一実施形態である、メモリ共有装置の構成例を示したブロック図である。
次に、第1通信装置1の構成について説明する。第1通信装置1は、共有ページ11、共有設定ページ12、メモリ取得部13、メモリ共有状態更新部14、メモリ共有許可表15、共有設定取得部16、共有設定記録部17を有している。なお、上記の各構成要素は、CPU,プログラム、メモリなどの記憶装置によって実現される機能に相当するものであって、実際にこれら各構成要素に相当する回路、機器が情報処理装置内に装備されていることを要求するものではない(第2通信装置2、管理装置3においても同様)。
共有ページ11は、第1通信装置1及び第2通信装置2間でのデータ送受信に利用する共有メモリの実体であって、前述の共有メモリ用ページ120に相当する。
共有設定ページ12は、第1通信装置1及び第2通信装置2間で共有ページ11を共有しあうために必要である、メモリ共有許可表のインデックス値を集めたデータであり、前述の共有設定ページ10に相当する。
メモリ取得部13は、実メモリを取得する側の通信装置にて動作し、共有ページ11、共有設定ページ12を確保し、そのページフレーム番号を取得する。
メモリ共有状態更新部14は、メモリ取得部13で取得した共有ページ11および共有設定ページ12のページフレーム番号と、共有を許可する第2通信装置2のID値をメモリ共有許可表15に登録する。
メモリ共有許可表15は、第1通信装置1内のページのうち、どのページをどの通信装置へ向けて共有可能にするかを管理した表(データ)であって、前述のグラントテーブル13に相当する。なお、メモリ共有許可表15は、管理装置3によって用意されたものが使用される。
次に、第2通信装置2の構成要素について説明する。第2通信装置2は、共有ページ領域21、共有設定ページ領域22、メモリマップ領域取得部23、メモリマッピング要求部24、個別設定メモリ領域25、共有設定取得部26、及び共有設定記録部27を有している。メモリマップ領域取得部23は、共有ページ領域21及び共有設定ページ領域22に読み取り可能に接続されている。メモリマッピング要求部24は、メモリマップ領域取得部23、個別設定メモリ領域25、及び共有設定取得部26に接続されている。
共有ページ領域21、共有設定ページ領域22はそれぞれ、第1通信装置1の共有ページ11、共有設定ページ12を第2通信装置2のメモリ空間にマップするための領域である。共有処理が終わると、第2通信装置2において共有ページ11、共有設定ページ12と同じ内容を読み書きできるようになる。
次に、管理装置3の構成要素について説明する。管理装置3は、共有設定蓄積部31と、メモリマッピング実施部32とを有している。
次に、上記の構成を有するメモリ共有装置の動作例について説明する。
図6は、図5に示したメモリ共有装置の、クライアントを限定した場合動作例を示すフローチャートである。以下、図5のブロック図及び図6を参照しながら、クライアントを限定した場合のメモリ共有装置の動作例を説明する。
図7、図8は、図5に示したメモリ共有装置の、クライアントを限定した場合動作例を示すフローチャートである。以下、図5のブロック図及び図7、図8を参照しながら、クライアントを任意にしてもよい場合のメモリ共有装置の動作例を説明する。
本実施形態にかかるメモリ共有装置は、仮想化環境にて共有メモリを用いたIP分離装置(IP(Internet Protocol)ネットワークを切断し、通したくないIPパケットを遮断するための装置)としても使用可能である。
本実施態様によれば、共有させたいページの管理を最小限度にすることができる。管理装置3の共有設定蓄積部31に、前もって登録すべきページは「共有設定ページ12の先頭」のみで足りるからである。
11…共有ページ; 12…共有設定ページ; 13…メモリ取得部; 14…メモリ共有状態更新部; 15…メモリ共有許可表; 16…共有設定取得部; 17…共有設定記録部; 21…共有ページ領域; 22…共有設定ページ領域; 23…メモリマップ領域取得部; 24…メモリマッピング要求部;; 25…個別設定メモリ領域; 26…共有設定取得部; 27…共有設定記録部
Claims (4)
- 共有メモリの実体である共有ページと、各共有ページのインデックス値を集めたデータである共有設定ページと、各共有設定ページのページフレーム番号とインデックス値を対応付けて記憶するグラントテーブルとを有するサーバと、
グラントテーブルのインデックス値を管理するデータベースを有するホストと、
前記共有ページ及び共有設定ページがマップされる共有ページ領域、及び共有設定ページ領域を有するクライアントと
を有することを特徴とするメモリ共有装置。 - 前記クライアントは、共有設定ページごとに、マップ管理用ハンドル値及びマップ先頭仮想アドレスを記憶する個別設定メモリ領域をさらに有することを特徴とする、請求項1に記載のメモリ共有装置。
- 共有メモリの実体である共有ページと、
各共有ページのインデックス値を集めたデータである共有設定ページと、
各共有設定ページのページフレーム番号とインデックス値を対応付けて記憶するメモリ共有許可表と
共有ページ及び共有設定ページを確保し、そのページフレーム番号を取得するメモリ取得部と、
メモリ取得部で取得した共有ページおよび共有設定ページのページフレーム番号と、共有を許可する第2通信装置のID値をメモリ共有許可表に登録するメモリ共有状態更新部と、
共有設定蓄積部に登録された、第2通信装置に関する情報を定期的に取得する共有設定取得部と
を有する第1通信装置と、
第1通信装置の共有ページを第2通信装置のメモリ空間にマップするための領域である共有ページ領域と、
第1通信装置の共有設定ページを第2通信装置のメモリ空間にマップするための領域である共有設定ページ領域と、
共有ページ領域、共有設定ページ領域をマップするためのメモリ空間を取得し、その仮想アドレスを取得するメモリマップ領域取得部と、
メモリマッピングの実行要求を出すメモリマッピング要求部と、
共有設定蓄積部のデータを読み出す第2の共有設定取得部と
第2通信装置に関する情報を共有設定蓄積部に書き込む共有設定記録部と
を有する第2通信装置と
共有設定ページに対するメモリ共有許可表のインデックス値を蓄積する共有設定蓄積部と、
第1通信装置、第2通信装置間のメモリマッピングを行うメモリマッピング実施部と
を有する管理装置と
を具備することを特徴とするメモリ共有装置。 - 前記第2通信装置は、共有設定ページごとに、マップ管理用ハンドル値及びマップ先頭仮想アドレスを記憶する個別設定メモリ領域をさらに有することを特徴とする、請求項3に記載のメモリ共有装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010085341A JP5457916B2 (ja) | 2010-04-01 | 2010-04-01 | メモリ共有装置 |
US13/077,021 US20110246600A1 (en) | 2010-04-01 | 2011-03-31 | Memory sharing apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010085341A JP5457916B2 (ja) | 2010-04-01 | 2010-04-01 | メモリ共有装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011216017A JP2011216017A (ja) | 2011-10-27 |
JP5457916B2 true JP5457916B2 (ja) | 2014-04-02 |
Family
ID=44710919
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010085341A Expired - Fee Related JP5457916B2 (ja) | 2010-04-01 | 2010-04-01 | メモリ共有装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20110246600A1 (ja) |
JP (1) | JP5457916B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013052078A1 (en) * | 2011-10-07 | 2013-04-11 | Intel Corporation | Methods and arrangements for extension frames in wireless networks |
US20140136508A1 (en) * | 2012-11-09 | 2014-05-15 | Palo Alto Research Center Incorporated | Computer-Implemented System And Method For Providing Website Navigation Recommendations |
JP6376935B2 (ja) * | 2013-12-26 | 2018-08-22 | キヤノン株式会社 | ネットワークデバイス、ネットワークデバイスの制御方法およびそのプログラム |
US20170003997A1 (en) * | 2015-07-01 | 2017-01-05 | Dell Products, Lp | Compute Cluster Load Balancing Based on Memory Page Contents |
US10581989B2 (en) | 2015-07-30 | 2020-03-03 | Nasdaq, Inc. | Application logging framework |
JP6636964B2 (ja) * | 2017-01-17 | 2020-01-29 | 株式会社インタフェース | ゲートウエイ装置およびゲートウエイシステム |
KR102199509B1 (ko) * | 2019-10-16 | 2021-01-06 | 숭실대학교산학협력단 | 가상화 시스템에서 메모리를 공유하기 위한 메모리 공유 시스템, 방법 및 이를 수행하기 위한 프로그램을 기록한 기록매체 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11126173A (ja) * | 1997-10-22 | 1999-05-11 | Nec Corp | メモリアクセス制御装置およびその記憶媒体 |
JP3874603B2 (ja) * | 2000-11-21 | 2007-01-31 | 株式会社日立製作所 | 計算機システムの共有メモリ構築方法 |
CN101819564B (zh) * | 2009-02-26 | 2013-04-17 | 国际商业机器公司 | 协助在虚拟机之间进行通信的方法和装置 |
-
2010
- 2010-04-01 JP JP2010085341A patent/JP5457916B2/ja not_active Expired - Fee Related
-
2011
- 2011-03-31 US US13/077,021 patent/US20110246600A1/en not_active Abandoned
Also Published As
Publication number | Publication date |
---|---|
US20110246600A1 (en) | 2011-10-06 |
JP2011216017A (ja) | 2011-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11934341B2 (en) | Virtual RDMA switching for containerized | |
JP5457916B2 (ja) | メモリ共有装置 | |
CN107690622B (zh) | 实现硬件加速处理的方法、设备和*** | |
JP7085565B2 (ja) | 分離されたネットワークスタックにわたるインテリジェントなスレッド管理 | |
US8462632B1 (en) | Network traffic control | |
WO2018095138A1 (zh) | 容器的部署方法、服务间的通信方法及相关装置 | |
US9003411B2 (en) | Automated provisioning and configuration of virtual and physical servers | |
US10635474B2 (en) | Systems and methods for virtio based optimization of data packet paths between a virtual machine and a network device for live virtual machine migration | |
US9086907B2 (en) | Apparatus and method for managing virtual machine addresses | |
JP2019528005A (ja) | クラウドコンピューティングシステムにおいて仮想マシンが物理サーバにアクセスするための方法、装置、およびシステム | |
US20100020818A1 (en) | Sharing buffer space in link aggregation configurations | |
CN112910685B (zh) | 实现对容器网络统一管理的方法及装置 | |
US11223519B2 (en) | Storage system for network information | |
JP2021517695A (ja) | クラウドサービスのデータキャッシング | |
US9292466B1 (en) | Traffic control for prioritized virtual machines | |
Abbasi et al. | A performance comparison of container networking alternatives | |
US10706005B2 (en) | File system interface for remote direct memory access | |
CN114510321A (zh) | 资源调度方法、相关装置和介质 | |
JP2016019270A (ja) | 通信方法及び通信プログラム | |
EP3605346A1 (en) | Control device, control system, control method and program | |
WO2016172862A1 (zh) | 一种内存管理方法、设备和*** | |
US11451643B2 (en) | Managed traffic processing for applications with multiple constituent services | |
US20190171584A1 (en) | Access control device, access control method, and recording medium containing access control program | |
US20120166606A1 (en) | Distributed file operation apparatus, distributed file operation method, and non-transitory computer-readable medium storing distributed file operation program | |
US11722368B2 (en) | Setting change method and recording medium recording setting change program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20130221 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130308 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20131120 |
|
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: 20131217 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140110 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5457916 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |