1ovn-nb(5)                     Open vSwitch Manual                    ovn-nb(5)
2
3
4

NAME

6       ovn-nb - OVN_Northbound database schema
7
8       This  database  is  the  interface between OVN and the cloud management
9       system (CMS), such as OpenStack, running above it. The CMS produces al‐
10       most  all of the contents of the database. The ovn-northd program moni‐
11       tors the database contents, transforms  it,  and  stores  it  into  the
12       OVN_Southbound database.
13
14       We  generally  speak  of  ``the’’ CMS, but one can imagine scenarios in
15       which multiple CMSes manage different parts of an OVN deployment.
16
17   External IDs
18       Each of the tables in this database contains a  special  column,  named
19       external_ids.  This  column has the same form and purpose each place it
20       appears.
21
22              external_ids: map of string-string pairs
23                     Key-value pairs for use by the CMS.  The  CMS  might  use
24                     certain  pairs,  for example, to identify entities in its
25                     own configuration that correspond to those in this  data‐
26                     base.
27

TABLE SUMMARY

29       The  following list summarizes the purpose of each of the tables in the
30       OVN_Northbound database.  Each table is described in more detail  on  a
31       later page.
32
33       Table     Purpose
34       NB_Global Northbound configuration
35       Logical_Switch
36                 L2 logical switch
37       Logical_Switch_Port
38                 L2 logical switch port
39       Forwarding_Group
40                 forwarding group
41       Address_Set
42                 Address Sets
43       Port_Group
44                 Port Groups
45       Load_Balancer
46                 load balancer
47       Load_Balancer_Health_Check
48                 load balancer
49       ACL       Access Control List (ACL) rule
50       Logical_Router
51                 L3 logical router
52       QoS       QoS rule
53       Meter     Meter entry
54       Meter_Band
55                 Band for meter entries
56       Logical_Router_Port
57                 L3 logical router port
58       Logical_Router_Static_Route
59                 Logical router static routes
60       Logical_Router_Policy
61                 Logical router policies
62       NAT       NAT rules
63       DHCP_Options
64                 DHCP options
65       Connection
66                 OVSDB client connections.
67       DNS       Native DNS resolution
68       SSL       SSL configuration.
69       Gateway_Chassis
70                 Gateway_Chassis configuration.
71       HA_Chassis_Group
72                 HA_Chassis_Group configuration.
73       HA_Chassis
74                 HA_Chassis configuration.
75       BFD       BFD configuration.
76

NB_Global TABLE

78       Northbound  configuration  for  an OVN system. This table must have ex‐
79       actly one row.
80
81   Summary:
82       Identity:
83         name                        string
84       Status:
85         nb_cfg                      integer
86         nb_cfg_timestamp            integer
87         sb_cfg                      integer
88         sb_cfg_timestamp            integer
89         hv_cfg                      integer
90         hv_cfg_timestamp            integer
91       Common Columns:
92         external_ids                map of string-string pairs
93       Common options:
94         options                     map of string-string pairs
95         Options for configuring OVS BFD:
96            options : bfd-min-rx     optional string
97            options : bfd-decay-min-rx
98                                     optional string
99            options : bfd-min-tx     optional string
100            options : bfd-mult       optional string
101         options : mac_prefix        optional string
102         options : controller_event  optional string, either true or false
103         options : northd_probe_interval
104                                     optional string
105         options : use_logical_dp_groups
106                                     optional string
107         options : ignore_lsp_down   optional string
108         options : use_ct_inv_match  optional string
109         Options for configuring interconnection route advertisement:
110            options : ic-route-adv   optional string
111            options : ic-route-learn optional string
112            options : ic-route-adv-default
113                                     optional string
114            options : ic-route-learn-default
115                                     optional string
116            options : ic-route-blacklist
117                                     optional string
118       Connection Options:
119         connections                 set of Connections
120         ssl                         optional SSL
121       Security Configurations:
122         ipsec                       boolean
123       Read-only Options:
124         options : max_tunid         optional string
125
126   Details:
127     Identity:
128
129       name: string
130              The name of the OVN cluster, which uniquely identifies  the  OVN
131              cluster  throughout  all  OVN  clusters supposed to interconnect
132              with each other.
133
134     Status:
135
136       These columns allow a client to track the overall  configuration  state
137       of the system.
138
139       nb_cfg: integer
140              Sequence  number for client to increment. When a client modifies
141              any part of the northbound database configuration and wishes  to
142              wait  for ovn-northd and possibly all of the hypervisors to fin‐
143              ish applying the changes, it may increment this sequence number.
144
145       nb_cfg_timestamp: integer
146              The timestamp, in milliseconds since the epoch, when  ovn-northd
147              sees the latest nb_cfg and starts processing.
148
149              To print the timestamp as a human-readable date:
150
151                        date -d "@$(ovn-nbctl get NB_Global . nb_cfg_timestamp | sed ’s/...$//’)"
152
153
154       sb_cfg: integer
155              Sequence  number that ovn-northd sets to the value of nb_cfg af‐
156              ter it finishes applying the corresponding configuration changes
157              to the OVN_Southbound database.
158
159       sb_cfg_timestamp: integer
160              The  timestamp, in milliseconds since the epoch, when ovn-northd
161              finishes applying the corresponding configuration changes to the
162              OVN_Southbound database successfully.
163
164       hv_cfg: integer
165              Sequence  number  that  ovn-northd sets to the smallest sequence
166              number of all the chassis in the  system,  as  reported  in  the
167              Chassis_Private  table  in the southbound database. Thus, hv_cfg
168              equals nb_cfg if all chassis are caught up with  the  northbound
169              configuration  (which may never happen, if any chassis is down).
170              This value can regress, if a chassis was removed from the system
171              and rejoins before catching up.
172
173              If  there  are  no  chassis,  then  ovn-northd  copies nb_cfg to
174              hv_cfg. Thus, in this case, the  (nonexistent)  hypervisors  are
175              always  considered  to be caught up. This means that hypervisors
176              can be "caught up" even in cases where sb_cfg  would  show  that
177              the southbound database is not. To detect when both the hypervi‐
178              sors and the southbound database are caught up, a client  should
179              take the smaller of sb_cfg and hv_cfg.
180
181       hv_cfg_timestamp: integer
182              The  largest  timestamp, in milliseconds since the epoch, of the
183              smallest sequence number of all the chassis in  the  system,  as
184              reported  in  the  Chassis_Private table in the southbound data‐
185              base. In other words, this timestamp reflects the time when  the
186              slowest  chassis  catches  up with the northbound configuration,
187              which is useful for end-to-end control  plane  latency  measure‐
188              ment.
189
190     Common Columns:
191
192       external_ids: map of string-string pairs
193              See External IDs at the beginning of this document.
194
195     Common options:
196
197       options: map of string-string pairs
198              This  column  provides general key/value settings. The supported
199              options are described individually below.
200
201     Options for configuring OVS BFD:
202
203       These options apply when ovn-controller configures OVS BFD  on  tunnels
204       interfaces. Please note these parameters refer to legacy OVS BFD imple‐
205       mentation and not to OVN BFD one.
206
207       options : bfd-min-rx: optional string
208              BFD option min-rx value to use when configuring  BFD  on  tunnel
209              interfaces.
210
211       options : bfd-decay-min-rx: optional string
212              BFD  option  decay-min-rx  value  to use when configuring BFD on
213              tunnel interfaces.
214
215       options : bfd-min-tx: optional string
216              BFD option min-tx value to use when configuring  BFD  on  tunnel
217              interfaces.
218
219       options : bfd-mult: optional string
220              BFD  option mult value to use when configuring BFD on tunnel in‐
221              terfaces.
222
223       options : mac_prefix: optional string
224              Configure a given OUI to be used as prefix when  L2  address  is
225              dynamically assigned, e.g. 00:11:22
226
227       options : controller_event: optional string, either true or false
228              Value  set by the CMS to enable/disable ovn-controller event re‐
229              porting. Traffic into OVS can raise a  ’controller’  event  that
230              results   in  a  Controller_Event  being  written  to  the  Con‐
231              troller_Event table in SBDB. When the CMS has seen the event and
232              taken  appropriate action, it can remove the correponding row in
233              Controller_Event table. The intention is for a CMS  to  see  the
234              events  and  take  some  sort  of  action.  Please  see the Con‐
235              troller_Event table in SBDB. It is possible to associate a meter
236              to each controller event type in order to not overload the pinc‐
237              trl thread under heavy load. Each event type relies on  a  meter
238              with a defined name:
239
240              •      empty_lb_backends: event-elb
241
242       options : northd_probe_interval: optional string
243              The  inactivity  probe  interval  of  the  connection to the OVN
244              Northbound and Southbound databases  from  ovn-northd,  in  mil‐
245              liseconds.  If  the  value  is  zero, it disables the connection
246              keepalive feature.
247
248              If the value is nonzero, then it will be forced to a value of at
249              least 1000 ms.
250
251       options : use_logical_dp_groups: optional string
252              If  set to true, ovn-northd will combine logical flows that dif‐
253              fers only by logical datapath into a single  logical  flow  with
254              logical datapath group attached.
255
256              While  this  should significantly reduce number of logical flows
257              stored in Southbound database this could also increase  process‐
258              ing  complexity on the ovn-controller side, e.g., ovn-controller
259              will re-consider logical flow for all  logical  datapaths  in  a
260              group.  If the option set to false, there will be separate logi‐
261              cal flow per logical datapath and only this flow will be re-con‐
262              sidered.
263
264              The default value is false.
265
266       options : ignore_lsp_down: optional string
267              If  set  to  false,  ARP/ND reply flows for logical switch ports
268              will be installed only if the port is  up,  i.e.  claimed  by  a
269              Chassis. If set to true, these flows are installed regardless of
270              the status of the port, which can result in a situation that ARP
271              request  to  an  IP is resolved even before the relevant VM/con‐
272              tainer is running. For environments where this is not an  issue,
273              setting  it  to true can reduce the load and latency of the con‐
274              trol plane. The default value is false.
275
276       options : use_ct_inv_match: optional string
277              If set to false, ovn-northd will not use the ct.inv field in any
278              of  the  logical flow matches. The default value is true. If the
279              NIC supports offloading OVS datapath flows but  doesn’t  support
280              offloading  ct_state  inv flag, then the datapath flows matching
281              on this flag (either +inv or -inv) will not  be  offloaded.  CMS
282              should consider setting use_ct_inv_match to false in such cases.
283              This results in a side effect of the invalid packets getting de‐
284              livered  to the destination VIF, which otherwise would have been
285              dropped by OVN.
286
287     Options for configuring interconnection route advertisement:
288
289       These options control how routes are advertised between OVN deployments
290       for  interconnection. If enabled, ovn-ic from different OVN deployments
291       exchanges routes between each other through  the  global  OVN_IC_South‐
292       bound  database.  Only  routers with ports connected to interconnection
293       transit switches participate in route advertisement. For each of  these
294       routers, there are two types of routes to be advertised:
295
296       Firstly, the static routes configured in the router are advertised.
297
298       Secondly,  the networks configured in the logical router ports that are
299       not on the transit switches are advertised. These are considered as di‐
300       rectly connected subnets on the router.
301
302       Link  local prefixes (IPv4 169.254.0.0/16 and IPv6 FE80::/10) are never
303       advertised.
304
305       The learned routes are added to the static_routes column of  the  Logi‐
306       cal_Router table, with external_ids:ic-learned-route set to the uuid of
307       the row in Route table of the OVN_IC_Southbound database.
308
309       options : ic-route-adv: optional string
310              A boolean value that enables route advertisement to  the  global
311              OVN_IC_Southbound database. Default is false.
312
313       options : ic-route-learn: optional string
314              A  boolean  value  that  enables  route learning from the global
315              OVN_IC_Southbound database. Default is false.
316
317       options : ic-route-adv-default: optional string
318              A boolean value that enables advertising default  route  to  the
319              global OVN_IC_Southbound database. Default is false. This option
320              takes effect only when option ic-route-adv is true.
321
322       options : ic-route-learn-default: optional string
323              A boolean value that enables learning  default  route  from  the
324              global OVN_IC_Southbound database. Default is false. This option
325              takes effect only when option ic-route-learn is true.
326
327       options : ic-route-blacklist: optional string
328              A string value contains a list of  CIDRs  delimited  by  ",".  A
329              route  will  not  be advertised or learned if the route’s prefix
330              belongs to any of the CIDRs listed.
331
332     Connection Options:
333
334       connections: set of Connections
335              Database clients to  which  the  Open  vSwitch  database  server
336              should  connect or on which it should listen, along with options
337              for how these connections should be configured. See the  Connec‐
338              tion table for more information.
339
340       ssl: optional SSL
341              Global SSL configuration.
342
343     Security Configurations:
344
345       ipsec: boolean
346              Tunnel  encryption  configuration.  If  this column is set to be
347              true, all OVN tunnels will be encrypted with IPsec.
348
349     Read-only Options:
350
351       options : max_tunid: optional string
352              The maximum supported tunnel ID. Depends on types of  encapsula‐
353              tion enabled in the cluster.
354

Logical_Switch TABLE

