Questions tagged «udp»

UDP代表用户数据报协议。使用UDP应用程序可以将消息(数据报)发送到网络上的其他主机,而无需事先进行通信以建立特殊的传输通道或数据路径。

1
供应商白皮书说:5Mpps没有问题。我已经以120kpps的速度撞墙了。瓶颈在哪里?
惠普在其QLogic(fka Broadcom)NetXtreme II适配器上的白皮书(其中包括我正在测试的特定NIC)指出(第7页),它们对高达256字节/数据包的小数据包性能超过5,000,000数据包/秒。 在我的应用测试中,我禁用了除仅UDP接收部分之外的所有处理,我只能提高到每秒120,000个数据包。数据包平均分布在12个多播组上。 我注意到有一个核心(在2个插槽中,每个核心有12个核心),当我提高UDP发送速率时,负载会逐渐增加,最大约为120,000。但是我不知道那个核心在做什么,为什么。它不是我的应用程序中的单线程瓶颈,因为我为所有多播组运行应用程序的单个实例,还是为每个处理一个多播组的12个实例都没有关系。因此,瓶颈不是我的接收器应用程序。 启用MSI(通过设备管理器中的“按类型划分的资源”视图进行验证),并且在NIC设置中也启用RSS(具有8个队列)。那么,坚持这一核心的是什么?当前所有的NIC卸载功能都已启用,但是将其关闭并没有帮助。 那么瓶颈在哪里? 系统细节: ProLiant BL460c Gen9 英特尔至强E5-2670 v3(2 x 12核) HP FlexFabric 10Gb 2端口536FLB NIC Windows 2012 R2

6
用于网络监视的路由/代理SNMP陷阱(或Netflow,通用UDP等)的解决方案?
我正在为一个非常大的网络(大约5000个网络设备)实施网络监视解决方案。我们希望网络上的所有设备都将SNMP陷阱发送到一个盒子(从技术上讲,这可能是一对HA盒子),然后让该盒子将SNMP陷阱传递到真实的处理盒子上。这将使我们拥有多个处理陷阱的后端盒,并在这些后端盒之间分配负载。 我们需要的一项关键功能是能够根据陷阱的源地址将陷阱转发到特定的盒子。对解决此问题的最佳方法有何建议? 我们考虑过的事情包括: 使用snmptrapd接受陷阱,并将其传递给自定义的perl处理程序脚本,以重写陷阱并将其发送到适当的处理框 使用在Linux机器上运行的某种负载平衡软件来解决此问题(很难找到许多可以处理UDP的负载平衡程序) 使用负载平衡设备(F5等) 在Linux机器上使用IPTables通过NAT路由SNMP陷阱 目前,我们已经实现并正在测试最后一个解决方案,首先是使用配置了IPTables的Linux机器来接收陷阱,然后根据陷阱的源地址,用目标nat(DNAT)重写它,以便将数据包发送到适当的服务器。例如: # Range: 10.0.0.0/19 Site: abc01 Destination: foo01 iptables -t nat -A PREROUTING -p udp --dport 162 -s 10.0.0.0/19 -j DNAT --to-destination 10.1.2.3 # Range: 10.0.33.0/21 Site: abc01 Destination: foo01 iptables -t nat -A PREROUTING -p udp --dport 162 -s 10.0.33.0/21 -j DNAT …

3
如何连接到udp端口命令行?
已锁定。该问题及其答案被锁定,因为该问题是题外话,但具有历史意义。它目前不接受新的答案或互动。 这是我尝试过的,但似乎不起作用: [root@ ~]# netstat -a|grep 48772 udp 0 0 *:48772 *:* [root@ ~]# telnet localhost 48772 Trying 127.0.0.1... telnet: connect to address 127.0.0.1: Connection refused telnet: Unable to connect to remote host: Connection refused
14 udp 

2
验证与UDP端口上的服务器的连接
我想知道HP-UX计算机是否可以使用UDP与特定端口上的远程计算机(我无法控制)进行通信。 我尝试使用telnet,但它似乎不支持UDP。我将使用netcat,但找不到任何捆绑包。这台机器已经投入生产,所以我不想在编译或安装太多东西时费解……(nmap,源代码的netcat ...) 有任何简单的方法吗?
14 telnet  udp  hp-ux 

