pinggit / dpdk-contrail-book

contrail dpdk day one book
9 stars 3 forks source link

adjusting book TOC #5

Closed pinggit closed 3 years ago

pinggit commented 4 years ago

Subject: RE: vrouter/DPDK day one book: extending/polishing the perf guide

see discussion: https://github.com/pinggit/dpdk-contrail-book/blob/master/README.md#0529-meeting-minutes

My 2nd read is till ch5 and was trying to raise lots of questions down to the details. But we’ve decided to split jobs so each one can focus on smaller part to get work done better.

10 chapters in total.

TOCv0:

  . |*[underline]#chapter 1: SDN overview#*
  . . |what is SDN - the history
  . . . |Network device evolution
  . . . |Early age of SDN
  . . . |SDN startups acquired by major networks or virtualization vendors
  . . |SDN definition
  . . . |What is SDN?
  . . . |Traditional Network Planes and SDN layer
  . . . |the primary changes between SDN and traditional networking
  . . . |underlay vs overlay
  . . . |interfaces between layers
  . . . |SDN, openstack, NVF and data center
  . . |SDN solutions
  . . . |controllers
  . . . |SDN controller reports
  . . . |opendaylight (ODL)
  . . . |underlay network and overlay network
  . . . |OVN
  . . . . |OVS
  . . . . |OVN
  . . . |ONOS
  . . . |calico
  . . . . |calico introduction
  . . . . |calico archetecture
  . . . . . |felix (policy)
  . . . . . |Orchestrator plugin
  . . . . . |Etcd (database)
  . . . . . |BIRD (BGP)
  . . . . . |Confd
  . . . . . |CNI plugin
  . . . . . |IPAM plugin
  . . . . |calico workflow
  . . . |nuage VCP (Nokia)
  . . . . |VSD
  . . . . |VSC
  . . . . |VRS
  . . . |vmare NSX
  . . . |other solutions?
  . . . . |cisco: apic
  . . . . |openflood
  . . |Overview of Tungsten Fabric (TF)
  . . . |TF introduction
  . . . |TF components
  . . . . |The TF SDN controller
  . . . . |TF vRouter
  . . . . |TF controller components
  . . . . |TF vRouter components
  . |*[underline]#chapter 2: SDN dataplane fundamentals#*
  . . |Performance requirements
  . . |software architecture
  . . . |kernel
  . . . |kvm, QEMU
  . . . |Virtio
  . . |hardware architecture
  . . . |NUMA
  . . . |Hyper-threading (HT)
  . . . |Huge pages
  . . . |hardware topology Discovery
  . . |DPDK
  . . . |DPDK memory management
  . . . |DPDK Poll Mode Drivers (PMD)
  . . . |DPDK PMD Linux drivers
  . . . . |UIO
  . . . . |VFIO
  . . . . |VFIO and IOMMU
  . . . |DPDK capable NICs
  . . |other hardware acceleration technologies
  . . . |sriov
  . . . |smartnic
  . . . |vDPA
  . . . |eBPF
