Networked Systems Architecture

Computer Science FELK30
University of Split
Spring 2011

Instructor: Milan Vojnovic

Teaching assistant: Toni Perkovic

Overview

The objective of this course is to cover basic principles that underlie the design of modern networked systems with an emphasis on the basic ideas of the underlying architectural design and algorithmic elements. The course covers the foundations of TCP/IP networking, peer-to-peer networks, data centre systems, and some aspects of online services.

The course requires no specific prerequisites.

The work for the course will consist of studying material presented through lectures, a series of laboratory exercises complementing the lectures, and a seminar that consists of studying a research paper. The laboratory exercises will provide hands on experience with network administration tools and using state of the art computing cluster systems.

Course Outline

(1) TCP/IP Network Foundations

(2) Peer-to-Peer Networks

Lecture notes: P2P Systems

(3) Data Centres

Lecture notes: Systems for Processing Massive Amounts of Data

(4) Online Services

Lecture notes: Online Services and Auctions, PageRank

Course Schedule

Lectures part 1
Mar 14 Lecture 1: TCP/IP networks - data link layer
Mar 15 Lecture 2: TCP/IP networks - internal IP routing (distance vector and link state)
Mar 16 Lecture 3: TCP/IP networks - external IP routing (bgp), TCP
Mar 17 Lecture 4: Theory of Internet bandwidth sharing
Mar 18 Lecture 5: P2P systems
Lab exercises part 1
Mar 21 Lab exe 1: Network admin tools
Mar 28 Lab exe 2: IP routing
Apr 04 Lab exe 3: TCP
Apr 11 Lab exe 4: P2P
Lectures part 2
Apr 18 Lecture 6: Data centres
Apr 19 Lecture 7: Data centres (cont'd)
Apr 20 Lecture 8: Online services
Apr 21 Lecture 9: Online services (cont'd)
Lab exercises part 2
Apr 25 Lab exe 5: DryadLINQ premier
May 02 Lab exe 6: BGP table analysis w DryadLINQ
May 09 Lab exe 7: PageRank computation w DryadLINQ
May 16 Lab exe 8: Ad auctions

Seminars

Special topic: DryadLINQ for large-scale computations. Assignments are available here.

Grading

Final grade (%) = 0.3 L + 0.2 S + 0.5 F

where L = grade of laboratory exercises (%), S = grade of the seminar (%), and F = grade of the final exam (written) (%)