Asynchronous: asyncio
*********************

Python 3.4 introduced a new module - asyncio (former Tulip, PEP 3156)
featuring infrastructure for writing single-threaded concurrent code
using coroutines, multiplexing I/O access over sockets and other
resources.

PySNMP library was originally built on top of Python's asynchronous
I/O library called asyncio. The asyncio module offers similar
functionality but uses much more modern and powerful language
facilities. Functionally, asyncio can replace asyncio in PySNMP
however its use requires understanding the concepts such as coroutines
and generators. If your task is to embed SNMP stack into an existing
asyncio-based app, using PySNMP's asyncio interfaces greatly
simplifies the task.

Older applications (Python 2.6+) can alternatively use Trollius
instead of asyncio. Trollius is a backport of asyncio so it supports
nearly the same API as asyncio. Full support of both modules is built
into pysnmp.

All SNMP-related functionality of Native PySNMP API to Standard SNMP
Applications (RFC3413) remains available to asyncio-backed
applications.

We do not provide Command Generator and Notification Originator
examples, as it is much easier to use high-level interfaces instead.


Command Responder Applications
==============================

* Various SNMP versions

  * Multiple SNMP USM users


Notification Receiver Applications
==================================

* Transport tweaks

  * Serving multiple network interfaces

For more details on PySNMP programming model and interfaces, please
refer to the documentation
