This document provides an overview of TCP performance modeling and network simulation using the ns-2 simulator. It begins with background on TCP congestion control algorithms like slow start, congestion avoidance, fast retransmit, and fast recovery. Two analytical models for TCP throughput - a simple model and a more complex model - are described. The document then provides instructions on installing and using the ns-2 network simulator and Otcl scripting language. It explains how to create network topologies in ns-2 including nodes, links, agents and applications. Tracing, monitoring and running simulations are also covered. The document concludes with an example simulation study comparing TCP throughput models to ns-2 results.