||Peer-to-peer technologies have enabled large-scale media streaming services over the Internet. Relatively speaking, there has not been much work on enhancing reliability and supporting user interactivity in P2P media streaming systems. However, providing these features is challenging due to unreliability of end-hosts and difficulty in locating supplying peers. In this thesis, by addressing these issues, we targeted to offer reliability and interactivity in such systems. For offering reliability, scalable error recovery techniques are required. We propose a novel error recovery scheme called LER, in which we improve the recovery probability by performing packet retransmission from nodes whose errors are less correlated. Results show that LER achieves better residual loss rate than traditional parent and source recovery schemes. For offering interactivity, efficient mechanisms for locating supplying peers are important for supporting interactive functions like random forward/backward seek. We propose two media streaming architectures, namely, PRIME and VMesh. While PRIME uses virtual starting slot to locate supplying peers by DHT search, VMesh uses dynamic distributed segment storage to solve parent activity problem. We show empirically our schemes outperform previous work in terms of startup/seeking latency and playback continuity.