Presentation is loading. Please wait.

Presentation is loading. Please wait.

Slides for Chapter 3: Networking and Internetworking From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, © Pearson.

Similar presentations


Presentation on theme: "Slides for Chapter 3: Networking and Internetworking From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, © Pearson."— Presentation transcript:

1 Slides for Chapter 3: Networking and Internetworking From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, © Pearson Education 2005

2 Internet Architecture The Design Philosophy of the DARPA Internet Protocols D. Clark, SIGCOMM 1998

3 Today’s Reading zConceptual Lessons yDesign principles/priorities were designed for a certain type of network. As the Internet evolves, we feel the sting of some of these choices. Examples: Commercialization yEngineering/Realization is key to testing an idea. zTechnical Lessons yPacket switching yFate Sharing/Soft state

4 Fundamental Goal z“technique for multiplexed utilization of existing interconnected networks” zMultiplexing (sharing) yShared use of a single communications channel zExisting networks (interconnection)

5 Fundamental Goal: Sharing zNo connection setup zForwarding based on destination address in packet zEfficient sharing of resources Tradeoff: Resource management potentially more difficult. Packet Switching

6 Type of Packet Switching: Datagrams zInformation for forwarding traffic is contained in destination address of packet zNo state established ahead of time (helps fate sharing) zBasic building block zMinimal assumption about network service Alternatives zCircuit Switching: Signaling protocol sets up entire path out-of-band. (cf. the phone network) zVirtual Circuits: Hybrid approach. Packets carry “tags” to indicate path, forwarding over IP zSource routing: Complete route is contained in each data packet

7 An Age-Old Debate zResource control, accounting, ability to “pin” paths, etc. It is held that packet switching was one of the Internet’s greatest design choices. Of course, there are constant attempts to shoehorn the best aspects of circuits into packet switching. Examples: Capabilities, MPLS, ATM, IntServ QoS, etc. Circuit Switching Packet Switching zSharing of resources, soft state (good resilience properties), etc.

8 Stopping Unwanted Traffic is Hard February 2000March 2006

9 Research: Stopping Unwanted Traffic zDatagram networks: easy for anyone to send traffic to anyone else…even if they don’t want it! Possible Defenses zMonitoring + Filtering: Detect DoS attack and install filters to drop traffic. zCapabilities: Only accept traffic that carries a “capability” cnn.com

10 “This set of goals might seem to be nothing more than a checklist of all the desirable network features. It is important to understand that these goals are in order of importance, and an entirely different network architecture would result if the order were changed.” The Design Goals of Internet, v1 zInterconnection/Multiplexing (packet switching) zResilience/Survivability (fate sharing) zHeterogeneity yDifferent types of services yDifferent types of networks zDistributed management zCost effectiveness zEase of attachment zAccountability These goals were prioritized for a military network. Should priorities change as the network evolves? Decreasing Priority

11 Fundamental Goal: Interconnection zNeed to interconnect many existing networks zHide underlying technology from applications zDecisions: yNetwork provides minimal functionality y“Narrow waist” Tradeoff: No assumptions, no guarantees. Technology Applications email WWW phone... SMTP HTTP RTP... TCP UDP… IP ethernet PPP… CSMA async sonet... copper fiber radio...

12 The “Curse of the Narrow Waist” zIP over anything, anything over IP yHas allowed for much innovation both above and below the IP layer of the stack yAn IP stack gets a device on the Internet zDrawback: very difficult to make changes to IP yBut…people are trying yNSF GENI project: http://www.geni.net/

13 Interconnection: “Gateways” zInterconnect heterogeneous networks zNo state about ongoing connections yStateless packet switches zGenerally, router == gateway zBut, we can think of your home router/NAT as also performing the function of a gateway Home Network Internet 192.168.1.51 192.168.1.52 68.211.6.120:50878 68.211.6.120:50879

