# Network Performance 2011/2012

This is a 24-lecture course taught to masters students and fourth-year undergraduates at UCL. I teach basic tools for modelling computer networks: looking at data, using appropriate simulations, and analysing mathematical models.

## Course outline

[pptx]
• ### Section 1. Random numbers

[pdf]
§1.1 Introduction, §1.2 Visualization [R demo], §1.3 Generating random variables, §1.4 Fitting distributions, §1.5 Describing distributions, §1.6 Independence, §1.7 Working with random variables, statistical multiplexing [nb demo], §1.8 Common random variables [rv.pdf], [nb demo].
• ### Section 2. Simulation

§2.1 Types of simulator, §2.2 Where you measure from, §2.3 Steady state, §2.4 Replication, §2.5 Mice and elephants, §2.6 Standard models.
• ### Section 3. Analysis tools

[pdf]
§3.1 Drift models [R, xlsx nb], §3.2 Erlang fixed point [nb, R py], §3.3 Dynamic alternative routing [R, nb], §3.4 Operational laws.
• ### Section 4. TCP

[pdf]
§4.1 TCP algorithm [pptx], §4.2 Drift model [nb], §4.3 Fixed point [nb].
• ### Section 5. Resource allocation

[pdf], [pptx]
§5.1 Admissible region [nb], §5.2 Objective function, §5.3 Constrained optimization [nb], §5.4 TCP as optimization.
• ### Section 6. Conclusion

[pdf], [pptx]

### Pre-requisites.

This course assumes basic maths skills, including a working knowledge of elementary calculus (integration, differentiation, maximization) and probability. The coursework requires some programming ability; programming examples will be given in Python and R.