356       Each row represents one L2 logical switch.
357
358       There  are two kinds of logical switches, that is, ones that fully vir‐
359       tualize the network (overlay logical switches) and  ones  that  provide
360       simple  connectivity  to  physical networks (bridged logical switches).
361       They work in the same way when providing connectivity  between  logical
362       ports  on  same chassis, but differently when connecting remote logical
363       ports. Overlay logical switches connect remote logical  ports  by  tun‐
364       nels,  while  bridged  logical  switches provide connectivity to remote
365       ports by bridging the packets to directly connected  physical  L2  seg‐
366       ments  with the help of localnet ports. Each bridged logical switch has
367       one or more localnet ports, which have only  one  special  address  un‐
368       known.
369
370   Summary:
371       ports                         set of Logical_Switch_Ports
372       load_balancer                 set of weak reference to Load_Balancers
373       acls                          set of ACLs
374       qos_rules                     set of QoSes
375       dns_records                   set of weak reference to DNSes
376       forwarding_groups             set of Forwarding_Groups
377       Naming:
378         name                        string
379         external_ids : neutron:network_name
380                                     optional string
381       IP Address Assignment:
382         other_config : subnet       optional string
383         other_config : exclude_ips  optional string
384         other_config : ipv6_prefix  optional string
385         other_config : mac_only     optional string, either true or false
386       IP Multicast Snooping Options:
387         other_config : mcast_snoop  optional string, either true or false
388         other_config : mcast_querier
389                                     optional string, either true or false
390         other_config : mcast_flood_unregistered
391                                     optional string, either true or false
392         other_config : mcast_table_size
393                                     optional  string,  containing an integer,
394                                     in range 1 to 32,766
395         other_config : mcast_idle_timeout
396                                     optional string, containing  an  integer,
397                                     in range 15 to 3,600
398         other_config : mcast_query_interval
399                                     optional  string,  containing an integer,
400                                     in range 1 to 3,600
401         other_config : mcast_query_max_response
402                                     optional string, containing  an  integer,
403                                     in range 1 to 10
404         other_config : mcast_eth_src
405                                     optional string
406         other_config : mcast_ip4_src
407                                     optional string
408         other_config : mcast_ip6_src
409                                     optional string
410       Interconnection:
411         other_config : interconn-ts
412                                     optional string
413       Tunnel Key:
414         other_config : requested-tnl-key
415                                     optional  string,  containing an integer,
416                                     in range 1 to 16,777,215
417       Other options:
418         other_config : vlan-passthru
419                                     optional string, either true or false
420       Common Columns:
421         external_ids                map of string-string pairs
422
423   Details:
424       ports: set of Logical_Switch_Ports
425              The logical ports connected to the logical switch.
426
427              It is an error for multiple logical switches to include the same
428              logical port.
429
430       load_balancer: set of weak reference to Load_Balancers
431              Load  balance a virtual ip address to a set of logical port end‐
432              point ip addresses.
433
434       acls: set of ACLs
435              Access control rules that apply to packets  within  the  logical
436              switch.
437
438       qos_rules: set of QoSes
439              QoS  marking and metering rules that apply to packets within the
440              logical switch.
441
442       dns_records: set of weak reference to DNSes
443              This column defines the DNS records to be used for resolving in‐
444              ternal  DNS  queries within the logical switch by the native DNS
445              resolver. Please see the DNS table.
446
447       forwarding_groups: set of Forwarding_Groups
448              Groups a set of logical port endpoints for traffic going out  of
449              the logical switch.
450
451     Naming:
452
453       These columns provide names for the logical switch. From OVN’s perspec‐
454       tive, these names have no special meaning or purpose other than to pro‐
455       vide  convenience  for human interaction with the database. There is no
456       requirement for the name to be unique. (For a unique identifier  for  a
457       logical switch, use its row UUID.)
458
459       (Originally, name was intended to serve the purpose of a human-friendly
460       name, but the Neutron integration used it to uniquely identify its  own
461       switch  object,  in  the format neutron-uuid. Later on, Neutron started
462       propagating the friendly name of a switch as  external_ids:neutron:net‐
463       work_name. Perhaps this can be cleaned up someday.)
464
465       name: string
466              A name for the logical switch.
467
468       external_ids : neutron:network_name: optional string
469              Another name for the logical switch.
470
471     IP Address Assignment:
472
473       These  options control automatic IP address management (IPAM) for ports
474       attached to the logical switch. To enable IPAM for IPv4, set other_con‐
475       fig:subnet  and optionally other_config:exclude_ips. To enable IPAM for
476       IPv6, set other_config:ipv6_prefix. IPv4 and IPv6 may  be  enabled  to‐
477       gether or separately.
478
479       To  request  dynamic  address assignment for a particular port, use the
480       dynamic  keyword  in  the  addresses  column  of   the   port’s   Logi‐
481       cal_Switch_Port row. This requests both an IPv4 and an IPv6 address, if
482       IPAM for IPv4 and IPv6 are both enabled.
483
484       other_config : subnet: optional string
485              Set this to an  IPv4  subnet,  e.g.  192.168.0.0/24,  to  enable
486              ovn-northd to automatically assign IP addresses within that sub‐
487              net.
488
489       other_config : exclude_ips: optional string
490              To exclude some addresses from automatic IP address  management,
491              set  this to a list of the IPv4 addresses or ..-delimited ranges
492              to exclude. The addresses or ranges should be a subset of  those
493              in other_config:subnet.
494
495              Whether  listed or not, ovn-northd will never allocate the first
496              or  last  address  in  a  subnet,   such   as   192.168.0.0   or
497              192.168.0.255 in 192.168.0.0/24.
498
499              Examples:
500
501192.168.0.2 192.168.0.10
502
503192.168.0.4                    192.168.0.30..192.168.0.60
504                     192.168.0.110..192.168.0.120
505
506192.168.0.110..192.168.0.120   192.168.0.25..192.168.0.30
507                     192.168.0.144
508
509       other_config : ipv6_prefix: optional string
510              Set this to an IPv6 prefix to enable ovn-northd to automatically
511              assign IPv6 addresses using this prefix. The assigned  IPv6  ad‐
512              dress  will  be  generated using the IPv6 prefix and the MAC ad‐
513              dress (converted to an IEEE EUI64 identifier) of the  port.  The
514              IPv6  prefix  defined here should be a valid IPv6 address ending
515              with ::.
516
517              Examples:
518
519aef0::
520
521bef0:1234:a890:5678::
522
5238230:5678::
524
525       other_config : mac_only: optional string, either true or false
526              Value used to request to assign L2 address only if neither  sub‐
527              net nor ipv6_prefix are specified
528
529     IP Multicast Snooping Options:
530
531       These  options control IP Multicast Snooping configuration of the logi‐
532       cal  switch.  To  enable   IP   Multicast   Snooping   set   other_con‐
533       fig:mcast_snoop  to true. To enable IP Multicast Querier set other_con‐
534       fig:mcast_snoop to true. If IP Multicast Querier is enabled  other_con‐
535       fig:mcast_eth_src and other_config:mcast_ip4_src must be set.
536
537       other_config : mcast_snoop: optional string, either true or false
538              Enables/disables IP Multicast Snooping on the logical switch.
539
540       other_config : mcast_querier: optional string, either true or false
541              Enables/disables IP Multicast Querier on the logical switch.
542
543       other_config  :  mcast_flood_unregistered: optional string, either true
544       or false
545              Determines whether  unregistered  multicast  traffic  should  be
546              flooded  or  not. Only applicable if other_config:mcast_snoop is
547              enabled.
548
549       other_config : mcast_table_size: optional string, containing  an  inte‐
550       ger, in range 1 to 32,766
551              Number of multicast groups to be stored. Default: 2048.
552
553       other_config : mcast_idle_timeout: optional string, containing an inte‐
554       ger, in range 15 to 3,600
555              Configures the IP Multicast Snooping group idle timeout (in sec‐
556              onds). Default: 300 seconds.
557
558       other_config : mcast_query_interval: optional string, containing an in‐
559       teger, in range 1 to 3,600
560              Configures the IP Multicast Querier interval between queries (in
561              seconds). Default: other_config:mcast_idle_timeout / 2.
562
563       other_config : mcast_query_max_response: optional string, containing an
564       integer, in range 1 to 10
565              Configures the value of the "max-response" field in  the  multi‐
566              cast  queries  originated by the logical switch. Default: 1 sec‐
567              ond.
568
569       other_config : mcast_eth_src: optional string
570              Configures the source Ethernet address for queries originated by
571              the logical switch.
572
573       other_config : mcast_ip4_src: optional string
574              Configures the source IPv4 address for queries originated by the
575              logical switch.
576
577       other_config : mcast_ip6_src: optional string
578              Configures the source IPv6 address for queries originated by the
579              logical switch.
580
581     Interconnection:
582
583       other_config : interconn-ts: optional string
584              The  name  of  corresponding transit switch in OVN_IC_Northbound
585              database. This kind of logical switch is created and  controlled
586              by ovn-ic.
587
588     Tunnel Key:
589
590       other_config  : requested-tnl-key: optional string, containing an inte‐
591       ger, in range 1 to 16,777,215
592              Configures the datapath tunnel key for the logical switch.  Usu‐
593              ally this is not needed because ovn-northd will assign an unique
594              key for each datapath by itself. However, if it  is  configured,
595              ovn-northd  honors the configured value. The typical use case is
596              for interconnection: the tunnel keys for transit  switches  need
597              to  be  unique  globally,  so  they are maintained in the global
598              OVN_IC_Southbound database, and ovn-ic simply  syncs  the  value
599              from OVN_IC_Southbound through this config.
600
601     Other options:
602
603       other_config : vlan-passthru: optional string, either true or false
604              Determines  whether  VLAN  tagged incoming traffic should be al‐
605              lowed.
606
607     Common Columns:
608
609       external_ids: map of string-string pairs
610              See External IDs at the beginning of this document.
611

Logical_Switch_Port TABLE

