再问路由器与网关的区别?该如何解决

再问路由器与网关的区别?
在学计算机网络的时候,了解到路由器和网桥都是用于网络互连,不同的是一个是网络层,一个是链路层

可能是对TCP/IP协议模型并没有真正理解

这种逻辑上的分层模型让我不能很好地去想象和理解

原先的理解是链路层是物理的,与媒体相关的

网络层就是在链路层这条绳子上在添一个新的头

“网络层在链路层之上”有没有人能解释得更容易理解一点?

对路由器和网桥的区分上有疑惑,是因为不理解网络层连接和链路层连接的区别
难道仅仅是一个通过mac地址来转发,一个通过IP地址来转发?

另外,网桥不隔离广播也没有明白
资料大多有解释,但总是隔靴搔痒,挠不到关键点

谢谢了~~~

------解决方案--------------------
写一写程序就能明白了,其实他这种层就跟写程序的比如逻辑层,UI层,是一个意思。

每一层有它自己需要处理的东西,比如数据传输的时候,最上层可能是发送一个很大的包,也可能发送一个很小的包,但是最底层实际传输的时候可能会出错,也可能有数据丢失,啊,其实在这一层数据丢失和出错是一个意思,这样你就需要一种算法去处理这种问题,当前的网络就是在数据链路层去处理的,这一层是处理小的分组,如果对算法感兴趣可以去看看。

而网络层主要是处理ip相关的东西,ip就不用细说了把。

最后要说的就是,网络传输是个很复杂的过程,如果是在一起处理会非常困难,但是分层处理就会变的简单。
------解决方案--------------------
路由器和网关都是网络中连接不同子网的主机。二者都可对到达该主机的数据包进行转发。但二者具有本质区别。路由器相对网关而言较为简单。路由器工作在OSI 模型的物理层,链路层和网络层。路由器在多个互联网之间中继包。它们将来自某个网络的包路由到互联网上任何可能的目的网络中。路由器区别于网关的最大之处于路由器本身只能在使用相同协议的网络中转发数据包。而网关是一个协议转换器,其可以接收一种协议的数据包如 AppleTalk 格式的包,然后在转发之前将其转换成另一种协议形式的包如TCP/IP 格式继而发送出去。另外网关可能工作在 OSI 模型的所有七层之中。另外需要澄清的一点多协议路由器仅仅表示该路由器可转发多种协议格式的包,如一个路由器既可转发IP格式的包,亦可转发 IPX(Novell网的网络层协议)格式的包,如此工作模式的路由器对于每种协议都有一张路由表。注意多协议路由器与单协议路由器本质相同,且区别于网关,多协议路由器仍然不可对数据包进行协议上的格式转换,而仅仅在于其内部集成了多个协议的路由器,使得其可以转发多种协议格式的数据包,而网关可更改数据包的格式。
------解决方案--------------------
用功的好孩子啊。

小小解释一下: “网络层在链路层之上”有没有人能解释得更容易理解一点?
如果错了不要笑话哈。

链路层的功能可能是一些和硬件相关的C函数完成的,用mac去寻找目标主机,find(mac地址);到了网络层,就封装了一下链路层的函数, find(IP){}根据IP去找目标主机了,但是最终还是要链路层的支持,根据mac找到目标主机(因为到了局域网中,都是mac了)。

现在的大学教材,像XXXX概论,XXXX基础都太忽悠了,写的抽象,不好理解,像网络分层,我估计没几个老师能真正解释清楚的。
------解决方案--------------------
推荐你看:徐恪 吴建 平 * 伟 “高 等 
计算 机 网络 - 体系 结 构、 协 
议机 制 、算 法设 计 与路 由 
器技 术 ” (第 二版 ) ,机 械 
工业 出版 社 

难道仅仅是一个通过mac地址来转发,一个通过IP地址来转发?
还有包的大小也不一样。
我认为这就是最主要的区别,你看了上述的书,就知道为什么网络层不能用Mac地址,数据链路层必须用mac地址了。