求数据在网络中传输的具体过程

来源:百度知道 编辑:UC知道 时间:2024/05/10 11:11:05
假设我现在用QQ发送一个小于64KB的数据,该数据从PC1发出,经过路由器R1到达PC2.
请问数据从PC1的应用层生成之后经过各层到达PC2的过程,什么时候用到IP地址、什么时候用到物理地址。这个地方我很糊涂,请各位高手不惜赐教!!
对于1楼的回答,我问题再补充一下,假如说现在PC1在一个很复杂的网络之中,那么,PC1是怎样知道要通过R1到达PC2的
还有,1楼的回答这一系列的过程中,IP地址的作用表现在哪,哪些时候用到了IP地址。

不管网络有多复杂,pc1根据你所设置的网关(或者自动获取的)ip,用arp获取到网关的mac地址(命令提示符下,arp -a查看)。

网关本身有路由功能,也就是说如果他学习到了pc2所在网段的路由,那么它会将ip包根据路由表交给下一跳;否则他就将ip包交给默认路由(一般交换机都需要有此项设置,如果某个ip包的目的ip,不在路由表当中,那么就交给默认路由中的下一跳来处理,默认路由一般格式 ip route 0.0.0.0/0 下一跳ip )。

只要出了网关,在各个路由之间传递的都是ip包,ip包中的原ip/目的ip永远不会变,但是原mac地址在每一个经过的路由器中,都会用此路由接口的mac地址重新封装。

pc1应用数据,在本地的被分段封装在ip包中,查询路由器r1的mac地址,然后交给二层,用本机的mac地址为源,组装成贞,交给r1,在r1处,重新用r1的mac地址重新封装后,交给ip层,经过n次路由后,交给pc2侧的路由器,然后查询pc2的mac地址后,交给pc2……