= . |*[underline]#chapter 3: Contrail vrouter and DPDK#*
  . . |Contrail vrouter architecture
  . . |vrouter and dpdk
  . . |DPDK threads and Contrail lcore numbering
  . . . |control threads
  . . . |Service and Processing threads
  . . . |forwarding threads
  . . |contrail dpdk version
  . . |Contrail related linux packages
  . |*[underline]#chapter 4: DPDK vrouter packet forwarding#*
  . . |interfaces and queues
  . . |DPDK VM incoming traffic (from underlay network)
  . . . |step 1: NIC spreading (RSS)
  . . . |step 2: Polling core
  . . . |step 3: Forwarding core (MPLSoGRE)
  . . . |step 3: Forwarding core (MPLSoUDP/VxLAN)
  . . |DPDK VM outgoing traffic
  . . . |step 1: polling core
  . . . |step 2: RSS
  . . . |step 3: forwarding core
  . . |Packet Flow Summary (Based on R1910)
  . . |*Non DPDK VM* on DPDK vrouter
  . . |*[underline]#vNIC queues#*
  . . . |Single queue virtIO
  . . . |Multiqueue virtIO
  . . . |vNIC queues "queue size" configuration (RedHat OpenStack)
  . . . |vNIC queues "queue number" configuration (RedHat OpenStack)
  . . . |vNIC queues "queue number" changing
  . . . |vNIC queues verfication
  . . . |Multiqueue known limitations
  . . . . |Number of queues on VM instances
  . . . . |Indirect descriptors are not supported
  . |*[underline]#chapter 5: huge pages#*
  . . |Huge pages configuration
  . . |hugepages for vrouter: `--socket-mem`
  . . |Kubernetes: vrouter and Single Hugepage size
  . . |IRQ setup
  . |*[underline]#chapter 6: CPU pinning#*
  . . |Physical CPU cores allocation planning
  . . |Hyper Threading
  . . |CPU isolation mechanisms
  . . . |isolcpus mechanism configuration
  . . . |Tuned CPU partitioning configuration
  . . |CPU assignment for DPDK vRouter
  . . . |packet processing threads
  . . . |service and control threads <= 19.12
  . . . |service and control threads pinning >= 20.03
  . . |Provisioning concerns
  . . . |control and service threads >= 20.03
  . . . |packet processing threads (forwarding cores)
  . . |CPU pinning and isolation
  . . . |tuned and isolcpus - RedHat
  . . . |isolcpus - Ubuntu
  . . . |Operating system scheduler CPU assignment (CPUAffinity) - RedHat
  . . . |Nova CPU assignment (vcpu_pin_set)
  . . . |vRouter CPU assignment (CPU_LIST, SERVICE_CORE_MASK and DPDK_CTRL_THREAD_MASK)
  . . . |Check CPU pinning on all processes
  . |*[underline]#chapter 7: DPDK vrouter Performance fine tuning#*
  . . |Performance tuning essentials
  . . |Enable CPU performance mode
  . . |vrouter physical bond setting
  . . |Manage a high flow environment
  . . . |Increase flow table size
  . . . |Flow setup rate optimisation
  . . . |Configuration of packet based processing
  . . |MPLSoUDP encapsulation Configuration
  . . . |Contrail Configuration
  . . . |SDN Gateway configuration: MPLSoUDP and Load Balancing
  . . |DPDK buffer size adjustment (mbuf)
  . . . |Intel recommendation
  . . . |Problem
  . . |vRouter CPU numbers and single queue VM
  . |*[underline]#chapter 8: Deployment considerations#*
  . . |Define number of resources required for vRouter DPDK
  . . |Compute Node CPU capacity planning
  . . |vrouter forwarding cores capacity planning
  . . . |First step: expected network throughput
  . . . |Second step: VM DPDK support and multi queues capability
  . . . |Last step: sibling consideration
  . . |vrouter services cores capacity planning
  . . |typical CPU assignment
  . . |Performance tests figures (DPDK vrouter)
  . . |Jumbo frame support
  . . |Configure driver and network settings
  . . |Configure nova scheduler and flavor
  . |*[underline]#chapter 9: DPDK vrouter troubleshooting#*
  . . |vrouter fine tuning parameters (kernel and DPDK mode)
  . . . |Generic vrouter dimensioning parameters
  . . . |Increase vrouter default value of dimensioning parameters (especially flow table)
  . . . |32 bits vrouter nexthop limit parameter (contrail release 19.11 and later)
  . . . |vrouter networking parameters (MTU)
  . . |vrouter DPDK fine tuning parameters
  . . . |DPDK vrouter parameters
  . . . |DPDK fine tuning rules (mainly for Intel NIC)
  . . . |DPDK vouter parameters provisioning
  . . . |DPDK vouter parameters configuration (5.0 and later versions)
  . . |Connectivity Troubleshooting
  . . . |How to check vrouter connectivity
  . . . |vRouter vif queues setup
  . . . |vRouter vif queues activation
  . . |Packet drop troubleshooting
  . . . |Interface traffic counters
  . . . |Packet flow from a Compute Physical NIC to a VM NIC - counters placement
  . . . |Packet flow from a VM NIC to compute node Physical NIC - counters placement
  . . . |Traffic Load balancing on forwarding cores
  . . . |vrouter is dropping packets
  . . . |virtual instance is dropping packets
  . . . |Packet Drop statistics
  . . . |vif command: get-drop-stats option
  . . . |Dropstats and packet drop log utility
  . . |Faulty vrouter deployment troubleshooting
. |*[underline]#chapter 10: DPDK vrouter log analysis#*
  . |appendix
  . . |References

I’ll start to work on chapter 1/2 and try to finalize in 2 weeks. (Later if time permit I can also work on 3 and 4) I think chapter 5 is short/easy and chapter 10 is almost done (by Laurent) Chapter 3/4/6/7/8/9 needs some effort.