613       A port within an L2 logical switch.
614
615   Summary:
616       Core Features:
617         name                        string (must be unique within table)
618         type                        string
619       Options:
620         options                     map of string-string pairs
621         Options for router ports:
622            options : router-port    optional string
623            options : nat-addresses  optional string
624         Options for localnet ports:
625            options : network_name   optional string
626         Options for l2gateway ports:
627            options : network_name   optional string
628            options : l2gateway-chassis
629                                     optional string
630         Options for vtep ports:
631            options : vtep-physical-switch
632                                     optional string
633            options : vtep-logical-switch
634                                     optional string
635         VMI (or VIF) Options:
636            options : requested-chassis
637                                     optional string
638            options : qos_max_rate   optional string
639            options : qos_burst      optional string
640         Virtual port Options:
641            options : virtual-ip     optional string
642            options : virtual-parents
643                                     optional string
644         IP Multicast Snooping Options:
645            options : mcast_flood    optional string, either true or false
646            options : mcast_flood_reports
647                                     optional string, either true or false
648       Containers:
649         parent_name                 optional string
650         tag_request                 optional integer, in range 0 to 4,095
651         tag                         optional integer, in range 1 to 4,095
652       Port State:
653         up                          optional boolean
654         enabled                     optional boolean
655       Addressing:
656         addresses                   set of strings
657         dynamic_addresses           optional string
658         port_security               set of strings
659       DHCP:
660         dhcpv4_options              optional weak reference to DHCP_Options
661         dhcpv6_options              optional weak reference to DHCP_Options
662       ha_chassis_group              optional HA_Chassis_Group
663       Naming:
664         external_ids : neutron:port_name
665                                     optional string
666       Tunnel Key:
667         options : requested-tnl-key
668                                     optional string, containing  an  integer,
669                                     in range 1 to 32,767
670       Common Columns:
671         external_ids                map of string-string pairs
672
673   Details:
674     Core Features:
675
676       name: string (must be unique within table)
677              The logical port name.
678
679              For  entities (VMs or containers) that are spawned in the hyper‐
680              visor, the name used here must match those used  in  the  exter‐
681              nal_ids:iface-id in the Open_vSwitch database’s Interface table,
682              because hypervisors use external_ids:iface-id as a lookup key to
683              identify the network interface of that entity.
684
685              For containers that share a VIF within a VM, the name can be any
686              unique identifier. See Containers, below, for more information.
687
688              A logical switch port may not have the same name  as  a  logical
689              router port, but the database schema cannot enforce this.
690
691       type: string
692              Specify  a type for this logical port. Logical ports can be used
693              to model other types of connectivity into an OVN logical switch.
694              The following types are defined:
695
696              (empty string)
697                     A VM (or VIF) interface.
698
699              router A  connection  to  a  logical  router.  The  value of op‐
700                     tions:router-port  specifies  the  name  of   the   Logi‐
701                     cal_Router_Port to which this logical switch port is con‐
702                     nected.
703
704              localnet
705                     A  connection  to  a  locally  accessible  network   from
706                     ovn-controller instances that have a corresponding bridge
707                     mapping. A logical  switch  can  have  multiple  localnet
708                     ports attached. This type is used to model direct connec‐
709                     tivity to existing networks. In this case,  each  chassis
710                     should  have  a  mapping for one of the physical networks
711                     only. Note: nothing said above  implies  that  a  chassis
712                     cannot  be  plugged to multiple physical networks as long
713                     as they belong to different switches.
714
715              localport
716                     A connection to a local VIF. Traffic that  arrives  on  a
717                     localport  is  never  forwarded  over a tunnel to another
718                     chassis. These ports are present  on  every  chassis  and
719                     have  the  same  address  in all of them. This is used to
720                     model connectivity to local services that  run  on  every
721                     hypervisor.
722
723              l2gateway
724                     A connection to a physical network.
725
726              vtep   A port to a logical switch on a VTEP gateway.
727
728              external
729                     Represents  a logical port which is external and not hav‐
730                     ing an OVS port in the integration bridge. OVN will never
731                     receive any traffic from this port or send any traffic to
732                     this  port.  OVN  can  support   native   services   like
733                     DHCPv4/DHCPv6/DNS  for  this port. If ha_chassis_group is
734                     defined, ovn-controller running in the master chassis  of
735                     the HA chassis group will bind this port to provide these
736                     native services. It is expected that this port belong  to
737                     a bridged logical switch (with a localnet port).
738
739                     It  is  recommended  to use the same HA chassis group for
740                     all the external ports of a  logical  switch.  Otherwise,
741                     the physical switch might see MAC flap issue when differ‐
742                     ent chassis provide the native services. For example when
743                     supporting native DHCPv4 service, DHCPv4 server mac (con‐
744                     figured in options:server_mac column  in  table  DHCP_Op‐
745                     tions)  originating  from  different  ports can cause MAC
746                     flap issue. The MAC of the logical router IP(s) can  also
747                     flap  if the same HA chassis group is not set for all the
748                     external ports of a logical switch.
749
750                     Below are some of the use cases where external ports  can
751                     be used.
752
753                     •      VMs  connected to SR-IOV nics - Traffic from these
754                            VMs by passes the kernel stack and local  ovn-con‐
755                            troller  do  not bind these ports and cannot serve
756                            the native services.
757
758                     •      When CMS supports provisioning baremetal servers.
759
760              virtual
761                     Represents a logical port which does not have an OVS port
762                     in the integration bridge and has a virtual ip configured
763                     in the options:virtual-ip column.  This  virtual  ip  can
764                     move  around  between the logical ports configured in the
765                     options:virtual-parents column.
766
767                     One of the use case where virtual ports can be used is.
768
769                     •      The virtual ip represents a load balancer vip  and
770                            the  virtual parents provide load balancer service
771                            in an active-standby setup with the active virtual
772                            parent owning the virtual ip.
773
774              remote A remote port is to model a port that resides remotely on
775                     another OVN, which is on the other side of a transit log‐
776                     ical  switch  for OVN interconnection. This type of ports
777                     are created by ovn-ic instead of by CMS.  Any  change  to
778                     the port will be automatically overwritten by ovn-ic.
779
780     Options:
781
782       options: map of string-string pairs
783              This  column provides key/value settings specific to the logical
784              port type. The type-specific options are described  individually
785              below.
786
787     Options for router ports:
788
789       These options apply when type is router.
790
791       options : router-port: optional string
792              Required. The name of the Logical_Router_Port to which this log‐
793              ical switch port is connected.
794
795       options : nat-addresses: optional string
796              This is used to send gratuitous ARPs for SNAT and  DNAT  IP  ad‐
797              dresses via the localnet port that is attached to the same logi‐
798              cal switch as this type router port. This option is specified on
799              a  logical switch port that is connected to a gateway router, or
800              a logical switch port that is connected to a distributed gateway
801              port on a logical router.
802
803              This must take one of the following forms:
804
805              router Gratuitous ARPs will be sent for all SNAT and DNAT exter‐
806                     nal IP addresses and for all load balancer  IP  addresses
807                     defined  on the options:router-port’s logical router, us‐
808                     ing the options:router-port’s MAC address.
809
810                     This form of options:nat-addresses is valid  for  logical
811                     switch  ports  where options:router-port is the name of a
812                     port on a gateway router, or the name  of  a  distributed
813                     gateway port.
814
815                     Supported only in OVN 2.8 and later. Earlier versions re‐
816                     quired NAT addresses to be manually synchronized.
817
818              Ethernet address followed by one or more IPv4 addresses
819                     Example:  80:fa:5b:06:72:b7  158.36.44.22   158.36.44.24.
820                     This would result in generation of gratuitous ARPs for IP
821                     addresses 158.36.44.22 and 158.36.44.24 with  a  MAC  ad‐
822                     dress of 80:fa:5b:06:72:b7.
823
824                     This form of options:nat-addresses is only valid for log‐
825                     ical switch ports where options:router-port is  the  name
826                     of a port on a gateway router.
827
828     Options for localnet ports:
829
830       These options apply when type is localnet.
831
832       options : network_name: optional string
833              Required.  The name of the network to which the localnet port is
834              connected. Each hypervisor, via ovn-controller, uses  its  local
835              configuration  to  determine  exactly how to connect to this lo‐
836              cally accessible network, if at all.
837
838     Options for l2gateway ports:
839
840       These options apply when type is l2gateway.
841
842       options : network_name: optional string
843              Required. The name of the network to which the l2gateway port is
844              connected.  The  L2  gateway, via ovn-controller, uses its local
845              configuration to determine exactly how to connect to  this  net‐
846              work.
847
848       options : l2gateway-chassis: optional string
849              Required. The chassis on which the l2gateway logical port should
850              be bound to. ovn-controller running on the defined chassis  will
851              connect this logical port to the physical network.
852
853     Options for vtep ports:
854
855       These options apply when type is vtep.
856
857       options : vtep-physical-switch: optional string
858              Required. The name of the VTEP gateway.
859
860       options : vtep-logical-switch: optional string
861              Required. A logical switch name connected by the VTEP gateway.
862
863     VMI (or VIF) Options:
864
865       These options apply to logical ports with type having (empty string)
866
867       options : requested-chassis: optional string
868              If set, identifies a specific chassis (by name or hostname) that
869              is allowed to bind this port. Using  this  option  will  prevent
870              thrashing  between two chassis trying to bind the same port dur‐
871              ing a live migration. It can also prevent similar thrashing  due
872              to  a  mis-configuration,  if  a port is accidentally created on
873              more than one chassis.
874
875       options : qos_max_rate: optional string
876              If set, indicates the maximum rate for data sent from  this  in‐
877              terface,  in bit/s. The traffic will be shaped according to this
878              limit.
879
880       options : qos_burst: optional string
881              If set, indicates the maximum burst size for data sent from this
882              interface, in bits.
883
884     Virtual port Options:
885
886       These options apply when type is virtual.
887
888       options : virtual-ip: optional string
889              This option represents the virtual IPv4 address.
890
891       options : virtual-parents: optional string
892              This options represents a set of logical port names (with in the
893              same logical switch) which can own the virtual ip configured  in
894              the options:virtual-ip. All these virtual parents should add the
895              virtual ip in the port_security if port security  addressed  are
896              enabled.
897
898     IP Multicast Snooping Options:
899
900       These options apply when the port is part of a logical switch which has
901       other_config :mcast_snoop set to true.
902
903       options : mcast_flood: optional string, either true or false
904              If set to true, multicast packets (except reports) are  uncondi‐
905              tionally forwarded to the specific port.
906
907       options : mcast_flood_reports: optional string, either true or false
908              If  set to true, multicast reports are unconditionally forwarded
909              to the specific port.
910
911     Containers:
912
913       When a large number of containers are nested within a VM, it may be too
914       expensive to dedicate a VIF to each container. OVN can use VLAN tags to
915       support such cases. Each container is  assigned  a  VLAN  ID  and  each
916       packet that passes between the hypervisor and the VM is tagged with the
917       appropriate ID for the container. Such VLAN IDs never appear on a phys‐
918       ical wire, even inside a tunnel, so they need not be unique except rel‐
919       ative to a single VM on a hypervisor.
920
921       These columns are used for VIFs that represent nested containers  using
922       shared  VIFs. For VMs and for containers that have dedicated VIFs, they
923       are empty.
924
925       parent_name: optional string
926              The VM interface through which the nested  container  sends  its
927              network  traffic. This must match the name column for some other
928              Logical_Switch_Port.
929
930       tag_request: optional integer, in range 0 to 4,095
931              The VLAN tag in the  network  traffic  associated  with  a  con‐
932              tainer’s network interface. The client can request ovn-northd to
933              allocate a tag that is unique within the  scope  of  a  specific
934              parent  (specified  in  parent_name)  by setting a value of 0 in
935              this column. The allocated value is written by ovn-northd in the
936              tag  column. (Note that these tags are allocated and managed lo‐
937              cally in ovn-northd, so they  cannot  be  reconstructed  in  the
938              event  that the database is lost.) The client can also request a
939              specific non-zero tag and ovn-northd will honor it and copy that
940              value to the tag column.
941
942              When  type  is  set to localnet or l2gateway, this can be set to
943              indicate that the port represents a  connection  to  a  specific
944              VLAN  on  a  locally  accessible network. The VLAN ID is used to
945              match incoming traffic and is also added to outgoing traffic.
946
947       tag: optional integer, in range 1 to 4,095
948              The VLAN tag allocated by ovn-northd based on  the  contents  of
949              the tag_request column.
950
951     Port State:
952
953       up: optional boolean
954              This  column  is populated by ovn-northd, rather than by the CMS
955              plugin as is most of this database. When a logical port is bound
956              to  a  physical  location in the OVN Southbound database Binding
957              table, ovn-northd sets this column to true; otherwise, or if the
958              port  becomes unbound later, it sets it to false. If this column
959              is empty, the port is not considered up. This allows the CMS  to
960              wait for a VM’s (or container’s) networking to become active be‐
961              fore it allows the VM (or container) to start.
962
963              Logical ports of router type are an exception to this rule. They
964              are  considered  to  be always up, that is this column is always
965              set to true.
966
967       enabled: optional boolean
968              This column is used to administratively set port state. If  this
969              column  is empty or is set to true, the port is enabled. If this
970              column is set to false, the port is disabled.  A  disabled  port
971              has all ingress and egress traffic dropped.
972
973     Addressing:
974
975       addresses: set of strings
976              Addresses owned by the logical port.
977
978              Each element in the set must take one of the following forms:
979
980              Ethernet address followed by zero or more IPv4 or IPv6 addresses
981              (or both)
982                     An Ethernet address defined is owned by the logical port.
983                     Like  a  physical Ethernet NIC, a logical port ordinarily
984                     has a single fixed Ethernet address.
985
986                     When a OVN logical switch processes  a  unicast  Ethernet
987                     frame  whose  destination  MAC  address  is  in a logical
988                     port’s addresses column, it  delivers  it  only  to  that
989                     port,  as  if a MAC learning process had learned that MAC
990                     address on the port.
991
992                     If IPv4 or IPv6 address(es) (or both) are defined, it in‐
993                     dicates  that  the  logical  port  owns  the given IP ad‐
994                     dresses.
995
996                     If IPv4 address(es) are defined, the OVN  logical  switch
997                     uses  this information to synthesize responses to ARP re‐
998                     quests without traversing the physical network.  The  OVN
999                     logical  router  connected to the logical switch, if any,
1000                     uses this information to avoid issuing ARP  requests  for
1001                     logical switch ports.
1002
1003                     Note  that  the order here is important. The Ethernet ad‐
1004                     dress must be listed before the  IP  address(es)  if  de‐
1005                     fined.
1006
1007                     Examples:
1008
1009                     80:fa:5b:06:72:b7
1010                            This  indicates  that  the  logical  port owns the
1011                            above mac address.
1012
1013                     80:fa:5b:06:72:b7 10.0.0.4 20.0.0.4
1014                            This indicates that the logical port owns the  mac
1015                            address and two IPv4 addresses.
1016
1017                     80:fa:5b:06:72:b7 fdaa:15f2:72cf:0:f816:3eff:fe20:3f41
1018                            This  indicates that the logical port owns the mac
1019                            address and 1 IPv6 address.
1020
1021                     80:fa:5b:06:72:b7                                10.0.0.4
1022                     fdaa:15f2:72cf:0:f816:3eff:fe20:3f41
1023                            This  indicates that the logical port owns the mac
1024                            address and 1 IPv4 address and 1 IPv6 address.
1025
1026              unknown
1027                     This indicates that the logical port has an  unknown  set
1028                     of  Ethernet  addresses.  When an OVN logical switch pro‐
1029                     cesses a unicast Ethernet frame whose destination MAC ad‐
1030                     dress  is  not in any logical port’s addresses column, it
1031                     delivers it to the port (or ports) whose  addresses  col‐
1032                     umns include unknown.
1033
1034              dynamic
1035                     Use dynamic to make ovn-northd generate a globally unique
1036                     MAC address, choose an unused IPv4 address with the logi‐
1037                     cal  port’s  subnet (if other_config:subnet is set in the
1038                     port’s Logical_Switch), and generate an IPv6 address from
1039                     the  MAC  address  (if other_config:ipv6_prefix is set in
1040                     the port’s Logical_Switch) and store them in  the  port’s
1041                     dynamic_addresses column.
1042
1043                     Only  one  element  containing  dynamic may appear in ad‐
1044                     dresses.
1045
1046              dynamic ip
1047              dynamic ipv6
1048              dynamic ip ipv6
1049                   These act like dynamic alone but specify particular IPv4 or
1050                   IPv6  addresses  to  use. OVN IPAM will still automatically
1051                   allocate the other address if configured appropriately. Ex‐
1052                   ample: dynamic 192.168.0.1 2001::1.
1053
1054              mac dynamic
1055                   This acts like dynamic alone but specifies a particular MAC
1056                   address to use. OVN IPAM will still automatically  allocate
1057                   IPv4  or  IPv6  addresses, or both, if configured appropri‐
1058                   ately. Example: 80:fa:5b:06:72:b7 dynamic
1059
1060              router
1061                   Accepted only when type is router. This indicates that  the
1062                   Ethernet,  IPv4, and IPv6 addresses for this logical switch
1063                   port should be obtained from the connected  logical  router
1064                   port, as specified by router-port in options.
1065
1066                   The  resulting  addresses  are used to populate the logical
1067                   switch’s destination  lookup,  and  also  for  the  logical
1068                   switch to generate ARP and ND replies.
1069
1070                   If  the  connected  logical  router  port has a distributed
1071                   gateway port specified and the  logical  router  has  rules
1072                   specified  in  nat  with external_mac, then those addresses
1073                   are also used to populate the switch’s destination lookup.
1074
1075                   Supported only in OVN 2.7 and later. Earlier  versions  re‐
1076                   quired router addresses to be manually synchronized.
1077
1078       dynamic_addresses: optional string
1079              Addresses assigned to the logical port by ovn-northd, if dynamic
1080              is specified in addresses. Addresses will be of the same  format
1081              as  those  that populate the addresses column. Note that dynami‐
1082              cally assigned addresses are constructed and managed locally  in
1083              ovn-northd,  so  they  cannot be reconstructed in the event that
1084              the database is lost.
1085
1086       port_security: set of strings
1087              This column controls the addresses from which the host  attached
1088              to  the  logical  port (``the host’’) is allowed to send packets
1089              and to which it is allowed to receive packets. If this column is
1090              empty, all addresses are permitted.
1091
1092              Each  element  in  the set must begin with one Ethernet address.
1093              This would restrict the host to sending packets from and receiv‐
1094              ing  packets  to  the  ethernet addresses defined in the logical
1095              port’s port_security column. It also restricts the inner  source
1096              MAC  addresses  that  the host may send in ARP and IPv6 Neighbor
1097              Discovery packets. The host is always allowed to receive packets
1098              to multicast and broadcast Ethernet addresses.
1099
1100              Each  element  in  the  set may additionally contain one or more
1101              IPv4 or IPv6 addresses (or both), with optional masks. If a mask
1102              is  given,  it  must be a CIDR mask. In addition to the restric‐
1103              tions described for Ethernet addresses above,  such  an  element
1104              restricts  the  IPv4  or  IPv6 addresses from which the host may
1105              send and to which it may receive packets to  the  specified  ad‐
1106              dresses.  A  masked address, if the host part is zero, indicates
1107              that the host is allowed to use any address in  the  subnet;  if
1108              the  host part is nonzero, the mask simply indicates the size of
1109              the subnet. In addition:
1110
1111              •      If any IPv4 address is given, the host is also allowed to
1112                     receive  packets  to  the  IPv4  local  broadcast address
1113                     255.255.255.255   and   to   IPv4   multicast   addresses
1114                     (224.0.0.0/4).  If  an IPv4 address with a mask is given,
1115                     the host is also allowed to receive packets to the broad‐
1116                     cast address in that specified subnet.
1117
1118                     If  any  IPv4  address is given, the host is additionally
1119                     restricted to sending  ARP  packets  with  the  specified
1120                     source IPv4 address. (RARP is not restricted.)
1121
1122              •      If any IPv6 address is given, the host is also allowed to
1123                     receive packets to IPv6 multicast addresses (ff00::/8).
1124
1125                     If any IPv6 address is given, the  host  is  additionally
1126                     restricted  to  sending IPv6 Neighbor Discovery Solicita‐
1127                     tion or Advertisement packets with the  specified  source
1128                     address or, for solicitations, the unspecified address.
1129
1130              If  an  element includes an IPv4 address, but no IPv6 addresses,
1131              then IPv6 traffic is not allowed. If an element includes an IPv6
1132              address,  but  no IPv4 address, then IPv4 and ARP traffic is not
1133              allowed.
1134
1135              This column uses the same lexical syntax as the match column  in
1136              the OVN Southbound database’s Pipeline table. Multiple addresses
1137              within an element may be space or comma separated.
1138
1139              This column is provided as a  convenience  to  cloud  management
1140              systems,  but  all of the features that it implements can be im‐
1141              plemented as ACLs using the ACL table.
1142
1143              Examples:
1144
1145              80:fa:5b:06:72:b7
1146                     The host may send traffic from and receive traffic to the
1147                     specified MAC address, and to receive traffic to Ethernet
1148                     multicast and broadcast addresses, but not otherwise. The
1149                     host  may not send ARP or IPv6 Neighbor Discovery packets
1150                     with inner source Ethernet addresses other than  the  one
1151                     specified.
1152
1153              80:fa:5b:06:72:b7 192.168.1.10/24
1154                     This  adds further restrictions to the first example. The
1155                     host may send IPv4 packets from or receive  IPv4  packets
1156                     to  only  192.168.1.10,  except  that it may also receive
1157                     IPv4 packets to 192.168.1.255 (based on the subnet mask),
1158                     255.255.255.255, and any address in 224.0.0.0/4. The host
1159                     may not send ARPs with a source  Ethernet  address  other
1160                     than  80:fa:5b:06:72:b7 or source IPv4 address other than
1161                     192.168.1.10. The host may not send or receive  any  IPv6
1162                     (including IPv6 Neighbor Discovery) traffic.
1163
1164              "80:fa:5b:12:42:ba", "80:fa:5b:06:72:b7 192.168.1.10/24"
1165                     The host may send traffic from and receive traffic to the
1166                     specified MAC addresses, and to receive traffic to Ether‐
1167                     net multicast and broadcast addresses, but not otherwise.
1168                     With MAC 80:fa:5b:12:42:ba, the  host  may  send  traffic
1169                     from  and  receive  traffic  to  any L3 address. With MAC
1170                     80:fa:5b:06:72:b7, the host may send IPv4 packets from or
1171                     receive IPv4 packets to only 192.168.1.10, except that it
1172                     may also receive IPv4 packets to 192.168.1.255 (based  on
1173                     the  subnet  mask),  255.255.255.255,  and any address in
1174                     224.0.0.0/4. The host may not send or  receive  any  IPv6
1175                     (including IPv6 Neighbor Discovery) traffic.
1176
1177     DHCP:
1178
1179       dhcpv4_options: optional weak reference to DHCP_Options
1180              This  column  defines  the  DHCPv4 Options to be included by the
1181              ovn-controller when it replies to the  DHCPv4  requests.  Please
1182              see the DHCP_Options table.
1183
1184       dhcpv6_options: optional weak reference to DHCP_Options
1185              This  column  defines  the  DHCPv6 Options to be included by the
1186              ovn-controller when it replies to the  DHCPv6  requests.  Please
1187              see the DHCP_Options table.
1188
1189       ha_chassis_group: optional HA_Chassis_Group
1190              References  a  row  in  the  OVN  Northbound database’s HA_Chas‐
1191              sis_Group table. It indicates the HA chassis group to use if the
1192              type is set to external. If type is not external, this column is
1193              ignored.
1194
1195     Naming:
1196
1197       external_ids : neutron:port_name: optional string
1198              This column gives an optional human-friendly name for the  port.
1199              This  name  has no special meaning or purpose other than to pro‐
1200              vide convenience for human interaction with the northbound data‐
1201              base.
1202
1203              Neutron  copies  this  from its own port object’s name. (Neutron
1204              ports do are not assigned human-friendly names by default, so it
1205              will often be empty.)
1206
1207     Tunnel Key:
1208
1209       options : requested-tnl-key: optional string, containing an integer, in
1210       range 1 to 32,767
1211              Configures the port binding tunnel key  for  the  port.  Usually
1212              this  is not needed because ovn-northd will assign an unique key
1213              for  each  port  by  itself.  However,  if  it  is   configured,
1214              ovn-northd  honors the configured value. The typical use case is
1215              for interconnection:  the  tunnel  keys  for  ports  on  transit
1216              switches  need  to be unique globally, so they are maintained in
1217              the global OVN_IC_Southbound database, and ovn-ic  simply  syncs
1218              the value from OVN_IC_Southbound through this config.
1219
1220     Common Columns:
1221
1222       external_ids: map of string-string pairs
1223              See External IDs at the beginning of this document.
1224
1225              The  ovn-northd  program  copies all these pairs into the exter‐
1226              nal_ids column of the Port_Binding table in OVN_Southbound data‐
1227              base.
1228

Forwarding_Group TABLE

1230       Each row represents one forwarding group.
1231
1232   Summary:
1233       name                          string
1234       vip                           string
1235       vmac                          string
1236       liveness                      boolean
1237       child_port                    set of 1 or more strings
1238       Common Columns:
1239         external_ids                map of string-string pairs
1240
1241   Details:
1242       name: string
1243              A  name for the forwarding group. This name has no special mean‐
1244              ing or purpose other than to provide convenience for  human  in‐
1245              teraction with the ovn-nb database.
1246
1247       vip: string
1248              The virtual IP address assigned to the forwarding group. It will
1249              respond with vmac when an ARP request is sent for vip.
1250
1251       vmac: string
1252              The virtual MAC address assigned to the forwarding group.
1253
1254       liveness: boolean
1255              If set to true, liveness is enabled for child ports otherwise it
1256              is disabled.
1257
1258       child_port: set of 1 or more strings
1259              List of child ports in the forwarding group.
1260
1261     Common Columns:
1262
1263       external_ids: map of string-string pairs
1264              See External IDs at the beginning of this document.
1265

