aboutsummaryrefslogtreecommitdiffstats
path: root/vnet/vnet/ip/ip4.h
AgeCommit message (Collapse)AuthorFilesLines
2016-12-28Reorganize source tree to use single autotools instanceDamjan Marion1-322/+0
Change-Id: I7b51f88292e057c6443b12224486f2d0c9f8ae23 Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-12-09Coding standards cleanup for vnet/vnet/ip, VPP-255Dave Barach1-84/+100
Change-Id: I12892fa571cc50e0541d6463a8b68e1b618edd9f Signed-off-by: Dave Barach <dave@barachs.net>
2016-12-01Add vxlan-bypass feature to IP4 forwarding pathJohn Lo1-0/+10
Added vxlan-bypass feature which can be enabled on the underlay interface which receive VXLAN packets to accelerate VXLAN decap processing. The CLI to enable it is: set interface ip vxlan-bypass <interface> [del] With this feature enabled on an interface, there is an overhead for non-VXLAN packets at about 13 clocks per packet. The API is created to support vxlan-bypass for both VXLANoIPv4 and VXLANoIPv6. With this change, vxlan-bypass is only implemented for IPv4 forwarding path. Change-Id: Ica7239f642010b231eade7fd5009aa4b42c119d3 Signed-off-by: John Lo <loj@cisco.com>
2016-11-11feature: convert all feature nodes to new feature infraDamjan Marion1-77/+0
Change-Id: I34c527ba910fb282a95458b78d1d684eb337905e Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-11-01feature: add new feature handling code and device-input featuresDamjan Marion1-1/+1
Signed-off-by: Damjan Marion <damarion@cisco.com> Change-Id: I010ecde93863dbdad84b993cd3680a5446db59b5
2016-10-13feature: rename vnet_ip_feature_* to vnet_feature_*Damjan Marion1-8/+8
Change-Id: Idf68266f705b0455e5ab0ac73d23c7e0f4120d5b Signed-off-by: Dave Barach <dave@barachs.net> Signed-off-by: Damjan Marion <damarion@cisco.com>
2016-10-11Rename ip_feature_init_cast(...) to vnet_feature_arc_init(...), VPP-481Dave Barach1-25/+25
Eliminate an unused parameter in vnet_feature_arc_init(...) which eliminates a spurious relationship between feature arcs and ip. Add doxygen tags for 2x debug CLI commands, and for vnet_feature_arc_init(...) Change-Id: If83589539bcbbbd4d85e84458dd7eb7eb08837a0 Signed-off-by: Dave Barach <dave@barachs.net>
2016-10-10ipfix: add classification nodes for flow statistics (VPP-204)Juraj Sloboda1-0/+2
In order to have meaningfull IPFIX implementation we should be able to classify all packets flowing through vpp. But existing IPv4 and IPv6 classifier nodes are called only if destination IP address is local to vpp. This commit adds new IPv4 and IPv6 classifier nodes that should be used for collecting flow statistics. Change-Id: I60e60105663ba15b5200862a23bb817047fe4d1a Signed-off-by: Juraj Sloboda <jsloboda@cisco.com>
2016-10-03L2 over LISP and GRE (VPP-457)Neale Ranns1-9/+7
Change-Id: I0d7f9c7f41a9f9e0acb0950adedb90d45df08c2a Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-09-21A Protocol Independent Hierarchical FIB (VPP-352)Neale Ranns1-173/+44
Main Enhancements: - Protocol Independent FIB API - Hierarchical FIB entries. Dynamic recursive route resolution. - Extranet Support. - Integration of IP and MPLS forwarding. - Separation of FIB and Adjacency databases. - Data-Plane Object forwarding model. Change-Id: I52dc815c0d0aa8b493e3cf6b978568f3cc82296c Signed-off-by: Neale Ranns <nranns@cisco.com>
2016-08-19VPP-337 Add per interface IN filteringDave Barach1-11/+30
- ip post-rewrite feature subgraph arc support Change-Id: Ia4b07197463021ade916326231af246e2559a290 Signed-off-by: Dave Barach <dave@barachs.net> Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-08-03VPP-166 Documentation changes for ip4.h/lookup.hKeith Burns (alagalah)1-1/+1
Change-Id: Ia9f18b0eeba3a7cee35e66dbd15d3efb567acfc6 Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-08-01VPP-226 IPv4 src-address + port range checkerDave Barach1-16/+35
Change-Id: Ia251e9d7d53e894a5666109f69e9626d27ea74cb Signed-off-by: Dave Barach <dave@barachs.net> Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
2016-07-26policer classifyMatus Fabian1-0/+1
JIRA: VPP-114 If the classifier finds a matching entry, it sends packet to the policer, packet should be pre-colored for color-aware policers. Change-Id: I10cb53b49907137769418f230df2cab577d0f3a0 Signed-off-by: Matus Fabian <matfabia@cisco.com>
2016-07-07VPP-142 Recursive route sending traffic to wrong interfaceNeale1-0/+7
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-06-26Misc. janitorial work:Dave Barach1-0/+4
Remove private / name-colliding "give me the first ip address on an interface" routine from proxy_node.c Return a proper error from ip4_lookup_init / ip6_lookup_init. Change-Id: Idd3c574424ba2ea77c263af16b02cd4ad0cb4605 Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-23Show command support for ip feature pathsDave Barach1-0/+3
"show ip features" displays all available features, in execution order. "show ip interface features <intfc>" displays all features currently configures on an interface, in execution order. Change-Id: I489bbdb85799a01721ba60b12ffaffcab1e0d1df Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-22ARP/NDP does not send solicitation when no source address is availablePierre Pfister1-1/+4
Currently, when the interface has no address assigned to it, VPP crashes as ip_interface_address_for_packet assumes there always is at least one address. This patch checks if an address is available at all. The only part of VPP using it is ARP or NDP. When a neighbor discovery message has to be sent while there is no address assigned on the interace, no solicitation is sent and an error counter is incremented. Change-Id: Ia9fdaf8e84050a1ceeb47f5370819d3df95714f0 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-06-17Dynamically compute ip feature subgraph orderDave Barach1-24/+42
This change-set enables plugins to add themselves to the ip4/ip6 feature subgraphs without having to modify core vpp engine code at all. Add VNET_IP4/IP6_UNICAST/MULTICAST_FEATURE_INIT macros which express the required ordering constraints, and off you go. Along the way, added an implementation of Warshall's algorithm to vppinfra; to compute the positive transitive closure of a relation. In this case, the relation is "feature A runs before feature B." With that in hand, ip_feature_init_cast(...) computes a partial order across the set of configured feature subgraph nodes. In unit-testing, we discovered VPP-145 - ip4/6 inacl wiped out vnet_buffer(b)->ip>current_config_index, which exists in main. So, we fixed that by moving b->trace_index, adding b->current_config_index, and removing the ip opaque union current_config_index. Change-Id: Iff132116f66413dc6b31ac3377198c7a32d51f48 Signed-off-by: Dave Barach <dave@barachs.net>
2016-06-09VPP-117: Add trace to ip4 and ip6 lookup nodesPierre Pfister1-0/+1
The absence of trace in ip lookup nodes is misleading to many people. This patch adds ip lookup tracing and therefore contribute to worldwide happiness. In addition, this patch makes sure sw_if_index[VLIB_TX] is considered when tracing the fib_index value. In ip4/6-rewrite, the value corresponds to the tx interface index. The formatting function is therefore modified to take that case into account. Change-Id: I5915f0446a15c45e391eedfdfcedd9057aa6a237 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-05-16VPP-69: Create fib or bridge domain with arbitrary IDPierre Pfister1-0/+22
It appeared to me that it might be usefull to allow users to create fibs or bridge domains without a complete knowledge of the current used IDs. These changes define fib and bridge domain constructors when the provided ID is ~0. In such a case, an unused ID is used to create a new fib or bridge domain. Change-Id: Iaba69a023296e6d17bdde45980f9db84832a3995 Signed-off-by: Pierre Pfister <ppfister@cisco.com>
2016-02-04ip[46].h: Remove tcp referenceKevin Paul Herbert1-4/+0
This is not used. Remove it. Change-Id: I63f705db6bc10137d6e28977aa75e60f4e13cfe8 Signed-off-by: Kevin Paul Herbert <kph@cisco.com>
2015-12-08Initial commit of vpp code.v1.0.0Ed Warnicke1-0/+409
Change-Id: Ib246f1fbfce93274020ee93ce461e3d8bd8b9f17 Signed-off-by: Ed Warnicke <eaw@cisco.com>