マジセミドライブ

ウェビナー関連のニュースやITサービス&ツールの最新情報を随時配信します。

OSS情報

2020.01.01

【OSS情報アーカイブ】Trema

【OSS情報アーカイブ】Trema

※当記事に記載されている情報は、古くなっている場合があります。オフィシャルサイトで最新情報をご確認ください。

「Trema」とは

「Trema」基本情報

■概要

Trema(トレマ)とは、Ruby用フルスタックOpenFlowフレームワークです。

■基本説明

Tremaは、OpenFlowコントローラプログラミングフレームワークで、RubyでOpenFlowコントローラを作成するための機能を提供します。

Tremaは自己完結型環境として、「高レベルのOpenFlowライブラリ」「PC上でテストするためのOpenFlowベースのネットワークを作成できるネットワークエミュレータ」を提供することで、開発とテストのプロセス全体を効率化させます。

■「OpenFlow」とは

OpenFlowとは、ソフトウェアによってネットワークの構成を行いSDN(Software-Defined Networking)を実現するための標準の1つです。

OpenFlowは以下の3点で構成されます。
・経路制御「OpenFlowコントローラ」
・データ転送機能「OpenFlowスイッチ」
・コントローラとスイッチがコミュニケーションをするための「OpenFlowプロトコル」

ハードウェアネットワーク機器を必要とせずに、ソフトウェアでスイッチ機能を実装できる点が大きな特徴です。

■動作環境

Tremaは主要Linuxディストリビューションで動作します。

また、動作には「Ruby 2.0.0以上」が必要です。

■導入事例

Tremaは、強力な機能や使いやすさから、国内外の企業/大学/研究機関などの幅広い組織に採用されています。

主な特徴

■OpenFlowプログラミングフレームワーク

Tremaは、Ruby言語用Webアプリケーションフレームワーク「Ruby on Rails」と同様に「プログラミングフレームワーク」を謳っています。Tremaは「OpenFlow版Rails」を目指してOpenFlowプログラミングフレームワークとして設計されています。

開発言語にはRailsと同じくRubyを採用し、HTTPプロトコルの詳細を抽象化した高レベルなAPIが提供されているため、ごく短いコードでOpenFlowコントローラを実装できます。

開発全体をノートPC1台で完結できる数々の開発支援ツールの提供によって、ソフトウェアテストを中心とした反復的で段階的なアジャイル開発を可能にし、生産性を劇的に向上させます。

■コントローラ実行

Tremaでは、コンパイルせずにすぐにコントローラをテストできます。

trema runコマンドにより「コーディング→実行→デバッグ」の開発ループを行えます。

■仮想ネットワーク機能

Tremaの大きな特徴として「仮想ネットワーク機能」があります。

TremaネットワークDSLによりコントローラが実行されるネットワークトポロジを記述できます。ノートPC1台の中に仮想OpenFlowネットワークを作り、そこで開発したコントローラを実行できます。

補足情報

■同様製品

同様な機能を提供する製品として、次のようなものがあります。

オープンソース製品:「Ryu SDN Framework」「OpenDaylight」など。

■オフィシャルサイト

オフィシャルサイト

→GitHub →trema/trema

ライセンス情報

Tremaのライセンスは「the GNU General Public License version 2.0 or MIT License」です。

詳細について、こちらを参照ください。
→GitHub →trema/trema →License

ダウンロード

→GitHub →trema/trema

 

参考元サイト

※定期的にメンテナンスを実施しておりますが、一部情報が古い場合がございます。ご了承ください。

この記事のタグ一覧

おすすめの記事

【トレンド解説】超入門「 スマートファクトリー 」🏭

トレンド解説

2024.04.15

【トレンド解説】超入門「 スマートファクトリー 」🏭

「 スマートファクトリー 」への理解を深めるための解説として、初心者向けにわかりやすくまとめた記事です。「新しい工場の概念」「デジタルツインの活用」「IoT技術による最適化」など、現代の製造業に必要な知識を効果的に学べます。 スマートファクトリー の導入によるメリットを具体的に解説しています。

【IT用語解説】「 デジタルヒューマン 」とは😊

IT用語解説

2024.01.26

【IT用語解説】「 デジタルヒューマン 」とは😊

【IT用語解説】「 デジタルヒューマン 」として、「デジタルヒューマンとは何か?」「どのようにして作成できるのか?」「私たちの世界にどのような影響を与えているのか?」などについて、まとめています。