You are on page 1of 25

Computer Networks

Chapter 1:Introduction
Computer Networking: A Top Down Approach ,
4th edition. Jim Kurose, Keith Ross

Whats the Internet: A Service View


Communication

applications: Involve multiple end system that exchange data with each other. Web, VoIP, email, games, ecommerce, file sharing Applications do not run on the routers Communication services provided to applications: reliable data delivery from source to destination (connection oriented) best effort (unreliable) data delivery (connection less)

infrastructure that provides services to

Whats a protocol?
Human Protocols: whats the time? I have a question Interview Network Protocols: machines rather than humans all communication activity in Internet governed by protocols

specific msgs sent specific actions taken when msgs received, or other events

protocols define format, order of msgs sent and received among network entities, and actions taken on msg transmission, receipt

The Network Edge:


end systems (hosts):

client/server model

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

peer-peer

Peer-Peer model:

client host requests, receives service from always-on server client/server e.g. Web browser/server; email client/server minimal (or no) use of dedicated servers e.g. Skype, BitTorrent, Kazaa

More

in Chapter 2

Network Access
Access Networks:
The physical link that connects an end system to its edge router.

Q: How to connect end systems to

edge router? Access Networks can be loosely classified into three categories
Residential access networks

Dial up, DSL etc Institutional access networks (school, company) Ethernet mobile access networks

Wireless LAN (WiFi) Wider-area wireless access (WiMAX)

The Network Core


Mesh of interconnected

routers the fundamental question: how is data transferred through net? circuit switching: dedicated circuit per call: telephone networks packet-switching: data sent through network in discrete chunks called packets
Hotel reservation analogy

Network Core: Circuit Switching


End-end resources reserved for the duration of the call Three phases Establish, Transfer, Disconnect dedicated resources: no sharing Guaranteed performance Very Reliable Developed for Telephone networks Inefficient Channel capacity dedicated for duration of connection If no data, capacity wasted Set up (connection) takes time

Network Core: Packet Switching


Todays internet is a packet switched network Each end-end data stream divided into packets Each packet contains a portion of user data plus some control info. Each packet has to find its own route to the destination No predetermined path Decision as to which node to hop to in the next step is taken only when a node is reached. Resources used as needed Congestion : packets queue, wait for link use Reliability Less reliable Store and forward switching Routers receives complete packet before forwarding Question: What is Cut through Switching?

Throughput
The rate (bits/sec) at which bits are transferred

between sender/receiver Difference between Bandwidth and Throughput? ISPs sell bandwidth In computer networks, the throughput is less than the bandwidth for several reasons The channel may be shared by other users Packet loss due to congestion Packet loss due to bit errors Noise in the channel Transmission rates of the link over which the data flows. What is Goodput?

Throughput
Rs

< Rc What is average end-end throughput?


Rs bits/sec Rc bits/sec

Rs

> Rc What is average end-end throughput?


Rs bits/sec Rc bits/sec

Throughput is min {Rs,Rc} Transmission Rate of the bottleneck link

Throughput
10 clients/servers pairs,
Common link R traversed by

all 10. Rate of the link R is very large then the throughput is min {Rs , Rc} Rs=2Mbps, Rc=1Mbps, R=5Mbps Common link divides transmission rate equally among the 10 downloads

Rs

Rs
R Rc Rc

Rs

Rc

500kbps to each download

Shared Link R is now the

10 connections share bottleneck link R

bottleneck.

How do loss and delay occur?


packets queue in router buffers packets queue, wait for turn queue (aka buffer) has finite capacity packet arriving to full queue dropped (aka lost) lost packet may be retransmitted

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. Processing Delay: Time required to examine packet header and determine output link check bit errors High Speed Routers Microseconds or less
A transmission
2. Queuing Delay:

Time waiting at output link for transmission depends on congestion level of router If queue empty no delay Microseconds to milliseconds

propagation
B processing

queueing

Delay in packet-switched networks


3. Transmission Delay: R=link bandwidth (bps) L=packet length (bits) time to push all of packets bits into the link = L/R Microseconds to milliseconds
A transmission

