summaryrefslogtreecommitdiffstats
path: root/vnet
AgeCommit message (Collapse)AuthorFilesLines
2016-07-19On bonded interface admin-down, should stop all slave linksJohn Lo2-12/+18
When bonded interface is set to admin down, all slave links should also be stopped or they will continue to receive packets and then be dropped because bonded interface is down. Also remove setting bonded interface L3 packet size limit to that of slave on startup - it is not needed and can cause undesirable side effect if its value become incompatible with bonded interface MTU. Change-Id: Ibdd8acac0ca41a867131441eb26518592bb7d98a Signed-off-by: John Lo <loj@cisco.com>
2016-07-19Fix CLI to add LISP interfaceFlorin Coras1-3/+16
Change-Id: Id59a5f3dcea46679deb759a8e4af187125f33cbd Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-07-19Tap: Fix hardware address assignmentMohsin KAZMI1-24/+17
[VPP-200]: Previously, VPP set the same hardware address to tap interface as of Linux side tap interface, if neither hardware address nor 'random' keyword were given explicitly on VPP command line during tap creation or modification, which was default case. This patch makes sure to set the different hardware addresses randomly as default case. While one can set unique hardware address or similar to one at Linux side using VPP tap command line. Change-Id: Ie0a82f3706834e87426d66c6e869ec4edfefe932 Signed-off-by: Mohsin KAZMI <sykazmi@cisco.com>
2016-07-18Fix "show hardware" CLI display for bonded interface may corrupt heapJohn Lo1-1/+1
Change-Id: Ie379844047b6402884653d3fd682010a1d09d14a Signed-off-by: John Lo <loj@cisco.com>
2016-07-18Output format change from "vlan 802.1q" to "802.1q vlan", addition to VPP-111marek zavodsky2-4/+4
Change-Id: Ieac14c88e6f0d2d88da1fe47f981fa33ae6f7c23 Signed-off-by: marek zavodsky <mazavods@gmail.com>
2016-07-17Add ILA pluginPierre Pfister1-0/+2
This plugin is implementation of Identifier Locator Addressing (ILA) per IETF draft-herbert-nvo3-ila-2 Change-Id: I5d5f8fb55c490f358f628bceb5f57e7e7408e6ed Signed-off-by: Pierre Pfister <ppfister@cisco.com> Signed-off-by: Wolfgang <wolfgang.beck01@gmail.com> Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-14vhost-user: Reset virt-queue info when a vhost interface is disconnected.Steve Shin1-0/+16
When a vhost interface is disconneted, virt-queue info should be cleaned up. This will avoid any potential vpp crash due to unmmaped memory access. Change-Id: Ia20153da9eb45412bb41d76ef66ede175ea6fef1 Signed-off-by: Steve Shin <jonshin@cisco.com>
2016-07-14Show 802.1q/802.1ah details in the trace output, fixes VPP-111marek zavodsky4-16/+63
added one line to dpdk-input trace to display vlan tci when PKT_RX_VLAN_PKT flag set cleaned trace output of af_packet node. Added formatter for vlan_tci. Merged with John Lo's ethernet trace extension: Decode both dot1q and dot1ad VLAN tags in ethernet format function and show what type of vlan tag it is. dpdk-input & ethernet trace output example of ARP: 00:00:41:545481: dpdk-input TenGigabitEthernet8/0/1 rx queue 0 buffer 0x10f2e: current data 0, length 60, free-list 0, totlen-nifb 0, trace 0x1 PKT MBUF: port 4, nb_segs 1, pkt_len 60 buf_len 2176, data_len 60, ol_flags 0x1, data_off 128, phys_addr 0x70e38ac0 packet_type 0x0 Packet Offload Flags PKT_RX_VLAN_PKT (0x0001) RX packet is a 802.1q VLAN packet ID 100 ARP: 8c:60:4f:dd:ca:81 -> ff:ff:ff:ff:ff:ff vlan 802.1q id 100 request, type ethernet/IP4, address size 6/4 8c:60:4f:dd:ca:81/172.16.110.1 -> ff:ff:ff:ff:ff:ff/172.16.110.10 00:00:41:545492: ethernet-input ARP: 8c:60:4f:dd:ca:81 -> ff:ff:ff:ff:ff:ff vlan 802.1q id 100 00:00:41:545499: error-drop ethernet-input: unknown vlan Change-Id: Iae67a945fda4aa2f24032e305a24544dd182b065 Signed-off-by: marek zavodsky <mazavods@gmail.com>
2016-07-13Add API dump call for vrf/vni mapping to vpp-api-testFilip Tehlar1-1/+1
Change-Id: I7a028ce9ddf21bd3a7d4991ba1be05e5e74202d6 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-07-12packet-generator: various fixesDamjan Marion3-32/+44
Change-Id: I8f1be9a501574ff4d5024ed0d632392708716e77 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-12policer actionMatus Fabian6-14/+215
JIRA: VPP-90 Policer allows you to specify the action to be taken on a packet: conform-action (green color) exceed-action (yellow color) violate-action (red color) Action to take on packets: drop - drops the packet transmit - transmits the packet, the packet is not altered mark-and-transmit <DSCP> - sets the DSCP value and transmits the packet Change-Id: I59c037e55e7e2a9fc9b9752e92426f3977f5587b Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-07-11Simplify API to add LISP adjacenciesFlorin Coras2-73/+45
The API to add an adjacency requires that two things be provided 1) a local and a remote eid 2) the whole remote mapping for the remote eid. Since the API to add remote mappings can be used for 2), 1) in combination with this API are enough to add an adjacency. Change-Id: Ibe7474924bc3f28b6aed19cefa78fdb812de5eac Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-07-11VPP-183: IPSec transport modeMatus Fabian3-17/+112
Change-Id: I22399aa9d55db0d91da7ba6acbbf552c0d201458 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-07-09dpdk: disable CRC strippingDamjan Marion1-1/+1
Change-Id: I7006a3068c22e18e62c84abb8cc6124695b9ca44 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-09packet-generator: fix pcap stream supportDamjan Marion2-4/+18
Change-Id: I494280964deda1d9448540cb5c6e7a8b750fff93 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-08IPv6 frag: avoid overflow while parsing extension headersYoann Desmouceaux1-0/+7
A malicious packet could advertise an extension header length bigger than the actual packet length, which would cause an overflow. Change-Id: I277123e6fde6937b0170f2b2e33846bd22848ac4 Signed-off-by: Yoann Desmouceaux <ydesmouc@cisco.com>
2016-07-08Add locator prority and weight to LISP APIFilip Tehlar1-5/+20
Change-Id: Ifa9bcd9a9c5dbda00ff8096909ccbc822445b8cb Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-07-08Remove unnecessary and obsolete configure.ac directivesDamjan Marion1-2/+0
Also enable silent rules where missing Change-Id: Ia521886815c862b013f01df4cc18fd8a298aaaa1 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-08Add binary API for IPFIXJuraj Sloboda2-1/+5
Change-Id: I3346b18126d65b72726e977dfb11ba4c380056c0 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-07-08Make IPFIX src port configurableJuraj Sloboda3-1/+8
Make src port configurable in flow report sample code Change-Id: Ic7d3c3de17b83821106a827fb65e79381044da7e Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-07-08Allow DPDK per interface startup config to enable/disable VLAN strippingJohn Lo2-8/+27
The init of VIC/ENIC ports enable VLAN stripping of received packets by default, which is different to all other devices. The VLAN stripping of ENIC ports can be disabled by adding the per device DPDK config as "vlan-strip-offload off" such as: dpdk {... dev 0000:0c:00.0 {vlan-strip-offload off} ...} The per device config "vlan-strip-offload on" can be used for enabling VLAN stripping for other devices which support this function but is disabled by default. Change-Id: I9c81904a87c26868a07900b03677aeeb57f72372 Signed-off-by: John Lo <loj@cisco.com>
2016-07-08Reset IPFIX streams after configuration changeJuraj Sloboda1-0/+17
Reset IPFIX streams if reconfiguring IP addresses or collector port Change-Id: Idc914f90462572342d4ed02b538bb2d30b317931 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-07-07Add configuration options for IPFIXJuraj Sloboda3-11/+52
Make Path MTU configurable Make template resend interval configurable Make collector port configurable Change-Id: Ia557916137995ea565f0ede12e169efe81eb0a5d Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-07-07Use arbitrary FIB for IPFIXJuraj Sloboda3-8/+20
Change-Id: I85b3543a3f72a10e15c252e04ce2e4a390513ca9 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-07-07VPP-142 Recursive route sending traffic to wrong interfaceNeale4-112/+188
Indirect routes should always result in an indriect adjacency even when the route's next-hop is covered by a connceted, since the covering route may change and no tracking is in place. Some de-duplication of code for installing indirect routes via the CLI and API. Change-Id: I7a440ffba43ae3990b68cb407244c06bd0827534 Signed-off-by: Neale <nranns@cisco.com>
2016-07-07Fix bugs and do some optimization in IPFIX codeJuraj Sloboda2-6/+22
Change-Id: Iba8627062874eac63c584ec05343f4591f48c286 Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-07-07Document more nodesDave Barach3-0/+142
Change-Id: Ib8ef0559aa0573bf1229e9c794d48520197f9c8a Signed-off-by: Dave Barach <dave@barachs.net>
2016-07-07Fix deletion forwarding entries when deleting static remote mappingFilip Tehlar1-0/+3
Change-Id: I11207a0452cbccfb959ff426faefda4820463007 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-07-07Retire support for DPDK 2.1.0 and olderDamjan Marion8-197/+2
Change-Id: I3c3427c61e32d4727360aa802950bb9ab44afd84 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-07Add some doxygen tagsDave Barach1-0/+36
Also add an index of node names Change-Id: Id65c2e607976d8bad73deb738035a471be077196 Signed-off-by: Dave Barach <dave@barachs.net> Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-07-07Add an option to dump details about specific LISP EID in API/CLIFilip Tehlar2-11/+66
Change-Id: Ie5e6751fd791e7ca728522632332abe442a1a75b Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-07-06Retire PLATFORM=virlDamjan Marion3-10/+2
Change-Id: Iaf9735258f456574534c1a581b983326badea171 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-06Add support for capturing packets on packet generator interfacesDamjan Marion8-53/+215
This patch introduces following changes: - 4 predefined pg/stream[0-3] interfaces are removed - Interface naming is changed form pg/streamX to pgX where X can be any u32 value - one pgX interface can handle multiple streams - keyword "source pgX" is added to "packet-generator add" command, X is 0 by default - new cli "packet-generator capture" is introduced - new cli "create packet-generator interface pgX" Change-Id: I768d075b9d4a34f0b5073debdc5dd4a0880c682c Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-07-06Netmap: Fix Netmap Polling IssueMohsin KAZMI1-7/+31
Previously, netmap node switched from interrupt to polling if worker threads are enabled even if there was no netmap interface running. Netmap input node consumed CPU cycles because of input node calls but these cycles were wasted as input node did not have any packet to process. This patch fixes issue stated above using more intelligent way of enabling or disabling polling based on interfaces count. But the pre-requisite condition for polling is, worker thread(s) should be enabled. Change-Id: I3a901823c7b040cce3393958981f439b9f290fe5 Signed-off-by: Mohsin KAZMI <sykazmi@cisco.com>
2016-07-06Bug fix for VPP-104 about not being able to down a sub-if if the super-if is upCalvin1-1/+3
Change-Id: I913c9807519aa10e515d12fcfbcbfc22b58f5839 Signed-off-by: Calvin <calvin.ference@gmail.com>
2016-07-06VPP-182: IPv4 static ARP entries should not be deleted on interface downJohn Lo1-19/+24
IPv4 static ARP entries should remain when interface is set admin-down and be reapplied on interface admin-up. Change-Id: Ic0051865154230c2561d6e6421b05d842f147ca7 Signed-off-by: John Lo <loj@cisco.com>
2016-07-06VPP-177: IPsec empty buffers allocation fixMatus Fabian2-2/+4
Change-Id: I6d224fe19f1e0dd7ad5659e0734bc96ba37337ff Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-07-05VPP-144: Fix that shows the empty segment field in sh sr tunnelCalvin1-1/+6
Change-Id: Idc71a48f2eab3b712f6953af8baf1a6ecd54dcaf Signed-off-by: Calvin <calvin.ference@gmail.com>
2016-07-05VPP-179 Fix adjacency reference-count botchesDave Barach2-2/+24
Change-Id: I3fe83a511064d73087c4526ef33cd7628f15b90f Signed-off-by: Dave Barach <dave@barachs.net>
2016-07-04LISP CP cleanup and refactoringFlorin Coras7-727/+808
- avoid code duplication by using only one function for insertion/updating of remote mappings into map-cache. Static remote mappings are now inserted using this function as well and therefore the code does not try to build forwarding entries out of them now. - bring up lisp dp interfaces when a vni is bound to a vrf. - ensure eids are cleaned-up before parsing control plane messages - ensure map-requests are always sent to default fib - new API to insert lisp adjacencies as opposed to remote mappings which should be replaced post merged in CSIT - reorganize and group functions according to their purpose and use. No need to pre-declare internal functions now. - this does not touch locator-set logic Change-Id: Ibcfc0f2d9c1bc1c9eab6e83c1af1b4cf9302ac10 Signed-off-by: Florin Coras <fcoras@cisco.com>
2016-07-01VPP-171: fix a set of hw interface recycling bugsDave Barach3-1/+27
Change-Id: I735292bb2176742acab2295f90956c57e6f7ec1c Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-30VPP-163 "show ip6 interface" ignores many addressesChris Luke2-24/+61
The output of the CLI command "show ip6 interface" shows only the first link-local address and any globally-scoped addresses. It ignores all other valid address scopes. This patch reworks that routine to cover the three main address scopes ("link-local", "global" and "local") and anything else it finds is grouped under "other"). Rationale for this final grouping is that these other addresses fall under ranges currently either "reserved" or "multicast" in scope. Whilst it's good to show if these are present, they are not normally found as link addresses. DBGvpp# sh ip6 int tap-0 tap-0 is admin down Link-local address(es): fe80::e857:7fff:fe77:c1a9/64 Local unicast address(es): fd50:7389:246b:4321::2/64 Joined group address(es): ff02::1 ff02::2 ff02::16 ff02::1:ff77:c1a9 ff02::1:ff00:2 ... Change-Id: I1d750b3b39c54aa4eb75632d53089640601bcba5 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-06-30Fix buffer leak from L2 flooding replication processPierre Pfister1-0/+1
vlib_buffer_free_inline actually checks (b->flags & VLIB_BUFFER_RECYCLE) in order to decide whether to free the packet or not. Although the flag was correctly set in replication_prep, it is not removed by replication_recycle during last iteration. This patch just removes VLIB_BUFFER_RECYCLE when is_last is set. Change-Id: I2445ebce908d94d95535e706b40407b4f15906e4 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-06-30Fix clang buildDamjan Marion2-5/+5
Change-Id: I678d7e0a7c91c7daf9feb3ec23a633b96fab56a7 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-29Fix the spelling of the word "suppress".Chris Luke2-11/+13
The spelling mistake where "suppress" is written as "surpress" was sufficiently common and annoyed me enough to fix it. For backwards compatibility, the CLI and API test tool both still accept the erroneous spelling. Change-Id: I82104ae9d8c2c9d6e3396ba0d72cb1dc133081d1 Signed-off-by: Chris Luke <chrisy@flirble.org>
2016-06-29Add support for ethernet address in LISP APIFilip Tehlar1-1/+2
Change-Id: I9f1522f55bdd11602784a421fd850b839a1070e6 Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
2016-06-29Don't re-write adjacency with same information.Keith Burns (alagalah)1-9/+17
This will cause FIB counters to appear to be reset. This is an implementation of a patch from Dave Barach. Change-Id: I19b9953d42dfb92ec22af6a855e2e519ae7c3bdc Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-06-29Decouple worker thread code from dpdk, enable worker threads in vpp_liteDamjan Marion7-600/+9
Change-Id: I28616f1a89f2da95484438ec1a1db64845f15ef6 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-06-29VPP-158: VPP crashes in IKEv2 code when running multithreadedMatthew Smith6-148/+222
Change tunnel interface creation to be done from the main thread instead of a worker thread by calling vl_api_rpc_call_main_thread. Make per-thread copies of volatile elements in ikev2_main. Change-Id: I4cda8aaa392a04c2aea2d50a52a07933cf40c016 Signed-off-by: Matthew Smith <mgsmith@netgate.com>
2016-06-28VPP-48 Fixes for ip4/6 ttl checks and icmp responsesChris Luke6-72/+244
This patch fixes a few minor things: - Previously ip[46]_input was rejecting packets with an input TTL (hop limit) of one; this was not correct behavior. Packets that are bound for this device can validly have a TTL of one. - ip[46]_forward was not generating an ICMP TTL expired message if the act of decrementing the TTL caused it to become zero. This was not previously an issue because ip[46]_input was filtering packets where this could happen. - udp_local was not generating ICMP Port Unreachable messages if UDP packets arrived for a port that is not listened to. This is typically the signal that "traceroute" uses to terminate its search. Together these fixes mean that traceroute probes transiting a VPP node, or are targetted toward a VPP node, now work as expected. Change-Id: I84bb940883f7a18435f29f4518fb0445b989a3e3 Signed-off-by: Chris Luke <chrisy@flirble.org>