通过NAT穿透技术在3G网络下连接iPhone进行点对点游戏是否可行?

4

是否可以将iPhone连接到另一个iPhone或任何其他网络客户端,以使用该游戏协议进行通信?

我在想,我是否可以使用XBox 360中使用的相同的NAT穿透技术来通过防火墙在用户XBox上托管游戏。

为了使NAT穿透有效工作,我必须拥有一个中央服务器,允许客户端“广播”他们正在托管,以便另一个客户端可以启动NAT连接。在提供的链接中,这称为中继。

美国AT&T 3G网络是否存在任何固有限制,会阻止NAT穿透技术(您是否只能限于WiFi防火墙NAT穿透)?

NAT穿透项目: - PJSIP - 使用基于标准的协议(如STUN、TURN和ICE)提供NAT穿透功能。 - Freecast using Apache MINA Java network library for NAT Traversal


1
不确定这与编程有何关系。 - romandas
5
因为涉及实施软件层面的解决方案来规避网络限制。 - Alnitak
NAT穿透技术是一种套接字编程概念,服务器通过称为“打洞”的各种套接字连接技术欺骗防火墙,使网络流量定向到该开放端口,从而使服务器能够托管而无需在防火墙上打开端口(详细了解NAT穿透的套接字编程概念,请阅读“建立点对点会话”)。我还包括了一个关于NAT穿透的代码示例链接(认真的,它和编程密切相关)。 - Dougnukem
我改正了。一开始看起来非常像“网络管理员”。 :) - romandas
你找到答案了吗? - Ben S
4个回答

2
iPhone OS 3.0将拥有一个多人游戏的API,并与您所在区域内的其他设备进行连接,
“您可以找到在同一区域内玩相同游戏的其他iPhone和iPod Touch; Forstall举了两个孩子坐在车后座的例子。 iPhone 3.0将自动通过蓝牙发现其他应用程序,无需配对。他承诺这是“完全无缝的”。Bonjour是背后的技术,不仅适用于游戏。”
来源:CNET Live BlogApple Special Event Quicktime Video,演示大约进行了20分钟。
如果你想要的不仅仅是与附近设备玩耍,那么你可能会遇到3G网络带宽限制和延迟问题,这取决于用户所在的位置。偏僻地区的3G覆盖非常零散,而美国主要城市的市中心则有多个手机塔集中在一个小区域内。此外,由于多人游戏需要玩家和服务器(即使是扮演其中之一的玩家)不断地发送和接收信息,因此根据游戏发送和接收的数据量,你也可能会遇到AT&T的问题。虽然是一个有趣的想法!

1
我对新的iPhone OS 3.0 GameKit蓝牙功能感到非常兴奋。但在你使用WiFi的情况下,你可以与世界各地的人玩一些低延迟、高带宽的多人游戏。能够从我的手机上托管游戏服务器并允许用户连接并在互联网上玩游戏是很酷的事情。为了支持这一点,你需要一种方法来穿过普通的WiFi防火墙(就像XBox Live一样),这就是我想知道是否有人在iPhone上实现NAT遍历的原因。此外,了解这是否可能在3G网络上进行也很有趣。 - Dougnukem

1

AT&T似乎使用随机对称NAT - 这意味着在没有中继服务器的情况下,在其网络上的2个iPhone之间无法进行遍历。我不知道的是,如果在AT&T上的iPhone在同一部分AT&T网络上,它们是否可以直接使用其私有地址相互访问,或者是否存在某些防火墙。上次我检查时,TMobile使用了端口限制锥形NAT,因此在TMobile上的iPhone之间可以进行遍历,但无法从TMobile到达AT&T。


1

非常有趣!请告诉我你所说的“发布”是什么意思,我找不到任何下载或购买链接。 - Erik B

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接