我知道网络上有很多关于C#中UDP多播的例子。这更多的是为了澄清只在发送时包含方法JoinMulticastGroup的必要性。我遇到的大多数代码示例几乎总是将此方法作为初始化代码的一部分。但是,如果程序或类只发送一次,那么它是不需要的?
也就是说,在另一个堆栈溢出问题上,有人使用了代码
public void SendMessage(string message)
{
var data = Encoding.Default.GetBytes(message);
using (var udpClient = new UdpClient(AddressFamily.InterNe
我正试图在我那端有BRI接口的综合业务数字网网络中用C#码接收广播信息。
我使用Comm View tool在某些端口上看到发送到广播ip地址(239.255.255.255)的数据包。
但当我尝试侦听此IP地址时,它显示该地址不在有效的上下文中。
但是当我在端口上向255.255.255.255发送广播消息时,我可以使用以下代码接收这些消息。
此ip地址239.255.255.255有什么问题?
The code I use to listen to broadcast messages is..
UdpClient udp = new UdpClient();
IPEndPoint re
以下代码在端口15000上发送数据包:
int port = 15000;
UdpClient udp = new UdpClient();
//udp.EnableBroadcast = true; //This was suggested in a now deleted answer
IPEndPoint groupEP = new IPEndPoint(IPAddress.Broadcast, port);
string str4 = "I want to receive this!";
byte[] sendBytes4 = Encoding.ASCII.GetBy
R3--R1--因特网--R90
R3: ip地址10.123.0.3
R1:
sudo ip l2tp add tunnel tunnel_id 699 peer_tunnel_id 699 encap udp local 5.254.174.8
remote 5.254.174.90 udp_sport 699 udp_dport 699
sudo ip l2tp add session tunnel_id 699 session_id 699 peer_session_id 699
sudo ip link set l2tpeth0 up mtu 1446
sudo ip link
因为UDP是一个无连接的协议,所以我们知道不能保证数据会被接收器接收到。
UDP报头也包含CRC,所以这让我觉得在收到数据报的情况下数据是可靠的?这是对还是错?
为了更详细地说明这个问题,我从Java udp服务器发送了如下数据
// Sending in Java
InetAddress group = InetAddress.getByName("230.0.0.1");
//buf is a String.getBytes();
DatagramPacket packet = new DatagramPacket(buf, buf.length, group, 4
好吧,我试着用c#连接到UDP追踪器,但是我从来没有得到过响应。我也没有得到任何错误。这是我的代码。
namespace UDPTester
{
class MainClass
{
public static bool messageReceived = false;
public static Random Random = new Random();
public static void LOG(string format, params object[] args)
{
Console
我用c#编写了一个自定义应用程序,将数据发送到远程计算机。但是,如果我一次发送超过23672字节,数据就不会到达(~99%的数据包丢弃)。在打开Wireshark时,我发现:看起来像是udp数据包碎片失败了,这真的很奇怪,因为23672或更低的数据包也会变得支离破碎。
在测试同一个应用程序本地主机时,一切都可以正常工作,最高可达65507字节(udp头限制)。复制错误的测试应用程序:
var client = new UdpClient();
var sequenceNumber = 0; //i'm sending a sequence number
提前感谢您的帮助。
有一个程序,不是我写的,它在本地局域网上发送UDP多播信息包。我已经查看了源代码,似乎它们被正确地设置为多播。这个程序是WSJT-X,如果你是一个火腿操作员,你可能听说过。
UDP数据包包含无线信号解码,因此包括我的程序在内的许多其他程序都对这些数据包感兴趣。
我遇到的问题是,我的UDP接收似乎消耗了消息,所以一旦我的测试软件启动,在同一台机器上运行的其他软件似乎都不会接收到它们。
这是一个简单的接收器:
using System;
using System.Collections.Generic;
using System.Linq;
us
我需要从树莓派连续发送一些udp数据包到windows7,在windows端,我使用UDPclient来监听任何udp数据,这是代码:
byte[] data = new byte[1024];
string input, stringData;
UdpClient server = new UdpClient("127.0.0.1", 9050);
IPEndPoint sender = new IPEndPoint(IPAddress.Any, 0);
while (true)