ICC Module Systems – Networks Information, Computation, and Communication Networks 1
ICC Module Systems – Networks Computer Networks 2
ICC Module Systems – Networks Outline § Communication protocols § Packet switching § Protocol structure and packet headers § Protocol modularization § Example: Internet protocols (TCP / IP) 3
ICC Module Systems – Networks A Communication Protocol § A set of rules that governs a communication 4
ICC Module Systems – Networks The Notion of a Protocol § All communication is governed by a protocol § Includes the communication between humans, i.e., ◦ Classrooms ◦ Over the telephone 5
ICC Module Systems – Networks Difference with Communication between Computers § A protocol between humans can be vaguely defined § A protocol between computers must be precise in all of its details 6
ICC Module Systems – Networks Outline § Communication protocols § Packet switching § Protocol structure and packet headers § Protocol modularization § Example: Internet protocols (TCP / IP) 7
ICC Module Systems – Networks Communication between Computers § The information arrives in bursts (periods of low volume followed by sudden high volumes of information) § When there is communication, the required bandwidth is very high, otherwise the bandwidth is 0. § Recall, bandwidth (computing) is the rate of data transfer, measure in bits per second (bit/s) bandwidth 8 time
ICC Module Systems – Networks Communication between Computers bandwidth ? Which bandwidth to choose? In any case, inefficient ? time 9
ICC Module Systems – Networks Packet Switching § We split the information in packets § We send them to the destination, a packet at a time § Model “Post Office” 10
ICC Module Systems – Networks Example: How to Send a File file to send decompose file into packets packet 3 packet 2 packet 1 packet 0 send packets one by one time 11
ICC Module Systems – Networks Example: How to Receive a File time packet3 packet2 packet1 packet0 receive packets one by one put packets together in order reconstruct original file 12
ICC Module Systems – Networks Packet Switching: Problems! § Packets may be lost on the way § Packets may arrive out of order § We will see later how to handle such cases 13
ICC Module Systems – Networks Packet Switching is Common in Protocols § Internet § Almost all computer networks § Internet telephone (e.g., Skype) § Protocol = the set of rules • E.g. WiFi, Ethernet, … 14
ICC Module Systems – Networks Outline § Communication protocols § Packet switching § Protocol structure and packet headers § Protocol modularization § Example: Internet protocols (TCP / IP) 15
ICC Module Systems – Networks A Protocol Example § Let’s say that computer A wants to: • send a packet to computer B • know if the packet has arrived 16
ICC Module Systems – Networks Principle of an Acknowledgement (ACK) § B sends a special-type packet called acknowledgement (ACK) to A § ACK means “OK, I received it” 17
ICC Module Systems – Networks Attention! § Computer A may mistake an acknowledgment packet for a data packet! § We must be able to distinguish between • the data packets, and • the acknowledgement packets § How to do that? • put in each packet info about its “type” 18
ICC Module Systems – Networks Inclusion of Packet Type type data type = data packet, acknowledgement packet 19
ICC Module Systems – Networks So… § What does A do when the acknowledgement does not arrive? 20
ICC Module Systems – Networks Retransmission Principle § After some time t, A retransmits the packet to B § Until an acknowledgement is received § After a number of attempts, A quits 21
ICC Module Systems – Networks Is this correct? § How does B know if a packet it received is • a retransmission, or • a new packet? § The packet has to be identified § We put in the packet a sequence number 22
ICC Module Systems – Networks Inclusion of a Sequence Number type seq# data seq# = 0, 1, 2, … 23
ICC Module Systems – Networks Addressing § A has to indicate that the packet is for B § A has to indicate that the packet comes from A § Put the addresses for A and B in the packet 24
ICC Module Systems – Networks Inclusion of Addressing recipient sender type seq# data 25
ICC Module Systems – Networks Contents of a Packet § Every packet consists of: • data, and • a header: type, a sequence number, size, address, sender and receiver, etc. header data 26
ICC Module Systems – Networks Transmission of a File in Packets file file to send decompose file into packets packet3 packet2 packet1 packet0 add headers and send packets one by one header 27
ICC Module Systems – Networks Receiving a File in Packets packet3 packet2 packet1 packet0 receive packets one by one remove headers and put data together in order reconstruct original file file 28
ICC Module Systems – Networks How does a Protocol Work? § During a packet transmission, the protocol… • receives the data • adds a header to each packet • transmits the packet § Receiving a packet, the protocol… • removes header from each packet • passes the data 29
ICC Module Systems – Networks Outline § Communication protocols § Packet switching § Protocol structure and packet headers § Protocol modularization § Example: Internet protocols (TCP / IP) 30
ICC Module Systems – Networks Modularization: the goal § A protocol can become very complicated § Modularization is a way to control this complexity 31
ICC Module Systems – Networks Modularization: What is it? § The protocol is divided in layers § Every layer has its own: • Function • Header • Software § The layers are placed one on top of another 32
ICC Module Systems – Networks Modularization: How does it Work? § Each layer exists on every computer § From a logical point of view • Communication between same-level layers § From a physical point of view • Communication between previous- and next-level layers within in the same computer • Except at level 1 33
ICC Module Systems – Networks Analogy § From a logical point of view • You talk to your friend § From a physical point of view • You speak into your mobile • Your friend listens into their mobile 34
ICC Module Systems – Networks How does it work? layer 5 layer 5 layer 4 layer 4 layer 3 layer 3 layer 2 layer 2 layer 1 layer 1 computer 1 computer 2 35
ICC Module Systems – Networks “Logical” Communication layer 5 layer 5 layer 4 layer 4 layer 3 layer 3 layer 2 layer 2 layer 1 layer 1 computer 1 computer 2 36
ICC Module Systems – Networks Physical Communication layer 5 layer 5 layer 4 layer 4 layer 3 layer 3 layer 2 layer 2 layer 1 layer 1 computer 1 computer 2 37
ICC Module Systems – Networks In Reality, it is More Complicated layer 5 layer 5 layer 4 layer 4 layer 3 layer 3 layer 3 layer 2 layer 2 layer 2 layer 1 layer 1 layer 1 computer 1 router computer 2 38
ICC Module Systems – Networks Principle of Encapsulation - Transmission § Each layer has its own header § Function of layer N: • Receives the packet coming from layer N+1 • (including the headers of layers N+1, N+2, …) • Puts a new header for its own layer § Layer N=1 transmits packet through network § Layer N>1 passes the packet to level N-1 39
ICC Module Systems – Networks Principle of Encapsulation - Transmission Application data layer 5 layer 4 layer 3 layer 2 layer 1 40
ICC Module Systems – Networks Principle of Encapsulation - Transmission Application data layer 5 h 5 data layer 4 layer 3 layer 2 layer 1 41
ICC Module Systems – Networks Principle of Encapsulation - Transmission Application data layer 5 h 5 data layer 4 h 4 h 5 data layer 3 layer 2 layer 1 42
ICC Module Systems – Networks Principle of Encapsulation - Transmission Application data layer 5 h 5 data layer 4 h 4 h 5 data layer 3 h 3 h 4 h 5 data layer 2 layer 1 43
ICC Module Systems – Networks Principle of Encapsulation - Transmission Application data layer 5 h 5 data layer 4 h 4 h 5 data layer 3 h 3 h 4 h 5 data layer 2 h 2 h 3 h 4 h 5 data layer 1 44
ICC Module Systems – Networks Principle of Encapsulation - Transmission Application data layer 5 h 5 data layer 4 h 4 h 5 data layer 3 h 3 h 4 h 5 data layer 2 h 2 h 3 h 4 h 5 data layer 1 h 1 h 2 h 3 h 4 h 5 data 45
ICC Module Systems – Networks Principle of Encapsulation - Reception § Layer N=1 receives the network packet § Layer N>1 receives the packet of layer N-1 § At every step, the N-th layer • Removes the N-th header • Passes the packet to level N+1 46
ICC Module Systems – Networks Principle of Encapsulation - Reception Application layer 5 layer 4 layer 3 layer 2 layer 1 h 1 h 2 h 3 h 4 h 5 data 47
ICC Module Systems – Networks Principle of Encapsulation - Reception Application layer 5 layer 4 layer 3 layer 2 h 2 h 3 h 4 h 5 data layer 1 h 1 h 2 h 3 h 4 h 5 data 48
Recommend
More recommend