Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Computer Networks and Communications [Δίκτυα Υπολογιστών και Επικοινωνίες] Lectures 4-7: What is the Internet? (2) Univ. of the Aegean Financial and.

Similar presentations


Presentation on theme: "1 Computer Networks and Communications [Δίκτυα Υπολογιστών και Επικοινωνίες] Lectures 4-7: What is the Internet? (2) Univ. of the Aegean Financial and."— Presentation transcript:

1 1 Computer Networks and Communications [Δίκτυα Υπολογιστών και Επικοινωνίες] Lectures 4-7: What is the Internet? (2) Univ. of the Aegean Financial and Management Engineering Dpt Petros KAVASSALIS

2 2 What you will learn in this course A set of fundamental concepts for understanding Data Networks and the Internet A set of fundamental concepts for understanding Data Networks and the Internet  What is the Internet?  Internet architecture and layers  Internet applications and services  New concepts in the evolution of the Internet  The Internet goes Wireless… Familiarization with the structure and organization of Digital Networks Familiarization with the structure and organization of Digital Networks  Business and Social Networks  Electronic Markets and Online Feedback Mechanisms

3 3 Who am I? PhD in Economics and Management (Univ. Paris Dauphine & Ecole polytechnique) PhD in Economics and Management (Univ. Paris Dauphine & Ecole polytechnique) Research experience Research experience  Ecole polytechnique, Paris  MIT Center of Technology Policy and Industrial Development, MIT CTPID (MIT Internet Telecommunications Convergence Consortium) Current positions Current positions  Univ. of the Aegean (FME): Assoc. Professor  RACTI: Director of ATLANTIS Group

4 4 Communication tools e-mail: pkavassalis [at] atlantis-group.gr e-mail: pkavassalis [at] atlantis-group.gr Course web site: see fme website Course web site: see fme website

