)]}'
{"doc/source/specs/virtual_tunnel_port.rst":[{"author":{"_account_id":20405,"name":"liuhaixia","email":"liuhaixia315@huawei.com","username":"liuhaixia"},"change_message_id":"e9181cb66874b72e6ec1e8b53b929cc9719cabdc","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        Port gre-tunnel-port"},{"line_number":71,"context_line":"            Interface gre-tunnel-port"},{"line_number":72,"context_line":"                type: gre"},{"line_number":73,"context_line":"                options: {key\u003dflow, remote_ip\u003dflow}"},{"line_number":74,"context_line":"        Port br-int"},{"line_number":75,"context_line":"            Interface br-int"},{"line_number":76,"context_line":"                type: internal"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a98d1f4_04adef30","line":73,"range":{"start_line":73,"start_character":14,"end_line":73,"end_character":35},"updated":"2016-09-30 03:53:37.000000000","message":"It\u0027s better to assign local_ip address, for the host may has multi ip addresses.","commit_id":"6a22b87f6d4c0442b884358c0549b6766f8e8f12"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"e6f309b2ec62815692d06531d704c76a9b473193","unresolved":false,"context_lines":[{"line_number":70,"context_line":"        Port gre-tunnel-port"},{"line_number":71,"context_line":"            Interface gre-tunnel-port"},{"line_number":72,"context_line":"                type: gre"},{"line_number":73,"context_line":"                options: {key\u003dflow, remote_ip\u003dflow}"},{"line_number":74,"context_line":"        Port br-int"},{"line_number":75,"context_line":"            Interface br-int"},{"line_number":76,"context_line":"                type: internal"}],"source_content_type":"text/x-rst","patch_set":2,"id":"3a98d1f4_04c6c847","line":73,"range":{"start_line":73,"start_character":14,"end_line":73,"end_character":35},"in_reply_to":"3a98d1f4_04adef30","updated":"2016-09-30 08:17:17.000000000","message":"It is true, will add it.","commit_id":"6a22b87f6d4c0442b884358c0549b6766f8e8f12"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"659cca2faab61efafee5abf5a207640e3b129b90","unresolved":false,"context_lines":[{"line_number":45,"context_line":"  is 30. User might see unexpected result when using Geneve as underlay"},{"line_number":46,"context_line":"  network and GRE as overlay network."},{"line_number":47,"context_line":"  Besides, Dragonflow uses tunnel ID as identifier of different networks in"},{"line_number":48,"context_line":"  OpenFlow. The tunnel ID is assigned by neutron. Different overlay tunnel"},{"line_number":49,"context_line":"  network might have duplicated tunnel ID. This will cause match problem."},{"line_number":50,"context_line":"  For example, a GRE neutron network has tunnel ID 100, and a Geneve neutron"},{"line_number":51,"context_line":"  network also has tunnel ID 100. In the underlay network, they will both use"}],"source_content_type":"text/x-rst","patch_set":3,"id":"1a95cdbc_b0b44782","line":48,"range":{"start_line":48,"start_character":12,"end_line":48,"end_character":48},"updated":"2016-10-07 11:58:44.000000000","message":"Aren\u0027t they assigned by Dragonflow, in https://github.com/openstack/dragonflow/blob/master/dragonflow/controller/df_local_controller.py#L425 ? Is there a duplication?","commit_id":"d22be9d40e4507d310e7563e41d8b0dab1be798f"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"d5a0e7d5cfff0f3577e1bdb9c96f6e27b8ed43e7","unresolved":false,"context_lines":[{"line_number":45,"context_line":"  is 30. User might see unexpected result when using Geneve as underlay"},{"line_number":46,"context_line":"  network and GRE as overlay network."},{"line_number":47,"context_line":"  Besides, Dragonflow uses tunnel ID as identifier of different networks in"},{"line_number":48,"context_line":"  OpenFlow. The tunnel ID is assigned by neutron. Different overlay tunnel"},{"line_number":49,"context_line":"  network might have duplicated tunnel ID. This will cause match problem."},{"line_number":50,"context_line":"  For example, a GRE neutron network has tunnel ID 100, and a Geneve neutron"},{"line_number":51,"context_line":"  network also has tunnel ID 100. In the underlay network, they will both use"}],"source_content_type":"text/x-rst","patch_set":3,"id":"1a95cdbc_9ec65e66","line":48,"range":{"start_line":48,"start_character":12,"end_line":48,"end_character":48},"in_reply_to":"1a95cdbc_b0b44782","updated":"2016-10-08 02:02:29.000000000","message":"The dragonflow code is for the local network id, it is a local identifier of neutron network for the OpenFlow.\n\nThe tunnel ID in the spec is the provider:segmentation_id of the tunnel type network in Neutron. It is actually applied in the underlay network to isolate different networks(like vlan id for vlan network). Neutron thinks different tunnel types will be in different underlay networks, so the GRE network\u0027s provider:segmentation_id might be the same as VXLAN network\u0027s provider:segmentation_id.\n\nWhen I think this part, I mean the flow in table 0 to match the network package of the same network, which comes from different hosts. Now it is\n\n match\u003dtun_id:T, actions\u003dload:N-\u003eOXM_OF_METADATA[],resubmit(,INGRESS_DESTINATION_PORT_LOOKUP_TABLE)\n\nI will add more details here to eliminate the confusion.","commit_id":"d22be9d40e4507d310e7563e41d8b0dab1be798f"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"659cca2faab61efafee5abf5a207640e3b129b90","unresolved":false,"context_lines":[{"line_number":82,"context_line":"types, the tunnel port will be deleted when restart Dragonflow controller."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"The ofport of each tunnel type will be recorded as global variable across"},{"line_number":85,"context_line":"the lifecyle of Dragonflow controller."},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"The tunnel_type field of chassis will be changed from a string to a list"},{"line_number":88,"context_line":"of supported tunnel types."}],"source_content_type":"text/x-rst","patch_set":3,"id":"1a95cdbc_d0155349","line":85,"updated":"2016-10-07 11:58:44.000000000","message":"The OVS db monitor can inform the controller in case of change.","commit_id":"d22be9d40e4507d310e7563e41d8b0dab1be798f"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"d5a0e7d5cfff0f3577e1bdb9c96f6e27b8ed43e7","unresolved":false,"context_lines":[{"line_number":82,"context_line":"types, the tunnel port will be deleted when restart Dragonflow controller."},{"line_number":83,"context_line":""},{"line_number":84,"context_line":"The ofport of each tunnel type will be recorded as global variable across"},{"line_number":85,"context_line":"the lifecyle of Dragonflow controller."},{"line_number":86,"context_line":""},{"line_number":87,"context_line":"The tunnel_type field of chassis will be changed from a string to a list"},{"line_number":88,"context_line":"of supported tunnel types."}],"source_content_type":"text/x-rst","patch_set":3,"id":"1a95cdbc_9eabbe74","line":85,"in_reply_to":"1a95cdbc_d0155349","updated":"2016-10-08 02:02:29.000000000","message":"The ofport will be updated, if the tunnel port updates. I will add more details here.","commit_id":"d22be9d40e4507d310e7563e41d8b0dab1be798f"},{"author":{"_account_id":20229,"name":"Omer Anson","email":"omer.anson@toganetworks.com","username":"oanson"},"change_message_id":"659cca2faab61efafee5abf5a207640e3b129b90","unresolved":false,"context_lines":[{"line_number":99,"context_line":"hosted_ports will be added to such chassis in local cache. hosted_ports has the"},{"line_number":100,"context_line":"ids of remote ports that are hosted by the *remote* chassis. Creating or"},{"line_number":101,"context_line":"deleting remote port will change hosted_ports. If last remote port is deleted,"},{"line_number":102,"context_line":"the *remote* chassis will be deleted from local cache."},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"The chassis update event from northbound DB will be notified to dragonflow"},{"line_number":105,"context_line":"applications. So that the OpenFlow can be updated when chassis updates, for"}],"source_content_type":"text/x-rst","patch_set":3,"id":"1a95cdbc_8b8f1e29","line":102,"updated":"2016-10-07 11:58:44.000000000","message":"Isn\u0027t this done today with remote port functionality, only in the other direction? The port contains the chassis in its binding profile. This information is also cloud-wide, i.e. all compute nodes need to have this info. Then why keep it only in the local cache?\n\nAdditionally, is this information of the controller, or only the application that will be responsible for the tunnelling?","commit_id":"d22be9d40e4507d310e7563e41d8b0dab1be798f"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"d5a0e7d5cfff0f3577e1bdb9c96f6e27b8ed43e7","unresolved":false,"context_lines":[{"line_number":99,"context_line":"hosted_ports will be added to such chassis in local cache. hosted_ports has the"},{"line_number":100,"context_line":"ids of remote ports that are hosted by the *remote* chassis. Creating or"},{"line_number":101,"context_line":"deleting remote port will change hosted_ports. If last remote port is deleted,"},{"line_number":102,"context_line":"the *remote* chassis will be deleted from local cache."},{"line_number":103,"context_line":""},{"line_number":104,"context_line":"The chassis update event from northbound DB will be notified to dragonflow"},{"line_number":105,"context_line":"applications. So that the OpenFlow can be updated when chassis updates, for"}],"source_content_type":"text/x-rst","patch_set":3,"id":"1a95cdbc_5e0e963b","line":102,"in_reply_to":"1a95cdbc_8b8f1e29","updated":"2016-10-08 02:02:29.000000000","message":"It is the information that will be needed by all df controllers(while, only be used in the app that will be responsible for the tunneling). I write this part it to keep the current remote port implementation, which has a cache in the df-controller for remote chassis. But we can store the remote chassis in nb DB.\n\nMoreover, we can just use the information in the remote port. Actually, only the tunnel type and remote ip is needed for remote connection. Maybe we don\u0027t even need to store chassis in the local cache, if this spec is applied. Let me think more about this part, and bring it in next PS.","commit_id":"d22be9d40e4507d310e7563e41d8b0dab1be798f"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"2811f99ee5b535bda861b0b28d66c2041c04c5cb","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":"   This work is licensed under a Creative Commons Attribution 3.0 Unported"},{"line_number":3,"context_line":" License."},{"line_number":4,"context_line":""},{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_061a0417","line":3,"range":{"start_line":2,"start_character":0,"end_line":3,"end_character":9},"updated":"2016-10-08 07:38:07.000000000","message":"please consider uniform the beginning spec format:\nhttps://review.openstack.org/#/c/383994/","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ed870bbd83d82c6217fa5ba15292563255bb2f58","unresolved":false,"context_lines":[{"line_number":1,"context_line":".."},{"line_number":2,"context_line":"   This work is licensed under a Creative Commons Attribution 3.0 Unported"},{"line_number":3,"context_line":" License."},{"line_number":4,"context_line":""},{"line_number":5,"context_line":" http://creativecommons.org/licenses/by/3.0/legalcode"},{"line_number":6,"context_line":""}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_2601c006","line":3,"range":{"start_line":2,"start_character":0,"end_line":3,"end_character":9},"in_reply_to":"1a95cdbc_061a0417","updated":"2016-10-08 08:45:34.000000000","message":"Done","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":22060,"name":"jingting","email":"kangjingting@huawei.com","username":"jingting"},"change_message_id":"4aabd0be30cb0df6d2f05f9e8454f3bb0a75a48b","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Currently, Dragonflow node will create a tunnel port for every other Dragonflow"},{"line_number":21,"context_line":"node in the in the OpenStack cloud. This has several problems in real use case."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* Every tunnel port will occupy one ofport in the bridge. Since Dragonflow"},{"line_number":24,"context_line":"  doesn\u0027t have a dedicated bridge(like the br-tun in neutron) for tunnel port,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_d461a73a","line":21,"range":{"start_line":21,"start_character":41,"end_line":21,"end_character":44},"updated":"2016-10-08 06:45:02.000000000","message":"have","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":22060,"name":"jingting","email":"kangjingting@huawei.com","username":"jingting"},"change_message_id":"4aabd0be30cb0df6d2f05f9e8454f3bb0a75a48b","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Currently, Dragonflow node will create a tunnel port for every other Dragonflow"},{"line_number":21,"context_line":"node in the in the OpenStack cloud. This has several problems in real use case."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* Every tunnel port will occupy one ofport in the bridge. Since Dragonflow"},{"line_number":24,"context_line":"  doesn\u0027t have a dedicated bridge(like the br-tun in neutron) for tunnel port,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_746c5335","line":21,"range":{"start_line":21,"start_character":5,"end_line":21,"end_character":18},"updated":"2016-10-08 06:45:02.000000000","message":"typo","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ed870bbd83d82c6217fa5ba15292563255bb2f58","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Currently, Dragonflow node will create a tunnel port for every other Dragonflow"},{"line_number":21,"context_line":"node in the in the OpenStack cloud. This has several problems in real use case."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* Every tunnel port will occupy one ofport in the bridge. Since Dragonflow"},{"line_number":24,"context_line":"  doesn\u0027t have a dedicated bridge(like the br-tun in neutron) for tunnel port,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_6905590f","line":21,"range":{"start_line":21,"start_character":41,"end_line":21,"end_character":44},"in_reply_to":"1a95cdbc_431b1e81","updated":"2016-10-08 08:45:34.000000000","message":"Same question here.","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ed870bbd83d82c6217fa5ba15292563255bb2f58","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Currently, Dragonflow node will create a tunnel port for every other Dragonflow"},{"line_number":21,"context_line":"node in the in the OpenStack cloud. This has several problems in real use case."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* Every tunnel port will occupy one ofport in the bridge. Since Dragonflow"},{"line_number":24,"context_line":"  doesn\u0027t have a dedicated bridge(like the br-tun in neutron) for tunnel port,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_49025d0b","line":21,"range":{"start_line":21,"start_character":5,"end_line":21,"end_character":18},"in_reply_to":"1a95cdbc_746c5335","updated":"2016-10-08 08:45:34.000000000","message":"Done","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":7805,"name":"Li Ma","email":"skywalker.nick@gmail.com","username":"Nick"},"change_message_id":"bc9a75855eed08adac0875daf695b49c06a26755","unresolved":false,"context_lines":[{"line_number":18,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":19,"context_line":""},{"line_number":20,"context_line":"Currently, Dragonflow node will create a tunnel port for every other Dragonflow"},{"line_number":21,"context_line":"node in the in the OpenStack cloud. This has several problems in real use case."},{"line_number":22,"context_line":""},{"line_number":23,"context_line":"* Every tunnel port will occupy one ofport in the bridge. Since Dragonflow"},{"line_number":24,"context_line":"  doesn\u0027t have a dedicated bridge(like the br-tun in neutron) for tunnel port,"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_431b1e81","line":21,"range":{"start_line":21,"start_character":41,"end_line":21,"end_character":44},"in_reply_to":"1a95cdbc_d461a73a","updated":"2016-10-08 07:16:21.000000000","message":"why not \u0027has\u0027?","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"2b9cb6e0b1978f4360fabad10b51071f6d58801c","unresolved":false,"context_lines":[{"line_number":35,"context_line":".. [#] https://review.openstack.org/#/c/365077/"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"* Dragonflow only supports one type of tunnel underlay network one time."},{"line_number":38,"context_line":"  Multiple underlay tunnel type can be support, but that will aggravate"},{"line_number":39,"context_line":"  the problems described above."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"* Since one type of tunnel underlay network is supported one time, the"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_941b9f72","line":38,"range":{"start_line":38,"start_character":39,"end_line":38,"end_character":46},"updated":"2016-10-08 03:12:19.000000000","message":"supported","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"2b9cb6e0b1978f4360fabad10b51071f6d58801c","unresolved":false,"context_lines":[{"line_number":35,"context_line":".. [#] https://review.openstack.org/#/c/365077/"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"* Dragonflow only supports one type of tunnel underlay network one time."},{"line_number":38,"context_line":"  Multiple underlay tunnel type can be support, but that will aggravate"},{"line_number":39,"context_line":"  the problems described above."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"* Since one type of tunnel underlay network is supported one time, the"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_74129358","line":38,"range":{"start_line":38,"start_character":27,"end_line":38,"end_character":31},"updated":"2016-10-08 03:12:19.000000000","message":"types","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ed870bbd83d82c6217fa5ba15292563255bb2f58","unresolved":false,"context_lines":[{"line_number":35,"context_line":".. [#] https://review.openstack.org/#/c/365077/"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"* Dragonflow only supports one type of tunnel underlay network one time."},{"line_number":38,"context_line":"  Multiple underlay tunnel type can be support, but that will aggravate"},{"line_number":39,"context_line":"  the problems described above."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"* Since one type of tunnel underlay network is supported one time, the"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_8908e529","line":38,"range":{"start_line":38,"start_character":27,"end_line":38,"end_character":31},"in_reply_to":"1a95cdbc_74129358","updated":"2016-10-08 08:45:34.000000000","message":"Done","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ed870bbd83d82c6217fa5ba15292563255bb2f58","unresolved":false,"context_lines":[{"line_number":35,"context_line":".. [#] https://review.openstack.org/#/c/365077/"},{"line_number":36,"context_line":""},{"line_number":37,"context_line":"* Dragonflow only supports one type of tunnel underlay network one time."},{"line_number":38,"context_line":"  Multiple underlay tunnel type can be support, but that will aggravate"},{"line_number":39,"context_line":"  the problems described above."},{"line_number":40,"context_line":""},{"line_number":41,"context_line":"* Since one type of tunnel underlay network is supported one time, the"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_a90be122","line":38,"range":{"start_line":38,"start_character":39,"end_line":38,"end_character":46},"in_reply_to":"1a95cdbc_941b9f72","updated":"2016-10-08 08:45:34.000000000","message":"Done","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":9044,"name":"Will","email":"wangjian.ika@bytedance.com","username":"Will"},"change_message_id":"47dc5bf27ca7a95472a08d452f02a71e8924a9f2","unresolved":false,"context_lines":[{"line_number":56,"context_line":"Proposed Change"},{"line_number":57,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"Create one virtual tunnel port for each supported tunnel types. So, no matter"},{"line_number":60,"context_line":"how many Dragonflow nodes are there in the OpenStack cloud, each node will only"},{"line_number":61,"context_line":"need to create and maitain several tunnel ports. These tunnel ports will be"},{"line_number":62,"context_line":"created at the Dragonflow controller\u0027s first startup."}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_e3942a8c","line":59,"range":{"start_line":59,"start_character":57,"end_line":59,"end_character":62},"updated":"2016-10-08 07:27:21.000000000","message":"type","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ed870bbd83d82c6217fa5ba15292563255bb2f58","unresolved":false,"context_lines":[{"line_number":56,"context_line":"Proposed Change"},{"line_number":57,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"Create one virtual tunnel port for each supported tunnel types. So, no matter"},{"line_number":60,"context_line":"how many Dragonflow nodes are there in the OpenStack cloud, each node will only"},{"line_number":61,"context_line":"need to create and maitain several tunnel ports. These tunnel ports will be"},{"line_number":62,"context_line":"created at the Dragonflow controller\u0027s first startup."}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_e9116953","line":59,"range":{"start_line":59,"start_character":57,"end_line":59,"end_character":62},"in_reply_to":"1a95cdbc_e3942a8c","updated":"2016-10-08 08:45:34.000000000","message":"Done","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"2b9cb6e0b1978f4360fabad10b51071f6d58801c","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                type: internal"},{"line_number":79,"context_line":"    ovs_version: \"2.5.0\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The supported tunnel types can be configured through configuration file. If"},{"line_number":82,"context_line":"new tunnel type is added, the new tunnel port will be created when restart"},{"line_number":83,"context_line":"Dragonflow controller. If a tunnel type is removed from the supported tunnel"},{"line_number":84,"context_line":"types, the tunnel port will be deleted when restart Dragonflow controller."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"The ofport of each tunnel type will be recorded as global variable across"},{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_f42ce39a","line":84,"range":{"start_line":81,"start_character":0,"end_line":84,"end_character":74},"updated":"2016-10-08 03:12:19.000000000","message":"Did you consider the same logic when ovsdb/openflow reconnected or even in the df cli configured by user?","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"7f1c5b13a4f1e92ec185dc28147c545be3537a9a","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                type: internal"},{"line_number":79,"context_line":"    ovs_version: \"2.5.0\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The supported tunnel types can be configured through configuration file. If"},{"line_number":82,"context_line":"new tunnel type is added, the new tunnel port will be created when restart"},{"line_number":83,"context_line":"Dragonflow controller. If a tunnel type is removed from the supported tunnel"},{"line_number":84,"context_line":"types, the tunnel port will be deleted when restart Dragonflow controller."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"The ofport of each tunnel type will be recorded as global variable across"},{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_cf110806","line":84,"range":{"start_line":81,"start_character":0,"end_line":84,"end_character":74},"in_reply_to":"1a95cdbc_094bf559","updated":"2016-10-09 01:53:39.000000000","message":"yes, maybe the logic is similar and just consider it in future:)","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ed870bbd83d82c6217fa5ba15292563255bb2f58","unresolved":false,"context_lines":[{"line_number":78,"context_line":"                type: internal"},{"line_number":79,"context_line":"    ovs_version: \"2.5.0\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The supported tunnel types can be configured through configuration file. If"},{"line_number":82,"context_line":"new tunnel type is added, the new tunnel port will be created when restart"},{"line_number":83,"context_line":"Dragonflow controller. If a tunnel type is removed from the supported tunnel"},{"line_number":84,"context_line":"types, the tunnel port will be deleted when restart Dragonflow controller."},{"line_number":85,"context_line":""},{"line_number":86,"context_line":"The ofport of each tunnel type will be recorded as global variable across"},{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_094bf559","line":84,"range":{"start_line":81,"start_character":0,"end_line":84,"end_character":74},"in_reply_to":"1a95cdbc_f42ce39a","updated":"2016-10-08 08:45:34.000000000","message":"To simplify the implementation, I think this can be in future enhancement. What do you think?","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":9044,"name":"Will","email":"wangjian.ika@bytedance.com","username":"Will"},"change_message_id":"47dc5bf27ca7a95472a08d452f02a71e8924a9f2","unresolved":false,"context_lines":[{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"},{"line_number":88,"context_line":"port, the OpenVSwitch DB monitor will update the ofport of each tunnel type."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"The tunnel_type field of chassis will be changed from a string to a list"},{"line_number":91,"context_line":"of supported tunnel types."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"The chassis will be added to local cache. So that a remote port can find the"},{"line_number":94,"context_line":"chassis type and chassis IP address quickly."}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_c329eee7","line":91,"range":{"start_line":90,"start_character":68,"end_line":91,"end_character":26},"updated":"2016-10-08 07:27:21.000000000","message":"Could you give us more details about the relationship betweent the list and network type? \nFor instance, what if the cloud admin creates a vxlan network, the tunnel type list does not contain vxlan? And what the flow entries will be if the tunnel type list contains both vxlan and nvgre ? For egress table, both a vxlan flow and a nvgre flow entry will be created ? How to determine which flow to use?","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"ed870bbd83d82c6217fa5ba15292563255bb2f58","unresolved":false,"context_lines":[{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"},{"line_number":88,"context_line":"port, the OpenVSwitch DB monitor will update the ofport of each tunnel type."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"The tunnel_type field of chassis will be changed from a string to a list"},{"line_number":91,"context_line":"of supported tunnel types."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"The chassis will be added to local cache. So that a remote port can find the"},{"line_number":94,"context_line":"chassis type and chassis IP address quickly."}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_493a5d9a","line":91,"range":{"start_line":90,"start_character":68,"end_line":91,"end_character":26},"in_reply_to":"1a95cdbc_462fac3e","updated":"2016-10-08 08:45:34.000000000","message":"@Wangjian, I think hujie\u0027s answer is what I have in mind.\nFurthermore, the tunnel type list should work with ml2 port bind. So that if a port in vxlan network, tries to bind in a df node without vxlan in its tunnel type list. An error should  be raised for user. The check should be in\n\nhttps://github.com/openstack/dragonflow/blob/9fc1383a8c8d1b40e5e70ef53a5730d55030dd4a/dragonflow/neutron/ml2/mech_driver.py#L631\n\nThat should come with a more mature support of network segment in dragonflow.","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":9044,"name":"Will","email":"wangjian.ika@bytedance.com","username":"Will"},"change_message_id":"815ada7cc65ddbb4aaa2c1bf8b688d6c401a7dc6","unresolved":false,"context_lines":[{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"},{"line_number":88,"context_line":"port, the OpenVSwitch DB monitor will update the ofport of each tunnel type."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"The tunnel_type field of chassis will be changed from a string to a list"},{"line_number":91,"context_line":"of supported tunnel types."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"The chassis will be added to local cache. So that a remote port can find the"},{"line_number":94,"context_line":"chassis type and chassis IP address quickly."}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_6f08f4da","line":91,"range":{"start_line":90,"start_character":68,"end_line":91,"end_character":26},"in_reply_to":"1a95cdbc_493a5d9a","updated":"2016-10-09 01:48:11.000000000","message":"Thank you guys.\n@Hong Hui, for ml2 port binding, maybe this BP could be done together","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"33f217d9a525919049e0d95094721fa8f997855d","unresolved":false,"context_lines":[{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"},{"line_number":88,"context_line":"port, the OpenVSwitch DB monitor will update the ofport of each tunnel type."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"The tunnel_type field of chassis will be changed from a string to a list"},{"line_number":91,"context_line":"of supported tunnel types."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"The chassis will be added to local cache. So that a remote port can find the"},{"line_number":94,"context_line":"chassis type and chassis IP address quickly."}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_2249a3d0","line":91,"range":{"start_line":90,"start_character":68,"end_line":91,"end_character":26},"in_reply_to":"1a95cdbc_6f08f4da","updated":"2016-10-09 03:32:51.000000000","message":"The ml2 port binding needs segment support, however, the segment support will be so complex that I would consider it in other BP/bug. For segment, we need to consider vlan/flat together, or even multi-segments support, or even the routed network support.","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":20287,"name":"hujie","email":"mike.hu@huawei.com","username":"hujie"},"change_message_id":"2811f99ee5b535bda861b0b28d66c2041c04c5cb","unresolved":false,"context_lines":[{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"},{"line_number":88,"context_line":"port, the OpenVSwitch DB monitor will update the ofport of each tunnel type."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"The tunnel_type field of chassis will be changed from a string to a list"},{"line_number":91,"context_line":"of supported tunnel types."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"The chassis will be added to local cache. So that a remote port can find the"},{"line_number":94,"context_line":"chassis type and chassis IP address quickly."}],"source_content_type":"text/x-rst","patch_set":4,"id":"1a95cdbc_462fac3e","line":91,"range":{"start_line":90,"start_character":68,"end_line":91,"end_character":26},"in_reply_to":"1a95cdbc_c329eee7","updated":"2016-10-08 07:38:07.000000000","message":"@WangJian:\n1. If the supported tunnel type list does not contain the vxlan, this chassis will not create the vxlan virtual tunnel port, so it can not communicate with others which belong to vxlan network.\n2. As to a specific destination, the underlay network type is unique, if the dest belongs to vxlan network, the flow will go through vxlan virtual tunnel port, if the dest belongs to nvgre, the flow will go through nvgre virtual tunnel port.","commit_id":"4a8864a1f2bc27dfcbf878887c7c33e703e76e62"},{"author":{"_account_id":20297,"name":"duankebo","email":"duankebo@huawei.com","username":"duankebo"},"change_message_id":"c0ff77d50b2e3a40e39d310fe4ee66d5005be84b","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  segmentation ID. This will cause match problem. For example, a GRE neutron"},{"line_number":51,"context_line":"  network has segmentation ID 100, and a Geneve neutron network also has"},{"line_number":52,"context_line":"  segmentation ID 100. When the network packets from these two networks comes"},{"line_number":53,"context_line":"  to a Dragonflow node, the Dragonflow node can\u0027t distinguish which is from GRE"},{"line_number":54,"context_line":"  network, and which is from Geneve network."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Proposed Change"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_a93da1de","line":53,"range":{"start_line":53,"start_character":7,"end_line":53,"end_character":17},"updated":"2016-10-08 09:50:13.000000000","message":"If the two types of tunnels are used in the same underlay network, I think they should be distinguished from each other by transport layer identifications(such as udp port numer)?","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"62d981739c5be9d10dfefe8bf3947fe17aaa8c0f","unresolved":false,"context_lines":[{"line_number":50,"context_line":"  segmentation ID. This will cause match problem. For example, a GRE neutron"},{"line_number":51,"context_line":"  network has segmentation ID 100, and a Geneve neutron network also has"},{"line_number":52,"context_line":"  segmentation ID 100. When the network packets from these two networks comes"},{"line_number":53,"context_line":"  to a Dragonflow node, the Dragonflow node can\u0027t distinguish which is from GRE"},{"line_number":54,"context_line":"  network, and which is from Geneve network."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"Proposed Change"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_02e66714","line":53,"range":{"start_line":53,"start_character":7,"end_line":53,"end_character":17},"in_reply_to":"1a95cdbc_a93da1de","updated":"2016-10-09 03:20:02.000000000","message":"I think ovs should take care of this. All we need to do is creating the tunnel port and specifying the tunnel port type.","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":20297,"name":"duankebo","email":"duankebo@huawei.com","username":"duankebo"},"change_message_id":"c0ff77d50b2e3a40e39d310fe4ee66d5005be84b","unresolved":false,"context_lines":[{"line_number":79,"context_line":"    ovs_version: \"2.5.0\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The supported tunnel types can be configured through configuration file. If"},{"line_number":82,"context_line":"new tunnel type is added, the new tunnel port will be created when restart"},{"line_number":83,"context_line":"Dragonflow controller. If a tunnel type is removed from the supported tunnel"},{"line_number":84,"context_line":"types, the tunnel port will be deleted when restart Dragonflow controller."},{"line_number":85,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_2c46ff4e","line":82,"range":{"start_line":82,"start_character":67,"end_line":82,"end_character":74},"updated":"2016-10-08 09:50:13.000000000","message":"restarting","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"62d981739c5be9d10dfefe8bf3947fe17aaa8c0f","unresolved":false,"context_lines":[{"line_number":79,"context_line":"    ovs_version: \"2.5.0\""},{"line_number":80,"context_line":""},{"line_number":81,"context_line":"The supported tunnel types can be configured through configuration file. If"},{"line_number":82,"context_line":"new tunnel type is added, the new tunnel port will be created when restart"},{"line_number":83,"context_line":"Dragonflow controller. If a tunnel type is removed from the supported tunnel"},{"line_number":84,"context_line":"types, the tunnel port will be deleted when restart Dragonflow controller."},{"line_number":85,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_e2a6dbac","line":82,"range":{"start_line":82,"start_character":67,"end_line":82,"end_character":74},"in_reply_to":"1a95cdbc_2c46ff4e","updated":"2016-10-09 03:20:02.000000000","message":"will change it.","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":20297,"name":"duankebo","email":"duankebo@huawei.com","username":"duankebo"},"change_message_id":"c0ff77d50b2e3a40e39d310fe4ee66d5005be84b","unresolved":false,"context_lines":[{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"},{"line_number":88,"context_line":"port, the OpenVSwitch DB monitor will update the ofport of each tunnel type."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"The tunnel_type field of chassis will be changed from a string to a list"},{"line_number":91,"context_line":"of supported tunnel types."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"The chassis will be added to local cache. So that a remote port can find the"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_2c5d1f15","line":90,"range":{"start_line":90,"start_character":56,"end_line":90,"end_character":62},"updated":"2016-10-08 09:50:13.000000000","message":"I suggest to do it step by step.\nWe can support one type first. And support multiple types of tunnel in the next release.","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"62d981739c5be9d10dfefe8bf3947fe17aaa8c0f","unresolved":false,"context_lines":[{"line_number":87,"context_line":"the lifecyle of Dragonflow controller. If there are any changes to the tunnel"},{"line_number":88,"context_line":"port, the OpenVSwitch DB monitor will update the ofport of each tunnel type."},{"line_number":89,"context_line":""},{"line_number":90,"context_line":"The tunnel_type field of chassis will be changed from a string to a list"},{"line_number":91,"context_line":"of supported tunnel types."},{"line_number":92,"context_line":""},{"line_number":93,"context_line":"The chassis will be added to local cache. So that a remote port can find the"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_42714f43","line":90,"range":{"start_line":90,"start_character":56,"end_line":90,"end_character":62},"in_reply_to":"1a95cdbc_2c5d1f15","updated":"2016-10-09 03:20:02.000000000","message":"The plan is to do it step by step(see the workitems below), with small patches. So, maybe we don\u0027t need to explicitly to split the work, and let\u0027s see how far we can go in current release.","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":20297,"name":"duankebo","email":"duankebo@huawei.com","username":"duankebo"},"change_message_id":"c0ff77d50b2e3a40e39d310fe4ee66d5005be84b","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"A remote port might not be in current OpenStack cloud, but be in another"},{"line_number":97,"context_line":"OpenStack cloud that connects to current cloud by using, for example,"},{"line_number":98,"context_line":"L2 Gateway. The old implementaion of remote port will create a tunnel port"},{"line_number":99,"context_line":"for each remote chassis, and maintain a relationship of remote port and remote"},{"line_number":100,"context_line":"chassis in the cache of Dragonflow controller. If there is no remote port in"},{"line_number":101,"context_line":"the remote chassis, the tunnel port for remote chassis will be deleted."}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_4c850b58","line":98,"range":{"start_line":98,"start_character":16,"end_line":98,"end_character":33},"updated":"2016-10-08 09:50:13.000000000","message":"The description of l2 gateway can be removed.","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"62d981739c5be9d10dfefe8bf3947fe17aaa8c0f","unresolved":false,"context_lines":[{"line_number":95,"context_line":""},{"line_number":96,"context_line":"A remote port might not be in current OpenStack cloud, but be in another"},{"line_number":97,"context_line":"OpenStack cloud that connects to current cloud by using, for example,"},{"line_number":98,"context_line":"L2 Gateway. The old implementaion of remote port will create a tunnel port"},{"line_number":99,"context_line":"for each remote chassis, and maintain a relationship of remote port and remote"},{"line_number":100,"context_line":"chassis in the cache of Dragonflow controller. If there is no remote port in"},{"line_number":101,"context_line":"the remote chassis, the tunnel port for remote chassis will be deleted."}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_02a2e798","line":98,"range":{"start_line":98,"start_character":16,"end_line":98,"end_character":33},"in_reply_to":"1a95cdbc_4c850b58","updated":"2016-10-09 03:20:02.000000000","message":"Done","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":20297,"name":"duankebo","email":"duankebo@huawei.com","username":"duankebo"},"change_message_id":"c0ff77d50b2e3a40e39d310fe4ee66d5005be84b","unresolved":false,"context_lines":[{"line_number":100,"context_line":"chassis in the cache of Dragonflow controller. If there is no remote port in"},{"line_number":101,"context_line":"the remote chassis, the tunnel port for remote chassis will be deleted."},{"line_number":102,"context_line":"By using the virtual tunnel port, there is no need to maintain tunnel port for"},{"line_number":103,"context_line":"remote chassis. When a remote port is added, the IP address and tunnel type"},{"line_number":104,"context_line":"of the remote chassis will be added in the binding_profile. The tunnel type"},{"line_number":105,"context_line":"value will be the type of the network of the remote port. If a network packet"},{"line_number":106,"context_line":"needs to go to the remote port, it will go to the virtual tunnel port, instead"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_acf5afed","line":103,"range":{"start_line":103,"start_character":0,"end_line":103,"end_character":14},"updated":"2016-10-08 09:50:13.000000000","message":"For l2 gateway, draongflow local controller needn\u0027t to know the remote chassis, it only forward the flow to L2 gateway.","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"62d981739c5be9d10dfefe8bf3947fe17aaa8c0f","unresolved":false,"context_lines":[{"line_number":100,"context_line":"chassis in the cache of Dragonflow controller. If there is no remote port in"},{"line_number":101,"context_line":"the remote chassis, the tunnel port for remote chassis will be deleted."},{"line_number":102,"context_line":"By using the virtual tunnel port, there is no need to maintain tunnel port for"},{"line_number":103,"context_line":"remote chassis. When a remote port is added, the IP address and tunnel type"},{"line_number":104,"context_line":"of the remote chassis will be added in the binding_profile. The tunnel type"},{"line_number":105,"context_line":"value will be the type of the network of the remote port. If a network packet"},{"line_number":106,"context_line":"needs to go to the remote port, it will go to the virtual tunnel port, instead"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_42a86f77","line":103,"range":{"start_line":103,"start_character":0,"end_line":103,"end_character":14},"in_reply_to":"1a95cdbc_acf5afed","updated":"2016-10-09 03:20:02.000000000","message":"Done","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":20297,"name":"duankebo","email":"duankebo@huawei.com","username":"duankebo"},"change_message_id":"c0ff77d50b2e3a40e39d310fe4ee66d5005be84b","unresolved":false,"context_lines":[{"line_number":107,"context_line":"of the specific tunnel port created in the old implementation. The OpenFlow"},{"line_number":108,"context_line":"will designate the destination IP address, according to the information of"},{"line_number":109,"context_line":"remote port\u0027s binding_profile. When the remote port is deleted, only the"},{"line_number":110,"context_line":"related OpenFlows needs to be deleted."},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"The chassis update event from northbound DB will be notified to dragonflow"},{"line_number":113,"context_line":"applications. So that the OpenFlow can be updated when chassis updates, for"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_0ce78340","line":110,"updated":"2016-10-08 09:50:13.000000000","message":"so l2 gateway is no longer needed, right?","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"62d981739c5be9d10dfefe8bf3947fe17aaa8c0f","unresolved":false,"context_lines":[{"line_number":107,"context_line":"of the specific tunnel port created in the old implementation. The OpenFlow"},{"line_number":108,"context_line":"will designate the destination IP address, according to the information of"},{"line_number":109,"context_line":"remote port\u0027s binding_profile. When the remote port is deleted, only the"},{"line_number":110,"context_line":"related OpenFlows needs to be deleted."},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"The chassis update event from northbound DB will be notified to dragonflow"},{"line_number":113,"context_line":"applications. So that the OpenFlow can be updated when chassis updates, for"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_82bc37bc","line":110,"in_reply_to":"1a95cdbc_0ce78340","updated":"2016-10-09 03:20:02.000000000","message":"Done","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":20297,"name":"duankebo","email":"duankebo@huawei.com","username":"duankebo"},"change_message_id":"c0ff77d50b2e3a40e39d310fe4ee66d5005be84b","unresolved":false,"context_lines":[{"line_number":113,"context_line":"applications. So that the OpenFlow can be updated when chassis updates, for"},{"line_number":114,"context_line":"example, its IP address."},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"In the egress table, the flow will be added based on the network type of"},{"line_number":117,"context_line":"the network, where the port is in, and the remote port\u0027s chassis IP address."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"In the ingress classification dispatch table, not only the tunnel ID will be"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_ccc75b94","line":116,"range":{"start_line":116,"start_character":57,"end_line":116,"end_character":64},"updated":"2016-10-08 09:50:13.000000000","message":"redundent","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"},{"author":{"_account_id":11159,"name":"Hong Hui Xiao","email":"honghui_xiao@yeah.net","username":"HongHuiXiao"},"change_message_id":"62d981739c5be9d10dfefe8bf3947fe17aaa8c0f","unresolved":false,"context_lines":[{"line_number":113,"context_line":"applications. So that the OpenFlow can be updated when chassis updates, for"},{"line_number":114,"context_line":"example, its IP address."},{"line_number":115,"context_line":""},{"line_number":116,"context_line":"In the egress table, the flow will be added based on the network type of"},{"line_number":117,"context_line":"the network, where the port is in, and the remote port\u0027s chassis IP address."},{"line_number":118,"context_line":""},{"line_number":119,"context_line":"In the ingress classification dispatch table, not only the tunnel ID will be"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1a95cdbc_62b9ebcb","line":116,"range":{"start_line":116,"start_character":57,"end_line":116,"end_character":64},"in_reply_to":"1a95cdbc_ccc75b94","updated":"2016-10-09 03:20:02.000000000","message":"Done","commit_id":"87d3aac1dc60a525b40262e6b04a1d2e82e18e02"}]}
