Bug 1946662 - DNS resolving too slow with OVN when only IPv4 subnet is configured
Summary: DNS resolving too slow with OVN when only IPv4 subnet is configured
Keywords:
Status: NEW
Alias: None
Product: Red Hat Enterprise Linux Fast Datapath
Classification: Red Hat
Component: ovn2.13
Version: FDP 21.A
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: ---
: ---
Assignee: OVN Team
QA Contact: Ehsan Elahi
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-04-06 15:38 UTC by Eduardo Olivares
Modified: 2023-07-13 07:25 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed:
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Issue Tracker FD-1211 0 None None None 2022-10-05 19:35:40 UTC

Description Eduardo Olivares 2021-04-06 15:38:34 UTC
Description of problem:
This issue was originally reported as an Openstack documentation bug: BZ1940272
The scenario reported is reproduced on Openstack 16.1.

DNS resolving is too slow with ML2/OVN when only IPv4 subnet is configured. We tested with ML2/OVS and the results are much better because all queries (including AAAA-type queries) are answered.


Differences between OVN and OVS behaviors:
OVN: PTR and AAAA queries are not replied (when no IPv6 subnet). Duration: 55 seconds [1]
OVS (dnsmasq): all queries are replied (AAAA queries replied with “Refused” because there is no IPv6 subnet). Duration: 5 ms [2]

The lack of response to a AAAA query is considered as a "problematic behaviour" (RFC4074, section 4.1 [3]) 


Some workarounds can be applied to improve the response time:
a) configuring an IPv6 subnet despite not being necessary
2) configuring the VM instance to not send AAAA DNS queries or to reduce the timeout and/or the number of retries


[1] http://pastebin.test.redhat.com/951974
[2] http://pastebin.test.redhat.com/951968
[3] https://tools.ietf.org/html/rfc4074

Version-Release number of selected component (if applicable):
Openstack: RHOS-16.1-RHEL-8-20210311.n.1
OVN: ovn2.13-20.12.0-17.el8fdp.x86_64
networking-ovn: python3-networking-ovn-7.3.1-1.20201114024053.el8ost.noarch


How reproducible:
100%

Steps to Reproduce:
1. create a private network with an IPv4 subnet only
2. create two VM instances connected to that network
3. access to one of those instances and try to resolve the other instance's hostname:
$ time nslookup vm0
Server:    10.0.0.1
Address 1: 10.0.0.1

Name:      vm0
Address 1: 192.168.100.204
real    1m 0.07s
user    0m 0.00s
sys     0m 0.01s


Actual results:
it takes 1 minute approx with a cirros 0.4.0 instance and 15 seconds with a RHEL8.2 instance

Expected results:
it should be much faster


Note You need to log in before you can comment on or make changes to this bug.