ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
OpenStack Summit Tokyo
OpenStack Summit Tokyo? Keyword?¡­
????(Docker, Kuryr, Kubernetes)
??? ??? ?? ? ???¡­
SDN????? ???
DRAGONFLOW
?? ??? ?? ?? ??¡­
OpenFlow? ??? L3 Flow ??¡­
Dragon flow and tricircle
??
? Network Node Bottleneck
¨C ?? inter-subnet traffic? Network Node? ??? ?
¨C ???? WE(West-East) Application traffic? Subnet ??
?? ??
¨C ?? ???
? Linux network namespace ??
? ?? ?? (???? ??? ??)
???
? Single Virtual Network?? VM?? ??
???
? Multi Virtual Network?? VM?? ??
DVR (Distribute Virtual Router)
? Proactive approach
¨C Flow ?? ?? (Routing/ARP Tables)
? Linux namespace
¨C ?? ?? ?? ????? ?? ??? ??? ??
? ?? ???? ???
DragonFlow
? Fully distributed virtual router for Neutron
¨C Lightweight SDN Controller
? OVS forwarding engine? Data plane? OF flows(match, action) ?
?? ?? ??
¨C Performance/Scale ?? ? Virtual Router ?? ???
? ?? ?? ??, single point failure ??
? ?? 2?? ??
¨C Centralized Version (Kilo Release)
? Network Node: L3 Controller Agent
¨C Distributed Version (~ing)
? Compute Node: Dragonflow Controller
Centralized DragonFlow
? OpenStack Juno
Hybrid OF Switch
? L3 Controller Agent
¨C ? OVS? ??? VM? ?? port ?? ??
¨C VM? ?? port? ?? ?? Normal L2 Switch ??
L3 Installed pipeline
? Virtual Router using flows
¨C All L2 flows offloaded to the normal path
? Table0 (Metadata)
¨C action? NORMAL? DHCP ??? ?????? ?? ??
¨C ??????? ???? ?? ?????? ?? Table
? Table51 (ARP)
¨C ARP? ?? ??? ???? ? ??????? ??? ?????? ?? MAC ??
? Table52 (L3, DragonFlow)
¨C NORMAL: metadata? ???? ?? ????? ?? ?? L2 ???? [match: metadata=0x1f42(net1), nw_dst=10.1.0.0/24(net1)]
¨C CONTROLLER: metadata? ???? ?? ????? ?? L3 ???? [match: metadata=0x1f43(net2), nw_dst=10.1.0.0/24(net1)]
Flow Rule
1.cookie=0x0, duration=3063.423s, table=0, n_packets=0, n_bytes=0, priority=1000,in_port=8 actions=NORMAL
2.cookie=0x0, duration=3063.423s, table=0, n_packets=0, n_bytes=0, priority=1000,in_port=7 actions=NORMAL
3.cookie=0x0, duration=3063.422s, table=51, n_packets=0, n_bytes=0, send_flow_rem
priority=100,arp,metadata=0x1f42,arp_tpa=10.1.0.1,arp_op=1 actions=set_field:2->arp_op,move:NXM_NX_ARP_SHA[]-
>NXM_NX_ARP_THA[],move:NXM_OF_ARP_SPA[]->NXM_OF_ARP_TPA[],set_field:fa:16:3e:c0:8d:8b-
>eth_src,set_field:fa:16:3e:c0:8d:8b->arp_sha,set_field:10.1.0.1->arp_spa,IN_PORT
4.cookie=0x0, duration=3063.423s, table=51, n_packets=0, n_bytes=0, send_flow_rem
priority=100,arp,metadata=0x1f43,arp_tpa=10.2.0.1,arp_op=1 actions=set_field:2->arp_op,move:NXM_NX_ARP_SHA[]-
>NXM_NX_ARP_THA[],move:NXM_OF_ARP_SPA[]->NXM_OF_ARP_TPA[],set_field:fa:16:3e:c5:02:4d-
>eth_src,set_field:fa:16:3e:c5:02:4d->arp_sha,set_field:10.2.0.1->arp_spa,IN_PORT
5.cookie=0x0, duration=3063.423s, table=52, n_packets=0, n_bytes=0,
priority=20,ip,metadata=0x1f43,nw_dst=10.1.0.0/24 actions=CONTROLLER:65535
6.cookie=0x0, duration=3063.421s, table=52, n_packets=0, n_bytes=0,
priority=30,ip,metadata=0x1f42,nw_dst=10.1.0.0/24 actions=NORMAL
7.cookie=0x0, duration=3063.423s, table=52, n_packets=0, n_bytes=0,
priority=20,ip,metadata=0x1f42,nw_dst=10.2.0.0/24 actions=CONTROLLER:65535
8.cookie=0x0, duration=3063.423s, table=52, n_packets=0, n_bytes=0,
priority=30,ip,metadata=0x1f43,nw_dst=10.2.0.0/24 actions=NORMAL
? DragonFlow
¨C Neutron? ??? ??? ?? ??? ??? Proactive Flow Rule ??
? Table40
¨C Classifier? ?? ??? ??
Flow Rule
cookie=0x0, duration=260870.502s, table=40, n_packets=0, n_bytes=0, priority=1 actions=goto_table:52
cookie=0x0, duration=260870.502s, table=40, n_packets=0, n_bytes=0,
priority=100,dl_dst=ff:ff:ff:ff:ff:ff actions=NORMAL
cookie=0x0, duration=260870.502s, table=40, n_packets=6, n_bytes=252, priority=1000,arp
actions=goto_table:51
cookie=0x0, duration=153.339s, table=0, n_packets=27, n_bytes=2462, priority=1000,in_port=11
actions=write_metadata:0x1f42/0xffff,goto_table:40
cookie=0x0, duration=149.796s, table=0, n_packets=23, n_bytes=2182, priority=1000,in_port=12
actions=write_metadata:0x1f43/0xffff,goto_table:40
cookie=0x1008000000019, duration=5.704s, table=52, n_packets=1, n_bytes=98, idle_timeout=300,
priority=100,ip,metadata=0x1f43,in_port=12,dl_src=/fa:16:3e:cf:4b:ed,dl_dst=fa:16:3e:c5:02:4d,nw_src=10.2.
0.3,nw_dst=10.1.0.3 actions=dec_ttl,set_field:fa:16:3e:c5:02:4d->eth_src,set_field:fa:16:3e:00:17:e6-
>eth_dst,output:11
cookie=0x1008000040051, duration=5.708s, table=52, n_packets=1, n_bytes=98, idle_timeout=300,
priority=100,ip,metadata=0x1f42,in_port=11,dl_src=fa:16:3e:00:17:e6,dl_dst=fa:16:3e:c0:8d:8b,nw_src=10.1.
0.3,nw_dst=10.2.0.3 actions=dec_ttl,set_field:fa:16:3e:c0:8d:8b->eth_src,set_field:fa:16:3e:cf:4b:ed-
>eth_dst,output:12
ARP Table=51
Distributed DragonFlow
? ?? DB ???? ???? ??? ??? ??? DragonFlow? ???
¨C Network DB Layer ??
¨C ? ??? ???? br-int? ???? L2, L3 OF Flow Rule
Pluggable DB Layer
? ?? ?? ????? ?? ???? ????? ??? ?? ?? DB ?????
¨C ?? ????? DB? ??? ??
¨C HA/Redundancy/Clustering ??
¨C SLA, Performance, latency ??
Pluggable Database
? Network DB Layer
¨C DragonFlow Neutron Plugin/Compute Node DragonFlow Controller/?? ????
?? ????
¨C DB ??? ?? DB Driver API ??
Selective Distribution
? ? Compute Node? ????? ???
¨C ?? ???? ???
? ??? ?? ??? ??
Selective Proactive Distribution
Roadmap
? Containers
? Distributed SNAT/DNAT
? Reactive DB
? Topology Service Injection / Service Chaining
? Smart NICs
? Hierarchical Port Binding (SDN ToR)
? Inter Cloud Connectivity (Boarder GW/L2 GW)
? Fault Detection
TRICIRCLE
?? ??? ?? ?? ??¡­
OpenStack over OpenStack!!!
OpenStack Cascading? ??? ????¡­
Dragon flow and tricircle
OpenStack to manage OpenStacks
? Current Production Architecture
¨C OpenStack Cascading
??
? ??? OpenStack? ¡®Single¡¯ ??
? Multi-Site ??? OpenStack?
¨C ???? ??? ????? ?
¨C ??? ?? ??? ???
¨C ?? ???? ??? ??? ??? ??? ?
needs
? Global management of cloud resources
¨C Images, VMs, volumes, networks
¨C Across multiple OpenStack clouds
? Single resource utilization dashboard
? Cross-site virtual networks (L2 & L3)
? Single identity Management
¨C Single cloud account
¨C Federated Keystone
Tricircle
? Management Orchestration for Multiple site OpenStack
Lunch Instance demo
Tricircle v2.0
? Architecture
Tricircle OpenStack Adapter
? Aggregated by Availability Zones
Tricircle Top Service
? Top Service
Tricircle Bottom Site Service
? Bottom Site Service
Cross-Site Router
? 1 Site Router
¨C ????? ??
¨C Not Cross-site ??
¨C ?? Solution ??
? Cross-site Router
¨C ??? Router ??
? IP/MAC ?? ??
Tricircle Cross-site L2/L3 Connectivity

