Age | Commit message (Collapse) | Author | Files | Lines |
|
Change-Id: I7b51f88292e057c6443b12224486f2d0c9f8ae23
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: Ic38d0e468da1ad5b56eefda471a5961146a1c372
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Flatten variant was used only by old native drivers.
Change-Id: If206c6c8b4f10843d60f908c3acb4e8db83ce03d
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Signed-off-by: Damjan Marion <damarion@cisco.com>
Change-Id: I010ecde93863dbdad84b993cd3680a5446db59b5
|
|
Change the adjacency completion model to pull not push.
A complete adjacency has a rewirte string, an incomplete one does not. the re-write string for a peer comes either from a discovery protocol (i.e. ARP/ND) or can be directly derived from the link type (i.e. GRE tunnels). Which method it is, is interface type specific.
For each packet type sent on a link to a peer there is a corresponding adjacency. For example, if there is a peer 10.0.0.1 on Eth0 and we need to send to it IPv4 and MPLS packets, there will be two adjacencies; one for the IPv4 and one for the MPLS packets. The adjacencies are thus distinguished by the packets the carry, this is known as the adjacency's 'link-type'. It is not an L3 packet type, since the adjacency can have a link type of Ethernet (for L2 over GRE).
The discovery protocols are not aware of all the link types required - only the FIB is. the FIB will create adjacencies as and when they are required, and it is thus then desirable to 'pull' from the discovery protocol the re-write required. The alternative (that we have now) is that the discovery protocol pushes (i.e. creates) adjacencies for each link type - this creates more adjacencies than we need.
To pull, FIB now requests from the interface-type to 'complete' the adjacency. The interface can then delegate to the discovery protocol (on ethernet links) or directly build the re-write (i.e on GRE).
Change-Id: I61451789ae03f26b1012d8d6524007b769b6c6ee
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
Change-Id: I0d7f9c7f41a9f9e0acb0950adedb90d45df08c2a
Signed-off-by: Neale Ranns <nranns@cisco.com>
|
|
loop0 interfaces were transmitting the same packets multiple times,
eventually causing them to be freed multiple times
Change-Id: I32fcf5cfa10e58bb9e9bbbbc1b9312518d00ee9f
Signed-off-by: David Hotham <david.hotham@metaswitch.com>
|
|
In BVI output node, set a signature value in packet buffer field
sw_if_index[VLIB_TX] so l2-input node can reliably check that
packet came into a BD through BVI so it can set the SHG of the
packet to 0 for a unicast packet.
Change-Id: I301aa2896677e11d0c964ca476dddcb5a8804fc2
Signed-off-by: John Lo <loj@cisco.com>
|
|
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>
|
|
Change-Id: Ie75f43516fdd76ba3720f65f38d66f14749e3e2d
Signed-off-by: Billy McFall <bmcfall@redhat.com>
|
|
Added new CLI and API command to delete subinterface.
Change-Id: Ia92a8facc6ad84634bdec430093e6add02ee674e
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
|
|
Change-Id: I649a17f8fa47599faf438b2e596f53761790d10c
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: I3e51ca70a8e1ac7f6584bc5b0271ee4daacc1084
Signed-off-by: Keith Burns (alagalah) <alagalah@gmail.com>
|
|
The loopback interface should use vnet_interface_output_no_flatten so
follow-on buffers of a jumbo packet do not get put on the output frame
and be sent back to ethernet-input or l2-input node.
The replication_recycle_callback() function should not assume follow-on
buffers of a jumbo packet are on the buffer free list.
Change-Id: Ide646a6d9b43e82782c0581ea3022a9e70f82582
Signed-off-by: John Lo <loj@cisco.com>
|
|
When the CLI is used to create an interface, and whend the operation
succeeds, the newly created interface name is printed-out.
The patch includes the following interfaces types:
- AF_PACKET
- Vhost User
- Netmap
- GRE
- L2TP
- MPLS-GRE
- Loopback
Change-Id: Id518c139ec63a261eae81d2ed95c4cd1f10b5157
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
|
|
This patch introduces standard command line 'set interface mtu' for setting the MTU
for tap devices. It allows user to set the mtu in between 68 to 65535 bytes
aligned to what linux kernel supports for tun/tap devices.
Right now tapcli set the same MTU size for each tap interface. But it should be set
and configure to per interface rather than per tap instance.
Change-Id: I81b7f3ad95ca56d585907ff8f51d9935a428e01b
Signed-off-by: Mohsin Kazmi <sykazmi@cisco.com>
|
|
When loopback interface is configured as BVI, instead of changing its
output node from loopN-output to l2-input, the loopN-output node is now
kept while its next tx node is changed from ethernet-input to l2-input.
The packet setup previously done in bvi_to_l2 as part of l2-input is now
performed in the loop output node.
This change adds an extra node in the BVI output path but provides the
following improvements:
1. IP address/route created on loopback prior to it being configured as
BVI will still work properly. The requirement to (re)configure IP/route
on loopback after it is configured as BVI is removed.
2. The output stats for loopback interfaces are always provided irrespective
of their BVI configuration.
3. The loopback-BVI output stats can be batch updated outside the packet
loop in output node, instead of per packet update in l2-input node,
making l2-input node more efficient for BVI packets.
4. Restore original node property as implemented in node.c function
vlib_node_add_next_with_slot() where next node indices stored in next
slots of each node will remain unique.
5. Packet trace for BVI output includes loopN output node which provides
useful packet data.
Change-Id: I7f5bc72ef953a367363a179088210596881f9e73
Signed-off-by: John Lo <loj@cisco.com>
|
|
Change-Id: I22cb443c4bd0bf298abb6f06e8e4ca65a44a2854
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
(to be consistent with other delete interface commands)
Change-Id: I41f63cc5b11d9fa9489edc54b17a4d857b711b66
Signed-off-by: Alpesh S. Patel <apatel9191@hotmail.com>
|
|
creation cli consistent
Change-Id: I72f074bb8c771511cb5203af6905adccefbb4197
Signed-off-by: Alpesh Patel <apatel9191@hotmail.com>
|
|
So unless I have missed something, loopback interfaces
are spawned hardware-down and never set up. This patch
uses the same process as tapcli interfaces by
mirroring sw state to hw state.
Change-Id: I94198c1c880de773daccbb63ca8d32c4c7e26a74
Signed-off-by: Pierre Pfister <ppfister@cisco.com>
|
|
Note that L3 MTU for DPDK interfaces is derived from DPDK port_conf
in vnet/devices/dpdk/init.c.
Change-Id: I9633a1887347a18d05598435baceb6a62cd7b19a
Signed-off-by: John Lo <loj@cisco.com>
|
|
Change-Id: Ib246f1fbfce93274020ee93ce461e3d8bd8b9f17
Signed-off-by: Ed Warnicke <eaw@cisco.com>
|