Lecture 1 IntroductionToday’s LectureCourse StaffCourse GoalsCourse FormatRecitation SectionsSounds Great! How Do I Get In?Administrative StuffGradingPolicy on CollaborationPolicy on Late Work and RegradingThis WeekWhat Is a Network?Networks Juggle Many GoalsChallenges for NetworksHow to Draw a NetworkBuilding block: The LinksPowerPoint PresentationMultiplexing!Circuit SwitchingSlide 21Circuit Switching 2Circuit Switching DiscussionPacket Switching (our emphasis)Statistical MultiplexingLocal Area Networks (LANs)Wide Area Networks“The Internet”Challenges of the InternetImplementing Packet-Switched NetworksRoutingNetwork Service ModelUsing NetworksUsing Networks SecurelyApplications1Lecture 1IntroductionDavid AndersenSchool of Computer ScienceCarnegie Mellon University15-441 Networking, Spring 2008http://www.cs.cmu.edu/~dga/15-441/S08/2Today’s LectureCourse outline and goals.Whirlwind Tour of Networking ™3Course StafInstructors»David Andersen–<[email protected]> , Wean Hall 8206»Peter Steenkiste–<[email protected]>, Wean Hall 8202Teaching assistants:»Xi Liu - [email protected] - »Dan Perkins - [email protected] - TBA»Xin Zhang - [email protected] -4Course GoalsBecome familiar with the principles and practice of data networking.»Routing, transport protocols, naming, ...Learn how to write networked applications:»An IRC server»A peer-to-peer file transfer programGet some understanding about network internals in a hands on way.»You’ll implement a routing protocol for your IRC server»TCP-style congestion control5Course Format~30 lectures»Cover the “principles and practice”»Readings are posted beforehand4 homework assignments»“Paper”: Do you understand and can you apply the material?»Feedback to students and instructors»“Lab”: Illustrate networking conceptsMid-term and final.2 programming projects.»How to use and build networks / networked applications»Application layer; include key ideas from kernel»Larger, open-ended group projects. Start early!6Recitation SectionsKey 441 objective: system programmingDifferent from what you’ve done before!»Low level ( C )»Often designed to run indefinitely. Handle all errors!»Must be secure»Interfaces specified by documented protocols»Concurrency involved (inter and intra-machine)»Must have good test methodsRecitations address this»“A system hackers’ view of software engineering”»Practical techniques designed to save you time & pain!7Sounds Great!How Do I Get In?Currently 86 people are enrolled, and no people are on the waiting list.»Cool.»We’ll update more if we end up with a waitlist due to unexpected, sudden popularity because the class is just that cool.But just to be sure:»If you do not plan to take the course, please drop it within a reasonable amount of time»And if you do, please make sure you’re registered!–We’d like a reasonable headcount–Lets us use the online roster to create your logins/etc. for assignments8Administrative StufWatch the course web page.»Handouts, readings, ..Read courses bboards.»“Announce” for official announcements»“General” for questions/answersOffice hours posted on web page.Course secretary»Barbara Grandillo, Wean Hall 8018Office hours this week by email / appointment»Final office hours posted ThursdayBooks – have people gone to the bookstore? How many copies? Should be there…9GradingRoughly equal weight in projects and testing on course contents.20% for Project I 25% for Project II 15% for Midterm 25% for Final exam 15% for HomeworksYou need to demonstrate competence in both projects and tests to pass the course. Don’t fail any component.10Policy on CollaborationWorking together is important.»Discuss course material in general terms»Work together on program debugging, ..Parts must be your own work»Homeworks, midterm, finalProjects: Teams of two»Collaboration, group project skills»Both students should understand the entire projectWeb page has details.Things we don’t want to have to say: We run projects through several cheat-checkers against all previously and concurrently handed in versions…11Policy on Late Work andRegrading No assignments with a “short fuse”.»Homeworks: ~1 week»Projects: ~5 weeksLate work will receive a 10% penalty/day.»No penalty for a limited number of handins - see web page»No assignment can be more than 2 days lateOnly exception is documented illness and family emergenciesStart on time!»Every year some students discover that a 4 week project cannot be completed in a weekRequests for regrading must be submitted in writing with course secretary within 2 weeks.»Regrading will be done by original grader12This WeekIntro – what’s this all about?Protocol stacks and layeringNext week? Applications and Network programming review.»Socket programming (213 review++)»Recitations start next week: Project management (SVN, etc.)Course outline:»Low-level (physical, link, circuits, etc.) »Internet core concepts (addressing, routing, DNS)»Advanced topicsOn to the good stuff…13What Is a Network?Collection of nodes and links that connect themThis is vague. Why? Consider different networks:»Internet»Andrew»Telephone»Your house»Others – sensor nets, cell phones, …Focus on Internet, but understand important common issues and challenges14Networks Juggle Many GoalsEfficiency – resource use; costThe “ilities”:»Evolvability»Managability»Security (securability, if you must)»Ease of:–Creation–Deployment–Management–Creating useful applications»Scalability15Challenges for NetworksGeographic scope»The Internet vs. Andrew, etc.Scale»The Internet vs. your home networkApplication types»Email vs. VideoconferencingTrust and Administration»Corporate network – one network “provider”»Internet – 17,000 network providers16How to Draw a NetworkNode Link Node17Building block: The LinksElectrical questions»Voltage, frequency, …»Wired or wireless?Link-layer issues: How to send data? »When to talk – can everyone talk at once?»What to say – low-level format?»Stay tuned for lecture 5Okay… what about more nodes?Node Link Node18… But what if we want more hosts?Scalability?!One wireWires for everybody!19Multiplexing!Need to share network resourcesHow? Switched network»Party
View Full Document