這篇文章主要講解了“如何理解SR的圖靈完備性”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“如何理解SR的圖靈完備性”吧!
創(chuàng)新互聯(lián)建站專注于謝家集網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供謝家集營銷型網(wǎng)站建設(shè),謝家集網(wǎng)站制作、謝家集網(wǎng)頁設(shè)計、謝家集網(wǎng)站官網(wǎng)定制、成都小程序開發(fā)服務(wù),打造謝家集網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供謝家集網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。
圖靈機(jī)是英國數(shù)學(xué)家阿蘭·圖靈在1936年的文章《On Computable Numbers, with an Application to the Entscheidungsproblem》中提出的抽象計算模型.
在論文的第三章講述了一個計算機(jī)的例子,即一個機(jī)器包含了一條無限長的紙帶,紙帶被分成一些Square,然后上面有一些二進(jìn)制編碼的symbol。存在一個事先約定好的指令, 例如R表示機(jī)器將掃描右側(cè)的Square,同理L表示左側(cè),E表示擦除,P表示打印等.計算即根據(jù)讀寫頭和規(guī)則表決定動作,當(dāng)讀寫頭停機(jī)時,打印輸出的就是計算結(jié)果:
圖靈完備是指,當(dāng)你設(shè)計了一套操作數(shù)據(jù)的規(guī)則后,這套指令集或者語言能夠模擬圖靈機(jī),那么就說這套規(guī)則是圖靈完備的。通常很多編程語言的圖靈完備性影響主要需要考慮分支Branch和循環(huán)loop的問題。當(dāng)然有一些語言故意設(shè)計成非圖靈完備的,例如很多區(qū)塊鏈的合約執(zhí)行指令不支持分支跳轉(zhuǎn)和循環(huán),主要的目的是它使用的場景和安全性考慮決定的。
SR本身的編碼上來看,并不是圖靈完備的. 因為SR Label只能順序執(zhí)行。當(dāng)然也可以做一些特殊的處理,例如Binding-SID可以看做是一個特殊的函數(shù)調(diào)用,然后借用MPLS Stack的結(jié)構(gòu),可以實(shí)現(xiàn)函數(shù)入棧. 同時我們也可以定義一些特殊的Label行為來進(jìn)行Label跳轉(zhuǎn), 但又有另一個缺陷,處理報文的時候,我們并沒有設(shè)計相應(yīng)的狀態(tài)機(jī)。如果要設(shè)計,又會成為一個Stateful的forwarding feature,需要相應(yīng)的流表和動態(tài)狀態(tài)更新。
某種意義上來講,MPLS-SR因為有棧的結(jié)構(gòu),入棧和彈出標(biāo)簽相對容易。而SRv6則是一個工程上的災(zāi)難,由于必須保留報文的源IP地址,一方面有uRPF的缺陷,另一方面維持IP頭并要同時操作SRH產(chǎn)生了一系列問題,例如交換機(jī)通常沒法同時處理這么大量的數(shù)據(jù),SRv6標(biāo)簽棧深度受限。
而針對棧結(jié)構(gòu),SRv6的SRH在報文中間。入棧和出棧對于P4一類的交換機(jī)容易,Deparser上插進(jìn)去或者砍掉就好。但是傳統(tǒng)的CPU架構(gòu)而言,都需要大量的memory move的操作,我還在開玩笑,Intel啥時候能夠出一個批量操作I/O的deparser呢,集成在網(wǎng)卡上或者CPU上都行....
在設(shè)計的時候,如果能丟棄原有的IPv6頭,根據(jù)SRH的信息重建便是一個更好的解決方案,這樣標(biāo)簽入棧出棧的處理相對容易很多,uRPF的缺陷也可以避免。所以反過來你就能明白RFC8663 MPLS-SR over UDP的能夠在很多場景被接受的原因。但是很抱歉MPLS-SR的問題來自于標(biāo)簽棧的長度,以及沒有類似于SRv6那樣定義的
我們來看另一個問題,P4設(shè)計之初是完全基于硬件能力的,一旦涉及分支Branch極易帶來流水線的Stall,因此P4早期的MAU并沒有打算支持分支預(yù)測,更多的是采用match不同的表產(chǎn)生新的action來將流量分擔(dān)到另一個MAU實(shí)現(xiàn)的。Torfino-2增加了一些功能,而為了實(shí)現(xiàn)更加靈活多樣的計算,Pensando的實(shí)現(xiàn)中直接增加了寄存器/PC/Branch器件.
而NanoPU更是直接把一個處理器堆到了P4 MAU旁邊。
很多人總是喜歡一招鮮打遍天下,但真的有必要什么都做么?前段時間有個某云的同學(xué)發(fā)了一個朋友圈說什么指標(biāo)都要追求世界第一, 我補(bǔ)了一句那么價格肯定也世界第一。成年人有足夠的支持時可以輕松的說不需要選擇,都要。但是技術(shù)總是需要取舍的。加法容易減法難,就是這個道理。
計算、存儲、網(wǎng)絡(luò)這三者的組合有其內(nèi)在的精妙,存內(nèi)計算(In Memory Computing)和邊緣計算提出的算力網(wǎng)絡(luò)都是為了解決馮諾依曼架構(gòu)的缺陷,使得計算規(guī)模能夠再上一個臺階。但是另一個可信計算的問題又會困擾大家。
架構(gòu)上我并不認(rèn)同網(wǎng)絡(luò)能夠?qū)崿F(xiàn)大量的圖靈完備的計算,而是可以通過一系列組合為計算和存儲搭起一個更好的橋梁。
感謝各位的閱讀,以上就是“如何理解SR的圖靈完備性”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對如何理解SR的圖靈完備性這一問題有了更深刻的體會,具體使用情況還需要大家實(shí)踐驗證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識點(diǎn)的文章,歡迎關(guān)注!