Address_Set TABLE

1267       Each  row in this table represents a named set of addresses. An address
1268       set may contain Ethernet, IPv4, or IPv6 addresses with optional bitwise
1269       or  CIDR  masks.  Address set may ultimately be used in ACLs to compare
1270       against fields such as ip4.src or ip6.src. A single  address  set  must
1271       contain  addresses of the same type. As an example, the following would
1272       create an address set with three IP addresses:
1273
1274             ovn-nbctl create Address_Set name=set1 addresses=’10.0.0.1 10.0.0.2 10.0.0.3’
1275
1276
1277       Address sets may be used in the match column of the ACL table. For syn‐
1278       tax  information,  see  the details of the expression language used for
1279       the match column in the Logical_Flow table of the OVN_Southbound  data‐
1280       base.
1281
1282   Summary:
1283       name                          string (must be unique within table)
1284       addresses                     set of strings
1285       Common Columns:
1286         external_ids                map of string-string pairs
1287
1288   Details:
1289       name: string (must be unique within table)
1290              A  name  for  the  address  set.  Names are ASCII and must match
1291              [a-zA-Z_.][a-zA-Z_.0-9]*.
1292
1293       addresses: set of strings
1294              The set of addresses in string form.
1295
1296     Common Columns:
1297
1298       external_ids: map of string-string pairs
1299              See External IDs at the beginning of this document.
1300

Port_Group TABLE

1302       Each row in this table represents  a  named  group  of  logical  switch
1303       ports.
1304
1305       Port  groups may be used in the match column of the ACL table. For syn‐
1306       tax information, see the details of the expression  language  used  for
1307       the  match column in the Logical_Flow table of the OVN_Southbound data‐
1308       base.
1309
1310       For each port group, there are two address sets generated  to  the  Ad‐
1311       dress_Set  table  of the OVN_Southbound database, containing the IP ad‐
1312       dresses of the group of ports, one for IPv4, and the  other  for  IPv6,
1313       with  name  being  the name of the Port_Group followed by a suffix _ip4
1314       for IPv4 and _ip6 for IPv6. The generated address sets can be  used  in
1315       the same way as regular address sets in the match column of the ACL ta‐
1316       ble. For syntax information, see the details of the expression language
1317       used  for  the match column in the Logical_Flow table of the OVN_South‐
1318       bound database.
1319
1320   Summary:
1321       name                          string (must be unique within table)
1322       ports                         set   of   weak   reference   to    Logi‐
1323                                     cal_Switch_Ports
1324       acls                          set of ACLs
1325       Common Columns:
1326         external_ids                map of string-string pairs
1327
1328   Details:
1329       name: string (must be unique within table)
1330              A  name  for  the  port  group.  Names  are ASCII and must match
1331              [a-zA-Z_.][a-zA-Z_.0-9]*.
1332
1333       ports: set of weak reference to Logical_Switch_Ports
1334              The logical switch ports belonging to the group in uuids.
1335
1336       acls: set of ACLs
1337              Access control rules that apply to the port group.  Applying  an
1338              ACL  to  a port group has the same effect as applying the ACL to
1339              all logical lswitches that the ports of the  port  group  belong
1340              to.
1341
1342     Common Columns:
1343
1344       external_ids: map of string-string pairs
1345              See External IDs at the beginning of this document.
1346

Load_Balancer TABLE

1348       Each row represents one load balancer.
1349
1350   Summary:
1351       name                          string
1352       vips                          map of string-string pairs
1353       protocol                      optional string, one of sctp, tcp, or udp
1354       Health Checks:
1355         health_check                set of Load_Balancer_Health_Checks
1356         ip_port_mappings            map of string-string pairs
1357       selection_fields              set  of strings, one of eth_dst, eth_src,
1358                                     ip_dst, ip_src, tp_dst, or tp_src
1359       Common Columns:
1360         external_ids                map of string-string pairs
1361       Load_Balancer options:
1362         options : reject            optional string, either true or false
1363         options : hairpin_snat_ip   optional string
1364         options : skip_snat         optional string
1365
1366   Details:
1367       name: string
1368              A name for the load balancer. This name has no  special  meaning
1369              or  purpose other than to provide convenience for human interac‐
1370              tion with the ovn-nb database.
1371
1372       vips: map of string-string pairs
1373              A map of virtual IP addresses (and an optional port number  with
1374              :  as  a separator) associated with this load balancer and their
1375              corresponding endpoint IP addresses (and optional  port  numbers
1376              with : as separators) separated by commas. If the destination IP
1377              address (and port number) of a packet leaving a container  or  a
1378              VM  matches  the  virtual  IP address (and port number) provided
1379              here as a key, then OVN will statefully replace the  destination
1380              IP  address  by one of the provided IP address (and port number)
1381              in this map as a value. IPv4 and IPv6  addresses  are  supported
1382              for  load balancing; however a VIP of one address family may not
1383              be mapped to a destination IP address of a different family.  If
1384              specifying an IPv6 address with a port, the address portion must
1385              be  enclosed  in  square  brackets.  Examples   for   keys   are
1386              "192.168.1.4"  and  "[fd0f::1]:8800".  Examples  for  value  are
1387              "10.0.0.1, 10.0.0.2" and "20.0.0.10:8800, 20.0.0.11:8800".
1388
1389              When the Load_Balancer is added to the logical_switch,  the  VIP
1390              has  to be in a different subnet than the one used for the logi‐
1391              cal_switch. Since VIP is in a different subnet, you should  con‐
1392              nect  your  logical  switch  to either a OVN logical router or a
1393              real router (this is because the client can now  send  a  packet
1394              with  VIP as the destination IP address and router’s mac address
1395              as the destination MAC address).
1396
1397       protocol: optional string, one of sctp, tcp, or udp
1398              Valid protocols are tcp, udp, or sctp.  This  column  is  useful
1399              when  a  port  number is provided as part of the vips column. If
1400              this column is empty and a port number is provided  as  part  of
1401              vips column, OVN assumes the protocol to be tcp.
1402
1403     Health Checks:
1404
1405       OVN  supports  health checks for load balancer endpoints, for IPv4 load
1406       balancers only. When health checks are enabled, the load balancer  uses
1407       only healthy endpoints.
1408
1409       Suppose      that      vips      contains      a     key-value     pair
1410       10.0.0.10:80=10.0.0.4:8080,20.0.0.4:8080. To enable health  checks  for
1411       this  virtual’s endpoints, add two key-value pairs to ip_port_mappings,
1412       with keys 10.0.0.4 and 20.0.0.4, and add to health_check a reference to
1413       a Load_Balancer_Health_Check row whose vip is set to 10.0.0.10.
1414
1415       health_check: set of Load_Balancer_Health_Checks
1416              Load balancer health checks associated with this load balancer.
1417
1418       ip_port_mappings: map of string-string pairs
1419              Maps  from endpoint IP to a colon-separated pair of logical port
1420              name and source IP, e.g. port_name:sourc_ip. Health  checks  are
1421              sent to this port with the specified source IP.
1422
1423              For  example, in the example above, IP to port mappings might be
1424              defined         as         10.0.0.4=sw0-p1:10.0.0.2          and
1425              20.0.0.4=sw1-p1:20.0.0.2,  if  the  values  given  were suitable
1426              ports and IP addresses.
1427
1428       selection_fields: set of strings,  one  of  eth_dst,  eth_src,  ip_dst,
1429       ip_src, tp_dst, or tp_src
1430              OVN  native  load  balancers  are  supported  using the OpenFlow
1431              groups of type  select.  OVS  supports  two  selection  methods:
1432              dp_hash  and  hash (with optional fields specified) in selecting
1433              the buckets of a group. Please see the  OVS  documentation  (man
1434              ovs-ofctl)  for more details on the selection methods. Each end‐
1435              point IP (and port if set) is mapped to a bucket  in  the  group
1436              flow.
1437
1438              CMS  can  choose the hash selection method by setting the selec‐
1439              tion fields in this  column.  ovs-vswitchd  uses  the  specified
1440              fields in generating the hash.
1441
1442              dp_hash selection method uses the assistance of datapath to cal‐
1443              culate the hash and it is expected to be faster than hash selec‐
1444              tion  method.  So CMS should take this into consideration before
1445              using the hash method. Please consult the OVS documentation  and
1446              OVS sources for the implementation details.
1447
1448     Common Columns:
1449
1450       external_ids: map of string-string pairs
1451              See External IDs at the beginning of this document.
1452
1453     Load_Balancer options:
1454
1455       options : reject: optional string, either true or false
1456              If  the load balancer is created with --reject option and it has
1457              no active backends, a TCP reset segment (for  tcp)  or  an  ICMP
1458              port  unreachable packet (for all other kind of traffic) will be
1459              sent whenever an incoming packet is received for this  load-bal‐
1460              ancer.  Please  note using --reject option will disable empty_lb
1461              SB controller event for this load balancer.
1462
1463       options : hairpin_snat_ip: optional string
1464              IP to be used as source IP for  packets  that  have  been  hair-
1465              pinned  after  load balancing. The default behavior when the op‐
1466              tion is not set is to use the load balancer VIP  as  source  IP.
1467              This option may have exactly one IPv4 and/or one IPv6 address on
1468              it, separated by a space character.
1469
1470       options : skip_snat: optional string
1471              If the load balancing rule is configured with skip_snat  option,
1472              the  force_snat_for_lb option configured for the router pipeline
1473              will not be applied for this load balancer.
1474

Load_Balancer_Health_Check TABLE

1476       Each row represents one load balancer health check. Health  checks  are
1477       supported for IPv4 load balancers only.
1478
1479   Summary:
1480       vip                           string
1481       Health check options:
1482         options : interval          optional string, containing an integer
1483         options : timeout           optional string, containing an integer
1484         options : success_count     optional string, containing an integer
1485         options : failure_count     optional string, containing an integer
1486       Common Columns:
1487         external_ids                map of string-string pairs
1488
1489   Details:
1490       vip: string
1491              vip whose endpoints should be monitored for health check.
1492
1493     Health check options:
1494
1495       options : interval: optional string, containing an integer
1496              The interval, in seconds, between health checks.
1497
1498       options : timeout: optional string, containing an integer
1499              The time, in seconds, after which a health check times out.
1500
1501       options : success_count: optional string, containing an integer
1502              The number of successful checks after which the endpoint is con‐
1503              sidered online.
1504
1505       options : failure_count: optional string, containing an integer
1506              The number of failure checks after which the endpoint is consid‐
1507              ered offline.
1508
1509     Common Columns:
1510
1511       external_ids: map of string-string pairs
1512              See External IDs at the beginning of this document.
1513

ACL TABLE

1515       Each  row in this table represents one ACL rule for a logical switch or
1516       a port group that points to it through its acls column. The action col‐
1517       umn  for  the  highest-priority matching row in this table determines a
1518       packet’s treatment. If no row matches, packets are allowed by  default.
1519       (Default-deny  treatment  is possible: add a rule with priority 0, 1 as
1520       match, and deny as action.)
1521
1522   Summary:
1523       priority                      integer, in range 0 to 32,767
1524       direction                     string, either from-lport or to-lport
1525       match                         string
1526       action                        string,  one  of  allow-related,   allow,
1527                                     drop, or reject
1528       Logging:
1529         log                         boolean
1530         name                        optional  string,  at  most 63 characters
1531                                     long
1532         severity                    optional string,  one  of  alert,  debug,
1533                                     info, notice, or warning
1534         meter                       optional string
1535       Common Columns:
1536         external_ids                map of string-string pairs
1537
1538   Details:
1539       priority: integer, in range 0 to 32,767
1540              The  ACL rule’s priority. Rules with numerically higher priority
1541              take precedence over those with lower. If two ACL rules with the
1542              same  priority  both  match,  then the one actually applied to a
1543              packet is undefined.
1544
1545              Return traffic from an allow-related flow is always allowed  and
1546              cannot be changed through an ACL.
1547
1548       direction: string, either from-lport or to-lport
1549              Direction of the traffic to which this rule should apply:
1550
1551from-lport: Used to implement filters on traffic arriving
1552                     from a logical port. These rules are applied to the logi‐
1553                     cal switch’s ingress pipeline.
1554
1555to-lport:  Used to implement filters on traffic forwarded
1556                     to a logical port. These rules are applied to the logical
1557                     switch’s egress pipeline.
1558
1559       match: string
1560              The  packets  that  the ACL should match, in the same expression
1561              language used for the match column in the OVN  Southbound  data‐
1562              base’s  Logical_Flow  table.  The  outport  logical port is only
1563              available in the to-lport direction (the inport is available  in
1564              both directions).
1565
1566              By  default all traffic is allowed. When writing a more restric‐
1567              tive policy, it is important to remember to allow flows such  as
1568              ARP and IPv6 neighbor discovery packets.
1569
1570              Note  that  you  can  not  create an ACL matching on a port with
1571              type=router or type=localnet.
1572
1573       action: string, one of allow-related, allow, drop, or reject
1574              The action to take when the ACL rule matches:
1575
1576allow: Forward the packet.
1577
1578allow-related: Forward the  packet  and  related  traffic
1579                     (e.g. inbound replies to an outbound connection).
1580
1581drop: Silently drop the packet.
1582
1583reject:  Drop  the packet, replying with a RST for TCP or
1584                     ICMPv4/ICMPv6    unreachable    message     for     other
1585                     IPv4/IPv6-based protocols.
1586
1587     Logging:
1588
1589       These  columns  control  whether and how OVN logs packets that match an
1590       ACL.
1591
1592       log: boolean
1593              If set to true, packets that match the ACL will  trigger  a  log
1594              message on the transport node or nodes that perform ACL process‐
1595              ing. Logging may be combined with any action.
1596
1597              If set to false, the remaining columns in  this  group  have  no
1598              significance.
1599
1600       name: optional string, at most 63 characters long
1601              This  name,  if  it  is provided, is included in log records. It
1602              provides the administrator and the cloud management system a way
1603              to associate a log record with a particular ACL.
1604
1605       severity:  optional string, one of alert, debug, info, notice, or warn‐
1606       ing
1607              The severity of the ACL. The severity levels match those of sys‐
1608              log,  in  decreasing  level of severity: alert, warning, notice,
1609              info, or debug. When the column is empty, the default is info.
1610
1611       meter: optional string
1612              The name of a meter to rate-limit log messages for the ACL.  The
1613              string  must  match the name column of a row in the Meter table.
1614              By default, log messages are not rate-limited. In order  to  en‐
1615              sure  that  the  same  Meter rate limits multiple ACL logs sepa‐
1616              rately, set the fair column.
1617
1618     Common Columns:
1619
1620       external_ids: map of string-string pairs
1621              See External IDs at the beginning of this document.
1622

Logical_Router TABLE

