A multicast transport protocol, called TCP Peachtree, is proposed for satellite IP networks. In addition to the acknowledgment implosion and scalability problems appearing in terrestrial wirelined networks, satellite multicasting has additional problems, i.e., low bandwidth feedback link, different multicast topology and congestion control. In TCP Peachtree, the modified B+ tree hierarchical structure is used to form dynamic multicast groups. Local error recovery and ACK aggregations are performed within each subgroup and also via logical subgroups. Two new algorithms, jump start and quick recovery, which are based on a type of low priority segments, called NIL segments, are proposed for congestion control. NIL segments are used to probe the availability of network resources and also for error recovery. Moreover, an ACK filter is also introduced to aggregate ACKs. The simulation results show that the congestion control algorithms in TCP Peachtree outperform TCP NewReno when combined with our hierarchical groups and ACK filter. It is also shown that TCP Peachtree can have very good scalability.