  In this paper, we are interested in improving the performance of constructive
network coding schemes in lossy wireless environments.We propose I2NC - a
cross-layer approach that combines inter-session and intra-session network
coding and has two strengths. First, the error-correcting capabilities of
intra-session network coding make our scheme resilient to loss. Second,
redundancy allows intermediate nodes to operate without knowledge of the
decoding buffers of their neighbors. Based only on the knowledge of the loss
rates on the direct and overhearing links, intermediate nodes can make
decisions for both intra-session (i.e., how much redundancy to add in each
flow) and inter-session (i.e., what percentage of flows to code together)
coding. Our approach is grounded on a network utility maximization (NUM)
formulation of the problem. We propose two practical schemes, I2NC-state and
I2NC-stateless, which mimic the structure of the NUM optimal solution. We also
address the interaction of our approach with the transport layer. We
demonstrate the benefits of our schemes through simulations.
