CIS 456, Open Systems Networking. The goal of this course is to provide students with a foundation of knowledge of the Internet and its Protocols. The material covered in this course is necessary for, among others, later study of firewalls, research on new Internet Protocols, research on Traffic Phenomena in the Internet, etc. Students taking Cisco Certification exams have told me that taking CIS 456 had been a great help. In the spring of 2006 the book for CIS 456 will be Comer, Douglas E. Internetworking with TCP/IP, Vol I: Principles, Protocols, and Architecture, fifth edition. Pearson / Prentice Hall The NJIT Bookstore has copies of this book. Feel free to start reading! While in future semesters the book might change, the content of the course will change only slowly. Roughly, the course covers the chapters 1 - 16 of Comer, plus selected topics from later chapters and from other sources, such as RFCs (IETF Requests for Comments, see www.ietf.org). Material covered includes: The IP addressing schemes; The interaction between logical addresses (of course IP) and physical addresses (in this course always ethernet adresses); ARP and RARP; Routing Tables and Routing; Routing and Forwarding; Classless Interdomain Routing; The IP and ICMP Protocols; The UDP and TCP Protocols; The layering models in OSI and TCP/IP: physical address - logical address - protocol identifier - portnumber; IGMP; Routing methods (RIP, OSPF, BGP); The Domain Name System; The World Wide Web and http. In addition, students will be made familiar with the use of packet sniffers such as TCPdump. Packet sniffers make a copy of (in principle) all IP packets passing through some interface, and present that information to the user, for example in hexadecimal representation. Students will develop the detailed knowledge of IP, UDP, TCP etc headers necessary to understand the output of packet sniffers. In addition, students will be made familar with tools like ping, nslookup, dig, traceroute. The course includes a project that involves programming. In the past this used to be writing a program that emulates certain router behaviors. Students who read this page sufficiently long before the semester starts, and want to read ahead, can start by reading the first 3 chapters in Comer. This is neither required nor expected, but not a bad investment. (Whether you take CIS 456 or not). Further, students can obtain IETF RFC 1700 and read the first page, and obtain IETF RFC 3232 and read in its entirety (very short). If that is not enough for you: Log on to any Unix or Solaris or Linux system and get the ``manual pages'' for ping etc: man ping man nslookup man dig man traceroute man tcpdump (You must be root to use tcpdump, but anybody can look at the man pages) man netstat (Try ``netstat -r'' and ``netstat -rn'') man arp (Since you are not root, all you can do is ``arp -a'' and ``arp -an'') man ifconfig (Since you are not root, all you can do is ``ifconfig -a'') Warning: Some of these tools can be used in Denial of Service Attacks. Do not do that! All students must adhere to the Guidelines for responsible use of Computer Resources: http://www.njit.edu/policies/usagepolicy.php In the first place, that is good manners. In the second place, if you do not you will loose computer priviliges, and you may be suspended. The most important rule is: use common sense. Think about what impact your activity wil have on other users, on the network, on other computers, switches, and routers. Do not turn on anything you do not know how to turn off! Read the story of the ``sorcerer's apprentice''! Never ping or traceroute (or so) to a broadcast address or to a multicast address. Before you take the course, much of these man pages may sound like gibberish to you. At the end of the course, it will all make sense. To understand what man pages are all about, you can do ``man man''.