两台计算机是如何通信的了?以前一直都没怎么明白,现在总算有了一点头绪了,虽然内部原理有些地方还是还没有搞清楚,比如采用的路由算法什么的。以下就是分析:
当把数据打好成ip包以后,通过ip协议发送到路由器,路由器查看目的ip地址,如果是本地网络,就直接把ip包发送到本地网络接口,然后再发送到目的地址,如果目的地址不属于本地网络,则发送到其它路由器接口,这里路由器干些什么?路由器维护一个路由表。
路由表:
目的地址 下一站地址 端口
192.168.10.0 直接转发 右
还维护一个
ip地址 距离
192.168.10.0 1
这里的距离是到达目的ip地址所要经过的路由器个数,在开始的时候,没个联网的路由器会发出请求,收到其它路由器的距离信息,一般每30秒就会更新,当路由器接收到ip包,则根据其它路由器发出的路由距离信息,选择距离最短的最优算法,进行转发。
具体算法,还在研究。