TMT观察网_独特视角观察TMT行业

曌鏈MIT核心技術(shù)之跨分片—Cross Sharding區(qū)塊鏈

MIT 2018-09-10 15:29
分享到:
導(dǎo)讀

曌鏈MIT跨分片合約以曌鏈MIT的多級(jí)名字空間機(jī)制作為基礎(chǔ),這種解決方式是直觀顯而易見的,而別的區(qū)塊鏈項(xiàng)目因?yàn)闆](méi)有多級(jí)名字空間這個(gè)基礎(chǔ)設(shè)施,無(wú)法應(yīng)用該方案。

image.png

跨分片合約難點(diǎn)

跨分片合約的難點(diǎn)在于:一個(gè)分片對(duì)于共同訪問(wèn)的狀態(tài)的修改,需要及時(shí)地讓另一個(gè)分片知道,否則就容易出現(xiàn)狀態(tài)錯(cuò)亂。任何支持合約的分片技術(shù),都必須要解決這個(gè)問(wèn)題。目前業(yè)界大致有以下幾種方案:

第一種方案:讓發(fā)出交易的客戶端主動(dòng)維護(hù)一致性,典型的就是Omniledger。客戶端負(fù)責(zé)驅(qū)動(dòng)這個(gè)過(guò)程,避免分片之間的協(xié)議通信。優(yōu)點(diǎn)是分片協(xié)議不用考慮維護(hù)一致性的問(wèn)題,技術(shù)簡(jiǎn)單,且避免了分片之間一致性協(xié)議的開銷。缺點(diǎn)顯而易見,沒(méi)法做到交易丟出去不管,客戶端在這個(gè)過(guò)程中必須保持運(yùn)行。另外,客戶端去做這個(gè)事,真的安全么?實(shí)際上這個(gè)方案很難為業(yè)界所接受。我更傾向于認(rèn)為,由于分片機(jī)制不完善,解決不了狀態(tài)一致性而強(qiáng)行打的補(bǔ)丁。

第二種方案:基于trace對(duì)交易進(jìn)行標(biāo)注,典型的就是Chainspace。交易注入到網(wǎng)絡(luò)中之前,先模擬trace,并以此標(biāo)注出可能與其他交易沖突的地方,然后再根據(jù)這些沖突發(fā)到相關(guān)的分片中處理,相關(guān)的分片之間再用S-BAC去共識(shí)。這種方法,我想應(yīng)該還是不能完全依照trace,還必須在代碼層面進(jìn)行標(biāo)注,否則一個(gè)if/else語(yǔ)句在trace環(huán)境和實(shí)際環(huán)境下就可能走向了截然不同的分支。另外每一個(gè)交易可能的沖突都要相關(guān)的分片之間去跑一輪共識(shí),一個(gè)分片如果牽涉到很多個(gè)這樣的交易,那每一次就要跟不同的分片跑很多個(gè)這樣的共識(shí)。

第三種方案:交易分裂,典型的就是Ethereum。首先要說(shuō)明的是,這種方式交易只能類似于幣的轉(zhuǎn)移這種,從一個(gè)分片中的地址,轉(zhuǎn)移到另一個(gè)分片中的地址。合約內(nèi)部狀態(tài)是不能共享的,必須要保證每個(gè)分片的狀態(tài)是私有的。具體的做法就是將這個(gè)幣的轉(zhuǎn)移過(guò)程切開,分成幣的發(fā)送 幣的接受,并且在不同的共識(shí)周期中完成。具體在Ethereum中的話,在一個(gè)共識(shí)周期中,分片中的地址發(fā)送幣,并在主鏈中產(chǎn)生一個(gè)收據(jù),然后在下一個(gè)共識(shí)周期中,另一個(gè)分片中的地址依據(jù)這個(gè)收據(jù)接受幣。看起來(lái)簡(jiǎn)單,然而并非如此,可以用火車和旅館問(wèn)題來(lái)比喻。你要去另一個(gè)城市玩,要定火車票,還要定旅館。倘若你定了火車票,但是旅館沒(méi)訂到,那就麻煩了;倘若你旅館訂到了,但是火車票沒(méi)訂到,你也麻煩了。要么都訂到,要么都沒(méi)訂到,那才是良好的狀態(tài)。問(wèn)題產(chǎn)生的原因就是交易分裂到多個(gè)共識(shí)周期,破壞了原子性。Ethereum目前在這一塊還處于初步的理論研究階段,計(jì)劃在分片的第四期中實(shí)現(xiàn)。

曌鏈MIT跨分片合約

