31
Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Embed Size (px)

Citation preview

Page 1: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Chapter 1 Review

Csc4220/6220

Computer Networks

Instructor: Akshaye Dhawan

Page 2: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Network Core

• 2 ways of transferring data thru the core:

a. Circuit Switching

b. Packet Switching

• Circuit Switching : Dedicated resources per ‘call’. How do we divide resources?

a. TDM

b. FDM

Page 3: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Circuit Switching: FDM and TDM

FDM

frequency

time

TDM

frequency

time

4 users

Example:

Page 4: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Packet Switching

• Resources shared as needed

• aka. Statistical multiplexing

• Advantages:

1. More users

2. Great for bursty traffic patterns

• Disadvantage: No guarantees. Congestion issues.

Page 5: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Packet-switching: store-and-forward

• Takes L/R seconds to transmit (push out) packet of L bits on to link or R bps

• Entire packet must arrive at router before it can be transmitted on next link: store and forward

• delay = 3L/R

Example:• L = 7.5 Mbits• R = 1.5 Mbps• delay = 15 sec

R R RL

Page 6: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Network Taxonomy

Telecommunicationnetworks

Circuit-switchednetworks

FDM TDM

Packet-switchednetworks

Networkswith VCs

DatagramNetworks

• Datagram network is not either connection-oriented or connectionless.• Internet provides both connection-oriented (TCP) and connectionless services (UDP) to apps.

Page 7: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Access Networks and Physical Media

• Dialup

• ADSL – Asymmetric. Why?

• Still use phone line. Distance between ISP and user reduced.

• Coaxial cable

• LAN’s

• Wireless LAN’s

Page 8: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Physical Media

• Twisted Pair

• Coaxial Cable

• Fiber

• Radio

• ISP structuring model

Page 9: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Delays

A

B

propagation

transmission

nodalprocessing queueing

• 1. nodal processing: – check bit errors– determine output link

• 2. queueing– time waiting at output

link for transmission

– depends on congestion level of router

Page 10: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

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

link = L/R

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

medium (~2x108 m/sec)• propagation delay = d/s

Note: s and R are very different quantities!

A

B

propagation

transmission

nodalprocessing queueing

Page 11: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Total delay

• dproc = processing delay– typically a few microsecs or less

• dqueue = queuing delay– depends on congestion

• dtrans = transmission delay– = L/R, significant for low-speed links

• dprop = propagation delay– a few microsecs to hundreds of msecs

proptransqueueprocnodal ddddd

Page 12: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Queuing delay

traffic intensity = La/R

• La/R ~ 0: average queueing delay small• La/R -> 1: delays become large• La/R > 1: more “work” arriving than can

be serviced, average delay infinite!

• R=link bandwidth (bps)• L=packet length (bits)• a=average packet

arrival rate

Page 13: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Internet protocol stack• application: supporting network

applications– FTP, SMTP, STTP

• transport: host-host 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”

application

transport

network

link

physical

Page 14: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Chapter 2 Review

Page 15: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Architectures for Applications

• Client-server

• Peer-to-peer (P2P)

• Hybrid of client-server and P2P

Page 16: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Socket Model

• process sends/receives messages to/from its socket

• socket analogous to door– sending process shoves message out door– sending process relies on transport

infrastructure on other side of door which brings message to socket at receiving process

Addressing needs: IP address (host) + Port (process)

Page 17: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Main services needed from Transport Layer

• Data Loss

• Timing

• Band Width

Page 18: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Internet transport protocols services

TCP service:• connection-oriented: setup

required between client and server processes

• reliable transport between sending and receiving process

• flow control: sender won’t overwhelm receiver

• congestion control: throttle sender when network overloaded

• does not provide: 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

Q: why bother? Why is there a UDP?

Page 19: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

HTTP

• Non Persistent -At most one object is sent over a TCP connection.

• Persistent - Multiple objects can be sent over single TCP connection between client and server.

Persistent without pipelining:• client issues new request only when previous response

has been received• one RTT for each referenced objectPersistent with pipelining:• default in HTTP/1.1• client sends requests as soon as it encounters a

referenced object• as little as one RTT for all the referenced objects

Page 20: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

HTTP contd

• Packet Types (Request, Response)

• Methods (GET, POST etc.)

• Response codes

Page 21: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Add ons

• Cookies

• Way of adding some ‘state’

• Advantages?

• Disadvantages/Concerns?

Page 22: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Caching

• How to cache?

• Why should we cache?

• Caching issues. Keeping cache coherent?

(Conditional GET)

client

Proxyserver

client

HTTP request

HTTP request

HTTP response

HTTP response

HTTP request

HTTP response

origin server

origin server

Page 23: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Email

• User agents

• Mail servers

• SMTP – steps, contrast with HTTP

• SMTP Headers

• MIME

Page 24: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Mail access protocols

• POP – download and keep

• POP – download and delete

• POP Is stateless across sessions

• IMAP – everything organized and stored at server.

• Keeps state across sessions

Page 25: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

DNS

• Name -> IP address mapping

• What other services?

• Model: Distributed Hierarchical

Page 26: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Root DNS Servers

com DNS servers org DNS servers edu DNS servers

poly.eduDNS servers

umass.eduDNS servers

yahoo.comDNS servers

amazon.comDNS servers

pbs.orgDNS servers

Distributed, Hierarchical Database

Page 27: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Structure

• Root servers

• TLD servers

• Authoritative servers.

• Also, Local Name Server

Page 28: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Querying

• Iterative

• Recursive

• DNS caching, updating cache (TTL)

gaia.cs.umass.edu

root DNS server

1

23

4

5

678

TLD DNS server

Page 29: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

P2P

• Centralized Directory – Napster Model

• Full y Distributed – Gnutella model

• Gnutella – Overlay network, limited flooding?

• How does a peer join/leave a distributed Network?

Page 30: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

P2P

• Kazaa – Group leader model

• Distinguish between powerful/less powerful peers

• Graph model: Connected Dominating Set

Page 31: Chapter 1 Review Csc4220/6220 Computer Networks Instructor: Akshaye Dhawan

Socket Programming

• Socket Programming with TCP

• Socket Programming with UDP