Topic outline

  • Prerequisite:


    • Linux commands: http://linuxcommand.org/.  
    • Linux traffic control: https://wiki.archlinux.org/index.php/advanced_traffic_control 

    Principles of protocol design

    • Gouda Mohamed. Elements of Network Protocol Design. Wiley 1998. 
    • Hartmut König. Protocol Engineering. Springer Berlin Heidelberg. 2012.  http://link.springer.com/book/10.1007%2F978-3-642-29145-6  
    • Gerard J. Holzman. Design and Validation of Computer Protocols. Prentice Hall Software Series. 1991.  (design aspects)
    • Robin Sharp. Principles of protocol design. Springer 2008. http://www.imm.dtu.dk/~robs/ppd.html

    TCP:

    • Jitendra Padhye, Victor Firoiu, Donald F. Towsley, and James F. Kurose. 2000. Modeling TCP Reno performance: a simple model and its empirical validationIEEE/ACM Trans. Netw. 8, 2 (April 2000), 133–145. DOI:https://doi.org/10.1109/90.842137
    • Ha, S., Rhee, I., and L. Xu, "CUBIC: A New TCP-Friendly High-Speed TCP Variant", ACM SIGOPS Operating System Review, DOI 10.1145/1400097.1400105, July 2008.
    • Neal Cardwell, Yuchung Cheng, C. Stephen Gunn, Soheil Hassas Yeganeh, and Van Jacobson. 2016. BBR: Congestion-Based Congestion Control: Measuring bottleneck bandwidth and round-trip propagation time. Queue 14, 5 (September-October 2016), 20–53. DOI:https://doi.org/10.1145/3012426.3022184
    • BBR Github: https://github.com/google/bbr 


    QUIC:
    • Robin Marx, Joris Herbots, Wim Lamotte, and Peter Quax. 2020. Same Standards, Different Decisions: A Study of QUIC and HTTP/3 Implementation Diversity. In Proceedings of the Workshop on the Evolution, Performance, and Interoperability of QUIC (EPIQ '20). Association for Computing Machinery, New York, NY, USA, 14–20. DOI:https://doi.org/10.1145/3405796.3405828
    • Jan Rüth, Konrad Wolsing, Klaus Wehrle, and Oliver Hohlfeld. 2019. Perceiving QUIC: do users notice or even care? In Proceedings of the 15th International Conference on Emerging Networking Experiments And Technologies (CoNEXT '19). Association for Computing Machinery, New York, NY, USA, 144–150. DOI:https://doi.org/10.1145/3359989.3365416
    • Gaetano Carlucci, Luca De Cicco, and Saverio Mascolo. 2015. HTTP over UDP: an experimental investigation of QUIC. In Proceedings of the 30th Annual ACM Symposium on Applied Computing (SAC '15). Association for Computing Machinery, New York, NY, USA, 609–614. DOI:https://doi.org/10.1145/2695664.2695706


    HTTP:
    • HTTP/3 explained. 
    • HTTP/2 explained
    • R. Corbel, E. Stephan and N. Omnes, "HTTP/1.1 pipelining vs HTTP2 in-the-clear: Performance comparison," 2016 13th International Conference on New Technologies for Distributed Systems (NOTERE), Paris, 2016, pp. 1-6. doi: 10.1109/NOTERE.2016.7745823
    • M. Jiang, X. Luo, T. Miu, S. Hu and W. Rao, "Are HTTP/2 Servers Ready Yet?," 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS), Atlanta, GA, 2017, pp. 1661-1671. doi: 10.1109/ICDCS.2017.279


    CoAP:

    • RFC7252. The Constrained Application Protocol (CoAP). https://tools.ietf.org/html/rfc7252 
    • CoAP technology website: http://coap.technology/ 
    • CoAP tutorial: https://www.youtube.com/watch?v=4bSr5x5gKvA 
    • P. Bellavista and A. Zanni, "Towards better scalability for IoT-cloud interactions via combined exploitation of MQTT and CoAP," 2016 IEEE 2nd International Forum on Research and Technologies for Society and Industry Leveraging a better tomorrow (RTSI), Bologna, 2016, pp. 1-6. doi: 10.1109/RTSI.2016.7740614

     

    MQTT:

    • MQTT specification: http://docs.oasis-open.org/mqtt/mqtt/v3.1.1/os/mqtt-v3.1.1-os.html 
    • Mosquitto - an open source MQTT broker http://mosquitto.org/ 
    • MQTT packet capture and analysis using Wireshark. https://youtu.be/79bMMT7RPqY 
    • IBM Redbooks -Building smarter planet solutions with MQTT and IBM WebSphere MQ Telemetry. http://www.redbooks.ibm.com/redbooks/pdfs/sg248054.pdf 

     

    Streaming:

    • Y. Im et al., "FLARE: Coordinated Rate Adaptation for HTTP Adaptive Streaming in Cellular Networks," 2017 IEEE 37th International Conference on Distributed Computing Systems (ICDCS), Atlanta, GA, 2017, pp. 298-307.
    • WebRTC website:  https://github.com/webrtc/apprtc