著者
胡 思已 坂本 龍一 近藤 正章 中村 宏 新 善文
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2018-OS-144, no.5, pp.1-7, 2018-07-23

Linux 系 の OS は積極的に開発されており,デバイスドライバの実装スピードも早く,最新のデバイスを安定動作させることが可能であることから,様々な機器に搭載される OS として広く用いられている.一方で,NetBSD は安全で高い移植性を備えた OS であり,アプリケーションやプロトコルスタックの実装にも頑健性があるなど優れた点も多い反面,Linux に比べて最新のデイバスをサポートしていないなどの課題もある.そのため,最新のデバイスにおいて NetBSD がサポートする頑健なプロトコルスタックを用いることは容易ではない.そこで,NetBSD のカーネルをユーザレベルのプロセスとして実装し,NetBSD のプロトコルスタックやアプリケーションを Linux から利用するための Rump kernel が開発されている.これまで,Rump kernel 利用時の通信性能については十分に評価がされておらず,また通信性能の改善に関しても十分に検討されてこなかった.そのため,本稿ではまず,Rump kernel 利用時の通信性能を評価した.その結果,ネイティブな Linux の通信性能に比べて非常に低い性能しか得られないことがわかった.そこで,Rump kernel 利用時の通信性能の向上手法を検討し,実装を行った.初期実装版で評価を行ったところ,Rump kernel を利用したデータ送信では,95.9% 程度の性能向上が得られることがわかった.
著者
河村 裕太 山田 浩史
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2016-OS-137, no.2, pp.1-11, 2016-05-23

データセンタやクラスタ環境で仮想化技術の利用が広がっている.こうした環境では,仮想マシン (VM) を稼働させたまま異なるホスト間で移動する,VM Live Migration という技術を用いることができる.VM を退避したうえでの物理マシンのメンテナンスや,高負荷な VM を移送させて負荷分散が容易になるメリットがある.しかし,現在広く用いられている Pre-copy 方式は,メモリの全ページを転送し,変更の生じたページを逐次再送するため,VM の移送に時間がかかってしまう.また,DBMS を稼働させている VM の移送では事態が深刻化する.DBMS は大容量のデータをキャッシュし,トランザクションによるページの書き換えがあるため,ページの再送が頻発してしまう.本研究では DBMS のキャッシュのページ転送を削減し,仮想マシン移送を高速化させる手法を提案する.提案手法は DBMS のキャッシュのページ転送を省略し,共有ストレージから復元することでページ転送量を減らす.提案手法を Xen 4.4.2,Linux 3.18.20,MySQL 5.6.26 に対して実装した.読み取り専用なワークロードを実行する DBMS を稼働させている VM を移送したところ,最大で約 20%の総移送時間を削減できた.
著者
飯干 寛幸 松本 康太郎 鵜川 始陽
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2020-OS-148, no.2, pp.1-10, 2020-02-20

近年,電源が失われても内容が保持されるメモリとして不揮発性メモリ(NVM)が市場に登場した.NVM を使ったシステムでは,データがキャッシュから NVM に書き出されて初めて永続化される.そのため,いつ電源が失われても良いように,常に NVM 上のデータの整合性を保つための方法が研究されている.その中には,個々のデータ構造を NVM に対応させるアプローチと,汎用のデータ構造を永続化するためのシステムを開発するアプローチがある.本研究では,NVM を使ってデータ構造を永続化するためのシステムである NV-HTM の評価を行った.そのために,NV-HTM を使い永続化した B+-木と,B+-木を NVM に特化させた FPTree の性能を比較した.NV-HTM は性能評価用の DRAM を用いたエミュレータを使うソースコードしか存在しなかったため,実機で動作するように修正が必要だった.FPTree もアルゴリズムの記述から実装する必要があった.これらを実装して比較したところ,NV-HTM は FPTree に比べて遅く,スレッド数を増やしても 4 スレッドまでしかスケールしなかった.そこでさらに,NV-HTM の性能ボトルネックを詳細に調査した.
著者
石川 広男 追川 修一
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-141, no.24, pp.1-6, 2017-07-19

本稿では,Linux の Open Channel SSD 実装である LightNVM を使って,IoT 向け大容量小型コンピュータ Olive に搭載された SSD を管理する実装を試作し,その効果や課題を示す.Open Channel SSD は,SSD の構成方法の一つである.その特徴は,従来であれば SSD のコントローラ内部に実装されていた Flash Translation Layer (FTL) によって隠蔽されている NAND フラッシュメモリのチャンネルへのアクセスを,ホストの OS に公開するというところにある.これによって NAND のチャネルに対するホストアクセスの並列度を向上し,ホストのアプリケーションのワークロードに応じた処理を可能にする.Olive を使った実験では,デバイスの並列度を変更することによって入出力性能も変化することが確かめられた.
著者
二神 翔太 光来 健一
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2016-OS-138, no.18, pp.1-7, 2016-08-01