#chapter 1: SDN overview#*   /46                     ping
#chapter 2: SDN dataplane fundamentals#*   /23   ping
#chapter 3: Contrail vrouter and DPDK#*   /8     
#chapter 4: DPDK vrouter packet forwarding#*   
#chapter 5: huge pages#*   /4                  
#chapter 6: CPU pinning#*   /19                
#chapter 7: DPDK vrouter Performance fine tunin
#chapter 8: Deployment considerations#*   /12  
#chapter 9: DPDK vrouter troubleshooting#*   /2
#chapter 10: DPDK vrouter log analysis#*       

Please share which part you pick. We will help each other.
Please share concerns anytime.

NOTE: we need at least 2 weeks to review. If a draft is too raw it will be rejected, or bring big headache to editors (they are not technical on our content).

pinggit commented 4 years ago

From: Laurent Antoine Durand ldurand@juniper.net

In my opinion, the first thing to achieve is to split the work between us in order to work in //.

How to work altogether ? I’m proposing that Ping keeps the lead of the whole document consistency. Then :  First, under his control, lets first definitely split the document in chapters.  Second, let’s work and clean respectively on our allocated chapter.  Third, reassemble the whole (ping) = cut and paste the content of each producer in a single doc. Then we can iterate in order to reach our target (we could work in a cycle of one week)

About current TOC

In my opinion current TOC is perfectible. See ny remarks. Anyway, once a TOC has been agreed, let’s split the work. I propose we are assigning each chapter to a main contributor (chapter’s lead), who will be responsible to produce most of the content and in which others can contribute to help him to enrich or cover a part in which he needs help. If agreed, it will allow us to work separately on a subpart of doc, and to reassemble (ping ?) at each end of week.

At the end of this mail, some remarks on TOC changes proposals and also on who could take a first lead for the coming weeks on some chapters in order to get quickly a first result.

About chapter 2 (enclosed draft document)

For the chapter 2, I can take the lead, or Ping can keep it if he prefers. Here is my first (draft) contribution for this chapter. PS: Maybe this chapter 2 could be split in two parts (one links to DPDK and Linux – NIC drivers, PMD, huge pages / and one bound to Linux in General: cpu isolation, hardware discovery, …). My contribution for this chapter anyway will be more focused on DPDK specific, and not Linux Generic).

Here a proposal on how to split the task: . |[underline]#chapter 1: SDN overview#  I propose that Ping take the lead on this chapter.

. |[underline]#chapter 2: SDN dataplane fundamentals#  I can take the lead on this chapter. With some help on: . . . |smartnic . . . |vDPA . . . |eBPF

= . |[underline]#chapter 3: Contrail vrouter and DPDK#  To be discussed. But in my opinion we have almost everything in perf guide.  I would prefer following header: #chapter 3: Contrail DPDK vrouter architecture#  After cleaning, would be fine to define a leader

. |[underline]#chapter 4: DPDK vrouter packet forwarding#  To be discussed. But in my opinion we have around 50 to 60% in perf guide.  I would prefer following header: #chapter 4: Contrail DPDK vrouter packet processing#  After cleaning, would be fine to define a leader

. |[underline]#chapter 5: huge pages#  To be discussed. But in my opinion we have around of content 90% in perf guide. Seems short for a chapter.  . . I would prefer following header: #chapter 5: Contrail DPDK vrouter memory consideration# |Huge pages configuration . . |hugepages for vrouter: --socket-mem . . |Kubernetes: vrouter and Single Hugepage size . . |IRQ setup

. |[underline]#chapter 6: CPU pinning#  To be discussed. But in my opinion we have around of content 90% in perf guide. Seems short for a chapter.  . . I would prefer following header: #chapter 6: Contrail DPDK vrouter fine tuning#
(or chapter 6: Contrail DPDK vrouter CPU assignment), if we keel Chapter 5, 6, and 7 and we do not merge them.

 To be discussed. But in my opinion this part should me move earlier (chapter 2) because this is generic Linux Concern. . . |Physical CPU cores allocation planning . . |Hyper Threading . . |CPU isolation mechanisms . . . |isolcpus mechanism configuration . . . |Tuned CPU partitioning configuration

 To be discussed. But in my opinion we should merge content of chapter 5 in this chapter.

