The FDP team is no longer accepting new bugs in Bugzilla. Please report your issues under FDP project in Jira. Thanks.
Bug 1833373 - [OVN SCALE] Improve Load Balancer Hairpin detection/scalability
Summary: [OVN SCALE] Improve Load Balancer Hairpin detection/scalability
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux Fast Datapath
Classification: Red Hat
Component: OVN
Version: FDP 20.C
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: ---
: ---
Assignee: Numan Siddique
QA Contact: ying xu
URL:
Whiteboard:
Depends On:
Blocks: 1859924
TreeView+ depends on / blocked
 
Reported: 2020-05-08 14:26 UTC by Dumitru Ceara
Modified: 2021-03-25 19:06 UTC (History)
5 users (show)

Fixed In Version: ovn2.13-20.09.0-14
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2021-03-25 19:06:08 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Dumitru Ceara 2020-05-08 14:26:44 UTC
Description of problem:
In order to detect that the backend selected for load balanced traffic is actually the source of the traffic (i.e., hairpin) OVN currently creates 2 logical flows per VIP in table LS_IN_PRE_HAIRPIN. The flow match field looks like:

Initiator traffic:
(ip.src == backend-ip1 && ip.dst == backend-ip2) || .. || (ip.src == backend-ipn && ip.dst == backend-ipn)

Reply traffic:
((ip.src == backend-ip1) || .. || (ip.src == backend-ipn)) && ip.dst = VIP

This gets processed by ovn-controller and translated into 2 * N openflow entries.

A better approach would be to create a new SB DB table, e.g., Hairpin_Endpoints with columns
- datapath
- dest_ip (VIP)
- dest_port (VIP-port)
- proto
- sources (list of backend IPs & ports)

ovn-northd would populate this table for all Load_Balancer VIPs (currently hairpin is supported only for logical switches but could be extended to logical routers too) and ovn-controller would generate the required openflow entries that perform hairpin detection.

Comment 2 Dan Williams 2021-03-25 19:06:08 UTC
Shipped in FDP 20.I


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