Textbooks: Computer Networking: A Top- Down Approach, Kurose and Ross,6th Edition,TCP/IP Illustrated, Volume 1: The Protocols, Fall and Stevens,2nd Edition, Computer Networking: Principles Protocols and Practice, http://cnp3bis.info.ucl.ac.be
Course Objectives: This course provides an overview of the field of voice/data local-and wide-area networks (LANs and WANs), as well as next-generation converged networking techniques. The proliferation of distributed computing applications through networking services (such as cable modems, xDSL, WIFI/WiMAX, LTE, and ad hoc mobile networks) makes knowledge of the underlying protocols and theories of these networking technologies essential. Moreover, by developing a concrete understanding of networking architectures, protocol design, and converged networks, students will have the requisite background to make critical design and implementation decisions for hardware and software communication through LANs and WANs.
The EECE 4371/5371 course will focus on the key concepts associated with LANs and WANs. It will first introduce students to transmission fundamentals and protocol architectures associated with LAN and WAN technology, such as techniques for flow control, time synchronization, multiplexing, and congestion control. This subject matter will be followed by a study of widely used asynchronous and synchronous networking architectures, such as ATM and SONET. The emphasis of the course will be on ISO OSI reference model and its relationship to traditional and next-generation convergent LAN/WAN technologies and applications.
The EECE 4371/5371 course will be a projects course that will provide students with in-depth opportunities to implement applications and services based upon the concepts covered in EECE 4371/5371. Course assignments will involve network programming in Java, smartphone/tablet application development using Google Android devices, network protocol design and class presentations.
Class Schedule: 3 classes per week of 50m each (Mon, Wed: Lecture, Fri: Hands-on)
Overview of Topics:
Taxonomy of Communication Networks
Packet Switched and Circuit Switched Networks
Synchronous, Time, and Frequency Division Multiplexing
Socket Programming
Performance Metrics
Protocol Architectures
The Internet Protocol
Addressing (IP) and Naming (DNS)
Transport Layer, TCP
Flow Control and Congestion Control
HTTP and the World Wide Web
Link Layer, Encoding and Modulation, Framing
Ethernet
Wireless Transmission
Wireless MAC Protocols
Routing
Quality of Service
Voice over IP, SIP
Firewalls, Security
Network Packet Analysis (Wireshark)
Android programming
Grading:
There will be a short graded quiz each Wednesday, starting on September 4th. The quizzes will largely be based on material presented in class. It is therefore essential that you attend class in order to prepare for the quizzes. There will be no ``makeup'' quizzes unless you ask permission from me before the quiz. There will be no midterm or final exam.
The relative weighting of each portion of the course is presented below:
• 50% Quizzes
• 30% Assignments and In-class Design Problems
• 20% Class project
Note that I reserve the right to change the weights during the course of the semester.
EECE 261 Course Topics:
The general outline of the course is below. Adjustments to the topics and scheduling may be made depending on class interest and time.
Class 1 |
Wed |
Introduction |
|
Class 2 |
Fri |
Overview, Challenges |
|
Class 3 |
Mon |
Networks and Protocols: Taxonomy of Communication Networks, Multiplexing |
|
Class 4 |
Wed |
Socket programming: UDP and TCP in Java |
|
Class 5 |
Fri |
Android primer |
|
Class 6 |
Mon |
Performance: Metrics, Evaluation techniques |
|
Class 7 |
Wed |
Network Architecture: OSI Model, IP Suite |
Quiz |
Class 8 |
Fri |
Android: small application |
|
Class 9 |
Mon |
The Internet Protocol |
|
Class 10 |
Wed |
IP Addressing, Network Address Translation |
Quiz |
Class 11 |
Fri |
Java/Android: network programming |
|
Class 12 |
Mon |
IP Forwarding |
|
Class 13 |
Wed |
Routing |
Quiz |
Class 14 |
Fri |
Android: network programming con't, multithreading |
|
Class 15 |
Mon |
Transport Layer, TCP Protocol |
|
Class 16 |
Wed |
Domain Name Service, DNS protocol |
Quiz |
Class 17 |
Fri |
Hands-on |
|
Class 18 |
Mon |
The World Wide Web, HTTP protocol |
|
Class 19 |
Wed |
The Link Layer, Framing, MAC |
Quiz |
Class 20 |
Fri |
Hands-on |
|
Class 21 |
Mon |
Ethernet, CSMA/CD, Hubs, Bridges, Switches, Routers |
|
Class 22 |
Wed |
Wireless, TDMA, CSMA/CA, OFDM, low-power MACs |
Quiz |
Class 23 |
Mon |
Bootstrapping, ARP, DHCP, ICMP |
|
Class 24 |
Wed |
Flow control, Congestion control |
Quiz |
Class 25 |
Fri |
Hands-on |
|
Class 26 |
Mon |
Interdomain Routing Protocol (BGP) |
|
Class 27 |
Wed |
TCP revisited, Handshaking, Reliability, Congestion detection |
Quiz |
Class 28 |
Fri |
Hands-on |
|
Class 29 |
Mon |
Security, Symmetric, Public key cryptography, Attacks |
|
Class 30 |
Wed |
QoS, ATM |
Quiz |
Class 31 |
Fri |
Hands-on |
|
Class 32 |
Mon |
Firewalls, Wireshark |
|
Class 33 |
Wed |
SIP |
|
Class 34 |
Fri |
Hands-on |
|
Class 35 |
Mon |
Outside reading, presentations |
|
Class 36 |
Wed |
Outside reading, presentations |
|
Class 37 |
Fri |
Hands-on |
|
Class 38 |
Mon |
TBD |
|
Class 39 |
Wed |
TBD |
|
Class 40 |
Fri |
Hands-on |
|
Class 41 |
Mon |
Project demos |
|
Class 42 |
Wed |
Project demos |
|