Course DescriptionAdvanced Network Design is a relatively new interdisciplinary class which is designed to give the CSPP graduate the skills they need to architect, build and manage the next generation networks capable of supporting multimedia technologies such as Voice over IP, desktop video conferencing, presence management and other specialized real-time applications. While the TCP/IP protocol has been refined for the last 25 years to do a good job of reliably transmitting email and data files, real-time applications, such as voice over IP, put higher quality of service demands on networks than email and web sites. The operation of such multimedia applications on clean laboratory networks is fairly well understood; implementing them on large multi-use production networks is more difficult. To achieve this goal, this course will pull material from different Computer Science disciplines:. Information on packet classification, quality of service delivery and reservation protocols typical of an advanced course on router design will be presented. Multimedia theory and practice, especially with regard to voice over IP, will be covered including real time protocols, compression and multicasting technology. Information on improving end-node network performance and security typical of an advanced systems class, will also be discussed. Finally, we will discuss network reliability, redundancy and high availability architectures. There will be several written homeworks in the beginning of the class, followed by a major project which may be programming oriented or a network design, test and measure project. There will also be a midterm and final exam. PrerequisitesYou must have taken a basic networks class, CSPP-54001, CS-233, CS-333 or receive consent of the instructor. Consent by the instructor will be based on a short oral exam to test your basic understanding of the TCP/IP protocol and that you have some knowledge of network programming. TimesClasses: Monday, Gleacher Center in the Loop, 5:30-8:20 ScheduleThis schedule can get changed depending on class networks experience level. Week One: Overview, motivation, VoIP example. TCP/IP review, TCP/IP performance issues. Week Two: MultiMedia protocols, network bandwidth, LAN and WAN network architectures Week Three: IP Routing on WANs, Distance Vector and Link State protocols, Recovery and Non-Stop forwarding Week Four: MPLS Traffic Engineering, QoS and Failure Recovery Week Five: Network Algorithmics, packet classification, switching, Cisco IOS operating system Week Six: QoS, packet scheduling, Reservation protocols Week Seven: Endnode performance, MultiMedia systems, Compression Week Eight: Multimedia system implementation, Unified systems, Presence Management Week Nine: Network Traffic Analysis, Network Management of multimedia networks Required TextNetwork Algorithmics, George Varghese, ISBN 0-12-088477-1 Reference TextsNetwork Recovery, Vasseur, Pickavet & Demeester Network Analysis, Architecture and Design, James McCabe The Internet and Its Protocols, Adrian Farrel, ISBN 1-55860-913-X Some other reference books texts will be placed on reserve in Eckart Library.. Class Notes When I produce electronic materials for handout or electronic presentation, I will generally provide electronic copies, in Acrobat form, on the web page. However, I do not feel it is my responsibility to document everything said in class. If you miss a class, be sure to get notes from another student as everything covered in class is fair game for the exams. HomeworkThere will be weekly homeworks, which will sometimes consist of reading and written questions and later consist of reading and work on your project. Homework will generally be assigned on Thursday and due the following Thursday. Homework which is not turned in by the beginning of class only qualifies for half credit. Non-programming/labratory homework turned in after solutions are published receives no credit. Note that the homework and programming/projects are more than half of the course grade, so be sure to keep up. No matter how well you do on the exams, it is not numerically possible to pass without turning in a significant part of the homeworks. Homework is due at the beginning of the class in paper form. In some cases, a link to online binary and source code will also be requested. There should be a makefile and all elements necessary to compile and link the program should also be present. If you are out of town and need to make other arrangements to turn in work, please let us know in advance. StaffInstructor: Todd Nugent, nugent@cs.uchicago.edu, 312-845-3879 Office Hours: Call or email for an appointment Tutor: Ali A. Alkhafaji, Ali.A.Alkhafaji@gmail.com Office Hours: Call or email for an appointment Other Office HoursI spend most of his time in my loop office at 111 W. Monroe, 17th floor, so you are welcome to make an appointment to see me there at a mutually agreeable time, which should be convenient if you work in the loop. If you call my office above and reach my secretary, Linda, please let her know that you are one of my students. Also, when emailing me for the first time, please insert a "CSSP" somewhere in the message so my junk filters don't trash your message. GradesHomework/Project 60%, midterm 15%, Final 20%, class participation 5% Books or electronic resources are not permitted to be used during the Midterm and Final exams, but up to 4 pages of notes may be used. Class Discussion ListThe class mailing list is cspp54015-11@cs.uchicago.edu. Feel free to post questions to the list. Answering other students questions on the mailing list counts as class participation. The archives often contain useful information. To avoid spam, the class list will be set to prohibit posts from non-members. This means if you subscribe at one email address, you will not be able to post from other addresses. To get around this, you can subscribe all of your regular email addresses and set all but one of them to "nomail" on the mailman webpage. Academic HonestyYou are encouraged to interact with your classmates and to discuss programming assignments and even solve problems in groups. However, the work you hand in must be your own. Blatant copying or sharing of solutions or source code will result in an F in the course and further actions as outlined in the CSPP policies you have received. While you can probably find sample code and answers to other questions on the web, we can find them as well. We also have access to simple online tools which can be used to compare your solutions to your classmates and online solutions and determine the degree of difference in the form of a script to change one into the other. If the length of that script is short, you are in trouble! In the real world, finding sample code to modify is how most work gets done, but if you don't modify it, we will conclude you don't understand how it works and haven't learned anything. |
||