Channel-aware scheduling algorithms with channel prediction for reliable multicast data transmission over geostationary satellite networks