不通局域网的电脑为什么ping不通,那qq是怎么做到不同局域网通讯的?

不通局域网的电脑为什么ping不通,那qq是怎么做到不同局域网通讯的?
有没有介绍网络方面的书给介绍本。或者教学视频。

qq有服务器,遇到两边都是局域网的情况,就通过服务器转发。
teamviewer也是类似的道理。
另外还有udp打洞技术可以实现单方局域网的直接互联。

如果需要java的socket编程的例子,请先采纳。