CORNELL CS 4410 - Introduction to Networking

Unformatted text preview:

Introduction to NetworkingAnnouncementsGoals for todayCentralized vs Distributed SystemsDistributed SystemsWhy use distributed systems?Distributed Systems: IssuesDistributed Systems GoalsSoftware ConceptsSome ApplicationsFew ChallengesNetworkingInternet: ExampleInternet: Locating ResourceInternet: ConnectionInternet: End-to-endInternet: PacketsInternet: BitsInternet: Points to rememberInternet : ChallengesConcepts at heart of the InternetProtocolLayered ArchitecturesLayered ArchitectureThe OSI ModelOSI LevelsSlide 27The ISO Network MessageThe Internet Protocol LayersInternet protocol stackAir travelProtocol stackProtocol interfacesSocketAddressingSlide 36Slide 37Slide 38Protocol encapsulationEnd-to-End ArgumentSlide 41Slide 42Two ways to handle networkingCircuit SwitchingPacket SwitchingRoutingPacket vs. Circuit SwitchingA small InternetPacket forwardingSummary (1/2)Summary(2/2)Introduction to Networking2Announcements•Homework 4 due today, Thursday, October 30th•Prelim II will be Thursday, November 20th, in class•Nazrul will teach next two Tuesday’s, November 4th and 11th–Make sure to attend class and to vote Nov 4th3Goals for today•Introduction to Networking–Motivated by distributed systems•Overview–Layered Architecture–ISO and Internet Protocols –Addressing –Routing–Circuit vs Packet Switching4Centralized vs Distributed Systems•Centralized System: System in which major functions are performed by a single physical computer–Originally, everything on single computer–Later: client/server model•Distributed System: physically separate computers working together on some task–Early model: multiple servers working together•Probably in the same room or building•Often called a “cluster”–Later models: peer-to-peer/wide-spread collaborationServerClient/Server ModelPeer-to-Peer Model5Distributed SystemsDefinition:Loosely coupled processors interconnected by network•Distributed system is a piece of software that ensures:–Independent computers appear as a single coherent system•Lamport: “A distributed system is a system where I can’t get my work done because a computer that I’ve never heard of has failed”6Why use distributed systems?•These are now a requirement:–Economics dictate that we buy small computers–Cheap way to provide reliability–We all need to communicate–It is much easier to share resources–Allows a whole set of distributed applications–A whole set of future problems need machine communication•Collaboration: Much easier for users to collaborate through network resources (such as network file systems)–…7Distributed Systems: Issues•The promise of distributed systems:–Higher availability: one machine goes down, use another–Better durability: store data in multiple locations–More security: each piece easier to make secure •Reality has been disappointing–Worse availability: depend on every machine being up•Lamport: “a distributed system is one where I can’t do work because some machine I’ve never heard of isn’t working!”–Worse reliability: can lose data if any machine crashes–Worse security: anyone in world can break into system•Coordination is more difficult–Must coordinate multiple copies of shared state information (using only a network)–What would be easy in a centralized system becomes a lot more difficult8Distributed Systems Goals•Connecting resources and users•Transparency: the ability of the system to mask its complexity behind a simple interface–Location: Can’t tell where resources are located–Migration: Resources may move without the user knowing–Replication: Can’t tell how many copies of resource exist–Concurrency: Can’t tell how many users there are–Parallelism: System may speed up large jobs by splitting them into smaller pieces–Fault Tolerance: System may hide various things that go wrong in the system•Openness: portability, interoperability•Scalability: size, geography, administrative•Transparency and collaboration require some way for different processors to communicate with one another9Software ConceptsSystem Description Main GoalDistributed OS Tightly coupled OS for multiprocessors and homogeneous m/csHide and manage hardware resourcesNetworked OS Loosely coupled OS for heterogeneous computers, LAN/WANOffer local services to remote clientsMiddleware Additional layer atop NOS implementing general-purpose servicesProvide distribution transparencyLocal OS Local OS Local OSMiddlewareDistributed ApplicationsNetworkMachine AMachine BMachine C10Some Applications•Air traffic control•Banking, stock markets•Military applications•Health care, hospital automation•Telecommunications infrastructure•E-commerce, e-cash•…11Few Challenges•No shared clocks–How to order events•No shared memory–Inconsistent system state•Scalability•Fault tolerance–Availability, recoverability•Consensus•Self management•Security12Networking•Middleware gives guarantees not provided by networking•How do you connect computers?–Local area network (LAN)–Wide area network (WAN)•Let us consider the example of the Internet13Internet: Example•Click -> get page•specifies - protocol (http) - location (www.cnn.com)14Internet: Locating Resource•www.cnn.com –name of a computer –Implicitly also a file (index.html)•Map name to internet protocol (IP) address–Domain name system (DNS)host localcomcnn.com?cnn.com?a.b.c.da.b.c.d15Internet: Connection•Http (hyper-text transport protocol) sets up a connection –TCP connection (transmission control protocol) –between the host and cnn.com to transfer the page•The connection transfers page as a byte stream –without errors: flow control + error controlHost www.cnn.comConnectOKGet pagePage; close16Internet: End-to-end•Byte stream flows end to end across many links/switches:–routing (+ addressing)•That stream is regulated and controlled by both ends:–retransmission of erroneous or missing bytes; flow controlHOSTCNN.COMend-to-end pacing and error controlrouting17Internet: Packets•The network transports bytes grouped into packets•Packets are “self-contained”; routers handle them 1 by 1•The end hosts worry about errors and pacing–Destination sends ACKs; Source checks lossesCHOST: BCNN.COM: AA | B | # , CRC | bytesB: toC18Internet: Bits•Equipment in each node sends packets as string of bits•That equipment is not aware of the meaning of the bits•Frames


View Full Document

CORNELL CS 4410 - Introduction to Networking

Download Introduction to Networking
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Introduction to Networking and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Introduction to Networking 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?