The scope and expectations of a senior-level classThe scope and expectations of a senior-level class...

Post on 10-Jul-2020

1 views 0 download

Transcript of The scope and expectations of a senior-level classThe scope and expectations of a senior-level class...

The scope and expectations of asenior-level class

Although a lot of new material is introduced, the emphasis is on critical thinking, and integration of existing knowledge and skills.Some of the elements to integrate in this class:•Knowledge of computer systems•Programming (we use Python)•Algorithms (COSC 2341 is prerequisite)•Calculus (MATH 2414 is prerequisite)•Elementary probability (MATH 1342 is helpful)

Introduction

Chapter 1

Networks, internetworks,distributed systems

interconnected computers = computers able to exchange information

network = collection of autonomous computers • interconnected by a single technology and• with one owner/administratorinternetwork = internet (not necessarily The Internet!):• multiple technologies and/or

• multiple owners/administrators

internet vs. Internet - AP doesn’t get it ...

https://www.theverge.com/2016/4/2/11352744/ap-style-guide-will-no-longer-capitalize-internet(linked on our webpage)

Interconnected computers Internetworks

Networks

Interconnected computers Internetworks

Networks

Give an example system in each of the four (?) parts of this Venn diagram!

Interconnected computers Internetworks

Networks

Unconnected computers

Tarleton intranet

The network of desktops in this

room

Tianhe-2 supercomputer(33.8 petaflop)

16,000 Intel-based computers

Sunway TaihuLight supercomputer (93 petaflop)

40,960 Sunway-based computers

PC connected wirelessly to

printer

Distributed system = collection of autonomous computers that appears to its users as a single coherent system

• It is a software construct, built on top of a network or internetwork

• The software is called middleware

Example: the WWW.

Networks, internetworks,distributed systems

Represent distributed systems in this Venn diagram!

Interconnected computers Internetworks

Networks

Interconnected computers Internetworks

Networks

Distributedsystems

QUIZ: How would you classify a Remote Desktop

system?

Image source: http://pcuserinfo.com/remote-desktop-services/

QUIZ: How would you classify Dropbox?

Image source: https://cacoo.com/diagrams/r2b7tm121FwMEOgI-3FFE3.png

QUIZ: How would you classify a supercomputer?

Image source: https://en.wikipedia.org/wiki/Supercomputer

1.1 Uses of networksThe client-server model

The client initiates communication by placing a request to the server

Client characteristics• Always initiates requests to servers.• Waits for and receives replies.• Usually connects to a small number of servers at any one time.• Usually interacts directly with end-users using user interface (e.g. GUI).

Server characteristics• The opposite!

1] Several PCs in an office using the same printer2] A bank database handling withdrawals and deposits from

several ATMs3] Microcontroller system monitoring tire pressure in a car.

There is a “smart” sensor in each tire.4] A team of mobile robots sending live video wirelessly to

a home base.5] Music fans exchanging mp3 files by email.

QUIZ: For each application, specify which part should be the client and which the server:

Peer-to-Peer (P2P)

In peer-to-peer system there are no fixed clients and servers.

Wireless vs. mobile computing

This table needs some reworking!

Ubiquitous computing

A.k.a. pervasive computing, cooperating objects, or“every light-bulb should have an IP address”

To do for next time:

Read the entire Section 1.1 and take notes.

1.2 Network HardwareBroadcast, Multicast, Unicast

Types of transmission technology:• Broadcast links

– Broadcast: everyone receives– Multicast: only a sub-group receives

• Point-to-point (a.k.a. unicast) links

For each of the scenarios below, decide if transmission is uni-, multi-, or broadcast:

1. The dean is sending a message to the dept. heads, to be distributed:

(a) only to tenured faculty.(b) to all faculty.

2. Two people whisper to each other in a noisy bar.3. Airhorn tornado alarm.

Decide if transmission is uni-, multi-, or broadcast:

4] The game of “telephone”

QUIZ

And now let us inject some probability

4] The game of “telephone”There are 8 people in the game, and the probability of a

change to occur between any two people is 0.25 (25%), what is the probability for the message to propagate unchanged to the last person?

Hint: How many transmissions are there?

QUIZ

Answer: 0.75^7 = 0.133

Network size Home Area Nw = HAN

Controller AreaNw = CAN

Systems AreaNw = SAN(e.g. computer cluster)

Storage AreaNw = SAN

1,000,000 km Solar system Earth-to-Mars

Wikipedia has even more listed: https://en.wikipedia.org/wiki/Municipal_wireless_network

Local Area Nw = LAN

Two broadcast topologies(a) Bus(b) Ring

Local Area Nw = LAN

QUIZ: Your boss asks you to design a network with a bus topology to connect the company offices in Stephenville, Granbury and Ft. Worth.

What is your answer?

Metropolitan Area Nw = MAN

MAN based on cable TV Wireless MAN (802.16)

