This is an old version of this course, from Fall 2016. A newer version is available here.
Videos
Titles
- Introduction to data transmission
- Baseband signals, modulation, and circuit switching
- Circuit multiplexing
- Problems with circuit switching
- Introduction to Java network programming (UDP, TCP)
Introduction
The videos on this page are videos that don't fit with the class as we are currently teaching it. The low-level videos about transmitting data over physical channels and circuit multiplexing was removed to make more room for material about designing algorithms to parse data and encoding Unicode characters that can't fit in a single byte. The Java video dates back to when the course was taught in Java instead of Python. As time goes by, we may move other videos here as well.
The videos are included here in case you are curious about these topics.
The Archived Videos
Introduction to data transmission (Click here to view video)
Revised: 25 August 2013
Time code | Topic |
---|---|
00:00 | Introduction |
00:30 | Transmitting data on a mountain hike |
01:58 | Bandwidth, units (Hz), voice channel characteristics |
03:00 | Frequency and musical notes |
03:40 | Digital data: bits and bytes, data rate units and abbreviations |
05:10 | Data rate units: powers of 10 or powers of 2? |
Baseband signals, modulation, and circuit switching (Click here to view video)
Revised: 29 August 2013
Time code | Topic |
---|---|
00:00 | Introduction |
00:30 | Modulating baseband analog and digital signals on a carrier |
01:35 | Amplitude modulation (AM) |
01:53 | Why is a carrier used? |
02:20 | Sharing communication channels: circuit switching to reduce the number of channels needed |
05:20 | Circuit-switching advantage: guarantee of access for a full "conversation" |
Circuit multiplexing (Click here to view video)
Revised: 31 August 2013
Time code | Topic |
---|---|
00:00 | Introduction |
00:30 | More than one circuit on a single channel: circuit multiplexing |
01:55 | Frequency-division multiplexing (FDM) and time-division multiplexing (TDM) |
02:55 | FDM: allocate a band of frequencies to each "conversation" |
03:40 | TDM: allocate entire channel to each "conversation" for a period of time |
05:05 | FDM example: Morse code signals on separate frequencies - simultaneous channel access |
07:30 | TDM example: symbols from different "conversations" on a time-shared channel |
Problems with circuit switching (Click here to view video)
Revised: 09 September 2013
Time code | Topic |
---|---|
00:00 | Introduction |
00:30 | Circuit switching in distributed networks |
02:35 | "Wasted" bandwidth in allocated circuits ("silent periods") when allocated for duration of a "conversation" |
04:30 | Advantage of TDM for digital signals |
05:24 | Circuit switching advantages and disadvantages |
06:00 | Big disadvantage: wasted channel capacity during "silent periods" and blocking of waiting conversations |
Introduction to Java network programming (UDP, TCP) (Click here to view video)
Revised: 13 September 2013
The audio quality for this video is not up to desired standards; sorry about that.
Time code | Topic |
---|---|
00:00 | Introduction |
00:30 | Network programming at the transport layer |
01:20 | Differences between UDP and TCP |
01:40 | UDP: one-way datagram transmission, no delivery guarantee |
02:20 | TCP: established connection, bidirectional data flow |
02:40 | UDP Java programming, library classes |
03:15 | Internet addressing in Java: IP address, host name |
04:45 | Port number used to identify application |
05:00 | Source and destination host addresses and port numbers |
06:00 | DatagramPacket class |
07:00 | Transmit data source (byte data) and transmitting the data |
07:50 | Receiving datagram data |
09:30 | TCP Java programming |
10:00 | Socket and ServerSocket classes, "known (listening) port" at destination |
11:10 | Using TCP socket streams, managing multiple connections on one destination |
Acknowledgement
Nearly all of the this page and the videos it links to were created by Dr. Mark Sebern.