1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

53
-1 1: Introduction Last Modified: 06/23/22 07:02 PM

Transcript of 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

Page 1: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-1

1: Introduction

Last Modified: 04/21/23 04:39 AM

Page 2: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-2

Why study computer networks? They are engineering marvels!

Scalability, layered protocols, lots of subtleties- worthy of study

They are all around us! Understanding the nuts and bolts behind a

technology you use every day is exciting They are changing the world!

Profound societal changes taking place in our lifetime

Page 3: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-3

How much do you know already?

How much do you know about what happens when you use networking applications?

What do you hope to learn in this class? Write out what happens when you fetch

a web page in as much technical detail as you can

Page 4: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-4

Goals of this class

Understand both basic computer networking concepts and their instantiation in the current Internet

Question why the current Internet is the way it is Appreciate good Understand limitations and consider

solutions Gain practical skills (network analysis,

network programming)

Page 5: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-5

Network Trace Analysis?

Network Trace Analysis - what happens on our local network when use a network application?

Page 6: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-6

What can you tell from local network traces?

Page 7: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-7

Example: Web browsing

Trace a common network operation like web browsing

URL like http://www.google.comspecifies - protocol (http) - location (www.google.com)

What network traffic results? Request page Send page What else? Lots….

Page 8: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-8

DNS traffic

www.google.com is the name of a computer (and, implicitly, of a file in that computer)

To find the address, the application uses a hierarchical directory service called theDomain Name System to translate human readable names to IP addresses

local

com

host

www.google..com?

www.google.com?IP = a.b.c.d

IP = a.b.c.d

Page 9: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

How do you get human readable names?

How do you get IP addresses?

-9

Page 10: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-10

TCP Connection Establishment The protocol (http) sets up a connection

(another protocol, tcp) between the host and www.google.com to transfer the page

SYN, SYNACK, ACK

Host www.google.com

Page 11: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-11

HTTP request/response

GET /foo.html HTTP/1.1 Server responds sending page

Page 12: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-12

TCP Connection

Each HTTP request/response can be made up of many TCP segments

Stream of packets regulated and controlled by both ends: retransmission of

erroneous or missing bytes Pacing, sender not

overwhelming the receiver (flow control)

Pacing, Sender not overwhelming the network (congestion control)

The end hosts worry about errors and pacing: Destination sends ACKs Source checks losses

Host A Host B

Seq=42, ACK=79, data = ‘C’

Seq=79, ACK=43, data = ‘C’

Seq=43, ACK=80

Usertypes

‘C’

host ACKsreceipt

of echoed‘C’

host ACKsreceipt of

‘C’, echoesback ‘C’

Page 13: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

2: Application Layer 13

QUICK LOOK AHEAD: TCP vs UDP

TCP service: connection-oriented: setup

required between client, server

reliable transport between sending and receiving process

flow control: sender won’t overwhelm receiver

congestion control: throttle sender when nework overloaded

does not providing: timing, minimum bandwidth guarantees

UDP service: unreliable data transfer

between sending and receiving process

does not provide: connection setup, reliability, flow control, congestion control, timing, or bandwidth guarantee

Page 14: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-14

IP Datagrams

Datagrams labeled with where they are going and where they are from – no directions

Source IP address Destination IP address

Page 15: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-15

Ethernet Frames

Data sent over a physical medium That equipment is not aware of the meaning

of the bits

01011...011...110

Transm itte r P hysica l M edium R ece iver

01011...011...110

O ptica lC opperW ire less

Page 16: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-16

Path through the Internet

Network trace analysis very useful but it gave us very little hint that between our machine and the remote machine there are many hops

Page 17: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-17

Traceroute/tracert

Page 18: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-18

Graphical Traceroute (plus DNS information )

Page 19: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-19

How are paths established?

Packets flows from end to end across many links

Routers receive packet and try to forward one step closer to destination (routing)

The packets contain all information necessary to indicate destination (addressing) and are handled individually Example: Caravan of cars on

a road trip Packets may take different

paths

C

HOST: B

GOOGLE.COM: A

A | B | # , CRC | bytes

B: toC

Page 20: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-20

Internet Topology?

Traceroute gave us one slice through the Internet

What does that tell us about the routes in the entire Internet? The full Internet map?

Page 21: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-21

Internet Map

What does the Internet really look like? That is a actually a hard question to answer Internet Atlas Project

• http://www.caida.org/projects/internetatlas/• Techniques, software, and protocols for mapping

the Internet, focusing on Internet topology, performance, workload, and routing data

Page 22: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-22

CAIDA: Layout showing Major ISPs

Page 23: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-23

CAIDA’s skitter plotHighly connected

Few connections

Location (longitude)

Skitter data

16 monitors probing approximately 400,000 destinations

626,773 IP addresses

1,007.723 IP links

48,302 (52%) of globally routable network prefixes

Europe

North America

Asia

Top 15 ASes are in North America (14 in US, 1 in Canada)Many links US to Asia and Europe; few direct Asia/Europe Links

Page 24: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-24

Internet growth and change

Maps not even a complete “snapshot” Even if they were, what about change over

time? Growth trends (years)? Cycles through months/weeks/days? Failures? Stability?

What about summarizing the dynamic Internet?

Page 25: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-25

The Internet around 1990

Page 26: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-26

The Internet in 1997 (Post NSFNET)

Page 27: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

