⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 faq.htm

📁 udt的一个源代码
💻 HTM
📖 第 1 页 / 共 2 页
字号:
If UDT's performance is much lower than the performance obtained from the benchmark, try to modify the UDT options.<br><br>Finally, your applications affect the transfer speed. Any data intensive applications can cost substantial CPU time in computing and memory replication, which will affect UDT's performance. Try to test the throughput with the example applications in the UDT SDK.</font></p><h4><font face="Verdana" size="2"><a name="6"></a>6. Can you give me some hints in tuning the performance?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">Please read the Configuration section of the UDT Tutorial for the answer. The default parameter should work fine for most cases.&nbsp; </font></p><h4><font face="Verdana" size="2"><a name="7"></a>7. I use UDT for file transfer, but it seems significantly slower than memory-memory transfer. Why?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">Performance of file transfer is often limited by the bottleneck speed of disk IO. Besides, disk IO is often bursting and cause difficulties for the congestion control of transport protocols. UDT has been thoroughly tested for the disk-disk transfer scenario. Try to use some benchmark software to test your disk performance.</font></p><h4><font face="Verdana" size="2"><a name="8"></a>8. When I run the example applications, it prompts for missing library error. What happens?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">You forget to set the system environment of library path. On Linux/BSD/UNIX, use &quot;export&quot; or &quot;setenv&quot; to configure the LD_LIBRARY_PATH environment variable so that it contains the directory having the libudt.so file. On Windows, copy udt.dll file to the same directory containing you UDT applications (this usually also works for Linux/BSD/UNIX by copying libudt.so to the current working directory).</font></p><h4><font face="Verdana" size="2"><a name="9"></a>9. Does UDT care about the byte order conversion between different platforms?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">No, the application should care about the conversion itself. However, UDT does work between different platforms even with different byte orders.</font></p><h4><font face="Verdana" size="2"><a name="10"></a>10. Why can't the UDT connection be set up? Why is the listen or connect call fails?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">The most likely reason is that one of the machines is behind a firewall. You canchange the firewall settings if you have the privilege or do something in theUDT program to bypass the firewall. Note that UDT has same semantics as TCP andgenerates UDP traffic in both directions. UDT3 also provides rendezvous connection setup in order to punch firewalls.</font></p><p style="margin-top: 0; margin-bottom: 0">&nbsp;</p><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">Anotherreason is that at least one of the server or client sides has multiple addresses, and UDT is bound to an address different from what you use in the application. To solve the problem, explicitly set the IP address in bind call.<br><br>There can be other reasons, such as domain name lookup failure. Try to use an explicit IP address if possible.</font></p><h4><font face="Verdana" size="2"><a name="11"></a>11. Is UDT connection secure?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">No. If you need a secure connection, you should add other mechanisms on the top of UDT in your application.</font></p><h4><font face="Verdana" size="2"><a name="12"></a>12. Why does my application often have packet loss even the throughput is much lower than the available bandwidth?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">Packet loss can be caused by a busy receiver. For example, if there is large block memory copy, arriving packets will be dropped because the CPU does not have enough time to process them. Try to avoid large block copy during data receiving and try to use blocking receiving to alleviate the problem.</font></p><h4><font face="Verdana" size="2"><a name="13"></a>13. Is UDT TCP friendly?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">TCP friendliness is an obscure concept. Please refer to UDT technical reports for detailed information on the competition between UDT flows and TCP flows.</font></p><h4><font face="Verdana" size="2"><a name="14"></a>14. What copyright and license issues shall I be aware of when using UDT? </font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">The UDT library developed by us is copyrighted to the board of trustees of the University of Illinois at Chicago and is published as open source software under Lesser GPL (LGPL). You can find a copy of LGPL within the UDT release. If you want to use UDT in commercial products and are not comfortable with LGPL, you should contact us to discuss the license issue in a case by case basis.</font></p><h4><font face="Verdana" size="2"><a name="15"></a>15. Is UDT only suitable for bulk data?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">No, UDT can transfer a data buffer from one single byte to multiple tera-bytes, as long as your system can provide enough resources. However, UDT is indeedoptimized for bulk data, and it may not have any better performance for messagesignaling applications.</font></p><h4><font face="Verdana" size="2"><a name="16"></a>16. What's the relationship between UDT and SABUL?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">UDT is the successor of SABUL. It removes the TCP connection from SABUL and enhances the congestion/flow control.</font></p><h4><font face="Verdana" size="2"><a name="17"></a>17. Where can I find help regarding to the use of UDT library?</font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">If you cannot find answers in this documentation,</font><font face="Verdana" size="2"> please go to the UDT home at sourceforge.net and post your questions. In order to help more users easily find answers about UDT usage and help increase the activity of this project, please post all general questions to the<a target="_blank" href="http://sourceforge.net/forum/forum.php?forum_id=393037">souceforge forum</a> or send them to the<a href="http://sourceforge.net/mail/?group_id=115059">sourceforge mailing list</a>. The mailing list and the forum is monitored by the UDT developer and your questions will be replied as soon as possible (usually within 24 hours). For complicated issues, the developer would like to set up an MSN conversation with you to investigate the problems, if necessary.</font></p><h4><font face="Verdana" size="2"><a name="18"></a>18. What background knowledge is necessary in order to use UDT? </font></h4><p style="margin-top: 0; margin-bottom: 0"><font face="Verdana" size="2">Knowledge on socket programming and C++ is necessary. Knowledge on TCP is a plus.</font></p><h4><font face="Verdana" size="2"><a name="19"></a>Why UDT consumes so muchmemory even if I just send a small file?</font></h4><p><font face="Verdana" size="2">Because UDT was originally designed for transferringvery large dataset over high speed long distance networks, the default buffersize is set to 20MB, just enough for most bandwidth-delay product in these environments.You can, however, use &quot;setsockopt&quot; to set a smaller buffer size shouldyour application works only in relatively low bandwidth (&lt;10Mb/s) environments.</font></p><h4><font face="Verdana" size="2"><a name="20"></a>When I try to start theexample application, an error of &quot;No buffer space available&quot; occurs,what happened?</font></h4><p>This error usually happens on BSD systems. The default maximum socket buffersize on BSD systems is usually much smaller that the default UDT socket buffersize. To eliminate this error, either use &quot;setsockopt&quot; to set asmaller UDT buffer size, or change the default OS value to a larger one.</p></body></html>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -