CS 164 Slide Set 2 Chapter 1 Introduction

  • Slides: 17
Download presentation
CS 164: Slide Set 2: Chapter 1 -Introduction (continued).

CS 164: Slide Set 2: Chapter 1 -Introduction (continued).

Roadmap • Performance metrics – – bandwidth latency bandwidth delay product throughput • What

Roadmap • Performance metrics – – bandwidth latency bandwidth delay product throughput • What are sockets ? APIs.

Bandwidth: Number of bits that can be transmitted over a certain tiem -- typically

Bandwidth: Number of bits that can be transmitted over a certain tiem -- typically per unit time. Some people also refer it to the spectrum -- example 10 Ghz. This typically translates to a maximum data rate.

Transmission Time • A function of bandwidth • If bandwidth is B, transmission time

Transmission Time • A function of bandwidth • If bandwidth is B, transmission time is 1/B. • If bandwidth is 10 Mbps, the transmission time is 1/(10 x 106) = 1 ms.

Propagation Delay • Once a bit is put on a link, the time it

Propagation Delay • Once a bit is put on a link, the time it takes to go across the link. • Depends on the speed with which the electromagnetic signal (light) travels in the medium -- 2 x 108 m/s in fiber. • Propagation delay = distance/speed of signal.

Queuing Delay • At each intermediate node or router, a packet is queued. •

Queuing Delay • At each intermediate node or router, a packet is queued. • Thus, it has to wait prior to transmission. • How long does it have to wait ? Dependent on the load on the network -how many packets are traversing that router ?

Latency • How long does a packet take to go from one host to

Latency • How long does a packet take to go from one host to another. • Also called “Delay”. Latency = Propagation Delay + Queueing Delay + Transmission Delay

Round Trip Time • Packet is sent from sender to receiver. • Receiver sends

Round Trip Time • Packet is sent from sender to receiver. • Receiver sends ACK (assume immediately) to sender. • Total time delay incurred between the instance the packet is set to the time the ACK is received. • Note if forward delay = backward delay, RTT = 2 * Latency (typically assumed -- although not always accurate).

Bandwidth Delay Product Delay Bandwidth • Think of this as a pipe. • How

Bandwidth Delay Product Delay Bandwidth • Think of this as a pipe. • How much does the pipe hold in bits ? • In essence, if I send a stream of bits, the first bit traverses the bit in “Delay” seconds. • In the meantime, how many more bits can I send ?

Example • For a transcontinental channel -- latency = 50 milliseconds. • Bandwidth =

Example • For a transcontinental channel -- latency = 50 milliseconds. • Bandwidth = 45 Mbps. • Bandwidth delay product = 50 x 10 -3 x 45 x 106 = 2. 25 Mbits • We can transmit 2. 25 M bits before the first bit reaches the other end of the channel !

What if ACK is expected ? • Note if ACK is expected, how many

What if ACK is expected ? • Note if ACK is expected, how many bits can the user transmit before he expects to have an ACK ? • RTT X Bandwidth • For symmetric channels 2 X Delay X Bandwidth.

Throughput • Defines how efficiently channel is being used. Throughput = Transfer size/ Transfer

Throughput • Defines how efficiently channel is being used. Throughput = Transfer size/ Transfer time. What is the transfer time ? RTT + (Transfer size/Bandwidth) (ignoring queuing delays).

Example • 1 MB file over a 1 Gbps network with RTT 100 milliseconds.

Example • 1 MB file over a 1 Gbps network with RTT 100 milliseconds. • Transfer time = 100 ms + (1 MB/1 Gbps) = 100 ms + 8 ms = 108 ms. • Effective throughput = 1 MB/108 ms = 74. 1 Mbps.

Impact of data size • If data size increases, (Transfer size/Bandwidth) increases. • Could

Impact of data size • If data size increases, (Transfer size/Bandwidth) increases. • Could become much larger than RTT. • In that case, Throughput ~ (Transfer size /(Transfer size/Bandwidth) ~ Bandwidth! • Bottomline : Throughput increases with data transfer size.

APIs and Sockets • Network protocols implemented as a part of the OS. •

APIs and Sockets • Network protocols implemented as a part of the OS. • API -- Interface that OS provides to the networking subsystem. • This interface is exported to the user or the application process.

Socket Interface Application Presentation Appl User Process Application Details Session Socket Transport TCP/UDP Network

Socket Interface Application Presentation Appl User Process Application Details Session Socket Transport TCP/UDP Network IP Link Physical Device Drivers/HW Kernel Process Communication Details

A note about sockets • Data through sockets -- similar to writing to a

A note about sockets • Data through sockets -- similar to writing to a file. • Sockets were originally in BSD (Berkeley software development) but now are popular in almost all OS. • Rest of sockets: Read book, Labs.