IaaS 型クラウドではユーザが仮想マシン (VM) にアクセスできるようにするために,帯域外リモート管理と呼ばれる機能を提供している.帯域外リモート管理は,管理 VM と呼ばれる VM を経由してユーザの VM に間接的にアクセスする管理手法である.管理 VM はクラウドのシステム管理者によって管理されているが,クラウド事業者は信頼できるとしても,そのシステム管理者は必ずしも信頼できるとは限らない.悪意のある管理者は管理 VM において帯域外リモート管理の入出力情報を容易に盗聴することができる.そこで本研究では,ネストした仮想化と呼ばれる技術を用いて,仮想化システムの外側で安全に帯域外リモート管理を実現する VSBypass を提案する.VSBypass では,従来のクラウド環境で用いられていた仮想化システムを VM 内で動作させ,その中のユーザ VM で行われる入出力を強制パススルーと呼ばれる機構を用いて仮想化システムの外側で処理する.これにより,帯域外リモート管理の入出力情報がクラウドのシステム管理者に漏洩することを防ぐ.我々は VSBypass を Xen に実装し,情報漏洩が防止できることの確認および,SSH を用いた帯域外リモート管理の性能測定を行った.
著者
熊野 達夫 小沢 年弘
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2016-OS-136, no.2, pp.1-9, 2016-02-22

企業や大学などの組織で仮想デスクトップインフラストラクチャー (VDI) が一般的に使われるようになってきている.VDI では複数のユーザが 1 つのストレージ装置を共有するため,ストレージが性能のボトルネックになる可能性がある.このボトルネックを解消するためには,VDI によるストレージ I/O の特性を知る必要がある.そこで,我々は企業で約 300 ユーザによって大規模に使われている VDI サービスで,サーバとストレージ間のネットワークに流れるデータをキャプチャすることにより,ストレージのトレースを取得した.取得したトレースを,アクセスされるブロックの論理アドレスと時刻の観点で分析した.各ブロックを,アクセス頻度の時間変化の類似性でクラスタリングしたところ,アドレスが連続したブロックが同じクラスタに分類されることが多いことが分かった.また,複数の日にわたってこの傾向が大きくは変化しないことが分かった.この結果から,ブロックごとのアクセス傾向の類似度を利用して効果的に階層制御を行う可能性を見出した.
著者
末竹 将人 木津 巴都希 Surote Wongpaiboon 光来 健一
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2015-OS-135, no.4, pp.1-7, 2015-11-17

仮想マシン (VM) をサービスとしてユーザに提供する IaaS 型クラウドの発展に伴い,一台のサーバで多くの VM を稼働させるだけでなく,大容量メモリを持つ VM も提供されるようになってきた.一方で,VM のマイグレーションを行うには移送先のホストに十分な空きメモリ容量が必要となり,大容量メモリを持つ VM はマイグレーションを行うのが困難になるという問題がある.マイグレーションのために大容量のメモリを備えたホストを確保しておくのはコストの面から難しいことが多いためである.本稿では,大容量メモリを持つ VM を複数のホストに分割してマイグレーションすることを可能とするシステム S-memV を提案する.S-memV は VM の核となる情報と頻繁にアクセスされるメモリを移送先のメインホストに送り,メインホストに入りきらないメモリはサブホストに送る.VM がサブホストにあるメモリを必要とした時には,メインホストとサブホストの間でメモリをスワップする.S-memV はこのような 1 対 N マイグレーションに加えて,N 対 1 マイグレーションおよび複数ホストにまたがる部分マイグレーションもサポートする.我々は S-memV を KVM に実装し,仮想メモリを用いた従来手法よりもマイグレーション時間を短縮できることを示した.
著者
中原 健志 佐藤 美紀子 紫合 治 並木 美太郎
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2015-OS-134, no.21, pp.1-8, 2015-07-28

近年,分散処理の利用場面が増えつつあるが,多くの分散処理系では専用のプログラムを書く必要があり,プログラム変更の手間が大きい.本稿では既存のコマンドを分散して実行する分散シェルについて述べる.本シェルではデータの分割,合成とネットワークを介して利用可能なパイプの機能を追加し,コマンドをネットワークで繋がっている複数台の計算機で分散実行することでプログラムを改変せず手軽に分散処理を実現することを検討した.コマンドの分散実行については,各種の位置透過性が必要であるが,これらを分散向け OS である Plan9[1] の分散透過性を用いることでシェルに実現する.
著者
髙田 陽一郎 川島 英之
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2023-OS-161, no.7, pp.1-6, 2023-09-12

