版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、分布式系統(tǒng)模型第1頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一2第一章回顧引言分布式系統(tǒng)的目標(biāo)(設(shè)計(jì)、分析、實(shí)現(xiàn)-資源共享等)、定義(建立在網(wǎng)絡(luò)之上的軟件系統(tǒng) )、特點(diǎn)(并發(fā)性、沒有全局時(shí)鐘、故障獨(dú)立性)分布式系統(tǒng)舉例 Internet / Intranet / Mobile Computing等挑戰(zhàn) 異構(gòu)性、開放性、安全性、可擴(kuò)展性、正確性、透明性,如何故障處理、并發(fā)處理、復(fù)制透明等總結(jié) 分布式系統(tǒng)無處不在,分布式系統(tǒng)具有高度的內(nèi)聚性和透明性。 第2頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一3第2章 系統(tǒng)模型引言體系結(jié)構(gòu)模型基礎(chǔ)模型總結(jié)第3頁,共83頁,2022
2、年,5月20日,10點(diǎn)12分,星期一4引言The Swedish Ship Vasa 17世紀(jì)上半葉,北歐新教勢(shì)力與中歐天主教勢(shì)力發(fā)生了一場(chǎng)“三十年戰(zhàn)爭(zhēng)”,作為北歐新教勢(shì)力的代表,瑞典的軍事力量達(dá)到鼎盛時(shí)期。1625年,號(hào)稱“北方颶風(fēng)”的瑞典國王古斯塔夫斯阿道弗斯(Gustavs Adolphus)決心建造一艘史無前例的巨型新戰(zhàn)艦瓦薩(Vasa)戰(zhàn)艦。瓦薩戰(zhàn)艦確實(shí)是一艘令人望而生畏的戰(zhàn)艦:艦長(zhǎng)70米,載員300人,在三層的甲板上共裝有64門重炮,火力超強(qiáng)。第4頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一5瓦薩戰(zhàn)艦的首航1628年8月10日,這艘巨大的戰(zhàn)艦終于完工。在1萬多名圍觀者
3、的目光注視下,忽然,瓦薩號(hào)奇怪地?fù)u晃了一下,便向左舷傾斜。海水從炮孔處涌入船艙,戰(zhàn)艦迅速翻入水中。幾分鐘后,這艘雄偉戰(zhàn)艦的處女航也是唯一的一次航行結(jié)束了。瓦薩戰(zhàn)艦在它壯麗的起航時(shí)刻,帶著全身飄揚(yáng)的彩旗,沉沒于它誕生的港口。 引言第5頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一6引言瓦薩戰(zhàn)艦為什么沉沒?人們對(duì)瓦薩的沉沒做出了各種各樣的分析,最后的主要結(jié)論是:該艦制造工藝精良,但“比例嚴(yán)重失調(diào)”。也就是說,該戰(zhàn)艦的架構(gòu)存在缺陷。 第6頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一7引言不同類型的分布式系統(tǒng)表現(xiàn)出共同的基本特性及設(shè)計(jì)問題。模型試圖對(duì)分布式系統(tǒng)的相關(guān)方面給出抽
4、象、簡(jiǎn)化但一致的描述。結(jié)構(gòu)模型(Architectural Model)基礎(chǔ)模型(Fundamental Model)第7頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一8引言結(jié)構(gòu)模型構(gòu)成系統(tǒng)各部分(components, computers, procedures )的位置、角色和它們之間的關(guān)系,它定義了系統(tǒng)的各組件之間相互交互的方式以及它們映射到下面的計(jì)算機(jī)網(wǎng)絡(luò)的方式??蛻?服務(wù)器結(jié)構(gòu)對(duì)等結(jié)構(gòu)(客戶/服務(wù)器模型的變種)第8頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一9客戶/服務(wù)器結(jié)構(gòu)它是所有網(wǎng)絡(luò)應(yīng)用的基礎(chǔ)??蛻?服務(wù)器分別指參與一次通信的兩個(gè)應(yīng)用實(shí)體,客戶方主動(dòng)地發(fā)
5、起通信請(qǐng)求,服務(wù)器方被動(dòng)地等待通信的建立。 優(yōu)點(diǎn):可以在用戶態(tài)服務(wù)器中構(gòu)造各種各樣的API, 為應(yīng)用程序與服務(wù)間通過RPC調(diào)用進(jìn)行通信提供一致的方法, 且沒有限制其靈活性,為分布式計(jì)算提供了適當(dāng)?shù)幕A(chǔ)。 客戶/服務(wù)器模型擴(kuò)展 在(多個(gè))協(xié)作的服務(wù)器上劃分和復(fù)制數(shù)據(jù); 由代理服務(wù)器和客戶進(jìn)行數(shù)據(jù)緩存; 使用移動(dòng)代碼和移動(dòng)代理; 以方便的方式添加和刪除移動(dòng)設(shè)備。第9頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一10對(duì)等結(jié)構(gòu) 該結(jié)構(gòu)可由若干互聯(lián)協(xié)作的計(jì)算機(jī)構(gòu)成,且至少具有如下特征之一: 系統(tǒng)依存于邊緣化(非中央式服務(wù)器)設(shè)備的主動(dòng)協(xié)作; 每個(gè)成員直接從其他成員而不是從服務(wù)器的參與中受益;
6、 系統(tǒng)中成員同時(shí)扮演服務(wù)器與客戶端的角色; 系統(tǒng)應(yīng)用的用戶能夠意識(shí)到彼此的存在,構(gòu)成一個(gè)虛擬或?qū)嶋H的群體。第10頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一11引言基礎(chǔ)模型:對(duì)體系結(jié)構(gòu)模型中公共屬性的一種更為形式化的描述交互模型:處理消息發(fā)送的性能問題,解決在分布式系統(tǒng)中設(shè)置時(shí)間限制的難題。例如對(duì)于消息傳遞,反映了進(jìn)程交互的方式。故障模型:試圖給出進(jìn)程和信道(通信通道)故障的一個(gè)精確的約定。它定義了什么是可靠通信和正確的進(jìn)程。安全模型:討論對(duì)進(jìn)程的和信道的各種可能的威脅。引入了安全通道的概念,它可以保證在存在各種威脅的情況下通信的安全。第11頁,共83頁,2022年,5月20日,
7、10點(diǎn)12分,星期一12引言設(shè)計(jì)者面臨的困難和挑戰(zhàn)使用模式的多樣性系統(tǒng)環(huán)境的多樣性內(nèi)部問題:非同步的時(shí)鐘,數(shù)據(jù)修改的不一致性、系統(tǒng)中單個(gè)部件的軟件硬件故障。外部問題:數(shù)據(jù)在傳輸過程中存在著對(duì)私密性、完整性的攻擊。第12頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一13第2章 系統(tǒng)模型引言體系結(jié)構(gòu)模型基礎(chǔ)模型總結(jié)第13頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一14ArchitecturesArchitectural stylesSoftware architecturesArchitectures versus middlewareSelf-management in
8、 distributed systems第14頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一15體系結(jié)構(gòu)模型一個(gè)系統(tǒng)的體系結(jié)構(gòu)是指各個(gè)獨(dú)立指定組件的結(jié)構(gòu)。建筑物的結(jié)構(gòu)設(shè)計(jì)有類似的方面:不僅要確定它的外觀,而且要確定它的總體結(jié)構(gòu)和結(jié)構(gòu)風(fēng)格。整體目標(biāo)是確保結(jié)構(gòu)能滿足現(xiàn)在和將來可能的需求。主要關(guān)心系統(tǒng)可靠性、適應(yīng)性、可管理性和性價(jià)比。第15頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一16體系結(jié)構(gòu)模型體系結(jié)構(gòu)模型首先簡(jiǎn)化和抽象系統(tǒng)每個(gè)獨(dú)立的構(gòu)成模塊的作用和功能;其次在網(wǎng)絡(luò)中如何部署各個(gè)組件,對(duì)數(shù)據(jù)分布和負(fù)載定義有用的模式;各個(gè)模塊之間的關(guān)系,組件的角色和組件之間的通訊模式;例
9、如:分布式存儲(chǔ)系統(tǒng)的角色、數(shù)據(jù)、數(shù)據(jù)的索引。由此確定了目錄服務(wù)器和數(shù)據(jù)服務(wù)器,以及它們之間的關(guān)系和通信交互模式。例如:門戶網(wǎng)站:client/server模型,因?yàn)殚T戶網(wǎng)站和用戶不可能對(duì)等(應(yīng)用模式)。為了減少服務(wù)器的負(fù)載,服務(wù)器之間可以P2P連接(效率、擴(kuò)展性)。第16頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一17體系結(jié)構(gòu)模型軟件體系結(jié)構(gòu)是指計(jì)算機(jī)里軟件的分層或模塊結(jié)構(gòu),近來多指進(jìn)程之間請(qǐng)求和提供的服務(wù)。中間件操作系統(tǒng)網(wǎng)絡(luò)與硬件應(yīng)用層第17頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一18體系結(jié)構(gòu)模型平臺(tái)(Platform)最底層的軟硬件,為上層提供服務(wù)。如:In
10、tel x86( X86是處理器中一種很“本質(zhì)”的“大架構(gòu)” )/WindowsIntel x86/LinuxIntel x86/SolarisSPARC(“可擴(kuò)充處理器架構(gòu)”(Scalable Processor ARChitecture)/SunOSPowerPC(一種RISC架構(gòu))/MacOS第18頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一19體系結(jié)構(gòu)模型中間件層中間件是一種軟件,它提供基本的通信模塊和其他一些基礎(chǔ)服務(wù)模塊,為應(yīng)用程序開發(fā)提供平臺(tái)。主要解決異構(gòu)網(wǎng)絡(luò)環(huán)境下分布式應(yīng)用軟件的互連與互操作問題,它可屏蔽實(shí)現(xiàn)細(xì)節(jié),提高應(yīng)用系統(tǒng)的易移植性。中間件第19頁,共83頁,2
11、022年,5月20日,10點(diǎn)12分,星期一20體系結(jié)構(gòu)模型中間件要解決的問題。硬件:數(shù)據(jù)類型在不同的硬件平臺(tái)上有不同的表示:big-endian,little-endian。PowerPC 系列采用big-endian方式存儲(chǔ)數(shù)據(jù),而 X86 系列則采用 little-endian方式存儲(chǔ)數(shù)據(jù)。通信協(xié)議:獨(dú)立于網(wǎng)絡(luò)底層的傳輸協(xié)議。操作系統(tǒng):在操作系統(tǒng)層上提供更高級(jí)的抽象API,屏蔽操作系統(tǒng)的異構(gòu)。編程語言:CORBA通過IDL,可以使得不同的語言寫的代碼互相調(diào)用。CORBA-公共對(duì)象請(qǐng)求代理結(jié)構(gòu)(Common Object Request Broker Architecture),由對(duì)象管理組
12、織 (Object Management Group,縮寫為 OMG)標(biāo)準(zhǔn)化。它的組成是接口定義語言(IDL), 語言綁定(binding,聯(lián)編)和允許應(yīng)用程序間互操作的協(xié)議。 中間件提供了一個(gè)編程的抽象,來屏蔽上述的異構(gòu)問題。第20頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一21體系結(jié)構(gòu)模型中間件的特性滿足大量應(yīng)用的需要 運(yùn)行于多種硬件和OS平臺(tái) 提供跨網(wǎng)絡(luò)、硬件和OS平臺(tái)的透明性的應(yīng)用或服務(wù)的交互 支持標(biāo)準(zhǔn)的協(xié)議 支持標(biāo)準(zhǔn)的接口 由于標(biāo)準(zhǔn)接口對(duì)于可移植性和標(biāo)準(zhǔn)協(xié)議對(duì)于互操作性的重要性,中間件已成為許多標(biāo)準(zhǔn)化工作的主要部分。 對(duì)于應(yīng)用軟件開發(fā),中間件提供的程序接口定義了一個(gè)相對(duì)
13、穩(wěn)定的高層應(yīng)用環(huán)境。 不管底層的計(jì)算機(jī)硬件和系統(tǒng)軟件怎樣更新?lián)Q代,只要將中間件升級(jí)更新,并保持中間件對(duì)外的接口定義不變,應(yīng)用軟件幾乎不需任何修改。 第21頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一22軟件體系結(jié)構(gòu)分布式系統(tǒng)設(shè)計(jì)主要考慮:系統(tǒng)組件之間的責(zé)任劃分;組件在網(wǎng)絡(luò)上的放置。以上兩個(gè)因素對(duì)系統(tǒng)性能、可靠性和安全性有較大影響。第22頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一23體系結(jié)構(gòu)模型-分布式體系結(jié)構(gòu)的設(shè)計(jì)需求資源共享是分布式系統(tǒng)的基本目標(biāo),但是在大規(guī)模的系統(tǒng)中仍能保證有效的共享是一個(gè)嚴(yán)重的挑戰(zhàn)。性能服務(wù)質(zhì)量緩存和復(fù)制的使用可靠性問題 第23頁,共83頁,
14、2022年,5月20日,10點(diǎn)12分,星期一24體系結(jié)構(gòu)模型-分布式結(jié)構(gòu)設(shè)計(jì)的需求性能問題響應(yīng)能力服務(wù)器和網(wǎng)絡(luò)的負(fù)載操作系統(tǒng)、中間件和代碼執(zhí)行引起的延遲吞吐量單位時(shí)間內(nèi)能完成的任務(wù)量它由處理速度和傳輸速度決定負(fù)載平衡多個(gè)機(jī)器同時(shí)提供服務(wù)用applets在本地和客戶端交互第24頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一25體系結(jié)構(gòu)模型-分布式結(jié)構(gòu)設(shè)計(jì)的需求QoS-服務(wù)質(zhì)量非功能性的特征:可靠性、安全性 (基礎(chǔ)模型中的兩個(gè)問題)、性能。適應(yīng)性(adaptability):滿足變化的系統(tǒng)配置和資源可用性的要求,也將被看作是服務(wù)質(zhì)量的重要指標(biāo)。性能一般來說體現(xiàn)在響應(yīng)時(shí)間和吞吐量上,但是
15、一些新的解釋是能否滿足時(shí)間性的要求。(用基礎(chǔ)模型中的交互模型來刻畫)。有些應(yīng)用處理強(qiáng)時(shí)間性數(shù)據(jù)(time-critical data),例如:流媒體,要求按一定的速率處理。QoS可以在操作系統(tǒng)層、網(wǎng)絡(luò)層以及各個(gè)層面上都可以實(shí)現(xiàn)。第25頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一26體系結(jié)構(gòu)模型-分布式結(jié)構(gòu)設(shè)計(jì)的需求緩存和復(fù)制的使用使用數(shù)據(jù)復(fù)制和緩存解決性能問題Web緩存協(xié)議:客戶請(qǐng)求的響應(yīng)可能來自瀏覽器緩存,也可能來自客戶和服務(wù)器之間的代理服務(wù)器緩存。第26頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一27體系結(jié)構(gòu)模型-分布式結(jié)構(gòu)設(shè)計(jì)的需求可靠性問題正確性沒有成熟的技
16、術(shù)容錯(cuò)性冗余是關(guān)鍵,例如:消息保存以便重傳,使用副本技術(shù)進(jìn)行容錯(cuò)。安全性保證數(shù)據(jù)不受攻擊通過網(wǎng)絡(luò)訪問數(shù)據(jù)的權(quán)限第27頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一28客戶服務(wù)器模型歷史上最重要的結(jié)構(gòu)之一,是Internet應(yīng)用最常見的結(jié)構(gòu)。第28頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一29Centralized ArchitecturesBasic ClientServer Model-Characteristics:There are processes offering services (servers)There are processes that us
17、e services (clients)Clients and servers can be on different machinesClients follow request/reply model to using services第29頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一30Application LayeringTraditional three-layered viewUser-interface layer contains units for an applications user interfaceProcessing layer contains
18、the functions of an application, i.e. without specific dataData layer contains the data that a client wants to manipulate through the application components第30頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一31Application Layering第31頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一32對(duì)等體系結(jié)構(gòu)系統(tǒng)應(yīng)用中,完全由對(duì)等進(jìn)程組成,進(jìn)程間的通信模式完全依賴于應(yīng)用的需求。第32頁,共83頁,2022年
19、,5月20日,10點(diǎn)12分,星期一33Decentralized ArchitecturesObservationIn the last couple of years we have been seeing a tremendous growth in peer-to-peer systems.Structured P2P: nodes are organized following a specific distributed data structure結(jié)構(gòu)化P2P網(wǎng)絡(luò)使用分布式哈希表(DHT)技術(shù)將數(shù)據(jù)映射到相應(yīng)的節(jié)點(diǎn),以便在數(shù)據(jù)的存放與查找方面有很好的擴(kuò)展性,同時(shí)P2P網(wǎng)絡(luò)的路由表的
20、容量和鏈路長(zhǎng)度之間存在漸進(jìn)曲線的關(guān)系。首先介紹現(xiàn)有的P2P網(wǎng)絡(luò)拓?fù)漕愋?,然后?duì)基于DHT的結(jié)構(gòu)化P2P網(wǎng)絡(luò)進(jìn)行了詳細(xì)的分析比較。 第33頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一34Unstructured P2P: nodes have randomly selected neighborsHybrid P2P: some nodes are appointed special functions in a well-organized fashionNoteIn virtually all cases, we are dealing with overlay network
21、s: data is routed over connections setup between the nodes (cf. application-level multicasting)第34頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一35Structured P2P SystemsBasic ideaOrganize the nodes in a structured overlay network such as a logical ring, and make specific nodes responsible for services based only on t
22、heir ID.第35頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一36Unstructured P2P SystemsObservationMany unstructured P2P systems attempt to maintain a random graph.Basic principleEach node is required to contact a randomly selected other node:Let each peer maintain a partial view of the network, consisting of c other nod
23、esEach node P periodically selects a node Q from its partial view P and Q exchange information and exchange members from their respective partial viewsNoteIt turns out that, depending on the exchange, randomness, but also robustness of the network can be maintained.第36頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一37
24、SuperpeersObservationSometimes it helps to select a few nodes to do specific work: superpeer.第37頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一38Hybrid Architectures: Client-server combined with P2PExampleEdge-server architectures, which are often used for Content Delivery Networks第38頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一39Hy
25、brid Architectures: C/S with P2P BitTorrentBasic ideaOnce a node has identified where to download a file form, it joins a swarm of downloaders who in parallel get file chunks from the source, but also distribute these chunks amongst each other.第39頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一40Architectures versus M
26、iddlewareProblemIn many cases, distributed systems/applications are developed according to a specific architectural style. The chosen style may not be optimal in all cases ) need to (dynamically) adapt the behavior of the middleware.InterceptorsIntercept the usual flow of control when invoking a rem
27、ote object.第40頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一41第41頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一42體系結(jié)構(gòu)模型變體使用多個(gè)服務(wù)器和緩存,增加性能和靈活性;使用移動(dòng)代碼和移動(dòng)代理;用戶需要硬件資源有限的、便于管理的低價(jià)格計(jì)算機(jī);能方便地增加和刪除移動(dòng)設(shè)備的需求。第42頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一43體系結(jié)構(gòu)模型變體-服務(wù)器組將不同的服務(wù)對(duì)象在不同的機(jī)器上實(shí)現(xiàn) e.g. Web在幾個(gè)主機(jī)上維護(hù)副本服務(wù) e.g. Sun NIS(Network Information Service ) Service第43頁
28、,共83頁,2022年,5月20日,10點(diǎn)12分,星期一44體系結(jié)構(gòu)模型變體-代理服務(wù)器和緩存緩存(Cache)保存最近使用過的數(shù)據(jù),可以在本地緩 存,也可以在代理服務(wù)器上做緩存。緩存可以減少不必要的網(wǎng)絡(luò)傳輸,減少服 務(wù)器負(fù)擔(dān),還可以代理其它用戶透過防火 墻訪問服務(wù)器。第44頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一45體系結(jié)構(gòu)模型變體-移動(dòng)代碼局部(本地)運(yùn)行下載的代碼的好處是,由于不會(huì)遭遇跟網(wǎng)絡(luò)通信相關(guān)的延遲或帶寬的變化(可變性),因此,會(huì)得到好的交互式響應(yīng)。例子:一個(gè)股票代理可以提供一個(gè)定制服務(wù)來通知客戶股票價(jià)格的變化。為了使用這個(gè)服務(wù),每個(gè)客戶必須下載一個(gè)特別的Appl
29、et,它從代理服務(wù)器那里接收更新,顯示給用戶,也許還要執(zhí)行自動(dòng)的買和賣操作。第45頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一46體系結(jié)構(gòu)模型變體-移動(dòng)代碼將代碼下載到客戶端運(yùn)行,可以提高交互的效率。第46頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一47體系結(jié)構(gòu)模型變體-移動(dòng)代理在網(wǎng)絡(luò)上的計(jì)算機(jī)之間穿梭,并執(zhí)行的代碼。代替一些機(jī)器執(zhí)行任務(wù)。例如:利用空閑計(jì)算機(jī)完成密集型計(jì)算,計(jì)算程序(連同數(shù)據(jù))從一個(gè)機(jī)器移動(dòng)到另一個(gè)機(jī)器,在目的機(jī)上運(yùn)行。和移動(dòng)代碼 的區(qū)別:移動(dòng)代碼是服務(wù)器與客戶端之間傳遞代碼,后者是在服務(wù)器之間傳遞。和遠(yuǎn)程調(diào)用比較:減少數(shù)據(jù)傳輸,降低通信開銷。安全
30、威脅限制了它的使用。移動(dòng)代理系統(tǒng)的例子有:IBM的Aglet以及Voyager、AgentTCL等。第47頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一48體系結(jié)構(gòu)模型變體-網(wǎng)絡(luò)計(jì)算機(jī)本身不安裝操作系統(tǒng),而是從遠(yuǎn)程服務(wù)器上下載操作系統(tǒng)和應(yīng)用軟件。所有的應(yīng)用數(shù)據(jù)和代碼都存儲(chǔ)在文件服務(wù)器上。用戶可以移動(dòng)。第48頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一49體系結(jié)構(gòu)模型變體-瘦客戶本地只是一個(gè) GUI(圖形用戶界面),應(yīng)用程序在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行。早期的大型機(jī)就有啞終端的概念,只不過那時(shí)大型機(jī)和啞終端在一個(gè)機(jī)房?,F(xiàn)在可以是通過網(wǎng)絡(luò)訪問服務(wù)器。缺點(diǎn):高延遲。ThinClien
31、tApplicationProcessNetwork computer or PCCompute servernetwork第49頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一50體系結(jié)構(gòu)模型變體-移動(dòng)設(shè)備和自發(fā)互操作設(shè)備帶著軟件組件在網(wǎng)絡(luò)上移動(dòng)移動(dòng)透明性,變化的連接性自發(fā)互操作,能夠無線聯(lián)網(wǎng),范圍從大城市或更大的范圍,到數(shù)百米,或幾米。提供了對(duì)移動(dòng)計(jì)算的支持,從而用戶能夠在網(wǎng)絡(luò)環(huán)境之間攜帶它們的移動(dòng)設(shè)備,并利用本地和遠(yuǎn)程的服務(wù)。第50頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一51體系結(jié)構(gòu)模型接口與對(duì)象在分布式系統(tǒng)中,進(jìn)程間的通信除了socket連接之外,大量的交互
32、通過遠(yuǎn)程調(diào)用的形式完成的,接口與對(duì)象是遠(yuǎn)程調(diào)用的基礎(chǔ)。接口定義一個(gè)進(jìn)程中可調(diào)用的函數(shù),要用一個(gè)或多個(gè)接口定義制定:功能,輸入,輸出。面向?qū)ο蟮恼Z言用面向?qū)ο笳Z言實(shí)現(xiàn)遠(yuǎn)程方法(rmi)調(diào)用,這是CORBA和JAVA采用的方法。分布式系統(tǒng)中責(zé)任的分布是設(shè)計(jì)的一個(gè)重要方面靜態(tài)分配,事前確定每個(gè)機(jī)器或進(jìn)程的作用。面向?qū)ο蟮哪J街校瑢?duì)象可以動(dòng)態(tài)實(shí)例化并馬上調(diào)用。第51頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一52Architectural stylesBasic ideaOrganize into logically different components, and distribut
33、e those components over the various machines. (a) Layered style is used for client-server system (b) Object-based style for distributed object systems.第52頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一53Architectural stylesDecoupling processes in space (“anonymous”) and also time (“asynchronous”) has led to alternati
34、ve styles.(a) Publish/subscribe decoupled in space(b) Shared data space decoupled in space and time第53頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一54第2章 系統(tǒng)模型引言體系結(jié)構(gòu)模型基礎(chǔ)模型總結(jié)第54頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一55基礎(chǔ)模型體系結(jié)構(gòu)模型所涉及的問題:系統(tǒng)中的主要實(shí)體是什么?它們?nèi)绾谓换??影響他們單個(gè)和集體行為的特征是什么?第55頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一56基礎(chǔ)模型模型的目的顯式地表示有關(guān)正在建模的系統(tǒng)
35、假設(shè);給定這些假設(shè),就什么是可行的,什么是不可行的給出結(jié)論。第56頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一57基礎(chǔ)模型交互模型進(jìn)程之間通過消息傳遞進(jìn)行交互,實(shí)現(xiàn)系 統(tǒng)的通信和協(xié)作功能。有較長(zhǎng)時(shí)間的延遲。時(shí)間是進(jìn)程間進(jìn)行協(xié)調(diào)的基本的參照,在 分布式系統(tǒng)中,很難有相同的時(shí)間概念。獨(dú)立進(jìn)程之間相互配合的準(zhǔn)確性受限于上 面兩個(gè)因素。第57頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一58基礎(chǔ)模型故障模型計(jì)算機(jī)或者網(wǎng)絡(luò)發(fā)生故障,會(huì)影響服務(wù)的正確性。故障模型的意義在于將定義可能出現(xiàn)的故障的形式,為分析故障帶來的影響提供依據(jù)。設(shè)計(jì)系統(tǒng)時(shí),知道如何考慮到容錯(cuò)的需求。第58頁,共8
36、3頁,2022年,5月20日,10點(diǎn)12分,星期一59基礎(chǔ)模型安全模型分布式系統(tǒng)的模塊特性以及開放性,使得它們暴露在內(nèi)部和外部的攻擊之下。安全模型的目的是提供依據(jù),以此分析系統(tǒng)可能收到的侵害,并在設(shè)計(jì)系統(tǒng)時(shí)防止這些侵害的發(fā)生。第59頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一60基礎(chǔ)模型之交互模型兩個(gè)影響進(jìn)程交互的因素通信性能不可能維護(hù)一個(gè)全局時(shí)間概念第60頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一61基礎(chǔ)模型之交互模型通信通道的性能延遲第一個(gè)比特流從發(fā)出到到達(dá)目的節(jié)點(diǎn)在網(wǎng)絡(luò)中所花費(fèi)的時(shí)間。訪問網(wǎng)絡(luò)的時(shí)間、操作系統(tǒng)通信服務(wù)的時(shí)間帶寬在單位時(shí)間內(nèi),網(wǎng)絡(luò)上能夠傳輸?shù)男?/p>
37、息的總量抖動(dòng)傳輸一系列信息所花費(fèi)時(shí)間的變化值E.g. 抖動(dòng)會(huì)影響流媒體服務(wù)的質(zhì)量,因?yàn)檫@類數(shù)據(jù)要求相對(duì)穩(wěn)定的傳輸率。第61頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一62基礎(chǔ)模型之交互模型計(jì)算機(jī)時(shí)鐘和時(shí)間事件時(shí)鐘漂移率(Clock drift rate)局部時(shí)鐘和一個(gè)精確的參考時(shí)鐘的差值 Timing evente.g., GPS, Logical time第62頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一63基礎(chǔ)模型之交互模型交互模型的兩個(gè)變體同步分布式系統(tǒng)進(jìn)程執(zhí)行每一步的時(shí)間有一個(gè)上限和下限。每個(gè)在網(wǎng)絡(luò)上傳輸消息可在已知時(shí)間范圍內(nèi)接收到。每個(gè)進(jìn)程的局部時(shí)鐘相對(duì)于
38、實(shí)際時(shí)間的漂移是在已知的范圍內(nèi)。第63頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一64基礎(chǔ)模型之交互模型交互模型的兩個(gè)變種異步分布式系統(tǒng)-沒有可預(yù)測(cè)的時(shí)限進(jìn)程執(zhí)行速度每一步都可能需要任意長(zhǎng)的時(shí)間消息傳遞延遲收到一個(gè)消息的等待時(shí)間可能任意長(zhǎng)時(shí)鐘漂移率漂移率可能是任意的第64頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一65基礎(chǔ)模型之交互模型同步分布式系統(tǒng)和異步分布式系統(tǒng)的例子異步分布式系統(tǒng)EmailFTP同步分布式系統(tǒng)VOD (Video On Demand)即視頻點(diǎn)播技術(shù) Voice Conference System第65頁,共83頁,2022年,5月20日,10點(diǎn)
39、12分,星期一66故障模型定義故障發(fā)生的行為,幫助理解故障對(duì)分布式系統(tǒng)的影響。分類(針對(duì)分布式系統(tǒng)的節(jié)點(diǎn)與網(wǎng)絡(luò)的故障場(chǎng)景,多倫多大學(xué)的Vassos Hadzialcos和康奈爾大學(xué)Sam Toueg于1994年進(jìn)行了比較系統(tǒng)的分類)遺漏故障Omission failures隨機(jī)故障Arbitrary failures時(shí)序故障Timing failures第66頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一67故障模型-遺漏故障進(jìn)程或者通信通道沒有正常的工作進(jìn)程遺漏故障:進(jìn)程崩潰進(jìn)程停止:在同步系統(tǒng)中通過時(shí)限是可以檢測(cè)出來的。但是在異步系統(tǒng)中,即使很長(zhǎng)時(shí)間沒有收到來自某個(gè)進(jìn)程的消息,
40、也不能判斷是進(jìn)程停止了。通信遺漏故障:丟失信息發(fā)送丟失,接受丟失,通道丟失丟失故障是良性故障第67頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一68故障模型-遺漏故障第68頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一69故障模型-隨機(jī)故障隨機(jī)故障(拜占庭故障):對(duì)系統(tǒng)影響最大的一種故障形式,而且錯(cuò)誤很難探知。發(fā)生在進(jìn)程中的隨機(jī)故障:隨便遺漏應(yīng)有的處理步驟或者進(jìn)行不應(yīng)有的處理步驟,該做的不做,不該做的卻做了。E.g. 對(duì)一個(gè)過程調(diào)用返回一個(gè)錯(cuò)誤的信息隨機(jī)故障很少出現(xiàn)在通信信道。E.g. 校驗(yàn)和,消息有序列號(hào)第69頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一
41、70故障模型-時(shí)間故障僅僅發(fā)生在同步分布式系統(tǒng)中ClasseffectsDescriptionClockProcessProcesss local clock exceeds the bounds on its rate of drift from real time.Performance ProcessProcess exceeds the bounds on the interval between two steps.Performance Channel A messages transmission takes longer than the stated bound.第70頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一71故障模型-屏蔽故障分布式系統(tǒng)中每個(gè)組件通?;谄渌唤M組件構(gòu)造,利用存在故障的組件構(gòu)造可靠的服務(wù)是可能。一對(duì)一通信的可靠性有效性(Validity)在發(fā)送端緩沖區(qū)的消息最終能夠到達(dá)接收端的緩沖區(qū)。完整性(Integrity)接收到的消息和發(fā)送的消息完全一樣,沒有消息被發(fā)送兩次。第71頁,共83頁,2022年,5月20日,10點(diǎn)12分,星期一72安全模型分布式系統(tǒng)的安全性進(jìn)程的安全性通信信道的安全性對(duì)象的安全性對(duì)對(duì)象的保護(hù)措施訪問權(quán)限:在對(duì)象的訪問控制表中規(guī)定什么人具有訪問一個(gè)對(duì)象的權(quán)限權(quán)能:用戶一方所持有的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024酒水購銷合同模板
- 2024三方運(yùn)輸合同的范本
- 2024購銷水泥合同范文
- 標(biāo)準(zhǔn)房屋轉(zhuǎn)讓協(xié)議樣本
- 2024房屋拆遷合同范本
- 2024機(jī)械設(shè)備購銷合同范本
- 建筑材料銷售合同模板:建筑材料買賣合同參考
- 2024居室裝飾裝修施工合同范本
- 2024年民事調(diào)解協(xié)議書參考范本
- 標(biāo)準(zhǔn)服務(wù)合同范例大全
- 工廠改造施工方案
- 初中英語新課程標(biāo)準(zhǔn)詞匯表
- 《春節(jié)的文化與習(xí)俗》課件
- 手機(jī)棋牌平臺(tái)網(wǎng)絡(luò)游戲商業(yè)計(jì)劃書
- 學(xué)校體育與社區(qū)體育融合發(fā)展的研究
- 醫(yī)療機(jī)構(gòu)高警示藥品風(fēng)險(xiǎn)管理規(guī)范(2023版)
- 一年級(jí)體質(zhì)健康數(shù)據(jù)
- 八年級(jí)物理(上)期中考試分析與教學(xué)反思
- 國家開放大學(xué)《財(cái)政與金融(農(nóng))》形考任務(wù)1-4參考答案
- 2023銀行網(wǎng)點(diǎn)年度工作總結(jié)
- 工廠反騷擾虐待強(qiáng)迫歧視政策
評(píng)論
0/150
提交評(píng)論