This patch implements router Ryu application.
packet is forwarded on the static routing table.
The routing table can be set up by the REST commands.

and, Router can handle each vlan groups separately.


--------------------------------------------
* Example

 case: Set static route on vlanID=10
        From: address(172.16.10.0/24) belongs to the 
rest_router(switch_id=0000000000000001)
        To  : address(10.0.255.0/24) belongs to the gateway 
router(192.168.10.20)

  - Following is the rest_router(switch_id=0000000000000001)'s setting.
    If the gateway router operates by the rest_router Ryu applicaion too,
    same setting is required.

 1. add Address data(172.16.10.0/24, default_route=172.16.10.1)
  $ curl -X POST -d '{"address":"172.16.10.1/24"}' 
http://localhost:8080/router/0000000000000001/10

 2. add Address data(192.168.10.0/24, default_route=192.168.10.1)
  $ curl -X POST -d '{"address":"192.168.10.1/24"}' 
http://localhost:8080/router/0000000000000001/10

 3. add Static route(destination=10.0.255.0/24, gateway=192.168.10.20)
  $ curl -X POST -d '{"destination":"10.0.255.0/24","gateway":"192.168.10.20"}' 
http://localhost:8080/router/0000000000000001/10
     - route can not be registered, if gateway's address is not registered as 
'address data'

 4. check of the registered address data and routing data.
  $ curl http://localhost:8080/router/0000000000000001/10

 5. you can send packets from host(172.16.10.0/24) to gateway 
router(192.168.10.20),
     and send to host(10.0.255.0/24) if gateway router is set up correctly.
    (packet needs to contain vlan-tag=10)
--------------------------------------------

Please refer to rest_router.py comments, for other RESTcommand interfaces.



---
 ryu/app/rest_router.py | 1533 ++++++++++++++++++++++++++++++++++++++++++++++++
 ryu/lib/packet/icmp.py |  106 ++++
 2 files changed, 1639 insertions(+)
 create mode 100644 ryu/app/rest_router.py



------------------------------------------------------------------------------
Try New Relic Now & We'll Send You this Cool Shirt
New Relic is the only SaaS-based application performance monitoring service 
that delivers powerful full stack analytics. Optimize and monitor your
browser, app, & servers with just a few lines of code. Try New Relic
and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_may
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to