A SNMPv2 entity is an actual process which performs network management operations by generating and/or responding to SNMPv2 protocol messages in the manner specified in . When a SNMPv2 entity is acting as a particular SNMPv2 party (see Section 2.1), the operation of that entity must be restricted to the subset of all possible operations that is administratively defined for that party.
By definition, the operation of a SNMPv2 entity requires no concurrency between processing of any single protocol message (by a particular SNMPv2 party) and processing of any other protocol message (by a potentially different SNMPv2 party). Accordingly, implementation of a SNMPv2 entity to support more than one party need not be multi-threaded. However, there may be situations where implementors may choose to use multi- threading.
Architecturally, every SNMPv2 entity maintains a local database that represents all SNMPv2 parties known to it - those whose operation is realized locally, those whose operation is realized by proxy interactions with remote parties or devices, and those whose operation is realized by remote entities. In addition, every SNMPv2 entity maintains a local database that represents all managed object resources (see Section 2.8) which are known to the SNMPv2 entity. Finally, every SNMPv2 entity maintains a local database that represents an access control policy (see Section 2.11) that defines the access privileges accorded to known SNMPv2 parties.