CS551 Computer Communications



Similar documents
Basic info Course: CS 165 Accelerated Introduction to Computer Science Credits: 8 Instructor: Tim Alcon timothy.alcon@oregonstate.

Division of Fine Arts Department of Photography Course Syllabus

CMPT 165 INTRODUCTION TO THE INTERNET AND THE WORLD WIDE WEB

CS A250 (CRN ) C++ Programming Language 2. Syllabus Fall 2015

PLEASE READ EVERYTHING IN THIS SYLLABUS CAREFULLY WORD FOR WORD.

Online Basic Statistics

CS 306/491-3 Linux Programming Spring 2015

CS 1340 Sec. A Time: 8:00AM, Location: Nevins Instructor: Dr. R. Paul Mihail, 2119 Nevins Hall, rpmihail@valdosta.

CSCI 4250/6250 Fall 2015 Computer and Network Security. Instructor: Prof. Roberto Perdisci

ISM 4113: SYSTEMS ANALYSIS & DESIGN

Introduction to Programming System Design. CSCI 455x (4 Units)

INFO 2130 Introduction to Business Computing Fall 2014

Introduction to Psychology 100 On-Campus Fall 2014 Syllabus

The course assumes successful completion of CSCI E-50a and CSCI E-50b, i.e. at least two semesters of programming, with a grade of C- or better.

IT 101 Introduction to Information Technology

Department of Accounting ACC Fundamentals of Financial Accounting Syllabus

Department Policies for Online Math Classes

INFO 2130 Introduction to Business Computing Spring 2013 Self-Paced Section 006

TA: Matt Tong Tues EBU3b B225 - Office hour WLH Discussion Thurs EBU3b B250/B250A - Lab/Office hour

FUNDAMENTALS OF NEGOTIATIONS Purdue University Fall 2014 CSR CRN Tuesday and Thursday 7:30 AM - 8:45 AM Krannert Building G016

CS 341: Foundations of Computer Science II elearning Section Syllabus, Spring 2015

Introduction to Business Course Syllabus. Dr. Michelle Choate Office # C221 Phone: Mobile Office:

ABNORMAL PSYCHOLOGY (PSYCH 238) Psychology Building, Rm.31 Spring, 2010: Section K. Tues, Thurs 1:45-2:45pm and by appointment (schedule via )

ISM and 05D, Online Class Business Processes and Information Technology SYLLABUS Fall 2015

Florida National University Online Courses Platform

CS1400 Introduction to Computer Science

CS 394 Introduction to Computer Architecture Spring 2012

COS 480/580: Database Management Systems

MKTG 330 FLORENCE: MARKET RESEARCH Syllabus Spring 2011 (Tentative)

Lecture 1: Course Introduction"

Financial Analysis FIN 513, Fall A 2011 University of Michigan, Ross School of Business

Marketing for Hospitality and Tourism Course Syllabus. Dr. Michelle Choate Office # C221 Phone: Mobile Office:

CMSC Fundamentals of Computer Programming II (C++)

CS 115 Introduction to Computer Programming Course Syllabus (Night Sections) Fall 2015

Psychology 3410, Section 001 Introduction to Social Psychology Spring 2011

Discrete Mathematics I Distance Learning (online) sections

INDUSTRIAL-ORGANIZATIONAL PSYCHOLOGY

PSY 2012 General Psychology Syllabus

Course Description This course will change the way you think about data and its role in business.

CJS 101: Introduction to Criminal Justice Sciences

I ve logged in! Now where do I start?

Riverside City College Arithmetic-Pre-Algebra/Math 65 (48422), Fall 2014 MTSC 103-MTWTh: 06:00PM - 07:10PM

SI 539, Winter 2014 Complex Web Design

CIS Information and Database Systems I. Course Syllabus Spring 2015

Applied Information Technology Department

CS 170 Java Programming 1. Welcome to CS 170. All about CS 170 The CS 170 Online Materials Java Mechanics: Your First Program

Database Management Systems ISM 4212 (3 Credit Hours) Fall 2011

PBJ 101 INTRODUCTION TO CRIMINAL JUSTICE

CHEMISTRY 109. Lecture 2, Fall Read This Syllabus Today Keep It for Future Reference

CS 2302 Data Structures Spring 2015

George Washington University Department of Psychology PSYC 001: General Psychology

COURSE DESCRIPTION. Required Course Materials COURSE REQUIREMENTS

