A Hierarchy of Open Protocols
2.2.3D In an abstraction hierarchy, higher levels of abstraction (the most general concepts) would be placed toward the top and lower level abstractions (the more specific concepts) toward the bottom.
6.1 The Internet is a network of autonomous systems.
6.1.1 Explain the abstractions in the Internet and how the Internet functions. [P3] Exclusion Statement (LO 6.1.1): Specific devices used to implement the abstractions in the Internet are beyond the scope of this course and the AP Exam.
6.1.1E Connecting new devices to the Internet is enabled by assignment of an Internet protocol (IP) address.
6.1.1F The Internet is built on evolving standards, including those for addresses and names.
6.1.1H The number of devices that could use an IP address has grown so fast that a new protocol (IPv6) has been established to handle routing of many more devices.
6.2 Characteristics of the Internet influence the systems built on it.
6.2.2 Explain how the characteristics of the Internet influence the systems built on it. [P4]
6.2.2B The redundancy of routing (i.e., more than one way to route data) between two points on the Internet increases the reliability of the Internet and helps it scale to more devices and more people.
6.2.2D Interfaces and protocols enable widespread use of the Internet.
6.2.2E Open standards fuel the growth of the Internet.
6.2.2F The Internet is a packet-switched system through which digital data is sent by breaking the data into blocks of bits called packets, which contain both the data being transmitted and control information for routing the data.
6.2.2G Standards for packets and routing include transmission control protocol/Internet protocol (TCP/IP).
6.3.1M Certificate authorities (CAs) issue digital certificates that validate the ownership of encrypted keys used in secured communication and are based on a trust model.
There are billions of devices connected to the Internet, and hundreds of different kinds of devices: laptops, tablets, phones, refrigerators, handheld credit card readers, and so on. How do they all know how to find and talk to each other? Protocols (standards) ensure that the variety of devices interact with each other smoothly.
There are a lot of protocols! The Internet was designed with several layers of abstraction that sort the protocols according to what part of the process they support.
Internet Abstraction Hierarchy
This hierarchy of abstractions manages the complexity of the Internet by hiding the details of lower levels of the system. The highest level of abstraction includes the most general features of the Internet that have to work the same across all devices. At lowers levels of abstraction, things get more device-specific.
Application Layer Examples: browsers use
HTTP (HyperText Transfer Protocol) to interpret HTML instructions for page formatting.
DNS (Domain Name System) converts user-friendly web addresses into IP addresses. Your email inbox may use SMTP (Simple Mail Transfer Protocol) to send and IMAP (Internet Message Access Protocol) to read email.
Transport Layer Examples:
TCP (Transmission Control Protocol)
simulates a reliable, long-term connection between two computers by only displaying data once all packets have arrived. When speed is more important than accuracy, people use UDP (User Datagram Protocol), such as for real-time video streaming, where one missed packet doesn't matter much.
Internet Layer Examples: Every device on the Internet needs an IP address so other devices can find it.
IP (Internet Protocol) addresses are upgrading from IPv4 to IPv6. Routers use Internet layer protocols to detect and work around network congestion.
Link Layer Examples: You may connect with an Ethernet cable perhaps aWiFi radio antenna inside the case. Both connects computers to a local network router which then connects to an Internet provider. Cell phones use a longer-range cellular connection to a phone carrier.
- Application Layer Protocols are the highest level of abstraction because they manage how data is interpreted and displayed to users. These protocols give meaning to the bits sent by lower-level protocols; user and server computers must agree on what the bits mean, and application protocols (like HTTP) offer this.
- Transport Layer Protocols manage the breakdown of a message into packets to be transmitted by lower level protocols and also the reconstruction of the message from the packets upon arrival.
- Internet Layer Protocols manage the pathways that the data packets travel across networks. These protocols treat the Internet like one large network even though the physical reality on the lower level is one of many tiny subnetworks.
- Network Interface Hardware (Link Layer): All Internet devices connect through a physical interface that uses a protocol to manage the connection to the local network. These local protocols are the least abstract because they deal directly with your physical hardware.
Open Protocols
Before the Internet, there were several different network protocols that were secrets belonging to particular manufacturers. So if you had a particular brand of computer or router, it could talk only to other computers of the same brand.
These are all open standards meaning that anyone can look up a protocol and code with it to make new hardware or software without any permission. The Internet is probably the largest and most complicated artifact in human history, and it relies on cooperation! Despite some governments' attempts to censor the net, the big picture is one of strong cooperative spirit.
Just think...
- Your T-Mobile cell phone can talk to your friend's Verizon phone.
- You can send email to someone in a country that's considered an enemy of your country (from the US to Iran, for example).
- An engineer at Microsoft can read a web page at Apple even though their companies are competitors.
-
Make sure you understand these important Internet protocols:
- HTTP: HyperText Transfer Protocol—the protocol that your browser uses to access an HTML webpage
- DNS: Domain Name System—the hierarchical addressing protocol that is human-readable
- TCP: Transmission Control Protocol—the protocol that assures reliable transmission of data
- IP: Internet Protocol—the hierarchical addressing protocol that manages routing of data between computers; we are upgrading from IPv4 to IPv6 for more addresses