Provides an in-depth review of the Internet with a focus on the end-to-end effects of technologies and protocols that operate in different layers. All protocols and technologies are covered in a holistic framework with an emphasis on their effect on the network and application performance. The course also includes a brief introduction of more modern concepts in the field of networking such as SDN and NFV to encourage deeper study of those topics.