summaryrefslogtreecommitdiffstats
path: root/vnet
AgeCommit message (Collapse)AuthorFilesLines
2016-11-23Fix coverity warnings, VPP-486Dave Barach1-1/+1
Change-Id: Id88805f77642187f304f8baef1f6b447728e4b5b Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-22dpdk: quad loop dpdk tx and code optimizationsDamjan Marion4-253/+181
Beside performance optimization this change also introduces rte_mbuf validation in dpdk tx code. If packet is arrving from non-DPDK source like self-originated packets or non-dpdk devices (tuntap, af_packet, netmap, pg) it is not anymore exepcted that it contains valid rte_mbuf metadata unless it is explictely stated by setting VNET_BUFFER_RTE_MBUF_VALID flag. dpdk-input node sets VNET_BUFFER_RTE_MBUF_VALID on all packets and that reduces cost of validation in tx node. Change-Id: I4ad40f398f7b5cf90656a2069a27c0f6fc13efba Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-22GRE tests and fixesNeale Ranns11-70/+174
Change-Id: I234240e9bdd4b69ad64a17b1449ae1e81c0edaca Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-11-22Fix coverity warnings, VPP-486Dave Barach1-2/+2
Change-Id: I4ec49e116fdb418ebf9d84000f2a0cec1cf78b14 Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-22Span node configuration fixChristophe Fontaine1-3/+3
Prefer to use the sw_if_index instead of the hw_if_index to be compatible with vhost-user interfaces. Change-Id: Id1e4255a992d428b8de47b3dd6175ed86e08c803 Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
2016-11-21Dual Loop Load-Balance NodesNeale Ranns3-129/+561
Change-Id: I23bc477aa03f97dd546747b3297a878055d32e1c Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-11-21Convergence ImprovementsNeale Ranns12-37/+380
addressing convergence times when interface is shut. 1) prioritise the registered callback handlers. Add FIB convergence handler as high priority 2) hook the FIB convergence call-back into HW link down. 3) don't schedule a walk of a FIB node if it has no children 4) Checks at fib_path_t to prevent unnecessary walks, that it prevent the same information propagting the graph multiple times. Change-Id: I406966b50f31d77c221821b8649776d66655194c Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-11-19pg: avoid possible buffer leakDamjan Marion1-1/+1
Change-Id: Iad1a4028d7c3d603e644db9f8a743b92fc2a4dba Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-18dpdk: quad loop dpdk-input nodeDamjan Marion6-88/+286
Change-Id: I761af883403b6740bd24ce196ae0bfe6bc77b409 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-18CLI for access to HQoS queue statisticsDavid Hotham1-0/+115
Change-Id: Ib9bc5d8d28b4742583f917c3a20e7c676df59de4 Signed-off-by: David Hotham <david.hotham@metaswitch.com>
2016-11-18handoff - allow symmetrical dispatchGabriel Ganne2-2/+84
update cli cmd with symmetrical|asymmetrical flag (asymetrical by default) Change-Id: I8186506413a3ba0aa0561c0448b5e06e6d6e7ece Signed-off-by: Gabriel Ganne <gabriel.ganne@qosmos.com>
2016-11-18Fix bug in configure 'vlan-strip-offload on' first, then configure "set ↵jerryian1-0/+1
interface mtu" command, vlan-strip-offload option will be changed to off. Change-Id: I1f39628fc8cde4e46ed5b2e3208253a07327de81 Signed-off-by: jerryian <gu.jian1@zte.com.cn>
2016-11-18dpdk: maintain per-worker trace bufferDamjan Marion3-7/+10
Change-Id: I8234054cef4cadada6745a8c00c8df2c20daac33 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-18dpdk: remove unused codeDamjan Marion2-112/+2
Change-Id: Iabb5a3b15e35fb062c04bbc076b19fe50910d412 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-17feature: API/CLI to enable/disable feature per interfacePavel Kotucek3-1/+116
Change-Id: I91d5f5648189143903eb973fdc60de9880fd47c2 Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
2016-11-17remove reference to Intel with dpdk docsPadraig Connolly2-2/+2
*Changed configure files to say DPDK instead of Intel DPDK *Changed rpm and deb config files to say DPDK instead of Intel DPDK *Changed vnet Makefile to say DPDK instead of Intel DPDK Change-Id: Ic6e3eacf2341af873d4bd2e036d5afa857ca6355 Signed-off-by: Padraig Connolly <padraig.connolly@intel.com>
2016-11-17Fix coverity warnings, VPP-486Dave Barach1-1/+2
Change-Id: If98e5e00eede8f2aa9f17517c726b337c98e5467 Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-17Fixup Path weights of 0Neale Ranns3-253/+681
A path wight of 0 is a meaningless value. We can either reject it and thus expect CLI/API clients to always write a non-zero value, or we can accept it and assume the intent was a weight of 1 - this fix does the latter. Change-Id: Ide736dbbb8376f85441f5a67388d5e3acad4d34e Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-11-17dpdk: remove efdDamjan Marion5-985/+41
Change-Id: I761af883403b6740bd24ce196ae0bfe6bc77b408 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-16Tune the ethernet input untagged l2-bridging caseDave Barach1-0/+83
Change-Id: I62fe0834e1031e191787a26452fb167c33e30ffd Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-16vhost: Fix bug during interface deletionPierre Pfister1-0/+1
This small patch fixes a critical bug during interface deletion. While the interface was removed, thread placement was not corrected properly. This should help fixing VPP-528,VPP-531 as well as other FDS bug reports. Change-Id: I02f9d44c62b6ca4c0b6d73f476600b342846507f Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-11-16Add an ability to punt all unknown UDP traffic to the hostAlexander Popovsky (apopovsk)4-32/+88
By default, VPP replies with ICMP error: port unreachable when receives an ‘unknown’ UDP (destination port with no registered listener) packet. An existing punt() API is extended to accept ALL (~0) as a L4 port number and if used redirects all ‘unknown’ UDP packets to the host. New ‘all’ option is added to the “set punt udp” CLI as well. Change-Id: I444fc5e32ffa3f0f085bb17708bf32b883ba09df Signed-off-by: Alexander Popovsky (apopovsk) <apopovsk@cisco.com>
2016-11-16VPP-521: Classify API enhancement to redirect traffic to pre-defined VRFSteve Shin4-35/+159
Ingress packets are punted to the “Input ACL node” where traffic is classified based on n-tuple keys. If no matched session is found from the classify tables, then it will be passed to “the lookup node” for normal packet forwarding. If a classify session is hit from one of classify tables, then packet vnet buffer field sw_if_index[VLIB_TX] will be updated to the new FIB index used for subsequent IP lookup for this packet. Change-Id: Ifdea63196ddb81c2d5c43b8c98e11ddbf5b11858 Signed-off-by: Steve Shin <jonshin@cisco.com>
2016-11-15feature: remove old interface output feature codeDamjan Marion12-195/+44
Only consumer was ipsec which is now moved to the new ip{4,6}-output feature arc. Change-Id: I06008e67b5449c25eae77f28e1688521af3a23e0 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-15feature: convert ipsec output to new feature codeMatus Fabian5-79/+84
Change-Id: Ia287298bac76c8e6bf760d48c1e1e697de52999c Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-11-15threads: add support for multiple worker handoff queuesDamjan Marion3-123/+16
Change-Id: I2452df3c493eeb0a5078d53a230df6906651c057 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-15span: add feature (rx only) (VPP-185)Pavel Kotucek8-0/+544
Change-Id: I0f7cbf06b5a5acd745d13c9f5c761ea18132107b Signed-off-by: marek <mazavods@gmail.com> Signed-off-by: Damjan Marion <damarion@cisco.com> Signed-off-by: Pavel Kotucek <pkotucek@cisco.com> Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-15VPP-393: Subinterface is still used after deletionPavel Kotucek1-0/+10
Fixed bug in delete of sub-interface, if sub-interface is xconnected it was not deleted correctly (show interface address fails). Interface is set to L3 mode before deletion. Fixed help in API command. Signed-off-by: Pavel Kotucek <pkotucek@cisco.com> Change-Id: Ibe781e4b53422e6535e34ec72dbe274f9045f051
2016-11-15DPDK_HQoS: fix coverity warnings on uninitialized variablesJasvinder Singh1-3/+7
Change-Id: I76437b76619a280a44e4def4d6c048eaf3926102 Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
2016-11-15buffer: clone free_list to each vlib_main on creationDamjan Marion1-7/+2
Currently only packet-generator is creating free_lists during runtime. This avoids crash when buffer is freed on different worker thread. Change-Id: If2ae066a12cf7c4b3267d56d8566806f31cf7ffc Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-15Dump routes (VPP-500)Steven5-2/+67
Change-Id: I86e7382395a8b6471a0deaf57163718d41b71b83 Signed-off-by: Steven <sluong@cisco.com>
2016-11-14Add support for multi FIB DHCPv6 ProxyWojciech Dec3-156/+286
- Support multiple DHCPv6 server targets across VRFs - Allows clients and servers to be in different VRFs - Aligns CLI and VAT for DHCPv6 to DHCPv4 Change-Id: If47756b3a51dc1b9d045a32b7d32ceb80c1746e2 Signed-off-by: Wojciech Dec <wdec@cisco.com>
2016-11-12pseudo atomic adjacency updatesNeale Ranns10-94/+230
When an adjacency changes from incomplete to complete (arp to rewrite) and vice-versa, that update must produce valid behavour w.r.t. the packets that continue to encounter it. Change-Id: Icc2709aff9807c5d24f91ef7649268991ad9a45d Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-11-12Clean up coverity warnings, VPP-486Dave Barach1-5/+4
Change-Id: I709e7cf0bb52d8e6cdc9ddb3b7648660204aa3bd Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-11feature: convert all feature nodes to new feature infraDamjan Marion31-1420/+429
Change-Id: I34c527ba910fb282a95458b78d1d684eb337905e Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-10ip_frag: fix implicit enum conversionDamjan Marion1-1/+1
Change-Id: I024b8d79cced45cf53a7a912319eca2cc932b10e Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-10feature: fix init issue when multiple arc are presentDamjan Marion2-10/+18
Change-Id: I9c76b6d7ffebeeb92d5eeca5852c487d73151f28 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-10VXLAN tunnel encap forwarding optimization with FIB 2.0John Lo7-370/+490
Optimize VXLAN encap node so that vxlan4-encap node is used for IP4 and vxlan6-encap node is used for IP6 underlay. Also stack the VXLAN encap nodes to the appropriate FIB IP4 or IP6 load-balance node instead of ip4/ip6-lookup node to save IP lookup operation. For VXLAN decap node, check VXLAN header FLAGS field for each packet and remove the code to support decap-next for IP4 or IP6. These decap- next values were intended for experimentation purposes and not needed any more since VXLAN-GPE tunnel is supported. The decap-next field is still kept in API for backward compatibility and its value has no effect. Decap next for both vxlan4-decap and vxlan6-decap nodes is always l2-input node. Change-Id: I8ac95774946549ec403ab691f999df0c006b460f Signed-off-by: John Lo <loj@cisco.com>
2016-11-09Fix Compile errors from clang in FIB2.0 codeNeale Ranns15-21/+19
Change-Id: Ief769c966888094944b7a6b7f26527e7eff6103f Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-11-09Fix DHCP proxy when used for non-default FIB tablesIgor Mikhailov (imichail)1-3/+3
An issue is that the server->server_fib_index is overwritten by some incorrect value on subsequent calls to the function - e.g. when setting DHCP proxy for the same FIB table several times. Change-Id: I2e129b47f5c8fe3a0b924a7d71bb83e6fc53e9b5 Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2016-11-09Fix a batch of coverity warnings, VPP-486Dave Barach3-2/+16
Change-Id: I0379844824b4c2eb42588d0fb8e1a7eb441e923f Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-09devices: create dummy device-input node to keep nexts in syncDamjan Marion11-29/+31
device-input feature arc requires that all input-nodes have nexts in sync. packet-generator tends to call vlib_node_add_next when new stream is created and that puts nexts out of sync. With this change all input node are siblings of device-input node so call to vlib_node_add_next(...) will install same next to the whole family. Change-Id: I33d79492e5f30f348af19e527f36fe0222c524d7 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-09fix errors reported by clangDamjan Marion2-1/+2
Change-Id: Ib821e52dac7cd7ee24e6e495916689e23e8b699a Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-08pg: maintain per-worker bitmap of enabled streamsDamjan Marion3-10/+13
Change-Id: I38e476c8080faa5a8647ce6be5a71090e0aa8d5b Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-08Add the tap driver to the driver feature arc schemeDave Barach2-24/+16
Change-Id: I5f5251ed6b2a39d5e83dd7c702079245ef5f32b0 Signed-off-by: Dave Barach <dave@barachs.net>
2016-11-08vhost: Improve packet tracingPierre Pfister2-64/+133
Packet tracing for packets sent or received on vhost interfaces now includes: - virtio header information - virtio queue transmit mode (chained, indirect, etc...) Should be *really* helpful for dealing with the many existing qemu/driver versions/implementations. Change-Id: Id0a5d1d671d8b9d3e05691fe13def991b30ee105 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-11-08pg: support for packet generator on different worker threadsDamjan Marion12-38/+75
New Debug CLI: packet-generator new { worker X } Change-Id: I71499733a29b49cd36d753d54846d2553af6d024 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-07Restore punt/inject after FIB2.0Igor Mikhailov (imichail)1-0/+12
The tuntap punt/inject should be enabled for IPv4/6 RX once any vpp interface has an IP address. Change-Id: I4a507b7540b7464ed6d21035ac9b8f9463028c6f Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
2016-11-07Fix dual-loop issue in vxlan_gpe decapHongjun Ni1-18/+24
From logical point, if first packet is ipv4, and second packet is ipv6. When first packet failed, the procedure will skip key6_1 setting. This will lead to second packet's failure. But here the graph node only process either ipv4 or ipv6 packets completely. So it is not an issue here. This patch only make the packet processig's logic clear. It is just a cosmetic change. Change-Id: I0104ebf2546208d9068000649ce6dccdeeb5aa79 Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
2016-11-07pg: add device-input feature arc support on pg interfacesDamjan Marion2-5/+38
Change-Id: Ice97940a27c9f4d983d9199d59719d953520fcdb Signed-off-by: Damjan Marion <damarion@cisco.com>