4
tcpdump提高udp性能
我正在运行一组负载测试以确定以下设置的性能: Node.js test suite (client) --> StatsD (server) --> Graphite (server) 简而言之,node.js测试套件每隔x秒就会向另一台服务器上的StatsD实例发送一定数量的指标。然后,StatsD每秒将指标刷新到位于同一服务器上的Graphite实例。然后,我查看测试套件实际发送了多少度量,以及Graphite收到了多少度量,以确定测试套件与Graphite之间的数据包丢失。 但是我注意到有时我会有非常大的丢包率(注意它是通过UDP协议发送的),范围从20%到50%。因此,当我开始查看这些数据包的丢弃位置时,发现StatsD可能是一些性能问题。因此,我开始记录系统各个部分的指标,以跟踪发生此下降的位置。这就是事情变得奇怪的地方。 我正在使用tcpdump创建一个捕获文件,在测试运行完成后检查该文件。但是每当我在运行tcpdump的情况下运行测试时,几乎都不存在数据包丢失的情况!看起来tcpdump某种程度上提高了我的测试性能,但我不知道为什么以及如何做到这一点。我正在运行以下命令来在服务器和客户端上记录tcpdump消息: tcpdump -i any -n port 8125 -w test.cap 在一个特定的测试案例中,我正在发送40000个指标/秒。运行tcpdump时的测试的数据包丢失率约为4%,而没有进行测试的数据包丢失率约为20% 这两个系统均通过以下设置作为Xen VM运行: 英特尔至强E5-2630 v2 @ 2.60GHz 2GB RAM Ubuntu 14.04 x86_64 我已经检查过的潜在原因: 增加UDP缓冲区的接收/发送大小。 影响测试的CPU负载。(客户端和服务器端的最大负载为40-50%) 在特定接口而不是“ any”上运行tcpdump。 使用'-p'运行tcpdump以禁用混杂模式。 仅在服务器上运行tcpdump。这导致发生20%的数据包丢失,并且似乎不影响测试。 仅在客户端上运行tcpdump。这样可以提高性能。 将netdev_max_backlog和netdev_budget增加到2 ^ 32-1。这没什么区别。 在每个nic上尝试了混杂模式的所有可能设置(服务器打开和客户端关闭,服务器关闭和客户端打开,都打开,都关闭)。这没什么区别。

2
将防火墙规则减少一半-TCP和UDP的一个iptables规则
我的防火墙上有许多iptables规则,如下所示: iptables -A zone_lan_forward -p tcp -d 1.2.3.0/24 -j ACCEPT iptables -A zone_lan_forward -p udp -d 1.2.3.0/24 -j ACCEPT 每个地址都有两条规则的捷径吗?一条规则用于tcp,一条规则用于udp?我的意思是我可以做这样的事情: iptables -A zone_lan_forward -p tcp,udp -d 1.2.3.0/24 -j ACCEPT
12 iptables  firewall  tcp  udp 

2
300Mbit(14%)处的UDP极端丢包,但不重传的TCP> 800Mbit
我有一个Linux盒子用作iperf3客户端,测试了2个配备Broadcom BCM5721、1Gb适配器(2个端口,但只有1个用于测试)的配置相同的Windows 2012 R2服务器盒。所有机器都通过一个1Gb交换机连接。 以例如300Mbit测试UDP iperf3 -uZVc 192.168.30.161 -b300m -t5 --get-server-output -l8192 导致丢失所有已发送数据包的14%(对于具有完全相同硬件的其他服务器盒,但是使用较旧的NIC驱动程序,丢失大约为2%),即使丢失50Mbit也会发生丢失,尽管严重程度较低。使用等效设置的TCP性能: iperf3 -ZVc 192.168.30.161 -t5 --get-server-output -l8192 产生800Mbit以北的传输速度,没有报告的重新传输。 始终使用以下选项启动服务器: iperf3 -sB192.168.30.161 谁该怪? Linux客户端盒(硬件?驱动程序?设置?)? 编辑:我只是将测试从一个Windows服务器盒运行到另一个,而300Mbit的UDP数据包丢失甚至更高,为22% Windows服务器框(硬件?驱动程序?设置?)? 连接所有测试机器的(单个)开关? 电缆? 编辑: 现在,我尝试了另一个方向:Windows-> Linux。结果:数据包丢失始终为0,而吞吐量最大达到大约 840Mbit -l8192,即分段的IP数据包 250MB,用于无碎片的-l1472IP数据包 我想流量控制会限制吞吐量,并防止数据包丢失。尤其是后者,无碎片的数据远不及TCP吞吐量(无碎片的TCP产生的数据与碎片TCP相似),但是在数据包丢失方面,它相对于Linux-> Windows而言是无限巨大的改进。 以及如何找出? 我确实遵循了服务器上驱动程序设置的常规建议以最大化性能,并尝试启用/禁用/最大化/最小化/更改 中断适度 流量控制 接收缓冲区 的RSS 局域网唤醒 所有卸载功能均已启用。 编辑我也尝试启用/禁用 以太网@线速 各种卸载功能 优先级和VLAN 损失率相近。 …

