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

オープンソースのフレームワーク/Tremaとは

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

「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

 

参考元サイト

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

Trema最新TOPICS

最新情報はありません。

Trema最新CLOSEUPコラム

イベント情報

無料資料プレゼント

第2回「多要素認証の種類と方法」

講演資料を見るには、 プライバシーポリシーに同意して、送付先メールアドレスをご入力しご請求ください。

またご入力いただきました情報は、当該資料の作成・提供企業とも共有させていただき、当社及び各社のサービス、製品、セミナー、イベントなどのご案内に使用させていただきます。

本資料を見るには次の画面でアンケートに回答していただく必要があります。



  • オープソース書籍(サイド)
  • OSSNEWSに広告を掲載しませんか?

facebook

twitter