Application Programming Interface.
APIs are a way for one program to use the functions of another program. For example, If I write a program that catalogs the name, address and phone numbers of my favorite restaurants, I can use the Google Maps API, to incorporate maps and directions to these locations. I don’t have to add the mapping functionality to my program.
Some APIs are publicly usable (like Google Maps, Twitter, etc). (here is a list of the most popular APIs). Some APIs are just used from an internal program to another internal program.
Most SDN implementations utilize a REST (or RESTful) API. This type of API allow the programmer to use information from the network, either to see status, make changes, etc. without having to write a networking application, or dig through a database of information.
In SDN-world, APIs are divided into two groups;
Northbound – which are APIs from the Higher layer orchestration or management layer. OpenStack Neutron (the networking component of OpenStack) has an API which would be considered a northbound API (OpenStack can make changes to the network using this API).
Southbound – which are APIs to and from the actual network devices. OpenFlow is considered a southbound API, as is Cisco’s onePK.
PVID is an acronym for “Port VLAN ID”. In IBM switching products, the term PVID is used to identify the VLAN ID that is used to process traffic within the switch when the packets do not have a 802.1Q VLAN tag.
The terminology is different, but the concept is the same as other networking products. To put this in more industry standard terms, the Port VLAN ID is the “native” or “untagged” VLAN.
When an untagged packet is received on a port on a switch, PVID tells the switch to “treat packets received on this port a belonging to this VLAN ID”.
When packets egress the switch on the port, the switch will remove (or not apply) a VLAN tag if the packet belongs in the PVID VLAN.