Sie sind auf Seite 1von 49

Discussion on Network Systems, Proxies and Servers in National level Technical Symposium SCSVMV, Kanchipuram 30-Sep-08 Vasan V S (vasan@sahasrasolutions.

com)

Agenda
Network System definition wrt Internet

Network Addressing
Network Proxy Other network server applications Questions?

Whats the Internet: nuts and bolts view


millions of connected

= end systems running network apps communication links

computing devices: hosts

router
server local ISP

workstation

mobile

fiber, copper, radio, satellite transmission rate =

regional ISP

routers: forward packets


(chunks of data)
company network

bandwidth

Cool internet appliances


Web-enabled toaster + weather forecaster
IP picture frame http://www.ceiva.com/

Worlds smallest web server http://www-ccs.cs.umass.edu/~shri/iPic.html

Internet phones

Whats the Internet: nuts and bolts view

protocols control sending,


receiving of msgs

router server local ISP

workstation mobile

Internet: network of
networks

e.g., TCP, IP, HTTP, FTP, PPP

loosely hierarchical public Internet versus private intranet

regional ISP

Internet standards RFC: Request for comments IETF: Internet Engineering Task Force

company network

A closer look at network structure:


network edge:

applications and hosts network core:


routers network of networks

access networks,

physical media: communication links

The Network Core


mesh of interconnected

routers the fundamental question: how is data transferred through net? circuit switching: dedicated circuit per call: telephone net packet-switching: data sent thru net in discrete chunks

Access networks and physical media


Q: How to connect end systems to edge router?
residential access nets institutional access

networks (school, company) mobile access networks

Keep in mind:
bandwidth (bits per

second) of access network? shared or dedicated?

Residential access: point to point access


Dialup via modem

up to 56Kbps direct access to router (often less) Cant surf and phone at same time: cant be always on

ADSL: asymmetric digital subscriber line

up to 1 Mbps upstream (today typically < 256 kbps) up to 8 Mbps downstream (today typically < 1 Mbps) FDM: 50 kHz - 1 MHz for downstream

4 kHz - 50 kHz for upstream 0 kHz - 4 kHz for ordinary telephone

Company access: local area networks


company/univ local area

network (LAN) connects end system to edge router Ethernet: shared or dedicated link connects end system and router 10 Mbs, 100Mbps, Gigabit Ethernet, 10 Gigabit Ethernet (Coming soon)

Wireless access networks


shared

network connects end system to router

wireless access

via base station aka access point

router base station

wireless LANs: 802.11b/g (WiFi): 11 or 54 Mbps wider-area wireless access provided by telco operator 3G ~ 384 kbps Will it happen?? GPRS in Europe/US

mobile hosts

Home networks
Typical home network components: ADSL or cable modem router/firewall/NAT Ethernet wireless access point
to/from cable headend cable modem router/ firewall Ethernet wireless laptops wireless access point

Physical Media
Bit: propagates between

transmitter/rcvr pairs physical link: what lies between transmitter & receiver guided media:

Twisted Pair (TP) two insulated copper wires

signals propagate in solid media: copper, fiber, coax

Category 3: traditional phone wires, 10 Mbps Ethernet Category 5: 100Mbps Ethernet

unguided media: signals propagate freely, e.g., radio

Internet structure: network of networks


roughly hierarchical at center: tier-1 ISPs (e.g., MCI, Sprint, AT&T, Cable

and Wireless), national/international coverage treat each other as equals


Tier-1 providers interconnect (peer) privately

Tier 1 ISP

NAP

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

Tier 1 ISP

Tier 1 ISP

Tier-1 ISP: e.g., Sprint


Sprint US backbone network
DS3 (45 Mbps) OC3 (155 Mbps) OC12 (622 Mbps) OC48 (2.4 Gbps)

Seattle Tacoma

POP: point-of-presence

to/from backbone
Stockton San Jose Cheyenne

Kansas City .

peering

Chicago Roachdale

New York Pennsauken Relay Wash. DC

Anaheim

Atlanta

to/from customers Fort Worth


Orlando

Internet structure: network of networks


Tier-2 ISPs: smaller (often regional) ISPs Connect to one or more tier-1 ISPs, possibly other tier-2 ISPs

Tier-2 ISP pays tier-1 ISP for connectivity to rest of Internet tier-2 ISP is customer of tier-1 provider

