Introduction to Network APIs and Protocols Flashcards
what is the issue with CLI when it comes to programmability
it was built for humans
why APIs are implemented
to allow machine to machine communication
what is SNMP is issue
frequent polling causes problems
what is SNMP agent
a network device
what are SNMPs main weaknesses
- lack of SNMP libraries for programming languages
- major players like Google are kicking it out
what are the two main encoding types
xml and json
what are the main APIs
REST, RESTCONF, NETCONF, gRPC
what are the main transport protocols
SSH, TLS, HTTPS, HTTP/2
what is a data model
defines syntax and semantics when working with API
what encoding provides
a structured data formatting to exchange data between systems
JSON sends data using
key(or name)-value pairs
JSON natively maps to
Python dictionaries
.dumps() and .loads() are used
with JSON strings
to translate JSON string to dictionary
.loads()
APIs often return
JSON strings
to translate dictionary to JSON string
.dumps()
what is the difference between HTML and XML
HTML tags are standard, XML are user-defined
explain XML namespace
handles element name conflicts and using default namespace instead of defining attribute for each tag
python library used working with XML
lxml, XML is not a native Python object
what is a data model
- constrained set of data in form of schemas
- well-defined and standardized parameters so that outcome is the same amongts different platforms
- relies protocols such as RESTCONF and NETCONF
- supports configuration validation before commit
what data models are used for
input validation, collecting statistics, defining operational data, defining configuration data,
how data models are used
data model sets the boundaries for NETCONF/RESTCONF to send XML and JSON encoded data as an example
YANG can be used by
NETCONF, gRPC and RESTCONF
what are the three types of YANG models
industry standard, Cisco common and Cisco platform specific
who are developing industry standard models
IETF and OpenConfig promote platform independent models
what is Cisco common model
models for configuration and state data shared by most Cisco platforms
which platforms have their own data models
ACI, Nexus 3k/9k NX-API
instead of using YANG, how does ACI implement constraints
Management Information Model