Slide 1Slide 2Slide 3Slide 4Slide 5Slide 6Slide 7Slide 8Slide 9Slide 10Slide 11Slide 12Slide 13Slide 14Slide 15Slide 16Slide 17Slide 18Slide 19Slide 20Slide 21Slide 22Slide 23Slide 24Slide 25Slide 26Slide 2715-441, S'06- 1 -ReviewMay 3, 2006Dave EckhardtDave EckhardtPeter SteenkistePeter SteenkisteL27_Review15-441Computer Networks15-441, S'06- 1 -SynchronizationP3 “interviews”P3 “interviews”We will focus on groups with issuesIf you don't hear from us, that's good newsDon't forget aboutDon't forget aboutHomework 4 – due Friday, no extensionsLab assignmentPlease try logging in early ExamExamClosed-book, closed-notesSee final exam schedule for official time & place15-441, S'06- 1 -SynchronizationFaculty evaluationFaculty evaluationDid you get the reminder e-mails?About today's “review”About today's “review”More “reminders” than “course outline”Un-mentioned topic implies “text & lectures straightforward”Reading some of the textbook is advisable!Web site “reading list” has been updated15-441, S'06- 1 -“Conceptual” TopicsWe We couldcould ask a question... ask a question......we would give you guidance/refresh your memoryExamplesExamplesZigBeeBitTorrentPGP15-441, S'06- 1 -“Core” TopicsWe expect solid masteryWe expect solid masteryExamplesExamplesIP, TCP, routing (you built these!)Layer responsibilities, challenges, techniquesKey problems, how to address them, parameters, relationshipsLatency, loss, corruption, congestionKey conceptsAddress spaces (including mapping), connectionKey approachesTrees/graphs, backoff, fragmentation, multiplexing15-441, S'06- 1 -Core “Mid-term” ConceptsStacks, LayeringStacks, LayeringSocket programmingSocket programmingExperience: what's a protocol?Experience: what's a protocol?Link-layer issuesLink-layer issuesMedium Access ControlInterconnection: switching, bridgingIPIPAddressing, forwardingRouters and routingRouters and routingThree approaches for two domains15-441, S'06- 1 -“More IP”NATNATWhat, whyTunnelingTunnelingWhat, whyIPv6IPv6Goals, techniquesNetwork management/monitoringNetwork management/monitoringIP MulticastIP MulticastRecall: first-cut design, not widely deployedConcepts: service model, scope, membership, routing15-441, S'06- 1 -“Putting Things Together”Three names for your PCThree names for your PCWhat/who is a name for?Other questions about namesTwo resolution (mapping) protocolsTwo resolution (mapping) protocolsDNS, ARPSame conceptual job, different approachesTurning on (DHCP)Turning on (DHCP)15-441, S'06- 1 -Virtual Circuits, ATMPacket switching versus circuit switchingPacket switching versus circuit switchingWhat (analogy: letter vs. phone call)Why (tradeoffs)?““Real” versus “virtual” circuitsReal” versus “virtual” circuitsNature of v-c forwardingATMATMGoals, origins, layersPer-hop addressing and label swappingVirtual circuits vs. virtual pathsAdaptation layers, IP over ATM, LAN over ATMTraffic classes, signalling, fair share15-441, S'06- 1 -SONET““Industrial strength” networkIndustrial strength” networkStrong support for legacy telco voice connectionsIntegration of high-speed data trafficFraming, multiplexing, add/dropFraming, multiplexing, add/dropRings and healingRings and healingPoSPoS15-441, S'06- 1 -MPLS““IP Switching” over ATMIP Switching” over ATM“Cache” multiple hops of next-hop lookup via v-c setupFor “thin flows” or aggregatesAcceleration/fall-backGeneralization to “tag switching”Generalization to “tag switching”Tag stacking conceptMPLS realizationPer-flow QoS (in theory)Policy-based “traffic engineering” (in practice)15-441, S'06- 1 -Transport/UDP/TCPInternet architecture history & principlesInternet architecture history & principlesWhy do we have TCP and UDP?Hourglass modelWhat's a transport protocol?What's a transport protocol?Layering, dutiesUDP as a simple exampleUDP as a key Internet protocolThe “byte stream” modelThe “byte stream” modelTCPTCPSetup, transmission, teardownNagle, sockets15-441, S'06- 1 -More TCPConnection management detailsConnection management detailsMore setupTeardownReliability and Error ControlReliability and Error ControlNetwork threatsTechniques – Acknowledgement and timeoutsStop&wait versus sliding-windowAcknowledgement stylesSizes (sequence numbers; windows)RTT estimationFlow controlTCP transmission flow of events15-441, S'06- 1 -Wireless/MobilityBackgroundBackgroundWhat's special about wireless?Threats and responsesMedium Access Control (again)»Problems, RTS/CTSRouting isn't so easy802.11802.11People will expect you to know something about thisNot 802.11Not 802.11Cellular, WiMax, Bluetooth, ZigBeeRemember goals/concepts/outcomesNot responsible for specific numbers (b/s, Ghz)15-441, S'06- 1 -Congestion ControlThe ProblemThe ProblemNot an end-to-end problem (flow control) – “middle problem”Buffering, congestion, congestion collapseOpen-loop, closed-loopEndpoint contributions – adaptationFairness models, WFQFairness models, WFQCongestion control examplesCongestion control examplesDECbit, ATM, packet-pair probingTCP (intro)“Slow” start, packet-pacing, “fast retransmit”15-441, S'06- 1 -TCP Congestion ControlImplementationImplementationHard questionsHard questionsMultiple/many losses per windowTCP flavorsTCP flavorsTahoe, Reno, NewRenoDeciding when to send a packetDeciding when to send a packetWhy TCP-style congestion control worksWhy TCP-style congestion control worksIssues – fairness, performanceIssues – fairness, performanceREDRED15-441, S'06- 1 -“Other Transports”TCP options/extensionsTCP options/extensionsWindow scalingECN – marking, loopbackTCP conformance (aka “TCP-friendly”) notionTCP conformance (aka “TCP-friendly”) notionRPCRPCReliability, flow/congestion control, semanticsStreaming audio/videoStreaming audio/video(requirements)15-441, S'06- 1 -Quality of ServicePerformance vs. SatisfactionPerformance vs. SatisfactionApplications have their own mapping functionsQoS is “desirable unfairness”QoS is “desirable unfairness”Key componentsKey componentsAdmission controlTraffic classification/shaping/enforcement“Token bucket” conceptSchedulingATM model,
View Full Document