Governors State University College of Business and Public Administration. Course: STAT Statistics for Management I (Online Course)

Project Management Tools and Leadership (MIS3886) Spring 2016 Course Syllabus

Android: Setup Hello, World: Android Edition. due by noon ET on Wed 2/22. Ingredients.

or simply Google John Penn WVU and take the top hit. Useful Websites to Help the Organic Chemistry Class

How To Teach Environmental Science At Fiu

MKTG , Marketing Research and Information Technology Course Syllabus, Spring :30-11:00 a.m. MW

ISM 4210: DATABASE MANAGEMENT

Collaboration Policy Fall 2015

Department of Geography Program in Planning, Faculty of Arts and Science University of Toronto GGR 273 H1S: GIS II Course Outline Winter 2015

Psychology 1F03 Course Outline Spring 2014

INSTRUCTOR: Jeffrey H. Nathan, Ph.D. OFFICE HOURS: By appointment TELEPHONE: (808) EFFECTIVE DATE: 1/13/2014 5/16/2014

Grading and Assignments: Participation: 10.0% Discussion Boards: 10.0% Midterm Exam: 22.5% Final Exam: 22.5% Policy Paper: 35.0%

Online Course Syllabus. POL 1113: American National Government. Fall 2015

Course: ISYS 4373 Application Development with Java Prerequisite: ISYS 3293

BUAD : Corporate Finance - Spring

Getting Started Manual: Authors

Alabama Department of Postsecondary Education. Representing The Alabama Community College System

Project 2: Penetration Testing (Phase II)

New York University Stern School of Business Undergraduate College

FCHD 3350: Online Family Finance Class

FCHD 3350: Online Family Finance Class Fall Credit Hours INSTRUCTOR: Alena Johnson

STUDENT PORTAL - TURNITIN

Accounting Information Systems (ACC409) Spring 2015 School of Accountancy Shidler College of Business University of Hawaii at Manoa

Mobile Application Development ITP 342 (3 Units)

Math 35 Section Spring Class meetings: 6 Saturdays 9:00AM-11:30AM (on the following dates: 2/22, 3/8, 3/29, 5/3, 5/24, 6/7)

CHM 1025 ONLINE Fall/Spring Introduction to General Chemistry. East Campus Science Dept. (407)

Human Resources Management - Class Information

General Psychology (PSY 101A) Spring MWF 8:30-9:20am, Sloan 201

NURS 1050 Medical Terminology. Course Description

CS 301 Course Information

Introduction to Psychology Psych 100 Online Syllabus Fall 2014

Olathe North High School Accounting I - Syllabus

Drop Policy: A course drop grade will be assigned in accord with UTA policy (see current catalog).

A. COURSE DESCRIPTION

The University of Akron Department of Mathematics. 3450: COLLEGE ALGEBRA 4 credits Spring 2015

Introduction to Psychology (PSY 120)

Transcription:

CS551 Computer Communications Bill Cheng http://merlot.usc.edu/cs551-f12 1

Today s Topics Placement Exams Replaces the old Diagnostic Exam See web site for details Administrative Stuff The instructor cannot give D-clearance Please use the on-line D-clearance system I have never waived a pre-requisite for anyone PhD students to take Prof. Govindan s or Prof. Heidemann s section of CS 551 (or talk to me) Review Course Organization Warmup project #1 Review sockets programming 2

Class Structure Instructor: Bill Cheng <bill.cheng@usc.edu> Lecturs: MW 10:00am - 11:20am in ZHS 252 Email: 24 hour turn-around Office Hours: in SAL 218, M/Tu/W/Th 2:00pm - 3:00pm or by appointments TA: Bo-Chun Wang <bochunwa@usc.edu> Email: 24 hour turn-around Office Hours: (TBD) Grader: Abhiram Kalluru <kalluru@usc.edu> We have different rules about grader involvement Please do not contact the grader about an assignment before the assignment is due The grader will hold office hours after you get grade notification e-mail 3

Class Resources Class web page: http://merlot.usc.edu/cs551-f12 Lecture notes posted here soon (hopefully) after class Project assignments & may be HWs Reading list News section You should check this site regularly If you see inconsistencies, especially regarding any type of "rules" between what s on the class web page and what s on a set of lecture slides that has been covered in class usually, the lecture slides are correct but, you should check with the instructor as soon as possible! so that things can be consistent again 4

