Age | Commit message (Collapse) | Author | Files | Lines |
|
This commit extends the vpp framework with new thread type "hqos-threads" that
runs the Hierarchical Quality of Service (HQoS) scheduler associted with output
interface. HQoS Scheduler prioritize the packets from different users and
ensures sufficient bandwidth to pass the more important traffic.
At high level, HQoS scheduler is a buffer that can temporarily store a
large number of packets. In otherwords, it is a collection of large number
of queues organized into hierarchy of 5 levels; the port (i.e. the physical
interface) is at the root of the hierarchy followed by the subport (a set
of users), the pipes (individual users), the traffic classes (each with a
strict priority) and at the leaves, the queues.
In each HQoS scheduler, three operations are performed; classification
(setting HQoS port, subport, pipe, traffic class and queue within traffic
class from packet fields), enqueue (selecting HQoS queue for the packet,
and to drop the packet if the queue is full) and dequeue (schedule the
packet based on its length and available credits, and handover the scheduled
packet to the output interface).
In vpp, the number of hqos threads will be equal to cpu cores specified in
corelist-hqos-threads parameter cpu section of the vpp configuration file.
One hqos thread can run HQoS for multiple output interfaces. A particular HQoS
instance is initialised with default parameters required to configure hqos port,
subport, pipe and queues. Some of them can be re-configured in run-time
through CLI commands as well binary APIs.
Following illustrates the sample startup configuration file with 4x worker
threads feeding 2x hqos threads that handle each HQoS for 1x output interface.
For more details on HQoS configuration please refer to DPDK Programmer's Guide.
dpdk {
socket-mem 16384,16384
dev 0000:02:00.0 {
num-rx-queues 2
hqos
}
dev 0000:06:00.0 {
num-rx-queues 2
hqos
}
num-mbufs 1000000
}
cpu {
main-core 0
corelist-workers 1, 2, 3, 4
corelist-hqos-threads 5, 6
}
Change-Id: I635c3395a7c4ddf0a239ef77b0b0a31a6dfc4767
Signed-off-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
Signed-off-by: Jasvinder Singh <jasvinder.singh@intel.com>
|
|
Change-Id: Ibf3d2e69dbac28fbef77d8ba20d7f5a60eea0198
Signed-off-by: John Lo <loj@cisco.com>
|
|
Output classify node should use sw_if_index[VLIB_TX]
Like in l2_output.c, we have to use sw_if_index[VLIB_TX]
to get the appropriate configuration.
Change-Id: I96b1a03ddf5c9e9c45fa3f5df3ea88895ed4345e
Signed-off-by: Christophe Fontaine <christophe.fontaine@qosmos.com>
|
|
Only rewind the buffer back to the start of the ethernet header,
rather than all the way. We don't want to undo earlier
decapsulation.
Change-Id: I5f4b183eb3e8df690695ce3a97e55f3b0579a266
Signed-off-by: David Hotham <david.hotham@metaswitch.com>
|
|
Change-Id: Ife1523e11b7225ea0fd41c06c3b802bb171e91f4
Signed-off-by: John DeNisco <jdenisco@cisco.com>
|
|
the clock slew is greater with Vagrant 1.8.5 which causes Makefile.am to be
timestamped as newer which causes builds to fail.
Change-Id: Id0d35c41ac66a2841c5aae20dd678f4bc125e41b
Signed-off-by: Thomas F Herbert <therbert@redhat.com>
|
|
Per-numa free hugepages number was not read correctly due
to wrong sysfs path.
Change-Id: I889111027d7f93c42e2e4673d8d4e8f75ae065b6
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
- scheduler-prio -> scheduler-priority
- improve formatting of "show threads" output
- add description to "startup.conf"
- bail out of priority is set without rr or fifo policy
Change-Id: Idf897f7603d989d6c2d0093eea89c5d1653eaa8c
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
|
|
The templates were looking for the name of the CLI_COMMAND
and CONFIG_FUNCTION structures in the srong place.
Change-Id: I709d6716216173ba6a7ed41a260728238f96d2db
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
man sysctl.d:
...
Packages should install their configuration files in /usr/lib/. Files in
/etc/ are reserved for the local administrator, who may use this logic to
override the configuration files installed by vendor packages. All configuration
files are sorted by their filename in lexicographic order, regardless of which
of the directories they reside in. If multiple files specify the same option,
the entry in the file with the lexicographically latest name will take
precedence. It is recommended to prefix all filenames with a two-digit number
and a dash, to simplify the ordering of the files.
If the administrator wants to disable a configuration file supplied by
the vendor, the recommended way is to place a symlink to /dev/null in the
configuration directory in /etc/, with the same filename as the vendor
configuration file.
...
Change-Id: I24b8b7fddf64ec287282ae195e07c9592c494ebe
Signed-off-by: Miroslav Miklus <mmiklus@cisco.com>
|
|
* use zero length array in LISP API to avoid confusion
* add missing LISP data structure definitions in API documentation
* fix wrong memory allocation in VAT
Change-Id: I9b5e656a071fc24cb698c164db953c09b66deeeb
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: Ic453e68bbd3d5ae8d57b513da6781bb957fc84a4
Signed-off-by: John Lo <loj@cisco.com>
|
|
the create sub interface command was creating the interfaces with
the same outer_vlan value - causing an error
changed to use the interface id as outer_vlan in case of a range
Change-Id: I3808094d1c99a37adac61e3ece573a6687306461
Signed-off-by: Eyal Bari <ebari@cisco.com>
|
|
Add ability to hadle scheduling policy and priority via config file.
CPU section contains new items to specify scheduling policy and
priority:
cpu {
scheduler-priority <num>
scheduler-policy [other | batch | idle | fifo | rr ]
}
Change-Id: Ie20765280e458e1d7deb4a8c66daaa69793f795e
Signed-off-by: Pavel Kotucek <pkotucek@cisco.com>
|
|
Change-Id: I9ee7b6ea2def16715f717f8483c86e0157628946
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: If88e4161e0944b657e6183b7b44348f7f46ba0a8
Signed-off-by: Florin Coras <fcoras@cisco.com>
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Build fails in case python-setuptools is not installed.
Change-Id: I1611f3560db82a4a48c51a9f614a813a9a540698
Signed-off-by: Peter Ginchev <pginchev@cisco.com>
|
|
The code allowed for the command 'set interface unnumbered'
to be processed without specifying any parameters,
thus the set logic of the command would have been using uninitialized
variables 'unnumbered_sw_if_index' and 'inherit_from_sw_if_index'.
Change-Id: I4de14fa1096527c5c48f74304db379f9953760a8
Signed-off-by: Igor Mikhailov (imichail) <imichail@cisco.com>
|
|
- update of CSIT operational branch to be used for VPP-patch test
Change-Id: I5daf02786185159cd2a156144f247d3b45369c33
Signed-off-by: Jan Gelety <jgelety@cisco.com>
|
|
Change-Id: I242d590c9d2fa733cc1411fa5d96bb3944d5b5fe
Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
|
|
Fix dpo0->dpo1 typo in ip4_local source RPF check.
Pass source RPF check on drop adjacencies. Add a bit of defensive driving
in ip4_icmp_error(...).
Change-Id: I0e444886953f5500766f9b9662fad79fef44a260
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
Change-Id: I38dc7c37b0debcea9aa1a366b516e86505dd096e
Signed-off-by: Hongjun Ni <hongjun.ni@intel.com>
|
|
We need to accept src ip addresses which hit receive and clean
adjacencies.
Change-Id: I8cf07f622058203665ed09280452ed8412984bd5
Signed-off-by: Dave Barach <dave@barachs.net>
|
|
The leakage happens on the file descriptors for kickfd and vring's callfd.
Those file descriptors should be closed when vhost-interface is disconnected.
Change-Id: I12453b0c3eac037a1dc040a001465059b8f672c2
Signed-off-by: Steve Shin <jonshin@cisco.com>
|
|
Recheck.
Repackage the Python API binding to include all
necessary modules in a single Python package.
Change-Id: I5e35141d413bfb1aad650217e1ca07d85646c349
Signed-off-by: Ole Troan <ot@cisco.com>
|
|
Change-Id: I1f30977f0b315fa72d73a29a8585b1711d5044d8
Signed-off-by: Klement Sekera <ksekera@cisco.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>
|
|
Simple tweak to the Makefiles to allow "make doxygen" to work
natively on Macs - assuming the appropriate things have been
installed first, which it tests for.
Change-Id: I1a3e72759d533270a0512de38595c3bc3f71dee0
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
Change-Id: I64aa4c28e87e82a742313e9b89409c957fa62101
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: Ibe6f8c6fadb2e467353bafebffde04bc6eb72af3
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I8cf3bb27bc699be3b8de781ea84db4c7fb3c7553
Signed-off-by: Florin Coras <fcoras@cisco.com>
|
|
Change-Id: I64349830c1f7534a8d090572e9473c51c0818e51
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: Ie52243bd1654e3d0663b09bd1f21e8c15e93f07d
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: I48908e0fa010570aefc43dd552ee81ee69fc2796
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
- Modularize the code to make the Siphon process easier to
maintain.
- Move much of the output rendering into Jinja2 templates.
- Add syscfg siphon type for startup config documentation.
- Add sample syscfg documentation.
- Add clicfg and syscfg preamble docs, adapted from their wiki pages.
- Fix sorting of CLI items across multiple directories.
Change-Id: Ib8288fe005adfea68ceed75a38ff8eba25d3cc79
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
This fixes commit 1732fc1ab851c454a74efda47a383f48691d545a.
Change-Id: I3d9f1384c20d2ca22eaf2aae553455789b934b6e
Signed-off-by: Gabriel Ganne <gabriel.ganne@qosmos.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>
|
|
So that downstream projects can make use of the generated
Doxygen tags file, move it into the html directory that is
transferred to Nexus.
Change-Id: I04dc4777c9ea62f429f783f66ef4e2ecb2923131
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
Change-Id: I27accb0c87d6bf2fbbe90d8d1bc074697299e639
Signed-off-by: Matus Fabian <matfabia@cisco.com>
|
|
- Copy the 16.09 release notes to master
- Add some notes for 16.06 (from the press release)
- Add some structure around notes for each release
- Add skeleton for next release
Change-Id: Id5a5d8bf02fce1bbaed303e6c6e4f8908c7e7d75
Signed-off-by: Chris Luke <chrisy@flirble.org>
|
|
At many places code was using constant ring size od 4096
which was defined in macro DPDK_TX_RING_SIZE.
As we support differnet ring size and default value s now
1024, we need to remove DPDK_TX_RING_SIZE and use
value stored in device structure.
For that reason dpdk_device_t.nb_tx_desc is moved to
first cacheline.
Change-Id: I2c2ac11f0f5e8ae779d34f9a9104eaf2921ec34c
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
This saves 2 bytes from the 1st cacheline.
Change-Id: I691a3a0ee07ec2db4ae85b96b451ef53ad8c9458
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
This will allow us to handle some more complex situations
like in case when hqos needs to be enabled only for some PMDs.
Change-Id: I5421a8d4cf29b8394b9e956cc4e39737dd07dbbb
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
This change improves performance in l2 scenarios for about 1-2%.
Change-Id: Ie35ed8ad70a3b95dd78c0d158c485a10dabaf0eb
Signed-off-by: Damjan Marion <damarion@cisco.com>
|
|
Change-Id: I3b1153a64674c2caef71c968739ecca6512e9929
Signed-off-by: Klement Sekera <ksekera@cisco.com>
|
|
fd close()ed after call to unix_file_del of same fd
Change-Id: Ia8bf77b72b6cea7c70e004199ce11a33b6260720
Signed-off-by: Eyal Bari <ebari@cisco.com>
|
|
Function vlib_main uses nonlocal control transfer (setjmp, longjmp),
local variables might be mapped to cpu registers which might be
different when longjmp'ing back to it. Added volatile to keep those
variables on the stack. to fix vpp crash when exiting via SIGTERM.
Change-Id: I03e836966c68a966a84d635bc1f7b3a3c252f3ea
Signed-off-by: Eyal Bari <ebari@cisco.com>
|
|
Change-Id: Ie75f43516fdd76ba3720f65f38d66f14749e3e2d
Signed-off-by: Billy McFall <bmcfall@redhat.com>
|
|
Change-Id: Ib16fd69abe93c1afb2ee1d38144763f57888585c
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
|
|
Change-Id: If44f8d37649e5a9d5033ec2c0ab7452397e22691
Signed-off-by: Maros Marsalek <mmarsale@cisco.com>
|