14 Network Address Translation zFor outbound traffic, the gateway: yCreates a table entry for computer's local IP address and port number yReplaces the sending computer's non-routable IP address with the gateway IP address. yreplaces the sending computer's source port zFor inbound traffic, the gateway: ychecks the destination port on the packet yrewrites the destination address and destination port those in the table and forwards traffic to local machine

15 Goal #2: Survivability zNetwork should continue to work, even if some devices fail, are compromised, etc. zFailures on the Abilene (Internet 2) backbone network over the course of 6 months How well does the current Internet support survivability?

16 Goal #2: Survivability zReplication yKeep state at multiple places in the network, recover when nodes crash zFate-sharing yAcceptable to lose state information for some entity if the entity itself is lost Two Options Reasons for Fate Sharing zCan support arbitrarily complex failure scenarios zEngineering is easier Some reversals of this trend: NAT, Routing Control Platform

17 Goal #3: Heterogeneous Services zTCP/IP designed as a monolithic transport yTCP for flow control, reliable delivery yIP for forwarding zBecame clear that not every type of application would need reliable, in-order delivery yExample: Voice and video over networks yExample: DNS yWhy don’t these applications require reliable, in-order delivery? yNarrow waist: allowed proliferation of transport protocols

18 Goal #3b: Heterogeneous Networks zBuild minimal functionality into the network yNo need to re-engineer for each type of network z“Best effort” service model. yLost packets yOut-of-order packets yNo quality guarantees yNo information about failures, performance, etc. Tradeoff: Network management more difficult

19 Goal #4: Distributed Management zAddressing (ARIN, RIPE, APNIC, etc.) yThough this was recently threatened. zNaming (DNS) zRouting (BGP) Many examples: No single entity in charge. Allows for organic growth, scalable management. Tradeoff: No one party has visibility/control.

20 No Owner, No Responsible Party zHard to figure out who/what’s causing a problem zWorse yet, local actions have global effects… “Some of the most significant problems with the Internet today relate to lack of sufficient tools for distributed management, especially in the area of routing.”

21 Goal #5: Cost Effectiveness zPacket headers introduce high overhead zEnd-to-end retransmission of lost packets yPotentially wasteful of bandwidth by placing burden on the edges of the network Arguably a good tradeoff. Current trends are to exploit redundancy even more.

22 Goal #6: Ease of Attachment zIP is “plug and play” Anything with a working IP stack can connect to the Internet (hourglass model) zA huge success! yLesson: Lower the barrier to innovation/entry and people will get creative (e.g., Cerf and Kahn probably did not think about IP stacks on phones, sensors, etc.) zBut…. Tradeoff: Burden on end systems/programmers.

23 Goal #7: Accountability zNote: Accountability mentioned in early papers on TCP/IP, but not prioritized zDatagram networks make accounting tricky. yThe phone network has had an easier time figuring out billing yPayments/billing on the Internet is much less precise Tradeoff: Broken payment models and incentives.

24 What’s Missing? zSecurity zAvailability zAccountability (the other kind) zSupport for disconnected/intermittent operation zMobility zScaling z…z…

25 Today’s Reading zDesign Philosophy of the DARPA Internet Protocols. Dave Clark, 1988. zConceptual Lessons yDesign principles/priorities were designed for a certain type of network. As the Internet evolves, we feel the sting of some of these choices. Examples: Commercialization, yEngineering/Realization is key to testing an idea. zTechnical Lessons yPacket switching yFate Sharing/Soft state

26 Design Goal Shakeup zCost of bandwidth is dropping. IP networks are becoming a commodity. zManagement == Human intervention yCostly!! yHuman error a leading cause of downtime zMore bandwidth: are 40-byte headers still “big”?

27 Today’s Reading zDesign Philosophy of the DARPA Internet Protocols. Dave Clark, 1988. zConceptual Lessons yDesign principles/priorities were designed for a certain type of network. As the Internet evolves, we feel the sting of some of these choices. Examples: Commercialization, yEngineering/Realization is key to testing an idea. zTechnical Lessons yPacket switching yFate Sharing/Soft state

