October 5, 2011 Abstraction, Privacy, and the Internet

Preview:

Citation preview

October 5, 2011

Abstraction, Privacy, and

the Internet

Agenda Team Project #1 due Monday

One per team Presenting to the class

Abstraction Jeff Kramer’s “Is Abstraction the Key to

Computing?” Internet Blown to Bits Chapters 2 & 3

Kramer’s Question

“Why is it that some software engineers are computer scientists are able to produce clear, elegant designs and programs, while others cannot?”

Cognitive Development

Jean Piaget (1896-1980) - four stages of development Sensorimotor Pre-operational (infancy – 7) Concrete operational (7-12) Formal operational (12 to adulthood)

30%-35% of adolescents conquer fourth stage

What is Abstraction?

“The act of withdrawing or removing something”

“The act or process of leaving out of consideration one or more properties of a complex object so as to attend to others”

Is abstraction only found in Computer Science?

Abstraction in Art

“It is easy to make something simple sound complex, however it is more difficult to make something

complex sound simple.”

Abstraction in Life

Abstraction in Life

Abstraction in BYOB - Procedural

Abstraction in CS

“Once you realize that computing is all about constructing, manipulating, and reasoning about abstractions, it becomes clear that an important prerequisite for writing (good) computer programs is the ability to handle abstractions in a precise manner.”

- Keith Devlin

Abstraction and the Internet – IP Addresses 70.230.24.81

Four octets Each block is an 8 digit binary number

Dynamically assigned (DHCP – Dynamic Host Configuration Protocol) Laptop

Static IP address Web server

Abstraction and the Internet – IP Addresses

http://computer.howstuffworks.com/dns.htm

Abstraction and the Internet – Domain Name Server Domains have a hierarchy

http://cs.ua.edu EDU – top-level domain

Accredited post-secondary educational US institutions UA – University of Alabama CS – Computer Science department

Information sent in Packets

Packet consists of two types of data Control information: source, destination, error

detection, sequence User data

Some systems send packetspersistently to avoid collisions

Delivery not guaranteed How is it sent?

Protocols

Networks speak the way people do Speaking has certain rules

Speak the same language (English, Spanish, …) One person speaks at a time Interruptions are disruptive Speak with the proper volume Don’t speak for too long

Pete Siemsen - http://nets.ucar.edu/nets/presentations/itn/

Protocols

By using a protocol, we know The syntax of a message

Fields/format The semantics of a message

Meaning; may illustrate error What actions required after receiving the

message If error received, the file may need to be resent

TCP/IP

Created by DARPA in 1970s Transmission Control Protocol and Internet

Protocol Also known as Internet Suite Protocol

IP moves packets of data from source to destination based on a four byte destination address

TCP verifies the correct delivery of data

Wget

Allows the user to download a file without using a browser

http://gnuwin32.sourceforge.net/packages/wget.htm

Privacy

Bits Behind the Scenes