EPL606 Topic 1 Introduction Introduction Part A The majority of - - PowerPoint PPT Presentation

epl606
SMART_READER_LITE
LIVE PREVIEW

EPL606 Topic 1 Introduction Introduction Part A The majority of - - PowerPoint PPT Presentation

EPL606 Topic 1 Introduction Introduction Part A The majority of the slides in this course are adapted from the accompanying slides to the books by Larry 1-1 Peterson and Bruce Davie and by Jim Kurose and Keith Ross. Additional slides and/or


slide-1
SLIDE 1

EPL606

Topic 1 Introduction Part A

Introduction

1-1

The majority of the slides in this course are adapted from the accompanying slides to the books by Larry Peterson and Bruce Davie and by Jim Kurose and Keith Ross. Additional slides and/or figures from other sources and from Vasos Vassiliou are also included in this presentation.

slide-2
SLIDE 2

Outline

  • Our goal:
  • get “feel” and

terminology

  • more depth, detail later

in course

  • approach:

 use Internet as example

  • Network Requirements?
  • Connectivity
  • Services
  • Resource sharing
  • Performance

Introduction

1-2

slide-3
SLIDE 3

What is the Objective of Networking?

  • Communication between applications on different

computers

  • Must understand the different requirements that

exist

  • Who defines the requirements?

Introduction

1-3

slide-4
SLIDE 4

Requirement Definition

  • Requirements and Constraints depend on your

perspective:

 Network users want the network to provide services that their applications need; e.g., guarantee that each message will be delivered in order, without errors, and within a pre-defined delay  Network designers want a cost-effective design; e.g., network resources are efficiently utilized and fairly allocated to users  Network providers want a system that is easy to administer and manage; e.g., faults can be easily found, system can be hotswapped, and easy to track usage of users

Introduction

1-4

slide-5
SLIDE 5

Four Steps to Networking

  • Communicating across a link
  • Connecting together multiple links

(internetworking)

  • Finding and routing data to nodes on internetwork
  • Matching application requirements

Introduction

1-5

slide-6
SLIDE 6

A First Step

  • Creating a link between nodes
  • Link: path followed by bits

 Wired or wireless  Broadcast or point-to-point (or both)  copper wires (coax cable, twisted pair), optical fiber,

  • Node: any device connected to a link

 Computers or servers  Routers or switches  Mobile terminal

Introduction

1-6

slide-7
SLIDE 7

Types of Links

Introduction

1-7

Point-to-Point Multiple Access

slide-8
SLIDE 8

Connectivity Requirement

  • “A network is two or more nodes connected by a

direct link, or two or more networks connected by

  • ne or more nodes”
  • Hosts connected directly or indirectly

 Need global addressability  Need routing ability  Unicast/Broadcast/Multicast

  • Network Edge vs. Network Core; does it make a

difference?

Introduction

1-8

slide-9
SLIDE 9

Types of Networks

Introduction

1-9

Two or more connected nodes Two or more connected networks

slide-10
SLIDE 10

Internet structure: network of networks

  • roughly hierarchical
  • at center: “tier-1” ISPs (e.g., UUNet, BBN/Genuity,

Sprint, AT&T), national/international coverage

 treat each other as equals

Introduction

1-10

Tier 1 ISP Tier 1 ISP Tier 1 ISP

Tier-1 providers interconnect (peer) privately

NAP

Tier-1 providers also interconnect at public network access points (NAPs)

slide-11
SLIDE 11

Tier-1 ISP: e.g., Sprint

Introduction

1-11

Sprint US backbone network

slide-12
SLIDE 12

Tier-1 ISP: e.g., BBN/GTE

Introduction

1-12

slide-13
SLIDE 13

Tier-1 ISP: e.g., UUnet

Introduction

1-13

slide-14
SLIDE 14

Internet structure: network of networks

  • a packet passes through many networks!

Introduction

1-14

Tier 1 ISP Tier 1 ISP Tier 1 ISP

NAP

Tier-2 ISP Tier-2 ISP Tier-2 ISP Tier-2 ISP Tier-2 ISP local ISP local ISP local ISP local ISP local ISP Tier 3 ISP local ISP local ISP local ISP

slide-15
SLIDE 15

Second Step: Internet[work]

  • A collection of

interconnected networks

  • Host: network endpoints

(computer, PDA, light switch, …)

  • Router: node that

connects networks

Introduction

1-15

Internet[work]

slide-16
SLIDE 16

Challenge

  • Many differences between networks

 Address formats  Performance – bandwidth/latency  Packet size  Loss rate/pattern/handling  Routing

  • How to translate between various network

