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

Petros KAVASSALIS

  • Upload
    ilar

  • View
    37

  • Download
    1

Embed Size (px)

DESCRIPTION

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

Citation preview

Page 1: Petros KAVASSALIS

1

Computer Networks and Communications

[Δίκτυα Υπολογιστών και Επικοινωνίες]Lectures 4-7: What is the Internet? (2)

Univ. of the Aegean Financial and Management Engineering Dpt

Petros KAVASSALIS

Page 2: Petros KAVASSALIS

<[email protected]> 2

What you will learn in this course

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 Business and Social Networks Electronic Markets and Online Feedback Mechanisms

Page 3: Petros KAVASSALIS

<[email protected]> 3

Who am I?

PhD in Economics and Management (Univ. Paris Dauphine & Ecole polytechnique)

Research experience Ecole polytechnique, Paris MIT Center of Technology Policy and Industrial Development, MIT

CTPID (MIT Internet Telecommunications Convergence Consortium)

Current positions Univ. of the Aegean (FME): Assoc. Professor RACTI: Director of ATLANTIS Group

Page 4: Petros KAVASSALIS

<[email protected]> 4

Communication tools

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

Page 5: Petros KAVASSALIS

<[email protected]> 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]

Page 7: Petros KAVASSALIS

<[email protected]> 7

Students evaluation

Class Participation (20%)

+ Assignments (20%)

+ Final Exam (60%)

Page 8: Petros KAVASSALIS

Reminder (1): Overview of the Internet

Petros KAVASSALIS <[email protected]> 8

The structure of the Internet is roughly hierarchical

Page 9: Petros KAVASSALIS

Reminder (2): Transmission of packets

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 <[email protected]> 9

Page 10: Petros KAVASSALIS

Routing of packets

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 <[email protected]> 10

Page 11: Petros KAVASSALIS

Probing the Internet

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

One of the simplest probing tools is a program known as ping: Example: ping www.fme.aegean.gr/ Example: ping www.nytimes.com

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 <[email protected]> 11

Page 12: Petros KAVASSALIS

An example of “ping”

Please ping a website

Petros KAVASSALIS <[email protected]> 12

Page 13: Petros KAVASSALIS

How to interpret “ping”

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

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

Petros KAVASSALIS <[email protected]> 13

Page 14: Petros KAVASSALIS

Tracing a route

Traceroute used to determine the intermediate computers along the path to a remote destination Ex: traceroute www.aegean.gr

Traceroute provides more information than ping Each line corresponds to each of intermediate computersand

one corresponds to the final destination itself 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 <[email protected]> 14

Page 15: Petros KAVASSALIS

An example of “traceroute”

Please try!

Petros KAVASSALIS <[email protected]> 15

Page 16: Petros KAVASSALIS

How to interpret “traceroute”

A treceroute table illustrates another features of traceroute: a report of packet loss

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.

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

Petros KAVASSALIS <[email protected]> 16

Page 17: Petros KAVASSALIS

Reminder: How do loss and delay occur?

Packets queue in router buffers packet arrival rate to link exceeds output link capacity packets queue, wait for turn

Petros KAVASSALIS <[email protected]> 17

A

B

packet being transmitted (delay)

packets queueing (delay)

free (available) buffers: arriving packets dropped (loss) if no free buffers

Page 18: Petros KAVASSALIS

The Internet: change view

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

[I will come back!]

Petros KAVASSALIS <[email protected]> 18

Page 19: Petros KAVASSALIS

What is a protocol?

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 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 <[email protected]> 19

Page 20: Petros KAVASSALIS

Human and Computer protocols

Make possible a series of interactions

Petros KAVASSALIS <[email protected]> 20

http:www.atlantis-group.gr

Page 21: Petros KAVASSALIS

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

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.

In a sense, each layer is a kind of virtual machine, offering certain services to the layer above it

Petros KAVASSALIS <[email protected]> 21

Page 22: Petros KAVASSALIS

Layers: an example from another industry

Layers: each layer implements a service via its own internal-layer actions relying on services provided by layer below

Petros KAVASSALIS <[email protected]> 22

ticket (purchase)

baggage (check)

gates (load)

runway (takeoff)

airplane routing

departureairport

arrivalairport

intermediate air-trafficcontrol centers

airplane routing airplane routing

ticket (complain)

baggage (claim

gates (unload)

runway (land)

airplane routing

ticket

baggage

gate

takeoff/landing

airplane routing

Page 23: Petros KAVASSALIS

Layers in the communication industry

Petros KAVASSALIS <[email protected]> 23

Page 24: Petros KAVASSALIS

An example: file transfer (1)

An example: file transfer (I am going to send to one of you my presentation)

There must be a data path between our computers 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 <[email protected]> 24

Page 25: Petros KAVASSALIS

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

It relies on the next lower layer to perform more primitive functions

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)

Petros KAVASSALIS <[email protected]> 25

Page 26: Petros KAVASSALIS

Layers and protocols

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 <[email protected]> 26

Page 27: Petros KAVASSALIS

Layers and interfaces (1)

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 <[email protected]> 27

Page 28: Petros KAVASSALIS

Layers and interfaces (2)

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 <[email protected]> 28

Page 29: Petros KAVASSALIS

Protocol

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 <[email protected]> 29

Page 30: Petros KAVASSALIS

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 <[email protected]> 30

Page 31: Petros KAVASSALIS

A network architecture

Petros KAVASSALIS <[email protected]> 31

Page 32: Petros KAVASSALIS

Physical layer

Concerned with physical interface between computer and network

Concerned with issues like: characteristics of transmission medium signal levels data rates other related matters

Petros KAVASSALIS <[email protected]> 32

Page 33: Petros KAVASSALIS

Network Access layer

Exchange of data between an end system and attached network

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

Petros KAVASSALIS <[email protected]> 33

Page 34: Petros KAVASSALIS

Network layer (IP)

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 routers connect two networks and relays data between them

Petros KAVASSALIS <[email protected]> 34

Page 35: Petros KAVASSALIS

Transport layer

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

Petros KAVASSALIS <[email protected]> 35

Page 36: Petros KAVASSALIS

Application layer

Provide support for user applications Need a separate module for each type of application 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 <[email protected]> 36

Page 37: Petros KAVASSALIS

TCP/IP in practice

Petros KAVASSALIS <[email protected]> 37