Tier-2 ISP

Tier 1 ISP

Tier-2 ISP

NAP

Tier-2 ISPs also peer privately with each other, interconnect at NAP
Tier-2 ISP

Tier 1 ISP
Tier-2 ISP

Tier 1 ISP
Tier-2 ISP

Internet structure: network of networks


Tier-3 ISPs and local ISPs last hop (access) network (closest to end systems)
local ISP Local and tier3 ISPs are customers of higher tier ISPs connecting them to rest of Internet Tier 3 ISP Tier-2 ISP local ISP local

local
ISP

Tier 1 ISP

ISP Tier-2 ISP

NAP

Tier 1 ISP

Tier 1 ISP
Tier-2 ISP local ISP

Tier-2 ISP local local ISP ISP

Tier-2 ISP local ISP

Internet structure: network of networks


a packet passes through many networks!

local ISP

Tier 3 ISP Tier-2 ISP

local
ISP

local ISP

local

Tier 1 ISP

ISP Tier-2 ISP

NAP

Tier 1 ISP
Tier-2 ISP local local ISP ISP

Tier 1 ISP
Tier-2 ISP local ISP

Tier-2 ISP local ISP

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
packet being transmitted (delay)

A B

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

Four sources of packet delay


1. nodal processing: check bit errors determine output link 2. queueing time waiting at output link for transmission depends on congestion level of router
propagation

A B

transmission

nodal processing

queueing

Delay in packet-switched networks


3. Transmission delay: R=link bandwidth (bps) L=packet length (bits) time to send bits into link = L/R A
transmission propagation

4. Propagation delay: d = length of physical link s = propagation speed in medium propagation delay = d/s

nodal processing

queueing

Real Internet delays and routes


What do real Internet delay & loss look like?

Traceroute program: provides delay

measurement from source to router along end-end Internet path towards destination. For all i:

sends three packets that will reach router i on path towards destination router i will return packets to sender sender times interval between transmission and reply.
3 probes 3 probes

3 probes

Real Internet delays and routes


traceroute: gaia.cs.umass.edu to www.eurecom.fr
Three delay measurements from gaia.cs.umass.edu to cs-gw.cs.umass.edu
1 cs-gw (128.119.240.254) 1 ms 1 ms 2 ms 2 border1-rt-fa5-1-0.gw.umass.edu (128.119.3.145) 1 ms 1 ms 2 ms 3 cht-vbns.gw.umass.edu (128.119.3.130) 6 ms 5 ms 5 ms 4 jn1-at1-0-0-19.wor.vbns.net (204.147.132.129) 16 ms 11 ms 13 ms 5 jn1-so7-0-0-0.wae.vbns.net (204.147.136.136) 21 ms 18 ms 18 ms 6 abilene-vbns.abilene.ucaid.edu (198.32.11.9) 22 ms 18 ms 22 ms 7 nycm-wash.abilene.ucaid.edu (198.32.8.46) 22 ms 22 ms 22 ms trans-oceanic 8 62.40.103.253 (62.40.103.253) 104 ms 109 ms 106 ms link 9 de2-1.de1.de.geant.net (62.40.96.129) 109 ms 102 ms 104 ms 10 de.fr1.fr.geant.net (62.40.96.50) 113 ms 121 ms 114 ms 11 renater-gw.fr1.fr.geant.net (62.40.103.54) 112 ms 114 ms 112 ms 12 nio-n2.cssi.renater.fr (193.51.206.13) 111 ms 114 ms 116 ms 13 nice.cssi.renater.fr (195.220.98.102) 123 ms 125 ms 124 ms 14 r3t2-nice.cssi.renater.fr (195.220.98.110) 126 ms 126 ms 124 ms 15 eurecom-valbonne.r3t2.ft.net (193.48.50.54) 135 ms 128 ms 133 ms 16 194.214.211.25 (194.214.211.25) 126 ms 128 ms 126 ms 17 * * * * means no response (probe lost, router not replying) 18 * * * 19 fantasia.eurecom.fr (193.55.113.142) 132 ms 128 ms 136 ms

Packet loss
queue (aka buffer) preceding link in buffer

has finite capacity when packet arrives to full queue, packet is dropped (aka lost) lost packet may be retransmitted by previous node, by source end system, or not retransmitted at all

Internet protocol stack