1624       Each row represents one L3 logical router.
1625
1626   Summary:
1627       ports                         set of Logical_Router_Ports
1628       static_routes                 set of Logical_Router_Static_Routes
1629       policies                      set of Logical_Router_Policys
1630       enabled                       optional boolean
1631       nat                           set of NATs
1632       load_balancer                 set of weak reference to Load_Balancers
1633       Naming:
1634         name                        string
1635         external_ids : neutron:router_name
1636                                     optional string
1637       Options:
1638         options : chassis           optional string
1639         options : dnat_force_snat_ip
1640                                     optional string
1641         options : lb_force_snat_ip  optional string
1642         options : mcast_relay       optional string, either true or false
1643         options : dynamic_neigh_routers
1644                                     optional string, either true or false
1645         options : always_learn_from_arp_request
1646                                     optional string, either true or false
1647         options : requested-tnl-key
1648                                     optional string, containing  an  integer,
1649                                     in range 1 to 16,777,215
1650         options : snat-ct-zone      optional  string,  containing an integer,
1651                                     in range 0 to 65,535
1652       Common Columns:
1653         external_ids                map of string-string pairs
1654
1655   Details:
1656       ports: set of Logical_Router_Ports
1657              The router’s ports.
1658
1659       static_routes: set of Logical_Router_Static_Routes
1660              Zero or more static routes for the router.
1661
1662       policies: set of Logical_Router_Policys
1663              Zero or more routing policies for the router.
1664
1665       enabled: optional boolean
1666              This column is used to administratively  set  router  state.  If
1667              this  column  is empty or is set to true, the router is enabled.
1668              If this column is set to false, the router is disabled.  A  dis‐
1669              abled router has all ingress and egress traffic dropped.
1670
1671       nat: set of NATs
1672              One  or  more  NAT  rules for the router. NAT rules only work on
1673              Gateway routers, and on distributed routers with logical gateway
1674              ports.
1675
1676       load_balancer: set of weak reference to Load_Balancers
1677              Load  balance  a  virtual ip address to a set of logical port ip
1678              addresses. Load balancer rules only work on the Gateway  routers
1679              or routers with distributed gateway ports.
1680
1681     Naming:
1682
1683       These columns provide names for the logical router. From OVN’s perspec‐
1684       tive, these names have no special meaning or purpose other than to pro‐
1685       vide  convenience  for  human interaction with the northbound database.
1686       There is no requirement for the name to be unique. (For a unique  iden‐
1687       tifier for a logical router, use its row UUID.)
1688
1689       (Originally, name was intended to serve the purpose of a human-friendly
1690       name, but the Neutron integration used it to uniquely identify its  own
1691       router  object,  in  the format neutron-uuid. Later on, Neutron started
1692       propagating  the  friendly  name  of  a  router  as   external_ids:neu‐
1693       tron:router_name. Perhaps this can be cleaned up someday.)
1694
1695       name: string
1696              A name for the logical router.
1697
1698       external_ids : neutron:router_name: optional string
1699              Another name for the logical router.
1700
1701     Options:
1702
1703       Additional options for the logical router.
1704
1705       options : chassis: optional string
1706              If set, indicates that the logical router in question is a Gate‐
1707              way router (which is centralized) and resides in the  set  chas‐
1708              sis.  The  same value is also used by ovn-controller to uniquely
1709              identify the chassis in the OVN deployment and comes from exter‐
1710              nal_ids:system-id  in  the  Open_vSwitch  table  of Open_vSwitch
1711              database.
1712
1713              The Gateway router can only be connected to a distributed router
1714              via  a switch if SNAT and DNAT are to be configured in the Gate‐
1715              way router.
1716
1717       options : dnat_force_snat_ip: optional string
1718              If set, indicates a set of IP addresses to use to force  SNAT  a
1719              packet  that has already been DNATed in the gateway router. When
1720              multiple gateway routers are configured,  a  packet  can  poten‐
1721              tially  enter any of the gateway router, get DNATted and eventu‐
1722              ally reach the logical switch port. For the return traffic to go
1723              back  to  the  same  gateway  router (for unDNATing), the packet
1724              needs a SNAT in the first place. This can be achieved by setting
1725              the  above  option  with a gateway specific set of IP addresses.
1726              This option may have exactly one IPv4 and/or one IPv6 address on
1727              it, separated by a a space.
1728
1729       options : lb_force_snat_ip: optional string
1730              If set, this option can take two possible type of values. Either
1731              a set of IP addresses or the string value - router_ip.
1732
1733              If a set of IP addresses are configured, it indicates to use  to
1734              force  SNAT  a packet that has already been load-balanced in the
1735              gateway router. When multiple gateway routers are configured,  a
1736              packet  can  potentially  enter  any of the gateway routers, get
1737              DNATted as part of the load-balancing and eventually  reach  the
1738              logical  switch  port.  For the return traffic to go back to the
1739              same gateway router (for unDNATing), the packet needs a SNAT  in
1740              the  first  place. This can be achieved by setting the above op‐
1741              tion with a gateway specific set of IP  addresses.  This  option
1742              may  have  exactly one IPv4 and/or one IPv6 address on it, sepa‐
1743              rated by a space character.
1744
1745              If it is configured with the value router_ip, then the load bal‐
1746              anced  packet  is SNATed with the IP of router port (attached to
1747              the gateway router) selected as the destination after taking the
1748              routing decision.
1749
1750       options : mcast_relay: optional string, either true or false
1751              Enables/disables  IP  multicast  relay  between logical switches
1752              connected to the logical router. Default: False.
1753
1754       options : dynamic_neigh_routers: optional string, either true or false
1755              If set to true, the router will resolve  neighbor  routers’  MAC
1756              addresses  only  by  dynamic  ARP/ND,  instead  of prepopulating
1757              static mappings for all neighbor routers in the  ARP/ND  Resolu‐
1758              tion  stage.  This  reduces number of flows, but requires ARP/ND
1759              messages to resolve the IP-MAC bindings when needed. It is false
1760              by default. It is recommended to set to true when a large number
1761              of logical routers are connected to the same logical switch  but
1762              most of them never need to send traffic between each other.
1763
1764       options  :  always_learn_from_arp_request: optional string, either true
1765       or false
1766              This option controls the behavior when  handling  IPv4  ARP  re‐
1767              quests  or  IPv6 ND-NS packets - whether a dynamic neighbor (MAC
1768              binding) entry is added/updated.
1769
1770              true - Always learn the MAC-IP binding, and add/update  the  MAC
1771              binding entry.
1772
1773              false  -  If  there  is a MAC binding for that IP and the MAC is
1774              different, or, if TPA of ARP request belongs to any router  port
1775              on  this router, then update/add that MAC-IP binding. Otherwise,
1776              don’t update/add entries.
1777
1778              It is true by default. It is recommended to set to false when  a
1779              large  number of logical routers are connected to the same logi‐
1780              cal switch but most of them never need to send  traffic  between
1781              each other, to reduce the size of the MAC binding table.
1782
1783       options : requested-tnl-key: optional string, containing an integer, in
1784       range 1 to 16,777,215
1785              Configures the datapath tunnel key for the logical router.  This
1786              is  not  needed because ovn-northd will assign an unique key for
1787              each  datapath  by  itself.  However,  if  it   is   configured,
1788              ovn-northd honors the configured value.
1789
1790       options  :  snat-ct-zone:  optional  string,  containing an integer, in
1791       range 0 to 65,535
1792              Use the requested conntrack zone for SNAT with this router. This
1793              can  be useful if egress traffic from the host running OVN comes
1794              from both OVN and other sources. This way,  OVN  and  the  other
1795              sources can make use of the same conntrack zone.
1796
1797     Common Columns:
1798
1799       external_ids: map of string-string pairs
1800              See External IDs at the beginning of this document.
1801

QoS TABLE

1803       Each  row  in  this  table represents one QoS rule for a logical switch
1804       that points to it through its qos_rules column. Two types  of  QoS  are
1805       supported: DSCP marking and metering. A match with the highest-priority
1806       will have QoS applied to it. If the action column  is  specified,  then
1807       matching  packets will have DSCP marking applied. If the bandwdith col‐
1808       umn is specified, then matching packets will have metering applied. ac‐
1809       tion  and  bandwdith are not exclusive, so both marking and metering by
1810       defined for the same QoS entry. If no row  matches,  packets  will  not
1811       have any QoS applied.
1812
1813   Summary:
1814       priority                      integer, in range 0 to 32,767
1815       direction                     string, either from-lport or to-lport
1816       match                         string
1817       action                        map  of string-integer pairs, key must be
1818                                     dscp, value in range 0 to 63
1819       bandwidth                     map of string-integer pairs,  key  either
1820                                     burst  or  rate,  value  in  range  1  to
1821                                     4,294,967,295
1822       external_ids                  map of string-string pairs
1823
1824   Details:
1825       priority: integer, in range 0 to 32,767
1826              The QoS rule’s priority. Rules with numerically higher  priority
1827              take precedence over those with lower. If two QoS rules with the
1828              same priority both match, then the one  actually  applied  to  a
1829              packet is undefined.
1830
1831       direction: string, either from-lport or to-lport
1832              The  value  of  this  field  is similar to ACL column in the OVN
1833              Northbound database’s ACL table.
1834
1835       match: string
1836              The packets that the QoS rules should match, in the same expres‐
1837              sion  language  used  for the match column in the OVN Southbound
1838              database’s Logical_Flow table. The outport logical port is  only
1839              available  in the to-lport direction (the inport is available in
1840              both directions).
1841
1842       action: map of string-integer pairs, key must be dscp, value in range 0
1843       to 63
1844              When specified, matching flows will have DSCP marking applied.
1845
1846dscp:  The value of this action should be in the range of
1847                     0 to 63 (inclusive).
1848
1849       bandwidth: map of string-integer pairs, key either burst or rate, value
1850       in range 1 to 4,294,967,295
1851              When  specified,  matching  packets will have bandwidth metering
1852              applied. Traffic over the limit will be dropped.
1853
1854rate: The value of rate limit in kbps.
1855
1856burst: The value of burst rate limit in kilobits. This is
1857                     optional and needs to specify the rate.
1858
1859       external_ids: map of string-string pairs
1860              See External IDs at the beginning of this document.
1861

Meter TABLE

1863       Each  row  in this table represents a meter that can be used for QoS or
1864       rate-limiting.
1865
1866   Summary:
1867       name                          string (must be unique within table)
1868       unit                          string, either kbps or pktps
1869       bands                         set of 1 or more Meter_Bands
1870       fair                          optional boolean
1871       external_ids                  map of string-string pairs
1872
1873   Details:
1874       name: string (must be unique within table)
1875              A name for this meter.
1876
1877              Names that begin with "__" (two underscores)  are  reserved  for
1878              OVN internal use and should not be added manually.
1879
1880       unit: string, either kbps or pktps
1881              The  unit for rate and burst_rate parameters in the bands entry.
1882              kbps specifies kilobits per second, and pktps specifies  packets
1883              per second.
1884
1885       bands: set of 1 or more Meter_Bands
1886              The bands associated with this meter. Each band specifies a rate
1887              above which the band is to take the action action.  If  multiple
1888              bands’  rates  are exceeded, then the band with the highest rate
1889              among the exceeded bands is selected.
1890
1891       fair: optional boolean
1892              This column is used to further describe the desired behavior  of
1893              the meter when there are multiple references to it. If this col‐
1894              umn is empty or is set to false, the rate will be shared  across
1895              all  rows  that  refer  to the same Meter name. Conversely, when
1896              this column is set to true, each user of the same Meter will  be
1897              rate-limited on its own.
1898
1899       external_ids: map of string-string pairs
1900              See External IDs at the beginning of this document.
1901

Meter_Band TABLE

1903       Each row in this table represents a meter band which specifies the rate
1904       above which the configured action should be applied.  These  bands  are
1905       referenced by the bands column in the Meter table.
1906
1907   Summary:
1908       action                        string, must be drop
1909       rate                          integer, in range 1 to 4,294,967,295
1910       burst_size                    integer, in range 0 to 4,294,967,295
1911       external_ids                  map of string-string pairs
1912
1913   Details:
1914       action: string, must be drop
1915              The action to execute when this band matches. The only supported
1916              action is drop.
1917
1918       rate: integer, in range 1 to 4,294,967,295
1919              The rate limit for this band, in kilobits per second or bits per
1920              second,  depending on whether the parent Meter entry’s unit col‐
1921              umn specified kbps or pktps.
1922
1923       burst_size: integer, in range 0 to 4,294,967,295
1924              The maximum burst allowed for the band in kilobits  or  packets,
1925              depending  on  whether  kbps or pktps was selected in the parent
1926              Meter entry’s unit column. If the size is zero,  the  switch  is
1927              free to select some reasonable value depending on its configura‐
1928              tion.
1929
1930       external_ids: map of string-string pairs
1931              See External IDs at the beginning of this document.
1932

Logical_Router_Port TABLE

