Code Monkey home page Code Monkey logo

phut's Introduction

Welcome to Trema

Build Status Code Climate Coverage Status Dependency Status

Trema is an OpenFlow controller programming framework that provides everything needed to create OpenFlow controllers in Ruby. It provides a high-level OpenFlow library and also a network emulator that can create OpenFlow-based networks for testing on your PC. This self-contained environment helps streamlines the entire process of development and testing.

Prerequisites

  • Ruby 2.0.0 or higher (RVM).
  • Open vSwitch (apt-get install openvswitch-switch).

Documentation

See https://relishapp.com/trema/trema/docs for links to documentation for all APIs.

Sample Code

Study sample code for implementation examples of Trema features. Each sample code project is executable source example of how to write a OpenFlow controller using Trema Ruby API.

Contributors

Special thanks to all contributors for submitting patches. A full list of contributors including their patches can be found at:

https://github.com/trema/trema/contributors

License

Trema is released under the GNU General Public License version 2.0 or MIT License:

phut's People

Contributors

corestate55 avatar otahi avatar yasuhito avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

phut's Issues

Port number specifier syntax

@yasuhito
表題のとおりですが、
仮想NW環境で、デバイスへの接続にポート指定が必要な場合も
あるかと存じます。

ぜひとも、TODOに加えて頂ければ幸いです。

Fail to disable IPv6 in default Raspbian

Hi, I tried 'hello_trema' with phut v0.6.6 on Raspbian(RPi2),
but "No such file or directory" error occurred at:

sh "sudo /sbin/sysctl -w net.ipv6.conf.#{bridge_name}.disable_ipv6=1 -q"

This is because Raspbian disalbes IPv6 by default, so you should enable IPv6 before disabling it.
For example, you should do:

$ sudo modprobe ipv6
$ echo ipv6 | sudo tee -a /etc/modules

ref. https://www.raspbian.org/RaspbianFAQ#How_do_I_enable_or_use_IPv6.3F

My environment:

$ ruby -v
ruby 2.2.3p173 (2015-08-18 revision 51636) [armv7l-linux-eabihf]
$ gem -v
2.4.5.1
$ ./bin/trema --version
trema version 0.5.1
$ ./bin/phut --version
phut version 0.6.6
$ uname -a
Linux raspberrypi 4.1.6-v7+ #812 SMP PREEMPT Thu Sep 10 12:16:06 BST 2015 armv7l GNU/Linux

Setup memo (detailed, but in Japanese):
https://gist.github.com/d4tt/a4c1364df9c35ca80085

Making vswitch and vlink fails in CentOS6 due to sysctl

When I use phut 0.6.6 in CentOS 6.7(32bit), making vswitch and vlink fails. The commands

sudo /sbin/sysctl -w net.ipv6.conf.#{bridge_name}.disable_ipv6=1 -q      # open_vswitch.rb
sudo /sbin/sysctl -w net.ipv6.conf.#{@device_a}.disable_ipv6=1 -q      # virtual_link.rb

result in

error: "-q" must be of the form name=value

and it seems that "-q" is recognized as an argument of "-w". So the command

sudo /sbin/sysctl -q -w net.ipv6.conf.#{bridge_name}.disable_ipv6=1

works in CentOS 6.7 successfully.

My sysctl version is below.

$ sysctl --version
sysctl (procps version 3.2.8)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.