A collection of protocols (i.e., guidelines and standards) that let software applications communicate with one another regardless of the hardware and operating systems used to run them. Application programmers can interact via internetworking regardless of their actual network connections.