jimmyt Posted September 12, 2007 Share Posted September 12, 2007 Hi, As I told in another topic (Beta Section), Netstream plugin generate too large UDP packets in Multicast streaming, implying IP fragmentation on wire. I captured on wire the stream generated by many of my PCs (Several different hardwares and O.S. (XP / Vista) and here is the result : As you can see, the Netstream Plugin send to the network Layer a big amount of data (8084 Bytes). The result is the Stack create a UDP datagram containing all the data sent by the application. The UDP datagram is too large to be encapsulated in one IP Packet, resulting IP Fragmentation on wire. The disadvantages of this way of streaming, are : - One IP Packet (~ 1400 Bytes) Lost implies the lost of the entire UDP datagram (~ 8000 Bytes). - Some Multicast clients are not compliant with IP Fragmentation. The Netstream Plugin operating mode doesn't seem to be standard for multicast stream. A multimedia stream need to avoid IP fragmentation for being compliant with most of the network and clients. I'm quite concerned : One of my multicast client isn't IP fragmentation compliant Ready for discussing about this :-) Best Regards, Jim. Quote Link to comment
jimmyt Posted September 13, 2007 Author Share Posted September 13, 2007 ...As you can see, the Netstream Plugin send to the network Layer a big amount of data (8084 Bytes). The result is the Stack create a UDP datagram containing all the data sent by the application. The UDP datagram is too large to be encapsulated in one IP Packet, resulting IP Fragmentation on wire. The disadvantages of this way of streaming, are : - One IP Packet (~ 1400 Bytes) Lost implies the lost of the entire UDP datagram (~ 8000 Bytes). - Some Multicast clients are not compliant with IP Fragmentation. ... Lars, Do you have any opinion about this ? You told me that you don't consider this is not a problem. I agree with you. Most of the time we can consider that we don't have pay attention to packet loss on LAN if this one isn't 10 Mb/s half, and that most of multicast clients IP Stacks are IP fragmentation compliants. The problem doesn't exist in TCP unicast mode thanks to the auto MSS adjust. Could you tell me if you think it could be realistic to add a parameter in Netstream plugins windows for the size of the payload to put into UDP datagram ? So users which can be sure that client hosts supports IP Fragmentation or Network supports Jumbo Frame (for example) can choose a large size of buffer for optimizing the number of IP packets/sec., and others can adjust buffer size to maximum payload supported according to MTU of the network caracteristics, to avoid IP fragmentation with depends on number of packets/s. What's your opinion ? BR, Jimmyt Quote Link to comment
Lars_MQ Posted September 14, 2007 Share Posted September 14, 2007 Please test if the packet count in the dvbserver 3.8.0.0works for you. If it does I 'll put the same handling into the netstreaming plugin. I can't test it myself, the router seems to be allergic to broadcasts. Quote Link to comment
jimmyt Posted September 14, 2007 Author Share Posted September 14, 2007 (edited) Please test if the packet count in the dvbserver 3.8.0.0works for you. If it does I 'll put the same handling into the netstreaming plugin. I can't test it myself, the router seems to be allergic to broadcasts. YESSS ! What a good idea and a great Job ! "Buffer count" variable does the great job ! My stream is no more IP fragmented. Obviously, it's simplier for me to use DVBViewer Netstream plugin than implementing DVBServer. So, I accept with pleasure you put the same handling into the netstreaming plugin Thanks a lot. For further streaming or network test, your whishes are my commands BR, Jimmyt Edited September 14, 2007 by jimmyt Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.