我需要使用回显服务器测试我的 UDP 程序。我已经在 LAN 中测试了这个应用程序,但现在我需要它在 Internet 上测试它。
是否有全球公认的免费可用的知名 ECHO 服务器,我可以直接在我的应用程序中使用?
请帮忙,谢谢....
编辑 我已经有一个基于 Java 的 Echo Server 程序,我在我的桌面上运行它并使用 Wifi 连接移动设备。现在我想检查互联网的应用程序,所以我需要一些实时服务器的 IP 端口,就像一些 IP 提供的 DayTime 服务一样。
在rmem_maxLinux的设置限定了接收UDP数据包缓冲区的大小。
当流量变得太忙时,数据包丢失开始发生。
我制作了一个图表,显示数据包丢失如何根据传入带宽增加。
(我使用IPerf在两个 VM 实例之间生成 UDP 流量)。
不同的颜色代表不同的rmem_max值:

如您所见,设置rmem_max为26214400(深蓝色)会导致丢包比较小的值更早。Linux 的默认值是131071(深绿色)看起来很合理。
在这些情况下,为什么JBoss 文档建议设置rmem_max为26214400?
是因为 UDP 流量预计高于 350 MB/秒吗?无论如何,我认为任何东西都不会超过 1% 的丢包率...
我错过了什么?
详细信息:我sysctl -w net.core.rmem_max=131071(例如)在两个节点上都使用过,并在作为 serveriperf -s -u -P 0 -i 1 -p 5001 -f M和另一个作为 client 使用iperf -c 172.29.157.3 -u -P 1 -i 1 -p 5001 -f M -b 300M -t 5 -d -L 5001 -T …
我刚刚从我的机器上捕获了一个数据包并过滤掉了所有的 UDP 连接。我看到某些连接使用似乎是随机生成的 UDP 源端口,并且某些连接使用与 UDP 目标端口相同的源端口。
我知道 TCP 连接会随机化源端口,因此响应有一个“专用”端口可以响应。但是它如何与 UDP 一起工作?
我正在寻找权威的答案。链接到 RFC(或诸如此类)的链接将不胜感激。
什么决定了 UDP 源端口?
谢谢你。
我最近对 HTTP 有点困惑。
一些事实是,TCP 可以操作面向连接或无连接,这是我理解的。TCP 是面向连接的,而 UDP 是无连接的,当消息本身可以放入单个消息时使用。
题:
如果 HTTP 使用 TCP,而 TCP 为多个消息交换提供可靠连接,而 HTTP 被称为无连接,那这怎么可能?
TCP是面向连接的吗?那么 HTTP 无连接是如何实现的????
我有一个专有系统,它将 udp 视频流从单元 #1 (192.168.1.1) 传输到单元 #2 (.1.2)。我无法对这个系统进行更改,我正在尝试克隆这个 udp 流,以便我可以在不同的程序中访问它。该程序将对视频进行处理并将其作为多播流再次发送出去。
我希望使用带有三个网卡的 Linux 机器(现在运行 Ubuntu Server 12.04)来做到这一点。通过将单元 #1 和 #2 连接到 Linux 机器中的两个网卡(eth0 和 eth1)并使用网桥,我让它们进行了通信。我的 /etc/network/interfaces 看起来像:
# The loopback network interface
auto lo
iface lo inet loopback
# The external interface
auto eth3
iface eth3 inet static
address 192.168.10.2
netmask 255.255.255.0
# The bridge interface
auto br0
iface br0 inet manual
bridge_ports eth0 eth1
Run Code Online (Sandbox Code Playgroud)
这是有效的,并且通过使用 tcpdump 我已经确认 udp 数据包是从 #1 到达并在端口 6000 处朝向 #2。
我希望的下一步是使用 iptables 来克隆所有来自 192.168.1.1 的 udp …
我读过这个问题,但对称 NAT 的解释不够详细。
请有人帮助我理解以下段落吗?
我阅读了有关对称 NAT 的内容:
从相同的内部 IP 地址和端口到特定目标 IP 地址和端口的每个请求都映射到唯一的外部源 IP 地址和端口,如果同一内部主机发送数据包即使具有相同的源地址和端口但发送到不同目的地,使用不同的映射。只有从内部主机接收数据包的外部主机才能发回数据包。
http://en.wikipedia.org/wiki/Network_address_translation#Types_of_NAT
这是关于UDP 打孔的:
UDP 打孔不适用于大型企业网络中的对称 NAT 设备(也称为双向 NAT)。在对称 NAT 中,与众所周知的 STUN 服务器的连接相关联的 NAT 映射仅限于从知名服务器接收数据,因此,知名服务器看到的 NAT 映射对端点来说不是有用的信息。
http://en.wikipedia.org/wiki/UDP_hole_punching
但我并没有真正吸收它。我觉得它告诉我(在客户端发起通信的客户端 - 服务器应用程序中)除非 NAT 设备明确允许,否则服务器无法以其他方式进行通信。我不明白为什么会这么说。如果可能的话,你能帮我稍微简化一下这个描述吗?
我们的环境存在一个问题,即知名的远程支持工具无法由同样知名的软件供应商使用来为我们提供支持。客户端是代理感知的,但出于某种原因,它认为不使用它并通过端口 1153 上的 UDP 做一些完全不同的事情可能是个好主意。
感谢您阅读本文,我感谢任何和所有建议。
我在使用 Riseup.net 的 VPN 重新连接到我的 OpenVPN 客户端时遇到了一些严重的问题。
我花了几天的时间试图在我的 iOS 设备上设置它...但这是另一个问题。然而,我能够在我的 Mac OS X 上设置它,特别是在我的 Windows Vista 32 位 BootCamp VM 上,相对没有什么麻烦。
最初连接时,我只需要稍微修改推荐的配置文件(本文末尾包含配置文件): - 我必须将代码直接输入到我的配置文件中 - 并将“dev tap”更改为“dev tun”
所以我被连接了。(注意 - 我做了测试以确保 VPN 在我最初连接后确实可以正常工作,确实如此。还验证了 .pem 文件(在我的配置文件中作为编码插入)的真实性)。我让 VPN 运行。我的电脑睡着了。今天我去使用互联网,期望(可能是错误的 - 我现在不确定让它运行是否错误)仍然可以连接到 VPN。然而,我立即看到我不是。我去重新连接。并且(我)无法做到。
尝试连接(并出现连接失败对话框)后,我的日志显示一切正常(据我所知),直到我得到以下几行:
Mon Sep 23 21:07:49 2013 us=276809 Initialization Sequence Completed
Mon Sep 23 21:07:49 2013 us=276809 MANAGEMENT: >STATE:1379995669,CONNECTED,SUCCESS, OMITTED
Mon Sep 23 21:22:50 2013 us=390350 Authenticate/Decrypt packet error: packet HMAC authentication failed
Mon Sep 23 21:23:39 2013 …Run Code Online (Sandbox Code Playgroud) 我想测试 UDP 连接iperf3,但不知道如何在 UDP 服务器模式下启动它。
iperf3 -s只打开一个 TCP 套接字:
root@srv ~# lsof -i -P | grep iperf3
iperf3 21030 root 3u IPv4 15606995 0t0 TCP *:5201 (LISTEN)
Run Code Online (Sandbox Code Playgroud) Windows Server 2008 我使用 portproxy 接口来转发流量,但我查看了 msdn 页面,发现它不支持 udp 协议。
protocol 指定要使用的协议。目前,仅支持传输控制协议 (TCP)。
任何建议如何在 Windows Server 上转发 udp 流量?
RHEL 6 服务器上的 Rsyslog 在端口 514 UDP 上本地接收消息。这些消息有时比正常的系统日志消息大小大得多。我看到 rsyslog 可以很好地处理所有消息,它可以毫无问题地写入本地文件。但是,当我将远程主机添加到 rsyslog 配置时,这些相同的大消息被截断为大约 2048 个字符。
我正在运行 rsyslogd 版本:5.8.10
rsyslogd 5.8.10, compiled with:
FEATURE_REGEXP: Yes
FEATURE_LARGEFILE: No
GSSAPI Kerberos 5 support: Yes
FEATURE_DEBUG (debug build, slow code): No
32bit Atomic operations supported: Yes
64bit Atomic operations supported: Yes
Runtime Instrumentation (slow code): No
Run Code Online (Sandbox Code Playgroud)
我对 rsyslog conf 所做的唯一更改是以下两件事:
这是在我的 rsyslog conf 文件的最顶部:
$MaxMessageSize 64k
Run Code Online (Sandbox Code Playgroud)
这是在我的 rsyslog conf 文件的最底部:
$template RemoteHost,"<%%PRI%>%TIMESTAMP:::date-rfc3339% %HOSTNAME% %syslogtag:1:32%%msg:::sp-if-no-1st-sp%%msg%
*.* @my-rsyslog-central-logger:514; RemoteHost
Run Code Online (Sandbox Code Playgroud)
有谁知道为什么 rsyslog 会通过 UDP 将日志截断到远程主机,但是在将日志写入本地文件时能够处理日志?
**注意我确实通过使用 netcat 侦听 …