学习Linux系统的朋友们应该了解过系统硬件路由的转发,在Linux系统中路由转发指的是信号从一个站点转向另一个站点的一种协议,那么具体原理是什么呢。本文就来介绍一下Linux系统硬件路由的转发原理。
硬件转发原理图:
请注意,没有任何优化,你可以试着用一些小技巧将其进一步的优化,也可以直接用标准的TCAM来映射它。此图里,我详细展示了“最长前缀”逻辑是怎么做的,而在TCAM路由转发表的实例中,往往被画成了黑盒子,叫做“优先级逻辑控制器”,不过,这个逻辑电路比较简单,相信大家稍微思考都可以自己设计出来的。
其实,在上图中,有一个容器叫做“反掩码”,将这个反掩码逐位地安排在译码器后面的位线比较键旁边,这就是一个标准的TCAM做法了。
关于内容寻址和地址寻址
我们都知道cache比较贵所以不能太大,而内容就可以做很大,因为它比较便宜。
但是能否从技术层面解释一下呢?其实,贵与便宜的差异就是技术原因造成的,我们先看一下内存的存储阵列的电路:
这是个非常典型的矩阵,也很简单。但是对于CAM电路,就不是这么简单了,下图所示:
对于TCAM,需要加一个care逻辑,就更加复杂了,不光是电路复杂了,功耗也增加了,要知道,在CAM/TCAM匹配的过程中,电路的所有部分都是同时工作的。
关于硬件HASH
很多人都说CPU cache里面有一个硬件HASH,比如取地址的第n到m位,事实上就是一个移位,取模操作!这在程序员看来只能呵呵了,程序员们知道的最简单的HASH算法都比这个复杂。其实硬件工程师对程序员的呵呵是不屑一顾的,因为他们的关注点是如何使得电路同时工作时功耗最低,电路规模更小。CAM/TCAM都用了硬件HASH,很简单的硬件HASH,然而电路是可以同时工作的。这可是软件hash的大难题,软件hash旨在使得hash分布更加均匀,平均性能更好。这样冲突链表长度的平均方差最小。软件hash旨在解决冲突,而硬件HASH不需要这么做,因为在软件看来必须串行遍历冲突链表的时候,硬件却是可以同时进行的。
顺序执行的CPU
计算机被设计之初,就是一个顺序执行的模型,指令是一条接一条执行的。这是因为它是完全模拟真实世界中人的行为的。这就意味着所有的跑在计算机上的算法步骤都是要时间流逝中串行实施的,一个好的算法旨在让时间花费最短。然而硬件电路的设计并不遵循真实世界的人做事的样子,起码说不是太像。一个人不可能同时做很多事,硬件电路的执行流程更像是洪水泛滥的过程,由于势能,洪水同时往(注意,同时!)所有它可以去的地方冲去,瞬时就吞噬了一切。
补充:计算机硬件常见故障及其原因
1.1 计算机自动重启
在计算机运行中,自动重启的现象时有发生,造成这一问题的原因是多样化的。但从硬件角度而言,主要可能由以下原因所致:
1.1.1 内存问题所致
内存问题是电脑的常见故障,若内存上的某个芯片受损,就对计算机的稳定运行造成极大影响。特别是内存芯片受损,导致产生发热现象,就会造成部分功能的丧失,而出现计算机重启问题的发生。
1.1.2 CPU问题所致
CPU是计算机的核心硬件,但当CPU的功能电路受到损坏之时,会出现散热不良等问题,这样一来,计算机在特殊功能的运行中,就会因无法承受运行请求而出现自动启动。
1.2 计算机死机
计算机运行速度下降,甚至出现蓝屏死机的现象比较常见,有因计算机散热不佳,温度过高所致的原因,也有主板故障所致的因素所在。因此,在计算机运行中,若出现计算机死机问题,应从以下几个方面查找原因:
1.2.1 CPU散热不佳
在计算机运行中,CPU散热不良、超频等情况的出现,都会造成计算机CPU产生较大的热量,一旦散热不畅或持续产生较大热量,就会造成计算机出现死机。
1.2.2 硬盘故障
硬盘出现老化,或使用不当而导致坏道区和坏扇区出现问题,这都会对计算机的运行造成影响,形成死机现象。
1.2.3 主板故障
主板故障导致死机的原因有多种,主要有电容质量问题、电源管理芯片性能下降等。
1.3 显示器图像抖动
散热问题是计算机稳定运行的重要因素。但由于计算机硬件的运行,都会产生热量,这就会对计算机的运行形成影响。在计算机运行中,显示器突显出现抖动、色差的情况时有发生,究其缘由,主要是硬件设备在长时间的运行中,出现硬件温度过高,特别是在散热不良(不畅)的情况之下,显示器、CPU的问题过高,更容易出现计算机显示器图像抖动或失真现象。因此,在计算机的日常运行中,要特别注意计算机的散热状况,若计算机长时间运行,计算机出现温度过高等情况,都会对就算的硬件造成影响,加速硬件老化的发生。
相关阅读:电脑硬件维护小技巧
不要强行关闭笔记本电脑。一定要根据正确的关闭程序步骤来关闭电脑的运行,因为电脑在运行中会不断读写数据。如果强行关闭,很容易损坏硬盘,造成重要数据丢失。只有在电脑死机或者系统无法响应时才可以强行关机。
不要用笔记本电脑的电池里电玩游戏。笔记本电脑的电池电量只能支撑两个小时左右,而且游戏的时候CPU和显卡带来的大功率会对锂电池造成严重损耗和寿命迅速衰减。如果玩游戏应该插电再玩,这样才能更好的保护电池。
开不了机就拔掉内存条试试。一般的笔记本最容易出问题的就是内存条接口,接口坏了就不能开机,俗称“点不亮”。因此一般遇到开不了机的情况就先检查一下是不是内存条接口出现了问题,可以清洁一下接口。
加强散热的方法。大多数的笔记本电脑采用的是风冷散热系统,风冷的一大问题就是灰尘淤积造成散热差,可以试试除一下尘。如果自己不能很熟练拆开,建议还是找专业人员,这样可以避免因不小心造成内部损坏。另外,经过一段时间导热的硅脂会变性,导致散热能力降低,建议两年左右换一次硅脂。
秋冬季节防静电。秋冬时节非常干燥,特别是在北方地区。静电对人体没什么伤害,但是对电脑就不一样了,很容易造成电路烧毁。也有的笔记本电脑主板会有静电保护措施,自动切断电路,但是即使这样也是无法开启的,解决的办法就是静置几个小时,一般都会恢复正常。
不要在电脑工作时拔插头。电脑工作时不能拔插头或者插板卡,这样会损坏电脑的板卡,因为电脑工作时拔掉它们会产生静电,造成信号电压不匹配导致电脑损坏。
本文链接:
https://www.bigbaik.com/network/3587.html
免责声明:本文内容来自互联网,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系删除。