All that the light client requires is the blockchain headers and the merkel trees of block that contain input transactions for all of it's own addresses.
Uni-direction communications assumes transmission without errors. For most things, like television and radio, once it is passed, it is passed, and you only care about what is on now.
Possible errors are:
1) Garbled communications
2) Receiver not working (turned on, error, your are in a basement/tunnel, etc.)
3) Failure of the client (crash, not turned on, busy doing something else, etc.).
So, you need bi-direction communications to request the retransmission of missed blocks. Yes, the lite client only needs its blocks, but it does not know that it missed a block with data that it needs. With bi-direction communication, the lite client can request block numbers relevant to it (with its address), check to see which of the blocks it does not have, and if it is missing any, request a retransmission.
Think about this scenario:
1) There is a service that transmits new blocks in the clear. It is active 24/7
2) Your client goes off line for 2 hours (battery died, and you did not know it).
3) At one hour into your blackout, a block relevant to you was transmitted.
4) At hour 2, you put in a new battery and start receiving blocks again.
Without bi-directional communications, how do you get the missed block?