https://loiscolton.com/2007/family/don/wireless/

Another type of wireless MAN

Wide Area Nw = WAN

The subnet contains only routers, no hosts.What is a host?

– In 99% of the cases, server, PC, or smart-phone.– Other types of hosts: mainframes, supercomputers, smart

sensors, telerobots etc.

WAN

A stream of packets moving from sender to receiver• Routing vs. forwarding• Store-and-forward vs. cut-through

QUIZ

A packet has 1000 bits, and it has to pass through 3 network nodes: A, C, E, as shown above.

All links have the same speed, 1000 bps. Processing times inside all nodes and speed-of-light propagation delays are negligible.

Find the total transmission time for store-and-forward vs. cut-through forwarding. Compare.

Hint for cut-through: It’s pipelining!

33

n k

# of steps is n+k-1

QUIZ

A packet has 1000 bits, and it has to pass through 3 network nodes: A, C, E. All links have the same speed, 1000 bps. Processing times inside all nodes and

speed-of-light propagation delays are negligible.Find the total transmission time for store-and-forward vs. cut-through forwarding.

Compare.Answers:• Store-and-fwd: 4000 ms = 4 s• Cut-through: n = 1000, k = 4 1003 steps 1003 ms• As expected, cut-through is faster (but remember the downsides!)

EXTRA-CREDIT QUIZ

Wireless NwsCategories of wireless Nws:• System interconn. (PAN, e.g. Bluetooth)• Wireless LANs (802.11)• Wireless MANs (802.16)• Wireless WANs (satellite, cellular)

Almost all wireless Nws eventually connect to a wired Nw (because the content is in wired facilities, a.k.a. server farms).

Wireless Nws

(a) Bluetooth configuration (master-slave)(b) Wireless LAN

To do for next timeRead the entire sections 1.1 and 1.2 and take notes

Redo today’s quizzes

Start a list of acronyms in your notebook, like:• CAPTCHA, LAN, WAN, MAP, PAN, VLAN, ISP

1.3 Network software

… and networks have layers, too!

In CS, this concept takes many forms: abstraction, information hiding, ADTs, encapsulation, etc.

The philosopher-translator-secretary stack.

Layer lingo

Entities, protocols, interfaces, services, peers Peers communicate horizontally using that layer’s protocol

Layer lingo

Layer N-1 is a Virtual Machine for layer NThe peers on layer N are said to have a Virtual Connection

Encapsulation, segmentation

Information flow supporting virtual communication on L5

String of bits String of bits

Voltages, amplitudes, phases0

QUIZ

The peers on L5 want to exchange a file that is 1024 Bytes long.L4 adds 16-Byte header.L3 breaks the packet into chunks that are at most 256 Bytes long

(fragmentation), and adds 8-Byte header.L2 adds a 10-Byte header and a 4-Byte trailer.What is the total overhead of this transmission (%)?

Design Issues for the Layers• Addressing = identifying senders & receivers.• Logical channels (priorities)• Direction of transfer (simplex, half-duplex, duplex)• Error Control• Reordering of messages• Flow Control• QoS (Quality of Service): reliable, unreliable• Disassembly & Reassembly• Multiplexing• Routing

Connection-Oriented vs. Connectionless

Connection-oriented: e.g. the (analog) telephone system.Connectionless: e.g. the postal system.

Trade-off:Connectionless is simple, w/little latency, but unreliable.Connection-oriented is more reliable, but adds latency,

information overhead and hardware/software complexity in the core network.

Connection-Oriented vs. Connectionless Trade-offs:Parameter Connection-oriented ConnectionlessOut of order pkts. No PossibleReliability High (dedicated “ circuit” ) Low (“ best effort” )Negotiation Yes (complexity) NoStateful nodes Yes (complexity) No (stateless)Address overhead Low HighLatency High LowThroughput High Low

QUIZ

Hint: Denote the unknown distance by x and calculate the data rate as a function of x.

Solution

Discussion

Note that Bernie’s instant data rate is not constant, actually, for most of the time it is zero! It’s really the average data rate (a.k.a. throughput) that is 150 Mbps or higher.

Consider the maximum distance found for this problem ≈ 6km. At this distance, Bernie’s average data rate (a.k.a. throughput) is exactly 150 Mbps.What is Bernie’s latency for this distance?

Discussion

Quality of Service (QoS) There are many measures of quality. Here we mention only

reliability:

Unreliable service – data can easily be lost (e.g. regular mail)

Reliable service – data is not lost (e.g. registered mail) Usually implemented through acknowledgements

(ACK) and retransmission in case of failure

Service primitives

Five service primitives for implementing a simple connection-oriented service.

Primitives = operations available to a process (can be system calls, if the protocol stack is part of the OS)

Service primitives in action

Packets sent in a simple client-server interaction on a connection-oriented network.

Service primitives in action

