Tag: udp

TCP和UDP的区别?

TCP和UDP有什么区别? 我知道在非时间关键型应用程序中使用TCP,UDP用于需要快速传输数据的游戏或应用程序。 我知道TCP用于HTTP,HTTP,FTP,SMTP和Telnet。 我知道UDP用于DNS和DHCP。 但为什么? TCP和UDP的哪些特性使其对于各自的用例有用?

绑定多播(UDP)套接字是什么意思?

我在具有多个networking接口的主机之间使用组播UDP。 我正在使用boost :: asio,并且被2个操作接收器所迷惑:绑定,然后连接组。 为什么在绑定期间需要指定一个接口的本地地址?何时join每个组播组? 姐姐问题关于组播端口:因为在发送过程中,你发送到一个多播地址和端口,为什么在订阅一个多播组时,你只指定地址,而不是端口 – 在混淆调用指定的端口绑定。 注意:“join-group”是setsockopt(IP_ADD_MEMBERSHIP)一个包装,可以在同一个套接字上多次调用它,以订阅不同的组(通过不同的networking?)。 因此,在每次订阅一个组时,抛弃绑定调用并指定端口是非常有意义的。 从我看到的,总是绑定到“0.0.0.0”并指定join组时的接口地址,效果很好。 困惑。

从BackgroundWorker线程访问UI控件

我的窗体上有一个调用RunWorkerAsync()方法的button,然后执行一个动作,然后在同一个窗体上更新一个ListBox。 在DoWork事件完成后,我为事件(这是一个列表)分配结果,我处理RunWorkerCompleted()事件,然后执行下面的代码来更新我的列表框 这称之为: (道歉,代码格式不起作用) 现在,当我运行应用程序并按下刷新button时,出现以下exception: 我将如何解决这个问题? 编辑: 在下面的语句中抛出exception,这发生在DoWork方法中,我清除内容以保持列表最新; listBoxServers.Items.Clear();

C#小端或大端?

在允许我们通过UDP / IP控制硬件的文档中,我发现了以下片段: 在这个通信协议中,DWORD是一个4字节数据,WORD是一个2字节数据,BYTE是一个单字节数据。 存储格式为小端,即4字节(32位)数据存储为:d7-d0,d15-d8,d23-d16,d31-d24; 双字节(16位)数据存储为:d7-d0,d15-d8。 我想知道这是如何转换为C#? 在发送之前是否需要转换内容? 例如,如果我想发送一个32位整数或一个4个字符的string?

互联网上最大的安全UDP数据包大小是多less?

我已经阅读了大量有关UDP数据包大小的文章,但是一直没有得出什么是正确的结论。 许多服务将最大的UDP数据包限制为512字节(如dns) 假设互联网上的最小MTU是576,并且IPv4报头的大小是20个字节,并且UDP报头是8个字节。 这留下了548个字节用于用户数据 我将能够使用数据包的大小为548没有数据包碎片? 或者,DNS的创build者知道的是,他们为什么将其限制在512字节。 我可以安全地超过548字节吗?

UDP vs TCP,速度要快多less?

对于一般的协议消息交换,可以容忍一些丢包。 UDP over TCP有效多less?

当你需要可靠的UDP时,你使用什么?

如果你有一个TCP连接可能太慢,UDP连接可能太不可靠的情况,你使用什么? 那里有各种标准可靠的UDP协议,你有什么经验? 请每个回复讨论一个协议,如果其他人已经提到了你使用的那个,那么就要考虑投票,如果需要的话可以使用评论来详细说明。 我对这里的各种选项感兴趣,其中TCP处于一个规模的一端,UDP处于另一端。 各种可靠的UDP选项都可用,并且每个都带有一些TCP到UDP的元素。 我知道TCP通常是正确的select,但是有一个替代scheme的列表通常可以帮助我们得出这个结论。 像Enet,RUDP等build立在UDP上的东西有各种各样的优点和缺点,你用过它们,你有什么经验? 为了避免疑问,没有更多的信息,这是一个假设性的问题,我希望能够得出一份回应清单,详细列出需要作出决定的人可以使用的各种选项和备选scheme。

两个应用程序可以听同一个端口吗?

同一台计算机上的两个应用程序可以绑定到相同的端口和IP地址吗? 更进一步,一个应用程序可以监听来自某个IP的请求,另一个可以监听另一个远程IP的请求吗? 我知道我可以有一个应用程序开始两个线程(或叉)具有类似的行为,但可以有两个没有共同点的应用程序相同的?