An Open-Source and Declarative Approach Towards Teaching Large-Scale Networked Systems Programming

2011 
This paper describes our experiences at the University of Pennsylvania in developing course projects for a large advanced undergraduate and first year graduate course in networked systems. Students work in teams to develop substantial networked systems programming projects (>10000 lines of code) using network simulator 3 (ns-3), an emerging open-source network simulator that is aimed at replacing the popular ns-2 simulator. Projects are developed in layers, where students build upon earlier assignments, first developing a protocol for Internet Protocol (IP) routing, followed by a distributed hash table (DHT) overlay network, and finally, a keyword-based search engine. One novelty of our assignments is the use of ns-3 in a large class setting, where students navigate through hundreds of thousands of lines of existing code before adding their extensions. In addition, selected groups develop the final project using declarative networking, a novel declarative framework that allows protocols to be rapidly synthesized using a high-level logic language into ns-3 implementations.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    11
    References
    6
    Citations
    NaN
    KQI
    []