1934       A port within an L3 logical router.
1935
1936       Exactly one Logical_Router row must reference a  given  logical  router
1937       port.
1938
1939   Summary:
1940       name                          string (must be unique within table)
1941       networks                      set of 1 or more strings
1942       mac                           string
1943       enabled                       optional boolean
1944       Distributed Gateway Ports:
1945         ha_chassis_group            optional HA_Chassis_Group
1946         gateway_chassis             set of Gateway_Chassises
1947         Options for Physical VLAN MTU Issues:
1948            options : reside-on-redirect-chassis
1949                                     optional string, either true or false
1950            options : redirect-type  optional  string, either bridged or over‐
1951                                     lay
1952       ipv6_prefix                   set of strings
1953       ipv6_ra_configs:
1954         ipv6_ra_configs : address_mode
1955                                     optional string
1956         ipv6_ra_configs : router_preference
1957                                     optional string
1958         ipv6_ra_configs : route_info
1959                                     optional string
1960         ipv6_ra_configs : mtu       optional string
1961         ipv6_ra_configs : send_periodic
1962                                     optional string
1963         ipv6_ra_configs : max_interval
1964                                     optional string
1965         ipv6_ra_configs : min_interval
1966                                     optional string
1967         ipv6_ra_configs : rdnss     optional string
1968         ipv6_ra_configs : dnssl     optional string
1969       Options:
1970         options : mcast_flood       optional string, either true or false
1971         options : requested-tnl-key
1972                                     optional string, containing  an  integer,
1973                                     in range 1 to 32,767
1974         options : prefix_delegation
1975                                     optional string, either true or false
1976         options : prefix            optional string, either true or false
1977       Attachment:
1978         peer                        optional string
1979       Common Columns:
1980         external_ids                map of string-string pairs
1981
1982   Details:
1983       name: string (must be unique within table)
1984              A name for the logical router port.
1985
1986              In  addition  to  provide convenience for human interaction with
1987              the northbound database, this column is used as reference by its
1988              patch port in Logical_Switch_Port or another logical router port
1989              in Logical_Router_Port.
1990
1991              A logical router port may not have the same name  as  a  logical
1992              switch port, but the database schema cannot enforce this.
1993
1994       networks: set of 1 or more strings
1995              The  IP  addresses  and  netmasks  of  the  router. For example,
1996              192.168.0.1/24  indicates  that  the  router’s  IP  address   is
1997              192.168.0.1  and  that packets destined to 192.168.0.x should be
1998              routed to this port.
1999
2000              A logical router port always  adds  a  link-local  IPv6  address
2001              (fe80::/64) automatically generated from the interface’s MAC ad‐
2002              dress using the modified EUI-64 format.
2003
2004       mac: string
2005              The Ethernet address that belongs to this router port.
2006
2007       enabled: optional boolean
2008              This column is used to administratively set port state. If  this
2009              column  is empty or is set to true, the port is enabled. If this
2010              column is set to false, the port is disabled.  A  disabled  port
2011              has all ingress and egress traffic dropped.
2012
2013     Distributed Gateway Ports:
2014
2015       Gateways,  as  documented under Gateways in the OVN architecture guide,
2016       provide limited connectivity  between  logical  networks  and  physical
2017       ones.  OVN  support multiple kinds of gateways. The Logical_Router_Port
2018       table can be used two different ways to configure  distributed  gateway
2019       ports,  which are one kind of gateway. These two forms of configuration
2020       exist for historical reasons. Both of them produce the same kind of OVN
2021       southbound records and the same behavior in practice.
2022
2023       If  either of these are set, this logical router port represents a dis‐
2024       tributed gateway port that connects this router  to  a  logical  switch
2025       with  a  localnet port or a connection to another OVN deployment. There
2026       may be at most one such logical router port on each logical router.
2027
2028       The preferred way to configure a gateway is ha_chassis_group, but gate‐
2029       way_chassis  is  also supported for backward compatibility. Only one of
2030       these should be set at a time on a given LRP, since they configure  the
2031       same features.
2032
2033       Even when a gateway is configured, the logical router port still effec‐
2034       tively resides on each chassis. However, due to the implications of the
2035       use of L2 learning in the physical network, as well as the need to sup‐
2036       port advanced features such as one-to-many NAT (aka IP masquerading), a
2037       subset  of  the  logical  router processing is handled in a centralized
2038       manner on the gateway chassis.
2039
2040       When more than one gateway chassis is specified, OVN only uses one at a
2041       time. OVN can rely on OVS BFD implementation to monitor gateway connec‐
2042       tivity, preferring the highest-priority gateway that is online. Priori‐
2043       ties  are  specified  in  the  priority  column  of  Gateway_Chassis or
2044       HA_Chassis.
2045
2046       ovn-northd programs the external_mac rules specified in  the  LRP’s  LR
2047       into  the peer logical switch’s destination lookup on the chassis where
2048       the logical_port resides. In addition, the logical router’s MAC address
2049       is  automatically  programmed  in the peer logical switch’s destination
2050       lookup flow on the gateway chasssis. If it is desired to generate  gra‐
2051       tuitous ARPs for NAT addresses, then set the peer LSP’s options:nat-ad‐
2052       dresses to router.
2053
2054       OVN 20.03 and earlier supported a third way  to  configure  distributed
2055       gateway  ports  using  options:redirect-chassis  to specify the gateway
2056       chassis. This method is no longer supported. Any remaining users should
2057       switch  to  one  of the newer methods instead. A gateway_chassis may be
2058       easily configured from the command line, e.g.  ovn-nbctl  lrp-set-gate‐
2059       way-chassis lrp chassis.
2060
2061       ha_chassis_group: optional HA_Chassis_Group
2062              Designates  an  HA_Chassis_Group  to provide gateway high avail‐
2063              ability.
2064
2065       gateway_chassis: set of Gateway_Chassises
2066              Designates one or more Gateway_Chassis for  the  logical  router
2067              port.
2068
2069     Options for Physical VLAN MTU Issues:
2070
2071       MTU  issues  arise  in  mixing  tunnels  with logical networks that are
2072       bridged to a physical VLAN. For an explanation of the MTU  issues,  see
2073       Physical  VLAN MTU Issues in the OVN architecture document. The follow‐
2074       ing options, which are alternatives, provide solutions.  Both  of  them
2075       cause  packets  to  be  sent over localnet instead of tunnels, but they
2076       differ in whether some or all packets are sent this way. The most prom‐
2077       inent tradeoff between these options is that reside-on-redirect-chassis
2078       is easier to configure and that redirect-type performs better for east-
2079       west traffic.
2080
2081       options  :  reside-on-redirect-chassis: optional string, either true or
2082       false
2083              If set to true, this option forces all traffic across the  logi‐
2084              cal  router port to pass through the gateway chassis using a hop
2085              across a localnet port. This changes behavior in two ways:
2086
2087              •      Without this option, east-west  traffic  passes  directly
2088                     between  source and destination chassis (or even within a
2089                     single chassis, for co-located VMs).  With  this  option,
2090                     all east-west traffic passes through the gateway chassis.
2091
2092              •      Without  this option, traffic between the gateway chassis
2093                     and other chassis is encapsulated in tunnels.  With  this
2094                     option, traffic passes over a localnet interface.
2095
2096              This  option  may  usefully  be set only on logical router ports
2097              that connect a distributed logical router to  a  logical  switch
2098              with VIFs. It should not be set on a distributed gateway port.
2099
2100              OVN honors this option only if the logical router has a distrib‐
2101              uted gateway port and if the LRP’s peer switch  has  a  localnet
2102              port.
2103
2104       options : redirect-type: optional string, either bridged or overlay
2105              If  set  to  bridged  on a distributed gateway port, this option
2106              causes OVN to redirect packets to the gateway chassis over a lo‐
2107              calnet port instead of a tunnel. The relevant chassis must share
2108              a localnet port.
2109
2110              This feature requires the administrator or the CMS to  configure
2111              each  participating  chassis  with a unique Ethernet address for
2112              the logical router by setting  ovn-chassis-mac-mappings  in  the
2113              Open vSwitch database, for use by ovn-controller.
2114
2115              Setting  this  option  to overlay or leaving it unset has no ef‐
2116              fect. This option may usefully be  set  only  on  a  distributed
2117              gateway port. It is otherwise ignored.
2118
2119       ipv6_prefix: set of strings
2120              This  column  contains IPv6 prefix obtained by prefix delegation
2121              router according to RFC 3633
2122
2123     ipv6_ra_configs:
2124
2125       This column defines the IPv6 ND RA address mode and ND MTU Option to be
2126       included by ovn-controller when it replies to the IPv6 Router solicita‐
2127       tion requests.
2128
2129       ipv6_ra_configs : address_mode: optional string
2130              The address mode to be used for IPv6 address configuration.  The
2131              supported values are:
2132
2133slaac:  Address  configuration using Router Advertisement
2134                     (RA) packet. The  IPv6  prefixes  defined  in  the  Logi‐
2135                     cal_Router_Port  table’s networks column will be included
2136                     in the RA’s ICMPv6 option - Prefix information.
2137
2138dhcpv6_stateful: Address configuration using DHCPv6.
2139
2140dhcpv6_stateless: Address configuration using Router  Ad‐
2141                     vertisement  (RA) packet. Other IPv6 options are provided
2142                     by DHCPv6.
2143
2144       ipv6_ra_configs : router_preference: optional string
2145              Default Router Preference (PRF) indicates whether to prefer this
2146              router  over  other  default routers (RFC 4191). Possible values
2147              are:
2148
2149              •      HIGH: mapped to 0x01 in RA PRF field
2150
2151              •      MEDIUM: mapped to 0x00 in RA PRF field
2152
2153              •      LOW: mapped to 0x11 in RA PRF field
2154
2155       ipv6_ra_configs : route_info: optional string
2156              Route Info is used to configure Route Info Option sent in Router
2157              Advertisment  according to RFC 4191. Route Info is a comma sepa‐
2158              rated string where each field provides  PRF  and  prefix  for  a
2159              given route (e.g: HIGH-aef1::11/48,LOW-aef2::11/96) Possible PRF
2160              values are:
2161
2162              •      HIGH: mapped to 0x01 in RA PRF field
2163
2164              •      MEDIUM: mapped to 0x00 in RA PRF field
2165
2166              •      LOW: mapped to 0x11 in RA PRF field
2167
2168       ipv6_ra_configs : mtu: optional string
2169              The recommended MTU for the link. Default is 0, which  means  no
2170              MTU  Option  will  be  included in RA packet replied by ovn-con‐
2171              troller. Per RFC 2460, the mtu value is recommended no less than
2172              1280,  so  any mtu value less than 1280 will be considered as no
2173              MTU Option.
2174
2175       ipv6_ra_configs : send_periodic: optional string
2176              If set to true, then this router interface will send router  ad‐
2177              vertisements periodically. The default is false.
2178
2179       ipv6_ra_configs : max_interval: optional string
2180              The  maximum  number of seconds to wait between sending periodic
2181              router advertisements. This option has no effect if ipv6_ra_con‐
2182              figs:send_periodic is false. The default is 600.
2183
2184       ipv6_ra_configs : min_interval: optional string
2185              The  minimum  number of seconds to wait between sending periodic
2186              router advertisements. This option has no effect if ipv6_ra_con‐
2187              figs:send_periodic   is  false.  The  default  is  one-third  of
2188              ipv6_ra_configs:max_interval, i.e. 200 seconds if  that  key  is
2189              unset.
2190
2191       ipv6_ra_configs : rdnss: optional string
2192              IPv6 address of RDNSS server announced in RA packets. At the mo‐
2193              ment OVN supports just one RDNSS server.
2194
2195       ipv6_ra_configs : dnssl: optional string
2196              DNS Search List announced in RA  packets.  Multiple  DNS  Search
2197              List must be ’comma’ separated (e.g. "a.b.c, d.e.f")
2198
2199     Options:
2200
2201       Additional options for the logical router port.
2202
2203       options : mcast_flood: optional string, either true or false
2204              If set to true, multicast traffic (including reports) are uncon‐
2205              ditionally forwarded to the specific port.
2206
2207              This option applies when the port is part of  a  logical  router
2208              which has options:mcast_relay set to true.
2209
2210       options : requested-tnl-key: optional string, containing an integer, in
2211       range 1 to 32,767
2212              Configures the port binding tunnel key  for  the  port.  Usually
2213              this  is not needed because ovn-northd will assign an unique key
2214              for  each  port  by  itself.  However,  if  it  is   configured,
2215              ovn-northd honors the configured value.
2216
2217       options : prefix_delegation: optional string, either true or false
2218              If  set  to true, enable IPv6 prefix delegation state machine on
2219              this logical router port (RFC3633). IPv6  prefix  delegation  is
2220              available just on a gateway router or on a gateway router port.
2221
2222       options : prefix: optional string, either true or false
2223              If  set  to true, this interface will receive an IPv6 prefix ac‐
2224              cording to RFC3663
2225
2226     Attachment:
2227
2228       A given router port serves one of two purposes:
2229
2230              •      To attach a logical switch to a logical router. A logical
2231                     router  port  of  this  type is referenced by exactly one
2232                     Logical_Switch_Port of type router. The value of name  is
2233                     set   as   router-port   in   column   options  of  Logi‐
2234                     cal_Switch_Port. In this case peer column is empty.
2235
2236              •      To connect one logical router to another. This requires a
2237                     pair of logical router ports, each connected to a differ‐
2238                     ent router. Each router port in the  pair  specifies  the
2239                     other in its peer column. No Logical_Switch refers to the
2240                     router port.
2241
2242       peer: optional string
2243              For a router port used to  connect  two  logical  routers,  this
2244              identifies the other router port in the pair by name.
2245
2246              For  a  router port attached to a logical switch, this column is
2247              empty.
2248
2249     Common Columns:
2250
2251       external_ids: map of string-string pairs
2252              See External IDs at the beginning of this document.
2253

Logical_Router_Static_Route TABLE

2255       Each record represents a static route.
2256
2257       When multiple routes match a packet, the longest-prefix match  is  cho‐
2258       sen.  For  a  given  prefix  length, a dst-ip route is preferred over a
2259       src-ip route.
2260
2261       When there are ECMP routes, i.e. multiple routes with same  prefix  and
2262       policy,  one  of  them will be selected based on the 5-tuple hashing of
2263       the packet header.
2264
2265   Summary:
2266       ip_prefix                     string
2267       policy                        optional string, either dst-ip or src-ip
2268       nexthop                       string
2269       output_port                   optional string
2270       bfd                           optional weak reference to BFD
2271       external_ids : ic-learned-route
2272                                     optional string
2273       Common Columns:
2274         external_ids                map of string-string pairs
2275       Common options:
2276         options                     map of string-string pairs
2277         options : ecmp_symmetric_reply
2278                                     optional string
2279
2280   Details:
2281       ip_prefix: string
2282              IP prefix of this route (e.g. 192.168.100.0/24).
2283
2284       policy: optional string, either dst-ip or src-ip
2285              If it is specified, this setting describes the  policy  used  to
2286              make  routing decisions. This setting must be one of the follow‐
2287              ing strings:
2288
2289src-ip: This policy sends the packet to the nexthop  when
2290                     the packet’s source IP address matches ip_prefix.
2291
2292dst-ip:  This policy sends the packet to the nexthop when
2293                     the packet’s destination IP address matches ip_prefix.
2294
2295              If not specified, the default is dst-ip.
2296
2297       nexthop: string
2298              Nexthop IP address for this route. Nexthop IP address should  be
2299              the IP address of a connected router port or the IP address of a
2300              logical port.
2301
2302       output_port: optional string
2303              The name of the Logical_Router_Port via which the  packet  needs
2304              to  be  sent  out.  This is optional and when not specified, OVN
2305              will automatically figure this out based on  the  nexthop.  When
2306              this  is  specified  and  there are multiple IP addresses on the
2307              router port and none of them are in the same subnet of  nexthop,
2308              OVN  chooses  the first IP address as the one via which the nex‐
2309              thop is reachable.
2310
2311       bfd: optional weak reference to BFD
2312              Reference to BFD row if the route has associated a BFD session
2313
2314       external_ids : ic-learned-route: optional string
2315              ovn-ic populates this key if  the  route  is  learned  from  the
2316              global  OVN_IC_Southbound  database. In this case the value will
2317              be  set  to  the  uuid  of  the  row  in  Route  table  of   the
2318              OVN_IC_Southbound database.
2319
2320     Common Columns:
2321
2322       external_ids: map of string-string pairs
2323              See External IDs at the beginning of this document.
2324
2325     Common options:
2326
2327       options: map of string-string pairs
2328              This  column  provides general key/value settings. The supported
2329              options are described individually below.
2330
2331       options : ecmp_symmetric_reply: optional string
2332              It true, then new traffic that arrives over this route will have
2333              its  reply  traffic bypass ECMP route selection and will be sent
2334              out this route instead. Note  that  this  option  overrides  any
2335              rules  set  in the Logical_Router_policy table. This option only
2336              works on gateway  routers  (routers  that  have  options:chassis
2337              set).
2338

Logical_Router_Policy TABLE

2340       Each  row  in  this  table  represents one routing policy for a logical
2341       router that points to it through its policies column. The action column
2342       for  the  highest-priority  matching  row  in  this  table determines a
2343       packet’s treatment. If no row matches, packets are allowed by  default.
2344       (Default-deny  treatment  is possible: add a rule with priority 0, 1 as
2345       match, and drop as action.)
2346
2347   Summary:
2348       priority                      integer, in range 0 to 32,767
2349       match                         string
2350       action                        string, one of allow, drop, or reroute
2351       nexthop                       optional string
2352       nexthops                      set of strings
2353       options : pkt_mark            optional string
2354       Common Columns:
2355         external_ids                map of string-string pairs
2356
2357   Details:
2358       priority: integer, in range 0 to 32,767
2359              The routing policy’s priority.  Rules  with  numerically  higher
2360              priority  take  precedence  over  those  with  lower.  A rule is
2361              uniquely identified by the priority and match string.
2362
2363       match: string
2364              The packets that the routing policy should match,  in  the  same
2365              expression  language used for the match column in the OVN South‐
2366              bound database’s Logical_Flow table.
2367
2368              By default all traffic is allowed. When writing a more  restric‐
2369              tive  policy, it is important to remember to allow flows such as
2370              ARP and IPv6 neighbor discovery packets.
2371
2372       action: string, one of allow, drop, or reroute
2373              The action to take when the routing policy matches:
2374
2375allow: Forward the packet.
2376
2377drop: Silently drop the packet.
2378
2379reroute: Reroute packet to nexthop or nexthops.
2380
2381       nexthop: optional string
2382              Note: This column is deprecated in favor of nexthops.
2383
2384              Next-hop IP address for this route, which should be the  IP  ad‐
2385              dress  of a connected router port or the IP address of a logical
2386              port.
2387
2388       nexthops: set of strings
2389              Next-hop ECMP IP addresses for this route. Each IP in  the  list
2390              should  be  the  IP address of a connected router port or the IP
2391              address of a logical port.
2392
2393              One IP from the list is selected as next hop.
2394
2395       options : pkt_mark: optional string
2396              Marks the packet with the value specified when the router policy
2397              is applied. CMS can inspect this packet marker and take some de‐
2398              cisions if desired. This value is not preserved when the  packet
2399              goes out on the wire.
2400
2401     Common Columns:
2402
2403       external_ids: map of string-string pairs
2404              See External IDs at the beginning of this document.
2405

NAT TABLE

