本帖最后由 dongtao 于 2014-5-2 09:51 編輯
本章我們將一起了解下路由器的架構(gòu),芯片,操作系統(tǒng)相關(guān)的知識(shí)。我們的目標(biāo)是讓大家都能做智能路由,所以hoowa會(huì)盡可能少涉及到嵌入式的知識(shí),因?yàn)檫@孩子本身學(xué)習(xí)就不好,他自己也害怕那些所謂的各種”定義”會(huì)讓他聯(lián)想到上學(xué)的時(shí)候理科從來都不及格。
嵌入式的架構(gòu)定義
略。剛說了不講這些的,就算我給大家講了我也是從別的書里抄過來的,有意義么,我一定講我自己的。謝謝鼓掌!!!
MIPS處理器架構(gòu)
現(xiàn)在的路由器基本架構(gòu)和性能已經(jīng)非常接近于我們的電腦了。近十年來,路由器所采用的CPU主要都是基于MIPS架構(gòu)設(shè)計(jì)的。說到MIPS可能很多人陌生,說到龍芯了解的人就比較多了,龍芯便是MIPS架構(gòu)下的一種比較爛的處理器。
MIPS架構(gòu)是由斯坦福大學(xué)的教授約翰·軒尼詩在閑的無聊的時(shí)候帶領(lǐng)他的團(tuán)隊(duì)開發(fā)的一款處理器。在隨后的3年時(shí)間他創(chuàng)立了MIPS科技公司。MIPS采用了RISC精簡(jiǎn)指令集設(shè)計(jì)技術(shù),MIPS架構(gòu)處理器在當(dāng)時(shí)刷新了32位處理器性能的歷史。 在2002年中國(guó)研發(fā)龍芯處理器,采用了MIPS架構(gòu)但是沒有經(jīng)過MIPS公司授權(quán)遭到起訴,2009年與MIPS公司和解。
MIPS架構(gòu)有過輝煌的歷史,它曾經(jīng)是芯片三國(guó)大戰(zhàn)(x86、MIPS、PowerPC)的佼佼者,hoowa記得在2000年間國(guó)內(nèi)還可以買到一款叫做Cobalt的服務(wù)器(Sun公司為搶占市場(chǎng)收購了這家公司)。
簡(jiǎn)單地說,MIPS架構(gòu)當(dāng)年就是為了電腦而設(shè)計(jì)的,跟另外兩種通用處理器一樣,但是后期在這一領(lǐng)域被Intel給無情的打死了。之后轉(zhuǎn)戰(zhàn)嵌入式領(lǐng)域,由于MIPS架構(gòu)的開放性,因此涌出大量芯片公司基于該架構(gòu)開發(fā)路由器芯片。
芯片廠商
我們現(xiàn)在所使用的路由器,其中90%以上都是采用的MIPS架構(gòu)的芯片,而且基本上都是32位處理器。在同等價(jià)位的情況下,32位,高集成,高性能的處理器,只有MIPS在這個(gè)定位領(lǐng)域中最強(qiáng)(相比ARM的低性能版本要強(qiáng)很多)。
路由芯片目前普遍采用的是SoC(System on a Chip)設(shè)計(jì),路由器廠家喜歡叫做RoC(Router on a Chip)設(shè)計(jì)。
這些廠家將內(nèi)存控制、外圍IO電路接口、Switch芯片、Wi-Fi芯片、加密芯片、SATA接口、PCIE接口、USB接口等等你能想到?jīng)]想到的統(tǒng)統(tǒng)都集成到了一塊手指甲大小的芯片中,其功耗只有1W到3W之間,性能達(dá)到了400MHz到800MHz之間。但目前有少數(shù)廠家已經(jīng)開始基于ARM開發(fā)路由器芯片了,比如Broadcom(博通)公司的BCM470X系列芯片,采用的就是ARM架構(gòu),小米路由器第一代產(chǎn)品便是基于此芯片設(shè)計(jì)。
Atheros公司 :Atheros是全球路由芯片的頂級(jí)公司,其創(chuàng)始人便是MIPS架構(gòu)的發(fā)明者約翰·軒尼詩。Atheros的芯片采用MIps32位架構(gòu)設(shè)計(jì),并且該公司也是Wi-Fi標(biāo)準(zhǔn)的制定者之一,目前hoowa沒有看到國(guó)內(nèi) 已上市 的智能路由產(chǎn)品中采用該公司芯片方案。Atheros也是目前OpenWRT系統(tǒng)支持最完整、全全面的芯片。在后期的教程中為了讓大家更多了解OpenWRT降低入門難度,我們將基于該公司的方案進(jìn)行講解。該公司目前唯一的問題是在國(guó)內(nèi)的配套產(chǎn)業(yè)鏈不夠完善,并且其一款經(jīng)典芯片跟TP-Link穿一條褲子限制賣給其它廠商。Atheros在2011年被高通收購,目前旗下產(chǎn)品線正逐步切換到高通品牌下。
Broadcom公司 : Broadcom是全球主要無線路由芯片的出貨商之一,其產(chǎn)品以穩(wěn)定可靠著稱。小米第一代路由器便是采用其BCM470X系列處理器,該處理器是ARM架構(gòu),不過Boradcom其他的路由芯片大部分都是MIPS架構(gòu)。該公司的路由器芯片目前在國(guó)內(nèi)有兩個(gè)問題,一是對(duì)合作廠商要求極高,小公司不搭理。二是,其芯片發(fā)熱量很大。
Ralink公司 :雷凌科技來自中國(guó)臺(tái)灣地區(qū),也是一家常年耕耘在路由器領(lǐng)域的芯片廠商,而且是目前國(guó)內(nèi)出貨量最大的路由器廠商,該廠商不論是產(chǎn)業(yè)鏈,還是相關(guān)開發(fā)資料,在國(guó)內(nèi)都是最成熟的,其芯片價(jià)格也是最便宜的。因此目前國(guó)內(nèi)上市的智能路由產(chǎn)品大部分都采用該公司方案。這家廠商的問題,主要是不重視OpenWRT項(xiàng)目,并且其重要的驅(qū)動(dòng)代碼并不開源。Ralink在2011年被聯(lián)發(fā)科收購,目前產(chǎn)品線已經(jīng)完全切換到MTK品牌。
常見的路由器硬件規(guī)格
部分名詞解釋
Nor Flash:最早的用于嵌入式的存儲(chǔ)技術(shù), 讀取速度接近于內(nèi)存,寫速度稍慢。
Nand Flash:目前使用最多的存儲(chǔ)器技術(shù), 在手機(jī),U盤,SSD硬盤上都采用該技術(shù), 容量較大, 路由器領(lǐng)域使用較少。
SPI Flash:串行總線Flash,目前路由器領(lǐng)域使用最廣泛的存儲(chǔ)器,讀速度比Nor Flash慢,寫速度比Nor Flash快很多。
傳統(tǒng)路由器怎么做的
目前傳統(tǒng)路由器廠商,都是基于以上公司芯片設(shè)計(jì)的。這些芯片公司們會(huì)提供各種資料,包括電路板設(shè)計(jì)原理圖、開發(fā)SDK等,這些東西完善到大家難以想像的地步,只要有一臺(tái)電腦、一款開發(fā)板編譯安裝好系統(tǒng),一臺(tái)樣品路由器就出來了,連WEB界面都是完善的,所以以前傳統(tǒng)廠商拼殺的基本只剩價(jià)格和外觀。 而一些不法的小廠商,為了讓大家覺得無線路由器信號(hào)強(qiáng),使用了違規(guī)的大功率信號(hào)放大裝置,我們現(xiàn)在國(guó)內(nèi)的無線Wi-Fi污染其實(shí)已經(jīng)很嚴(yán)重了。如果這件事情發(fā)生在美國(guó),美國(guó)政府會(huì)把廠商告破產(chǎn)。但是在國(guó)內(nèi),找不到人管。
由于國(guó)內(nèi)的傳統(tǒng)路由器廠商,過于注意外觀(比如路由器必須有天線,因?yàn)榭蛻粲X得有天線信號(hào)強(qiáng),真他媽神奇只有中國(guó)才有這種說法),不注重軟件(芯片廠家連WEB都做了,沒自己啥事),所以普遍傳統(tǒng)路由器廠商在智能路由的領(lǐng)域中,都處于被動(dòng),存在被邊緣化的風(fēng)險(xiǎn)。這其中的大廠像TP-Link、磊科這類公司已經(jīng)意識(shí)到自己的風(fēng)險(xiǎn),正在努力的開發(fā)智能路由產(chǎn)品。 不過我還是要黑下, 對(duì)于這些公司來說, 早晚是要左手打右手,他們到底敢革自己命到啥程度,難說!
智能路由器怎么做的
目前大部分智能路由采用了OpenWRT這個(gè)開源路由器操作系統(tǒng)作為自己的系統(tǒng),然后對(duì)系統(tǒng)進(jìn)行修修改改,做個(gè)自主知識(shí)產(chǎn)權(quán)的產(chǎn)品,然后還申請(qǐng)了源代碼著作權(quán)登記,真不知道這群玩意咋想的,感覺如果比臉皮后,中國(guó)人應(yīng)該是銀河系中最強(qiáng)的。
OpenWrt被稱作為一個(gè)嵌入式的Linux發(fā)行版。當(dāng)年Linksys開源了一款路由器的源代碼,然后就有不同的人對(duì)這個(gè)源代碼進(jìn)行打補(bǔ)丁,然后每一個(gè)源代碼都是針對(duì)一個(gè)不同的市場(chǎng),最后東西就做的亂七八糟了。OpenWRT選擇了另外一條路,他從頭開始,一點(diǎn)點(diǎn)把各種軟件加到系統(tǒng)中,而開放式的架構(gòu),令OpenWRT支持?jǐn)?shù)量繁多的芯片,從X86、ARM到各種不知名的奇怪芯片。而開發(fā)者使用OpenWRT編譯出來的固件,燒寫到自己的電路板上之后,就相當(dāng)于擁有了一臺(tái)服務(wù)器。OpenWRT還支持一種稱作為OPKG的增強(qiáng)型安裝技術(shù),它使用起來像CentOS下的YUM一樣,只需要一個(gè)命令,就可以把需要的軟件安裝在路由器中。
從2005年2月截止今日,OpenWRT已經(jīng)支持了一千多種軟件,并且自己移植軟件到OpenWRT中非常容易簡(jiǎn)單。并且該系統(tǒng)高度模塊化,有人說我的產(chǎn)品是深度定制的OpenWRT,其實(shí),只要跟著hoowa把我們的課時(shí)學(xué)完,只要你懂Linux,人人都可以深度定制OpenWRT真的,是毫無技術(shù)可言的。
我們選擇基于Atheros芯片的方案來配合OpenWRT也是因?yàn)樵撔酒桨副籓penWRT官方支持的最好,非常適合教學(xué)。而國(guó)內(nèi)現(xiàn)在使用最多的Ralink芯片,雖然價(jià)格便宜,但是由于OpenWRT官方,和該公司都不太支持,因此并不適合本教學(xué)的教程。大家總不會(huì)讓我去違反Ralink的保密協(xié)議,公開他們的那些自以為非常重要的驅(qū)動(dòng)吧。
連載教程的以后章節(jié),將主要圍繞OpenWRT這個(gè)系統(tǒng)講解智能路由的開發(fā),從簡(jiǎn)單的開發(fā)移動(dòng)應(yīng)用和WEB應(yīng)用到涵蓋到移植軟件等各方面內(nèi)容。 |