28 Clark’s Paper and This Course zFlexible architectures (Good Thing) leave a lot of "wiggle room". zTo determine whether something's going to work, it needs to be implemented/engineered.

29 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Networking Issues (1) z Performance: yLatency (time between send and start to receive) yData transfer rate (bits per second) yTransmission time = latency + length / transfer rate ySystem bandwidth, throughput: total volume of traffic in a given amount of time yUsing different channels concurrently can make bandwidth > data transfer rate ytraffic load can make bandwidth < data transfer rate ynetwork speed < memory speed (about 1000 times) ynetwork speed > disk speed (high-speed network file servers can beat local disks)

30 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Networking Issues (2) z scalability z reliability y corruption is rare ymechanisms in higher-layers to recover errors yerrors are usually timing failures, the receiver doesn't have resources to handle the messages z security yfirewall on gateways (entry point to org's intranet) yencryption is usually in higher-layers zmobility--communication is more challenging: locating, routing,... zquality of service--real-time services zmulticasting--one-to-many communication

31 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Types of Networks (1) zLocal Area Networks (LAN) yfloor/building-wide ysingle communication medium yno routing, broadcast ysegments connected by switches or hubs yhigh bandwidth, low latency yEthernet - 10Mbps, 100Mbps, 1Gbps yno latency guarantees (what could be the consequences?) yPersonal area networks (PAN) [ad-hoc networks]: blue tooth, infra-red for PDAs, cell phones, …

32 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Types of Networks (2) zMetropolitan Area Networks (MAN) ycity-wide, up to 50 km yDigital Subscriber Line (DSL):.25 - 8 Mbps, 5.5km from switch yCable modem: 1.5 Mbps, longer range than DSL

33 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Types of Networks (3) zWide Area Networks (WAN) yworld-wide yDifferent organizations yLarge distances yrouted, latency.1 -.5 seconds y1-10 Mbps (upto 600 Mbps)

34 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Types of Networks (4) zWireless local area networks (WLAN) yIEEE 802.11 (WiFi) y10-100 Mbps, 1.5km x 802.11 (1997): upto 2 Mbps, 2.4 GHz x 802.11a (1999): upto 54 Mbps, 5 GHz, 60 feet x 802.11b (1999): upto 11 Mbps, 2.4 GHz, 300 feet [most popular] x 802.11g (2003): upto 54 Mbps, 2.4 GHz [backward compatible with 802.11b, becoming more popular] zWireless metropolitan area networks (WMAN) yIEEE 802.16 (WiMax) y1.5-20 Mbps, 5-50km

35 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Types of Networks (5) zWireless wide area networks (WWAN) yworldwide yGSM (Global System for Mobile communications) y9.6 – 33 kbps y3G (“third generation”): 128-384 kbps to 2Mbps

36 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Types of Networks (6) zInternetworks yconnecting different kinds of networks yrouters, gateways

37 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network performance ExampleRangeBandwidth (Mbps) Latency (ms) Wired: LANEthernet1-2 km10-10001-10 MANATM250 km1-15010 WANIP routingworldwide.01-600100-500 InternetworkInternetworldwide0.5-600100-500 Wireless: WPANBluetooth (802.15.1)10 - 30m0.5-25-20 WLANWiFi (IEEE 802.11)0.15-1.5 km2-545-20 WMANWiMAX (802.16)550 km1.5-205-20 WWAN GSM, 3G phone netsworldwide0.01-2100-500

38 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (1) zPacket transmission ymessage: logical unit of informatio ypacket: transmission unit yrestricted length: sufficient buffer storage, reduce hogging

39 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (2) zData Streaming yaudio/video yNeed 120 Mbps (1.5 Mbps compressed) yplay time: the time when a frame need to be displayed yfor example, 24 frames per second, frame 48 must be display after two seconds yIP protocol provides no guaranteesIPv6 (new) includes features for real-time streams, stream data are treated separately yResource Reservation Protocol (RSVP), Real-time Transport Protocol (RTP)