Class Google Group Google group Student-to-student discussions about programming assignments Exchanging ideas are allowed Posting code is not allowed (short code segments to illustrate ideas are allowed; short means < 5 lines) Instructor & TA will also post answers to questions here if appropriate for whole class You can also initiate discussions about course material go offline when approprate 5

Class Google Group You must be a member of the class Google Group All important announcements will be posted to this group There are two way to use the class Google Group 1) use it as an e-mail reflector (i.e., don t need to "login" to the Google Group) get an e-mail copy of everything posted to the group send postings to the group you don t need a Google account if you are a conscientious objector to Google, this may be your only option (and you will have to manage ALL messages posted to the class Google Group) 2) full access (i.e., "login" to the group, search the message archive, post using web form, etc.) you must have a Google account 6

Class Google Group If you are on the class roster, I will invite you to join with the class Google Group some time during the first week of class By default, I will use your USC e-mail address the default mode of using the class Google Group is e-mail reflector If you want to use a different e-mail address to access Google Group, please apply for membership 1) do not accept the invitation 2) apply for membership with your "other" e-mail address make sure you provide your USC e-mail address in the "additional information" field (so I can verify that you are really in my class) 7

Course Readings Research Papers in Networking Available online Collection of classical and topical research about 40 papers may add papers as we go along Textbook as background, not required L. L. Peterson and B. Davie Computer Networks: A Systems Approach John W. Stewart III BGP4, Inter-domain Routing in the Internet W. R. Stevens Unix Network Programming: Volume 1: Networking APIs B. Nichols, D. Buttlar, and J. P. Farrell Pthreads Programming 8

Class Structure Lectures mostly based on papers slides lectures should be interactive little use of optional textbooks CSCI 551, Fall 2006 You need to read the papers You have to interpret the papers What should you look for in the papers? will discuss this later 9

HW 0% Grading 2-3 assignments, do not turn in Rowcall 3% starting from week 4 of classes Projects Midterm Final 35% 27% 35% 2 warm-ups, 1 final project in two parts in class, Thu, 10/25/2012 (firm) 8:00am - 10:00am, Mon, 12/17/2012 (firm) No extra credit Try your best from the beginning! Definitely no individual extra credit, there s no need to ask Projects graded by the grader Exams graded by the TA or the instructor 10

Grading (cont...) Final grade assigned by the instructor On a curve, class average is probably a B+ C s will likely be given, F s if necessary Loose guideline depicted below: B- B B+ A- A Std Avg Std 11

Grading (cont...) Without fairness, grades have little meaning Fairness The instructor must treat all students equally and cannot give special treatment to any particular student Therefore, please do not ask special favors from the instructor because of your circumstances (except for ones that are explicitly allowed by the university) This may seem unfair to you because you believe that your circumstances are special (understandably, everyone does) But the rule the instructor must follow is that whatever he offers you, he must offer to the entire class 12

Sign Row Sheet For on-campus students only If you are enrolled in the DEN section, you are not required to sign row sheets DEN students normally have a slight disadvantage that they can miss stuffs happening in the class this is served as an "equalizer" 13

Sign Row Sheet (Cont...) Starting from week 4, each lecture is worth 1 point You should sign the row sheet as soon as you get into class If your signature is on the row sheet, you get the 1 point provided that you do not leave before class ends If you come in between 11 to 30 minutes into class or had to leave class within the last 15 minutes, check late box to receive 1/2 a point credit instead if you have to leave during class for something urgent and cannot check the "late" box or remove your signature, please e-mail me to do it for you failure to do so would be considered cheating and will lose all class participation credits If you are sick or have a family emergency, please bring a note from a doctor to receive credit 14

Sign Row Sheet (Cont...) Sign Row Sheet Summary Arrive on-time, Leave on-time Arrive late, Leave on-time Arrive on-time, Leave early start of class 10min arrive 10min leave end of class 5min leave start of class 10min 20min 5min arrive leave start of class 10min arrive end of class end of class 5min 1 point 1/2 point 1/2 point 0 point if arrive way late or leave way early 15

Homework Assignments HW (do not turn in for this semester) Based on readings and discussion Short programs in ns and nam Acceptable formats are ASCII, PDF, PostScript, or HTML proprietary formats such as MS-Word or human-unreadable formats such as LaTeX source will not be accepted 16

