This class meets on Tuesdays, 3:30 PM - 6 PM

Class 1

September 3

Concepts:

  • Introductions
  • What do you think of when you think of networks?
  • Technological Metaphor as a way of seeing the world:
    • Medieval: Clock, gave rise to mechanical view of universe, Netwonian physics
    • Victorian: Steam engine, gave rise to thermodynamic view of universe (Boyle, et al)
    • Late 20th century: Computer, computational view of universe (Hawking et al)
    • Early 21st century: Network, network view of universe (Linked, et al)
  • Network dynamics
    • Centralized, distributed, and decentralized networks
    • Dyads, triads, and the links between them
    • Complete networks and incomplete networks
    • Link dynamics: Conversation, aggregation, broadcast, unicast, multicast, group
    • Rings vs stars vs complete nets
    • Link direction and symmetry
    • Density of links and its effect on robustness
    • Some interesting math on links, Johannes Putzke,University of Cologne
  • The reference lie: the OSI stack as a metaphor for communications networks
    • Physical - connectors, wires, electrical protocols
    • Datalink - Ethernet
    • Network - IP
    • Transport - TCP, UDP
    • Session - telnet, http, ftp, etc
    • Presentation - html, xml, etc
    • Application - email, web, etc
    • The TCP socket: access to the internet.
  • Networks of all flavors
    • Internet, PSTN, power grid, transportation

Technique: Review or introduction to the command line interface

Reading:

Class 2

September 10

Concepts: From serial to sockets: A review and expansion of serial communication

  • How bits become data: layers of a serial protocol
    • voltage agreement
    • timing agreement
    • logic agreement
    • TTL vs RS-232 serial
    • RS-485, USB, DMX-512 and other differential signaling protocols
    • ASCII
  • Packets vs. Circuits
  • Smart networks and dumb networks, end-to-end principles
  • How the Internet gets to you
    • Hubs, routers, switches, and endpoints
    • Addressing: IP, DNS, DHCP, etc.
    • Tiers of ISP -- turtles all the way down
    • IXPs
  • How the phone network gets to you:
    • What's the PSTN, what's POTS?
    • LATAs, LECs, RBOCs, and IXPs

Reading:

Class 3:

September 17

Concepts:

  • Opening and closing sockets
  • What sockets can do:
    • HTTP
    • Mail
    • Socket-to-serial
    • Application-to-application

Technique:

  • Processing net library chat client sockets
  • Ethernet in Hardware: Arduino Ethernet shield, WiFi shield
  • Arduino Ethernet library
  • BeagleBone, Raspberry Pi, Arduino Yśn, and other embedded processors

Assignment: Socket exercise: communicating in realtime. I will give you a game platform and the protocols to log in and communicate with it. Make a client to log in and play. Work in Processing, Flash, Arduino or whatever environment is comfortable to you. You will not play with your own client, but you'll show someone else how to use it. Making Things Talk Chapter 5 will be very helpful with this. Due in one week. Work alone or in pairs.

Reading:

Class 4: September 19, Thursday, 12 - 3 PM

Field Trip: Telx, 60 Hudson St., and 325 Hudson. Our hosts will be Hunter Newby, Founder & CEO of Allied Fiber, and co-founder and former chief strategy officer for Telx; Jim Stanley, Finance Executive at Telx; and photographer Shuli Halak, Hunter's co-author of 325 Hudson: Birth of a Carrier Hotel

Please be at the lobby of 60 Hudson ready for class at 12:15 PM sharp. Directions are here. You need to bring a government-issued photo ID to get in. A passport (any country) will do fine if you don't have a US driver's license.

Please do some background reading and research and come prepared with questions for our hosts based on our discussion of internet structures so far.

Class 5:

September 24

Presentation: Socket Project