2
莫什类端口转发
这是在linux上,连接到linux服务器: 我喜欢mosh,但是它不支持端口转发,并且由于已经快一年了,而且还没有发生,所以可能不会有一段时间了。 通过ssh进行端口转发非常棒,但是由于我的笔记本电脑每天在网络之间移动几次,因此ssh会话会失效,因此端口转发也是如此。 我可以编写脚本/破解某些东西以检测挂起的ssh并重新连接以将端口转发回去,但是在执行此操作之前,还有另一种方法可以在源IP每天更改几次时进行持久的端口转发(因为您使用不同的网络) )? 我想通过UDP的ssh可以解决问题,但是ssh当然是通过TCP的。
11 port  forwarding  udp 

3
说明TCP和UDP源端口应大于1024且随机的文档在哪里?
我很难找到记录在哪里的源端口应该是随机的并且在1024-65535范围内。 此文件记录在哪个RFC中? 编辑: 特权端口的第一个引用是在RFC2623中。 这似乎更多地取决于TCP / IP的实现,它是事实上的标准。 IANA正在分配端口号(RFC1700)
11 tcpip  udp  rfc 

6
UDP中的MTU如何为65535,但以太网不允许帧大小超过1500字节
我正在使用100 Mbps的快速以太网,其帧大小小于1500字节(根据我的教科书,有效负载为1472字节)。这样,我能够发送和接收消息大小为65507字节的UDP数据包,这意味着数据包大小为65507 + 20(IP报头)+ 8(UDP报头)= 65535。 如果帧的有效负载大小本身最大为1472字节(根据我的教科书),那么IP的数据包大小如何大于此处的65535? 我使用发件人代码作为 char buffer[100000]; for (int i = 1; i < 100000; i++) { int len = send (socket_id, buffer, i); printf("%d\n", len); } 接收方代码为 while (len = recv (socket_id, buffer, 100000)) { printf("%d\n". len); } 我观察到send returns -1上i > 65507和recv打印或接收的分组maximum of length 65507。

3
Windows Server 2012-UDP上的RDP无法正常工作
我有一台Windows Server 2012(非R2)计算机,托管在Hyper-V虚拟化中,并安装了RD会话主机和RD网关。它用于运行桌面GIS应用程序。 WAN上的性能非常差。我向NAT添加了UDP端口以提高性能,但仍未使用UDP连接。 在LAN测试环境中(为避免NAT /防火墙配置错误),我从Win10计算机连接。连接信息栏显示“出色的质量”,但未提及UDP。如果是反向连接(Windows Server => Windows 10),则连接信息栏显示已启用UDP。 我完全关闭了Windows Server上安装的Windows防火墙。我仔细检查了RD网关中是否启用了UDP传输。如果使用网关(443 + 3391)或直接(3389 + 3389)连接,则没有任何区别。我重新启动了整机两次,并在前三个google结果页面上滚动了所有链接。 您知道什么地方可能出问题吗?

