The "Hello Trema!" example is one of the simplest OpenFlow controller
implementation. The basic functionality of this controller is to
establish an OpenFlow channel connection with an OpenFlow switch and
output the "Hello 0xabc! (switch's datapath ID)"
message.
This example demonstrates a minimum template for Trema applications written in Ruby. Hence, it's a good starting point to learn about Trema programming.
HelloTrema (./lib/hello_trema.rb
) を改造して次の 2 つの機能を実装しよう。
スイッチを停止したら次のメッセージを表示するようにしてみよう:
Bye 0xabc
- ヒント: スイッチの停止方法
HelloTrema が起動したら次のメッセージを表示するようにしてみよう:
HelloTrema started.
ただし、次の回答ではダメ (なぜダメか?も考えよう)
class HelloTrema < Trema::Controller
def start(_args)
logger.info 'HelloTrema started.'
end
...
- ヒント 1: Object#class メソッド
- ヒント 2: Module#name メソッド