technologies

Introduction

1-16

slide-17
SLIDE 17

Third Step: How To Find Nodes?

Introduction

1-17

internet Computer 1 Computer 2

slide-18
SLIDE 18

Naming

  • Humans use readable host names

 E.g. www.gatech.edu, www.ucy.ac.cy  Globally unique (can correspond to multiple hosts)

  • Naming system translates to physical address

 E.g. DNS translates name to IP Address (e.g. 128.2.11.43)  Address reflects location in network

Introduction

1-18

slide-19
SLIDE 19

Domain Name System

Introduction

1-19

What’s the IP address for www.cmu.edu?

It is 128.2.11.43 DNS server address manually configured into OS Local DNS Server Computer 1

slide-20
SLIDE 20

Packet Routing/Delivery

  • Each network technology has different local

delivery methods

  • Address resolution provides delivery information

within network

 E.g., ARP maps IP addresses to Ethernet addresses  Local, works only on a particular network

  • Routing protocol provides path through an

internetwork

Introduction

1-20

slide-21
SLIDE 21

Network:Address Resolution Protocol

Introduction

1-21

Ethernet Broadcast: who knows the Ethernet address for 128.2.11.43? Ethernet Broadcast: Yes, it is 08-00-2c-19-dc-45

slide-22
SLIDE 22

Internetwork: Datagram Routing

Introduction

1-22

R R R R R

H H H H

R R

H

R Routers send packet to next closest point

H: Hosts R: Routers

slide-23
SLIDE 23

Routing

  • Forwarding tables at each router populated by

routing protocols.

  • Original Internet: manually updated
  • Routing protocols update tables based on “cost”

 Exchange tables with neighbors or everyone  Use neighbor leading to shortest path

Introduction

1-23

slide-24
SLIDE 24

Fourth Step: Application Demands

  • Reliability

 Corruption  Lost packets

  • Flow and congestion control
  • Fragmentation
  • In-order delivery
  • Etc…

Introduction

1-24

slide-25
SLIDE 25

What if the Data gets Corrupted?

Introduction

1-25

Internet GET windex.html GET index.html

Solution: Add a checksum Problem: Data Corruption

0,9 9 6,7,8 21 4,5 7 1,2,3 6

X

slide-26
SLIDE 26

What if Network is Overloaded?

  • Short bursts: buffer
  • What if buffer overflows?

 Packets dropped  Sender adjusts rate until load = resources

  • Called “congestion control”

Introduction

1-26

Problem: Network Overload Solution: Buffering and Congestion Control

slide-27
SLIDE 27

What if the Data gets Lost?

Introduction

1-27

Internet GET index.html

Problem: Lost Data

Internet GET index.html

Solution: Timeout and Retransmit

GET index.html GET index.html

slide-28
SLIDE 28

What if the Data Doesn’t Fit?

Introduction

1-28

Problem: Packet size Solution: Fragment data across packets

 On Ethernet, max IP packet is 1.5kbytes  Typical web page is 10kbytes GET inde x.ht ml GET index.html

slide-29
SLIDE 29

What if the Data is Out of Order?

Introduction

1-29

Solution: Add Sequence Numbers Problem: Out of Order

GET x.ht inde ml GET x.htindeml GET index.html ml 4 inde 2 x.ht 3 GET 1

slide-30
SLIDE 30

Network Functionality Summary

  • Link
  • Multiplexing
  • Routing
  • Addressing/naming (locating peers)
  • Reliability
  • Flow control
  • Fragmentation
  • Etc….

Introduction

1-30

slide-31
SLIDE 31

The network edge:

  • end systems (hosts):

 run application programs  e.g. Web, email  at “edge of network”

  • client/server model

 client host requests, receives service from always-on server  e.g. Web browser/server; email client/server

  • peer-peer model:

 minimal (or no) use of dedicated servers  e.g. Gnutella, KaZaA

Introduction

1-31

slide-32
SLIDE 32

“Cool” internet appliances

Introduction

1-32

World’s smallest web server http://www-ccs.cs.umass.edu/~shri/iPic.html IP picture frame http://www.ceiva.com/ Web-enabled toaster+weather forecaster

slide-33
SLIDE 33

What’s the Internet: a service view

  • communication

infrastructure enables distributed applications:

 Web, email, games, e- commerce, file sharing

  • communication services

provided to apps:

 Connectionless unreliable  connection-oriented reliable

Introduction

1-33

slide-34
SLIDE 34

Application Support Requirement

  • How should we go about building the network that