3
负载平衡DNS服务器:UDP / TCP
我被要求在数据中心重建我们的负载平衡基础架构。 最初的请求是对FTP服务器进行负载平衡。我尝试使用当前的负载均衡器(Piranha / LVS)进行此操作,但没有启动并运行它。不仅仅是因为几乎没有该软件的文档。由于Piranha被认为已弃用,因此我HAProxy尝试了几天后又去了,花了很少的时间完成了这项工作Piranha。 因此,我已经准备好FTP负载平衡(被动模式)。现在,我被要求更换数据中心中的整个Piranha负载均衡器。在当前的Piranha配置中,我们有几个Web服务器,IIS服务器.... aaa和DNS。 不,这是东西: HAProxy似乎是常用的LB,但是它不能处理UDP load balancing。这真是令人讨厌,因为我喜欢这种方式HAProxy。因此,我在Google上搜索了很多东西,并遇到了一些问题。大多数人似乎都将LVS其用作DNS(TCP / UDP)的LB。一些使用dlbDNS,一些使用lbnamed,还有一些使用netfilter / iptables。 因为我想坚持使用HAProxyFTP,HTTP和IIS服务器,所以我对与并列使用它感到困惑LVS。 要求: 具有故障转移的 2 个LB实例具有故障转移的2个DNS服务器(已存在)具有 多个后端服务器(http,应用程序等) 问题: 可能吗?DNS服务器上的UDP负载平衡是否必要?是否有任何资源可以向我展示如何入门?还是有一个LB解决方案不仅能够处理TCP / HTTP,而且还能够处理UDP负载平衡? PS: LB解决方案应为非硬件和开源/ GPL许可/不收费。 任何帮助或导致各自的资源非常感谢!

4
丢包在数据​​中心内的通信中有多普遍?
假设我在同一数据中心中有两台计算机,但不一定在同一机架中。 在这两台计算机之间使用UDP发送时,丢弃的数据包有多普遍? 我的假设下问这个,因为只有在机器之间最少数交换机的数据包不会被丢弃在所有。 无序数据包到达同一数据中心的情况有多普遍?我的假设是,只有99.9%的时间只有一条路线,所以这不可能发生。 但是,每当我陷入绝对的思考时,我都知道我一定会错过一些东西! 我需要什么背景信息来更好地了解何时应该丢弃数据包,以及丢弃数据包的频率以及在同一数据中心内的机器出现故障的频率? 最终,我试图在位于同一数据中心的不同Linode VPS实例之间进行通信时,决定使用多播UDP还是PGM。信息必须按顺序到达。当然,UDP听起来不那么好! 但是,如果可以期望在同一数据中心内实现几乎完美或完美的交付,那很好。但是,我正在测试该假设。 谢谢。

5
如何列出对udp套接字的所有请求?
我正在运行几个使用udp与大量客户端进行通信的服务器守护程序。我如何找到并列出与服务器通信的所有活动udp “连接”,以便估计连接到服务器守护程序的活动客户端的数量?除了用tshark或tcpdump嗅探数据包并查看发送到服务器守护程序的udp数据包的源ip之外,我想不出一种简单的方法,是的,我知道UDP是无连接和无状态协议。

2
对称NAT和UDP打孔
我已经读过这个问题,但是对对称NAT的解释还不够详细。 请有人可以帮助我理解以下段落吗? 我读了有关对称NAT的内容: 如果相同的内部主机即使发送相同的源地址和端口,但发送到不同的包,则从相同内部IP地址和端口到特定目标IP地址和端口的每个请求都将映射到唯一的外部源IP地址和端口。目的地,使用其他映射。只有从内部主机接收到数据包的外部主机才能将数据包发回。 http://en.wikipedia.org/wiki/Network_address_translation#Types_of_NAT 关于UDP Hole-punching的内容: UDP打孔不适用于大型企业网络中常见的对称NAT设备(也称为双向NAT)。在对称NAT中,与到知名STUN服务器的连接相关联的NAT映射仅限于从知名服务器接收数据,因此,知名服务器看到的NAT映射对于端点不是有用的信息。 http://en.wikipedia.org/wiki/UDP_hole_punching 但是我并没有真正吸收它。我感觉到,这是在告诉我(在由客户端发起通信的客户端-服务器应用程序中),除非NAT设备明确允许,否则服务器无法以其他方式进行回传。我不明白为什么这么说。如果可能,您能为我稍微简化一下此说明吗? 我们的环境中存在一个问题,即同样知名的软件供应商无法使用众所周知的远程支持工具来为我们提供支持。客户端是代理感知的,但是对于某些回应,它认为最好不要使用它,而是通过端口1153上的UDP进行完全不同的操作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.