40 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (3) zSwitching schemes (transmission between aribitrary nodes) yBroadcast: ethernet, token ring, wireless yCircuit switching: wires are connected yPacket switching: xstore-and-forward xdifferent routes x“store-and-forward” needs to buffer the entire packet before forwarding yFrame relay xSmall packets xLooks only at the first few bits xDon’t buffer/store the entire frame

41 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (4) zProtocols yKey components xSequence of messages xFormat of messages

42 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (5) zProtocol layers, why? Layer n Layer 2 Layer 1 Message sent Message received Communication medium SenderRecipient

43 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (6) zEncapsulation in layered protocols

44 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (7) zISO Open Systems Interconnection (OSI) model

45 OSI Model

46 zOpen Systems Interconnection (OSI) is a set of internationally recognized, non-proprietary standards for networking and for operating system involved in networking functions.

47 7 Layers 7. Application Layer 6. Presentation Layer 5. Session Layer 4. Transport Layer 3. Network Layer 2. Data Link Layer 1. Physical Layer All People Seem To Need Data Processing

48 Tasks involved in sending letter

49 LAYER 7 – The APPLICATION Layer zThe top layer of the OSI model zProvides a set of interfaces for sending and receiving applications to gain access to and use network services, such as: networked file transfer, message handling and database query processing

50 zThe application layer is responsible for providing services to the user.

51 LAYER 6 – The PRESENTATION Layer zManages data-format information for networked communications (the network’s translator) zFor outgoing messages, it converts data into a generic format for network transmission; for incoming messages, it converts data from the generic network format to a format that the receiving application can understand zThis layer is also responsible for certain protocol conversions, data encryption/decryption, or data compression/decompression zA special software facility called a “redirector” operates at this layer to determine if a request is network related on not and forward network- related requests to an appropriate network resource

52 zThe presentation layer is responsible for translation, compression, and encryption.

53 LAYER 5 – The SESSION Layer zEnables two networked resources to hold ongoing communications (called a session) across a network zApplications on either end of the session are able to ex hange data for the duration of the session zThis layer is: zResponsible for initiating, maintaining and terminating sessions zResponsible for security and access control to session information (via session participant identification) zResponsible for synchronization services, and for checkpoint services

54 zThe session layer is responsible for dialog control and synchronization.

55 LAYER 4 – The TRANSPORT Layer zManages the transmission of data across a network zManages the flow of data between parties by segmenting long data streams into smaller data chunks (based on allowed “packet” size for a given transmission medium) zReassembles chunks into their original sequence at the receiving end zProvides acknowledgements of successful transmissions and requests resends for packets which arrive with errors

56 zThe transport layer is responsible for the delivery of a message from one process to another.

57 LAYER 3 – The NETWORK Layer zHandles addressing messages for delivery, as well as translating logical network addresses and names into their physical counterparts zResponsible for deciding how to route transmissions between computers zThis layer also handles the decisions needed to get data from one point to the next point along a network path zThis layer also handles packet switching and network congestion control

58 zThe network layer is responsible for the delivery of individual packets from zthe source host to the destination host.

59 LAYER 2 – The DATA LINK Layer zHandles special data frames (packets) between the Network layer and the Physical layer zAt the receiving end, this layer packages raw data from the physical layer into data frames for delivery to the Network layer zAt the sending end this layer handles conversion of data into raw formats that can be handled by the Physical Layer

60 zThe data link layer is responsible for moving frames from one hop (node) to the next.

61 LAYER 1 – The PHYSICAL Layer zConverts bits into electronic signals for outgoing messages zConverts electronic signals into bits for incoming messages zThis layer manages the interface between the the computer and the network medium (coax, twisted pair, etc.) zThis layer tells the driver software for the MAU (media attachment unit, ex. network interface cards (NICs, modems, etc.)) what needs to be sent across the medium zThe bottom layer of the OSI model z

62 zThe physical layer is responsible for movements of zindividual bits from one hop (node) to the next.

63 Remember zA convenient aid for remembering the OSI layer names is to use the first letter of each word in the phrase: zAll People Seem To Need Data Processing