will realize our wish-list of requirements?

 Many requirements, including general, efficient, fair, reliable, high performance connectivity among a large number of computers  Technology and application demands constantly changing  Hardware is heterogeneous

Introduction

1-34

slide-35
SLIDE 35

Why layering?

  • Dealing with complex systems:
  • Modular approach to network functionality
  • explicit structure allows identification,

relationship of complex system’s pieces

 layered reference model for discussion

  • modularization eases maintenance, updating of

system

 change of implementation of layer’s service transparent to rest of system  e.g., change in gate procedure doesn’t affect rest of system

Introduction

1-35

slide-36
SLIDE 36

Layering Characteristics

  • Each layer relies on services from layer below and

exports services to layer above

  • Interface defines interaction
  • Hides implementation - layers can change without

disturbing other layers (black box)

Introduction

1-36

slide-37
SLIDE 37

Protocols

  • Module in layered structure
  • Set of rules governing communication between

network elements (applications, hosts, routers)

  • Protocols define:

 Interface to higher layers (API)  Interface to peer

 Format and order of messages sent and received among network entities  Actions taken on receipt or transmission of a message

Introduction

1-37

slide-38
SLIDE 38

Introduction

1-38

Interfaces

Host 1 Host 2 Service interface Peer-to-peer interface High-level

  • bject

High-level

  • bject

Protocol Protocol

slide-39
SLIDE 39

ISO Architecture

Introduction

1-39

One or more nodes within the network End host Application Presentation Session Transport Network Data link Physical Network Data link Physical Network Data link Physical End host Application Presentation Session Transport Network Data link Physical

slide-40
SLIDE 40

Summary of layers

Introduction

1-40

slide-41
SLIDE 41

Μοντέλο OSI

  • Φυσικό στρώμα (Physical Layer)

 Μετάδοση ακατέργαστων bits (0 ή 1) από τον αποστολέα στον δέκτη.

  • Στρώμα Ζεύξης Δεδομένων (Data Link Layer)

 Τεμαχίζει τα δεδομένα σε πλαίσια δεδομένων (frames)  Επιβεβαιώνει ότι η επικοινωνία του Φυσικού στρώματος είναι αξιόπιστη (Πλαίσια επαλήθευσης - acknowledgement frames)  Ανίχνευση και επιδιόρθωση λαθών (Error detection and correction).  Έλεγχος ροής (flow control).

Introduction

1-41

slide-42
SLIDE 42

Μοντέλο OSI

  • Στρώμα Δικτύου (Network Layer)

 Δρομολόγηση πακέτων  Έλεγχος συμφόρησης  Έκδοση λογαριασμών (billing)

  • Στρώμα Μεταφοράς (Transport Layer)

 Τεμαχίζει τα μηνύματα σε μικρότερες μονάδες  Επιβεβαιώνει ότι όλες οι μονάδες φτάνουν στο άλλο άκρο και επανασυναρμολογεί το μήνυμα.  Πολυπλεξία συνδέσεων/συρμών (steams)  Υπηρεσίες μεταφοράς πακέτων από άκρο σε άκρο (end- to-end). (π.χ., αξιόπιστη μεταφορά δεδομένων στον δέκτη).  Έλεγχος συμφόρησης (congestion) και ροής πακέτων

Introduction

1-42

slide-43
SLIDE 43

Μοντέλο OSI

  • Στρώμα Συνόδου (Session Layer)

 Αποκατάσταση συνόδων μεταξύ διαφόρων μηχανών (sessions)  Διαχείριση σκυτάλης (token management)  Συγχρονισμός (synchronization)

  • Στρώμα Παρουσίασης (Presentation Layer)

 Κωδικοποίηση δεδομένων

  • Στρώμα Εφαρμογή (Application Layer)

 Συμβατότητα μεταξύ εφαρμογών

Introduction

1-43

slide-44
SLIDE 44

TCP/IP Protocol stack

Introduction

1-44

slide-45
SLIDE 45

Introduction

1-45

TCP/IP and OSI model

slide-46
SLIDE 46

Introduction

1-46

Relation- ship

  • f

layers and addresses in TCP/IP

slide-47
SLIDE 47

Is Layering Harmful?

  • Sometimes..

 Layer N may duplicate lower level functionality (e.g., error recovery)  Layers may need same info (timestamp, MTU)  Strict adherence to layering may hurt performance

Introduction

1-47

slide-48
SLIDE 48

Design Considerations

  • How to determine split of functionality

 Across protocol layers  Across network nodes

  • Assigned Reading

 [SRC84] End-to-end Arguments in System Design  [Cla88] Design Philosophy of the DARPA Internet Protocols

Introduction

1-48