5 5 Course Textbook [http://books.google.gr/books?id=Pd- z64SJRBAC&dq=tanenbaum+networks&printsec=frontcover&source=bn&hl=el&ei=ml- dSfH9L4S2jAeJ5L3ZBQ&sa=X&oi=book_result&resnum=4&ct=result]

6 Supplementary Texts & References William Stallings, Computer Networking with Internet Protocols, Prentice Hall, 2004 William Stallings, Computer Networking with Internet Protocols, Prentice Hall, 2004 William Stallings, Computer Networking with Internet Protocols, Prentice Hall, 2004 William Stallings, Computer Networking with Internet Protocols, Prentice Hall, 2004 James F. Kurose and Keith W. Ross, Computer Networking: A Top-Down Approach, Addison-Wesley, 2008 James F. Kurose and Keith W. Ross, Computer Networking: A Top-Down Approach, Addison-Wesley, 2008 James F. Kurose and Keith W. Ross, Computer Networking: A Top-Down Approach, Addison-Wesley, 2008 James F. Kurose and Keith W. Ross, Computer Networking: A Top-Down Approach, Addison-Wesley, 2008 6

7 7 Students evaluation Class Participation (20%) Class Participation (20%)+ Assignments (20%) Assignments (20%)+ Final Exam (60%) Final Exam (60%)

8 Reminder (1): Overview of the Internet Petros KAVASSALIS 8 The structure of the Internet is roughly hierarchical

9 Reminder (2): Transmission of packets When a process on some host has a message to be sent to a process on some other host: When a process on some host has a message to be sent to a process on some other host:  The sending host first cuts the message into packets, each one bearing its number in the sequence  These packets are then injected into the network one at a time in quick succession  The packets are transported individually over the network and deposited at the receiving host, where they are reassembled into the original message and delivered to the receiving process Petros KAVASSALIS 9

10 Routing of packets Routing decisions are made locally Routing decisions are made locally  When a packet arrives at router A,itis up to A to decide if this packet should be sent on the line to B or the line to C  How A makes that decision is called the routing algorithm. Petros KAVASSALIS 10

11 Probing the Internet The program begins by walking through the Domain Name System (DNS), The program begins by walking through the Domain Name System (DNS),  system that stores names for computers and then uses a program that tests to see whether the computer is currently online [I will come later] Tools used to probe the Internet are also available to users Tools used to probe the Internet are also available to users One of the simplest probing tools is a program known as ping: One of the simplest probing tools is a program known as ping:  Example: ping www.fme.aegean.gr/ www.fme.aegean.gr/  Example: ping www.nytimes.com www.nytimes.com The ping program sends a message to the specified computer and then waits a short time for a response. The ping program sends a message to the specified computer and then waits a short time for a response.  If a response arrives, ping reports to the user that the computer is alive  otherwise, ping reports that the computer is not responding Petros KAVASSALIS 11

12 An example of “ping” Please ping a website Please ping a website Petros KAVASSALIS 12

13 How to interpret “ping” Ping sends one request each second and produces one line of output for each response received Ping sends one request each second and produces one line of output for each response received The output tells the size of the packet received, the sequence number, and the round-trip time in milliseconds The output tells the size of the packet received, the sequence number, and the round-trip time in milliseconds When the user interrupts the program, ping produces a summary that specifies When the user interrupts the program, ping produces a summary that specifies  the number of packets sent and received  packet loss  and the minimum / mean / maximum round-trip times * But when no response is received, ping can neither help determine the reason nor to determine the cause of the problem * But when no response is received, ping can neither help determine the reason nor to determine the cause of the problem Petros KAVASSALIS 13

14 Tracing a route Traceroute used to determine the intermediate computers along the path to a remote destination Traceroute used to determine the intermediate computers along the path to a remote destination  Ex: traceroute www.aegean.gr www.aegean.gr Traceroute provides more information than ping Traceroute provides more information than ping Each line corresponds to each of intermediate computersand one corresponds to the final destination itself Each line corresponds to each of intermediate computersand one corresponds to the final destination itself Traceroute cannot be used for all destinations Traceroute cannot be used for all destinations  NW administrators may choose to disable it to prevent outsiders from obtaining detailed information about their architecture Petros KAVASSALIS 14

15 An example of “traceroute” Please try! Please try! Petros KAVASSALIS 15

16 How to interpret “traceroute” A treceroute table illustrates another features of traceroute: a report of packet loss A treceroute table illustrates another features of traceroute: a report of packet loss Traceroute sends three probes for each intermediate computer Traceroute sends three probes for each intermediate computer When the three responses arrive, traceroute prints the name of the intermediate computer, and gives the minimum, average, and maximum round-trip times. When the three responses arrive, traceroute prints the name of the intermediate computer, and gives the minimum, average, and maximum round-trip times. The line with asterisks indicates two of three probes received no response (i.e., packets were lost) The line with asterisks indicates two of three probes received no response (i.e., packets were lost) If all probes are going to be received successfully, we can conclude that the loss was a temporary condition probably caused by congestion on one of the paths between the source and destination If all probes are going to be received successfully, we can conclude that the loss was a temporary condition probably caused by congestion on one of the paths between the source and destination Petros KAVASSALIS 16

17 Reminder: How do loss and delay occur? Packets queue in router buffers Packets queue in router buffers  packet arrival rate to link exceeds output link capacity  packets queue, wait for turn Petros KAVASSALIS 17 A B packet being transmitted (delay) packets queueing (delay) free (available) buffers: arriving packets dropped (loss) if no free buffers

18 The Internet: change view IP (spanning-layer) separates information bitways from applications IP (spanning-layer) separates information bitways from applications Applications may work over multiple substrates (network techs) and these substrates do not pre- specify the development of new applications Applications may work over multiple substrates (network techs) and these substrates do not pre- specify the development of new applications [I will come back!] [I will come back!] Petros KAVASSALIS 18

19 What is a protocol? Human protocols Human protocols  “what’s the time?”  “I have a question”  Introductions (“this is…”)  Specific msgs sent  Specific actions taken when msgs received, or other events Machine protocols Machine protocols  Machines “talk each other” (rather than humans)  All communication activity in Internet governed by protocols  Protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt Petros KAVASSALIS 19

20 Human and Computer protocols Make possible a series of interactions Make possible a series of interactions Petros KAVASSALIS 20 http:www.atlantis-group.gr

21 Layers: in general To reduce their design complexity, most networks are organized as a stack of layers or levels, each one built upon the one below it To reduce their design complexity, most networks are organized as a stack of layers or levels, each one built upon the one below it The number of layers, the name of each layer, the contents of each layer, and the function of each layer differ from network to network The number of layers, the name of each layer, the contents of each layer, and the function of each layer differ from network to network The purpose of each layer is to offer certain services to the higher layers, shielding those layers from the details of how the offered services are actually implemented. The purpose of each layer is to offer certain services to the higher layers, shielding those layers from the details of how the offered services are actually implemented. In a sense, each layer is a kind of virtual machine, offering certain services to the layer above it In a sense, each layer is a kind of virtual machine, offering certain services to the layer above it Petros KAVASSALIS 21

22 Layers: an example from another industry Layers: each layer implements a service Layers: each layer implements a service  via its own internal-layer actions  relying on services provided by layer below Petros KAVASSALIS 22 ticket (purchase) baggage (check) gates (load) runway (takeoff) airplane routing departure airport arrival airport intermediate air-traffic control centers airplane routing ticket (complain) baggage (claim gates (unload) runway (land) airplane routing ticket baggage gate takeoff/landing airplane routing

23 Layers in the communication industry Petros KAVASSALIS 23

24 An example: file transfer (1) An example: file transfer (I am going to send to one of you my presentation) An example: file transfer (I am going to send to one of you my presentation) There must be a data path between our computers There must be a data path between our computers Also need: Also need:  Source to activate Communications Path or inform network of destination  Source must check destination is prepared to receive  File transfer application on source must check destination file management system will accept and store file for his user  May need file format translation Petros KAVASSALIS 24

25 An example: file transfer (2) Instead of implementing the complex logic for this as a single module, the task is broken up into subtasks, implemented separately In a protocol architecture, the modules are arranged in a vertical stack, each layer in the stack performs a related subset of the functions In a protocol architecture, the modules are arranged in a vertical stack, each layer in the stack performs a related subset of the functions It relies on the next lower layer to perform more primitive functions It relies on the next lower layer to perform more primitive functions It provides services to the next higher layer It provides services to the next higher layer The peer layers communicate using a set of rules or conventions (known as a protocol, see next page) The peer layers communicate using a set of rules or conventions (known as a protocol, see next page) Petros KAVASSALIS 25

26 Layers and protocols Layer n on one machine carries on a conversation with layer n on another machine Layer n on one machine carries on a conversation with layer n on another machine  The rules and conventions used in this conversation are collectively known as the layer n protocol  A protocol is an agreement between the communicating parties on how communication is to proceed Petros KAVASSALIS 26

27 Layers and interfaces (1) Between each pair of adjacent layers is an interface Between each pair of adjacent layers is an interface  The interface defines which primitive operations and services the lower layer makes available to the upper one  When network designers decide how many layers to include in a network and what each one should do, one of the most important considerations is defining clean interfaces between the layers Petros KAVASSALIS 27

28 Layers and interfaces (2) Implementing interfaces Implementing interfaces  Requires that each layer perform a specific collection of well- understood functions  In addition to minimizing the amount of information that must be passed between layers, clear-cut interfaces also make it simpler to replace the implementation of one layer with a completely different implementation (e.g., all the telephone lines are replaced by satellite channels) because all that is required of the new implementation is that it offer exactly the same set of services to its upstairs neighbor as the old implementation did  It is common that different hosts use different implementations. Petros KAVASSALIS 28

29 Protocol The key features of a protocol are: The key features of a protocol are:  Syntax: Concerns the format of the data blocks  Semantics: Includes control information for coordination and error handling  Timing: Includes speed matching and sequencing Petros KAVASSALIS 29

30 Network architecture A set of layers and protocols is called a network architecture A set of layers and protocols is called a network architecture  The specification of an architecture must contain enough information to allow an implementer to write the program or build the hardware for each layer so that it will correctly obey the appropriate protocol.  Neither the details of the implementation nor the specification of the interfaces is part of the architecture because these are hidden away inside the machines and not visible from the outside. It is not even necessary that the interfaces on all machines in a network be the same, provided that each machine can correctly use all the protocols.  A list of protocols used by a certain system, one protocol per layer, is called a protocol stack Petros KAVASSALIS 30

31 A network architecture Petros KAVASSALIS 31

32 Physical layer Concerned with physical interface between computer and network Concerned with physical interface between computer and network Concerned with issues like: Concerned with issues like:  characteristics of transmission medium  signal levels  data rates  other related matters Petros KAVASSALIS 32

33 Network Access layer Exchange of data between an end system and attached network Exchange of data between an end system and attached network Concerned with issues like : Concerned with issues like :  destination address provision  invoking specific services like priority  access to & routing data across a network link between two attached systems Allows layers above to ignore link specifics Allows layers above to ignore link specifics Petros KAVASSALIS 33

34 Network layer (IP) Routing functions across multiple networks Routing functions across multiple networks  For systems attached to different networks  IP protocol  Spanning layer (spans over undelying networks) Implemented in end systems and routers Implemented in end systems and routers routers connect two networks and relays data between them routers connect two networks and relays data between them Petros KAVASSALIS 34

35 Transport layer Common layer shared by all applications Common layer shared by all applications Provides reliable delivery of data Provides reliable delivery of data In same order as sent In same order as sent Commonly uses TCP Commonly uses TCP UDP for delay sensitive applications UDP for delay sensitive applications Petros KAVASSALIS 35

36 Application layer Provide support for user applications Provide support for user applications Need a separate module for each type of application Need a separate module for each type of application Examples Examples  instant messaging  remote login  p2p file sharing  multi-user network games  streaming stored video clips  voice over IP  real-time video conferencing  grid computing Petros KAVASSALIS 36

37 TCP/IP in practice Petros KAVASSALIS 37


Download ppt "1 Computer Networks and Communications [Δίκτυα Υπολογιστών και Επικοινωνίες] Lectures 4-7: What is the Internet? (2) Univ. of the Aegean Financial and."

Similar presentations


Ads by Google