64

65 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (8) yInternet layers xApplication = application + presentation xTransport = transport + session

66 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (9) zPacket assembly yheader and data ymaximum transfer unit (MTU): 1500 for Ethernet y64K for IP (8K is common because of node storage) zports: destination abstraction (application/service protocol) zaddressing: transport address = network address + port yWell-known ports (below 1023) yRegistered ports (1024 - 49151) yPrivate (up to 65535)

67 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (10) zPacket delivery (at the network layer) y Datagram packet xone-shot, no initial set up xdifferent routes, out of order xEthernet, IP y Virtual circuit packet xinitial set up for resources xvirtual circuit # for addressing xATM zSimilar but different pairs of protocols at the transport layer (connection-oriented and connectionless)

68 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (11) zRouting yLAN? yRouting Algorithm xdecide which out-going link to forward the packet for circuit switching, the route is determined during the circuit setup time for packet switching, each packet is routed independently xupdate state of the out-going links yRouting Table xa record for each destination xfields: outgoing link, cost (e.g. hop count)

69 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (12) zRouter example Hosts Links or local networks A DE B C 1 2 5 4 3 6 Routers

70 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (13): Routing tables Routings from DRoutings from E ToLinkCostToLinkCost A B C D E 3 3 6 local 6 1 2 2 0 1 A B C D E 4 4 5 6 2 1 1 1 0 Routings from ARoutings from BRoutings from C ToLinkCostToLinkCostToLinkCost A B C D E local 1 1 3 1 0 1 2 1 2 A B C D E 1 2 1 4 1 0 1 2 1 A B C D E 2 2 5 5 2 1 0 2 1

71 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (14) zRouter information protocol (RIP) y"Bellman-Ford distance vector" algorithm ySender: send table summary periodically (30s) or changes to neighbors yReceiver: Consider A receives a table from B, A updates 1.A -> B -> … -> X: A updates--B has more up-to-date (authoritative) info 2.A -> not B -> … -> X: Does routing via B have a lower cost? 3.B -> … -> X: A does not know X 4.[B -> A -> … -> X]: A doesn’t update--A has more up-to-date info 5.Faulty link, cost is infinity yRIP-1 (RFC 1058) yMore recent algorithms xmore information, not just neighbors xlink-state algorithms, each node responsible for finding the optimum routes

72 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (15): Pseudocode for RIP routing algorithm zTl is the table local table; Tr is the received remote table Send: Each t seconds or when Tl changes, send Tl on each non-faulty outgoing link. Receive: Whenever a routing table Tr is received on link n: for all rows Rr in Tr { if (Rr.link != n) { // destination not routed via the receiver Rr.cost = Rr.cost + 1; Rr.link = n; if (Rr.destination is not in Tl) add Rr to Tl; // add new destination to Tl else for all rows Rl in Tl { if (Rr.destination = Rl.destination and (Rr.cost < Rl.cost or Rl.link = n)) Rl = Rr; // Rr.cost < Rl.cost : remote node has better route // Rl.link = n : remote node is more authoritative }

73 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Network principles (16) zCongestion control yhigh traffic load, packets dropped due to limited resources yreducing transmission rate: "choke packets" from sender to receiver

74 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Networking principles (17) zNetwork connecting devices yHubs: extending a segment of LAN (broadcast) ySwitches: switching traffic at data-link level (different segments of a LAN), making temporary hardware connections between two ports (or store and forward) [switches do not exchange info with each other] yRouters: routing traffic at IP level yBridges: linking networks of different types, could be routers as well

75 Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 4 © Pearson Education 2005 Networking principles (18) zTunneling ycommunicate through an "alien" protocol y“Hide” in the payload yIPv6 traffic using IPv4 protocols AB IPv6 IPv6 encapsulated in IPv4 packets Encapsulators IPv4 network


Download ppt "Slides for Chapter 3: Networking and Internetworking From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 4, © Pearson."

Similar presentations


Ads by Google