Hi,

On 2014年11月29日 02:04, Clément Rault wrote:
> Hi,
> 
> On 28 November 2014 at 02:23, Yusuke Iwase <[email protected]> wrote:
>> Hi,
>>
>>
>> OpenFlow1.3 Spec describes watch_port/watch_group as follows.
>>
>>   /* Bucket for use in groups. */
>>   struct ofp_bucket {
>>     ...
>>     uint32_t watch_port;   /* Port whose state affects whether this
>>                               bucket is live. Only required for fast
>>                               failover groups. */
>>     uint32_t watch_group;  /* Group whose state affects whether this
>>                               bucket is live. Only required for fast
>>                               failover groups. */
>>     ...
>>   }
>>
>> So, if the watch_port/watch_group is down, a bucket which includes
>> this port and/or group can NOT be a candidate for forwarding.
> 
> I'm not sure that I understand very well how the state of a group can
> be measured. For a port I can understand that we look if the link
> connected to this port is up or down but I don't see how it can be
> done for a group?

I don't know how to confirm which bucket is selected just now by switches.
But switches report the port status (up or down) by using OFPPortStatus 
messages and so on,
So I guess you can estimate which bucket is a candidate for forwarding.

> 
>> Currently, the curl command of ofctl_rest.py is not compatible with masked 
>> vlan tags.
>> But now, we are making patches to support it.
>> Please wait for the patches release.
> 
> Ok thanks, and when do you expect to release the patches?

We posted the patches last week, and the patches are marged by Ryu-devel.
So you can receive it on next Ryu release (version 3.16 maybe) in early this 
month.

> 
> If I understood well if I push these rules:
> $ curl -X POST -d '{
>     "dpid": 1,
>     "type": "FF",
>     "group_id": 1,
>     "buckets": [
>         {
>             "watch_port": 2,
>             "actions": [
>                 {
>                     "type": "OUTPUT",
>                     "port": 2
>                 }
>             ]
>         }
>         {
>             "watch_port": 3,
>             "actions": [
>                 {
>                     "type": "OUTPUT",
>                     "port": 3
>                 }
>             ]
>         }
>     ]
>  }' http://localhost:8080/stats/groupentry/add
> 
> $ curl -X POST -d '{
>     "dpid": 1,
>     "match":{
>         "nw_dst": "11.0.0.2",
>         "eth_type": 2048
>     },
>     "actions":[
>         {
>             "type":"GROUP",
>             "group_id": 1
>         }
>     ]
>  }' http://localhost:8080/stats/flowentry/add
> 
> the switch 1 will send the packet that have for destination 11.0.0.2
> out through the port 2 if the link connected to port 2 is working and
> out through the port 3 (if the link connected to port 2 is not working
> and the one connected to port 3 is working). Right?

I think it's right.
OpenFlow Spec describes like as follows.

-------
OpenFlow1.3.4 Spec:
 5.6.1 Group Types
-------
    ...
  - Optional: fast failover: Execute the first live bucket. Each action bucket 
is associated with
    a specific port and/or group that controls its liveness. The buckets are 
evaluated in the order
    defined by the group, and the first bucket which is associated with a live 
port/group is selected.
    ...
-------

Thanks


> 
> Thanks,
> 
> Best,
> Clément
> 

------------------------------------------------------------------------------
Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
from Actuate! Instantly Supercharge Your Business Reports and Dashboards
with Interactivity, Sharing, Native Excel Exports, App Integration & more
Get technology previously reserved for billion-dollar corporations, FREE
http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
_______________________________________________
Ryu-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ryu-devel

Reply via email to