summaryrefslogtreecommitdiffstats
path: root/src/vnet
AgeCommit message (Collapse)AuthorFilesLines
2018-09-06vxlan: improve encap performanceZhiyong Yang1-2/+10
1. For vxlan, prefetching one cacheline is enough. 2. Reduce vlib_increment_combined_counter functtion calling if possible. Change-Id: If3a72ac40c8988caaf0d5915b695f86d799f15a9 Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
2018-09-06eth_mac_equal takes const pointersNeale Ranns1-1/+1
Change-Id: I5a47d30d783dcf000e3ca2bcdc46e7d93654cc37 Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-09-06vxlan_gpe: optimize encap performanceZhiyong Yang1-32/+47
The patch can reduce 13 cycles per packet for the graph node vxlan-gpe-encap and increases 5% or so vxlan_gpe encap throughput on Haswell platform for the best case (All pkts have the same sw_if_index). Change-Id: I9c70fd3e0f2f0a9d922cf64970d0b0d51b772024 Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
2018-09-06vcl/session/svm: fix coverity warningsFlorin Coras1-3/+3
Change-Id: I27532b3ab244dc95955e836a42b229a6e4e32818 Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-09-06session: support multiple worker bindsFlorin Coras13-333/+601
Allows app workers to listen on the same session endpoint. Incoming connects are spread across the workers in a round-robin fashion Change-Id: Ib5f5817230d9abc6127a85cdbdcad70d980c0f7f Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-09-06Enum type on the API for QoS sourcesNeale Ranns2-14/+49
Change-Id: I877541ede6e26581c659821502f23b777903b82f Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-09-05Add missing API MAC address encode implementationNeale Ranns1-0/+1
Change-Id: I4cb073f23a7f24f0fc16f2eda8b869dbe657f71b Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-09-04l2_output:skip processing if no features are enabledEyal Bari1-2/+6
Change-Id: I7fcc082376b451c6179ec2ef58f98c931adfed27 Signed-off-by: Eyal Bari <ebari@cisco.com>
2018-09-03Deprecate old buffer replication schemeDamjan Marion4-423/+0
Change-Id: I1f54b994425c58776e1445c8d9fe142e7a644d3d Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-31IPx address query functions take a const pointerNeale Ranns2-34/+33
Change-Id: I45b0c48e89cb1ea556c795f6163a8346f2e2e0da Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-31Fix typoDave Barach1-1/+1
Change-Id: Iadf4ce27f56400b669b80f2e718b6d4330c949a5 Signed-off-by: Dave Barach <dbarach@cisco.com>
2018-08-31FIB path CLI fix for lookup-table IDsNeale Ranns1-0/+12
Change-Id: I8c127d472e0010036061a8a076599d1ff85abab5 Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-31Introduce a mac_address_t on the API and in VPPNeale Ranns8-2/+239
Change-Id: I05d6c2cb5d34de469eb050e4ee10dc6b954c986d Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-08-31VPP-1407: Fix the wrong length of udp header for buffer chainsshubing guo1-1/+4
Change-Id: I1669faeac15dfb69e335a1e96b6da118dc1892c1 Signed-off-by: shubing guo <guo.shubing@zte.com.cn>
2018-08-31VPP-1408: Fix bug that wrong tx fifo drop in buffer chains flow of dgram modeshubing guo1-1/+4
-- Not drop session dgram hdr when to drop processed udp message from tx fifo Change-Id: Id5ce5780817041bca05011f7b9b53e97a6d78da4 Signed-off-by: shubing guo <guo.shubing@zte.com.cn>
2018-08-30vcl: add support for multi-worker appsFlorin Coras2-1/+7
Add basic support for app registration of multiple workers. LDP does not work with multi-worker apps. Change-Id: I3fc421a2a591a077b275827463f874b261415a63 Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-08-30cmake: add missing headerDamjan Marion1-0/+4
Change-Id: Ie1aa5c34fa3a4f9940741b8ae55b93e021ced404 Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-30Refactor the ARP throttle into a common type so it can be reusedNeale Ranns6-33/+126
Change-Id: Ic7f7af983d5b6d756748023aa0c650f53e9285cf Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-08-30Add SHA2 support to IKEv2 implementationBerenger Foucher2-8/+89
The following patch adds a stronger cryptographic suite to IKEv2 implementation. The following algorithms can now be used for integrity checking in IKEv2 implementation (responder and initiator): - hmac-sha2-256-128 - hmac-sha2-384-192 - hmac-sha2-512-256 The default integrity checking method was set to hmac-sha2-256-128. The default PRF function was set sha2-256. Change-Id: Ia82b4cbbf3067b19b8487040dbefbaf4c9319548 Signed-off-by: Berenger Foucher <berenger.foucher@stagiaires.ssi.gouv.fr>
2018-08-30SR-MPLS: fixes and testsNeale Ranns4-3/+30
- the FIB path takes a vector of type fib_mpls_label_t not u32 so the untype safe vec_add did not work - write som eSR-MPLS tests - allow an MPLS tunnel to resolve through a SR BSID Change-Id: I2a18b9a9bf43584100ac269c4ebc286c9e3b3ea5 Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-29SR-mpls: do not pass empty label stack to fibNeale Ranns1-10/+11
Change-Id: Ib1601d01a54296e72be3bbfa057fce965549b02b Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-29Address bfd rpc scale issuesDave Barach3-24/+280
Remove the expensive RPC call for every received packet and replace it with lock-protected direct calls. Reinstate RPC for the less frequent notification traffic. Adjust the wakeup event sending logic to minimize the number of events sent, by measuring the time it takes from sending the event to processing it, and subsequently not sending the event if the pending wake-up time is within 2x or the event propagation delay. Eventually: remove oingo / oingoes. Change-Id: I0b3d33c5d029527b54867a97ab07f35f346aaa3d Signed-off-by: Dave Barach <dave@barachs.net> Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com> Signed-off-by: Steve Shin <jonshin@cisco.com> Signed-off-by: Andrew Yourtchenko <ayourtch@gmail.com>
2018-08-29Fix race condition in tls half open ctx get/putPing Yu1-4/+5
Change-Id: I603094215162bfe7d41bbff1b9fe8ab974aa3fab Signed-off-by: Ping Yu <ping.yu@intel.com>
2018-08-29Consolidate table->index conversion in fib-path CLI processingNeale Ranns3-36/+14
Change-Id: I221cebddc45efbfdec428b7df2af96e2aedff2dd Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-2832/64 shmem bihash interoperabilityDave Barach1-4/+5
Move the binary api segment above 4gb Change-Id: I40e8aa7a97722a32397f5a538b5ff8344c50d408 Signed-off-by: Dave Barach <dave@barachs.net>
2018-08-28tls: fix handling of failed connectsFlorin Coras1-8/+11
Change-Id: I48f32fdf1859420d2966dd8553f3a8f9a082e2ae Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-08-28vcl/session: use mq for bind repliesFlorin Coras5-0/+121
Change-Id: Iac6e1c32cf99c5392a29f7366401b7fc39e463e3 Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-08-28vxlan: decap use vlib_buffer_enqueue_to_nextEyal Bari3-255/+223
Change-Id: I43832cdadda820772ba9052890bba59b24e70c6c Signed-off-by: Eyal Bari <ebari@cisco.com> Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-27Adjacency walks protected by 'walk in progress' flagNeale Ranns2-2/+12
Change-Id: I3281f65f7dec792d56de48afb39efcc2fed8578b Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-27IGMP: enable command on cliNeale Ranns1-2/+1
Change-Id: I1f741b66ab8e3ecbb5c0d248b72e52c56545d5f3 Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-27MPLS: allow 16 as a valid output labelNeale Ranns1-1/+1
Change-Id: I7e6045514d58010258889cadd220b7efcef7c1b9 Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-26cmake: add add_vpp_library and add_vpp_executable macrosDamjan Marion1-609/+1212
Change-Id: I1382021a6f616571b4b3243ba8c8999239d10815 Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-26cmake: move functions to src/cmakeDamjan Marion1-0/+2
Change-Id: Ibcb7105fa7e3c09efdce01bccd4de235fe33ea99 Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-25cmake: add more headers to the install listDamjan Marion1-0/+225
Change-Id: I3a0f48381232fcac1727034aa6d2504a8d1edb04 Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-24session: fix coverity warningsFlorin Coras3-5/+12
Change-Id: I2a25bba675fc9c84e5d391533e92b9a041637405 Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-08-24session: add support for multiple app workersFlorin Coras15-735/+1287
Refactor session layer to support multiple workers per application. Change-Id: Ie67354688d396449d14bbbb8c56050206e307cd8 Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-08-24MPLS tunnel: don't reuse hw-indicesNeale Ranns1-27/+15
this is the same behaviour as other tunnel types Change-Id: I6439f692bc2bc18f12eea599e0e06b9eaa5eb128 Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-24rx-placement: Add API call for interface rx-placementMohsin Kazmi4-23/+105
Change-Id: I9228ce29e9d2fc862a2d076b4072bcdd728d6dd1 Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-08-24l2:bvi-dont aceess sup hw int for broadcastsEyal Bari1-20/+11
sup hw int is needed only for unicast validation Change-Id: I5e5753c09d1c16fdb2435b4db5628a2379fe6f96 Signed-off-by: Eyal Bari <ebari@cisco.com>
2018-08-24tcp: fix cc recovery re-entry and persist timer popFlorin Coras4-17/+48
Change-Id: I89e8052f2d2c36dd3de5255c4ee570722dc58227 Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-08-23session: fix retrieval of local sessions if app is detachedFlorin Coras1-1/+3
Change-Id: I0f5c1dc99610b65646c3b5cf8da7aea273371e4d Signed-off-by: Florin Coras <fcoras@cisco.com>
2018-08-23ip4: rework rewrite node to use vlib_buffer_enqueue_to_next()Damjan Marion1-355/+270
- perf improvement is around 3 clock per packet - it properly prefetches ip header and rewrite area Credits to zhiyong.yang@intel.com for spotting that in some cases rewrite area is not prefetched. Change-Id: Ie02913de7bd7f42b7df2617fb5fa87c74ab53c23 Signed-off-by: Damjan Marion <damarion@cisco.com>
2018-08-23coverity: l2 arp termination dumpMohsin Kazmi1-4/+5
This patch resolves the coverity warning. Change-Id: I3f5e664b442fa9bcafd28c67283596570dc1244d Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
2018-08-22IPIP and SIXRD tunnels create API needs table-IDs not fib-indexesNeale Ranns8-59/+144
Change-Id: Ifaef196a24fa9b6924f2b9692318f69763cee5e1 Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-08-22show command for lookup DPOsNeale Ranns1-0/+40
Change-Id: I4907f48e6c4a4e91343fd0d4fface00f09e5fa2b Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-08-22l2:remove unused members of input, output configsEyal Bari2-16/+7
reorder structs for less padding Change-Id: Id05123f5bac870e1c585b3aa2177d9e3a6f8d70b Signed-off-by: Eyal Bari <ebari@cisco.com>
2018-08-22Consolidate the [un]format_mac_address implementationsNeale Ranns4-18/+15
Change-Id: Ic4c42c5610a827234e6582501f0ddcba47aa34ee Signed-off-by: Neale Ranns <nranns@cisco.com>
2018-08-20CMake: generate .json from .api filesNeale Ranns1-8/+1
Change-Id: Ic18aa0fb42a72b5e0ebbfbebdefc7582cb46b5ea Signed-off-by: Neale Ranns <neale.ranns@cisco.com>
2018-08-20vxlan_gpe_encap: fix packet len errorZhiyong Yang1-1/+1
Change-Id: I294be184764b45777d6e5e44f5d742b2c8732de4 Signed-off-by: Zhiyong Yang <zhiyong.yang@intel.com>
2018-08-17CMake as an alternative to autotools (experimental)Damjan Marion1-0/+501
Change-Id: Ibc59323e849810531dd0963e85493efad3b86857 Signed-off-by: Damjan Marion <damarion@cisco.com>