2407       Each record represents a NAT rule.
2408
2409   Summary:
2410       type                          string,  one  of  dnat, dnat_and_snat, or
2411                                     snat
2412       external_ip                   string
2413       external_mac                  optional string
2414       external_port_range           string
2415       logical_ip                    string
2416       logical_port                  optional string
2417       allowed_ext_ips               optional Address_Set
2418       exempted_ext_ips              optional Address_Set
2419       options : stateless           optional string
2420       Common Columns:
2421         external_ids                map of string-string pairs
2422
2423   Details:
2424       type: string, one of dnat, dnat_and_snat, or snat
2425              Type of the NAT rule.
2426
2427              •      When type is dnat, the externally visible IP address  ex‐
2428                     ternal_ip  is DNATted to the IP address logical_ip in the
2429                     logical space.
2430
2431              •      When type is snat, IP packets with their  source  IP  ad‐
2432                     dress that either matches the IP address in logical_ip or
2433                     is in the network provided by logical_ip is  SNATed  into
2434                     the IP address in external_ip.
2435
2436              •      When type is dnat_and_snat, the externally visible IP ad‐
2437                     dress external_ip is DNATted to the IP address logical_ip
2438                     in  the  logical  space. In addition, IP packets with the
2439                     source IP address that matches logical_ip is SNATed  into
2440                     the IP address in external_ip.
2441
2442       external_ip: string
2443              An IPv4 address.
2444
2445       external_mac: optional string
2446              A MAC address.
2447
2448              This  is  only  used on the gateway port on distributed routers.
2449              This must be specified in order for the NAT rule to be processed
2450              in a distributed manner on all chassis. If this is not specified
2451              for a NAT rule on a distributed router, then this NAT rule  will
2452              be  processed  in  a  centralized manner on the gateway port in‐
2453              stance on the gateway chassis.
2454
2455              This MAC address must be unique on the logical switch  that  the
2456              gateway port is attached to. If the MAC address used on the log‐
2457              ical_port is globally unique, then that MAC address can be spec‐
2458              ified as this external_mac.
2459
2460       external_port_range: string
2461              L4 source port range
2462
2463              Range  of  ports,  from  which a port number will be picked that
2464              will replace the source port of to be NATed packet. This is  ba‐
2465              sically PAT (port address translation).
2466
2467              Value of the column is in the format, port_lo-port_hi. For exam‐
2468              ple: external_port_range : "1-30000"
2469
2470              Valid range of ports is 1-65535.
2471
2472       logical_ip: string
2473              An IPv4 network (e.g 192.168.1.0/24) or an IPv4 address.
2474
2475       logical_port: optional string
2476              The name of the logical port where the logical_ip resides.
2477
2478              This is only used on distributed routers. This must be specified
2479              in  order for the NAT rule to be processed in a distributed man‐
2480              ner on all chassis. If this is not specified for a NAT rule on a
2481              distributed  router,  then  this NAT rule will be processed in a
2482              centralized manner on the gateway port instance on  the  gateway
2483              chassis.
2484
2485       allowed_ext_ips: optional Address_Set
2486              It  represents  Address Set of external ips that NAT rule is ap‐
2487              plicable to. For SNAT type NAT rules, this refers to destination
2488              addresses.  For  DNAT  type NAT rules, this refers to source ad‐
2489              dresses.
2490
2491              This configuration overrides the default NAT behavior of  apply‐
2492              ing  a rule solely based on internal IP. Without this configura‐
2493              tion, NAT happens  without  considering  the  external  IP  (i.e
2494              dest/source  for  snat/dnat  type rule). With this configuration
2495              NAT rule is applied ONLY if external ip is in the input  Address
2496              Set.
2497
2498       exempted_ext_ips: optional Address_Set
2499              It  represents  Address Set of external ips that NAT rule is NOT
2500              applicable to. For SNAT type NAT rules, this refers to  destina‐
2501              tion  addresses.  For DNAT type NAT rules, this refers to source
2502              addresses.
2503
2504              This configuration overrides the default NAT behavior of  apply‐
2505              ing  a rule solely based on internal IP. Without this configura‐
2506              tion, NAT happens  without  considering  the  external  IP  (i.e
2507              dest/source  for  snat/dnat  type rule). With this configuration
2508              NAT rule is NOT applied if external ip is in the  input  Address
2509              Set.
2510
2511              If  there  are NAT rules in a logical router with overlapping IP
2512              prefixes (including /32), then usage of exempted_ext_ips  should
2513              be  avoided  in  following  scenario.  a.  SNAT rule (let us say
2514              RULE1) with logical_ip PREFIX/MASK (let us say 50.0.0.0/24).  b.
2515              SNAT  rule (let us say RULE2) with logical_ip PREFIX/MASK+1 (let
2516              us say 50.0.0.0/25). c. Now, if exempted_ext_ips  is  associated
2517              with RULE2, then a logical ip which matches both 50.0.0.0/24 and
2518              50.0.0.0/25 may get the RULE2 applied to it instead of RULE1.
2519
2520              allowed_ext_ips and exempted_ext_ips are mutually  exclusive  to
2521              each  other.  If  both Address Sets are set for a rule, then the
2522              NAT rule is not considered.
2523
2524       options : stateless: optional string
2525              Indicates if a dnat_and_snat  rule  should  lead  to  connection
2526              tracking state or not.
2527
2528     Common Columns:
2529
2530       external_ids: map of string-string pairs
2531              See External IDs at the beginning of this document.
2532

DHCP_Options TABLE

2534       OVN  implements  native  DHCPv4  support which caters to the common use
2535       case of providing an IPv4 address to a booting  instance  by  providing
2536       stateless replies to DHCPv4 requests based on statically configured ad‐
2537       dress mappings. To do this it allows a short list of DHCPv4 options  to
2538       be configured and applied at each compute host running ovn-controller.
2539
2540       OVN  also  implements  native  DHCPv6  support which provides stateless
2541       replies to DHCPv6 requests.
2542
2543   Summary:
2544       cidr                          string
2545       DHCPv4 options:
2546         Mandatory DHCPv4 options:
2547            options : server_id      optional string
2548            options : server_mac     optional string
2549            options : lease_time     optional string, containing  an  integer,
2550                                     in range 0 to 4,294,967,295
2551         IPv4 DHCP Options:
2552            options : router         optional string
2553            options : netmask        optional string
2554            options : dns_server     optional string
2555            options : log_server     optional string
2556            options : lpr_server     optional string
2557            options : swap_server    optional string
2558            options : policy_filter  optional string
2559            options : router_solicitation
2560                                     optional string
2561            options : nis_server     optional string
2562            options : ntp_server     optional string
2563            options : netbios_name_server
2564                                     optional string
2565            options : classless_static_route
2566                                     optional string
2567            options : ms_classless_static_route
2568                                     optional string
2569         Boolean DHCP Options:
2570            options : ip_forward_enable
2571                                     optional string, either 0 or 1
2572            options : router_discovery
2573                                     optional string, either 0 or 1
2574            options : ethernet_encap optional string, either 0 or 1
2575         Integer DHCP Options:
2576            options : default_ttl    optional  string,  containing an integer,
2577                                     in range 0 to 255
2578            options : tcp_ttl        optional string, containing  an  integer,
2579                                     in range 0 to 255
2580            options : mtu            optional  string,  containing an integer,
2581                                     in range 68 to 65,535
2582            options : T1             optional string, containing  an  integer,
2583                                     in range 68 to 4,294,967,295
2584            options : T2             optional  string,  containing an integer,
2585                                     in range 68 to 4,294,967,295
2586            options : arp_cache_timeout
2587                                     optional string, containing  an  integer,
2588                                     in range 0 to 255
2589            options : tcp_keepalive_interval
2590                                     optional  string,  containing an integer,
2591                                     in range 0 to 255
2592            options : netbios_node_type
2593                                     optional string, containing  an  integer,
2594                                     in range 0 to 255
2595         String DHCP Options:
2596            options : wpad           optional string
2597            options : bootfile_name  optional string
2598            options : path_prefix    optional string
2599            options : tftp_server_address
2600                                     optional string
2601            options : domain_name    optional string
2602            options : bootfile_name_alt
2603                                     optional string
2604            options : broadcast_address
2605                                     optional string
2606         DHCP Options of type host_id:
2607            options : tftp_server    optional string
2608          DHCP Options of type domains:
2609            options : domain_search_list
2610                                     optional string
2611       DHCPv6 options:
2612         Mandatory DHCPv6 options:
2613            options : server_id      optional string
2614         IPv6 DHCPv6 options:
2615            options : dns_server     optional string
2616         String DHCPv6 options:
2617            options : domain_search  optional string
2618            options : dhcpv6_stateless
2619                                     optional string
2620       Common Columns:
2621         external_ids                map of string-string pairs
2622
2623   Details:
2624       cidr: string
2625              The  DHCPv4/DHCPv6  options will be included if the logical port
2626              has its IP address in this cidr.
2627
2628     DHCPv4 options:
2629
2630       The CMS should define the set of DHCPv4 options as key/value  pairs  in
2631       the  options  column of this table. For ovn-controller to include these
2632       DHCPv4 options, the dhcpv4_options of Logical_Switch_Port should  refer
2633       to an entry in this table.
2634
2635     Mandatory DHCPv4 options:
2636
2637       The following options must be defined.
2638
2639       options : server_id: optional string
2640              The IP address for the DHCP server to use. This should be in the
2641              subnet of the offered IP. This is also included in the DHCP  of‐
2642              fer as option 54, ``server identifier.’’
2643
2644       options : server_mac: optional string
2645              The Ethernet address for the DHCP server to use.
2646
2647       options  : lease_time: optional string, containing an integer, in range
2648       0 to 4,294,967,295
2649              The offered lease time in seconds,
2650
2651              The DHCPv4 option code for this option is 51.
2652
2653     IPv4 DHCP Options:
2654
2655       Below are the supported DHCPv4 options whose values  are  an  IPv4  ad‐
2656       dress,  e.g.  192.168.1.1.  Some options accept multiple IPv4 addresses
2657       enclosed within curly braces, e.g. {192.168.1.2,  192.168.1.3}.  Please
2658       refer to RFC 2132 for more details on DHCPv4 options and their codes.
2659
2660       options : router: optional string
2661              The  IP  address of a gateway for the client to use. This should
2662              be in the subnet of the offered IP. The DHCPv4 option  code  for
2663              this option is 3.
2664
2665       options : netmask: optional string
2666              The DHCPv4 option code for this option is 1.
2667
2668       options : dns_server: optional string
2669              The DHCPv4 option code for this option is 6.
2670
2671       options : log_server: optional string
2672              The DHCPv4 option code for this option is 7.
2673
2674       options : lpr_server: optional string
2675              The DHCPv4 option code for this option is 9.
2676
2677       options : swap_server: optional string
2678              The DHCPv4 option code for this option is 16.
2679
2680       options : policy_filter: optional string
2681              The DHCPv4 option code for this option is 21.
2682
2683       options : router_solicitation: optional string
2684              The DHCPv4 option code for this option is 32.
2685
2686       options : nis_server: optional string
2687              The DHCPv4 option code for this option is 41.
2688
2689       options : ntp_server: optional string
2690              The DHCPv4 option code for this option is 42.
2691
2692       options : netbios_name_server: optional string
2693              The DHCPv4 option code for this option is 44.
2694
2695       options : classless_static_route: optional string
2696              The DHCPv4 option code for this option is 121.
2697
2698              This option can contain one or more static routes, each of which
2699              consists of a destination descriptor and the IP address  of  the
2700              router that should be used to reach that destination. Please see
2701              RFC 3442 for more details.
2702
2703              Example: {30.0.0.0/24,10.0.0.10, 0.0.0.0/0,10.0.0.1}
2704
2705       options : ms_classless_static_route: optional string
2706              The DHCPv4 option code for this option is 249.  This  option  is
2707              similar to classless_static_route supported by Microsoft Windows
2708              DHCPv4 clients.
2709
2710     Boolean DHCP Options:
2711
2712       These options accept a Boolean value, expressed as 0 for false or 1 for
2713       true.
2714
2715       options : ip_forward_enable: optional string, either 0 or 1
2716              The DHCPv4 option code for this option is 19.
2717
2718       options : router_discovery: optional string, either 0 or 1
2719              The DHCPv4 option code for this option is 31.
2720
2721       options : ethernet_encap: optional string, either 0 or 1
2722              The DHCPv4 option code for this option is 36.
2723
2724     Integer DHCP Options:
2725
2726       These options accept a nonnegative integer value.
2727
2728       options : default_ttl: optional string, containing an integer, in range
2729       0 to 255
2730              The DHCPv4 option code for this option is 23.
2731
2732       options : tcp_ttl: optional string, containing an integer, in  range  0
2733       to 255
2734              The DHCPv4 option code for this option is 37.
2735
2736       options  :  mtu: optional string, containing an integer, in range 68 to
2737       65,535
2738              The DHCPv4 option code for this option is 26.
2739
2740       options : T1: optional string, containing an integer, in  range  68  to
2741       4,294,967,295
2742              This  specifies  the time interval from address assignment until
2743              the client begins trying to renew its address. The DHCPv4 option
2744              code for this option is 58.
2745
2746       options  :  T2:  optional string, containing an integer, in range 68 to
2747       4,294,967,295
2748              This specifies the time interval from address  assignment  until
2749              the  client  begins trying to rebind its address. The DHCPv4 op‐
2750              tion code for this option is 59.
2751
2752       options : arp_cache_timeout: optional string, containing an integer, in
2753       range 0 to 255
2754              The DHCPv4 option code for this option is 35. This option speci‐
2755              fies the timeout in seconds for ARP cache entries.
2756
2757       options : tcp_keepalive_interval: optional string, containing an  inte‐
2758       ger, in range 0 to 255
2759              The DHCPv4 option code for this option is 38. This option speci‐
2760              fies the interval that the client TCP should wait before sending
2761              a keepalive message on a TCP connection.
2762
2763       options : netbios_node_type: optional string, containing an integer, in
2764       range 0 to 255
2765              The DHCPv4 option code for this option is 46.
2766
2767     String DHCP Options:
2768
2769       These options accept a string value.
2770
2771       options : wpad: optional string
2772              The DHCPv4 option code for this option is 252.  This  option  is
2773              used  as part of web proxy auto discovery to provide a URL for a
2774              web proxy.
2775
2776       options : bootfile_name: optional string
2777              The DHCPv4 option code for this option is  67.  This  option  is
2778              used to identify a bootfile.
2779
2780       options : path_prefix: optional string
2781              The DHCPv4 option code for this option is 210. In PXELINUX’ case
2782              this option is used to set a common path prefix, instead of  de‐
2783              riving it from the bootfile name.
2784
2785       options : tftp_server_address: optional string
2786              The  DHCPv4  option code for this option is 150. The option con‐
2787              tains one or more IPv4 addresses that the client MAY  use.  This
2788              option is Cisco proprietary, the IEEE standard that matches with
2789              this requirement is option 66 (tftp_server).
2790
2791       options : domain_name: optional string
2792              The DHCPv4 option code for this option is 15. This option speci‐
2793              fies the domain name that client should use when resolving host‐
2794              names via the Domain Name System.
2795
2796       options : bootfile_name_alt: optional string
2797              "bootfile_name_alt" option is used to support  iPXE.  When  both
2798              "bootfile_name" and "bootfile_name_alt" are provided by the CMS,
2799              "bootfile_name" will be used for option 67 if the  dhcp  request
2800              contains  etherboot  option (175), otherwise "bootfile_name_alt"
2801              will be used.
2802
2803       options : broadcast_address: optional string
2804              The DHCPv4 option code for this option is 28. This option speci‐
2805              fies the IP address used as a broadcast address.
2806
2807     DHCP Options of type host_id:
2808
2809       These options accept either an IPv4 address or a string value.
2810
2811       options : tftp_server: optional string
2812              The DHCPv4 option code for this option is 66.
2813
2814      DHCP Options of type domains:
2815
2816       These  options  accept  string value which is a comma separated list of
2817       domain names. The domain names are encoded based on RFC 1035.
2818
2819       options : domain_search_list: optional string
2820              The DHCPv4 option code for this option is 119.
2821
2822     DHCPv6 options:
2823
2824       OVN also implements native DHCPv6 support. The CMS  should  define  the
2825       set  of  DHCPv6  options  as key/value pairs. The define DHCPv6 options
2826       will be included in the  DHCPv6  response  to  the  DHCPv6  Solicit/Re‐
2827       quest/Confirm  packet  from the logical ports having the IPv6 addresses
2828       in the cidr.
2829
2830     Mandatory DHCPv6 options:
2831
2832       The following options must be defined.
2833
2834       options : server_id: optional string
2835              The Ethernet address for the DHCP server to use.  This  is  also
2836              included  in the DHCPv6 reply as option 2, ``Server Identifier’’
2837              to carry a DUID identifying a server  between  a  client  and  a
2838              server.  ovn-controller defines DUID based on Link-layer Address
2839              [DUID-LL].
2840
2841     IPv6 DHCPv6 options:
2842
2843       Below are the supported DHCPv6 options whose values  are  an  IPv6  ad‐
2844       dress,  e.g.  aef0::4.  Some options accept multiple IPv6 addresses en‐
2845       closed within curly braces, e.g. {aef0::4, aef0::5}.  Please  refer  to
2846       RFC 3315 for more details on DHCPv6 options and their codes.
2847
2848       options : dns_server: optional string
2849              The DHCPv6 option code for this option is 23. This option speci‐
2850              fies the DNS servers that the VM should use.
2851
2852     String DHCPv6 options:
2853
2854       These options accept string values.
2855
2856       options : domain_search: optional string
2857              The DHCPv6 option code for this option is 24. This option speci‐
2858              fies  the  domain  search  list the client should use to resolve
2859              hostnames with DNS.
2860
2861              Example: "ovn.org".
2862
2863       options : dhcpv6_stateless: optional string
2864              This option specifies the OVN native DHCPv6 will work in  state‐
2865              less mode, which means OVN native DHCPv6 will not offer IPv6 ad‐
2866              dresses for VM/VIF ports, but only reply  other  configurations,
2867              such  as  DNS  and  domain search list. When setting this option
2868              with string value "true", VM/VIF will configure  IPv6  addresses
2869              by stateless way. Default value for this option is false.
2870
2871     Common Columns:
2872
2873       external_ids: map of string-string pairs
2874              See External IDs at the beginning of this document.
2875

Connection TABLE

