Adaptive Transmission Protocols For Wireless Communication Systems With Fountain Coding