The next 32-bit field in the header is for the messaging. The first
two bits "FF" flags the position of the packet is a message. "10" is
the first packet, "01" is the last one, "11" is the only packet, and
"00" is any packets in the middle. The third bit "O" means if the
message should be delivered in order (1) or not (0). A message to be
delivered in order requires that all previous messages must be either
delivered or dropped. The rest 29 bits is the message number, similar
to packet sequence number (but independent). A UDT message may
contain multiple UDT packets.
but from the UDT-JAVA library , there is no mentioned, so how do I know all of the data send out well?
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
In streaming mode, you are right, there is no way to know that all data has been sent (you cannot just close the stream as in TCP) . So usually you have to send the amount of data in advance.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
if the text only refers to the messaging mode , for a streaming mode , the field "message number " should thrown, but for the library , the field "message number " existed there
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
from the specification, for data packet:
The next 32-bit field in the header is for the messaging. The first
two bits "FF" flags the position of the packet is a message. "10" is
the first packet, "01" is the last one, "11" is the only packet, and
"00" is any packets in the middle. The third bit "O" means if the
message should be delivered in order (1) or not (0). A message to be
delivered in order requires that all previous messages must be either
delivered or dropped. The rest 29 bits is the message number, similar
to packet sequence number (but independent). A UDT message may
contain multiple UDT packets.
but from the UDT-JAVA library , there is no mentioned, so how do I know all of the data send out well?
hi,
udt-java does not support the messaging mode of UDT, only streaming
Hmm… but the description has no relationship with messaging mode or streaming mode, it is only about "data packet"
once we put the "data packet" to udtoutputstream, we also need to know if the begining of the data and also the ending of the data stream
hi,
the text you quoted refers to the messaging mode.
In streaming mode, you are right, there is no way to know that all data has been sent (you cannot just close the stream as in TCP) . So usually you have to send the amount of data in advance.
hmm…
if the text only refers to the messaging mode , for a streaming mode , the field "message number " should thrown, but for the library , the field "message number " existed there