2877       Configuration  for  a  database  connection to an Open vSwitch database
2878       (OVSDB) client.
2879
2880       This table  primarily  configures  the  Open  vSwitch  database  server
2881       (ovsdb-server).
2882
2883       The  Open vSwitch database server can initiate and maintain active con‐
2884       nections to remote clients. It can also  listen  for  database  connec‐
2885       tions.
2886
2887   Summary:
2888       Core Features:
2889         target                      string (must be unique within table)
2890       Client Failure Detection and Handling:
2891         max_backoff                 optional integer, at least 1,000
2892         inactivity_probe            optional integer
2893       Status:
2894         is_connected                boolean
2895         status : last_error         optional string
2896         status : state              optional  string, one of ACTIVE, BACKOFF,
2897                                     CONNECTING, IDLE, or VOID
2898         status : sec_since_connect  optional string, containing  an  integer,
2899                                     at least 0
2900         status : sec_since_disconnect
2901                                     optional  string,  containing an integer,
2902                                     at least 0
2903         status : locks_held         optional string
2904         status : locks_waiting      optional string
2905         status : locks_lost         optional string
2906         status : n_connections      optional string, containing  an  integer,
2907                                     at least 2
2908         status : bound_port         optional string, containing an integer
2909       Common Columns:
2910         external_ids                map of string-string pairs
2911         other_config                map of string-string pairs
2912
2913   Details:
2914     Core Features:
2915
2916       target: string (must be unique within table)
2917              Connection methods for clients.
2918
2919              The following connection methods are currently supported:
2920
2921              ssl:host[:port]
2922                     The  specified  SSL  port  on the host at the given host,
2923                     which can either be a DNS name (if built with unbound li‐
2924                     brary)  or  an IP address. A valid SSL configuration must
2925                     be provided when this form is  used,  this  configuration
2926                     can  be specified via command-line options or the SSL ta‐
2927                     ble.
2928
2929                     If port is not specified, it defaults to 6640.
2930
2931                     SSL support is an optional feature  that  is  not  always
2932                     built as part of Open vSwitch.
2933
2934              tcp:host[:port]
2935                     The  specified  TCP  port  on the host at the given host,
2936                     which can either be a DNS name (if built with unbound li‐
2937                     brary) or an IP address. If host is an IPv6 address, wrap
2938                     it in square brackets, e.g. tcp:[::1]:6640.
2939
2940                     If port is not specified, it defaults to 6640.
2941
2942              pssl:[port][:host]
2943                     Listens for SSL connections on the  specified  TCP  port.
2944                     Specify  0  for  port  to  have  the kernel automatically
2945                     choose an available port. If host, which can either be  a
2946                     DNS  name  (if  built  with unbound library) or an IP ad‐
2947                     dress, is specified, then connections are  restricted  to
2948                     the resolved or specified local IPaddress (either IPv4 or
2949                     IPv6 address). If host is an IPv6 address, wrap in square
2950                     brackets,  e.g. pssl:6640:[::1]. If host is not specified
2951                     then it listens only on IPv4 (but not IPv6) addresses.  A
2952                     valid  SSL  configuration must be provided when this form
2953                     is used, this can be specified  either  via  command-line
2954                     options or the SSL table.
2955
2956                     If port is not specified, it defaults to 6640.
2957
2958                     SSL  support  is  an  optional feature that is not always
2959                     built as part of Open vSwitch.
2960
2961              ptcp:[port][:host]
2962                     Listens for connections on the specified TCP port.  Spec‐
2963                     ify 0 for port to have the kernel automatically choose an
2964                     available port. If host, which can either be a  DNS  name
2965                     (if  built  with  unbound  library)  or an IP address, is
2966                     specified, then connections are  restricted  to  the  re‐
2967                     solved or specified local IP address (either IPv4 or IPv6
2968                     address). If host is an IPv6 address, wrap it  in  square
2969                     brackets,  e.g. ptcp:6640:[::1]. If host is not specified
2970                     then it listens only on IPv4 addresses.
2971
2972                     If port is not specified, it defaults to 6640.
2973
2974              When multiple clients are configured, the target values must  be
2975              unique. Duplicate target values yield unspecified results.
2976
2977     Client Failure Detection and Handling:
2978
2979       max_backoff: optional integer, at least 1,000
2980              Maximum  number  of  milliseconds to wait between connection at‐
2981              tempts. Default is implementation-specific.
2982
2983       inactivity_probe: optional integer
2984              Maximum number of milliseconds of idle time on connection to the
2985              client  before  sending  an  inactivity  probe  message. If Open
2986              vSwitch does not communicate with the client for  the  specified
2987              number  of  seconds,  it will send a probe. If a response is not
2988              received for the same additional amount of  time,  Open  vSwitch
2989              assumes  the  connection  has been broken and attempts to recon‐
2990              nect. Default is implementation-specific. A value of 0  disables
2991              inactivity probes.
2992
2993     Status:
2994
2995       Key-value pair of is_connected is always updated. Other key-value pairs
2996       in the status columns may be updated depends on the target type.
2997
2998       When target specifies a connection method that listens for inbound con‐
2999       nections  (e.g.  ptcp:  or punix:), both n_connections and is_connected
3000       may also be updated while the remaining key-value pairs are omitted.
3001
3002       On the other hand, when target specifies an  outbound  connection,  all
3003       key-value  pairs  may  be  updated, except the above-mentioned two key-
3004       value pairs associated with inbound connection targets. They are  omit‐
3005       ted.
3006
3007       is_connected: boolean
3008              true if currently connected to this client, false otherwise.
3009
3010       status : last_error: optional string
3011              A human-readable description of the last error on the connection
3012              to the manager; i.e. strerror(errno). This key will  exist  only
3013              if an error has occurred.
3014
3015       status  :  state:  optional string, one of ACTIVE, BACKOFF, CONNECTING,
3016       IDLE, or VOID
3017              The state of the connection to the manager:
3018
3019              VOID   Connection is disabled.
3020
3021              BACKOFF
3022                     Attempting to reconnect at an increasing period.
3023
3024              CONNECTING
3025                     Attempting to connect.
3026
3027              ACTIVE Connected, remote host responsive.
3028
3029              IDLE   Connection is idle. Waiting for response to keep-alive.
3030
3031              These values may change in the future. They  are  provided  only
3032              for human consumption.
3033
3034       status  : sec_since_connect: optional string, containing an integer, at
3035       least 0
3036              The amount of time since this client last successfully connected
3037              to the database (in seconds). Value is empty if client has never
3038              successfully been connected.
3039
3040       status : sec_since_disconnect: optional string, containing an  integer,
3041       at least 0
3042              The  amount of time since this client last disconnected from the
3043              database (in seconds). Value is empty if client has  never  dis‐
3044              connected.
3045
3046       status : locks_held: optional string
3047              Space-separated  list  of the names of OVSDB locks that the con‐
3048              nection holds. Omitted if  the  connection  does  not  hold  any
3049              locks.
3050
3051       status : locks_waiting: optional string
3052              Space-separated  list  of the names of OVSDB locks that the con‐
3053              nection is currently waiting to acquire. Omitted if the  connec‐
3054              tion is not waiting for any locks.
3055
3056       status : locks_lost: optional string
3057              Space-separated  list  of the names of OVSDB locks that the con‐
3058              nection has had stolen by another OVSDB client.  Omitted  if  no
3059              locks have been stolen from this connection.
3060
3061       status  :  n_connections:  optional  string,  containing an integer, at
3062       least 2
3063              When target specifies a connection method that listens  for  in‐
3064              bound  connections  (e.g. ptcp: or pssl:) and more than one con‐
3065              nection is actually active, the value is the  number  of  active
3066              connections. Otherwise, this key-value pair is omitted.
3067
3068       status : bound_port: optional string, containing an integer
3069              When target is ptcp: or pssl:, this is the TCP port on which the
3070              OVSDB server is listening. (This  is  particularly  useful  when
3071              target  specifies a port of 0, allowing the kernel to choose any
3072              available port.)
3073
3074     Common Columns:
3075
3076       The overall purpose of these columns is described under Common  Columns
3077       at the beginning of this document.
3078
3079       external_ids: map of string-string pairs
3080
3081       other_config: map of string-string pairs
3082

DNS TABLE

3084       Each  row  in this table stores the DNS records. The Logical_Switch ta‐
3085       ble’s dns_records references these records.
3086
3087   Summary:
3088       records                       map of string-string pairs
3089       external_ids                  map of string-string pairs
3090
3091   Details:
3092       records: map of string-string pairs
3093              Key-value pair of DNS records with DNS query name as the key and
3094              value as a string of IP address(es) separated by comma or space.
3095
3096              Example:  "vm1.ovn.org" = "10.0.0.4 aef0::4"
3097
3098       external_ids: map of string-string pairs
3099              See External IDs at the beginning of this document.
3100

SSL TABLE

3102       SSL configuration for ovn-nb database access.
3103
3104   Summary:
3105       private_key                   string
3106       certificate                   string
3107       ca_cert                       string
3108       bootstrap_ca_cert             boolean
3109       ssl_protocols                 string
3110       ssl_ciphers                   string
3111       Common Columns:
3112         external_ids                map of string-string pairs
3113
3114   Details:
3115       private_key: string
3116              Name  of  a  PEM  file  containing  the  private key used as the
3117              switch’s identity for SSL connections to the controller.
3118
3119       certificate: string
3120              Name of a PEM file containing a certificate, signed by the  cer‐
3121              tificate authority (CA) used by the controller and manager, that
3122              certifies the switch’s private key,  identifying  a  trustworthy
3123              switch.
3124
3125       ca_cert: string
3126              Name  of a PEM file containing the CA certificate used to verify
3127              that the switch is connected to a trustworthy controller.
3128
3129       bootstrap_ca_cert: boolean
3130              If set to true, then Open vSwitch will attempt to obtain the  CA
3131              certificate  from the controller on its first SSL connection and
3132              save it to the named PEM file. If it is successful, it will  im‐
3133              mediately  drop  the  connection and reconnect, and from then on
3134              all SSL connections  must  be  authenticated  by  a  certificate
3135              signed  by the CA certificate thus obtained. This option exposes
3136              the SSL connection to a man-in-the-middle attack  obtaining  the
3137              initial  CA  certificate.  It may still be useful for bootstrap‐
3138              ping.
3139
3140       ssl_protocols: string
3141              List of SSL protocols to be enabled for SSL connections. The de‐
3142              fault when this option is omitted is TLSv1,TLSv1.1,TLSv1.2.
3143
3144       ssl_ciphers: string
3145              List  of  ciphers  (in  OpenSSL cipher string format) to be sup‐
3146              ported for SSL connections. The  default  when  this  option  is
3147              omitted is HIGH:!aNULL:!MD5.
3148
3149     Common Columns:
3150
3151       The  overall purpose of these columns is described under Common Columns
3152       at the beginning of this document.
3153
3154       external_ids: map of string-string pairs
3155

Gateway_Chassis TABLE

3157       Association of a chassis to a logical router port.  The  traffic  going
3158       out through an specific router port will be redirected to a chassis, or
3159       a set of them in high availability configurations.
3160
3161   Summary:
3162       name                          string (must be unique within table)
3163       chassis_name                  string
3164       priority                      integer, in range 0 to 32,767
3165       options                       map of string-string pairs
3166       Common Columns:
3167         external_ids                map of string-string pairs
3168
3169   Details:
3170       name: string (must be unique within table)
3171              Name of the Gateway_Chassis.
3172
3173              A   suggested,   but   not   required   naming   convention   is
3174              ${port_name}_${chassis_name}.
3175
3176       chassis_name: string
3177              Name of the chassis that we want to redirect traffic through for
3178              the associated logical router port. The  value  must  match  the
3179              name column of the Chassis table in the OVN_Southbound database.
3180
3181       priority: integer, in range 0 to 32,767
3182              This  is the priority of a chassis among all Gateway_Chassis be‐
3183              longing to the same logical router port.
3184
3185       options: map of string-string pairs
3186              Reserved for future use.
3187
3188     Common Columns:
3189
3190       external_ids: map of string-string pairs
3191              See External IDs at the beginning of this document.
3192

HA_Chassis_Group TABLE

3194       Table representing a group of chassis which can provide high availabil‐
3195       ity  services.  Each  chassis  in the group is represented by the table
3196       HA_Chassis. The HA chassis with highest priority will be the master  of
3197       this  group. If the master chassis failover is detected, the HA chassis
3198       with the next higher priority takes over the responsibility of  provid‐
3199       ing  the  HA.  If a distributed gateway router port references a row in
3200       this table, then the master HA chassis in this group provides the gate‐
3201       way functionality.
3202
3203   Summary:
3204       name                          string (must be unique within table)
3205       ha_chassis                    set of HA_Chassises
3206       Common Columns:
3207         external_ids                map of string-string pairs
3208
3209   Details:
3210       name: string (must be unique within table)
3211              Name of the HA_Chassis_Group. Name should be unique.
3212
3213       ha_chassis: set of HA_Chassises
3214              A list of HA chassis which belongs to this group.
3215
3216     Common Columns:
3217
3218       external_ids: map of string-string pairs
3219              See External IDs at the beginning of this document.
3220

HA_Chassis TABLE

3222   Summary:
3223       chassis_name                  string
3224       priority                      integer, in range 0 to 32,767
3225       Common Columns:
3226         external_ids                map of string-string pairs
3227
3228   Details:
3229       chassis_name: string
3230              Name  of  the chassis which is part of the HA chassis group. The
3231              value must match the name column of the  Chassis  table  in  the
3232              OVN_Southbound database.
3233
3234       priority: integer, in range 0 to 32,767
3235              Priority  of  the chassis. Chassis with highest priority will be
3236              the master.
3237
3238     Common Columns:
3239
3240       external_ids: map of string-string pairs
3241              See External IDs at the beginning of this document.
3242

BFD TABLE

3244       Contains BFD parameter for ovn-controller BFD  configuration.  OVN  BFD
3245       implementation is used to provide detection of failures in the path be‐
3246       tween adjacent forwarding engines, including the  OVN  interfaces.  OVN
3247       BFD  provides link status info to OVN northd in order to update logical
3248       flows according to the status of BFD endpoints. In the  current  imple‐
3249       mentation  OVN  BFD  is  used to check next-hop status for ECMP routes.
3250       Please note BFD table refers to OVN BFD implementation and not  to  OVS
3251       legacy one.
3252
3253   Summary:
3254       Configuration:
3255         logical_port                string
3256         dst_ip                      string
3257         min_tx                      optional integer, at least 1
3258         min_rx                      optional integer
3259         detect_mult                 optional integer, at least 1
3260         options                     map of string-string pairs
3261         external_ids                map of string-string pairs
3262       Status Reporting:
3263         status                      optional string, one of admin_down, down,
3264                                     init, or up
3265
3266   Details:
3267     Configuration:
3268
3269       ovn-northd reads configuration from these columns.
3270
3271       logical_port: string
3272              OVN logical port when BFD engine is running.
3273
3274       dst_ip: string
3275              BFD peer IP address.
3276
3277       min_tx: optional integer, at least 1
3278              This is the minimum interval, in milliseconds,  that  the  local
3279              system  would like to use when transmitting BFD Control packets,
3280              less any jitter applied. The value  zero  is  reserved.  Default
3281              value is 1000 ms.
3282
3283       min_rx: optional integer
3284              This  is the minimum interval, in milliseconds, between received
3285              BFD Control packets that this system is capable  of  supporting,
3286              less  any  jitter  applied by the sender. If this value is zero,
3287              the transmitting system does not want the remote system to  send
3288              any periodic BFD Control packets.
3289
3290       detect_mult: optional integer, at least 1
3291              Detection  time  multiplier.  The  negotiated transmit interval,
3292              multiplied by this value, provides the Detection  Time  for  the
3293              receiving system in Asynchronous mode. Default value is 5.
3294
3295       options: map of string-string pairs
3296              Reserved for future use.
3297
3298       external_ids: map of string-string pairs
3299              See External IDs at the beginning of this document.
3300
3301     Status Reporting:
3302
3303       ovn-northd writes BFD status into these columns.
3304
3305       status: optional string, one of admin_down, down, init, or up
3306              BFD port logical states. Possible values are:
3307
3308admin_down
3309
3310down
3311
3312init
3313
3314up
3315
3316
3317
3318Open vSwitch 21.03.1            DB Schema 5.31.0                     ovn-nb(5)
Impressum