Class | Date | Topics covered in class |
1 | Wed 9/6 | Getting started: syllabus, grading policy, course outline, online services,
submission of assignments, internet nuts and bolts, the network edge, client
and server programs.
|
2 | Fri 9/8 | The network core, circuit and package switching, TDM and FDM approaches to bandwidth sharing, physical media, statical multiplexing, store-and-forward transmission principle, computing the amounts of time for data transmission, packet switching vs. message switching vs. circuit switching, routing and forwarding. ISPs and Internet backbones, classification of networks (Tier I, Tier II, etc.), package processing at nodes, sources for package delays at nodes.
|
3 | Mon 9/11 | Loss of packages, throughput of networks, protocol layers, analogy between network and airline transportation protocols, Internet protocol stack, ISO/OSI model, encapsulation.
|
4 | Tue 9/12 | Principles of network applications, Client/server vs. P2P model, processes and ports, application-level protocol defines, intro to HTTP protocol, computing the response time, HTTP headers, the HTTP GET request.
|
5 | Wed 9/13 | HTTP status codes, HTTP request and response formats, programming server-side
applications in Java.
|
6 | Fri 9/15 | Programming client HTTP applications in Java.
|
7 | Mon 9/18 | The FTP protocol, the SMTP protocol, 7-bit encoding and decoding of data, Lab
1
|
8 | Tue 9/19 | Lab 2: Wireshark HTTP lab |
9 | Wed 9/20 | Working with TCP sockets in Java,
working with UDP sockets in Java, the NTP protocol.
|
10 | Fri 9/22 | DNS services, recursive and iterative DNS querries, DNS records and request/responce structure, handling DNS distributed database.
|
11 | Mon 9/25 | Lab 3: Wireshark DNS lab |
12 | Tue 9/26 | Intro to P2P applications, file distribution problem and approaches to it, multiplexing and demiltiplexing connectionless and connection based sockets, the UDP protocol, computing checksums.
|
13 | Wed 9/27 | Principles of reliable data transfer, class Packet, Programming FSM 1.0
receiver.
|
14 | Fri 9/29 | FSM 2.0 for data transfer with errors, the ACK and NAK signals,
programming v2.0 in Java, version 2_1.
|
15 | Mon 10/2 | Implementation of FSM 2.1 in Java, FSM 2.2 for handling package and ACK losses, replacing NACK with ACK, FSM v3.0.
|
16 | Tue 10/3 | Pipelined package sending, the Go-Back N protocol, intro to selective Repeat protocol, Comparison of Go-Back N and Selective Repeat protocols.
|
17 | Wed 10/4 | Intro to TCP protocol, TCP header, sequence and ack numbers, RTT estimation and timeout, analysis of the simplified TCP.
|
18 | Fri 10/6 | Fast retransmit, TCP flow control, TCP connection setup and termination.
|
19 | Mon 10/9 | Lab 5: Wireshark TCP lab |
20 | Tue 10/10 | Intro to the network layer services, comparison of VC and datagram networks, intro to routers hardware.
|
21 | Wed 10/11 | The datagram format IPv4 addresses, subnets, hierarchical structure of IPv4
addresses.
|
22 | Fri 10/13 | DHCP protocols, Network Address Translation (NAT).
|
23 | Mon 10/16 | ICMP protocol, IPv6 protocol and headers, tunneling,
characterization of routing algorithms.
|
24 | Tue 10/17 | Midterm Exam I (in-class part)
|
25 | Wed 10/18 | Configuring routers, graphs representation in software,
the LS routing algorithm and its running time.
|
26 | Fri 10/20 | No class
|
27 | Mon 10/23 | Fall break
|
28 | Tue 10/24 | Fall break
|
29 | Wed 10/25 | Implementation of the LS algorithm, priority queues and tree balancing.
|
30 | Fri 10/27 | Intro to dynamic programming routing methods,
the Distance Vector distributed algorithm, comparison of LS and DV algorithms.
|
31 | Mon 10/30 | Hierarchical routing, overview of RIP and OSPF algorithms,
intro to broadcasting in networks.
|
32 | Tue 10/31 | Kruskal algorithm for constructing minimum weight spanning trees,
reverse trees broadcasting, multicasting, Steiner trees, pruning and flooding, review of Chapter 4, intro to the link layer and its services, error correction and detection techniques.
|
33 | Wed 11/1 | The CRC algorithm, intro to multiple access protocols, time sharing and bandwidth sharing, seraparting frequencies with digital signal processing, TDMA and FDMA methods, random access protocols, slotted Aloha protocol.
|
34 | Fri 11/3 | Efficiency of the original Aloha protocol, the CSMA approach, Ethernet CSMA/CD algorithm.
|
35 | Mon 11/6 | The token ring protocols, comparison of MAC protocols, link level addressing,
the ARP protocol.
|
36 | Tue 11/7 | Connecting hosts to the Internet by using hubs and switches, summary of network
protocols operation.
|
37 | Wed 11/8 | Wireless worls challenges, relashinship between SNR and EBR.
|
38 | Fri 11/10 | CDMA encoding and decoding, association of wireless channels, advance features
of 802.11 (WiFi) protocol.
|
39 | Mon 11/13 | Cellular systems generations, addressing and routing principles to mobile
users, direct and indirect routing, mobile IP handling, handoff algorithm.
|
40 | Tue 11/14 | Installing required features in Silicon Labs Simplicity Studio,
overview of Simplicity Studio configuration, creating a sample project.
|
41 | Wed 11/15 | Configuring pins for I/O operation, retargeting output to terminal console,
Blink-A-LED project, configuring bootloader for Bluetooth projects.
|
42 | Fri 11/17 | Working with GAP: advertizing channels, modifying server name,
setting scan reports, setting advertisement parameters,
indicate connection with a LED.
|
43 | Mon 11/20 | Midterm Exam II
|
44 | Tue 11/21 | Working with GATT and profile manager, creating a custom profile, services
and characteristics, reading and writing characteristic values,
processing software timer events.
|
45 | Wed 11/22 | Working with characteristic of types USER and HEX, sending
external interrupts to the Bluetooth stack, reading/writing values to/from
GATT database.
|
46 | Fri 11/24 | No class - Thanksgiving
|
47 | Mon 11/27 | Processing button interrupts, sending notifications and indications to
clients.
|
48 | Tue 11/28 | Enabling notificationa and indications, getting client's indication ACKs.
|
49 | Wed 11/29 | Working with I2C interface and Si7021 sensor,
Bluetooth temperature and humidity Server design.
|
50 | Fri 12/1 | Completing temperature and humidity server project.
|
51 | Mon 12/4 | Printing Bluetooth module's MAC address, changing the MAC address, adding
notifications processing to the temperature and humidity project.
|
52 | Tue 12/5 | Bluetooth scanner project,
configuring EFR Connect mobile app for Bluetooth server mode,
receiving server's notification by clients.
|
53 | Wed 12/6 | Working with Bluetooth Security Manager (SM).
|
54 | Fri 12/8 | Working with HID over BLE protocol, configuring BLE keyboard and mouse.
|
55 | Mon 12/11 | PCM encoding of audio signals, WAV file format, compression and decompression
of WAV files with ADPCM algorithm.
|
56 | Tue 12/12 | CDN networks and their functionality, making the Best
of the Best-Effort Service: playing delay adjustment, 3 approaches to media
encoding.
|
57 | Wed 12/13 | The RTSP protocol, the RTP and RTCP protocols, the SIP
protocol, intro to the H.323 protocols suite,
providing multiple classes of service approaches, scheduling and policing
techniques.
|
58 | Fri 12/15 | Course review.
|