- update wordlist and fix typos so that 'make docs-spell' passes
- sort spelling_wordlist.txt
- update docs maintainers list
Type: docs
Signed-off-by: Dave Wallace <dwallacelf@gmail.com>
Change-Id: I38ac7850c604c323427d2bb6877ea98bd10bcc38
Sphinx Documents
I: docs
M: John DeNisco <jdenisco@cisco.com>
Sphinx Documents
I: docs
M: John DeNisco <jdenisco@cisco.com>
+M: Dave Wallace <dwallacelf@gmail.com>
F: docs/
Infrastructure Library
F: docs/
Infrastructure Library
-AArch
-ACK
-ACL
-ACLs
-API
-ASan
-Aarch
-Agg
-Ajourn
-Ananyev
-govpp
-unserialization
-archs
-symlink
-libmemf
-libme
-mif
-pwait
-tunnelling
-ctx
-efd
-optimised
-strerror
-syscall
-ligato
-congruential
-phc
-Anycast
-Arp
-icmpr
-pps
-bc
-midchain
-Midchain
-fmt
-intfcs
-libmemifs
-gethostbyname
-multithreading
-sourceNATing
-Mapp
-Headend
-pgm
-retransmits
-cheng
-iccrg
-filsfils
-Datagram
-syscalls
-Altivec
-memcpy
-mmap
-Warshall
-XXhash
-headend
-Fortville
-openbsd
-zx
-openbsd
-Diffie
-github
-criterias
-daddr
-gettingstarted
-Arping
-Arping
-Autogenerated
-BGP
-adaptively
-Defensic
-aa
-BIHASH
-BV
-Backtrace
-allocatable
-consumability
-Usermode
-isn
-shouldn
-combinatorial
-ufwd
-Barach
-Bfd
-receival
-ap
-Bihash
-emphasise
-Bihashes
-neighbouring
-Brockners
-LimitCORE
-eXtensible
-aabb
-aftr
-Recircs
-Bufmon
-iPv
-Builtinurl
-deallocation
-nonaddress
-CMakeLists
-CNat
-CPPFLAGS
-Castelino
-Centos
-efp
-preallocation
-Cisco
-Clib
-Cmake
-Cnat
-ufwd
-runit
-rulebase
-seatbelt
-iWARP
-strongswan
-unapplies
-subgraphs
-Codenomicon
-eeff
-unapply
-analyse
-Colour
-subdirectories
-Comms
-srcIP
-Config
-unreachables
-ager
-ConnectX
-str
-undirected
-Contiv
-reselects
-Coras
-unmanaged
-Coredumps
-Coverity
-Crypto
-Cryptodev
-DS
-DSR
-Dataplane
-Dataplanes
-Debuginfo
-Decapsulating
-Dest
-Diffs
-Distro
-Donley
-Doxygen
-Eifel
-Encaps
-Enqueueing
-Enums
-Erns
-Extranets
-FiB
-Flowprobe
-GByte
-GTP
-GbE
-Gbe
-Gbits
-Gbps
-Gbytes
-Geneve
-Gerrit
-GigE
-Gigabit
-Github
-Goncalves
-Gzip
-HQoS
-Heapsize
-Hotkeys
-Huawei
-Hypervisors
-IBverbs
-IKEv2
-IP
-IPsec
-IPv
-IPv4
-Ikev
-Init
-Instantiation
-Integrations
-Interoperation
-Iperf
-Jira
-KMG
-KOC
-KVP
-programmability
-decapsulate
-pseudocode
-libsrtp
-upf
-Konstantynowicz
-Kube
-Kubeadm
-Kubelet
-Kubernetes
-L3XC
-LB
-LDFLAGS
-LLDP
-Linuxcon
-Lldp
-balancer
-balancers
-Lockless
-Loopback
-Lua
-encap
-Luajit
-MPLS
-MPLS
-Maciek
-Makefile
-Makefiles
-Manohar
-Maryam
-Mbytes
-Mdata
-Mellanox
-Memif
-Metadata
-Mfib
-Monroy
-Mpps
-Mss
-Multicast
-Multicore
-Multihoming
-Multiqueue
-Multistream
-Multitenancy
-Mutlithreading
-NIC
-llist
-NSH
-NUMA
-Namespace
-mrvl
-mempool
-localsids
-msgbuf
-logrotate
-auditd
-ndp
-neighbour
-modularity
-masse
-snapcraft
-tgz
-lcov
-cd
-gcovr
-ggcov
-Bn
-Cn
-unmounting
-sealert
-ausearch
-semodule
-Snapcraft
-multipass
-awk
-ldpreload
-iPerf
-xterms
-ps
-centos
-statfs
-proc
-unmounts
-unmount
-fs
-mountpoint
-statSocket
-Unmounting
-fusermount
-Golang
-setUp
-tearDown
-Stdout
-stdout
-testcase
-unittest
-TestVxlan
-UNUP
-pton
-infos
-papi
-setUpClass
-nelts
-portranges
-wasn
-wi
-xcrw
-xcrw
-xtr
-includedir
-iface
-realised
-interoperation
-Infiniband
-Inband
-woohoo
-inex
-inet
-instantiation
-libibverb
-lc
-jitter
-incrementing
-libvppapiclient
-linearization
-recurse
-recirc
-teib
-th
-srcPortDefinition
-srcUP
-ssm
-spinlock
-te
-recode
-srh
-stderr
-sha
-sys
-conn
-sv
-iWARP
-et
-handoffdemo
-syscfg
-hbh
-timebase
-gtp
-fbfc
-tmpl
-preprocessor
-fixup
-psp
-fmask
-extranet
-spd
-DT
-DX
-undefine
-aren
-subgraph
-expander
-encaps
-backwalk
-ccdd
-cdbdec
-centric
-cdba
-cfd
-cksum
-reallocations
-preload
-reachability
-rdtsc
-putatively
-ppc
-pitr
-pmtu
-rekeying
-requeueing
-requeued
-recusive
-requeue
-resolvers
-recurse
-recurses
-ress
-rloc
-rr
-rxandtx
-runnable
-scrollbars
-scrollbar
-tw
-typedef
-wouldn
-zeroize
-untagged
-upstreamed
-vectorized
-vfr
-vtf
-pbb
-petr
-peerings
-pathname
-pipelined
-parsable
-parallelize
-parallelizes
-pipelining
-netdev
-noevaluate
-onlink
-outacl
-preallocated
-nexthop
-nosyslog
-nthrottle
-nsess
-Neighbour
-nbr
-nd
-musdk
-muppet
-makefile
-mult
-Netmap
-Netplan
-mdata
-mroute
-Nsh
-Nstrings
-NxN
-loopId
-macos
-O'Driscoll
-OAM
-Oddbuf
-Openssl
-subnets
-Optimisations
-PCI
-PSP
-Pcap
-Perfmon
-Performan
-Pfister
-Plugin
-Plugins
-Pnat
-PoC
-Policers
-Pollable
-Preallocate
-Prebuilt
-Promisc
-Pseudocode
-Qemu
-QoS
-rss
-strongSwan
-Quic
-verifier
-Quickstart
-Load
-RLOC
-Reass
-uri
-alg
-resync
-pnat
-membulk
-uRPF
-vr
-proto
-pmc
-macip
-unthrottle
-liveness
-sa
-snat
-vss
-uncomment
-Rebase
-tmpfile
-url
-lt
-eid
-itr
-rlocs
-vip
-vips
-flowtable
-lcp
-rawhtml
-myhugosite
-www
-Redhat
-javascript
-Refactor
-Refactored
-subdirectory
-Responder
-shortcodes
-shortcode
-Roadmap
-Roto
-SCHED_RR
-hugo
-SRTP
-SRv
-SRv6
-Scapy
-Shamir
-Shrikant
-Slideshow
-Specialisations
-Srmpls
-Srv
-Stateful
-Strongswan
-Subnet
-Subnets
-Sw
-Syslog
-Systemd
-TLS
-TPv
-TRex
-Tahhan
-Tahr
-Templated
-Tenant
-Terabit
-Terraform
-Timebase
-Tollet
-Tracedump
-Tsou
-Tunnelling
-UDP
-Unformat
-Uninstall
-Uninstalling
-Unittest
-Urpf
-Usergroup
-Userspace
-VM
-VMs
-VMware
-VPP
-VPP
-VRF
-VRF
-Vagrantfile
-Vagrantfiles
-Valgrind
-Vbox
-Vhost
-Virtio
-Virtualization
-Vlib
-Vmxnet
-Vnet
-Vpp
-Vppinfra
-Vrrp
-Vswitch
-Vxlan
-Warnicke
-Webinar
-Wiki
-Wikipedia
-Wireguard
-Wireshark
-Wl
-Workstream
-XXX
-Xenial
-Xeon
-Xerus
-Xtensa
-Yaml
-Zhao
auth
autoconf
autoconfig
autoconfiguration
autodetect
auth
autoconf
autoconfig
autoconfiguration
autodetect
automake
autoreconf
autotools
avf
avl
avx
automake
autoreconf
autotools
avf
avl
avx
+backwalk
+balancer
+balancers
+Barach
+Bihash
+BIHASH
+Bihashes
binutils
bitmask
bitzero
blackholing
blake
bms
binutils
bitmask
bitzero
blackholing
blake
bms
bsid
bss
bufferindex
bufmon
bsid
bss
bufferindex
bufmon
bugfixing
buildingrst
builtin
builtinurl
bugfixing
buildingrst
builtin
builtinurl
+centos
+Centos
+centric
+cfd
+Cn
+cnat
+Cnat
+CNat
+Codenomicon
+Colour
+combinatorial
+Comms
+Config
+configs
+congruential
+conn
copwhitelist
copwhtlistbase
copwhitelist
copwhtlistbase
-macswap
-datagrams
-plen
-fff
-middlebox
-backpressure
-ruleset
-lookups
-callees
-dstIP
-dstPortDefinition
-promisc
-netfilter
-multiprotocol
-pluggable
-eBPF
-libbpf
-hostname
-xffb
-lpc
-ec
-adjacencies
-neighbours
-pluggable
-lagrange
-reass
-lw
-desc
-dscp
-apis
-verboseness
-controlplane
-utilisation
-dsr
-decaps
-datapath
-daemontools
-daemonizing
-decapsulating
-decapsulated
+Cryptodev
+cryptographic
+ctx
+daddr
+daemonizing
+daemontools
+Datagram
+datagrams
+datapath
+decaps
+decapsulate
+decapsulated
+decapsulating
+Decapsulating
+decrementing
+decrypt
+decrypted
+Defensic
del
demux
demuxes
dep
depN
del
demux
demuxes
dep
depN
+deps
+dequeue
+deregister
+desc
distros
dlsym
dns
dnsmasq
distros
dlsym
dns
dnsmasq
+Dockerfile
+dockerignore
dpdk
dpkg
dpo
dport
dryrun
dpdk
dpkg
dpo
dport
dryrun
+dstIP
+dstPortDefinition
+DT
+eb
+eBGP
+eBPF
+ec
+ee
+eeff
+efd
+efp
+ei
+eid
+Eifel
elog
elogs
elts
emacs
emerg
elog
elogs
elts
emacs
emerg
endian
enic
enp
enqueue
enqueued
enqueueing
endian
enic
enp
enqueue
enqueued
enqueueing
ethernet
ethertype
ethip
eventfd
evt
executables
ethernet
ethertype
ethip
eventfd
evt
executables
+eXtensible
+extranet
+Extranets
failover
fallback
favour
favoured
favours
failover
fallback
favour
favoured
favours
flavours
flowendns
flowprobe
flavours
flowendns
flowprobe
fn
foo
fooA
fooB
fooC
foreach
fn
foo
fooA
fooB
fooC
foreach
+Fortville
+fs
+fusermount
+Gbe
+GbE
-responder
-cryptographic
-tabula
-srv
-nsh
-xc
-lxd
-testbed
-https
-configs
-zfs
-workspaces
-mss
-oddbuf
-srtp
-svs
-tlspicotls
-picotls
-respondhost
-initiatehost
-eth
-pem
-dhcpv
-subnet
-debootstrap
-sharepoint
-deps
-marvell
-lldp
-geneve
-openssl
-ipsecmb
-cnat
-xdp
-runtime
-ikev
-ioam
-http
-hs
-runtime
-DoS
-chachapoly
+Gigabit
+GigE
+github
+Github
-libc
-tracedump
-urpf
-wireguard
+Golang
+Goncalves
+govpp
gpe
gre
grep
grepping
growable
gso
gpe
gre
grep
grepping
growable
gso
hugepage
hugepages
hugetlb
hugepage
hugepages
hugetlb
+Inband
+includedir
+incrementing
+inet
+inex
+Infiniband
+infos
+instantiation
+Instantiation
+Integrations
+interoperation
+Interoperation
+javascript
+Jira
+jitter
keepalives
keychain
kflows
keepalives
keychain
kflows
+lagrange
+LB
+lc
+lcov
+lcp
+libibverb
+libme
+libmemf
+libvppapiclient
+ligato
+LimitCORE
+linearization
+linearize
+Linuxcon
+liveness
+lldp
+Lldp
+LLDP
+llist
+Load
+localsids
+Lockless
+logrotate
+lxd
+Maciek
+macip
+macos
+macswap
+makefile
+Makefile
+Makefiles
+Manohar
+Mapp
+marvell
+Maryam
+masse
maximise
mb
mbedtls
mbit
mbufs
maximise
mb
mbedtls
mbit
mbufs
+midchain
+Midchain
+middlebox
+mif
+mIn
mispositions
misprograms
mk
mldv
mispositions
misprograms
mk
mldv
+Multicast
+Multicore
+Multihoming
+multipass
+Multiqueue
+Multistream
+Multitenancy
+multithreading
+muppet
+musdk
+neighbour
+Neighbour
+neighbouring
+neighbours
+nelts
+noevaluate
+nonaddress
+nosyslog
+openbsd
+openbsd
+openssl
+Openssl
+operationalize
+Optimisations
+optimised
+papi
+parallelize
+parallelizes
+param
+params
+parsable
+pipelined
+pipelining
+pitr
+plen
+pluggable
+pluggable
+pmc
+pmtu
+pnat
+Pnat
+PoC
+Policers
+Pollable
+portranges
+Preallocate
+preallocated
+preallocation
+Prebuilt
preceed
preconfigured
prefetch
prefetching
preceed
preconfigured
prefetch
prefetching
+ps
+pseudocode
+Pseudocode
+psp
+PSP
-reStructured
-reStructuredText
realcomponent
realisation
realise
realcomponent
realisation
realise
+reass
+Reass
+reassemblies
+Rebase
+receival
+recirc
+Recircs
+recode
+recurse
+recurse
+recurses
+recusive
+Redhat
+requeue
+requeued
+requeueing
+reselects
+resolvers
+responder
+Responder
+respondhost
+ress
+reStructured
+reStructuredText
+resync
+retransmits
+rloc
+RLOC
+rlocs
+Roadmap
+Roto
+rulebase
+ruleset
+runit
+runnable
+runtime
+runtime
sbin
scalable
scanf
scapy
sbin
scalable
scanf
scapy
setjmp
settingupenvironment
setjmp
settingupenvironment
+shortcode
+shortcodes
+shouldn
+Shrikant
signalling
sixrd
sizeable
sl
signalling
sixrd
sizeable
sl
+Slideshow
+sN
+snapcraft
+Snapcraft
+sourceNATing
+spd
+Specialisations
+spinlock
+srcIP
+srcPortDefinition
+srcUP
+srh
+Srmpls
+srtp
+SRTP
+srv
+Srv
+SRv
+SRv6
+str
+strerror
+strongswan
+strongSwan
+Strongswan
+subdirectories
+subdirectory
+subgraph
+subgraphs
+subint
subinterface
subinterfaces
subinterface
subinterfaces
+subnet
+Subnet
+subnets
+Subnets
+substring
+Sw
+symlink
+syntaxes
+sys
+syscall
+syscalls
+syscfg
tapcli
tcp
tcpcontrolbits
tapcli
tcp
tcpcontrolbits
+Terabit
+Terraform
+testbed
+testbench
+testcase
+TestVxlan
+tgz
+th
threadLeave
threadplacement
tid
threadLeave
threadplacement
tid
toolchain
toolchains
tos
tp
toolchain
toolchains
tos
tp
+TPv
+tracedump
+Tracedump
+TRex
+Tsou
+unapplies
+unapply
+uncomment
+undefine
+undirected
+Uninstalling
+unittest
+Unittest
+unmanaged
+unmount
+unmounting
+Unmounting
+unmounts
+unreachables
unserialize
unserializing
unserialize
unserializing
+upstreamed
+uri
+url
+urpf
+urpf
+uRPF
+Urpf
-vHost
-vRouter
-vRouters
-vSwitch
-vSwitches
-vTEP
+Vagrantfile
+Vagrantfiles
+Valgrind
+vectorized
+verboseness
+verifier
versioning
veth
vethQL
vfctl
vfio
versioning
veth
vethQL
vfctl
vfio
virtualchnl
virtualenv
virtualization
virtualchnl
virtualenv
virtualization
vlibapi
vlibmemory
vls
vm
vlibapi
vlibmemory
vls
vm
vppapigen
vppapitrace
vppcapture
vppapigen
vppapitrace
vppcapture
+Warnicke
+Warshall
+wasn
+Webinar
-substring
-decrypted
-decrypt
-deregister
-superset
whitelist
whitelisting
whitelists
whitelist
whitelisting
whitelists
+Wiki
+Wikipedia
+wireguard
+Wireguard
+Wireshark
+Wl
+woohoo
+workspaces
+Workstream
+wouldn
+www
+xc
+xcrw
+xcrw
+xdp
+Xenial
+Xeon
+Xerus
+xffb
+xFFFFFFFF
+Xtensa
+xterms
+xtr
+xTR
+XXhash
-e.g.
-i.e.
-operationalize
\ No newline at end of file
The intent of this example is to provide a relatively simple example of
connecting containers via VPP and allowing others to use it as a springboard of
sorts for their own projects and examples. Besides Docker and a handful of
The intent of this example is to provide a relatively simple example of
connecting containers via VPP and allowing others to use it as a springboard of
sorts for their own projects and examples. Besides Docker and a handful of
-common Linux command-line utlities, not much else is required to build this
+common Linux command-line utilities, not much else is required to build this
example (due to most of the dependencies being lumped inside the containers
themselves).
example (due to most of the dependencies being lumped inside the containers
themselves).
other scripts in this project. Intended to be sourced (i.e. not intended to
be run directly). Some of the helper functions are used at run-time within
the containers, while others are intended to be run in the default namespace
other scripts in this project. Intended to be sourced (i.e. not intended to
be run directly). Some of the helper functions are used at run-time within
the containers, while others are intended to be run in the default namespace
- on the host operating system to help with run-time configuration/bringup of
+ on the host operating system to help with run-time configuration/bring up of
the testbench.
* ``Dockerfile.vpp_testbench``: used to build the various Docker images used in
this project (i.e. so VPP, our test tools, etc.; are all encapsulated within
the testbench.
* ``Dockerfile.vpp_testbench``: used to build the various Docker images used in
this project (i.e. so VPP, our test tools, etc.; are all encapsulated within
^^^^^^^^^^^^^^^
First, we'll assume you are running on a Ubuntu 20.04 x86_64 setup (either on a
^^^^^^^^^^^^^^^
First, we'll assume you are running on a Ubuntu 20.04 x86_64 setup (either on a
-bare metal host or in a virtual machine), and have acquirec a copy of the
+bare metal host or in a virtual machine), and have acquired a copy of the
project files (either by cloning the VPP git repository, or duplicating them
from :ref:`sec_file_listings_vpp_testbench`). Now, just run ``make``. The
process should take a few minutes as it pulls the baseline Ubuntu Docker image,
project files (either by cloning the VPP git repository, or duplicating them
from :ref:`sec_file_listings_vpp_testbench`). Now, just run ``make``. The
process should take a few minutes as it pulls the baseline Ubuntu Docker image,
testing, stopping, etc.; can be repeated as needed.
In addition to starting up the containers, ``make start`` will establish
testing, stopping, etc.; can be repeated as needed.
In addition to starting up the containers, ``make start`` will establish
-variaous types of links/connections between the two containers, making use of
+various types of links/connections between the two containers, making use of
both the Linux network stack, as well as VPP, to handle the "plumbing"
involved. This is to allow various types of connections between the two
containers, and to allow the reader to experiment with them (i.e. using
both the Linux network stack, as well as VPP, to handle the "plumbing"
involved. This is to allow various types of connections between the two
containers, and to allow the reader to experiment with them (i.e. using
-``vppctl`` to congfigure or trace packets going over VPP-managed links, use
+``vppctl`` to configure or trace packets going over VPP-managed links, use
traditional Linux command line utilities like ``tcpdump``, ``iproute2``,
``ping``, etc.; to accomplish similar tasks over links managed purely by the
Linux network stack, etc.). Later labs will also encourage readers to compare
traditional Linux command line utilities like ``tcpdump``, ``iproute2``,
``ping``, etc.; to accomplish similar tasks over links managed purely by the
Linux network stack, etc.). Later labs will also encourage readers to compare
:caption: entrypoint_server.sh
:language: shell
:linenos:
:caption: entrypoint_server.sh
:language: shell
:linenos:
buffers, vnet_buffer_chain_linearize() is called after reassembly so
that L2/L3/L4 headers can be found in first buffer. Full reassembly
is costly and shouldn't be used unless necessary. Full reassembly is by
buffers, vnet_buffer_chain_linearize() is called after reassembly so
that L2/L3/L4 headers can be found in first buffer. Full reassembly
is costly and shouldn't be used unless necessary. Full reassembly is by
-default enabled for both ipv4 and ipv6 traffic for "forus" traffic
+default enabled for both ipv4 and ipv6 "for us" traffic
- that is packets aimed at VPP addresses. This can be disabled via API
- that is packets aimed at VPP addresses. This can be disabled via API
-if desired, in which case "forus" fragments are dropped.
+if desired, in which case "for us" fragments are dropped.
2. Shallow (virtual) reassembly allows various classifying and/or
translating features to work with fragments without having to
understand fragmentation. It works by extracting L4 data and adding
2. Shallow (virtual) reassembly allows various classifying and/or
translating features to work with fragments without having to
understand fragmentation. It works by extracting L4 data and adding
-them to vnet_buffer for each packet/fragment passing throught SVR
+them to vnet_buffer for each packet/fragment passing through SVR
nodes. This operation is performed for both fragments and regular
packets, allowing consuming code to treat all packets in same way. SVR
caches incoming packet fragments (buffers) until first fragment is
nodes. This operation is performed for both fragments and regular
packets, allowing consuming code to treat all packets in same way. SVR
caches incoming packet fragments (buffers) until first fragment is
Both reassembly types deal with fragments arriving on different workers
via handoff mechanism. All reassembly contexts are stored in pools.
Bihash mapping 5-tuple key to a value containing pool index and thread
Both reassembly types deal with fragments arriving on different workers
via handoff mechanism. All reassembly contexts are stored in pools.
Bihash mapping 5-tuple key to a value containing pool index and thread
-index is used for lookups. When a lookup finds an existing reasembly on
+index is used for lookups. When a lookup finds an existing reassembly on
a different thread, it hands off the fragment to that thread. If lookup
fails, a new reassembly context is created and current worker becomes
owner of that context. Further fragments received on other worker
a different thread, it hands off the fragment to that thread. If lookup
fails, a new reassembly context is created and current worker becomes
owner of that context. Further fragments received on other worker
Custom applications
^^^^^^^^^^^^^^^^^^^
Custom applications
^^^^^^^^^^^^^^^^^^^
-Both reassembly features allow to be used by custom applicatind which
+Both reassembly features allow to be used by custom application which
are not part of VPP source tree. Be it patches or 3rd party plugins,
they can build their own graph paths by using "-custom*" versions of
nodes. Reassembly then reads next_index and error_next_index for each
are not part of VPP source tree. Be it patches or 3rd party plugins,
they can build their own graph paths by using "-custom*" versions of
nodes. Reassembly then reads next_index and error_next_index for each