ns and nam Experimental but highly popular software packages http://www.isi.edu/nsnam ns: network simulator Discrete event simulator (OTcl front-end) Implements many Internet protocols nam: network animator Animates ns traces (and more!) CSCI 551, Fall 2006 17

Programming/Project Assignments Programming projects Sockets, multiple processes, multiple threads, etc. Hopefully will give some practical insight You need to learn to be very precise know every bit that you are reading and writing know exactly what each function is doing and the meaning of all its return codes 2 small warm-up projects (10% each) group projects not allowed 1 large (5,000+ lines) final project, delievered in two parts (45% for part (1) and 35% for part (2)) part (2) depends on part (1) working properly group of two students allowed, but must follow strict rules (cont...) 18

Programming/Project Assignments (Cont...) Programming projects (cont...) No solutions will be given C/C++ only Must compile and run on nunki.usc.edu Makefile - make must work as is Many requirements, please see specifications Electronic submission only We can only grade from our grading account on nunki test your code in someone else s account to make sure that your code does not have to run from your account (cont...) 19

Programming/Project Assignments (Cont...) Programming projects (cont...) Grading will be harsh you do not get credit for simply coding, you get credit for making sure your code works according to spec Grading guidelines provided at least one week before submission deadline this is exactly how we will grade your program no other grading procedure will be used so, you should run your code through them 20

Programming/Project Assignments (Cont...) Final project Can be done either individually or by a team of two students send commitment forms for team projects deadline for the commitment forms is 2 weeks before the project due date From past records, there is no apparently advantage in having a partner for the final project coordinate with a partner may not be so easy wait till the last day to integrate code most likely will be disastrous if you choose to do an individual project, please do not complain that others have an edge because they have a partner 21

CSCI 551, Fall 2006 Use bsubmit and the Bistro system (see web page for details) You can make multiple submissions will grade last submission by default Bistro system gives tickets and receipts these are proofs that the server got your submission we cannot trust any file timestamp we can only trust things that have made it to our server Very important: read output of bsubmit Very important: verify your submissions see the bottom of the Electronic Submission Guidelines web page for details if you forget a file in your submission, you are not allowed to resubmit it after the deadline It is your responsibility to make sure that your submission is valid - Be paranoid! Electronic Submissions 22

Electronic Submissions (Cont...) Use bsubmit and the Bistro system (see web page for details) No other form of submission will be accepted use your judgement under special circumstances Account getting full Please do not delete or alter anything in your ~/.bistro directory If you must delete your ~/.bistro directory, you should tar then gzip the content of your ~/.bistro directory and e-mail the resulting tgz file to the instructor: cd; gtar cvzf $(USER)-bistro.tgz.bistro CSCI 551, Fall 2006 Delete the directory only after you get an confirmation e-mail from the instructor (or at your own risk) 23

Late Policy Electronically Submitted Assignments You can submit multiple times, only the last submission will be graded (unless you send us an e-mail) 15 minutes grace period 80% of your score if within one day late beyond grace period Although in the first 100 minutes of this period, you will only lose 1% of your grade every 5 minutes See next page for details Time is based on Bistro server timestamp Extension only possible if you have a note from a doctor or other form of official proof of family emergencies e.g., scheduling conflict with work will not be excused 24

Late Policy 100% midnight 20% midnight 80% 60% 40% 20% slope = -1% every 5 minutes (round up to the nearest percent) 0% on time 1 day late 25

Late Policy I must stick to my policies 1) Please do not ask for individual extension unless you have a documented proof of illness or a documented proof of family (not personal) emergency 2) My "fairness" policy is: "Whatever I offer you, I must offer it to the whole class" This is why I cannot give individual extensions What if your laptop died? Home Internet disrupted? Car broken? Cousin got stuck at the airport? My house was on fire? Need to go to court? Need to go to Miami? And so on... These are personal emergencies Please see (1) and (2) 26

Modifications After Deadline After the submission deadline has past You are allowed up to 3 lines of free changes, submitted via e-mail to the instructor, within 24 hour of the project submission deadline clearly, this is not meant for major changes you may want to anticipate that your submission may not be exactly what you thought you had submitted One line (128 characters max) of change is defined as one of the following: add 1 line before (or after) line x delete line x replace line x by 1 line Additional modifications at 3 points per line (same deadline) (cont...) 27