Many things could go wrong in the interaction above, e.g. errors, congestion etc.

A good protocol should be able to deal with such conditions.

To do for next time

Read entire section 1.3 and take notes

1.4 Reference Models(= examples of protocol architecture)

Mantra: “Keep the core dumb (and fast) and the edge smart (but slower)”

ISO-OSI reference model

Short description of functions performed on each of the 7 ISO-OSI layers (pp. 41-45 → Read and take notes!)

• PHYSICAL: voltages, durations, duplexing, cables, pins

• LINK: frames, error detection/correction, flow ctrl., medium access

• NETWORK: addressing, routing, congestion, QoS

• TRANSPORT: fragmenting/reassembly, end-to-end

• SESSION: tokens, synchronization (continuing a long transmission after a crash, e.g. SmartFTP)

• PRESENTATION: semantics (conversion between different file formats), compression, encryption

• APPLICATION: programs the user interacts with, e.g. FTP, HTTP, SMTP

The TCP/IP reference model(cca 1974 - ARPANET, Internet)

Protocols and networks in the TCP/IP model

Source: http://www.serviceassurancedaily.com/2011/10/the_state_of_the_network_take_1.html

Comparing OSI and TCP/IP ModelsThe short story:OSI has better structure, clearly distinguishing among

Services, Interfaces and Protocols. This makes it more modular, so it’s easy to replace protocols when technology changes.

But OSI designers did not have much experience in practical networking → did not optimally assign functionalities to layers (e.g. MAC)

TCP/IP has great implementations, written by the people with the most experience (e.g. Berkeley sockets!)

Comparing OSI and TCP/IP ModelsBut TCP/IP is not very modular, e.g. the Link “layer” not

really a layer, but an interface between host and network.

This makes it hard to change TCP/IP when technology changes. There are minor TCP/IP protocols deeply entrenched, that are hard to replace, e.g. Telnet knows nothing of mice or graphical interfaces.

For the long story, read pp. 49-54 of our text.

Bad Timing

The apocalypse of the two elephants: ISO-OSI got “ crushed” (and TCP/IP was too early)!

Too early for standards!

Too late for standards!

The story behind the “elephants”

From David Clark himself:https://groups.csail.mit.edu/ana/People/DDC/Apocalypse.html

Hybrid Model (used in our text)

For next time

Read Section 1.4 and take notes.

Internet Usage• 1990 = the year when the government got out of the Internet: the non-

profit ANS corporation takes over NSFNET and upgrades its long-distance links from T1 (1.5 Mbps) to T3 (45 Mbps) →ANSNET

• 1995 ANSNET is sold to AOL, but by then many other ISPs exist

What is means “to be on the Internet”:• Run TCP/IP protocol stack• Have IP address• Be able to send IP pkts to any other machine that’s on the Internet

Traditional applications (1970 – 1990) • E-mail (as opposed to snail-mail)• News (electronic billboards)• Remote login (telnet, rlogin etc.)• File transfer (FTP)

Internet Usage - WWW

Early history of the WWW:• 1989: Physicist Tim Berners-Lee (CERN) makes the initial

proposal for a web of linked documents.See what the man is up to these days: The Semantic web

• 1990: First operational text-based web (prototype).A taste of Lynx – initially developed by students at U Kansas in 1992 for Unix and VMS!

• 1993: Computer scientist Mark Andreessen (U.Illinois) releases Mosaic – the first graphical browser.

• 1994: Andreessen founds Netscape Communications Corp.

Architecture of the Internet

Fig 1-29. Overview of the Internet.

Where to find a Texas ISP

The Cooperative Association for Internet Data Analysis - CAIDA

2002

2007

The n-squared problem in the earlydays of the telephone (Boston, MA, USA)

The “Telephone Tower” in Stockholm, Sweden (1890)

Computer Nws vs.Telecommunications Nws

Source: https://en.wikipedia.org/wiki/Telecommunications_network

1.6 Network StandardizationRead this section and write in your notebook what the following

acronyms stand for:• ISO• ANSI• NIST• ITU

ITU-RITU-TCCITT

• IEEE• IAB (the current meaning)

IETFRFC

IRTF

IEEE 802 Standards

The 802 working groups. The important ones are marked with *. The ones marked with are hibernating. The one marked with † gave up.

More about pioneers and the early days

http://www.ibiblio.org/pioneers/index.html

See more links on our webpage!

1.7 Metric unitsStorage applications (e.g. HDD, RAM, file size): kilo =

1024 = 210

• A 3 MB file has 3*1024*1024 BytesTransmission applications (e.g. modem, satellite,

DSL): kilo = 1000• A 54 Mbps link means that 54*1000*1000 bits are

transferred every second

How long does it take to send a 3 MB file over a 54 Mbps link (ignoring overheads?)

Homework for Ch.1: End of chapter 5, 6, 7, 8, 16, 18, 19, 23