ppt - CSE Labs User Home Pages
Download
Report
Transcript ppt - CSE Labs User Home Pages
Welcome to
CSci5221:
Foundations of
Advanced Networking
Prof. Zhi-Li Zhang
Time: Thursday 6:30pm to 9:00pm
Location: Mech 212
Spring 2015 3 credits
CSci5221
Logistics
1
What is Csci5221 about?
Second “Graduate-Level” Networking Course
Assume a first-course “Introduction to Networking”
csci5211, csci421 or equivalent
We’ll learn about
– Fundamental networking principles and techniques
– Advanced networking mechanisms, protocols and practices
•
•
•
•
foundational material: long half life
deeper understanding of R& D issues in today’s Internet
mix of theory and practice
case studies
Who is it for?
primarily for graduate students who want to learn more about
networking and systems
undergraduate students encouraged, must have taken csci4211
others: special permission
CSci5221
Logistics
2
Course Mechanisms
Lectures, Readings & Homework Assignments
– A series of (advanced) topics combining both
theory and Practices
– Fast-paced
•
•
Me: lecture and provide some highlights to guide you
understand the reading materials
You: read papers and learn by yourself
“Hands-on” Course Projects
Project 1: Android mobile phone programming (or
other mobile phones) + “back-end” support
Project 2: a “research-oriented” networking
project (e.g., virtual id routing/VIRO in Mininet)
CSci5221
Logistics
3
Course Materials
No Required Textbooks
Some Recommended Textbooks (csci4211/csci5211) that will be
referenced
Computer Networks: A Systems Approach
by Peterson and Davies, 3nd Ed, Morgan Kaufmann
Edition, Addison Wesley
Other Useful Textbooks:
Computer Networks by A. Tanenbaum, Prentice Hall, 4th ed
An Engineering Approach to Computer Networks by S. Keshav
Assigned readings: 3-4 required papers
Computer Networking: A Top-Down Approach by Kurose & Ross, 3rd
Posted on class website (tentatively, updated as we go along)
Optional papers for background, supplementary and further
readings
Lecture notes
CSci5221
Logistics
4
Course Requirements
Will be Fast-Paced !
Do assigned readings
Be prepared, read and review textbook/lecture notes on
Self-reading materials in textbook: read by your own and
your own in advance!
will not be lectured
So we can spend more class time on
discussion and problem solving!
Attend and participate in class activities
Please ask and answer questions in (and out of) class!
Let’s try to make the class interactive and fun!
CSci5221
Logistics
5
Course Prerequisite
First-Course on Computer Networks
Algorithms, Computer Architecture, OS
Not necessary, but helpful
Basic knowledge of probability
Programming Experiences and Proficiency
e.g., in C/C++ (or Java), Python, C#, etc.
Required!
More importantly
Willing to learn and work hard
Love to ask questions and solve problems
CSci5221
Logistics
6
Class Information
Class Website :
Announcement Page
http://www.cselabs.umn.edu/classes/Spring2015/csci5221/
Check the class web page periodically
Google Class Mailing List for announcements,
Q&As, discussions, etc.
[email protected]
Class Project googlesite “wikipage”
To reach us (me & Tas): csci5221-help@cs
CSci5221
Logistics
7
Course Topics
Review of Networking Basics (csci5211/csci4211)
Network Architectural, Design, Implementation Principles
Overlay and P2P Networks; CDNs; YouTube & Netflix Case
Studies
Router Design, IP Address Look-up & Flow Classification
Packet Scheduling, Congestion Control and Active Queue
Management
Data Centers and Cloud Computing Overview
Data Center Networking and Large Enterprise Networking
Data Center Networking and TCP
Internet Measurement Basics: Traffic, Performances, etc.
Intra-Domain Routing and Traffic Engineering
Network Failures and IP Fast Rerouting
Inter-Domain Routing and BGP; BGP Policy Issues;
BGP Routing Instability; Impact of BGP Failures
Internet Architectures Revisited; Intro to SDN
……
CSci5221
Logistics
8
Office Hours and TAs
Professor Zhang’s Office Hours:
By appointment
TAs: Arvind Narayanan & Guobao Sun
[email protected]
Office Hours (tentatively):
Guobao: Mon 4-5pm & by appointment
Arvind: Tue 11:30am to 12:30pm & by
appointment
CSci5221
Logistics
9
Workload and Grading
Workload
Two homework assignments (20% -- 10% each)
Two course projects (50% total, I: 30%; II: 20%)
One take-home exam (25%);
Class participation: 5% (for on-campus student only)
Optional Bonus Points: volunteer to be scribes!
Focus more on critical thinking, problem
solving, “heads-on/hands-on” experiences!
Read and critique research papers
Understand, formulate and solve problems
Two Course Projects
CSci5221
Logistics
10
Policies and Guidelines
No late hw/project
Make-up exams: only if special occasions
Incomplete: not granted, unless
Please start working on your hw assignments/projects early
and hand them in on time!
proof of emergency, “agreement for incomplete” form
Scholastic behavior:
You are encouraged to study in groups, but do your written
homework independently!
Take-home exam: must work on it independently!
Acknowledge reference/credit if receive help!
University’s code of conduct enforced!
CSci5221
Logistics
11
A Few Words on Course Projects
Projects will be in groups!
4-5 students per group, depending on enrollment
Project I: Android Mobile Phone Programming Project
You’ll be learning the basics of mobile phone programming
Each group: one of several suggested project ideas/topics;
10 (?) Android mobile smart phones will be provided for you;
If you prefer to program for Apple iPhones or Window mobile phones,
that should be fine also -- provided you have access to such phones
You may create your own project ideas, subject to approval by us
CSE Dept. may have several Android phones for loan
Project II: “research-oriented” networking project
multi-path routing/fast rerouting, etc. based on VIRO
VIRO: a new routing platform we have developed for future large-scale
enterprise networks
Programming in Python (or Java) in Mininet
CSci5221
Logistics
12
Class Registration
Put the following information on a piece of paper
Your Name and Student Id
Your Contact Info: e.g., email, or phone
Your Major and Status: e.g., CS grad, registered, …
Background:
Relevant courses taken: e.g., basic networking, OS, architecture,
probability theory, ..
General programming skills: e.g., proficiency in C, C++, C#, Java,
Python, …
Network and Web Programming: e.g., experiences in BSD socket,
winsock, javascript, php, ajax, …
Motivations and Objectives, :
Why do you want to take this course?
How much time do you think you’ll devote to the course
(reading, homework, project …)
Objective: e.g., you’ll work hard to get an A++!
CSci5221
Logistics
13
Questions?
CSci5221
Logistics
14