APEX: A Personalization Framework to Improve Quality of Experience for DVD-like Functions in P2P VoD Applications