Network Neutrality: Classification of Arguments For and Against
This page aims to distinguish different arguments and reasoning in the debate around network neutrality, or control over traffic transmission on digital networks. The creation of this page was prompted by a view that people arguing for and against network neutrality use multiple definitions of the term and mix together many arguments on different levels. The purpose of this page is not to air polemics, but to elucidate the various points made for and against various forms of network neutrality.
Varieties of Intervention in Internet Traffic
Much confusion among the public, and many instances of debaters talking past each other, are caused by the possibility of differentiating among Internet traffic in many different ways.
In all these cases, an Internet service provider monitors traffic at its routers and chooses to drop certain packets entirely or to send them at a slower frequency. When traffic uses TCP, dropping selected packets near the beginning of a session causes the sender to throttle back the speed of transmission, because TCP assumes that the lack of acknowledgment indicates a congested route.
A router is normally expected to check only crude indicators of traffic such as IP address and port (characteristics stored in Internet packets at the Internet Protocol level). Deep packet inspection is a technique permitted by faster and more sophisticated routers, letting them look at more fine-grained elements of the session and even at application-layer data.
Differentiation by Service (Port, Protocol)
Services such as email, the web, and DNS traffic traditionally use different ports to make it easy to route traffic to the right program, although this is not universally true and some programs deliberately use ports meant for others (especially port 80, which is usually open, at least for incoming traffic, because it is assigned to the Web)
A router can therefore check the port number for a preliminary indication of the traffic being carried. Because programs can use other programs' ports and the port numbers indicate nothing about the actual traffic going between services, deep packet inspection is often used to determine the type of service in use.
For instance, many ISPs want to detect Voice over IP for a variety of reasons: to give its packets a higher privilege because it's a streaming service and therefore subject ot jitter, to block the service because the ISP considers it a competitor to its own voice service, or to offer surveillance to law enforcement. Voice over IP tends to use many ports, often including port 80. Therefore, it is usually detected by building into the router a sophisticated understanding of its protocols. A *protocol* includes various standard forms of data at the start or end of a message (headers and footers), as well as a strict set of messages exchanged to start, end, or manage a session.