Allow txqueuelen configurtion on the linux tap devices.

Registered by SUYASH KARMARKAR

Summary
=======
Allow txqueuelen configurtion on the linux tap devices.

Motivation
========
Currently, the default txqueuelen setting in the tap devices depends on the distribution of the compute host and it varies between 500 - 1000. This low setting of the txqueuelen hampers high throughput applications as we start seeing TX packets drops on the tap much faster than expected.

Description
=========
When the tap devices are created for all the virtual ports connected to the VM, the txqueuelen defaults to the current host OS setting. This value should be configurable through openvswitch_agent.ini, so that the values can be controlled per compute depending on the type of workload running on the VM. The openvswitch_agent after the creation of the tap devices and attaching it to the OVS switch can execute the below command to set the txqueuelen as configured.

    ip link set dev <tap name> txqueuelen <queue size configured>

This command will set the txqueuelen as configured for the tap and reduce the TX packet drops.

Proposed Change
===============

Once the tap device is created the openvswitchagent should be triggered to run the command using the ip-link(8) tool.

UX
===
NA

Testing
======
Tempest tests are not planned currently as SR-IOV hardware is not always available. 3rd party CI testing could be considered, though probably the feature is relatively minor for that.

Outside Dependencies
==================

And user will have a facility to control trust settings on specific Neutron ports.

    python-neutronclient does not need to be modified

Requirements Update Required
========================
NA

Doc Impact
=========
NA

Blueprint information

Status:
Not started
Approver:
None
Priority:
Undefined
Drafter:
SUYASH KARMARKAR
Direction:
Needs approval
Assignee:
Souvik Dey
Definition:
New
Series goal:
None
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.