datagram相关内容
是否有人在 Android 上使用过 DTLS,或者是否有支持 DTLS 的开源 Java 实现? 在 Android 上保护 UDP 流量还有哪些其他选择? 解决方案 DTLS 支持在纯 Java 中尚不可用.我们最终通过 JNI 使用 OpenSSL.我怀疑你会在 Android 上找到任何东西. 您应该使用 TLS(这意味着您必须使用 TCP).
..
..
我的代码如下.一切都按照我想要的方式进行,但是当收到我的消息时,它们最后会有很多框,有点像这样“消息:你好▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀" 我怎样才能使它接收和打印的只是“消息:你好"?我非常感谢任何帮助. import java.io.*;导入java.net.*;公共类 UDPChat {公共静态 void main(String args[]) 抛出异常 {新的 UD
..
我遇到了 UDP 数据报的问题,因为我无法从服务器接收 UDP 数据包,但我可以发送它们.我查看了许多示例,但无法弄清楚我的代码有什么问题.我终于从不同的网站找到了问题所在的提示. 因此,我在此处更新了问题,以防将来可能对某人有所帮助.下面的代码在 LG 手机上通过 WiFi 网络运行,并且基于 Android Studio 4.2 (29/4/2021);SDK平台30;Kotlin 1.
..
我有一个使用数据报套接字交换消息的服务器-客户端应用程序.我最初将缓冲区大小设置为 1024 字节,因为我不知道消息的长度.当我发送小于 1024 字节的内容时,我的字符串的其余部分显示为一些奇怪的字符(空字符或者我不确定它们是如何被调用的).这是一个屏幕: 客户端代码:byte[] buf = ("这是另一个数据包.\n").getBytes();DatagramPacket packet
..
使用 Linux 和 Python,我想通过广播发送一些数据: d = b'109u433279423423423'导入套接字s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)s.sendto(d, 0, ('192.168.0.255', 9)) 我在 root 下启动这个脚本并得到这个错误: s.sendto(d, 0, ('192.
..
我正在开发流媒体服务器和 Flash 客户端之间的 Java 接口.我注意到即使两个进程都在本地运行,UDP 数据报也可以无序地到达我的接口. 这正常吗?我认为由于没有数据报必须通过任何路由器或任何网络设备,所以不应该发生这种情况. 解决方案 实际上,UDP 数据包的排序和接收并不能保证,即使它们是由 localhost 在 localhost 上发送的.只是因为协议的规范并不暗示它
..
..
好的,这是我几天来一直在努力弄清楚的问题.我们在 Windows Phone 7 上有一个应用程序,其中手机加入多播组,然后向该组发送和接收消息以相互交谈.注意 - 这是电话到电话的通信. 现在我正在尝试将此应用程序移植到 Windows Phone 8 - 使用 Visual Studio 2012 中的“转换为电话 8"功能 - 到目前为止一切顺利.直到我尝试测试电话到电话的通信.手机似
..
我正在为我正在进行的一个项目试验 LuaSocket.我选择了 UDP 作为我的协议. 在网上寻找文档和教程,我尝试创建一个用于测试和学习的客户端-服务器对. 根据我所读到的内容,以下代码应该可以工作.但是,似乎只有服务器工作正常.客户端发送消息,但不会收到服务器的回复. 感谢您提供任何帮助. 服务器: -- 服务器#!/usr/bin/env lua5.1本地套接字 =
..
目前我达到了 130688 字节的硬限制.如果我尝试在一条消息中发送更大的消息,我会收到 ENOBUFS 错误. 我检查了net.core.rmem_default、net.core.wmem_default、net.core.rmem_max、net.core.wmem_max 和 net.unix.max_dgram_qlen sysctl 选项并将它们全部增加,但它们没有效果,因为这些
..
尝试将接收到的 DatagramPacket 转换为字符串,但我有一个小问题.不知道最好的方法是什么. 我将要接收的数据大部分长度未知,因此我在接收端设置了一些缓冲区 [1024].问题是,假设我发送了字符串“abc",然后在接收端执行以下操作... buffer = new byte[1024];packet = new DatagramPacket(buffer, buffer.len
..
我设法制作了一个简单的应用程序,用于从多播组发送和接收数据.如果我打开应用程序的 2 个实例(2 个具有相同代码的不同 .sln 文件),我可以发送和接收数据.问题是,5 秒后,如果我从 Client001 发送消息,只有 Client001 会收到消息.但是,如果我在 5 秒内从 Client002(应用程序的第二个实例)发送消息,那么他们都会收到消息.我有一个使用 UdpClient 的示例,
..
我正在尝试使用 keep-alive 选项创建一个 datagramsocket 和 datagrampacket 发送.我对如何设置这个感到困惑.有没有像 datagramsocket.setKeepAlive(true); 那样简单的方法? 编辑:抱歉,我的意思是设置数据包的生存时间.有没有办法设置它,如果没有收到,它会一直保留到收到为止? 解决方案 UDP 是所谓的无连接协议,
..
在下面的代码段中, DatagramPacket rPacketrPacket = new DatagramPacket(new byte[2000], 2000);.. 做一些 socket.receive .. Java 中 DatagramPacket.getData().length 和 DatagramPacket.getLength() 的区别是什么 解决方案 不同的是,第
..
我正在构建一个接收和发送多个数据包的基于 UDP 的应用程序. 我可以为每次发送构建一个新的 DatagramPacket,或者在我的应用程序的生命周期中回收一个实例. 重用 DatagramPacket 有什么好处吗?(例如内存分配) 是否存在任何潜在问题?(例如线程安全) 解决方案 看起来你不能.我只是尝试发送相同的 DatagramPacket 两次,我得到以下行为:
..
我正在使用 UDP(在 C 中)实现一个小型应用程序.服务器将给定文件中的数据以给定数量(例如 100 字节/调用)的块发送给客户端.客户端下载文件并将其保存在某处.问题是客户端可以接收一个参数,说明要读取/调用多少字节. 我的问题是当服务器发送 100 个字节/调用,而客户端设置为只读 15 个字节/调用时.其他 85 个字节丢失,因为消息已从 UDP 队列中删除. 有没有办法分块读取这
..
理论上没有什么可以阻止使用带有 SOCK_DGRAM 的 TCP 套接字.您将获得可靠的数据报传输.这可以使用 Berkeley 套接字吗? 解决方案 你想看的是SCTP 协议.它提供了通过可靠的 TCP 样式连接发送数据报的能力: 与 TCP 相比,SCTP 可能是以记录为导向,这意味着它以以下方式传输数据消息,以类似的方式用户数据报协议 (UDP),以便在一个发送的一组字节(消息
..
我有一个需要改进的库,因为它丢弃了很多数据包.我想接收一个 RTP-Stream,但流媒体在一毫秒内发送 30-40 个数据包的突发(MJPEG-Stream).在 Wireshark 中监控流量时,我可以看到数据包已完成.但是当我尝试用 Java 接收它们时,我丢失了很多这样的数据包. 我已经能够通过实现一个环形缓冲区来改进库的行为,只要有数据包可用,该缓冲区就会不断填充,以及从该缓冲区读
..
我在使用 UDP 数据报时遇到了问题,因为我无法从服务器接收 UDP 数据包,但我可以发送它们.我查看了许多示例,但无法弄清楚我的代码有什么问题.我终于从不同的网站找到了问题所在的提示. 因此,我在这里更新了问题,以防将来对某人有所帮助.下面的代码在 LG 手机上通过 WiFi 网络运行,并且构建在 Android Studio 4.2 (29/4/2021) 上;SDK平台30;科特林 1
..