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 27Slide 28Slide 29Slide 30Slide 31Slide 32Slide 33Slide 34Slide 35Slide 36Slide 37Slide 38Communication Management and Distributed Processing, Chapter 13Communication componentsnetwork: a set of computers connected by communication links Intranet : local area networks (LAN), in the same administrative domainInternet: wide area networks (WAN), collection of interconnected networks across administrative domainsSystem area networks (SAN): distributed systemsCommunication rules: protocolsCircuit vs. Packet switchingCircuit switchingexample: telephonyresources are reserved and dedicated during the connectionPacket switchingexample: internetentering data divided into packetspackets in network share resourcesVirtual circuit: cross between circuit switching and packet switchingConnection vs. Connectionlessconnection-oriented services: sender and receiver maintains a connection (using circuit switching for example)connectionless protocols: sender transmits each message when it is ready (similar to the mail system)a connection-oriented service can be implemented on top of a packet-switch networkProtocol Architecturein the network, computers must agree on the syntax (data format) and the semantics (data interpretation) of communicationcommon approach: protocol functionality is distributed in multiple modules (layers) which are stackedlayer N provides services to layer N+1, and relies on services of layer N-1communication is achieved by having similar layers at both end-points which understand each otherISO/OSI protocol stack“officially”: seven layersin practice four: application, transport, network, data link / physicalapplicationtransportnetworkdata link/physicalapplicationtransportnetworkdata link/physicalpacket formatdatadata link hdr nethdrtransphdrapplhdrApplication Layerprocess-to-process communicationsupports application functionalityexamplesfile transfer protocol (FTP)simple mail transfer protocol (SMTP)hypertext transfer protocol (HTTP)user can add other protocols, for example a distributed shared memory protocolTransport Layertransmission control protocol (TCP)provides reliable byte stream service using retransmissionflow controlcongestion controluser datagram protocol (UDP)provides unreliable unordered datagram serviceNetwork LayerInternet protocol (IP)understands the host addressresponsible for packet deliveryprovides routing function across the networkbut can lose or misorder packetsData Link/Physical Layercomes from the underlying networkphysical layer: transmits 0s and 1s in the wiredata link layer: groups bits into frames and does error control using checksum + retransmission examplesEthernet ATMMyrinetphone/modemInternet hierarchyEthernet ATMmodemIPTCP UDPFTPHTTPFingerSVMdata link layernetwork layertransport layerapplication layerThe Network Layer: IPaddressing: how hosts are namedservice model: how hosts interact with the network, what is the packet formatrouting: how a route from source to destination is chosenIP AddressingAddressesunique 32-bit address for each host (128-bit in IPv6)dotted-decimal notation: 128.112.102.65three address formats: class A, class B and class CIP to physical address translationnetwork hardware recognizes physical addressesAddress Resolution Protocol (ARP) to obtain the translationeach host caches a list of IP-to-physical translation which expires after a whileARP hosts broadcast a query packet asking for a translation for some IP addresshosts which know the translation reply each host knows its own IP and physical translationreverse ARP (RARP) translates physical to IP and it is used to assign IP addresses dynamicallyIP packetIP transmits data in variable size chunks: datagramsmay drop, reorder or duplicate datagramseach network has a Maximum Transmission Unit (MTU): which is the largest packet it can carryif packet is bigger than MTU it is broken into fragments which are reassembled at destination IP packet format: source and destination addresses (128-bit in IPv6)time to live: decremented on each hop, packet dropped when TTL=0fragment information, checksum, other fieldsIP routingeach host has a routing table which says where to forward packets for each network, including a default routerhow the routing table is maintained: two-level approach: intra-domain and inter-domainintra-domain : many approaches, ultimately call ARPinter-domain: Boundary Gateway Protocol (BGP):each domain designates a “BGP speaker” to represent itspeakers advertise which domain they can reachrouting cycles avoidedTransport LayerUser Datagram Protocol (UDP): connectionlessunreliable, unordered datagramsthe main difference from IP: IP sends datagrams between hosts, UDP sends datagrams between processes identified as (host, port) pairsTransmission Control Protocol: connection-orientedreliable; acknowledgment, timeout and retransmissionbyte stream delivered in order (datagrams are hidden)flow control: slows down sender if receiver overwhelmedcongestion control: slows down sender if network overwhelmedTCP: Reliable communicationeach packet carries a sequence numbersequence number: last byte of data sent before this packeteach packet also carries an acknowledge sequence number: first byte of data not yet receivedno distinction between data and ack packetsTCP keeps an average round-trip transmission time (RTT)timeout if no ack received after twice the estimated RRT and resend data starting from the last ackpossible improvements:ignore retransmitted packets when estimate RTTdouble timeout on retransmissionTCP: Connection SetupTCP is a connection-oriented protocolthree-way handshake:client sends a SYN packet: “I want to connect”server sends back its SYN + ACK: “I accept”client acks the server’s SYN: “OK”TCP: Sliding Window optimum transmission performance requires keeping the pipe fullnetwork capacity is equal to latency-bandwidth productsliding window: how much data to send without ackoptimum window size is the network capacitysliding
View Full Document