[ovs-discuss] GRE Tunnel Creation with JSON RPC

Dmita Levy dlevy022 at fiu.edu
Fri Jul 19 21:11:45 UTC 2013


Simple JSON Transact Request for anyone interested. Should be able to make
the name and uuid feels variable and reuse I think :

{
   "method":"transact",
   "id":"001",
   "params":[
      "Open_vSwitch",
      {
         "op":"insert",
         "table":"Interface",
         "row":{
            "name":"gre1",
            "type":"gre",
            "options":[
               "map",
               [
                  [
                     "remote_ip",
                     "172.16.1.2"
                  ],
                  [
                     "csum",
                     "true"
                  ],
                  [
                     "key",
                     "1"
                  ]
               ]
            ]
         },
         "uuid-name":"gre1"
      },
      {
         "op":"insert",
         "table":"Port",
         "row":{
            "name":"gre1 ",
            "interfaces":[
               "set",
               [
                  [
                     "named-uuid",
                     "gre1"
                  ]
               ]
            ]
         },
         "uuid-name":"new_port"
      },
      {
         "op":"mutate",
         "table":"Bridge",
         "where":[
            [
               "_uuid",
               "==",
               [
                  "uuid",
                  "0b822f5d-cb3e-41d2-930a-237ca1db7c1f"
               ]
            ]
         ],
         "mutations":[
            [
               "ports",
               "insert",
               [
                  "set",
                  [
                     [
                        "named-uuid",
                        "new_port"
                     ]
                  ]
               ]
            ]
         ]
      }
   ]
}

On Fri, Jul 19, 2013 at 5:09 PM, Dmita Levy <dlevy022 at fiu.edu> wrote:

> Thank you for all the help, I was able to create a tunnel on my test host.
> My assumption is that for true Dynamic GRE creation via the OF Controller
> attached to our test bed is that I will need:
>
> 1. A way to extract UUID info from the bridges that will be changed ( to
> insert into the request).
> 2. A JSON Request string (template) with variable parameters to create the
> tunnels. (finished this today)
> 3. A JSON Request string to delete tunnels no longer in use.
>
> Extract > Create > Delete
>
>
> On Fri, Jul 19, 2013 at 1:42 PM, Gurucharan Shetty <shettyg at nicira.com>wrote:
>
>> One way to understand the correct jsonrpc messages (or reverse engineer)
>> is to run a ovs-vsctl command with the "-v" option.
>>
>> ex: ovs-vsctl -v add-br br1
>>
>>
>>
>> On Wed, Jul 17, 2013 at 6:16 PM, Dmita Levy <dlevy022 at fiu.edu> wrote:
>>
>>>  Hello,
>>>
>>> I am Undergraduate student doing Open vSwitch and OpenFlow research so
>>> please bare with me as I am still learning. I am trying to add a GRE
>>> tunnel, using JSON RPC, to an install of Open vSwitch - the only options I
>>> have configured are the "manager" option to listen on ptcp: 6632 and one
>>> bridge named "bridge1". I am connecting successfully and sending the
>>> following request:
>>>
>>> REQUEST:
>>> {"method":"transact","id":"001","params":["Open_vSwitch",{"op":"insert","table":"Interface","row":{"name":"gre1","type":"gre","options":["map",[["remote_ip","172.16.1.2"],["csum","true"],["key","1"]]]},"uuid-name":"new_iface"},{"op":"insert","table":"Port","row":{"name":"gateway
>>> ","interfaces":["set",[["named-uuid","new_iface"]]]},"uuid-name":"new_port"}]}
>>>
>>>
>>> I get the following response:
>>>
>>> {"id":"001","error":null,"result":[{"uuid":["uuid","95ab1d87-5649-49a0-ae58-53efbbcb3757"]},{"uuid":["uuid","aeb7e783-73a3-4717-97e8-7ab629e5ac0c"]}]}
>>>
>>> But when I run the ovs-vsctl show command there is no GRE port info
>>> listed. I am not sure what I am doing wrong. I followed this link
>>> https://mailman.stanford.edu/pipermail/openflow-discuss/2010-February/000744.htmlshowing an example of the correct request and modified it a bit. I also
>>> followed this
>>> http://tools.ietf.org/html/draft-pfaff-ovsdb-proto-02#section-5.2.4 as
>>> well but I'm not sure what I'm missing. I have read the conf.db and I think
>>> I have a good "handle" on that but still know I'm missing something
>>> minor..or possibly major.
>>>
>>> Any help or clarification is appreciated. Thanks in advance.
>>>
>>> -Dmita
>>>
>>>
>>> _______________________________________________
>>> discuss mailing list
>>> discuss at openvswitch.org
>>> http://openvswitch.org/mailman/listinfo/discuss
>>>
>>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://openvswitch.org/pipermail/ovs-discuss/attachments/20130719/4fc19c53/attachment.html>


More information about the discuss mailing list