New clients, mobile networks

Home network

Institutional network

Mobile network

Global ISP

Regional ISP

router

PC

server

wirelesslaptop

cellularhandheld

wiredlinks

accesspoints

Introduction 1-

27

Page 28: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-28

Internet Domain SurveyNumber of Internet Hosts

"Source: Internet Software Consortium (http://www.isc.org/)".

Page 29: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-29

Periodic Cycles

Cycles of a day People come to work in one part of the

globe, go home in another Week

Weekends vs weekdays Holidays …

Page 30: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-30

Stability?

Despite any growth trends or periodic cycle, we also never have the Internet as a whole

Machines disconnecting/connecting Stability of routes? Viruses? Attacks?

Page 31: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-31

Internet principles?

Besides the details of protocols, topology and growth trends, are there fundamental “timeless” principles of the Internet?

Page 32: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-32

Packet Switching

We’ve already seen this Packets indicate their destination No predetermined path for a packet to

take Each intermediate note routes the

packet closer to its destination

Page 33: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-33

Protocol

If two entities are going to communicate, they must agree on the expected order and meaning of messages they exchange. Hi …Hi…Got the time?….two oclock

SUCCESSFUL PROTOCOL EXCHANGE Hi…Don’t bother meXX ABORTED

PROTOCOL Allo…Hello..Quelle heuere a’til …..XX<blank

stare> PROTOCOL MISMATCH

Page 34: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-34

Protocol

A protocol defines the format and the order of messages exchanged between communicating entities as well as the actions taken on the receipt or the transmission of a message.

Page 35: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-35

Layered Architectures

Human beings are able to handle lots of complexity in their protocol processing. Ambiguously defined protocols Many protocols all at once

How do computers manage complex protocol processing? Specify well defined protocols to enact. Decompose complicated jobs into layers

that each have a well defined task

Page 36: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-36

Layered Architectures

Break-up design problem intro smaller, more manageable problems.

Modular design: easy to extend/modify. Difficult to implement (careful with

interaction of layers for efficiency).

Page 37: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-37

Protocol stack

e-mail client

TCP server

IP server

ethernetdriver/card

user X

SMTP

TCP

IP

e-mail server

TCP server

IP server

ethernetdriver/card

user Y

IEEE 802.3 standard

electric signals

English

Page 38: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-38

Protocol encapsulation

e-mail client

TCP server

IP server

ethernetdriver/card

user X

e-mail server

TCP server

IP server

ethernetdriver/card

user Y“Hello”

“Hello”

“Hello”

“Hello”

“Hello”

Page 39: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-39

Physical Mail

Secretary X

Mail Room X

Postman X

Post office X

CEO X

Secretary Y

Mail Room Y

Postman Y

Post office Y

CEO Y“Lunch?”

“Lunch?”

“Lunch?”

“Lunch?”

“Lunch?”

Page 40: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-40

Protocol interfaces

e-mail client

TCP server

IP server

ethernetdriver/card

user X

e-mail server

TCP server

IP server

ethernetdriver/card

user Y

s = open_socket();socket_write(s, buffer);…

Page 41: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-41

Protocol stack:packet forwarding

HTTP

TCP

IP

ethernet

Host A

IP

ethernet

Router R

link

HTTP

TCP

IP

ethernet

Router W

Host B

IP

ethernetlink

Page 42: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-42

Internet future?

If we could figure out what the Internet is, where is the Internet going?

Page 43: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-43

How is Internet “governed”?

“We reject kings, presidents, and voting. We believe in rough consensus and running code”

Internet Engineering Task Force (IETF) Working groups Internet Engineering Steering Group

(IESG) Internet Assigned Numbers Authority

(IANA)

Page 44: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-44

Internet Standards Process

Internet Draft - anyone RFC - at discretion of RFC Editor Internet Standard Maturity Levels

Proposed - IESG Draft - 2 independent, implementations Standard

Page 45: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-45

Other forces

Proprietary technologies? Government funding and direction?

Page 46: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-46

Problems To Be Solved

Security? Vulnerabilities to attack? Reliability? Enough for mission critical

apps? Quality of service? Streaming media? Exhaustion of resources? IP address

space? Spam mail? Social problems? Equal access? Privacy?

Page 47: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-47

Internet?

Quick tour of the Internet Introduced more questions that it

answered? Hopefully Rest of semester is a detailed top-down tour

of the Internet

Page 48: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-48

Outtakes

Page 49: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-49

Online Resources

ISOC ACM CAIDA Internet History W3C

Page 50: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-50

Air travel

Ticket (purchase)

Baggage (check)

Gates (load)

Runway (take off)

Passenger Origin

Ticket (complain)

Baggage (claim)

Gates (unload)

Runway (landing)

Passenger Destination

Airplane routing

Page 51: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-51

A small Internet

A

V

R

B

W

r1,e1r2,e2

r3

a,e3

w,e5 b,e4Scenario:A wants to send datato B.

Page 52: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-52

Distributed Control

Where ever possible decompose the problem

Examples: No one central name to IP address data

base - Domain Name System No one global routing table - Hierarchical

network of networks – handle routing within small autonomous systems

Essential to Scalability

Page 53: 1: Introduction Last Modified: 10/6/2015 8:30:39 PM.

-53

Open System

Basic Internet protocols are published as open standards

Standards freely and readily available Ideal candidate for study