我正在尝试使用UDP Adobe air向CPP发送大文件。在传输大文件时,一些数据包丢失。我如何检索丢失的数据包数据?我首先使用tcp将客户端(空)与服务器(cpp)连接起来。建立连接后,我开始文件传输。我打算使用tcp获取缺少文件的数据,然后使用tcp重新发送丢失的数据包。任何人都可以告诉我如何才能知道在传输过程中丢失了哪些数据包。谢谢。我们如何避免在UDP Flex中丢失数据包?
0
A
回答
1
您能否澄清一下发生了什么?你说你通过UDP发送文件,但通过TCP连接到服务器 - 两个协议在一个连接上是互斥的。
UDP没有提供任何检测数据包丢失的机制(这就是TCP的用途),因此默认情况下,您将无法确定数据包是否丢失。 您应该使用TCP来发送文件,因为它可以为您管理发送/重新发送数据包。
由于空气ServerSocket
文档(http://help.adobe.com/en_US/air/reference/html/flash/net/ServerSocket.html)中指出:
的所有数据包[发送过来TCP]保证到达(合理的) - 任何丢失的数据包重传。通常,TCP协议比UDP协议更好地管理可用网络带宽。大多数需要套接字通信的AIR应用程序应该使用ServerSocket和Socket类[TCP],而不是DatagramSocket类[UDP]。
在空中网络类的更多信息,请参见本页面:
http://help.adobe.com/en_US/air/html/dev/WSb2ba3b1aad8a27b0-181c51321220efd9d1c-8000.html#WS5b3ccc516d4fbf351e63e3d118a9b90204-7cfb
0
我的猜测,TCP是慢,因为它不会再发送当一个数据包丢失。所以这可能是为什么它更慢。但另一方面,其检查数据包迷路和UDP重新发送他们也将需要更长的时间......
我会去的,而不是TCP UDP的
像狡猾说,UDP似乎是错误的工具这里使用
相关问题
- 1. udp数据包丢失
- 2. Android udp数据包丢失
- 3. 50%udp数据包丢失
- 4. Android UDP数据包丢失
- 5. 避免多线程UDP服务器中的数据丢失
- 6. 如何避免在PHPExcel中丢失宏?
- 7. Flex中的数据包丢失计算
- 8. 如何理解丢失在UDP中的数据包?
- 9. 如何避免在CentOS中从protobuf软件包中丢失gzip_stream.h
- 10. UDP数据包丢失修复
- 11. 丢失数据包超时(UDP)
- 12. udp vs tcp数据包丢失
- 13. 平均UDP数据包丢失和数据包重新排序
- 14. 用python接收UDP数据包,造成数据包丢失
- 15. 在python中模拟UDP中的数据包丢失
- 16. 使用UDP从Memcached中获取数据包时丢失数据
- 17. 如何避免与log4j丢失日志
- 18. 如何避免类型丢失?
- 19. Linux丢弃UDP数据包
- 20. Android:我如何避免在重新安装期间丢失数据?
- 21. 如何在UIImagePickerController卸载我的控制器时避免数据丢失?
- 22. 如何检测UDP数据包已丢失? (C#)
- 23. 如何避免页面刷新后丢失数据
- 24. 避免在ASP.NET MVC中丢失视图
- 25. 如何避免接收方在UDP中未准备好接收数据包?
- 26. 在Windows Server,Java中监视UDP数据包丢失
- 27. 避免丢失帧glium
- 28. UDP - 在microbursts期间丢失数据
- 29. 如何避免在php中进行服务器验证后数据丢失?
- 30. 如何避免丢失数据时覆盖文件在C被中断
这个。 UDP适用于流式传输视频,您不想重新发送丢弃的数据包。 – fenomas 2010-05-30 03:29:01
嗨狡猾红衣主教,谢谢你的回应。对不起,我的问题并不清楚。我的客户端是空气应用程序,服务器是cpp。我使用tcp将客户端连接到服务器,并在得到确认后确认它是否已连接...我使用UDP再次连接并使用UDP传输文件。现在在大文件的时候,我正在服务器端丢失数据包。现在我只想获取丢失数据包的列表,并希望客户端使用tcp重新发送丢失的数据包。然后我的空气应用程序使用UDP重新发送丢失的数据包。 – 2010-05-31 07:33:41
总之,对于连接确认和数据包丢失数据,我想使用tcp和使用UDP进行文件传输。一切都很顺利......除了丢包。现在我想知道丢失的数据包列表并重新发送......我如何获取丢失数据包的数据。 – 2010-05-31 08:46:21