ECE6110 - CAD For Computer Networks

Instructor

Dr. George F. Riley
Office: Klaus 3360
Office hours: TBD
Email: riley@ece.gatech.edu

Course Summary

ECE6110 is a graduate course which introduces students to the concepts used in simulations of computer networks. We will cover a wide range of issues in computer network simulation, and try to understand both how to create simulations and how to interpret results. We use a number of network simulation tools, including ns3, and/or GTNetS, for out of class projects. At the completion of the semester, students will have a detailed understanding of computer network simulation and how to apply it networking research.

Teaching Philosophy

Teaching is interactive! Students are strongly encouraged to participate in class and offer opinions on the issues being discussed. I encourage (and expect) you to participate actively in the learning process. In particular, I welcome your comments and questions as we cover material in class. One-way lectures quickly becoming boring, both for you and for me. Also, I have found that students often learn more from other students comments than from the instructor! By asking lots of questions, your understanding of the material will be deepened significantly, and the course will be much more fun! From time to time there will be readings for a class session; these will be posted on the class web page below in a downloadable format. Students are expected to download and read the assigned readings before class.

Computing Resources

We have a newly installed linux-based computing cluster known as the deepthought cluster. This platform is the recommended platform for completing all of theThis platform is the recommended platform for completing all of the class projects, although you are free to use your personal laptops or desktops, as long as they have linux and appropriate libraries. The link above describes the deepthought cluster and how to access it.

Textbook

There is no textbook for this class. We will use research papers as required for our reading and discussion.

Course Outline

The list of topics to be covered is tentative, but expected to include the following:

Network Simulation Basics

  • Creating topologies
  • Defining data flows
  • Defining queuing disciplines
  • Trace file analysis methods
  • Using network animation

    Introduction to Simulation

  • Discrete Event Simulation (DES)
  • Simulating Networks with DES
  • Modeling Network Elements
  • Levels of abstratction

    Parallel and Distributed Simulation

  • Conservative vs. Optimistic Simulation Methods
  • Time Management in Conservative Simulation
  • Event Distribution Methods

    Overview of Network Simulation Tools

  • GTNetS
  • ns3
  • Opnet
  • ns2
  • SSF
  • GloMoSim

    Using Parallel/Distributed NS3

  • Defining the topology
  • Initiating multi-process simulations

    Measuring Network Performance via Simulation

  • Performance Metrics
  • Goodput, Throughput, Loss, Delay, Jitter, etc.
  • Factors Affecting Performance
  • Predicting Affect of Changes

    The Transmission Control Protocol (TCP)

  • Modeling TCP
  • Existing TCP Variations
  • Factors Affecting TCP Performance
  • New TCP variations
  • Congestion Avoidance in TCP
  • Using TCP over satellite links
  • Using simulation to measure TCP performance

    Multicast

  • Multicast group management
  • Source based trees vs. Core based trees
  • Modeling multicast in network simulations
  • Measuring multicast routing protocol overhead

    Simulating Routing Prototocols

  • Routing in Network Simulators
  • Modeling EIGRP and BGP

    Active Queue Management (AQM) and queueing Disciplines

  • DropTail, RED, Priority, WFQ, SCFQ, others
  • Implementation of active queues in network simulators
  • Measuring the affect of AQM

    Streaming Video/Audio Models

  • Creating a MPEG video model
  • Measuring MPEG performance
  • Performance tradeoffs in streaming applications

    Modeling Web Browsing

  • Using request/response distribution models
  • Using page distribution models
  • Measuring HTTP Performance

    Getting Help

    There will be one teaching assistant for this course. He will do all grading of out of class projects and should be your first point of contact when you have questions about assignments or grading.
  • Teaching Assistant: Rahul Kayala rahul.kayala@gatech.edu
  • Office hours: Wednesdan and Friday 11-2pm. Office hours in meeting area across from Klaus 3360.

    Grading

    Project 1 10%
    Project 2 10%
    Project 3 20%
    Midterm 20%
    Final Project 30%
    Class Participation 10%
    Total 100%

    Syllabus

      Day    Month     Date     Description     Handout     Due Date  
    MonJan11   Introduction to Network Simulation 

    WedJan13   Introduction to Network Simulation (continued) 




      des-simple1.cc    des-simple1.cc 



      des-simple2.cc    des-simple2.cc 



      des-simple3.cc    des-simple3.cc 



      des-simple4.cc    des-simple4.cc 
    MonJan18   SCHOOL HOLIDAY NO CLASS 

    WedJan20   Download ns-3-24.1    www.nsnam.org 
    MonJan25   ns-3 examples continued 




      Using SSH for deepthought    SSH-handout.pdf 



      Lab 1 TCP Performance Assigned    P1.pdf 
    WedJan27   TCP Congestion Avoidance Paper    VanJacobsonCongestionAvoidance.pdf 
    MonFeb1   TCP Congestion Control RFC    rfc2581.pdf 



      Lab1 Expected Results    tcpTahoeSingleFlow.csv 



      Lab1 Expected Results    tcpTahoeTenFlows.csv 



      Lab1 Expected Results    tcpRenoSingleFlow.csv 



      Lab1 Expected Results    tcpRenoTenFlows.csv 
    WedFeb3   TCP Variations    TCPflavors.pdf 



      Random Early Detection Queuing    Floyd-Red.pdf 
    MonFeb8   Tuning RED for Web Traffic    TuningRedLong.pdf 
    WedFeb10   NIx-Vector Routing    RileyStatelessRouting.pdf 



      Bruce Mah HTTP Study    MahHttp.pdf 
    MonFeb15


    WedFeb17


    MonFeb22


    WedFeb24


    MonFeb29


    WedMar2


    MonMar7


    WedMar9


    MonMar14


    WedMar16


    MonMar21


    WedMar23


    MonMar28


    WedMar30


    MonApr4


    WedApr6


    MonApr11


    WedApr13


    MonApr18


    WedApr20


    Contact Information:

    riley@ece.gatech.edu
    School of Electrical and Computer Computing
    Georgia Institute of Technology
    Atlanta, GA 30332-0250

    Last Modified: January 11, 2016