More Related Content

Dragon flow and tricircle

  • 1. OpenStack Summit Tokyo OpenStack Summit Tokyo? Keyword?¡­ ????(Docker, Kuryr, Kubernetes) ??? ??? ?? ? ???¡­ SDN????? ???
  • 2. DRAGONFLOW ?? ??? ?? ?? ??¡­ OpenFlow? ??? L3 Flow ??¡­
  • 4. ?? ? Network Node Bottleneck ¨C ?? inter-subnet traffic? Network Node? ??? ? ¨C ???? WE(West-East) Application traffic? Subnet ?? ?? ?? ¨C ?? ??? ? Linux network namespace ?? ? ?? ?? (???? ??? ??)
  • 5. ??? ? Single Virtual Network?? VM?? ??
  • 6. ??? ? Multi Virtual Network?? VM?? ??
  • 7. DVR (Distribute Virtual Router) ? Proactive approach ¨C Flow ?? ?? (Routing/ARP Tables) ? Linux namespace ¨C ?? ?? ?? ????? ?? ??? ??? ?? ? ?? ???? ???
  • 8. DragonFlow ? Fully distributed virtual router for Neutron ¨C Lightweight SDN Controller ? OVS forwarding engine? Data plane? OF flows(match, action) ? ?? ?? ?? ¨C Performance/Scale ?? ? Virtual Router ?? ??? ? ?? ?? ??, single point failure ?? ? ?? 2?? ?? ¨C Centralized Version (Kilo Release) ? Network Node: L3 Controller Agent ¨C Distributed Version (~ing) ? Compute Node: Dragonflow Controller
  • 10. Hybrid OF Switch ? L3 Controller Agent ¨C ? OVS? ??? VM? ?? port ?? ?? ¨C VM? ?? port? ?? ?? Normal L2 Switch ??
  • 11. L3 Installed pipeline ? Virtual Router using flows ¨C All L2 flows offloaded to the normal path
  • 12. ? Table0 (Metadata) ¨C action? NORMAL? DHCP ??? ?????? ?? ?? ¨C ??????? ???? ?? ?????? ?? Table ? Table51 (ARP) ¨C ARP? ?? ??? ???? ? ??????? ??? ?????? ?? MAC ?? ? Table52 (L3, DragonFlow) ¨C NORMAL: metadata? ???? ?? ????? ?? ?? L2 ???? [match: metadata=0x1f42(net1), nw_dst=10.1.0.0/24(net1)] ¨C CONTROLLER: metadata? ???? ?? ????? ?? L3 ???? [match: metadata=0x1f43(net2), nw_dst=10.1.0.0/24(net1)] Flow Rule 1.cookie=0x0, duration=3063.423s, table=0, n_packets=0, n_bytes=0, priority=1000,in_port=8 actions=NORMAL 2.cookie=0x0, duration=3063.423s, table=0, n_packets=0, n_bytes=0, priority=1000,in_port=7 actions=NORMAL 3.cookie=0x0, duration=3063.422s, table=51, n_packets=0, n_bytes=0, send_flow_rem priority=100,arp,metadata=0x1f42,arp_tpa=10.1.0.1,arp_op=1 actions=set_field:2->arp_op,move:NXM_NX_ARP_SHA[]- >NXM_NX_ARP_THA[],move:NXM_OF_ARP_SPA[]->NXM_OF_ARP_TPA[],set_field:fa:16:3e:c0:8d:8b- >eth_src,set_field:fa:16:3e:c0:8d:8b->arp_sha,set_field:10.1.0.1->arp_spa,IN_PORT 4.cookie=0x0, duration=3063.423s, table=51, n_packets=0, n_bytes=0, send_flow_rem priority=100,arp,metadata=0x1f43,arp_tpa=10.2.0.1,arp_op=1 actions=set_field:2->arp_op,move:NXM_NX_ARP_SHA[]- >NXM_NX_ARP_THA[],move:NXM_OF_ARP_SPA[]->NXM_OF_ARP_TPA[],set_field:fa:16:3e:c5:02:4d- >eth_src,set_field:fa:16:3e:c5:02:4d->arp_sha,set_field:10.2.0.1->arp_spa,IN_PORT 5.cookie=0x0, duration=3063.423s, table=52, n_packets=0, n_bytes=0, priority=20,ip,metadata=0x1f43,nw_dst=10.1.0.0/24 actions=CONTROLLER:65535 6.cookie=0x0, duration=3063.421s, table=52, n_packets=0, n_bytes=0, priority=30,ip,metadata=0x1f42,nw_dst=10.1.0.0/24 actions=NORMAL 7.cookie=0x0, duration=3063.423s, table=52, n_packets=0, n_bytes=0, priority=20,ip,metadata=0x1f42,nw_dst=10.2.0.0/24 actions=CONTROLLER:65535 8.cookie=0x0, duration=3063.423s, table=52, n_packets=0, n_bytes=0, priority=30,ip,metadata=0x1f43,nw_dst=10.2.0.0/24 actions=NORMAL
  • 13. ? DragonFlow ¨C Neutron? ??? ??? ?? ??? ??? Proactive Flow Rule ?? ? Table40 ¨C Classifier? ?? ??? ?? Flow Rule cookie=0x0, duration=260870.502s, table=40, n_packets=0, n_bytes=0, priority=1 actions=goto_table:52 cookie=0x0, duration=260870.502s, table=40, n_packets=0, n_bytes=0, priority=100,dl_dst=ff:ff:ff:ff:ff:ff actions=NORMAL cookie=0x0, duration=260870.502s, table=40, n_packets=6, n_bytes=252, priority=1000,arp actions=goto_table:51 cookie=0x0, duration=153.339s, table=0, n_packets=27, n_bytes=2462, priority=1000,in_port=11 actions=write_metadata:0x1f42/0xffff,goto_table:40 cookie=0x0, duration=149.796s, table=0, n_packets=23, n_bytes=2182, priority=1000,in_port=12 actions=write_metadata:0x1f43/0xffff,goto_table:40 cookie=0x1008000000019, duration=5.704s, table=52, n_packets=1, n_bytes=98, idle_timeout=300, priority=100,ip,metadata=0x1f43,in_port=12,dl_src=/fa:16:3e:cf:4b:ed,dl_dst=fa:16:3e:c5:02:4d,nw_src=10.2. 0.3,nw_dst=10.1.0.3 actions=dec_ttl,set_field:fa:16:3e:c5:02:4d->eth_src,set_field:fa:16:3e:00:17:e6- >eth_dst,output:11 cookie=0x1008000040051, duration=5.708s, table=52, n_packets=1, n_bytes=98, idle_timeout=300, priority=100,ip,metadata=0x1f42,in_port=11,dl_src=fa:16:3e:00:17:e6,dl_dst=fa:16:3e:c0:8d:8b,nw_src=10.1. 0.3,nw_dst=10.2.0.3 actions=dec_ttl,set_field:fa:16:3e:c0:8d:8b->eth_src,set_field:fa:16:3e:cf:4b:ed- >eth_dst,output:12 ARP Table=51
  • 14. Distributed DragonFlow ? ?? DB ???? ???? ??? ??? ??? DragonFlow? ??? ¨C Network DB Layer ?? ¨C ? ??? ???? br-int? ???? L2, L3 OF Flow Rule
  • 15. Pluggable DB Layer ? ?? ?? ????? ?? ???? ????? ??? ?? ?? DB ????? ¨C ?? ????? DB? ??? ?? ¨C HA/Redundancy/Clustering ?? ¨C SLA, Performance, latency ??
  • 16. Pluggable Database ? Network DB Layer ¨C DragonFlow Neutron Plugin/Compute Node DragonFlow Controller/?? ???? ?? ???? ¨C DB ??? ?? DB Driver API ??
  • 17. Selective Distribution ? ? Compute Node? ????? ??? ¨C ?? ???? ??? ? ??? ?? ??? ??
  • 19. Roadmap ? Containers ? Distributed SNAT/DNAT ? Reactive DB ? Topology Service Injection / Service Chaining ? Smart NICs ? Hierarchical Port Binding (SDN ToR) ? Inter Cloud Connectivity (Boarder GW/L2 GW) ? Fault Detection
  • 20. TRICIRCLE ?? ??? ?? ?? ??¡­ OpenStack over OpenStack!!! OpenStack Cascading? ??? ????¡­
  • 22. OpenStack to manage OpenStacks ? Current Production Architecture ¨C OpenStack Cascading
  • 23. ?? ? ??? OpenStack? ¡®Single¡¯ ?? ? Multi-Site ??? OpenStack? ¨C ???? ??? ????? ? ¨C ??? ?? ??? ??? ¨C ?? ???? ??? ??? ??? ??? ?
  • 24. needs ? Global management of cloud resources ¨C Images, VMs, volumes, networks ¨C Across multiple OpenStack clouds ? Single resource utilization dashboard ? Cross-site virtual networks (L2 & L3) ? Single identity Management ¨C Single cloud account ¨C Federated Keystone
  • 25. Tricircle ? Management Orchestration for Multiple site OpenStack
  • 28. Tricircle OpenStack Adapter ? Aggregated by Availability Zones
  • 29. Tricircle Top Service ? Top Service
  • 30. Tricircle Bottom Site Service ? Bottom Site Service
  • 31. Cross-Site Router ? 1 Site Router ¨C ????? ?? ¨C Not Cross-site ?? ¨C ?? Solution ?? ? Cross-site Router ¨C ??? Router ?? ? IP/MAC ?? ??