15-441 Computer NetworkingToday’s LectureInstructorsCourse GoalsCourse FormatRecitation SectionsSounds Great! How Do I Get In?Administrative StuffGradingPolicy on CollaborationLate Work and RegradingThis WeekWhat is the Objective of Networking?What Is a Network?How to Draw a NetworkBasic Building Block: LinksSlide 17Local Area Networks (LANs)MultiplexingBack in the Old Days…Circuit SwitchingCircuit Switching DiscussionPacket Switching (our emphasis)Packet Switching – Statistical MultiplexingNetworks Juggle Many GoalsChallenges for NetworksInternetChallenges of the InternetSlide 30Internet DesignHow To Find Nodes?NamingRoutingNetwork Service ModelWhat if the Data gets Corrupted?What if Network is Overloaded?What if the Data gets Lost?What if the Data Doesn’t Fit?What if the Data is Out of Order?Networks [including end points] Implement Many FunctionsMeeting Application DemandsNext Lecture15-441 Computer NetworkingLecture 1 – Introduction1Today’s Lecture•Administrivia•Whirlwind tour of networking2Instructors•Instructors.•Srini Seshan•[email protected], Gates Hall 8123•Seth Goldstein•[email protected], Gates Hall 7111•Teaching assistants.•Kaushik Lakshminarayanan•Rui Meireles•Dae Gun Won•[email protected] course staff•Please use this instead of emailing just one of us!3Course Goals•Become familiar with the principles and practice of data networking•Routing, transport protocols, naming, ...•Learn how to write applications that use the network•An IRC server•A peer-to-peer file transfer program•Get some understanding about network internals in a hands-on way•You’ll implement a routing protocol for your IRC server•TCP-style congestion control4Course Format•~30 lectures•Cover the “principles and practice”•Complete readings before lecture•4 homework assignments•“Paper”: Do you understand and can you apply the material?•“Lab”: Illustrate networking concepts•Loosely tied to lecture materials•Teach networking concepts/tools•3 programming projects•How to use and build networks / networked applications•Application-layer programming; include key ideas from kernel•Larger, open-ended group projects. Start early!•Midterm and final•Covers each of the above 3 parts of class5Recitation Sections•Key 441 objective: system programming•Different 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 methods•Recitations address this•“A system hackers’ view of software engineering”•Practical techniques designed to save you time & pain!6Sounds Great!How Do I Get In?•Currently 76 people are enrolled, and 33 people are on the waiting list.•If you do not plan to take the course, please drop it ASAP so somebody else can take your place!•We give preference to:1.Students attending class (sign in sheet)7Administrative Stuff•Watch the course web page•http://www.cs.cmu.edu/~srini/15-441/S10/•Handouts, readings, ..•Read bboards•academic.cs.15-441[.announce] for official announcements•cyrus.academic.cs.15-441.discuss for questions/answers•Office hours posted on web page•By appointment this week•Course secretary•Angela Miller, Gates 91188Grading•Roughly equal weight in projects and testing•45% for Project I, II and III•15% for Project II •15% for Midterm exam•25% for Final exam •15% for Homework•You MUST demonstrate competence in both projects and tests to pass the course•Fail either and you fail the class!9Policy on Collaboration•Working together is important•Discuss course material in general terms•Work together on program debugging, ..•Final submission must be your own work•Homeworks, midterm, final•Projects: Solo (P1) + Teams of two (P2,P3)•Collaboration, group project skills•Both students should understand the entire project•Web 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…10Late Work and Regrading•Late work will receive a 15% penalty/day•No assignment can be more than 2 days late•No penalty for a limited number of handins - see web page•Only exception is documented illness and family emergencies•Requests for regrading must be submitted in writing to course secretary within 2 weeks.•Regrading will be done by original grader•No assignments with a “short fuse”•Homeworks: ~1-2 weeks•Projects: ~5 weeks•Start on time!•Every year some students discover that a 5 week project cannot be completed in a week11This Week•Intro – what’s this all about?•Protocol stacks and layering•Recitations start this week: Socket programming (213 review++)•On to the good stuff…Whirlwind tour of networking•Course outline:•Low-level (physical, link, circuits, etc.) •Internet core concepts (addressing, routing, DNS)•Advanced topics12What is the Objective of Networking?•Enable communication between applications on different computers•Web (Lecture 22)•Peer to Peer (Lecture 23)•Audio/Video (Lecture 20)•Funky research stuff (Lecture 27)•Must understand application needs/demands (Lecture 3)•Traffic data rate•Traffic pattern (bursty or constant bit rate)•Traffic target (multipoint or single destination, mobile or fixed)•Delay sensitivity•Loss sensitivity13What Is a Network?•Collection of nodes and links that connect them•This is vague. Why? Consider different networks:•Internet•Andrew•Telephone•Your house•Others – sensor nets, cell phones, …•Class focuses on Internet, but explores important common issues and challenges14How to Draw a NetworkNode Link Node15Basic Building Block: Links•Electrical questions•Voltage, frequency, …•Wired or wireless?•Link-layer issues: How to send data? •When to talk – can either side talk at once?•What to say – low-level format?•Lecture 5•Okay… what about more nodes?Node Link Node16Basic Building Block: Links•… But what if we want more hosts? (Lectures 6 & 7)•Scalability?!One wireWires for everybody!17Local Area Networks (LANs)•Benefits of being “local”:•Lower cost•Short distance = faster links, low latency•Efficiency less pressing•One management domain•More homogenous•Examples:•Ethernet (Lecture
View Full Document