硬盤這東西其實(shí)是很好玩的,里面有很多的故事可以說。當(dāng)然講的過于高深就不太好,所以這里盡量就用通俗的語言去講解。相信認(rèn)真看的你一定可以看懂的。 首先,既然將接口與總線,就要明白這三個概念: 傳輸總線,傳輸接口,傳輸協(xié)議 1 什么是傳輸總線? 所謂總線,其實(shí)他就是一條通道,就像公路一樣,只不過公路是走車的,而總線是用來走電信號的。那么公路的大小與車速,就決定了這條公路的車流量,同樣的,總線的位寬大小與傳輸頻率,也決定了在一次傳輸中能夠提供的最大速度。常見的傳輸總線很多。 1.1 PCIE PCIE大家都想到了吧。你可能會說,PCIE不是給顯卡網(wǎng)卡用的嗎?硬盤怎么會用?其實(shí),PCIE是一切的根源。你的所有外設(shè),比如顯卡,網(wǎng)卡,聲卡,USB,SATA,M2等等,其實(shí)都是由PCIE演化而來。可以說PCIE就是一切的根。PCIE如今已經(jīng)更新了三代,分別是1.0,2.0,3.0。其速度如下表
1.2 SATA 我想這個大家很熟悉了吧,很多人都在用的SATA1.0,SATA2.0,SATA3.0,以及沒什么人用的SATA Express,SATA各代速度如下圖
1.3 PATA(ATA) 大名鼎鼎的IDE硬盤,其速度和名字非常緊密,分別是ATA-66,ATA-100,ATA-133,分別代指著66MB/S,100MB/S,133MB/S的傳輸速度。 1.4 SCSI 服務(wù)器領(lǐng)域中使用的傳輸總線,SCSI莫過于像是PATA的服務(wù)器版,因?yàn)镾CSI已經(jīng)很少人用了,就不多說了。 1.5 SAS 同樣的民用領(lǐng)域有PATA到SATA,服務(wù)器領(lǐng)域也有SCSI到SAS。SAS同樣也已經(jīng)更新了三代了,SAS1.0 達(dá)到了3Gbps,每一代翻2倍。而SAS控制器是可以兼容SATA設(shè)備的(但SATA控制器不能兼容SAS設(shè)備)。 1.6 FC FC接口,全稱叫Fibre Channel。由于中文名會容易和光纖接口混淆就不說了。(Wiki成為網(wǎng)狀通道)FC是一種基于網(wǎng)絡(luò)傳輸協(xié)議下誕生的接口,這種接口可以說是稀缺的不行。FC起源于SCSI,但在速度上遠(yuǎn)超SCSI,最新的FC通道速度達(dá)到了16Gbps。 2 什么是傳輸接口? 我想這個大家肯定很容易懂了,接口就是你接入的那個插口。不過因?yàn)閭鬏斀涌诤蛡鬏斂偩€很容易混在一起,所以要多加區(qū)分。如: 2.1 PATA接口(IDE接口) 你說IDE也對,說PATA也對,因?yàn)闆]有規(guī)范,所以怎么說都對。
2.2 SATA接口 這個大家在熟悉不過了。需要注意的是,常說的eSATA,mSATA,miniSATA實(shí)際上都只是SATA接口的變種而已。
2.3 SATA Express接口 傳說中的沒人用接口,自推出以后,就沒有幾個人在適用。在intel 9系主板存活了一段時間后滅亡了,即使存在,我敢說絕大部分人都把它當(dāng)成兩個SATA用對不對(請真誠的回答我)。 2.4 M.2接口 由于NVMe協(xié)議爆發(fā)而突然走紅的接口,其特點(diǎn)適用于筆記本等輕薄設(shè)備。
2.5 U.2接口 多用于服務(wù)器的接口,也因?yàn)镹VMe而走紅。與M.2的本質(zhì)區(qū)別不大??梢哉f它和M.2的關(guān)系就如SATA與mSATA的關(guān)系。
2.6 SCSI/SAS接口 這些都不用說了吧,服務(wù)器版的PATA/SATA。
SCSI接口
SAS接口 2.7 FC接口 為FC而生的接口,和SCSI很像。
3 什么是傳輸協(xié)議? 傳輸協(xié)議,也有時候回叫做傳輸規(guī)范,網(wǎng)上很多都會把它叫做傳輸標(biāo)準(zhǔn)。什么是傳輸協(xié)議?用一種簡單的理解方法,就是數(shù)據(jù)傳輸?shù)姆椒ā?/p> 每當(dāng)有數(shù)據(jù)到達(dá)控制器(比方說南橋吧),傳輸協(xié)議就規(guī)定著這個數(shù)據(jù)將會以怎么樣的方法傳輸?shù)接脖P上。比如,一次傳輸隊列中攜帶多少的數(shù)據(jù),一次傳輸?shù)臄?shù)據(jù)大小等等。傳輸協(xié)議限定著硬盤(準(zhǔn)確的就是硬盤控制器,常說的主控)與控制器(南橋等)如何傳輸,如何溝通,他就像交通規(guī)則一樣,規(guī)范著數(shù)據(jù)的傳輸規(guī)則。那么哪些是傳輸協(xié)議呢?這里列舉幾個非常常見的傳輸協(xié)議。 3.1 IDE 老牌的硬盤傳輸協(xié)議,很多人經(jīng)常會和PATA,ATA搞混淆,其實(shí)你搞混淆是非??梢岳斫獾?,因?yàn)檫B百度,Wiki都沒有能很好的定義他們之間的區(qū)別,而介于IDE早已被淘汰,我想后人也不關(guān)心他們的區(qū)分了。IDE作為非常老牌的傳輸協(xié)議,為計算機(jī)能夠更輕松的操作硬盤數(shù)據(jù)起到了非常重要的作用。但是隨著計算機(jī)對速度的需求,與其配備的傳輸總線(ATA-133)以及自身的功能都太少了。也漸漸被AHCI與SATA所淘汰。 Tips:實(shí)際上,PATA的出現(xiàn)是因?yàn)镾ATA的出現(xiàn),而為了防止ATA與SATA混淆,所以把ATA改名為PATA。 3.2 AHCI IDE過低的速度,以及老舊的協(xié)議,催生了AHCI傳輸協(xié)議,AHCI相比于IDE,其每次傳輸傳輸一個隊列中,攜帶32條指令,同時優(yōu)化了硬盤隊列,通過NCQ技術(shù),使硬盤能夠快速順暢的讀取數(shù)據(jù)而減少磁頭移動帶來的時間浪費(fèi)。而與AHCI相匹配的SATA接口,能夠提供比ATA總線更高的傳輸速度。但是,AHCI終究是為了機(jī)械硬盤而產(chǎn)生的產(chǎn)物,隨著SSD的普及,SSD的高響應(yīng)速度與讀寫能力在壓榨著傳輸總線與傳輸協(xié)議的最大速度。因此而誕生了為SSD而生的新協(xié)議。 3.3 NVMe 如上文所屬,為了能夠讓SSD更好的發(fā)揮速度與讀寫能力。NVMe隨之產(chǎn)生。相比于AHCI,NVMe單次提供64*1024個請求隊列,而每個隊列達(dá)到了64*1024個請求。遠(yuǎn)超AHCI單隊列32個請求的規(guī)模。NVMe可以說完全釋放了傳輸協(xié)議的限制,而為了能夠與傳輸協(xié)議的速度匹配,使用NVMe的設(shè)備都直接連接到了PCIE總線上。更直接的總線為NVMe設(shè)備提供絕對強(qiáng)大的傳輸速度。
4 他們?nèi)绾斡绊懼脖P的速度? 實(shí)際上,判斷一個硬盤的性能好壞,就是兩大基本因素。一個是持續(xù)讀寫,一個是4K讀寫。而由他們所誕生的下屬性能(比如SSD垃圾回收性能)就不一一說了。 持續(xù)讀寫毫無疑問,是壓榨傳輸總線速度的最好工具。而4K讀寫,則是壓榨傳輸協(xié)議的最好工具。道理我想大家都應(yīng)該明白。持續(xù)讀寫講究吞吐量。4K讀寫講究的是請求量。我用一個簡單的例子幫助大家理解。 還是以公路的例子。而我們把公路入口的收費(fèi)站當(dāng)作請求。每輛車當(dāng)作一個數(shù)據(jù)。收費(fèi)站就是一個協(xié)議,協(xié)議規(guī)定一次放多少車進(jìn)入。而公路就是總線,它原來設(shè)計能通過多少車流量。 當(dāng)測試持續(xù)讀寫的時候,就是測試這個公路最大的車流量。正常來說,收費(fèi)站都是一車一桿的。但我不,我一桿走32輛車,那么在一桿這個時間段(每一桿的時間長度是一樣的),流過的車就會非常多。就相當(dāng)于一個請求里請求了非常大的數(shù)據(jù)。那么盡可能讓大量的車進(jìn)入了公路,其走過的車流量,就是我們要測試的吞吐量,也就是持續(xù)讀寫。 而當(dāng)測試4K讀寫時,我們回到原來的一桿一車的狀態(tài)。那么一桿車過的快慢,就決定了車流量的大小。而由此得到了4K讀寫的速度。 由此我們得到的結(jié)論就是傳輸協(xié)議,限制著硬盤的4K讀寫能力,而傳輸總線限制著硬盤的持續(xù)讀寫能力。(當(dāng)然啦,這是假設(shè)硬盤主控讀寫能力非常強(qiáng)的情況下)。 這也就是為什么,SATA SSD的4K能力,總是突破不了10KIOPS,原因就在于AHCI傳輸協(xié)議已經(jīng)達(dá)到極限了。而SATA SSD的持續(xù)讀寫能力也超過不了550MB/S,原因就是SATA3.0總線只能提供最大6Gbps的速度(在干擾與糾錯等各種情況綜合下,最終只達(dá)到了550MB/S)
幾年前的高端M6S早已開始壓榨AHCI與SATA3.0的極限 5 那么誰最強(qiáng)? 這個毫無疑問,使用NVMe協(xié)議,并通過PCIE總線的設(shè)備無疑是最強(qiáng)的。
跑分狂魔960PRO輕松跑出40萬IOPS,但里離壓榨PCIE與NVMe還遠(yuǎn)著 接口只是一種展現(xiàn)形式而已。它并不會對你的速度造成絕對的影響。所以,而協(xié)議也往往與總線所掛鉤,但與接口的關(guān)系掛鉤,往往相對而言比較的松一點(diǎn)。 比如: 基于SATA3.0總線,我們只能使用AHCI協(xié)議,但我們可以使用M.2接口,我們也可以使用SATA接口。得到的速度依舊是最高6Gbps(實(shí)際約550MB/s)。 而基于PCIE總線,我們只能使用NVME協(xié)議,但我們可以使用M.2接口,也可以使用U.2接口,根據(jù)PCIE總線的寬帶,我們能獲得4GB/s的速度(基于PCIE3.0 X4)。 評判一個硬盤的性能,除了硬盤自身的性能以外,必不可少的當(dāng)然是這些總線與協(xié)議的配合。可以說這兩個因素就是在不斷的推動對方。 而我們所處的時代,因?yàn)镾SD的出現(xiàn),壓榨了AHCI的請求能力與SATA的速度極限,才因此誕生了NVMe?,F(xiàn)在時代又回到了是硬盤自身性能不足以跑滿總線的時代了。誰能知道什么時候是下一個跳躍點(diǎn)呢? |
|
來自: 變種菜刀 > 《電子數(shù)碼》