The TCP/IP Protocol: An API-Perspective
Alexander Eul
Director of Monetization at Pluripotent Analytics | Google Scholar ??Krylov Subspace-Methods
To begin, what is an API? In short, an API (i.e. "application programming interface") is a means for implementing abstraction within the framework or software development.
Applying specificity, because the variability of technological innovation is only limited by one's one ingenuity, software developers have "socially-convened" (i.e. mutually agreed upon) relegating this technological innovation aforementioned to a computer networking standard (i.e. TCP/IP). The underlying purpose for this is TCP/IP is saying to both computer hardware engineers and computer software engineers that they cannot pragmatically implement the TCP/IP protocol across the span of computer networking devices the given "technology market" sponsors; each given "species" of computer networking devices within the computer-networking hierarchy is implied to have a "unique" implementation-technique for facilitating TCP/IP computer networking where this is to say that the implementation of TCP/IP across computer networking devices is inconsistent between devices species.
In as much, if the TCP/IP protocol is an interface which does not implement functionality, how does a given application developer embed TCP/IP behavior within their application? The initial step is by evaluating the requirements that which TCP/IP demands of the developer to implement if that given developer desires to utilize the TCP/IP protocol. Meaning, given the functionality requirements that TCP/IP lists for application developers, these developers cannot "cherry-pick" TCP/IP functionality; if a developer wants to use TCP/IP, they must implement all-functionality-specified within the protocol (i.e. it's "all-or-nothing"). From this, once the given application developer is aware of all-requirements as dictated by the TCP/IP protocol, it is up to the developer to implement that functionality within the technological specifications, both with regards to computer hardware and computer parameters underlying the given development environment.
领英推荐
Now, what are the requirements which the TCP/IP protocol specifies for application developers? Here is a list of BSD TCP/IP protocol functionality-requirements: