  Satellite networks provide unique challenges that can restrict users' quality
of service. For example, high packet erasure rates and large latencies can
cause significant disruptions to applications such as video streaming or
voice-over-IP. Network coding is one promising technique that has been shown to
help improve performance, especially in these environments. However,
implementing any form of network code can be challenging. This paper will use
an example of a generation-based network code and a sliding-window network code
to help highlight the benefits and drawbacks of using one over the other.
In-order packet delivery delay, as well as network efficiency, will be used as
metrics to help differentiate between the two approaches. Furthermore, lessoned
learned during the course of our research will be provided in an attempt to
help the reader understand when and where network coding provides its benefits.
