A datagram refers to an IP header combined with what is called a message or segment. A datagram contains enough information to allow it to be sent to the destination and can be routed over a network without relying on information sent previously. The message or segment is contains a transport header (TCP or UDP) and application data. The term datagram is used to describe the information before IP fragmentation or after reassembly.