What transactions didn't make it to the Bitcoin blockchain?
How does the protocol know which transactions made it and which didn't?


Once a transaction is mined, all the network knows it's there. No one will keep it in their mem-pool any longer. Only before it's in the canonical chain you don't know who's seen it.