JP6743696B2 - 計算機システム、遠隔デバイスの接続管理方法及びプログラム - Google Patents
計算機システム、遠隔デバイスの接続管理方法及びプログラム Download PDFInfo
- Publication number
- JP6743696B2 JP6743696B2 JP2016527631A JP2016527631A JP6743696B2 JP 6743696 B2 JP6743696 B2 JP 6743696B2 JP 2016527631 A JP2016527631 A JP 2016527631A JP 2016527631 A JP2016527631 A JP 2016527631A JP 6743696 B2 JP6743696 B2 JP 6743696B2
- Authority
- JP
- Japan
- Prior art keywords
- remote device
- operating system
- guest operating
- remote
- guest
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/10—Program control for peripheral devices
- G06F13/102—Program control for peripheral devices where the programme performs an interfacing function, e.g. device driver
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- 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/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- 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
-
- 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
-
- 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45579—I/O management, e.g. providing access to device drivers or storage
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/604—Address structures or formats
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2101/00—Indexing scheme associated with group H04L61/00
- H04L2101/60—Types of network addresses
- H04L2101/618—Details of network addresses
- H04L2101/622—Layer-2 addresses, e.g. medium access control [MAC] addresses
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Small-Scale Networks (AREA)
- Stored Programmes (AREA)
- Bus Control (AREA)
Description
前者の方法では、CPUの命令セットとしてI/O命令が定義されている。したがって、プログラムがCPU命令を発行することによってバスにI/O命令が出力され、デバイスへのアクセスが行われる。一方、後者の方法では、OSが特定のメモリアドレスにアクセスした際、CPUまたはバスを制御するチップセットが、これをI/O処理に変換してバスに出力することで、デバイスへのアクセスが行われる。上述のように、BIOSがデバイスをスキャンするとき、デバイスが要求するメモリ空間サイズを物理メモリ空間に割り当てるため、割り当てられた物理メモリ空間へのメモリアクセスがI/O命令に置き換わる。以下では、これら2つのデバイスアクセスの方法を総称して「I/O命令」という。
デバイスにアクセスする際には、デバイスを特定するメモリアドレスやIDなどをI/O命令で指定する。
Ethernetもパケットによってデータを転送しているため、以下ではネットワーク上を流れるパケットのことを「ネットワークパケット」と呼ぶ。
次に、本発明の第1の実施形態について図面を参照して詳細に説明する。なお、以下で付記する図面参照符号は、専ら理解を助けるための例示であり、本発明を図示の態様に限定することを意図するものではない。
[第1の形態]
(上記第1の視点による計算機システム参照)
[第2の形態]
第1の形態の計算機システムにおいて、
前記通信制御手段は、前記管理テーブルを参照して、ゲストオペレーティングシステムからのスキャン命令に対する遠隔デバイスからの応答のうち、スキャン命令の送信元のゲストオペレーティングシステムと対応付けられていない遠隔デバイスからの応答を破棄するスキャン結果検査手段として機能する計算機システム。
[第3の形態]
第1又は第2の形態の計算機システムにおいて、
前記遠隔デバイスの起動状態によって変化しない識別情報として、前記遠隔デバイスを備えるリモート装置からのハートビート情報に含まれるMACアドレスを用い、
前記ゲストオペレーティングシステムからスキャン命令が発行された場合、前記バス延長手段は、前記スキャン命令の宛先を前記MACアドレスに書き換えてから転送する計算機システム。
[第4の形態]
第1から第3いずれか一の形態の計算機システムにおいて、
前記遠隔デバイスは、PCI−Expressプロトコルに対応したPCI−Expressデバイスであり、
前記バス延長手段は、PCI−Expressプロトコルに基づくカプセル化を行うことにより前記遠隔デバイスとの間に仮想的なバスを構築する計算機システム。
[第5の形態]
(上記第2の視点による遠隔デバイスの接続管理方法参照)
[第6の形態]
第5の形態の遠隔デバイスの接続管理方法において、
前記遠隔デバイスの起動状態によって変化しない識別情報として、前記遠隔デバイスを備えるリモート装置からのハートビート情報に含まれるMACアドレスを用い、
前記ゲストオペレーティングシステムからスキャン命令が発行された場合、前記バス延長手段は、前記スキャン命令の宛先を前記MACアドレスに書き換えてから転送する遠隔デバイスの接続管理方法。
[第7の形態]
第5又は第6の形態の遠隔デバイスの接続管理方法において、
前記遠隔デバイスは、PCI−Expressプロトコルに対応したPCI−Expressデバイスであり、
前記ゲストオペレーティングシステムと遠隔デバイス間の通信は、PCI−Expressプロトコルに基づくカプセル化を行うことにより前記遠隔デバイスとの間に構築された仮想的なバスを介して行われる遠隔デバイスの接続管理方法。
[第8の形態]
(上記第3の視点によるプログラム参照)
なお、上記第8の形態は、第1の形態と同様に、第2〜第4の形態に展開することが可能である。
101〜10n、10x、X101〜X10n ゲストOS
110、X110 ホストOS
111 仮想BIOS
120、X120 CPU
120A OS実行部
130 周辺デバイス
140、X140、140a 上流ブリッジ(バス延長部(ホスト))
140A バス延長部
141、141a デバイス管理テーブル
141A 管理テーブル
142、142a スキャン結果検査部
142A 通信制御部
143、X141、X421 ネットワークアダプター
150、X150、X510 通信部
200、X20A、X20B、X200 リモート装置
210 通信部
220、X420 下流ブリッジ(バス延長部(リモート))
231〜23n 遠隔デバイス
300、600 ネットワーク
X130 周辺機器
X131 デバイスB
X410 イーサスイッチ
X600 スイッチ
Claims (8)
- ネットワークを介して接続されたリモート装置に含まれる1つ以上の遠隔デバイスとの間に仮想的なバスを構築するバス延長手段と、
仮想ハードウェア環境を構成し、前記遠隔デバイスをゲストオペレーティングシステムに制御させるホストオペレーティングシステムを実行する実行手段と、を備え、
前記バス延長手段は、前記遠隔デバイスの起動状態によって変化しない前記リモート装置の識別情報を用いて前記ゲストオペレーティングシステムと前記遠隔デバイスとの対応関係を管理する管理テーブルを参照して、前記ゲストオペレーティングシステムと前記遠隔デバイス間の通信を制御する通信制御手段を含み、
前記通信制御手段は、
前記ゲストオペレーティングシステムからスキャン命令が発行された場合、前記スキャン命令の宛先を前記リモート装置の前記識別情報に書き換えてから転送する
計算機システム。 - 前記通信制御手段は、前記管理テーブルを参照して、ゲストオペレーティングシステムからのスキャン命令に対する遠隔デバイスからの応答のうち、スキャン命令の送信元のゲストオペレーティングシステムと対応付けられていない遠隔デバイスからの応答を破棄するスキャン結果検査手段として機能する請求項1の計算機システム。
- 前記通信制御手段は、前記遠隔デバイスを備える前記リモート装置から受信したハートビート情報に含まれる前記リモート装置のMACアドレスを前記識別情報として用い、前記ゲストオペレーティングシステムからスキャン命令が発行された場合、前記スキャン命令の宛先を前記リモート装置のMACアドレスに書き換えてから転送する請求項1又は2の計算機システム。
- 前記遠隔デバイスは、PCI−Expressプロトコルに対応したPCI−Expressデバイスであり、
前記バス延長手段は、PCI−Expressプロトコルに基づくカプセル化を行うことにより前記遠隔デバイスとの間に仮想的なバスを構築する請求項1から3いずれか一の計算機システム。 - ネットワークを介して接続されたリモート装置に含まれる1つ以上の遠隔デバイスとの間に仮想的なバスを構築するバス延長手段と、
仮想ハードウェア環境を構成し、前記遠隔デバイスをゲストオペレーティングシステムに制御させるホストオペレーティングシステムを実行する実行手段と、を備える計算機システムにおいて、
前記遠隔デバイスの起動状態によって変化しない前記リモート装置の識別情報を用いて前記ゲストオペレーティングシステムと前記遠隔デバイスとの対応関係を管理する管理テーブルを参照して、前記ゲストオペレーティングシステムからのスキャン命令を前記遠隔デバイスに転送し、
前記管理テーブルを参照して、前記遠隔デバイスからの応答のうち、前記ゲストオペレーティングシステムに転送する応答を選別し、
前記ゲストオペレーティングシステムからスキャン命令が発行された場合、前記スキャン命令の宛先を前記リモート装置の前記識別情報に書き換えてから転送する
遠隔デバイスの接続管理方法。 - 前記遠隔デバイスの起動状態によって変化しない前記識別情報として、前記遠隔デバイスを備える前記リモート装置からのハートビート情報に含まれる前記リモート装置のMACアドレスを用い、
前記ゲストオペレーティングシステムからスキャン命令が発行された場合、前記スキャン命令の宛先を前記リモート装置のMACアドレスに書き換えてから転送する請求項5の遠隔デバイスの接続管理方法。 - 前記遠隔デバイスは、PCI−Expressプロトコルに対応したPCI−Expressデバイスであり、
前記ゲストオペレーティングシステムと遠隔デバイス間の通信を、PCI−Expressプロトコルに基づくカプセル化を行うことにより前記遠隔デバイスとの間に構築された仮想的なバスを介して行う請求項5又は6の遠隔デバイスの接続管理方法。 - ネットワークを介して接続されたリモート装置に含まれる1つ以上の遠隔デバイスとの間に仮想的なバスを構築するバス延長手段と、
仮想ハードウェア環境を構成し、前記遠隔デバイスをゲストオペレーティングシステムに制御させるホストオペレーティングシステムを実行する実行手段と、を備える計算機システムに搭載されたコンピュータに、
前記遠隔デバイスの起動状態によって変化しない前記リモート装置の識別情報を用いて前記ゲストオペレーティングシステムと前記遠隔デバイスとの対応関係を管理する管理テーブルを参照して、前記ゲストオペレーティングシステムからのスキャン命令を前記遠隔デバイスに転送する処理と、
前記管理テーブルを参照して、前記遠隔デバイスからの応答のうち、前記ゲストオペレーティングシステムに転送する応答を選別する処理と、
前記ゲストオペレーティングシステムからスキャン命令が発行された場合、前記スキャン命令の宛先を前記リモート装置の前記識別情報に書き換えてから転送する処理と、
を実行させるためのプログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014121450 | 2014-06-12 | ||
JP2014121450 | 2014-06-12 | ||
PCT/JP2015/002838 WO2015190079A1 (ja) | 2014-06-12 | 2015-06-05 | 計算機システム、遠隔デバイスの接続管理方法及びプログラム記録媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2015190079A1 JPWO2015190079A1 (ja) | 2017-04-20 |
JP6743696B2 true JP6743696B2 (ja) | 2020-08-19 |
Family
ID=54833193
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2016527631A Active JP6743696B2 (ja) | 2014-06-12 | 2015-06-05 | 計算機システム、遠隔デバイスの接続管理方法及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US10157163B2 (ja) |
JP (1) | JP6743696B2 (ja) |
WO (1) | WO2015190079A1 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170097836A1 (en) * | 2015-10-02 | 2017-04-06 | Shigeya Senda | Information processing apparatus |
WO2019124259A1 (ja) * | 2017-12-20 | 2019-06-27 | 日本電気株式会社 | 構成管理装置、構成管理システム、構成管理方法、および、構成管理プログラム |
US11068295B2 (en) | 2019-04-12 | 2021-07-20 | Ghost Locomotion Inc. | Device operation across multiple operating system modalities |
US11157289B2 (en) * | 2019-05-13 | 2021-10-26 | Intel Corporation | Power management method and apparatus for virtualized I/O devices |
AT525057B1 (de) * | 2021-06-25 | 2022-12-15 | Kvm Tec Electronic Gmbh | KVM-System |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4670676B2 (ja) | 2006-02-17 | 2011-04-13 | 日本電気株式会社 | スイッチ及びネットワークブリッジ装置 |
JP2008181387A (ja) * | 2007-01-25 | 2008-08-07 | Nec Corp | I/oバスシステム及びその管理方法 |
US20110047313A1 (en) * | 2008-10-23 | 2011-02-24 | Joseph Hui | Memory area network for extended computer systems |
JP4947081B2 (ja) | 2009-03-30 | 2012-06-06 | 日本電気株式会社 | パススルーi/oデバイスを伴うlparの動的マイグレーション装置、その方法及びそのプログラム |
JP2011145827A (ja) | 2010-01-13 | 2011-07-28 | Hitachi Omron Terminal Solutions Corp | 仮想バスシステム、およびデバイス管理方法 |
JP2011145912A (ja) * | 2010-01-15 | 2011-07-28 | Fujitsu Ltd | 仮想計算機を使用したクライアントシステム、仮想計算機を使用したクライアント制御方法及びそのプログラム |
JP5598148B2 (ja) * | 2010-08-05 | 2014-10-01 | 富士通株式会社 | スイッチング装置、情報処理装置、及びスイッチング装置の制御方法 |
US9721443B2 (en) * | 2013-03-05 | 2017-08-01 | Comcast Cable Communications, Llc | Processing security-related messages |
-
2015
- 2015-06-05 WO PCT/JP2015/002838 patent/WO2015190079A1/ja active Application Filing
- 2015-06-05 US US15/318,012 patent/US10157163B2/en active Active
- 2015-06-05 JP JP2016527631A patent/JP6743696B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JPWO2015190079A1 (ja) | 2017-04-20 |
US10157163B2 (en) | 2018-12-18 |
US20170116151A1 (en) | 2017-04-27 |
WO2015190079A1 (ja) | 2015-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6743696B2 (ja) | 計算機システム、遠隔デバイスの接続管理方法及びプログラム | |
JP6605713B2 (ja) | クラウドコンピューティングシステムにおけるパケット処理方法、ホスト及びシステム | |
CN108111470B (zh) | 容器的部署方法、服务间的通信方法及相关装置 | |
US10324883B2 (en) | Computer system, data-processing apparatus, bus-data transferring method, and computer-readable recording medium for transferring data flowing through system bus | |
JP5529080B2 (ja) | 複数のバーチャルマシーンが物理リソースを個別に設定及びアクセスすることを可能にする方法及びシステム | |
CN111490949B (zh) | 用于转发数据包的方法、网卡、主机设备和计算机系统 | |
US9462047B2 (en) | Network interface controller supporting network virtualization | |
JP5858205B1 (ja) | ネットワークシステムと拠点間ネットワーク連携制御装置及びネットワーク制御方法並びにプログラム | |
US8774055B2 (en) | Switching method | |
US10684880B2 (en) | Allocating and initializing I/O devices at virtual | |
US11165700B2 (en) | Method for improving throughput for encapsulated network traffic | |
WO2015194534A1 (ja) | スイッチ装置とコンピュータシステムと方法並びにプログラム | |
US10911405B1 (en) | Secure environment on a server | |
US10761859B2 (en) | Information processing system, management device, and method for controlling information processing system | |
US9483290B1 (en) | Method and system for virtual machine communication | |
US8589610B2 (en) | Method and system for receiving commands using a scoreboard on an infiniband host channel adaptor | |
JPWO2013150792A1 (ja) | I/oデバイス共有システムおよびi/oデバイス共有方法 | |
JP6548010B2 (ja) | 準仮想化ネットワークデバイス、情報処理装置、情報処理方法、および情報処理プログラム | |
US11722368B2 (en) | Setting change method and recording medium recording setting change program | |
JP2013197919A (ja) | 通信制御装置、通信制御方法および通信制御プログラム | |
US10025739B2 (en) | Information processing system, information processing method, and recording medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161118 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180515 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190702 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190807 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20200128 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200316 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20200325 |
|
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: 20200630 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20200713 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6743696 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |