路由工作原理

whatdoyousay 2014-09-30 10:19:11
当在北京的一台电脑发送一个数据帧到广州时候是怎么传送的呢,以下是我的理解

把IP数据在数据链路层封装成MAC帧,路由器有三层,上层的网络层将IP数据帧剥离出来,查找转发表,发现没有,所以就广播,如此下去,这样岂不是非常耗费网络资源,请求的人数多了,那路由器不是得出问题。

因为IP地址是唯一的,所以路由器的每一个端口都会有一个IP地址,这些IP地址是制造好的时候就写入了的么。还是说只是每一个局域网上的一个IP地址而已。
...全文
209 点赞 收藏 15
写回复
15 条回复
於黾 2014年10月08日
那是我用词不准确了. 数据包的生命周期概念出现之前,数据包在路由器中不断循环,那叫什么风暴来着? 还有,从交换技术发明开始,就不存在冲突碰撞机制了,冲突碰撞那是总线HUB,不是交换机
回复 点赞
whatdoyousay 2014年10月08日
引用 13 楼 hdt 的回复:
广播风暴,首先要先有广播的概念,在一个广播域中才会引起。一个不基于广播通信的网络怎么可能有广播风暴?
没错,首先得是广播域
回复 点赞
真相重于对错 2014年10月02日
广播风暴,首先要先有广播的概念,在一个广播域中才会引起。一个不基于广播通信的网络怎么可能有广播风暴?
回复 点赞
真相重于对错 2014年10月02日
网络风暴是指的在局域网或者说2层网上,因它们的通信方式是依靠冲突碰撞检测来实现的,当主机数量庞大或者通信量大时造成的,而不是指在3层网络上。
回复 点赞
以专业开发人员为伍 2014年10月01日
http://baike.baidu.com/view/7031.htm 不过这个在这个应用系统开发论坛上,有点不很符合了。这就好像你在一个厨师论坛上讨论铁锅铁铲的批发销售和化学方程式一样。
回复 点赞
wind_cloud2011 2014年10月01日
http://jingyan.baidu.com/article/ac6a9a5e41942c2b653eacb5.html这是资料讲得比较清楚,你看看
回复 点赞
於黾 2014年09月30日
还有,从A到B会有不止一条路由 那么路由器在转发的时候,会有算法 比如最短路由,或最小时间路由 当默认的最佳路由不通畅的时候,会将路由从路由表中移除,然后使用其他路由
回复 点赞
於黾 2014年09月30日
1.数据包有生命周期的概念 在生命周期的概念出现之前,确实会由于这种原因产生大量无用数据包一直循环,就是所谓的广播风暴 2.路由器的默认路由表,会记录与它直连的路由器IP 如果不是直连的,需要请求过一次之后,才会记录 比如从1发送数据包给4,4知道数据包是A发给B的,那么4就先把到A的路由加入路由表,就是通过1能够访问到A 然后等数据包发到B,再返回来的时候,4接到7发送的数据包,知道数据包是B发给A的,此时4将B的路由加入路由表,就是通过7能够访问到B
回复 点赞
whatdoyousay 2014年09月30日
刚看了一下,好像TTL(生存时间),和网络号,可以解决我的那两个问题 自己应该多想想再提问的
回复 点赞
whatdoyousay 2014年09月30日
引用 4 楼 yuwenge 的回复:
学习一下ccna基础教程。了解下多层交换机工作原理。
多谢,正在学习中。
回复 点赞
卧_槽 2014年09月30日
学习一下ccna基础教程。了解下多层交换机工作原理。
回复 点赞
whatdoyousay 2014年09月30日
引用 2 楼 Z65443344 的回复:
还是系统的补补网络基础
这样当路由器得到了路由后,把路由存放进路由表里,再次访问就不用再经历一次这样的过程了
关于第二个问题,ip当然是手动配置的,而不是出厂自带的

引用 1 楼 caozhy 的回复:
路由器就是工作在网络层,和MAC没有关系。



可能表述不清晰,我画了个图,从A到B,如果是自学习型,且第一次发送数据。
1、A先到Router 1,Router 1转发表找不到B,于是记录下A的地址,继续往下发送到Router 2,3,4
2、Router 4也找不到B,于是记录A地址,发送到Router 7
3、Router 7收到后,广播发现了B,于是记录下A和B的地址,送达。

问题在于
1、以上虚线部分是最理想的情况,在第1步中,同时发给了Router 2,3,而这很可能是不会有结果的,永远不会送达,数据不会在网络中无限传播么。
2、只有路由7才同时又A,B的地址,沿路过来的Router 1,4只有A的地址,而没有B的,那第二次的时候,难道再来一次?还是说Router 7会把B的地址也告诉回路上的Router 4,6.然后继续告诉Router 1.还是无差别送达全部相邻路由

求解答
回复 点赞
於黾 2014年09月30日
还是系统的补补网络基础 路由器里是有"路由表"的,路由表可以手动配置,也可以用路由协议自动生成(学习) 如果是手动配置,你ping一个没有直接连在路由器上,并且在路由表里没有的ip,是ping不通的 如果是自动学习,那么第一次ping一个ip,路由器会去问上一层路由器是否认识这个ip,如果上层也不认识,会继续问上层,直到顶层 当然前提是所有路由器都要遵循同样的协议 这样当路由器得到了路由后,把路由存放进路由表里,再次访问就不用再经历一次这样的过程了 关于第二个问题,ip当然是手动配置的,而不是出厂自带的
回复 点赞
路由器就是工作在网络层,和MAC没有关系。 得到数据包,得到IP,按照路由表转发给对应的主机,就行了。 你说的什么查找IP,定位主机,那个是交换机干的事情。当然,我们说的是侠义的路由器,不是指市面上卖的路由器,其实那东西内置了网关、交换机、防火墙、DHCP服务器甚至代理服务器等等。
回复 点赞
帅得_被人砍 2014年09月30日
tracert 看路由表走向咯
回复 点赞
发动态
发帖子
C#
创建于2007-09-28

8.5w+

社区成员

64.0w+

社区内容

.NET技术 C#
社区公告
暂无公告