Correct various grammar and style issues in the membership library
documentation:

- use "that" instead of "who" for applications
- fix subject-verb agreement in multiple places
- use consistent capitalization for Sub-figure references
- add missing articles before nouns
- correct grammar for element insertion description
- add missing relative pronouns for clarity
- fix "two time" to "two times the"
- correct function names to use rte_member_* pattern consistently
  (rte_membership_lookup_multi_bulk -> rte_member_lookup_multi_bulk,
   rte_membership_delete -> rte_member_delete)

Signed-off-by: Stephen Hemminger <[email protected]>
---
 doc/guides/prog_guide/member_lib.rst | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/doc/guides/prog_guide/member_lib.rst 
b/doc/guides/prog_guide/member_lib.rst
index d2f76de35c..fde7204ad4 100644
--- a/doc/guides/prog_guide/member_lib.rst
+++ b/doc/guides/prog_guide/member_lib.rst
@@ -31,7 +31,7 @@ is a fundamental data aggregation component that can be used 
in many network
 (and other) applications. It is a crucial structure to address performance and
 scalability issues of diverse network applications including overlay networks,
 data-centric networks, flow table summaries, network statistics and
-traffic monitoring. A set-summary is useful for applications who need to
+traffic monitoring. A set-summary is useful for applications that need to
 include a list of elements while a complete list requires too much space
 and/or too much processing cost. In these situations, the set-summary works as
 a lossy hash-based representation of a set of members. It can dramatically
@@ -47,7 +47,7 @@ probability.
 There are various usages for a Membership Library in a very
 large set of applications and workloads. Interested readers can refer to
 [Member-survey] for a survey of possible networking usages. The above figure
-provide a small set of examples of using the Membership Library:
+provides a small set of examples of using the Membership Library:
 
 * Sub-figure (a)
   depicts a distributed web cache architecture where a collection of proxies
@@ -66,7 +66,7 @@ provide a small set of examples of using the Membership 
Library:
   whether its id is a member of the set of visited nodes, and if it is, then a
   routing loop is detected.
 
-* Sub-Figure (c) presents another usage of the Membership
+* Sub-figure (c) presents another usage of the Membership
   Library to load-balance flows to worker threads with in-order guarantee 
where a
   set-summary is used to query if a packet belongs to an existing flow or a new
   flow. Packets belonging to a new flow are forwarded to the current least 
loaded
@@ -79,7 +79,7 @@ provide a small set of examples of using the Membership 
Library:
   element of a set against the other elements in a different set, a join is 
done
   on the summaries since they can efficiently encode members of a given set.
 
-Membership Library is a configurable library that is optimized to cover set
+The Membership Library is a configurable library that is optimized to cover set
 membership functionality for both a single set and multi-set scenarios. Two 
set-summary
 schemes are presented including (a) vector of Bloom Filters and (b) Hash-Table 
based
 set-summary schemes with and without false negative probability.
@@ -99,8 +99,8 @@ The BF is a method for representing a set of ``n`` elements 
(for example flow ke
 in network applications domain) to support membership queries. The idea of BF 
is
 to allocate a bit-vector ``v`` with ``m`` bits, which are initially all set to 
0. Then
 it chooses ``k`` independent hash functions ``h1``, ``h2``, ... ``hk`` with 
hash values range from
-``0`` to ``m-1`` to perform hashing calculations on each element to be 
inserted. Every time when an
-element ``X`` being inserted into the set, the bits at positions ``h1(X)``, 
``h2(X)``, ...
+``0`` to ``m-1`` to perform hashing calculations on each element to be 
inserted. Every time an
+element ``X`` is inserted into the set, the bits at positions ``h1(X)``, 
``h2(X)``, ...
 ``hk(X)`` in ``v`` are set to 1 (any particular bit might be set to 1 multiple 
times
 for multiple different inserted elements). Given a query for any element 
``Y``, the
 bits at positions ``h1(Y)``, ``h2(Y)``, ... ``hk(Y)`` are checked. If any of 
them is 0,
@@ -126,9 +126,9 @@ lookup with element comparison.
 
   Detecting Routing Loops Using BF
 
-BF is used for applications that need only one set, and the
+A BF is used for applications that need only one set, and the
 membership of elements is checked against the BF. The example discussed
-in the above figure is one example of potential applications that uses only one
+in the above figure is one example of potential applications that use only one
 set to capture the node IDs that have been visited so far by the packet. Each
 node will then check this embedded BF in the packet header for its own id, and
 if the BF indicates that the current node is definitely not in the set then a
@@ -280,7 +280,7 @@ The general input arguments used when creating the 
set-summary should include ``
 which is the name of the created set-summary, *type* which is one of the types
 supported by the library (e.g. ``RTE_MEMBER_TYPE_HT`` for HTSS or 
``RTE_MEMBER_TYPE_VBF`` for vBF), and ``key_len``
 which is the length of the element/key. There are other parameters
-are only used for certain type of set-summary, or which have a slightly 
different meaning for different types of set-summary.
+that are only used for a certain type of set-summary, or that have a slightly 
different meaning for different types of set-summary.
 For example, ``num_keys`` parameter means the maximum number of entries for 
Hash table based set-summary.
 However, for bloom filter, this value means the expected number of keys that 
could be
 inserted into the bloom filter(s). The value is used to calculate the size of 
each
@@ -293,7 +293,7 @@ set-summary. For HTSS, another parameter ``is_cache`` is 
used to indicate
 if this set-summary is a cache (i.e. with false negative probability) or not.
 For vBF, extra parameters are needed. For example, ``num_set`` is the number of
 sets needed to initialize the vector bloom filters. This number is equal to the
-number of bloom filters will be created.
+number of bloom filters that will be created.
 ``false_pos_rate`` is the false positive rate. num_keys and false_pos_rate 
will be used to determine
 the number of hash functions and the bloom filter size.
 
@@ -346,11 +346,11 @@ element/key that needs to be looked up, 
``max_match_per_key`` which is to indica
 the user expects to find for each key, and ``set_id`` which is used to return 
all
 target set ids where the key has matched, if any. The ``set_id`` array should 
be sized
 according to ``max_match_per_key``. For vBF, the maximum number of matches per 
key is equal
-to the number of sets. For HTSS, the maximum number of matches per key is 
equal to two time
+to the number of sets. For HTSS, the maximum number of matches per key is 
equal to two times the
 entry count per bucket. ``max_match_per_key`` should be equal or smaller than 
the maximum number of
 possible matches.
 
-The ``rte_membership_lookup_multi_bulk()`` function looks up a bulk of 
keys/elements in the
+The ``rte_member_lookup_multi_bulk()`` function looks up a bulk of 
keys/elements in the
 set-summary structure for multiple matches, each key lookup returns ALL the 
matches (possibly more
 than one) found for this key when it is matched against all target sets (cache 
mode HTSS
 matches at most one target set). The
@@ -370,7 +370,7 @@ possible matches, similar to ``rte_member_lookup_multi``.
 Set-summary Element Delete
 ~~~~~~~~~~~~~~~~~~~~~~~~~~
 
-The ``rte_membership_delete()`` function deletes an element/key from a 
set-summary structure, if it fails
+The ``rte_member_delete()`` function deletes an element/key from a set-summary 
structure, if it fails
 an error is returned. The input arguments should include ``key`` which is a 
pointer to the
 element/key that needs to be deleted from the set-summary, and ``set_id``
 which is the set id associated with the key to delete. It is worth noting that 
current
-- 
2.51.0

Reply via email to