Amazon Redshift のデータベースにも活用される serial safety net(SSN) は,スキャンといった大量の読み込み操作を多く含む一般的ではないワークロードで高性能を出すことが期待されている.しかしこのようなトランザクションは並列性が上がるほど中断しやすくなり,再実行に大きなコストがかかる.SSN は safe retry 特性と呼ばれる,トランザクションが中断した際にその原因が解消され,同じ原因によって再び中断することがないという特性を保有する.本研究ではこの特性を応用し,ロック機構を用いて対象となるトランザクションの中断回数を高々 1 回に抑える手法を提案する.Snapshot isolation と SSN を実装し,read only トランザクションの挙動を分析した.その結果,コミットまでに最大 29 回リトライするトランザクションが発生し,提案手法が原理的に有効であることが示された.
著者
Naoki Matsumoto Akihiro Suda
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2022-OS-156, no.9, pp.1-7, 2022-07-20

”Rootless containers” is a concept to run the entire container runtime and containers without the root privileges. It protects the host environment from attackers exploiting container runtime vulnerabilities. However, when rootless containers communicate with external endpoints, the network performance is very low compared to rootful containers because of the overhead of the user-land TCP/IP implementation called ”slirp4netns”. In this paper, we propose ”bypass4netns” that accelerate TCP/IP communications in rootless containers by bypassing slirp4netns. bypass4netns uses sockets allocated on the host. It switches socket file descriptors in containers to the host's socket file descriptors by intercepting syscalls and injecting the file descriptors, using ioctl (SECCOMP_IOCTL_NOTIF_ADDFD). We confirmed that rootless containers with bypass4netns can achieve more than 10 times faster throughput than rootless containers without it.
著者
松原 克弥 髙川 雄平
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2020-OS-148, no.10, pp.1-8, 2020-02-20

インターネット利用者数の増大に合わせて,比較的小規模な Web サービス基盤に対してもアクセス性能と可用性の両立が求められている.一方,個人などが構築する小規模な Web サービス基盤では,負荷に合わせた計算資源の追加投入や冗長サーバ構成にかかるコストを負担することが難しい場合がある.本研究では,利用できる計算資源が同じ場合でも,動作する OS の内部実装の違いによって性能特性が異なる場合があることに着目する.Web サーバが動作する OS を動的に切り替えることで,計算資源の追加投入や冗長サーバを用いずに,Web サーバのアクセス性能と可用性を両立するシステムの実現を目指す.本稿では,Linux と FreeBSD を対象とした異種 OS 間プロセスマイグレーションの実現手法について述べ,OS を動的に切り替えた際の動作中 Web サーバの性能特性と負荷耐性の変化を実験結果により示す.
著者
畑 輝史 オブラン ピエールルイ 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2020-OS-150, no.7, pp.1-8, 2020-07-23

オンラインゲームにおけるスケーラビリティ向上のため,ゲームのコア・ロジックをクライアンサイドに移譲するようになっている.クライアントサイドのコア・ロジックは原理的に覗き見・改竄が可能であり,いわゆるチート行為の防止・検出が困難となっている.本論文ではチート耐性とスケーラビリティを同時に達成するアーキテクチャを提案する.チート耐性を高めるために Trusted Execution Environment (TEE) を使用し,スケーラビリティのためにピア・ツー・ピア型を採用する.コア・ロジックを TEE 内で実行することで,悪意のあるクライアントからセンシティブなデータおよびコードを保護し,覗き見や改竄を防止する.TEE として Intel SGX を利用し,ZDoom という実際のファーストパーソン・シューティング型のゲームに適用したところ,原理的にチート耐性が向上しているにもかかわらず,チート耐性の低いアーキテクチャと同等のスケーラビリティを達成できることを示す.
著者
小町 芳樹 牧田 俊明 小西 隆介 寺本 純司
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2019-OS-146, no.2, pp.1-9, 2019-05-23