. . |CPU assignment for DPDK vRouter . . . |packet processing threads . . . |service and control threads <= 19.12 . . . |service and control threads pinning >= 20.03 . . |Provisioning concerns . . . |control and service threads >= 20.03 . . . |packet processing threads (forwarding cores) . . |CPU pinning and isolation . . . |tuned and isolcpus - RedHat . . . |isolcpus - Ubuntu . . . |Operating system scheduler CPU assignment (CPUAffinity) - RedHat . . . |Nova CPU assignment (vcpu_pin_set) . . . |vRouter CPU assignment (CPU_LIST, SERVICE_CORE_MASK and DPDK_CTRL_THREAD_MASK) . . . |Check CPU pinning on all processes

. |[underline]#chapter 7: DPDK vrouter Performance fine tuning# . . |Performance tuning essentials

 To be discussed. But in my opinion this chapter should be restructured. We are mixing lots of different things …

. . |Enable CPU performance mode  To be moved in previous chapter which is talking about CPUs.

But as there is a lots of different things, either we merge all chapter 5,6 and 7 together or we call it

chapter 7: Contrail DPDK vrouter underlay configuration

. . |vrouter physical bond setting . . |MPLSoUDP encapsulation Configuration . . . |Contrail Configuration . . . |SDN Gateway configuration: MPLSoUDP and Load Balancing

But as there is a lots of different things, either we merge all chapter 5,6 and 7 together or we call it

chapter 7: Contrail DPDK vrouter packets switching

. . |Manage a high flow environment . . . |Increase flow table size . . . |Flow setup rate optimisation . . . |Configuration of packet based processing

 To be moved in chapter 5 which is talking about huge page.

. . |DPDK buffer size adjustment (mbuf) . . . |Intel recommendation . . . |Problem

 To be moved in previous chapter (chapter 6) which is talking about CPUs. . . |vRouter CPU numbers and single queue VM

 I propose that Premecz take the lead on this chapter. . |[underline]#chapter 8: Deployment considerations# . . |Define number of resources required for vRouter DPDK . . |Compute Node CPU capacity planning . . |vrouter forwarding cores capacity planning . . . |First step: expected network throughput . . . |Second step: VM DPDK support and multi queues capability . . . |Last step: sibling consideration . . |vrouter services cores capacity planning . . |typical CPU assignment . . |Performance tests figures (DPDK vrouter) . . |Jumbo frame support . . |Configure driver and network settings . . |Configure nova scheduler and flavor

 I propose to take the lead on this chapter and to merge it with the next one.

. |[underline]#chapter 9: DPDK vrouter troubleshooting# . . |vrouter fine tuning parameters (kernel and DPDK mode) . . . |Generic vrouter dimensioning parameters . . . |Increase vrouter default value of dimensioning parameters (especially flow table) . . . |32 bits vrouter nexthop limit parameter (contrail release 19.11 and later) . . . |vrouter networking parameters (MTU) . . |vrouter DPDK fine tuning parameters . . . |DPDK vrouter parameters . . . |DPDK fine tuning rules (mainly for Intel NIC) . . . |DPDK vouter parameters provisioning . . . |DPDK vouter parameters configuration (5.0 and later versions) . . |Connectivity Troubleshooting . . . |How to check vrouter connectivity . . . |vRouter vif queues setup . . . |vRouter vif queues activation . . |Packet drop troubleshooting . . . |Interface traffic counters . . . |Packet flow from a Compute Physical NIC to a VM NIC - counters placement . . . |Packet flow from a VM NIC to compute node Physical NIC - counters placement . . . |Traffic Load balancing on forwarding cores . . . |vrouter is dropping packets . . . |virtual instance is dropping packets . . . |Packet Drop statistics . . . |vif command: get-drop-stats option . . . |Dropstats and packet drop log utility . . |Faulty vrouter deployment troubleshooting

 I propose to take the lead on this chapter and to merge it with the previous one.

. |[underline]#chapter 10: DPDK vrouter log analysis# . |appendix . . |References

pinggit commented 4 years ago

Laurent/all:

Below are the revised TOC. Please check and let me know. I like the idea of chapter leader, so I put a name after the chapters that was taken. Chapter leader will take main responsibility of polishing, and all later assignment regarding it. But, we’ll definitely help each other and load balancing.

Some of my thoughts:

For ch2 go ahead @Laurent Antoine Durand and take it, I can write some introduction about smartNIC if needed later. Other topics (vDPA/eBPF) let’s leave them now, we can just skip if no one know it. not a big deal. (I heard them only during our first meeting:)