Concepts:

  • Network geography using network tools:
    • nslookup -- what's your name
    • ping -- are you alive and can I contact you? (wired only)
    • whois -- who owns you?
    • traceroute -- how do I get to you?
    • arp -- address resolution protocol: what MAC address is linked to what IP address?
  • Corporate and working structures of the internet. ICANN, IANA, IETF, ITU, etc.

Technique:

  • Command line network tools

Reading:

Assignment:

Traceroute at least three of the sites you regularly visit: Facebook, gmail, bank, school, etc. Do it from all of the locations you regularly connect from. Save the trace in a file, and make a map of the routes, indicating the network providers that show up every time. Identify who the major tier 1 providers are in your life. Feel free to obfuscate the endpoints if you don't want us to know what sites you visit. We'll compare notes on each others traces next class.

Oct 1: No Class. Tom out of town

Class 6:

October 8

Presentation: Traceroute Project.

Concepts: Representational State Transfer

Technique:

  • HTTP from the ground up: headers, GET and POST requests, etc.

Reading:

Assignment:

Over the next three weeks, you'll Make a web interface whose elements are manipulated by physical controls in near real-time. Use REST, WebSockets, and JSON as appropriate.
work in pairs on this assignment
Week 1: describe and sketch the interface and the control protocol.

Class 7:

October 22

Concepts:

  • Event-oriented network thinking
  • Data exchange formats

Technique:

Assignment:

Week 2: prototype the HTML elements and perform basic manipulations using JS; make the network connection

Recommended Reading:

Class 8:

October 29

Concepts:

  • WebSockets and events

Technique: In-class workshop to connect the pieces of the web interface assignment.

Reading:

  • Making Things Talk, chapter 6, 7

Class 9:

November 5

Concepts:

  • Radio as Communication: Wifi, Xbee, Bluetooth, etc

Technique:

  • Radio communication basics workshop

Assignment:

Radio Exercise: We'll build a multi-node machine inspired by this work at nearfield.org. Each pair of people will be assigned a different radio device, and your job will be to receive the data, convert it to physical action, and use that action to trigger message sent by a second radio. In the end, the whole class will form one large machine.
Week 1: you'll be assigned your radios this week. Decide on a network topology for the whole class, in class.

Class 10:

November 12?

Presentation: Web interface project.

Presentation:

Present your initial physical prototype, working. Radio links need not be working to your neighbors yet.

Concepts:

  • Radio as Location or Identification

Technique: Intro to RFID and NFC

Assignment:

Week 2: Work with your neighbors to establish links in class. Determine what the major tasks will be to finalize the project.

Reading:

  • Making Things Talk, chapter 8, 9
  • Beginning NFC, chapter 1

Class 11:

November 19?

Concepts:

  • More Radio as Communication: GSM, voice, SIP

Technique: Intro to GSM

Assignment:

You've covered a number of topics very broadly this semester, all of which are connected. For your final, take any of the topics we've covered and revisit it. If it's a technical topic, do a one-week project using it and present your project and what you learned about doing it to the class. If it's a theoretical topic, explain your specific research to the class. What you present to the class should be material not covered in previous discussions.
This week decide on your topic, and prepare a short (one paragraph) blog post introducing it. If you're not sure what to do, schedule office hours with me to discuss it. Please be sure that I am aware of your topic and have approved it by next class.
This is an unusual final project in that you have only two weeks to execute it. Do not make a large production of it. Do something simple and constrained that strengthens your knowledge of a topic that you found particularly interesting. Focus on being able to explain what you learn about the topic to the class.
You may work alone or in groups on this. The time you have to present will depend on how many projects there are in total by class 12.

Class 12:

November 26?

Presentation: Present final radio network as a whole class.

In addition to presenting the working network, each pair will give the class a short (5-minute) summary of what they learned about their particular radio form that was not covered in previous classes.

Assignment:

First draft or prototype of your final due next week.

Class 13:

December 3

In-class workshop and discussion of final projects.

Class 14:

December 10?

Final presentations. Class will present and demonstrate working projects or reports on this day.