模型(如图所示)
1. RouterA内是局域网AS1,RouterB内是局域网AS2。
2. RouterA、RouterB均具有NAT功能。
3. Server用于部署应用。
问题(本人菜鸟一枚,表述不清还望各路高手耐心理解)
1. HostB如何向HostC发起通讯?最好依据OSI七层模型,对数据包的流向在每一层进行分析。
2. 在IP层,我尚有模糊的地方。假设RouterA、RouterB和Server都是全球IP,当HostB首先想向HostC发送信息,发出的IP数据包源地址应是192.168.0.2,目的地址应是202.92.16.3,当RouterB收到这个数据包时,如何知道这个数据包应该交付给HostA的。
3. 在TCP/IP编程的时候,提供的Socket API只有IP地址和端口号两个参数,如果我在HostB上写上一个Socket程序,想让HostC接收我发送的一句话,应该怎么写?
4. IM(即时通讯),假设Server是部署了IM应用程序的服务器,Server应该记录HostA、HostB、HostC的什么信息才能实现不在同一局域网内的即时通讯。其过程又是如何实现的?
备注
1. 可能描述得有点混乱,望大神们能把握,尽快解决我的疑惑,上网查了很多资料都无法解决,书上也没说清,这些问题纠缠我很久了。事实上本质也就是一个问题,感谢了,我已无力!