VT 2008 Period 3, IK1350 Protocols in Computer Networks (Protokoll i datornätverk) 6hp
Last modified:
Sun Feb 10 13:12:20 MET 2008
Announcements
Page is still under construction - contents may be inconsistent
- Note that the lectures and recitations begin on the hour (as noted
in their schedules). Note that there is also
on-line
information for the textbook.
- For your document, you should be sure to use A4
sized paper rather than US letter.
- For those using LaTeX, you can improve the look of the document by:
- switching to using PostScipt fonts
(instructions)
- You can also turn off hyphenation or at least limit its use
with "\hyphenpenalty=5000 \tolerance=1000"
IK1350 is a 6 ECTS credits course designed for undergraduates.
Information is available on:
Aim
The overall goal of the course is to give the student basic
knowledge and skills in planning, implementing, and supporting the
packet switching infrastructure of IP based local networks. Moreover,
the course will create a foundation for further studies in IP based
LANs and WANs with a focus on services, planning, security, and the
continuing developments of protocols and media.
You should develop a habit of reading the relevant journals, standards, trade papers, etc.
Goals of the Course
- To give deep knowledge and competence (designing, analyzing, and developing) of computer networking protocols and architecture, both practical and analytical.
- To be able to read and understand the relevant Internet standardization documents (IETF RFCs and Internet Drafts), IEEE standards, and current literature.
- You should have the knowledge and competence to do significant networking tasks.
Scope and Method
- Dig deeper into the protocols by using diagnostic tools to examine, observe, and analyze these protocols in action. Understanding the details!
- Demonstrate this by writing a written report.
Learning Outcomes
Following this course a student should be able to:
- Describe the function of Ethernet based switches and methods
for packet and frame switching inside LANs, for example
assymetrical switching
- Describe and apply packet filtering with access control lists
- Describe and apply techniques for virtualziation of LANs, for example VLANs
- Describe protocols used by Ethernet switches and routers in IP
based LANs, for example, RIP, OSPF, Spanning-Tree, and IEEE
802.1q
- Explain how the algorithms used in the protocols work, for
example Bellman-Ford and Dijkstra
- Based on a problem definition propose suitable equipment and
protocols for an IP based LAN, with respect to performance and
security
- Make network simulations, using for example Packet Tracer"
- Demonstrate knowledge of this area in writing.
- By writing a paper suitable for submission
to a trade paper or national conference in the area.
Prerequisites
- Knowledge in basic computer communication and basic computer
user experience corresponding to the course (6B2945) Computer
networks or similar course or
Equivalent knowledge in Computer Communications)
- Students who have not completed the prerequisites
should obtain permission of the instructor, before registering
for the course.
Contents
This course will focus on the protocols that are the widely used
for computer networks, particularily LANs and the Internet. We will
also explore what internetworking means and what it requires. We will
give both practical and more general knowledge concerning computer
networks and their network architecture.
The course consists of 30 hours of lectures and recitations
(övningar) - these will be combined and not separate events; along
with written assignments (corresponding to ~15+ hours of laboratory
like exercises).
Lectures will be given in English. Lecture notes will (hopefully) be available
via the course web site in advance of the relevant lecture(s).
Recitations
Recitations will be based on exercises from the main literature.
Some extra recitations may be made available via the course web site.
Topics
- Ethernet and other simple link (and MAC) layer framing
- Ethernet based switches and methods for packet and frame switching (inside LANs)
- Packet filtering and access control lists
- Virtualziation of LANs, VLANs, tunneling, etc.
- Protocols used by Ethernet switches and routers in IP based LANs, for example, RIP, BGP, OSPF, Spanning-Tree, and IEEE 802.1q
- Algorithms for computing routes and forwarding paths, for example Bellman-Ford and Dijkstra
- Network simulation and protocol analysis
- What an internet is and what is required of protocols to allow internetworking
- Multicasting
- Domain Name System (DNS, Dynamic DNS)
- What happens from the time a machine boots until the applications are running (RARP, BOOTP, DHCP, TFTP)
- Details of the TCP/IP protocols and some performance issues
- Details of a number of application protocols
- Performance and security in the context of computer networks (including firewalls, AAA, IPSec, SOCKs, - )
- Differences between IPv6 and IPv4
- Network management (SNMP)
- We will also examine some emerging topics:
cut-through routing, tag switching, flow switching, QoS, Mobile IP, Voice over IP, SIP, NAT, VPN, Diffserv, - .
Examination Requirements
- The basic requirement is the written paper. If your paper is
close to passing, but not at the passing level, then you will be
offered the opportunity for "komplettering", i.e., students whose
written paper does not pass can submit a revised version of their
paper (or a completely new paper) - which will be evaluated.
Exam Schedule
Written report
- An assigned paper requiring roughly 40-100h of work by each student
- Registration: Monday 11-February 2008, to maguire@kth.se
with the "Subject: IK1550 topic" giving the topic selected
- Potential topics will be discussed in class.
- Written report
- A short technical document describing: 1) what you have
done; 2) who did what; 3) methods and tools used; 3) the test or
implementation results.
- The length of the final report should be 5-6 pages for each
student (detailed measurements, configuration scripts, etc. can be in
additional pages as an appendix or appendices). Note: It should not be longer
than 6 pages for each student - papers which are longer than 6
pages per student will have a maximum grade of "E".
- Contribution by each member of the group - must be clear
- Final Report: written report due before Friday 14-Mar-08 23:59
- Send email with URL link to a PDF file to maguire@it.kth.se
- Late assignments will not be accepted (i.e., there is no guarantee that they will graded in time for the end of the term)
- Note that it is pemissible to start working well in
advance of the deadlines! Thus sending the instructor
your selection of topic as soon as you have selected one.
- Language: the report can be written in Swedish or English -
(I can provide better feedback if the report is written in English)
Grading
A very good paper should be either a very good review or present a
new idea, while an outstanding or excellent paper should be truely innovative.
ECTS grades
- To get an "A" you need to write an outstanding or excellent paper.
- To get a "B" you need to write a very good paper, i.e., it should be
either a very good review or present a new idea.
- To get a "C" you need to write a paper which shows that you understand
the basic ideas underlying network protocols and that you
understand one (or more) particular aspects at the level of an average
undergraduate student in the area.
- To get a "D" you need to demonstrate that you understand the basic
ideas underlying network protocols, however, your depth of
knowledge is shallow in the topic of your paper.
- If your paper has some errors (including incomplete references) the grade will be an "E".
- If your paper has serious errors the grade will be an "F".
If your paper is close to passing, but not at the passing level, then
you will be offered the opportunity for "komplettering", i.e.,
students whose written paper does not pass can submit a revised
version of their paper (or a completely new paper) - which will be
evaluated.
Code of Honor and Regulations
It is KTH policy that there is zero tolerance for cheating, plagiarism, etc. - for details see
http://www.kth.se/dokument/student/student_rights.pdf
See also the KTH Ethics Policies
Literature
Main Text-Book
The course will mainly be based on the book
Behrouz A. Forouzan, TCP/IP Protocol Suite, 3rd edition,
McGraw-Hill, publication date January 2005, (Copyright 2006) 896 pages, ISBN 0072967722 (hardbound)
or 0071115838 (softbound) {Note that this is the same textbook as used for the Internetworking course.}
Note that there is
on-line material for the textbook; this includes animations and
other useful material.
Reading guide: read the entire book.
We will refer to other books, articles, and RFCs as necessary. In
addition, there will be compulsory written exercises.
Additional Reference Books
- Russell Bradford, The Art of Computer Networking, Pearson
Education Limited, Prentice Hall, 2007, 304 pages, ISBN 978-0-321-30676-0
( links
collected by the textbook's author )
- Wendell Odom and Rick McDonald, Routers and Routing Basics CCNA 2 Companion Guide, (Cisco Networking Academy Program), 1st edition, Cisco Press, 2006 ISBN 1-587113-166-8.
- Kevin Downes (Editor), H. Kim Lew, Steve Spanier, Tim Stevenson, Internetworking Technologies Handbook (Online: http://www-fr.cisco.com/univercd/cc/td/doc/cisintwk/ito_doc/index.htm)
- Concerning HTTP we will refer to TCP/IP Illustrated, Volume 3: TCP for Transactions, HTTP, NNTP, and the UNIX Domain Protocols, Addison-Wesley, 1996, ISBN 0-201-63495-3.
Supplementary readings
- For socket programming see:
- "Prepared Statement of Vinton G. Cerf, Vice President and Chief
Internet Evangelist, Google Inc.", at U.S. Senate Committee on
Commerce, Science, and Transportation Hearing on
"Network Neutrality",
February 7, 2006
- S. Kurkowski, T. Camp, and M. Coagrosso.
MANET simulation studies: the Incredibles. ACM SIGMOBILE Mobile Computing and Communications Review,
9(4), October 2005.
- Christian Benvenuti,
Understanding Linux Network Internals,
O'Reilly, 2006, ISBN 0-596-00255-6
- Katie Hafner and Mathew Lyon,
Where Wizards Stay Up Late: The Origins of the Internet,
1996, Simon & Schuster, ISBN 0-684-81201-0
- Robert Malmgren, Praktisk nätsäkerhet, Internet
Academy Press, Stockholm, Sweden, 2003, ISBN 91-85035-02-5
- Anurag Kumar, D. Manjunath, and Joy Kuri, Communication
Networking: An Analytical Approach, Elsevier Morgan Kaufmann
Publishers, 2004, ISBN 0-12-428751-4
- Russell Bradford, Rob Simmonds, and Brian Unger.
"Packet Reading for Network Emulation", Proceedings MASCOTS 2001: The IEEE/ACM International Symposium on
Modeling, Analysis and Simulation of Computer and Telecommunication Systems,
August 2001, pp. 150-157. [An excellent source for learning about
reading and writing link layer frames and raw packets.]
(link
to paper from the first author's home page)
- Chris Sanders,
"Practical Packet Analysis: Using Wireshark to Solve Real-World Network Problems",
No Starch Press, May 2008, 172 pp.
- Kevin D. Mitnick and William L. Simon, The Art of Deception:
Controlling the Human Element of Security, Wiley Publishing, 2002, 0-7645-4280-X.
- Muhhub Hassan and Raj Jain,
Higher Performance TCP/IP Networking: Concepts, Issues, and Solutions
Pearson Prentice-Hall, 2004, ISBN 0-13-127257-8.
Useful URLs
Wireshark - For an interesting
BLOG which has excellent examples of using Wireshark for network care
and maintenance see Chris Sander's Blog
Seagull - multi-protocol traffic generator
Lecture Plan and Lecture Material (OH slides)
Schedule
Note that in the following "xx" means "xx:00", not "xx:15".
The lecture notes are in PDF format.
Schedule for Period 4 2008:
Day of week | Date | Time | Room | Notes |
Monday | 21-Jan-08 | 10:00-12:00 | Ka-B37 |
session 1 (Introduction ~1MB) |
Tuesday | 22-Jan-08 | 10:00-12:00 | Ka-B37 | session 2 |
Tuesday | 22-Jan-08 | 13:00-15:00 | Ka-B37 | session 3 |
Wednesday | 23-Jan-08 | 08:00-10:00 | Ka-B37 |
session 4 (IP basics ~0.35MB) |
Thursday | 24-Jan-08 | 13:00-15:00 | Ka-B37 |
session 5 (Switching ~0.21MB) |
Friday | 25-Jan-08 | 13:00-15:00 | Ka-B37 |
session 6 (IP and ICMP ~0.14MB) |
Monday | 04-Feb-08 | 15:00-17:00 | Ka-B37 |
session 7 (UDP ~0.3MB) |
Tuesday | 05-Feb-08 | 10:00-12:00 | Ka-B37 |
session 8 (TCP ~0.3MB) |
Tuesday | 05-Feb-08 | 13:00-15:00 | Ka-B37 |
session 9 (SCTP ~0.2MB) |
Wednesday | 06-Feb-08 | 13:00-15:00 | Ka-B37 |
session 10 (Dynamic Routing ~0.2MB) |
Thursday | 07-Feb-08 | 13:00-15:00 | Ka-B37 |
session 11 (IP Multicast and RSVP ~0.3MB) |
Friday | 08-Feb-08 | 13:00-15:00 | Ka-B37 |
session 12 (Applications |
Tuesday | 12-Feb-08 | 10:00-12:00 | Ka-B37 |
session 13 (IPv6) and
Mobile IP) |
Thursday | 14-Feb-08 | 13:00-15:00 | Ka-B37 |
session 14 (Internet Security, VPNs, NAT and
Future and Summary) |
Note that the classrooms are on the Kista campus.
Note also that the lectures and recitations (övningar) are intermixed.
Staff Associated with the Course
- Lecturer (kursansvarig, föreläsare): Prof.
Gerald Q. Maguire Jr. (maguire at kth.se)
- Recitation assistants
- Administrative Assistant -- for administrative questions: recording of grades, ...
contact
Registering
Use the normal process for registering. For most students this
means you should speak with your study advisor (studievägledare).
Other on-line Course Material
Sources for Further Information
- Local KTH network information
- The Libnet Packet Construction Library for easily creating packets
- Jörg Liebeherr and Magda El Zarki's
Mastering Networks: An Internet Lab Manual, Addison-Wesley, 2004, ISBN: 0-201-78134-4.
- Radia Perlman,
Myths, missteps, and folklore in protocol design, Invited talk, USENIX 01, June 30, 2001.
- Tim Deegan, Jon Crowcroft, and Andrew Warfield.
The main name system:
An exercise in centralized computing ACM SIGCOMM CCR, 35(5):5-13,October 2005
- A useful tool for emulating a network with a given throughput,
error rate, etc. is NISTnet
see also dummynet
- How to set up NISNET
under Ubuntu
-
ICANN Factsheet: Root server attack on 6 February 2007, 1 March 2007
- Edith Cohen and Haim Kaplan,
"Proactive DNS caching: Addressing a Performance Bottleneck", see
also
E. Cohen and H. Kaplan, "Proactive caching of DNS records: Addressing
a performance bottleneck", in Proc. of Symposium on Applications and
the Internet (2001).
- KyoungSoo Park, Vivek S. Pai, Larry Peterson, and Zhe Wang,
"CoDNS: Improving DNS Performance and Reliability via Cooperative Lookups"
- For information on packet filtering on a popular OS - see
Windows Network Data and Packet Filtering, Printing Communications Assoc., Inc. (PCAUSA),
Last modified: January 20, 2007
- If you are thinking about packet tracing on the Symbian platform
you need access to the IP Hook API. Which appears to only be
available to "Platinum" developers.
- Howard Rheingold talking
about cooperation theory (an 80 meg MP3,
with an interesting section about why new services and protocols can
be created
- Cisco
Network Topology Icons are freely available for use when drawing
network diagrams.
- A very interesting analysis of the realities of
TFTP by
Thiadmer Riemersma, ITB CompuPhase, 2006. See the use of TFTP in
Preboot Execution Environment (PXE).
- To determine your IPv6 address, try the command http://www.whatismyipv6.net/?s=IPv6_traceroute
- Laura Chappell has a very nice animated
article in the October 2007 issue of Novell Connection
Magazine on how to use the advanced graphing features of
Wireshark
- ACM SIGCOMM IPv6 and the Future of the Internet (IPv6+)
Workshop,
31 August 2007.
Page History
Date | Update |
2008.02.10 | added link for IPv6 workshop |
2008.02.07 | added material for sessions 12,13, and 14 |
2008.02.06 | added material for sessions 10 and 11 |
2008.02.03 | added material for sessions 7, 8, and 9 |
2008.01.17 | first version for Spring 2008 |
© Copyright 2008 G.Q.Maguire Jr. (maguire at kth.se)
All Rights Reserved.
Last modified:
Sun Feb 10 13:12:20 MET 2008