I’ll take chapter 3 then. And whoever finished first can jump on some chapters anytime.

I haven’t merge your new ch2 contribution word doc yet. (saved in materials/ folder) Each time it would take some time to convert from doc to adoc text, and I’d like to do it in the end when it is mostly stabilized, then based on that we’ll fine tune further.

Let me know.

TOC v1:

  |DPDK accelerated Tungsten Fabric dataplane

  . |*[underline]#chapter 1: SDN overview#* (ping)
  . . |what is SDN - the history
  . . . |Network device evolution
  . . . |Early age of SDN
  . . . |SDN startups acquired by major networks or virtualization vendors
  . . |SDN definition
  . . . |What is SDN?
  . . . |Traditional Network Planes and SDN layer
  . . . |the primary changes between SDN and traditional networking
  . . . |underlay vs overlay
  . . . |interfaces between layers
  . . . |SDN, openstack, NVF and data center
  . . |SDN solutions
  . . . |controllers
  . . . |SDN controller reports
  . . . |opendaylight (ODL)
  . . . |underlay network and overlay network
  . . . |OVN
  . . . . |OVS
  . . . . |OVN
  . . . |ONOS
  . . . |calico
  . . . . |calico introduction
  . . . . |calico archetecture
  . . . . . |felix (policy)
  . . . . . |Orchestrator plugin
  . . . . . |Etcd (database)
  . . . . . |BIRD (BGP)
  . . . . . |Confd
  . . . . . |CNI plugin
  . . . . . |IPAM plugin
  . . . . |calico workflow
  . . . |nuage VCP (Nokia)
  . . . . |VSD
  . . . . |VSC
  . . . . |VRS
  . . . |vmare NSX
  . . . |other solutions?
  . . . . |cisco: apic
  . . . . |openflood
  . . |Overview of Tungsten Fabric (TF)
  . . . |TF introduction
  . . . |TF components
  . . . . |The TF SDN controller
  . . . . |TF vRouter
  . . . . |TF controller components
  . . . . |TF vRouter components
  . |*[underline]#chapter 2: SDN dataplane fundamentals#* (laurent)
  . . |Performance requirements
  . . |software architecture
  . . . |kernel
  . . . |kvm, QEMU
  . . . |Virtio
  . . . |DPDK
  . . . . |DPDK memory management
  . . . . |DPDK Poll Mode Drivers (PMD)
  . . . . |DPDK PMD Linux drivers
  . . . . . |UIO
  . . . . . |VFIO
  . . . . . |VFIO and IOMMU
  . . . . |DPDK capable NICs
  . . |hardware architecture
  . . . |NUMA
  . . . |Hyper-threading (HT)
  . . . |Huge pages
  . . . |hardware topology Discovery
  . . . |Physical CPU cores allocation planning
  . . . |Hyper Threading
  . . . |CPU isolation mechanisms
  . . . . |isolcpus mechanism configuration
  . . . . |Tuned CPU partitioning configuration
  . . |other hardware acceleration technologies
  . . . |sriov
  . . . |smartnic
  . . . |vDPA
  . . . |eBPF
  . |*[underline]#chapter 3: Contrail DPDK vrouter architecture#* (ping)
  . . |Contrail vrouter architecture
  . . |vrouter and dpdk
  . . |DPDK threads and Contrail lcore numbering
  . . . |control threads
  . . . |Service and Processing threads
  . . . |forwarding threads
  . . |contrail dpdk version
  . . |Contrail related linux packages
  . |*[underline]#chapter 4: Contrail DPDK vrouter packet forwarding#*
  . . |interfaces and queues
  . . |DPDK VM incoming traffic (from underlay network)
  . . . |step 1: NIC spreading (RSS)
  . . . |step 2: Polling core
  . . . |step 3: Forwarding core (MPLSoGRE)
  . . . |step 3: Forwarding core (MPLSoUDP/VxLAN)
  . . |DPDK VM outgoing traffic
  . . . |step 1: polling core
  . . . |step 2: RSS
  . . . |step 3: forwarding core
  . . |Packet Flow Summary (Based on R1910)
  . . |*Non DPDK VM* on DPDK vrouter
  . . |*[underline]#vNIC queues#*
  . . . |Single queue virtIO
  . . . |Multiqueue virtIO
  . . . |vNIC queues "queue size" configuration (RedHat OpenStack)
  . . . |vNIC queues "queue number" configuration (RedHat OpenStack)
  . . . |vNIC queues "queue number" changing
  . . . |vNIC queues verfication
  . . . |Multiqueue known limitations
  . . . . |Number of queues on VM instances
  . . . . |Indirect descriptors are not supported
  . |*[underline]#chapter 5: Contrail DPDK vrouter Performance fine tuning: memory and CPU considerations#*
  . . |Performance tuning essentials
  . . |DPDK vrouter memory consideration
  . . . |Huge pages configuration
  . . . |hugepages for vrouter: `--socket-mem`
  . . . |Kubernetes: vrouter and Single Hugepage size
  . . . |IRQ setup
  . . |DPDK buffer size adjustment (mbuf)
  . . . |Intel recommendation
  . . . |Problem
  . . |Enable CPU performance mode
  . . |DPDK vRouter CPU assignment
  . . . |packet processing threads
  . . . |service and control threads <= 19.12
  . . . |service and control threads pinning >= 20.03
  . . . |Provisioning concerns
  . . . . |control and service threads >= 20.03
  . . . . |packet processing threads (forwarding cores)
  . . . |vRouter CPU numbers and single queue VM
  . . |DPDK vrouter CPU pinning and isolation
  . . . |tuned and isolcpus - RedHat
  . . . |isolcpus - Ubuntu
  . . . |RedHat OS scheduler CPU assignment (CPUAffinity)
  . . . |Nova CPU assignment (vcpu_pin_set)
  . . . |vRouter CPU assignment (CPU_LIST, SERVICE_CORE_MASK and DPDK_CTRL_THREAD_MASK)
  . . . |Check CPU pinning on all processes
  . |*[underline]#chapter 6: Contrail DPDK vrouter Performance fine tuning: other considerations#*
  . . |vrouter physical bond setting
  . . |Manage a high flow environment
  . . . |Increase flow table size
  . . . |Flow setup rate optimisation
  . . . |Configuration of packet based processing
  . . |MPLSoUDP encapsulation Configuration
  . . . |Contrail Configuration
  . . . |SDN Gateway configuration: MPLSoUDP and Load Balancing
  . |*[underline]#chapter 7: Contrail DPDK vrouter Deployment considerations#* (prz)
  . . |Define number of resources required for vRouter DPDK
  . . |Compute Node CPU capacity planning
  . . |vrouter forwarding cores capacity planning
  . . . |First step: expected network throughput
  . . . |Second step: VM DPDK support and multi queues capability
  . . . |Last step: sibling consideration
  . . |vrouter services cores capacity planning
  . . |typical CPU assignment
  . . |Performance tests figures (DPDK vrouter)
  . . |Jumbo frame support
  . . |Configure driver and network settings
  . . |Configure nova scheduler and flavor
