是否可以通过3G上的NAT遍历技术连接iPhone以进行对等2对等游戏

时间:2009-05-23 13:53:50

标签: iphone networking tcp network-programming udp

是否可以将iPhone连接到另一个iPhone或任何其他网络客户端,并谈论该游戏的协议。

我原以为我可以使用XBox 360中使用的NAT Traversal technique来通过防火墙在用户XBox上托管游戏。

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

美国AT& T 3G网络是否存在阻止NAT遍历技术的固有限制(您是否仅限于wifi防火墙NAT遍历)?

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

4 个答案:

答案 0 :(得分:2)

iPhone OS 3.0将提供用于多人游戏的API以及与您附近区域的设备的连接,

  

“你可以在给定区域内找到与你玩同一游戏的其他iPhone和iPod Touch; Forstall给出了一个汽车后面两个孩子的例子.iPhone 3.0将通过蓝牙自动发现其他应用程序,并且没有配对。“完全无缝,”他承诺.Bonjour是这背后的后端技术,它不仅仅适用于游戏“

来源:CNET Live BlogApple Special Event Quicktime Video这是大约20分钟的演示文稿。

如果您想要的不仅仅是玩附近的设备,您可能会遇到3G网络带宽上限问题以及延迟问题,具体取决于用户所在的位置。与美国市中心主要城市相比,3G覆盖率非常零散的Boonies,多个蜂窝塔集中在一个小区域。您可能还会遇到AT& T的问题,这取决于游戏通过3G网络从手机发送和接收的数据量,因为多人游戏需要玩家和服务器(即使是作为一个玩家的玩家)发送信息来回不断。虽然有趣的想法!

答案 1 :(得分:1)

是的,这是可能的。

Eyeball Networks发布了iPhone NAT Traversal

的SDK

答案 2 :(得分:1)

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

答案 3 :(得分:0)

3G是一个大问题。如果你想通过3G与其他玩家建立UDP连接,你可能想尝试这种技术:

https://drive.google.com/file/d/0B1IimJ20gG0SY2NvaE4wRVVMbG8/view?usp=sharing