TCP provides reliable data transfer, but it transmits
data in a sequence. However, some applications may need reliable data
transfer, though not necessarily in a strict sequence. These applications
prefer partial ordering of data, wherein ordering is maintained only
within subflows of data. The strict sequence maintenance in TCP not
only makes partial ordering of data impossible, it also causes unnecessary
delay in the overall data delivery. Moreover, if a single packet is
lost, delivery of subsequent packets is blocked until the lost TCP
packet is delivered. This causes head-of-line (HOL) blocking.