Computer Networks CNT5106C Spring, 2014 Ye Xia (Pronounced as “Yeh Siah”) How is the course conducted? • Please follow the lecture and reading schedule on course web page • Assignments are all posted on e-learning. • Critical dates are posted on the web page. Course Coverage • Overview of communication networks – Focus on the Internet; but also think about other networks • Will teach networking knowledge – Pick up concepts, jargons and technologies • Special attention will be paid to engineering the network – Principles and design of the network – Protocols – Algorithms • Always consider: what are the issues and how they are solved? Coverage • Basic: network protocol layers – – – – Application Transport Networking Data Link • Integrated or advanced topics – – – – – Quality of service framework and mechanisms Wireless networks Peer-to-peer networks network resource allocation network security Principles and Design • Most communication networks are giant infrastructure. A lot is at stake. Need – Careful and good design, and/or – Can be evolved • Objective: what is it used for – Limited or unlimited? • What is its architecture? – Specify different components and what they do – How they are realized: implementation and technologies • What are the design principles: for coping with complexity – To ease designer, implementer, or user’s lives Protocols and Algorithms • Algorithms: formal procedure to accomplishing some task • Protocols: governs the information exchange and collective behavior of distributed entities – For certain tasks • These are important components in networks • Each piece can also be complex – Also need some design principles Network Programming • Learn network programming – through project – not a focus of the lectures; but important • You can do much more yourselves. Why This Course? • Obvious: – – – – Learn about the internals of the Internet Learn about communication networks in general Learn network programming Related to other core areas of CS: (distributed) operating systems – For some: continue with advanced network courses • Less obvious: Learn about distributed, complex systems – Typical issues, solutions, design and architecture – Coping with complexity and scale Textbook • Computer Networking: A Top-Down Approach, 6th Edition • by James F. Kurose & Keith W. Ross • Important to have access to the 6th edition – Homework questions and labs are from the textbook • Course home page: http://www.cise.ufl.edu/~yx1 • You will find – – – – Lecture slides Project assignments; due dates Contact information Announcements • Please check it frequently • Check grades on e-learning (Sakai) – Go to https://lss.at.ufl.edu/, and log in with your gatorlink account – Distribute assignments and solutions • Assignments, lecture notes and other handouts will NOT be distributed in class. • Please get them from the course web site! Requirements • Homework assignments (6) – 10% • One programming project (25%) • Exams: each two hours long – Midterm – 30% (Feb 25, in class) – Final – 35% (May 1, 7:30-9:30am) Homework • Due date will be posted when each homework is assigned • Submit homework in hard copy in class • Some homework contains a lab part; – only the lab part will be submitted through Sakai Homework: Important Note • Each exam will have at least 10% (maybe 20%) of the points coming directly from the homework questions. – This is in addition to the homework’s 10% direct contribution to your course grade. • Check homework solutions carefully for correctness. Project • One programming project – – – – – on network programming, spread out There is a mid-semester checkpoint Final due date: April 23 Team project: 3 persons per team Java programming; C/C++ are also alright • Details will be posted later Late Policies • Late homework will face 30% additional deduction before the solutions are posted (in one week). – After that, no points may be earned on the homework. • No late project please. Office Hours • Instructor: Fridays: 1:00 – 3:00 pm, or by appointment • TA: see web page later Others • Class participation: Please show up in classes • Academic honesty: no copying of anything!