application: supporting network

applications

FTP, SMTP, HTTP

application transport network link physical

transport: process-process data

transfer

TCP, UDP

network: routing of datagrams from

source to destination

IP, routing protocols

link: data transfer between

neighboring network elements


PPP, Ethernet

physical: bits on the wire

source
message segment
Ht M M M M

frame Hl Hn Ht

datagram Hn Ht

application transport network link physical

Encapsulation

link physical switch

destination
M

Ht
Hn Ht Hl Hn Ht

M M M

application transport network link physical

Hn Ht Hl Hn Ht

M
M

network link physical

Hn Ht

router

Agenda
Network System definition wrt Internet

Network Addressing
Network Proxy Other network server applications Questions?

The Internet Network layer


Host, router network layer functions:
Transport layer: TCP, UDP
Routing protocols path selection RIP, OSPF, BGP IP protocol addressing conventions datagram format packet handling conventions

Network layer

forwarding table

ICMP protocol error reporting router signaling

Link layer physical layer

IP datagram format
IP protocol version number header length (bytes) type of data max number remaining hops (decremented at each router) upper layer protocol to deliver payload to 32 bits head. type of length ver len service fragment 16-bit identifier flgs offset upper time to header layer live checksum 32 bit source IP address 32 bit destination IP address Options (if any) E.g. timestamp, record route taken, specify list of routers to visit. total datagram length (bytes) for fragmentation/ reassembly

how much overhead with TCP? 20 bytes of TCP 20 bytes of IP = 40 bytes + app layer overhead

data (variable length, typically a TCP or UDP segment)

IP Addressing: introduction
IP address: 32-bit
223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.2.9

identifier for host, router interface interface: connection between host/router and physical link

223.1.3.27

223.1.2.2

routers typically have multiple interfaces host typically has one interface IP addresses associated with each interface

223.1.3.1

223.1.3.2

223.1.1.1 = 11011111 00000001 00000001 00000001 223 1 1 1

Subnets
IP address: subnet part (high order bits) host part (low order bits)
223.1.1.1 223.1.2.1 223.1.1.2 223.1.1.4 223.1.1.3 223.1.2.9 223.1.2.2

Whats a subnet ?

223.1.3.27

device interfaces with same subnet part of IP address can physically reach each other without intervening router

subnet
223.1.3.1 223.1.3.2

network consisting of 3 subnets

Subnets
Recipe To determine the subnets, detach each interface from its host or router, creating islands of isolated networks. Each isolated network is called a subnet.

223.1.1.0/24

223.1.2.0/24

223.1.3.0/24

Subnet mask: /24

NAT: Network Address Translation


rest of Internet local network (e.g., home network) 10.0.0/24
10.0.0.4 138.76.29.7 10.0.0.3 10.0.0.1 10.0.0.2

network have same single source NAT IP address: 138.76.29.7, different source port numbers

All datagrams leaving local

Datagrams with source or destination in this network have 10.0.0/24 address for source, destination (as usual)

NAT: Network Address Translation


Motivation: local network uses just one IP address as

far as outside world is concerned: range of addresses not needed from ISP: just one IP address for all devices can change addresses of devices in local network without notifying outside world can change ISP without changing addresses of devices in local network devices inside local net not explicitly addressable, visible by outside world (a security plus).

NAT: Network Address Translation


Implementation: NAT router must:

outgoing datagrams: replace (source IP address, port


#) of every outgoing datagram to (NAT IP address, new port #) . . . remote clients/servers will respond using (NAT IP address, new port #) as destination addr.

remember (in NAT translation table) every (source incoming datagrams: replace (NAT IP address, new
port #) in dest fields of every incoming datagram with corresponding (source IP address, port #) stored in NAT table

IP address, port #) to (NAT IP address, new port #) translation pair

NAT: Network Address Translation


2: NAT router changes datagram source addr from 10.0.0.1, 3345 to 138.76.29.7, 5001, updates table NAT translation table WAN side addr LAN side addr

138.76.29.7, 5001 10.0.0.1, 3345

1: host 10.0.0.1 sends datagram to 128.119.40.186, 80

S: 10.0.0.1, 3345 D: 128.119.40.186, 80

S: 138.76.29.7, 5001 D: 128.119.40.186, 80

1
10.0.0.4
S: 128.119.40.186, 80 D: 10.0.0.1, 3345

10.0.0.1
10.0.0.2

138.76.29.7

3: Reply arrives dest. address: 138.76.29.7, 5001

S: 128.119.40.186, 80 D: 138.76.29.7, 5001

10.0.0.3 4: NAT router changes datagram dest addr from 138.76.29.7, 5001 to 10.0.0.1, 3345

Agenda
Network System definition wrt Internet

Network Addressing
Network Proxy Other network server applications Questions?

Web caches (proxy server)


Goal: satisfy client request without involving origin server
user sets browser: Web
origin server

accesses via cache browser sends all HTTP requests to cache


object in cache: cache returns object else cache requests object from origin server, then returns object to client

client

Proxy server

client

origin server

More about Web caching


Cache acts as both client

and server Typically cache is installed by ISP (university, company, residential ISP)

Why Web caching?


Reduce response time for

client request. Reduce traffic on an institutions access link. Internet dense with caches: enables poor content providers to effectively deliver content (but so does P2P file sharing)

Conditional GET
Goal: dont send object if

cache
HTTP request msg
If-modified-since: <date>

server
object not modified

cache has up-to-date cached version cache: specify date of cached copy in HTTP request
If-modified-since: <date>
server: response contains no

HTTP response
HTTP/1.0 304 Not Modified

object if cached copy is upto-date:


HTTP/1.0 304 Not Modified

HTTP request msg


If-modified-since: <date>

HTTP response
HTTP/1.0 200 OK

object modified

<data>

Agenda
Network System definition wrt Internet

Network Addressing
Network Proxy Other network server applications

FTP SMTP

Questions?

FTP: the file transfer protocol


FTP FTP user client interface local file system

file transfer

FTP server
remote file system

user at host

transfer file to/from remote host client/server model

remote) server: remote host ftp: RFC 959 ftp server: port 21

client: side that initiates transfer (either to/from

FTP: separate control, data connections


FTP client contacts FTP

server at port 21, specifying TCP as transport protocol Client obtains authorization over control connection Client browses remote directory by sending commands over control connection. When server receives file transfer command, server opens 2nd TCP connection (for file) to client After transferring one file, server closes data connection.

TCP control connection port 21

FTP client

TCP data connection port 20

FTP server

Server opens another TCP

data connection to transfer another file. Control connection: out of band FTP server maintains state: current directory, earlier authentication

FTP commands, responses


Sample commands:
sent as ASCII text over

Sample return codes


status code and phrase (as

control channel USER username PASS password

LIST return list of file in

current directory (gets) file

RETR filename retrieves

STOR filename stores

(puts) file onto remote host

in HTTP) 331 Username OK, password required 125 data connection already open; transfer starting 425 Cant open data connection 452 Error writing file

Electronic Mail
Three major components:
user agents
mail servers simple mail transfer
mail server user agent

outgoing message queue user mailbox

protocol: SMTP

SMTP SMTP
mail server

user agent mail server

User Agent a.k.a. mail reader composing, editing, reading mail messages e.g., Eudora, Outlook, elm, Netscape Messenger outgoing, incoming messages stored on server

user agent

SMTP
user agent

user agent

user agent

Electronic Mail: mail servers


Mail Servers
mailbox contains incoming
user agent mail server user agent mail server user agent

messages for user message queue of outgoing (to be sent) mail messages SMTP protocol between mail servers to send email messages client: sending mail server server: receiving mail server

SMTP SMTP
mail server

SMTP
user agent

user agent

user agent

Electronic Mail: SMTP [RFC 2821]


uses TCP to reliably transfer email message from client

to server, port 25 direct transfer: sending server to receiving server three phases of transfer handshaking (greeting) transfer of messages closure command/response interaction commands: ASCII text response: status code and phrase

messages must be in 7-bit ASCII

Scenario: Alice sends message to Bob


1) Alice uses UA to compose message and to bob@someschool.edu 2) Alices UA sends message to her mail server; message placed in message queue 3) Client side of SMTP opens TCP connection with Bobs mail server 4) SMTP client sends Alices message over the TCP connection 5) Bobs mail server places the message in Bobs mailbox 6) Bob invokes his user agent to read message

1 user agent 2

mail server 3

mail server 4 5 6

user agent

Questions? Thank You vasan@sahasrasolutions.com

Das könnte Ihnen auch gefallen