近年では,Linux を用いて NFV 環境を構築する場合などに高性能なネットワーク機能を要求されるが,Linux カーネルのネットワークスタックは高度に複雑化しているためオーバヘッドが大きく,性能面での要求を満たすことが難しい.こういった仮想ネットワークの性能を柔軟に改善する技術として,現在では XDP が注目を集めている.XDP は,Linux カーネルが提供する多様な機能を活かしつつ,ユーザが実装したプログラムを安全にカーネルに挿入できる eBPF を利用して,高速なネットワーク機能を実装できる技術だが,eBPF で挿入されるプログラムは実装面での制約が厳しいため,実用化の妨げになっている.そこで本研究では,難易度の高いネットワーク機能の実装を隠蔽する方式について検討を行った.本稿では一例として,eBPF による機能の挿入を既存の API を通じて透過的にライブラリもしくはカーネル内部で行うことで,従来の操作との互換性を保ちつつ,高速な転送機能を備えた L2 スイッチが実現できることを確認した.さらに隠蔽化の検討を通して,現在の eBPF に不足する機能や課題をユーザビリティの観点で整理し,eBPF そのものに対しても解決すべき課題を明らかにする.
著者
中村 和敬 當仲 寛哲
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-140, no.16, pp.1-8, 2017-05-09

ユニケージ開発手法は UNIX 哲学に基づいたシステム開発手法であり,企業システム開発に 20 年の実績がある.近年のシステム開発では,データベースの構築に多くの場合で RDBMS が用いられる.これに対してユニケージ開発手法では Unix の機能のみを用いてデータベースを構築する.ファイルシステムにテキストファイルとしてデータを格納し,シェルを通じてコマンドでデータを処理する事により,データベースの機能を実現する.本稿では,ユニケージ開発手法に基づく,Unix ファイルシステムとシェルを用いた,データベース構築と操作の方法について概説し,その発展について述べる.
著者
五反田 正太郎 品川 高廣
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2021-OS-151, no.10, pp.1-7, 2021-02-22

実行環境の多様化や DevOps 等の近年の開発手法の普及により,アプリケーションの開発・管理・運用を統一的かつ迅速に行う手法として,コンテナの活用が進んでいる.コンテナイメージは,そうしたコンテナのニーズを満たす要である一方,レジストリからイメージを取得する際に発生する時間がアプリのデプロイ・起動の遅延を増大させる最大のボトルネックともなっている.これに対し,コンテナイメージの遅延取得と呼ばれる手法はイメージの機能や汎用性を損なわずに起動の高速化を達成できる手法であり研究が進んでいる.しかし既存のイメージ遅延取得手法はアプリケーションや既存レジストリ,コンテナランタイム等,既存のコンテナのエコシステムとの間に互換性の問題があり,導入や運用における障壁も大きい.本研究では,コンテナイメージの仕様及びイメージ管理のデファクトスタンダードであるオーバーレイファイルシステムを最大限活かし,高い互換性を持つイメージ遅延取得によるコンテナ起動高速化手法を提案する.
著者
小澤 洋介 品川 高廣
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2021-OS-151, no.9, pp.1-11, 2021-02-22

ライブマイグレーションでは,仮想マシンを動作させたままメモリの内容を移行元から移行先へと同期させるため,移行元で仮想マシンが書き込んだメモリ領域を動的に検知して再転送する必要がある.従来の書き込み検知はページ単位でおこなわれているが,Intel はまもなくサブページ書き込み保護と呼ばれるページより細かい粒度でのメモリ保護が出来る機構を導入予定であり,これをライブマイグレーションに応用することでメモリ転送量の削減やマイグレーション時間の短縮が期待できる.一方,この機構は書き込み時にダーティビットをセットする代わりにページフォルトを発生させるため,実行時の CPU オーバーヘッドの増加が予想される.本研究では,様々なワークロードにおける書き込み操作のトレースからメモリ転送量の削減効果や CPU オーバーヘッドの大きさを分析し,ライブマイグレーションにおけるサブページ書き込み保護機構の有効性を評価した.エミュレータを用いた評価の結果,メモリ転送量の削減によりマイグレーション時間は多くのワークロードにおいて従来方式よりも短縮できることや,あるワークロードではサブページ書き込み保護のみがマイグレーションを完了させられることが分かった.また,CPU オーバーヘッドは,ページのゼロクリア命令を検出して書き込み検知の最適化をおこなうことにより 8.3%~54.5% 程度に抑えられることが分かった.
著者
縣 直道 大須賀 敦俊 窪田 貴文 河野 健二
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-141, no.9, pp.1-6, 2017-07-19