4. Propagation Delay: Time to propagate from the beginning of the link to the other router (node) propagation delay = d/s d = length of physical link s = propagation speed in medium (~3x108 m/sec)

propagation B

nodal processing

queueing

Nodal delay
d nodal d proc d queue d trans d prop
dproc = processing delay

typically a few microsecs or less dqueue = queuing delay depends on congestion dtrans = transmission delay = L/R dprop = propagation delay microsecs or msecs

End to End Delay?

Queuing Delay
When is Queuing Delay large and

when it is insignificant?

Rate at which traffic arrives at the

queue Transmission rate of the link Nature of the arriving traffic


R=Transmission Rate (bps)

L=packet length(bits)

rate(packets/sec) Traffic Intensity = (Average rate at which bits arrive at the queue) =La Transmission Rate R La/R ~ 0: average queuing delay small La/R -> 1: delays become large (queue begins to get larger) La/R > 1: average rate at which bits arrive at the queue exceeds the rate at which the bits can be transmitted from the queue. more work arriving than can be serviced Packet Loss will occur

a=average packet arrival

Queuing Delay
Consider the case La/R1 Nature of arriving traffic impacts queuing delay in such a case

In reality the arrival process to a queue is random and arrivals do not follow any pattern.
(Find about Queuing Theory?)

Protocol Layers
Networks are complex! many pieces: hosts routers links of various media applications protocols hardware, software

Question:
Is there any way of organizing network architecture?
Answer:

Yes possible with a layered architecture

Organization of air travel


ticket (purchase) ticket (complain) baggage (claim) gates (unload) runway landing

baggage (check)
gates (load) runway takeoff airplane routing

airplane routing
airplane routing

A series of steps(actions)

Layering of Airline Functionality


ticket (purchase) baggage (check) gates (load) runway (takeoff) airplane routing
departure airport

ticket (complain) baggage (claim gates (unload) runway (land) airplane routing airplane routing airplane routing
arrival airport

ticket baggage gate takeoff/landing airplane routing

intermediate air-traffic control centers

Airline functionality can be divided into layers, providing a frame work in which we can discuss air travel. At the ticketing layer and below Airline-counter-to-airline-counter transfer of a person. At the gate layer Departure-gate to-arrival-gate transfer of a person is accomplished Layers: each layer implements a service via its own internal-layer actions Combined with the services directly below it

Why layering?
Dealing with complex systems: Discuss a well defined, specific part of a large and complex system Modularization eases maintenance, updating of system Change of implementation of layers service transparent to rest of system e.g. change in gate procedure doesnt affect rest of system

Internet Protocol Stack


To provide structure to design of network protocols, network designers organize protocols in layers Service says what a layer does Protocol says how the service is implemented Advantages Drawbacks When taken together the protocols of various layers are called the Protocol Stack. Internet Protocol Stack consists of Five layers Physical, Link, Network, Transport and Application layers . Organization of Book

Internet Protocol Stack


Application Layer:
Network applications and their application layer protocols reside. Provides user interfaces and support for services such as email, file transfer etc. Hyper Text Transfer Protocol (HTTP) File Transfer Protocol (FTP) Session Initiation Protocol (SIP) An application layer protocol is distributed over multiple end systems The packets of information at the application layer is called as a message.

Internet Protocol Stack


Transport Layer:
Transports application-layer messages between application end points. Transport layer packet is called as a segment Breaks long messages into shorter segments There are two Transport Layer Protocols Transmission Control Protocol (TCP)
Connection Oriented service Guaranteed delivery of application layer messages Flow control Congestion Control

User Datagram Protocol (UDP)


Connectionless service No reliability, flow control and congestion control

Internet Protocol Stack


Network Layer: Responsible for moving network layer packets known as datagrams from one host to another. Transport layer passes a transport layer segment and a destination address to the network layer. Network layer includes IP Protocol Defines the fields in the datagram as well as how end systems and routers act on these fields Different routing protocols. Determine the route that datagrams take between sources and destinations

You might also like