We develop a mathematical model within a game theoretical framework to capture the flow control problem for variable rate traffic at a bottleneck node. In this context, we also address various issues such as pricing and allocation of a single resource among a given number of users. We obtain a distributed, end-to-end flow control using cost functions defined as the difference between particular pricing and utility functions. We prove the existence and uniqueness of a Nash equilibrium for two different utility functions. The paper also discusses three distributed update algorithms, parallel, random and gradient update, which are shown to be globally stable under explicitly derived conditions. The convergence properties and robustness of each algorithm are studied through extensive simulations.