This specialization is developed for seniors and fresh graduate students to understand fundamental network architecture concepts and their impacts on cyber security, to develop skills and techniques required for network protocol design, and prepare for a future of constant change through exposure to network design alternatives. Students will require a prior knowledge of C programming, an understanding of math probability and a computer science background is a plus.
Fundamentals of Network Communication
In this course, we trace the evolution of networks and identify the key concepts and functions that form the basis for layered architecture. We introduce examples of protocols and services that are familiar to the students, and we explain how these services are supported by networks. Further, we explain fundamental concepts in digital communication, and focus on error control techniques that include parity check, polynomial code, and Internet checksum. Students will be required to have some previous programming experience in C-programming (C++/Java), some fundamental knowledge of computer organization and IT architecture and a background in computer science is a plus.
Peer-to-Peer Protocols and Local Area Networks
In this course, we discuss peer-to-peer protocols and local area networks. Part one in this course is to answer the question of how does a peer-to-peer protocol deliver reliable data transfer service across unreliable transmission lines or networks. We focus on several medium access control protocols and their performance analysis. In the second part, we discuss how medium access control protocols coordinate the access to the communication channel so that information gets through from a source to a destination in the same broadcast local area network. We further discuss local area network and wireless LAN.
Packet Switching Networks and Algorithms
In this course, we deal with the general issues regarding packet switching networks. We discuss packet networks from two perspectives. One perspective involves external view of the network, and is concerned with services that the network provides to the transport layer that operates above it at the end systems. The second perspective is concerned with the internal operation of a network, including approaches directing information across the network, addressing and routing procedures, as well as congestion control inside the network.
TCP/IP and Advanced Topics
In this course, we give an in-depth study of the TCP/IP protocols. We examine the details of how IP enables communications across a collection of networks. We pay particular attention to the hierarchical structure of IP addresses and explain their role in ensuring scalability of the Internet. The role of address prefixes and the uses of masks are explained in details. We review in details about TCP three-way handshake, flow control, and congestion control. Furthermore, we provide an introduction to some advanced topics, including Multicast, SDN and security
Unix operating system, C/C++/java, Discreet Math, Probability