com s 519: computer networks introduction and overview jeanna matthews spring 2002

Post on 18-Jan-2018

215 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

How much do you know already ? zHow much do you know about what happens when you use networking applications? zWhat do you hope to learn in this class?

TRANSCRIPT

COM S 519:Computer Networks

Introduction and OverviewJeanna MatthewsSpring 2002

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 excitingThey are changing the world!

Profound societal changes taking place in our lifetime

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?

Internet: Example Click -> get page page from local

or remote computer link:

http://www.cnn.com

specifies - protocol (http) - location (www.cnn.com)

Internet: Locating Resource www.cnn.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

loca l

com

host

cnn.com ?

cnn.com ?IP = a .b.c .d

IP = a .b .c.d

Internet: ConnectionThe protocol (http) sets up a connection

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

The connection transfers the page as a byte stream, without errors: flow control + error control

Host cnn .com

Internet: End-to-end The byte stream flows

from end to end across many links and switches: routing (+ addressing)

That stream is regulated and controlled by both ends: retransmission of erroneous or missing bytes; flow control

H O ST

CN N .C O M

end-to -end pacing anderror con tro l

routing

Internet: Packets The network transports

bytes grouped into packets

The packets are “self-contained” and routers handle them one by one

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

C

H O S T: B

C N N .C O M : AA | B | # , C R C | bytes

B : toC

Internet: Port NumbersWhen a packet arrives at its

destination, the operating system uses the destination port number to identify which application should receive it.

This is called demultiplexing.

Internet: Bits Equipment in each node sends the packets as a string of

bits That equipment is not aware of the meaning of the bits

01011...011...110

Transm itter P hysica l M ed ium Rece ive r

01011...011...110

O ptica lC opperW ire less

Internet: Points to remember

Separation of tasks send bits on a link: transmitter/receiver [clock,

modulation,…] send packet on each hop [framing, error detection,…] send packet end to end [addressing, routing] pace transmissions [detect congestion] retransmit erroneous or missing packets [acks, timeout] find destination address from name [DNS]

Scalability routers don’t know full path names and addresses are hierarchical

Internet :how does it do:

Addressing ?Routing ?Reliable transmission ?Interoperability ?Resource management ?Quality of service ?

Concepts at the heart of the InternetProtocolLayered ArchitecturePacket SwitchingDistributed ControlOpen System

ProtocolIf two entities are going to

communicate, they must agree on the expected order and meaning of messages they exchange.

Asking for the time protocol

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.

Layered ArchitecturesHuman 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

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).

Layered Architecture

Applications

Middleware

Routing

Physical Links

usersnetwork

Web, e-mail, file transfer, ...

Reliable/ordered transmission, QOS,security, compression, ...

End-to-end transmission,resource allocation, routing, ...

Point-to-point links,LANs, radios, ...

Internet protocol stack

Application

Transport

Network

Physical

usersnetwork

HTTP, SMTP, FTP, TELNET, DNS, …

TCP, UDP.

IP

Point-to-point links,LANs, radios, ...

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

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

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”

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);…

Packet SwitchingPackets indicate their destination No predetermined path for a packet

to takeEach intermediate note routes the

packet closer to its destination

A small Internet

A

V

R

B

W

r1,e1r2,e2

r3

a,e3

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

Protocol stack:packet forwarding

HTTP

TCP

IP

ethernet

Host A

IP

ethernet

Router R

link

HTTP

TCP

IP

ethernet

Router WHost B

IP

ethernetlink

Distributed ControlWhere ever possible decompose the

problem Examples:

No one central name to IP address data base - Domain Name System

No one global routing table - Heirarchical network of networks – handle routing within small autonomous systems

Essential to Scalability

Open SystemBasic Internet protocols are

published as open standardsStandards freely and readily

available Ideal candidate for study

Internet Standards ProcessInternet Draft - anyoneRFC - at discretion of RFC EditorInternet Standard Maturity Levels

Proposed - IESG Draft - 2 independent, implementations Standard

How is Internet “governed”?“We reject kings, presidents, and voting.

We believe in rough consensus and running code”

Internet Engineering Task Force (IETF)Working groupsInternet Engineering Steering Group (IESG)Internet Assigned Numbers Authority

(IANA)

Backbones, NAPs and ISPsWould have had time to add this

here

Online ResourcesISOCACMCAIDAInternet HistoryW3C

top related