Modifications After Deadline (cont...) After the submission deadline has past (cont...) Afterwards, additional modifications cost 12 points per line for the next 6 days Afterwards, it costs 30 points per line Applies to source code and README files do not forget to submit files, verify your submission this is your responsibility we cannot accept missing files after deadline a filesystem timestamp can be easily forged, so they cannot beused as proof that you have not modified the file after deadline Try things out before your first submission deadline to get familiar with the Bistro system Re-test your code after you have submitted to be sure 28

Regrade Policy Grades will be sent to individuals via e-mail You must register for the class mailing list Regrade requests in writing Submit within 1 week of initial grade notification must follow instruction in grade notification e-mail Regrade can be done after the 1-week deadline, but you must initiate a regrade request within 1 week We reserve the right to regrade the whole thing 29

Scheduling Conflicts Midterm Exam scheduling conflict with midterm exam must be resolved with the instructor at lease one week before the exam Final Exam scheduling conflict with final exam means 1) you have another exam that overlaps in time with our final exam 2) you have two or more other final exams on the same day if you only have another final exam on the same day is not considered a scheduling conflict scheduling conflict with work is not considered a scheduling conflict Documented illness will get an incomplete grade 30

Academic Integrity Policy The USC Student Conduct Code prohibits plagiarism All work submitted for the class is to be done individually except for the final project, please see web page for details Code fragments obtained from public sources (or code derived or adapted from them) must be explicitly cited to give credits Code fragments obtained from private sources (or previous semesters) are not allowed Code fragments done by yourself for other classes must be cited explicitly For more details, please see the Academic Integrity Policy section on the Course Description web page 31

Academic Integrity Policy (Cont...) You are encouraged to work with other students "work with" does not mean "copy each other s work" "work with" means discussing and solving problems together this should happen at a high level but be very careful when it s time to write code must write code completely on your own do not write code together "sharing" even a single line of code is considered cheating If you cannot work together at a high level you are advised not work together with other students 32

Program Checker Do not submit someone else s code CSCI 551, Fall 2006 How do we catch cheaters? We use MOSS to analyze your submissions http://theory.stanford.edu/~aiken/moss/ Analyzes code structure intelligently We also have all projects from several previous semesters 33

Student Commitments Keep up with your reading Complete relevant reading before class Browse lecture slides before class lecture slides will be available on-line before class Do your own work Turn in assignments on time Ensure gradable assignments Programs must work on nunki.usc.edu You are encouraged to study with other students and discuss (no sharing) programming assignments and HWs except for the final project where you can have a partner You are encouraged to ask questions, pretty much about anything related to programming 34

Student Commitments (Cont...) If you feel that you are falling behind Talk to the instructor as soon as possible When you get stuck with programming Ask the TA or the instructor for help Don t wait too long Please do not ask these questions in e-mails: Here is my understanding of X. Am I right? Is this correct? find a different way to ask I don t understand X. Could you explain X to me? if you attended lectures, you can ask this during office hours Here is what I am thinking of or doing... is it acceptable (or is this okay)? can you ask this during exams? 35

Study for Exams Exams mostly are based on lectures Although I reserve the right to ask anything from required reading Exam questions are often of the form "in N words or less, please give the best answer for the following question" you must choose your answer and put it at the beginning of your answer generic answer usually gets you very little partial credit better answer may get you more points Do not review all lectures only right before the exams otherwise, you may only be able to give generic answers because everything is a blur you need to show that you know the difference between answers of different quality 36

Things to Do Today CSCI 551, Fall 2006 Read class web page: http://merlot.usc.edu/cs551-f12 Check course description and reading list Click on a "request access" link from the class web page to get user ID and password to access protected part of the class web site you will also get your port assignment (TCP port numbers which you must use in your projects) in the same e-mail should do this even if you are not registered for the class but plan to take this class Check warmup project #1 spec and start coding 37

Course Content Credit CSCI 551, Fall 2006 Slides and course content have evolved over many years, with contributions from: Deborah Estrin Ramesh Govindan Christos Papadopoulos John Heidemann 38

Logging in to aludra/nunki SSH from a console (make sure to use "ssh -X -Y...") On Windows, use Xwin, Cygwin or PuTTY Ubuntu (Linux) Transferring Files SCP from a console SFTP/SCP programs Cyberduck, Fugu, etc. (Mac) FileZilla, WinSCP, etc. (Windows) Text Editors emacs, pico, vi Compiler g++ --version Brief Unix Demo 39