仮想化を利用したクラウド環境では,ひとつの仮想マシン上でひとつのアプリケーションのみを動作させる構成が一般的になっている.このようなクラウド環境の構成に特化した OS が提案 ・ 開発されている.これらの OS では,アプリケーション間の保護をハイパーバイザに任せることで機能を削減し,軽量化 ・ 省メモリ化を実現している.さらに,ベアメタルハイパーバイザ上で動作させることで,OS をアプリケーションに特化させることも可能である.一方で,プロセスの機能を提供しないため,マルチプロセスで動作するアプリケーションに対応することができない.また,ホスト OS の機能を利用することでマルチプロセスに対応した仮想化環境特化 OS の場合,ホスト OS が提供していない機能を実装することができない.本論文では,単一アドレス空間内で複数のプロセスを擬似的に実行させる手法を提案する.これによって,ホスト OS の存在を前提にせずマルチプロセスに対応することができ,既存のクラウド環境特化 OS と同様の軽量化を可能にする.
著者
中田 裕貴 松原 克弥 松本 亮介
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2020-OS-148, no.12, pp.1-8, 2020-02-20

近年,コンテナ型仮想化技術を用いて,マルチテナント向けクラウドコンピューティング基盤を実現する事例が増えている.コンテナ型仮想化システムでは,OS カーネルを共有しつつ,プロセス単位で OS リソースを多重化することで,各コンテナ環境を隔離する.しかし,隔離空間から抜けて,他コンテナに対しての攻撃が可能な OS リソースや機能が存在する.これらの利用は実行権限によって制限されているが,粒度が不十分である.従来,これらの OS リソースの制限をおこなうために,コンテナのセキュリティ機能を用いた制御,仮想マシンを用いた OS 多重化による隔離,ユーザランドにおけるネットワークスタックの再構築などの手法が提案されている.しかし,これらの手法は,設定が柔軟でなかったり,ネットワークのオーバヘッドを増大させる課題があった.本研究では,ハードウェア仮想化技術を用いつつ,OS を多重化せずに軽量かつ柔軟なネットワーク隔離手法を提案する.
著者
古橋 健斗 松本 拓也 福田 浩章
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-140, no.1, pp.1-6, 2017-05-09

クラウドサービスでは,アプリケーションを提供するサービス提供者が物理マシンやネットワークを保有するインフラ提供者から必要に応じてリソース (e.g., 仮想マシン) を確保し,サービスを提供している.サービス提供者は,最大負荷 (必要になる仮想マシンの最大数) を見積もることでサービスの円滑な運用を目指しているが,予め見積もることは難しい.一方,インフラ提供者は,物理マシン,仮想マシンの負荷状況 (e.g, CPU やメモリ使用量) をもとに仮想マシンを再配置し,データセンタ全体の運用効率向上を目指している [1] [2].この検証には実運用に適用することが望ましいが,サービス提供者の SLA を保証する必要があり,実現は難しい.また,大規模なデータセンタを準備することも難しいため,シミュレーションでの検証を行わざるをえない [3].そこで本研究では,RaspberryPI を利用し,サービス提供者,インフラ提供者それぞれの要求を容易にテストできる環境を提供する.具体的には,複数の RaspberryPI を使用した仮想データセンタの構築と負荷状況の監視,仮想マシンの操作を実現する.また,必要に応じて仮想マシンを増減し,スケールアウトする機能を実現する.そして,仮想マシンの移動,スケールアウトを本環境で実行し,その機能性能を示す.
著者
清水 祐太郎 山田 浩史
雑誌
研究報告システムソフトウェアとオペレーティング・システム(OS) (ISSN:21888795)
巻号頁・発行日
vol.2017-OS-140, no.14, pp.1-11, 2017-05-09

メモリ技術の発達により,メインメモリサイズの巨大化が進んでいる.こうした主記憶が大規模な環境では TLB ミスによるレイテンシが問題となる.TLB ミスを減らす手法の一つとして,HugePage の利用が挙げられる.HugePage を利用することによって,ページテーブルの 1 エントリあたりがカバーできるアドレスの範囲が拡大し,TLB のカバレッジも同様に増加する.これまでに HugePage を利用するための手法がいくつか提案されている.しかしながら,アプリケーション自身がメモリ管理を行う場合では,いずれの手法でも十分に効率的な割り当ては行えない.本研究では,アプリケーションレベルでのメモリ管理を考慮しながら,効率的に HugePage を割り当てるための手法を提案する.今回提案する手法によって,必要とする分だけ HugePage を利用することが可能になる.本研究では,提案手法を Linux kernel 4.7.10 と memcached 1.4.31 上に実装を行った.性能評価を行い既存手法と比較した結果,実メモリ使用量のデフォルトからの増加量を 93.6% 程度削減しながら,既存手法の約 99.4% のスループットを達成した.