Prerequisite: COSC 2310 – Data Structures and COSC 2410 – Computer Organization and Programming. It is recommended that you have taken COSC 4330 – Fundamentals of Operating Systems or are taking COSC 4330 concurrently.
Class Schedule: 2:30 PM – 4:00 PM, Tuesdays and Thursdays in F162.
People:
Instructor: Prof Lennart Johnsson, johnsson@cs.uh.edu, PGH 592, x33371
Office Hours: By appointment
Teaching Assistant: Olga Datskova, odatskov@cs.uh.edu
What will be covered?
This course covers the concepts and protocols in computer networks with an emphasis on the principles and technologies employed on the internet. The material is covered in a top-down fashion from networking applications to low-level data communication. The major topics covered are as follows:
- General: Structure of networks and the internet, circuit, packet and message switching, routing, physical media, types of delay, internet protocol stack, internet backbone, NAPs (Network Access Points) and ISPs
- Application Layer: Structure of networking applications, Web and Web caching, FTP (File Transfer Protocol), Electronic mail, DNS (Domain Name Service), socket programming
- Transport layer: Transport layer principles, multiplexing and demultiplexing, UDP (User Datagram Protocol), principles of reliable data transport, TCP (Transmission Control Protocol), flow control, principles of congestion control, TCP congestion control
- Network Layer: Network layer services, datagram and virtual circuits, routing principles, link state routing algorithms, distance vector routing algorithms, hierarchical routing, Internet Protocol (IP), IP addressing, IP transport, fragmentation and assembly, ICMP (Internet Control Message Protocol), routing on the internet, RIP (Routing Information Protocol), OSPF (Open Shortest Path First), router internals, IPv6
- Link Layer: Link layer services, error detection and correction, multiple access protocols, LAN addressing and ARP (Address Resolution Protocol), Ethernet, CSMA/CD multiple access protocol, Hubs, Bridges, and Switches, Wireless LANs, PPP (Point to Point Protocol), Wide area protocols
- Selected topics from multimedia networking, network security, and real-life networks.
Primary Textbook: Computer Networking: A Top-Down Approach Featuring the Internet – 6th Ed., James F. Kurose and Keith W. Ross, Addison Wesley, 2013.
ISBN-10: 0132856204, ISBN-13: 9780132856201. Companion Website: http://wps.pearsoned.com/ecs_kurose_compnetw_6
- You can find this text book in University of Houston Bookstore, or find a good price in on-line bookstores from Google Shopping or BestBookBuys.com.
- In the textbook’s companion web site, you can access open resources (including applets, references, and authors’ recommended links). After you activate the access code on the first page of your textbook, you can access the protected resources, which include self-assessment quizzes, audio lectures, programming assignments, and PowerPoint slides.
- This course will cover chapters 1 – 6 and 8. If time permits, additional material from the book and/or from other sources will be included.
Recommended Text: Computer Networks: A Systems Approach, 5th Edition
by Larry L. Peterson and Bruce S. Davie, Morgan Kaufmann, 2011. ISBN: 9780123850591.
920 pages. This is a well-written book on Computer Networks. Explanations of some concepts and protocols are better written than our textbook. We will use some content from this book as a supplement.
Supplemental texts:
Computer Networks and Internets, 5th Ed.
by Douglas E. Comer Prentice Hall, 2008. ISBN: 9780136061274. 768 pages. This is another well written book. It has more in depth explanations on concepts and protocols, plus examples and code segments in network applications. Entire book is freely available on line at (http://www.netbook.cs.purdue.edu).
UNIX Network Programming: Networking APIs: Sockets and XTI, Vol. I, 3rd Ed. by W. Richard Stevens Prentice Hall, 2004. ISBN-13: 9780131411555. 1024 pages. This book also has a Vol. II. An older version of this book (ISBN: 0139498761) is out of print, but is available in the library.
Computer Networks, 5th Edition by Andrew S. Tannenbaum and David J. Wetherall
Prentice Hall, 2010. ISBN: 978-0132126953. 960 pages. Companion web site: http://computernetworks5e.org. A legendary textbook. Full of materials. Some parts might not be easy to read.
Grading:
Assignments: 55%
Midterm exam 20%
Final exam 20%
Class participation 5%
No make-up exam is allowed unless there is a verifiable excuse, such as medical condition.
Assignment Late Policy. As a general rule, you will lose 10% of actual score each day for late assignments.
Academic Honesty: Any student found guilty of academic dishonesty will be reported to department and established procedure will be followed. (See details at http://www.uh.edu/academics/catalog/policies/academ-reg/academic-honesty/index.php)
Important Dates:
- First Day of Classes: August 26, Monday
- Last day to add a class: September 3, Tuesday
- Last day to drop a course or withdraw without receiving a grade: September 11, Wednesday
- End of regular filing period to apply online for Fall 2013 graduation with non-refundable $25 fee. October 4, Friday
- End of late filing period to apply online for Fall 2013 graduation with non-refundable $50 fee. November 1, Friday
- Last day to drop a course or withdraw with a ‘W’: November 1, Friday
- Thanksgiving holiday: November 27 – 30, Wednesday – Saturday
- Last day of classes: December 7, Thursday
- Final examination: December 17, Tuesday, 2 – 5 pm
- Official closing of the fall semester: December 20, Friday
Lectures
Lecture 1 – Chapter 1:Overview
Lecture 2 – Chapter 1: Internet
Lecture 3 – Chapter 1: Protocols
Lecture 4 – Chapter 1 History and Chapter 2: Application Layer
Lecture 5 – Chapter 2: HTTP
Lecture 6 – Socket Programming
Lecture 7 – Chapter 2: FTP, SMTP, DNS
Lecture 8 – Tools, DNS
Lecture 9 – Chapter 2: P2P
Lecture 10 – Chapter 3: Transport Layer, Multiplexing, Reliable Transport
Lecture 11 – Chapter 3: Reliable Transport, TCP
Lecture 12 – Chapter 3: Congestion Control, Vinton Cerf “The Internet Today” (video)
Lecture 13 – Chapter 3: TCP Congestion Control
Lecture 14 – Chapter 4: Network Layer, Virtual Circuits, Routers
Lecture 15 – Chapter 4: IP
Lecture 16 – Chapter 4: NAT, IPv6
Lecture 17 – Midterm
Lecture 18 – Chapter 4: Routing
Lecture 19 – Chapter 4: Broadcasting, Multicasting, Chapter 5: Link Layer
Lecture 20 – Midterm Review
Lecture 21 – Chapter 5: MAC protocols, ARP, Ethernet
Lecture 22 – Network Tools
Lecture 23 – Chapter 5: Ethernet, Switches, PPP, MPLS
Lecture 24 – Chapter 5 Summary, Chapter 6 CDMA, 802.11
Lecture 25 – Case Study: UH Campus Network
Lecture 26 – Chapter 6: Mobility, Chapter 8: Security
Lecture 27 – Chapter 8: Cryptography, Authentication
Lecture 28 – Chapter 8: SSL, IPsec, WEP
Lecture 29 – Chapter 8: Firewalls, Intrusion Detection