具體做法就是,將跨分片的交易在他們的父級(jí)分片中處理。以曌鏈MIT的多級(jí)名字空間機(jī)制作為基礎(chǔ),這種解決方式是直觀顯而易見的,而別的區(qū)塊鏈項(xiàng)目因?yàn)闆](méi)有多級(jí)名字空間這個(gè)基礎(chǔ)設(shè)施,無(wú)法應(yīng)用該方案。這種方案實(shí)現(xiàn)相對(duì)簡(jiǎn)單,穩(wěn)定可靠,可以支持的交易比較靈活,適應(yīng)面廣,并且只需要一個(gè)共識(shí)周期就可以確認(rèn)。但是,這種方案一個(gè)明顯的缺點(diǎn)就是,父級(jí)分片存在處理壓力的匯聚問(wèn)題,越是上級(jí)的分片對(duì)吞吐率的要求越高。曌鏈MIT的解決方案是鼓勵(lì)交易盡量在低層分片解決。一方面,多級(jí)分片結(jié)構(gòu)具有過(guò)濾作用,需要處理的分片比例隨著分片層級(jí)的升高而越來(lái)越低。需要說(shuō)明的是:名字空間非常有利于數(shù)據(jù)的局部性,類似于CPU的緩存;而Ethereum那種按照地址前綴分配分片的做法,數(shù)據(jù)完全是隨機(jī)的,沒(méi)有局部性。另一方面,越上級(jí)的名字空間處理費(fèi)用越高,通過(guò)經(jīng)濟(jì)激勵(lì)手段讓合約只在必要的時(shí)候才跨分片,只在非常必要的時(shí)候才跨高層次的分片。

image.png

圖1:曌鏈MIT跨片示意圖

跨分片消息傳遞

每個(gè)實(shí)體都有一個(gè)URN,結(jié)構(gòu)是 : <protocol_id>:<shard_path>/<public_key_fingerprint>.

每個(gè)實(shí)習(xí)都有一個(gè)通過(guò)公鑰來(lái)識(shí)別身份的郵箱. RChain分片是通過(guò)channel實(shí)現(xiàn)的.

每個(gè)分片都運(yùn)行著一個(gè)Mailman合約來(lái)路由消息.

每條消息都包含這三個(gè)字段: destination, signature & payload

描述

同一個(gè)分片的消息傳遞

Mailman從消息中提取到destination,然后發(fā)送到目標(biāo)郵箱

準(zhǔn)備跨分片消息

在消息發(fā)送到其他分片前要經(jīng)過(guò)共識(shí),發(fā)送消息的意圖將存儲(chǔ)在塊鏈中,并且只有在塊完成后才發(fā)送。

image.png

圖2:曌鏈MIT跨片消息傳遞

子分片到父分片交易

向父分片發(fā)送消息的總結(jié)如下:

1、就發(fā)送消息到父分片的決定達(dá)成共識(shí);

2、validators簽名然后把消息發(fā)送給父分片;

3、消息需要至少k個(gè)validators的簽名;

4、獲得k個(gè)簽名之后,消息存儲(chǔ)在區(qū)塊鏈中;

5、共識(shí)達(dá)成之后,進(jìn)行下一步;

image.png

圖3:向父分片發(fā)送消息流程圖

父分片向子分片交易

傳輸過(guò)程如下:

1、就發(fā)送消息的決定達(dá)成共識(shí);

2、子分片的validators作為父分片的客戶端,收到了這條消息;

3、子分片的validators在子分片的區(qū)塊鏈上存儲(chǔ)這條消息;

4、共識(shí)達(dá)成之后進(jìn)行下一步動(dòng)作;

image.png

圖4:向子分片發(fā)送消息流程圖

散列鎖托管轉(zhuǎn)移(Hash-locked escrow transfer)

愛麗絲和鮑勃要通過(guò)代幣P來(lái)交易貨物,他們需要以下的一個(gè)交易機(jī)制來(lái)保證:

1、愛麗絲擁有代幣P有效

2、在交易過(guò)程當(dāng)中,代幣P在愛麗絲的賬戶金額當(dāng)中鎖定,并且不能被其他交易使用

3、當(dāng)?shù)玫搅薑次確認(rèn)之后,交易執(zhí)行成功

4、交易被取消的話,如果時(shí)間少于T,則代幣會(huì)歸還到愛麗絲的賬戶當(dāng)中

image.png

圖5:散列鎖托管轉(zhuǎn)移流程圖

相關(guān)名詞解釋

Shard  - 有自己的一組驗(yàn)證人的獨(dú)立網(wǎng)絡(luò)節(jié)點(diǎn)群;

Shard tree - 分片的結(jié)構(gòu);

Neighbour shards - 相鄰的分片;

Mailman - 發(fā)送消息給別的分片的智能合約;

Mailbox - 存儲(chǔ)消息. 也是分片的客戶端;

Address - 多分片的環(huán)境里的實(shí)體的唯一標(biāo)識(shí). 包括分片id和公鑰;

Mint - 在分片當(dāng)中創(chuàng)建和銷毀Token的智能合約;

Depository - 存儲(chǔ)子分片當(dāng)中的Token余額的智能合約;

image.png

分片 交易 消息 共識(shí) 發(fā)送
分享到:

1.TMT觀察網(wǎng)遵循行業(yè)規(guī)范,任何轉(zhuǎn)載的稿件都會(huì)明確標(biāo)注作者和來(lái)源;
2.TMT觀察網(wǎng)的原創(chuàng)文章,請(qǐng)轉(zhuǎn)載時(shí)務(wù)必注明文章作者和"來(lái)源:TMT觀察網(wǎng)",不尊重原創(chuàng)的行為TMT觀察網(wǎng)或?qū)⒆肪控?zé)任;
3.作者投稿可能會(huì)經(jīng)TMT觀察網(wǎng)編輯修改或補(bǔ)充。


主站蜘蛛池模板: 西安中国国际旅行社(西安国旅) | 动物麻醉机-数显脑立体定位仪-北京易则佳科技有限公司 | 变压器配件,变压器吸湿器,武强县吉口变压器配件有限公司 | 山西3A认证|太原AAA信用认证|投标AAA信用证书-山西AAA企业信用评级网 | 3d可视化建模_三维展示_产品3d互动数字营销_三维动画制作_3D虚拟商城 【商迪3D】三维展示服务商 广东健伦体育发展有限公司-体育工程配套及销售运动器材的体育用品服务商 | 篮球地板厂家_舞台木地板品牌_体育运动地板厂家_凯洁地板 | 深圳APP开发公司_软件APP定制开发/外包制作-红匣子科技 | 深圳离婚律师咨询「在线免费」华荣深圳婚姻律师事务所专办离婚纠纷案件 | RTO换向阀_VOC高温阀门_加热炉切断阀_双偏心软密封蝶阀_煤气蝶阀_提升阀-湖北霍科德阀门有限公司 | 品牌设计_VI设计_电影海报设计_包装设计_LOGO设计-Bacross新越品牌顾问 | CXB船用变压器-JCZ系列制动器-HH101船用铜质开关-上海永上船舶电器厂 | 胃口福饺子加盟官网_新鲜现包饺子云吞加盟 - 【胃口福唯一官网】 | 保定市泰宏机械制造厂-河北铸件厂-铸造厂-铸件加工-河北大件加工 | 乐泰胶水_loctite_乐泰胶_汉高乐泰授权(中国)总代理-鑫华良供应链 | TPU薄膜_TPU薄膜生产厂家_TPU热熔胶膜厂家定制_鑫亘环保科技(深圳)有限公司 | 高低温试验箱-模拟高低温试验箱订制-北京普桑达仪器科技有限公司【官网】 | 礼至家居-全屋定制家具_一站式全屋整装_免费量房设计报价 | 锂电叉车,电动叉车_厂家-山东博峻智能科技有限公司 | 浙江筋膜枪-按摩仪厂家-制造商-肩颈按摩仪哪家好-温州市合喜电子科技有限公司 | 执业药师报名时间,报考条件,考试时间-首页入口 | 国标白水泥,高标号白水泥,白水泥厂家-淄博华雪建材有限公司 | 临朐空调移机_空调维修「空调回收」临朐二手空调 | 捷码低代码平台 - 3D数字孪生_大数据可视化开发平台「免费体验」 | 无痕胶_可移胶_无痕双面胶带_可移无痕胶厂家-东莞凯峰 | 诗词大全-古诗名句 - 古诗词赏析 | 常州减速机_减速机厂家_常州市减速机厂有限公司 | 气胀轴|气涨轴|安全夹头|安全卡盘|伺服纠偏系统厂家-天机传动 | 韦伯电梯有限公司 | 桂林腻子粉_内墙外墙抗裂砂浆腻子粉推荐广西鑫达涂料厂家供应 | 恒温恒湿试验箱厂家-高低温试验箱维修价格_东莞环仪仪器_东莞环仪仪器 | 气动绞车,山东气动绞车,气动绞车厂家-烟台博海石油机械有限公司 气动隔膜泵厂家-温州永嘉定远泵阀有限公司 | 大白菜官网,大白菜winpe,大白菜U盘装系统, u盘启动盘制作工具 | 双能x射线骨密度检测仪_dxa骨密度仪_双能x线骨密度仪_品牌厂家【品源医疗】 | 冷水机-冰水机-冷冻机-冷风机-本森智能装备(深圳)有限公司 | 登车桥动力单元-非标液压泵站-非标液压系统-深圳市三好科技有限公司 | 亚克力制品定制,上海嘉定有机玻璃加工制作生产厂家—官网 | 烘箱-工业烘箱-工业电炉-实验室干燥箱 - 苏州华洁烘箱制造有限公司 | 好看的韩国漫画_韩漫在线免费阅读-汗汗漫画 | 济南品牌设计-济南品牌策划-即合品牌策划设计-山东即合官网 | 粘度计维修,在线粘度计,二手博勒飞粘度计维修|收购-天津市祥睿科技有限公司 | 微量水分测定仪_厂家_卡尔费休微量水分测定仪-淄博库仑 |