= . |*[underline]#chapter 8: Contrail DPDK vrouter troubleshooting#* (laurent)
  . . |vrouter fine tuning parameters (kernel and DPDK mode)
  . . . |Generic vrouter dimensioning parameters
  . . . |Increase vrouter default value of dimensioning parameters (especially flow table)
  . . . |32 bits vrouter nexthop limit parameter (contrail release 19.11 and later)
  . . . |vrouter networking parameters (MTU)
  . . |vrouter DPDK fine tuning parameters
  . . . |DPDK vrouter parameters
  . . . |DPDK fine tuning rules (mainly for Intel NIC)
  . . . |DPDK vouter parameters provisioning
  . . . |DPDK vouter parameters configuration (5.0 and later versions)
  . . |DPDK vrouter log analysis
  . . |Connectivity Troubleshooting
  . . . |How to check vrouter connectivity
  . . . |vRouter vif queues setup
  . . . |vRouter vif queues activation
  . . |Packet drop troubleshooting
  . . . |Interface traffic counters
  . . . |Packet flow from a Compute Physical NIC to a VM NIC - counters placement
  . . . |Packet flow from a VM NIC to compute node Physical NIC - counters placement
  . . . |Traffic Load balancing on forwarding cores
  . . . |vrouter is dropping packets
  . . . |virtual instance is dropping packets
  . . . |Packet Drop statistics
  . . . |vif command: get-drop-stats option
  . . . |Dropstats and packet drop log utility
  . . |Faulty vrouter deployment troubleshooting
  . |appendix
  . . |References