Bandwidth estimation has been extensively researched in the past. The majority of existing methods assume either negligible or fluid cross-traffic in the network during the analysis. However, on the present-day Internet, these assumptions do not always hold right. Hence, over such paths the existing bandwidth estimation techniques become inaccurate. In this thesis, we explore the problem assuming arbitrary cross-traffic and develop a new probing method called Envelope, which can simultaneously estimate bottleneck and available bandwidth over an end-to-end path with multiple heavily congested links. Envelope is based on a recursive extension of the stochastic queuing model first proposed by Kang, Liu, Dai and Loguinov (2004), and a modified packet-train methodology. We use two small packets to surround the probing packet-trains and preserve the inter-packet spacing of probe traffic at each router in the path-suffix. The preserved spacings are then used by the receiver to estimate bandwidth. We first reproduce results for a single congested router case using the model proposed by Kang et al. Next, we extend it to the case of multiple congested routers with arbitrary cross-traffic and develop the methodology Envelope. We evaluate the performance of Envelope in various network path topologies and cross-traffic conditions through extensive NS-2 simulations. We also evaluate various probe-traffic parameters which affect the accuracy of this method and obtain the range of values for these parameters that provide good estimation results. Finally, we compare the bandwidth estimation results of our method with the results of other existing methods such as IGI (2003) , Spruce (2003), Pathload (2002), and CapProbe (June 2004) using simulation in Network Simulator (NS-2) with varied network topologies and cross-traffic.