版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、 Page 1Beijing University of Posts and TelecommunicationsBeijing University of Posts and Telecommunications Page 2 Beijing University of Posts and Telecommunications Page 3主要內(nèi)容主要內(nèi)容t體系結(jié)構(gòu)體系結(jié)構(gòu) t進(jìn)程進(jìn)程 t通信通信 t命名命名 t一致性和復(fù)制一致性和復(fù)制t容錯(cuò)容錯(cuò)t安全安全 Beijing University of Posts and Telecommunications Page 4通信主要內(nèi)容通信主要內(nèi)
2、容t分層通信協(xié)議分層通信協(xié)議t遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用t面向消息的通信面向消息的通信t面向流的通信面向流的通信t多播通信多播通信Beijing University of Posts and Telecommunications Page 5通信主要內(nèi)容通信主要內(nèi)容t分層通信協(xié)議分層通信協(xié)議t遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用t面向消息的通信面向消息的通信t面向流的通信面向流的通信t多播通信多播通信Beijing University of Posts and Telecommunications Page 6OSIOSI模型模型t 由于沒有共享存
3、儲(chǔ)器,分布式系統(tǒng)中的所有通信都由于沒有共享存儲(chǔ)器,分布式系統(tǒng)中的所有通信都是基于(低層)消息交換的是基于(低層)消息交換的t OSI模型(開放式系統(tǒng)互聯(lián)參考模型)用來(lái)支持開模型(開放式系統(tǒng)互聯(lián)參考模型)用來(lái)支持開放式系統(tǒng)間的通信放式系統(tǒng)間的通信t 開放式系統(tǒng)是可以通過標(biāo)準(zhǔn)規(guī)則與其他開放式系統(tǒng)開放式系統(tǒng)是可以通過標(biāo)準(zhǔn)規(guī)則與其他開放式系統(tǒng)通信的系統(tǒng),這些規(guī)則規(guī)定了發(fā)送和接收消息的格通信的系統(tǒng),這些規(guī)則規(guī)定了發(fā)送和接收消息的格式、內(nèi)容以及相應(yīng)的含義式、內(nèi)容以及相應(yīng)的含義Beijing University of Posts and Telecommunications Page 7OSIOSI模型中
4、的層、結(jié)構(gòu)和協(xié)議模型中的層、結(jié)構(gòu)和協(xié)議t 分層:功能分層:功能分解。獨(dú)立分解。獨(dú)立性。性。t 接口(提供接口(提供功能的操作功能的操作集):標(biāo)準(zhǔn)集):標(biāo)準(zhǔn)化?;?。t 協(xié)議棧:有協(xié)議棧:有序性序性Beijing University of Posts and Telecommunications Page 8典型消息格式典型消息格式Beijing University of Posts and Telecommunications Page 9應(yīng)用層協(xié)議應(yīng)用層協(xié)議t 在在OSI七層模型的傳輸層之上又劃分了三個(gè)層,在七層模型的傳輸層之上又劃分了三個(gè)層,在實(shí)踐中,只用到了其中的應(yīng)用層實(shí)踐中,只用到了
5、其中的應(yīng)用層t 在在Internet協(xié)議簇中,傳輸層之上的所有內(nèi)容都合協(xié)議簇中,傳輸層之上的所有內(nèi)容都合并到了一起,稱為應(yīng)用層并到了一起,稱為應(yīng)用層t 應(yīng)用層成為所有由于各種原因不能歸納到某個(gè)較低層中應(yīng)用層成為所有由于各種原因不能歸納到某個(gè)較低層中去的應(yīng)用程序和協(xié)議的容器去的應(yīng)用程序和協(xié)議的容器t 缺乏對(duì)應(yīng)用程序、針對(duì)特定應(yīng)用程序的協(xié)議以及通缺乏對(duì)應(yīng)用程序、針對(duì)特定應(yīng)用程序的協(xié)議以及通用協(xié)議的明確區(qū)分用協(xié)議的明確區(qū)分t ftp協(xié)議和協(xié)議和ftp程序程序t HTTP協(xié)議協(xié)議Beijing University of Posts and Telecommunications Page 10中間件協(xié)
6、議中間件協(xié)議t 有有的應(yīng)用層協(xié)議,可用于支持多種應(yīng)用程序的通信,因此的應(yīng)用層協(xié)議,可用于支持多種應(yīng)用程序的通信,因此可看做是對(duì)多種應(yīng)用程序有用的通用協(xié)議可看做是對(duì)多種應(yīng)用程序有用的通用協(xié)議n但不能算作傳輸協(xié)議,很多情況下歸入但不能算作傳輸協(xié)議,很多情況下歸入中間件協(xié)議中間件協(xié)議Beijing University of Posts and Telecommunications Page 11中間件協(xié)議(中間件協(xié)議(2 2)t 中間件協(xié)議是中間件提供的用于支持高層應(yīng)用系統(tǒng)中間件協(xié)議是中間件提供的用于支持高層應(yīng)用系統(tǒng)通信的協(xié)議通信的協(xié)議t 不同的中間件系統(tǒng)有不同的中間件協(xié)議不同的中間件系統(tǒng)有不同的
7、中間件協(xié)議n支持遠(yuǎn)程過程調(diào)用的協(xié)議,如支持遠(yuǎn)程過程調(diào)用的協(xié)議,如DCE中中n支持遠(yuǎn)程對(duì)象調(diào)用的協(xié)議,如支持遠(yuǎn)程對(duì)象調(diào)用的協(xié)議,如CORBA中中n支持實(shí)時(shí)流數(shù)據(jù)傳輸并保持同步的協(xié)議支持實(shí)時(shí)流數(shù)據(jù)傳輸并保持同步的協(xié)議n可靠多播協(xié)議,用于支持可靠多播服務(wù)的中間件系統(tǒng)可靠多播協(xié)議,用于支持可靠多播服務(wù)的中間件系統(tǒng)Beijing University of Posts and Telecommunications Page 12中間件的通信類型中間件的通信類型Beijing University of Posts and Telecommunications Page 13中間件的通信類型中間件的通信類
8、型(2)(2)這些通信方式可以進(jìn)行各種組合這些通信方式可以進(jìn)行各種組合Beijing University of Posts and Telecommunications Page 14通信持久性和同步性的組合通信持久性和同步性的組合(a) 持久異步通信 (b)持久同步通信 Beijing University of Posts and Telecommunications Page 15通信持久性和同步性的組合(通信持久性和同步性的組合(2 2)(a) 持久異步通信 (b)持久同步通信 (c) 瞬時(shí)異步通信 (d) 基于發(fā)送的瞬時(shí)同步通信Beijing University of Posts
9、 and Telecommunications Page 16通信持久性和同步性的組合(通信持久性和同步性的組合(3 3)(e)基于接收的 (f)基于響應(yīng)的 瞬時(shí)同步通信 瞬時(shí)同步通信Beijing University of Posts and Telecommunications Page 17通信主要內(nèi)容通信主要內(nèi)容t分層通信協(xié)議分層通信協(xié)議t遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用t面向消息的通信面向消息的通信t面向流的通信面向流的通信t多播通信多播通信Beijing University of Posts and Telecommunications Page 18遠(yuǎn)程過
10、程調(diào)用遠(yuǎn)程過程調(diào)用RPCRPCt 像調(diào)用本地子程序一樣,調(diào)用遠(yuǎn)程子程序n調(diào)用者和被調(diào)者都不用考慮通信問題服務(wù)器客戶OS主程序主程序存根存根OS子程序子程序存根存根Beijing University of Posts and Telecommunications Page 19 RPC的基本處理過程的基本處理過程Beijing University of Posts and Telecommunications Page 20 傳統(tǒng)傳統(tǒng)RPC和異步和異步RPC(a)傳統(tǒng)的RPC (b)異步RPCBeijing University of Posts and Telecommunications
11、 Page 21遠(yuǎn)程方法調(diào)用遠(yuǎn)程方法調(diào)用RMIRMIt 像調(diào)用本地對(duì)象的方法一樣,調(diào)用遠(yuǎn)程對(duì)象的方法n調(diào)用者和被調(diào)者都不用考慮通信問題Beijing University of Posts and Telecommunications Page 22通信主要內(nèi)容通信主要內(nèi)容t分層通信協(xié)議分層通信協(xié)議t遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用t面向消息的通信面向消息的通信t面向流的通信面向流的通信t多播通信多播通信Beijing University of Posts and Telecommunications Page 23面向消息的通信面向消息的通信u遠(yuǎn)程過程調(diào)用和遠(yuǎn)程方法調(diào)用
12、都有助于隱藏分遠(yuǎn)程過程調(diào)用和遠(yuǎn)程方法調(diào)用都有助于隱藏分布式系統(tǒng)中的通信布式系統(tǒng)中的通信u但這兩種機(jī)制并不總是適用的但這兩種機(jī)制并不總是適用的u如當(dāng)無(wú)法保證發(fā)送請(qǐng)求時(shí)接收端正在執(zhí)行的情況下如當(dāng)無(wú)法保證發(fā)送請(qǐng)求時(shí)接收端正在執(zhí)行的情況下u如同步性會(huì)阻塞發(fā)送進(jìn)程如同步性會(huì)阻塞發(fā)送進(jìn)程u需要其他通信機(jī)制的支持需要其他通信機(jī)制的支持u如面向消息的通信如面向消息的通信Beijing University of Posts and Telecommunications Page 24面向消息的瞬時(shí)通信:套接字面向消息的瞬時(shí)通信:套接字t 很多分布式系統(tǒng)和應(yīng)用程序直接構(gòu)建在傳輸層很多分布式系統(tǒng)和應(yīng)用程序直接構(gòu)建
13、在傳輸層提供的簡(jiǎn)單的面向消息的模型之上提供的簡(jiǎn)單的面向消息的模型之上t 人們已對(duì)傳輸層接口的標(biāo)準(zhǔn)化給予了充分的重人們已對(duì)傳輸層接口的標(biāo)準(zhǔn)化給予了充分的重視視n程序員通過一個(gè)簡(jiǎn)單的原語(yǔ)集就可以使用傳輸層提程序員通過一個(gè)簡(jiǎn)單的原語(yǔ)集就可以使用傳輸層提供的全部(消息傳遞)協(xié)議供的全部(消息傳遞)協(xié)議n標(biāo)準(zhǔn)化的接口還使得應(yīng)用程序在不同機(jī)器之間的移標(biāo)準(zhǔn)化的接口還使得應(yīng)用程序在不同機(jī)器之間的移植變得容易植變得容易t 如支持如支持TCP/IP的的Berkeley套接字套接字socketBeijing University of Posts and Telecommunications Page 25TCP/
14、IPTCP/IP套接字原語(yǔ)套接字原語(yǔ)原語(yǔ)原語(yǔ)意義意義Socket創(chuàng)建新的通信端點(diǎn)Bind將本地地址附加(attach)到套接字上Listen宣布已準(zhǔn)備好接受連接Accept在準(zhǔn)備好連接請(qǐng)求之前阻塞調(diào)用方Connect主動(dòng)嘗試確立連接Send通過連接發(fā)送數(shù)據(jù)Receive通過連接接受數(shù)據(jù)Close釋放連接Beijing University of Posts and Telecommunications Page 26使用套接字的面向連接通信模式使用套接字的面向連接通信模式Beijing University of Posts and Telecommunications Page 27感受套接
15、字編程(感受套接字編程(Java)Server 側(cè):側(cè):ServerSocket server= new ServerSocket(10000);While(true)Socket s= server.accept();new ServerThread(s).start();客戶側(cè):客戶側(cè):Socket s= new Socket(“”,10000);InputStream is = s.getInputStream();is.close();s.close();Beijing University of Posts and Telecommunications Page
16、 28面向消息的瞬時(shí)通信:面向消息的瞬時(shí)通信:MPIt套接字抽象層在傳輸層,只支持簡(jiǎn)單的套接字抽象層在傳輸層,只支持簡(jiǎn)單的send和和receive原語(yǔ)原語(yǔ)t套接字用于使用套接字用于使用TCP/IP協(xié)議進(jìn)行通信,不協(xié)議進(jìn)行通信,不適用于為高速互聯(lián)網(wǎng)開發(fā)的專用協(xié)議,比適用于為高速互聯(lián)網(wǎng)開發(fā)的專用協(xié)議,比如不同的緩沖和同步方式如不同的緩沖和同步方式t多數(shù)高性能計(jì)算機(jī)系統(tǒng)附帶專用通信庫(kù),多數(shù)高性能計(jì)算機(jī)系統(tǒng)附帶專用通信庫(kù),帶來(lái)可移植性問題帶來(lái)可移植性問題t消息傳遞方面的標(biāo)準(zhǔn)出臺(tái):消息傳遞接口消息傳遞方面的標(biāo)準(zhǔn)出臺(tái):消息傳遞接口MPI Beijing University of Posts and T
17、elecommunications Page 29MPI的特點(diǎn)的特點(diǎn)t 提供高層通信,支持并行計(jì)算提供高層通信,支持并行計(jì)算, 如如MPP, COWt 可靠的底層網(wǎng)絡(luò)可靠的底層網(wǎng)絡(luò)t 支持分組通信,地址(支持分組通信,地址(groupID, processID)t 支持多種瞬時(shí)通信方式支持多種瞬時(shí)通信方式n瞬時(shí)異步瞬時(shí)異步 MPI_bsendn基于發(fā)送的瞬時(shí)同步基于發(fā)送的瞬時(shí)同步 MPI_sendn基于接收的瞬時(shí)同步基于接收的瞬時(shí)同步 MPI_ssendn基于響應(yīng)的瞬時(shí)同步基于響應(yīng)的瞬時(shí)同步 MPI_sendrecvBeijing University of Posts and Telecom
18、munications Page 30MPI原語(yǔ)原語(yǔ)原語(yǔ)原語(yǔ)意義意義MPI_bsend將要送出的消息追加到本地發(fā)送緩沖區(qū)中將要送出的消息追加到本地發(fā)送緩沖區(qū)中MPI_send發(fā)送消息,并等待直到消息復(fù)制到本地或遠(yuǎn)程緩沖發(fā)送消息,并等待直到消息復(fù)制到本地或遠(yuǎn)程緩沖區(qū)中為止區(qū)中為止MPI_ssend 發(fā)送消息,并等待直到對(duì)方開始接受為止發(fā)送消息,并等待直到對(duì)方開始接受為止MPI_sendrecv發(fā)送消息,并等待直到收到應(yīng)答消息為止發(fā)送消息,并等待直到收到應(yīng)答消息為止MPI_isend傳送要送出消息的引用,隨后繼續(xù)執(zhí)行傳送要送出消息的引用,隨后繼續(xù)執(zhí)行MPI_issend傳送要送出消息的引用,并等待
19、直到對(duì)方開始接受傳送要送出消息的引用,并等待直到對(duì)方開始接受為止為止MPI_recv接受消息,如果不存在等待的消息則阻塞接受消息,如果不存在等待的消息則阻塞MPI_irecv檢查是否有輸入的消息,但是無(wú)論有沒有消息都不檢查是否有輸入的消息,但是無(wú)論有沒有消息都不會(huì)阻塞會(huì)阻塞Beijing University of Posts and Telecommunications Page 31面向消息的持久通信t 其支持系統(tǒng)一般稱為消息隊(duì)列系統(tǒng)或者面向消其支持系統(tǒng)一般稱為消息隊(duì)列系統(tǒng)或者面向消息的中間件息的中間件n支持持久異步通信支持持久異步通信n適合于對(duì)傳輸時(shí)間要求寬松的場(chǎng)合,如幾分適合于對(duì)傳輸時(shí)
20、間要求寬松的場(chǎng)合,如幾分鐘。不保證消息到達(dá)接收方的時(shí)間,也不保鐘。不保證消息到達(dá)接收方的時(shí)間,也不保證接收方一定讀取消息證接收方一定讀取消息n松散耦合的通信方式,使用方便松散耦合的通信方式,使用方便Beijing University of Posts and Telecommunications Page 32使用隊(duì)列的使用隊(duì)列的4種松耦合通信方式種松耦合通信方式Beijing University of Posts and Telecommunications Page 33消息隊(duì)列接口的基本接口消息隊(duì)列接口的基本接口原語(yǔ)原語(yǔ)意義意義Put將消息追加進(jìn)指定隊(duì)列將消息追加進(jìn)指定隊(duì)列Get調(diào)用
21、進(jìn)程阻塞,直到指定隊(duì)列變?yōu)榉强諡檎{(diào)用進(jìn)程阻塞,直到指定隊(duì)列變?yōu)榉强諡橹梗缓笕〕鲫?duì)列中的第一個(gè)消息止,然后取出隊(duì)列中的第一個(gè)消息Poll查看指定隊(duì)列中的消息,并且取出隊(duì)列中查看指定隊(duì)列中的消息,并且取出隊(duì)列中的第一個(gè)消息。不阻塞調(diào)用進(jìn)程。的第一個(gè)消息。不阻塞調(diào)用進(jìn)程。Notify注冊(cè)一個(gè)處理程序,在有消息進(jìn)入指定隊(duì)注冊(cè)一個(gè)處理程序,在有消息進(jìn)入指定隊(duì)列時(shí)調(diào)用該處理程序。列時(shí)調(diào)用該處理程序。Beijing University of Posts and Telecommunications Page 34t 消息隊(duì)列消息隊(duì)列n 源隊(duì)列源隊(duì)列n 目標(biāo)隊(duì)列目標(biāo)隊(duì)列t 隊(duì)列尋址隊(duì)列尋址n隊(duì)列名隊(duì)列名n
22、網(wǎng)絡(luò)地址網(wǎng)絡(luò)地址t 隊(duì)列管理器隊(duì)列管理器n發(fā)送發(fā)送/接收接收n中轉(zhuǎn)中轉(zhuǎn)消息隊(duì)列系統(tǒng)的一般架構(gòu)Beijing University of Posts and Telecommunications Page 35隊(duì)列級(jí)編址與網(wǎng)絡(luò)級(jí)編址Beijing University of Posts and Telecommunications Page 36含有路由器的消息隊(duì)列系統(tǒng)一般架構(gòu)Beijing University of Posts and Telecommunications Page 37消息轉(zhuǎn)換器(消息轉(zhuǎn)換器(BrokerBroker)t 當(dāng)發(fā)送方發(fā)送的消息和接收方需要的消息當(dāng)發(fā)送方發(fā)送的消
23、息和接收方需要的消息在格式上、內(nèi)容上等有所不同時(shí),消息轉(zhuǎn)在格式上、內(nèi)容上等有所不同時(shí),消息轉(zhuǎn)換器可以對(duì)消息進(jìn)行轉(zhuǎn)換或處理?yè)Q器可以對(duì)消息進(jìn)行轉(zhuǎn)換或處理n格式轉(zhuǎn)換格式轉(zhuǎn)換n應(yīng)用層網(wǎng)關(guān)應(yīng)用層網(wǎng)關(guān)Beijing University of Posts and Telecommunications Page 38消息轉(zhuǎn)換器的一般結(jié)構(gòu)消息轉(zhuǎn)換器的一般結(jié)構(gòu)Beijing University of Posts and Telecommunications Page 39通信主要內(nèi)容通信主要內(nèi)容t分層通信協(xié)議分層通信協(xié)議t遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用t面向消息的通信面向消息的通信t面向
24、流的通信面向流的通信t多播通信多播通信Beijing University of Posts and Telecommunications Page 40面向流的通信面向流的通信t 媒體(媒體(media):n媒體是指?jìng)鞑バ畔⒌拿浇椤K侵溉私柚脕?lái)傳遞信媒體是指?jìng)鞑バ畔⒌拿浇?。它是指人借助用?lái)傳遞信息與獲取信息的工具、渠道、載體、中介物或技術(shù)手息與獲取信息的工具、渠道、載體、中介物或技術(shù)手段段n例:圖像格式例:圖像格式:GIF、JPEG、TIFt 連續(xù)型媒體連續(xù)型媒體(continuous representation media)n在數(shù)據(jù)項(xiàng)之間存在時(shí)間關(guān)系在數(shù)據(jù)項(xiàng)之間存在時(shí)間關(guān)系n 例:例
25、:CD:采樣值采樣值/1/44100秒,秒,VCD:禎禎/1/30秒秒t 離散型媒體離散型媒體Beijing University of Posts and Telecommunications Page 41數(shù)據(jù)流數(shù)據(jù)流t 數(shù)據(jù)流(數(shù)據(jù)流(stream)n異步傳輸異步傳輸: delay (0, ) ; delay(傳輸延遲傳輸延遲)n同步傳輸同步傳輸: delay (0,maxn等時(shí)等時(shí)(isochronous)傳輸傳輸: delay min, maxt 復(fù)雜數(shù)據(jù)流復(fù)雜數(shù)據(jù)流n由多個(gè)子數(shù)據(jù)流(由多個(gè)子數(shù)據(jù)流(substream)組成)組成n例:例:DVD((左聲道,右聲道),視頻,字幕(左聲
26、道,右聲道),視頻,字幕)Beijing University of Posts and Telecommunications Page 42數(shù)據(jù)流傳輸例數(shù)據(jù)流傳輸例Beijing University of Posts and Telecommunications Page 43流的服務(wù)質(zhì)量流的服務(wù)質(zhì)量Qos Qos t 非功能需求一般稱為服務(wù)質(zhì)量非功能需求一般稱為服務(wù)質(zhì)量QoSt 流的流的QoS描述了低層分布式系統(tǒng)及網(wǎng)絡(luò)在確保傳描述了低層分布式系統(tǒng)及網(wǎng)絡(luò)在確保傳輸質(zhì)量方面的需求輸質(zhì)量方面的需求t QoS屬性例:屬性例:n數(shù)據(jù)傳輸要求的比特率數(shù)據(jù)傳輸要求的比特率n創(chuàng)建會(huì)話的最大延時(shí)創(chuàng)建會(huì)話的
27、最大延時(shí)n端到端最大延時(shí)端到端最大延時(shí)n最大往返延時(shí)最大往返延時(shí)n誤碼率誤碼率n丟包率丟包率有很多支持QoS的方法Beijing University of Posts and Telecommunications Page 44流同步流同步t多媒體系統(tǒng)中,常常需要不同的流互相多媒體系統(tǒng)中,常常需要不同的流互相之間保持同步之間保持同步t如離散數(shù)據(jù)流與連續(xù)數(shù)據(jù)流之間保持同如離散數(shù)據(jù)流與連續(xù)數(shù)據(jù)流之間保持同步步n幻燈片演示與音頻幻燈片演示與音頻t 如連續(xù)流之間的同步如連續(xù)流之間的同步n放映影片時(shí)的視頻流和音頻流放映影片時(shí)的視頻流和音頻流Beijing University of Posts and
28、 Telecommunications Page 45同步機(jī)制例1t 在數(shù)據(jù)單元層上的顯式同步在數(shù)據(jù)單元層上的顯式同步n讀寫進(jìn)程:讀流數(shù)據(jù)單元,同步寫讀寫進(jìn)程:讀流數(shù)據(jù)單元,同步寫B(tài)eijing University of Posts and Telecommunications Page 46同步機(jī)制例2t 由高層接口支持的同步由高層接口支持的同步n多媒體中間件提供控制接口多媒體中間件提供控制接口n用戶自定義程序:檢查同步,調(diào)整流速用戶自定義程序:檢查同步,調(diào)整流速Beijing University of Posts and Telecommunications Page 47通信主要內(nèi)容
29、通信主要內(nèi)容t分層通信協(xié)議分層通信協(xié)議t遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用遠(yuǎn)程過程調(diào)用和遠(yuǎn)程對(duì)象調(diào)用t面向消息的通信面向消息的通信t面向流的通信面向流的通信t多播通信多播通信Beijing University of Posts and Telecommunications Page 48多播通信t 組:由系統(tǒng)或用戶確定的若干個(gè)進(jìn)程的集合組:由系統(tǒng)或用戶確定的若干個(gè)進(jìn)程的集合n組的成員籍(組的成員籍(membership)t 通信方式:通信方式:n點(diǎn)到點(diǎn)通信(點(diǎn)到點(diǎn)通信(point-to-point):單播(單播(unicast)n一到多通信一到多通信(one-to-many) : 多播(多播(mul
30、ticast)、廣播)、廣播(broadcast)Beijing University of Posts and Telecommunications Page 49單點(diǎn)、多播和廣播Beijing University of Posts and Telecommunications Page 50“通信”總結(jié)t 進(jìn)程間通信功能是所有分布式系統(tǒng)所必須的進(jìn)程間通信功能是所有分布式系統(tǒng)所必須的t 傳統(tǒng)的分布式系統(tǒng)通過基于傳輸層提供的低層消息傳統(tǒng)的分布式系統(tǒng)通過基于傳輸層提供的低層消息來(lái)進(jìn)行通信,如來(lái)進(jìn)行通信,如TCP/IP 套接字套接字t 分布計(jì)算環(huán)境(中間件)提供更高層次的通信支持分布計(jì)算環(huán)境(中
31、間件)提供更高層次的通信支持nRPC、RMIn基于消息的通信基于消息的通信t RPC、RMI等主要提供同步通信功能,并在一定程等主要提供同步通信功能,并在一定程度上放松了同步的要求度上放松了同步的要求t 但在一些應(yīng)用場(chǎng)合,面向消息的通信的異步通信更但在一些應(yīng)用場(chǎng)合,面向消息的通信的異步通信更方便一些方便一些n瞬時(shí)和持久,同步和異步瞬時(shí)和持久,同步和異步Beijing University of Posts and Telecommunications Page 51“通信”總結(jié)(2)t 面向流的通信面向流的通信n服務(wù)質(zhì)量服務(wù)質(zhì)量QoSn流的同步流的同步t 多播通信多播通信n從發(fā)送方到多個(gè)接收方
32、從發(fā)送方到多個(gè)接收方Beijing University of Posts and Telecommunications Page 52主要內(nèi)容主要內(nèi)容t體系結(jié)構(gòu)體系結(jié)構(gòu) t進(jìn)程進(jìn)程 t通信通信 t命名命名 t一致性和復(fù)制一致性和復(fù)制t容錯(cuò)容錯(cuò)t安全安全 Beijing University of Posts and Telecommunications Page 53命名t 名稱在所有計(jì)算機(jī)系統(tǒng)中都起著非常重要的作用名稱在所有計(jì)算機(jī)系統(tǒng)中都起著非常重要的作用n共享資源、唯一標(biāo)識(shí)實(shí)體等共享資源、唯一標(biāo)識(shí)實(shí)體等t 命名系統(tǒng)命名系統(tǒng)的主要功能是把名稱解析為它所標(biāo)識(shí)的實(shí)的主要功能是把名稱解析為它所標(biāo)
33、識(shí)的實(shí)體體t 分布式系統(tǒng)中,命名系統(tǒng)的實(shí)現(xiàn)本身通常是分布在分布式系統(tǒng)中,命名系統(tǒng)的實(shí)現(xiàn)本身通常是分布在多臺(tái)計(jì)算機(jī)上的多臺(tái)計(jì)算機(jī)上的n其分布機(jī)制對(duì)命名系統(tǒng)的效率和可靠性起著關(guān)鍵的作用其分布機(jī)制對(duì)命名系統(tǒng)的效率和可靠性起著關(guān)鍵的作用Beijing University of Posts and Telecommunications Page 54基本概念t 實(shí)體:系統(tǒng)中的任何事物實(shí)體:系統(tǒng)中的任何事物n主機(jī)、打印機(jī)、磁盤、文件、進(jìn)程、用戶、郵箱、主機(jī)、打印機(jī)、磁盤、文件、進(jìn)程、用戶、郵箱、Web頁(yè)頁(yè)面、消息面、消息t 實(shí)體的名字(實(shí)體的名字(Name):一個(gè)位串或字符串,可唯一地一個(gè)位串或字符串,
34、可唯一地標(biāo)識(shí)一個(gè)實(shí)體標(biāo)識(shí)一個(gè)實(shí)體n如主機(jī)名、文件名、進(jìn)程名、用戶名如主機(jī)名、文件名、進(jìn)程名、用戶名t 實(shí)體訪問點(diǎn)(實(shí)體訪問點(diǎn)(access point):用于訪問該實(shí)體的接口):用于訪問該實(shí)體的接口n可以有多個(gè)訪問點(diǎn)可以有多個(gè)訪問點(diǎn)n實(shí)體可以改變?cè)L問點(diǎn)實(shí)體可以改變?cè)L問點(diǎn)n訪問點(diǎn)可賦給另一個(gè)實(shí)體訪問點(diǎn)可賦給另一個(gè)實(shí)體t 地址(地址(address):訪問點(diǎn)的名稱):訪問點(diǎn)的名稱Beijing University of Posts and Telecommunications Page 55可能的命名方法(1)t 地址(地址(address):訪問點(diǎn)的地址):訪問點(diǎn)的地址t 用地址作為名稱用地址
35、作為名稱nIP地址、電話號(hào)碼地址、電話號(hào)碼n看上去用看上去用地址作為名稱地址作為名稱似乎很方便,但實(shí)際上,這種似乎很方便,但實(shí)際上,這種命名命名非常不靈活且用戶不友好。如,服務(wù)器運(yùn)行的主機(jī)經(jīng)常會(huì)非常不靈活且用戶不友好。如,服務(wù)器運(yùn)行的主機(jī)經(jīng)常會(huì)變化,提供多個(gè)訪問點(diǎn)的實(shí)體(變化,提供多個(gè)訪問點(diǎn)的實(shí)體(Web 服務(wù))服務(wù))Beijing University of Posts and Telecommunications Page 56可能的命名方法(2)t 標(biāo)識(shí)符:具有以下屬性的標(biāo)識(shí)符:具有以下屬性的n一個(gè)標(biāo)識(shí)符最多引用一個(gè)實(shí)體一個(gè)標(biāo)識(shí)符最多引用一個(gè)實(shí)體n每個(gè)實(shí)體被一個(gè)標(biāo)識(shí)符所引用每個(gè)實(shí)體被一個(gè)
36、標(biāo)識(shí)符所引用n一個(gè)標(biāo)識(shí)符總是引用同一個(gè)實(shí)體(不準(zhǔn)重用)一個(gè)標(biāo)識(shí)符總是引用同一個(gè)實(shí)體(不準(zhǔn)重用)t 使用標(biāo)識(shí)符來(lái)作為實(shí)體的名稱使用標(biāo)識(shí)符來(lái)作為實(shí)體的名稱n 不同進(jìn)程使用的標(biāo)識(shí)符會(huì)不會(huì)重名或者不一致?不同進(jìn)程使用的標(biāo)識(shí)符會(huì)不會(huì)重名或者不一致?t 在大多數(shù)計(jì)算機(jī)系統(tǒng)中,地址和標(biāo)識(shí)符僅使用計(jì)算機(jī)可讀的方在大多數(shù)計(jì)算機(jī)系統(tǒng)中,地址和標(biāo)識(shí)符僅使用計(jì)算機(jī)可讀的方式,如位串形式式,如位串形式t 使用用戶友好的名稱使用用戶友好的名稱n用戶理解的字符串,如用戶理解的字符串,如“temp”,“bank”Beijing University of Posts and Telecommunications Page 5
37、7命名系統(tǒng)t 在分布式系統(tǒng)中,一般使用位置無(wú)關(guān)的命名方法在分布式系統(tǒng)中,一般使用位置無(wú)關(guān)的命名方法t 因此,命名系統(tǒng)的主要工作就是把名稱解析為地址因此,命名系統(tǒng)的主要工作就是把名稱解析為地址t 簡(jiǎn)單地,命名系統(tǒng)中可以有一個(gè)名稱到地址的綁定表簡(jiǎn)單地,命名系統(tǒng)中可以有一個(gè)名稱到地址的綁定表n如(如(Name,address)表)表大型分布式系統(tǒng),資源眾多,一個(gè)表可能無(wú)法滿足要求大型分布式系統(tǒng),資源眾多,一個(gè)表可能無(wú)法滿足要求t 分布式系統(tǒng)常見的三類命名系統(tǒng)分布式系統(tǒng)常見的三類命名系統(tǒng)n無(wú)結(jié)構(gòu)命名無(wú)結(jié)構(gòu)命名n結(jié)構(gòu)化命名結(jié)構(gòu)化命名n基于屬性的命名基于屬性的命名Beijing University of
38、 Posts and Telecommunications Page 58無(wú)結(jié)構(gòu)命名t 無(wú)結(jié)構(gòu)名稱:名稱中不包含任何有關(guān)如何定位其相無(wú)結(jié)構(gòu)名稱:名稱中不包含任何有關(guān)如何定位其相關(guān)實(shí)體的訪問點(diǎn)的信息關(guān)實(shí)體的訪問點(diǎn)的信息t 多種方法支持無(wú)結(jié)構(gòu)名稱的解析多種方法支持無(wú)結(jié)構(gòu)名稱的解析n廣播和多播廣播和多播Internet地址解析協(xié)議地址解析協(xié)議ARPn分布式散列表分布式散列表n.t 無(wú)結(jié)構(gòu)名稱適用于機(jī)器的理解,人難以理解無(wú)結(jié)構(gòu)名稱適用于機(jī)器的理解,人難以理解Beijing University of Posts and Telecommunications Page 59結(jié)構(gòu)化命名t 結(jié)構(gòu)化名稱:簡(jiǎn)單
39、的、人類可理解名稱結(jié)構(gòu)化名稱:簡(jiǎn)單的、人類可理解名稱n文件命名:文件命名:/user/libnInternet上的網(wǎng)頁(yè)地址:上的網(wǎng)頁(yè)地址:t 名稱通常組成名稱通常組成名字空間名字空間:根節(jié)點(diǎn)、目錄節(jié)點(diǎn)、葉節(jié):根節(jié)點(diǎn)、目錄節(jié)點(diǎn)、葉節(jié)點(diǎn)點(diǎn)Beijing University of Posts and Telecommunications Page 60名字空間的實(shí)現(xiàn)t 命名服務(wù):管理名字空間,允許用戶和進(jìn)程添加、命名服務(wù):管理名字空間,允許用戶和進(jìn)程添加、刪除和查找名稱的服務(wù)。刪除和查找名稱的服務(wù)。t 命名服務(wù)由命名服務(wù)器實(shí)現(xiàn)命名服務(wù)由命名服務(wù)器實(shí)現(xiàn)t 大型分布式系統(tǒng)包含很多實(shí)體,跨越很大的地理區(qū)
40、大型分布式系統(tǒng)包含很多實(shí)體,跨越很大的地理區(qū)域,需要使用多臺(tái)命名服務(wù)器來(lái)分散名字空間的管域,需要使用多臺(tái)命名服務(wù)器來(lái)分散名字空間的管理。理。Beijing University of Posts and Telecommunications Page 61DNS的命名空間劃分示例Beijing University of Posts and Telecommunications Page 62名字解析方法例t 迭代式名字解析:名字解析器從根名字服務(wù)器開始,逐個(gè)與迭代式名字解析:名字解析器從根名字服務(wù)器開始,逐個(gè)與名字服務(wù)器交互,實(shí)現(xiàn)名字的解析名字服務(wù)器交互,實(shí)現(xiàn)名字的解析n root:Beij
41、ing University of Posts and Telecommunications Page 63基于屬性的命名t 無(wú)結(jié)構(gòu)命名和結(jié)構(gòu)化命名提供了一種唯一的與位置無(wú)關(guān)的方無(wú)結(jié)構(gòu)命名和結(jié)構(gòu)化命名提供了一種唯一的與位置無(wú)關(guān)的方法來(lái)命名實(shí)體,進(jìn)一步地,結(jié)構(gòu)化命名還具有良好的用戶友法來(lái)命名實(shí)體,進(jìn)一步地,結(jié)構(gòu)化命名還具有良好的用戶友好性好性t 位置無(wú)關(guān)和用戶友好不是命名實(shí)體的唯一標(biāo)準(zhǔn),隨著可用信位置無(wú)關(guān)和用戶友好不是命名實(shí)體的唯一標(biāo)準(zhǔn),隨著可用信息的增加,高效地查找實(shí)體變得更重要。息的增加,高效地查找實(shí)體變得更重要。t 在分布式系統(tǒng)中,常用在分布式系統(tǒng)中,常用(屬性、值)(屬性、值)來(lái)描述實(shí)體
42、,稱為來(lái)描述實(shí)體,稱為基于基于屬性的命名屬性的命名。t 可使用實(shí)體的屬性來(lái)查找實(shí)體可使用實(shí)體的屬性來(lái)查找實(shí)體t 基于屬性的命名系統(tǒng)稱為基于屬性的命名系統(tǒng)稱為目錄服務(wù)目錄服務(wù),實(shí)體有可供查找的相關(guān),實(shí)體有可供查找的相關(guān)屬性集。屬性集。t 如如LDAP目錄服務(wù)目錄服務(wù)Beijing University of Posts and Telecommunications Page 64LDAP目錄服務(wù)系統(tǒng)t 基于基于LDAP協(xié)議(輕量級(jí)目錄訪問協(xié)議)協(xié)議(輕量級(jí)目錄訪問協(xié)議)n 從從OSI X.500目錄服務(wù)派生目錄服務(wù)派生n 國(guó)際電信聯(lián)盟(國(guó)際電信聯(lián)盟(ITU)關(guān)于目錄服務(wù)的建議標(biāo)準(zhǔn))關(guān)于目錄服務(wù)的
43、建議標(biāo)準(zhǔn)t LDAP目錄項(xiàng)目錄項(xiàng)n 目錄項(xiàng)目錄項(xiàng): 由多個(gè)記錄(屬性,值)組成。由多個(gè)記錄(屬性,值)組成。n 多值屬性多值屬性:用數(shù)組或鏈表表示用數(shù)組或鏈表表示t 目錄信息庫(kù)目錄信息庫(kù)(DIB)n 所有目錄項(xiàng)的集合。所有目錄項(xiàng)的集合。n 每個(gè)記錄都是唯一命名的,所以可以被查找每個(gè)記錄都是唯一命名的,所以可以被查找Beijing University of Posts and Telecommunications Page 65LDAP目錄項(xiàng)舉例t /c=NL/O=Vrije University/OU=Comp.Sc.t 類似于類似于DNS名名nl.vu.cs屬性屬性縮寫縮寫值值Countr
44、yCNLLocalityLAmsterdamOrganizationLVrije UniversiteitOrganizationalUnitOUMath. & Comp. Sc.CommonNameCNMain serverMail_Servers-, 192.31.231, 6FTP_Server-1WWW_Server-1Beijing University of Posts and Telecommunications Page 66目錄信息樹t 用于描述目錄項(xiàng)集合的層次結(jié)構(gòu),命名圖用于描述目錄項(xiàng)
45、集合的層次結(jié)構(gòu),命名圖Beijing University of Posts and Telecommunications Page 67查找操作示例t Answer=search(“&(C=NL)(O=Vrije University) (OU=*)(CN=Main server)”) t 查找在國(guó)家名為查找在國(guó)家名為NL、組織名為、組織名為Vrije University的地方的主服的地方的主服務(wù)器(務(wù)器(CN為為Main Server ),對(duì)組織名,對(duì)組織名OU不關(guān)注不關(guān)注t 將返回一個(gè)列表,其中每個(gè)記錄滿足上述屬性描述將返回一個(gè)列表,其中每個(gè)記錄滿足上述屬性描述Beijing Univ
46、ersity of Posts and Telecommunications Page 68“命名系統(tǒng)”總結(jié)t 名稱可用來(lái)表示實(shí)體,基本有名稱可用來(lái)表示實(shí)體,基本有3種類型的名稱,地址、標(biāo)識(shí)種類型的名稱,地址、標(biāo)識(shí)符、用戶友好的名稱符、用戶友好的名稱t 無(wú)層次命名系統(tǒng)需要將標(biāo)識(shí)符解析為對(duì)應(yīng)的實(shí)體地址,有很無(wú)層次命名系統(tǒng)需要將標(biāo)識(shí)符解析為對(duì)應(yīng)的實(shí)體地址,有很多方法介紹。多方法介紹。t 結(jié)構(gòu)化名稱可以很容易組織成名稱空間,名稱空間可以用命結(jié)構(gòu)化名稱可以很容易組織成名稱空間,名稱空間可以用命名圖來(lái)表示,名稱解析的過程是通過查找路徑名的各個(gè)部分名圖來(lái)表示,名稱解析的過程是通過查找路徑名的各個(gè)部分來(lái)貫穿
47、該命名圖。來(lái)貫穿該命名圖。t 基于屬性的命名系統(tǒng)中,實(shí)體是由(屬性、值)對(duì)集來(lái)描述,基于屬性的命名系統(tǒng)中,實(shí)體是由(屬性、值)對(duì)集來(lái)描述,可基于屬性查找滿足條件的實(shí)體可基于屬性查找滿足條件的實(shí)體Beijing University of Posts and Telecommunications Page 69主要內(nèi)容主要內(nèi)容t體系結(jié)構(gòu)體系結(jié)構(gòu) t進(jìn)程進(jìn)程 t通信通信 t命名命名 t一致性和復(fù)制一致性和復(fù)制t容錯(cuò)容錯(cuò)t安全安全 Beijing University of Posts and Telecommunications Page 70引言引言t 進(jìn)行數(shù)據(jù)復(fù)制的主要原因:進(jìn)行數(shù)據(jù)復(fù)制的主要
48、原因:n 可靠性:一個(gè)副本被破壞,可以切換到另外的副本可靠性:一個(gè)副本被破壞,可以切換到另外的副本,保護(hù)數(shù)據(jù),不影響應(yīng)用的運(yùn)行。,保護(hù)數(shù)據(jù),不影響應(yīng)用的運(yùn)行。n 性能:并行性、可伸縮性,(服務(wù)器數(shù)量、地域)性能:并行性、可伸縮性,(服務(wù)器數(shù)量、地域)n 服務(wù)器數(shù)量,可均衡負(fù)載,提高訪問性能服務(wù)器數(shù)量,可均衡負(fù)載,提高訪問性能n 地域擴(kuò)展,就近訪問,提高性能。地域擴(kuò)展,就近訪問,提高性能。n 進(jìn)行數(shù)據(jù)復(fù)制是有代價(jià)的,一致性保證進(jìn)行數(shù)據(jù)復(fù)制是有代價(jià)的,一致性保證n 例例1:Web頁(yè)的頁(yè)的Cachen 例例2:鏡像網(wǎng)站:鏡像網(wǎng)站Beijing University of Posts and Tele
49、communications Page 71支持伸縮性的復(fù)制技術(shù)t 將數(shù)據(jù)的副本放置在處理它們的進(jìn)程附近以減少訪將數(shù)據(jù)的副本放置在處理它們的進(jìn)程附近以減少訪問時(shí)間,解決問時(shí)間,解決可伸縮性可伸縮性問題問題t 復(fù)制策略復(fù)制策略n設(shè)進(jìn)程設(shè)進(jìn)程P對(duì)數(shù)據(jù)對(duì)數(shù)據(jù)d的訪問的訪問N次次/秒,秒,d的更新的更新M次次/秒秒n當(dāng)當(dāng)NM時(shí),訪問時(shí),訪問/更新比非常低,由于一致性維護(hù)帶來(lái)更新比非常低,由于一致性維護(hù)帶來(lái)更大代價(jià),因此,不應(yīng)復(fù)制更大代價(jià),因此,不應(yīng)復(fù)制Beijing University of Posts and Telecommunications Page 72支持伸縮性的復(fù)制技術(shù)(2)t 一致性
50、維護(hù)與可伸縮性問題一致性維護(hù)與可伸縮性問題n保證所有的副本都是相同的,保證所有的副本都是相同的,-緊密一致性緊密一致性n當(dāng)某個(gè)副本上執(zhí)行更新操作時(shí),需對(duì)所有副本進(jìn)行全局同當(dāng)某個(gè)副本上執(zhí)行更新操作時(shí),需對(duì)所有副本進(jìn)行全局同步步 ,在大型系統(tǒng)上很難實(shí)施,在大型系統(tǒng)上很難實(shí)施-可伸縮性問題可伸縮性問題t 解決策略解決策略n松馳一致性,放寬在一致性方面的限制,所有副本不一定松馳一致性,放寬在一致性方面的限制,所有副本不一定保持完全相同,盡量減少立即的全局同步保持完全相同,盡量減少立即的全局同步n一致性放寬的程度主要取決于復(fù)制數(shù)據(jù)的訪問和更新模式,一致性放寬的程度主要取決于復(fù)制數(shù)據(jù)的訪問和更新模式,同時(shí)
51、還取決于這些數(shù)據(jù)的用途同時(shí)還取決于這些數(shù)據(jù)的用途Beijing University of Posts and Telecommunications Page 73常見的一致性模型t 以數(shù)據(jù)為中心的一致性模型以數(shù)據(jù)為中心的一致性模型t 以用戶為中心的一致性模型以用戶為中心的一致性模型Beijing University of Posts and Telecommunications Page 74以數(shù)據(jù)為中心的一致性模型t 分布式數(shù)據(jù)倉(cāng)分布式數(shù)據(jù)倉(cāng)(data store)模型模型n物理上,分布的和復(fù)制的物理上,分布的和復(fù)制的例如,分布式共享內(nèi)存、數(shù)據(jù)庫(kù)、文件例如,分布式共享內(nèi)存、數(shù)據(jù)庫(kù)、文件n
52、操作:每個(gè)進(jìn)程可執(zhí)行讀操作,寫操作操作:每個(gè)進(jìn)程可執(zhí)行讀操作,寫操作寫操作在本地副本上進(jìn)行,再傳播給其他副本寫操作在本地副本上進(jìn)行,再傳播給其他副本Beijing University of Posts and Telecommunications Page 75一致性模型t 以數(shù)據(jù)為中心的一致性模型,實(shí)質(zhì)上是進(jìn)程和數(shù)據(jù)以數(shù)據(jù)為中心的一致性模型,實(shí)質(zhì)上是進(jìn)程和數(shù)據(jù)存儲(chǔ)之間的一個(gè)約定存儲(chǔ)之間的一個(gè)約定n如果進(jìn)程遵守這些約定,那么數(shù)據(jù)存儲(chǔ)將正常工作如果進(jìn)程遵守這些約定,那么數(shù)據(jù)存儲(chǔ)將正常工作t 顯然,一個(gè)進(jìn)程在數(shù)據(jù)項(xiàng)上執(zhí)行讀操作時(shí),該進(jìn)程顯然,一個(gè)進(jìn)程在數(shù)據(jù)項(xiàng)上執(zhí)行讀操作時(shí),該進(jìn)程肯定期待該操作返
53、回的是在其最后一次寫操作之后肯定期待該操作返回的是在其最后一次寫操作之后的結(jié)果的結(jié)果t 但在沒有全局時(shí)鐘的情況下,精確地定義哪些寫操但在沒有全局時(shí)鐘的情況下,精確地定義哪些寫操作時(shí)最后一次寫操作時(shí)十分困難的作時(shí)最后一次寫操作時(shí)十分困難的n作為替代方法,產(chǎn)生了一系列放寬了限制條件的作為替代方法,產(chǎn)生了一系列放寬了限制條件的一致性模一致性模型型,每種模型都有效地限制了在一個(gè)數(shù)據(jù)項(xiàng)上執(zhí)行一次讀,每種模型都有效地限制了在一個(gè)數(shù)據(jù)項(xiàng)上執(zhí)行一次讀操作所應(yīng)返回的值操作所應(yīng)返回的值Beijing University of Posts and Telecommunications Page 76一致性模型舉例
54、t 嚴(yán)格一致性:嚴(yán)格一致性:對(duì)數(shù)據(jù)項(xiàng)對(duì)數(shù)據(jù)項(xiàng)x的讀操作返回的的讀操作返回的值為最近寫值為最近寫入入x x的值的值n不可實(shí)現(xiàn)不可實(shí)現(xiàn)t 順序一致性:當(dāng)進(jìn)程在多臺(tái)(可能)不同的機(jī)器上順序一致性:當(dāng)進(jìn)程在多臺(tái)(可能)不同的機(jī)器上并發(fā)執(zhí)行時(shí),任何讀、寫操作的有效交叉都是可以并發(fā)執(zhí)行時(shí),任何讀、寫操作的有效交叉都是可以接受的行為,但所有進(jìn)程看到的是相同的操作交叉接受的行為,但所有進(jìn)程看到的是相同的操作交叉順序順序t 因果一致性:一種弱化的因果一致性,所有進(jìn)程必因果一致性:一種弱化的因果一致性,所有進(jìn)程必須以相同的順序看到具有潛在因果關(guān)系的寫操作,須以相同的順序看到具有潛在因果關(guān)系的寫操作,不同進(jìn)程可以以
55、不同順序看到?jīng)]有因果關(guān)系的并發(fā)不同進(jìn)程可以以不同順序看到?jīng)]有因果關(guān)系的并發(fā)寫操作。寫操作。t .Beijing University of Posts and Telecommunications Page 77以用戶為中心的一致性模型t 以數(shù)據(jù)為中心的一致性模型的一個(gè)重要假設(shè)是并發(fā)以數(shù)據(jù)為中心的一致性模型的一個(gè)重要假設(shè)是并發(fā)進(jìn)程可能同時(shí)更新數(shù)據(jù)存儲(chǔ)進(jìn)程可能同時(shí)更新數(shù)據(jù)存儲(chǔ)t 這里討論的分布式數(shù)據(jù)存儲(chǔ)區(qū)這里討論的分布式數(shù)據(jù)存儲(chǔ)區(qū)n沒有同時(shí)更新(無(wú)寫沒有同時(shí)更新(無(wú)寫-寫沖突)或容易解決寫沖突)或容易解決n大多數(shù)操作為讀操作大多數(shù)操作為讀操作n哪怕是舊的數(shù)據(jù),用戶也常認(rèn)為是可接受的,如哪怕是舊的
56、數(shù)據(jù),用戶也常認(rèn)為是可接受的,如Web網(wǎng)頁(yè)網(wǎng)頁(yè)(服務(wù)器,代理緩存)(服務(wù)器,代理緩存)t 客戶為中心的一致性(客戶為中心的一致性(Client-centric)n保證一個(gè)客戶對(duì)數(shù)據(jù)存儲(chǔ)的訪問是一致的保證一個(gè)客戶對(duì)數(shù)據(jù)存儲(chǔ)的訪問是一致的n不考慮不同客戶之間的并發(fā)訪問不考慮不同客戶之間的并發(fā)訪問n典型應(yīng)用場(chǎng)景:移動(dòng)用戶問題典型應(yīng)用場(chǎng)景:移動(dòng)用戶問題Beijing University of Posts and Telecommunications Page 78移動(dòng)用戶問題t 用戶在一段時(shí)間內(nèi)要連接不同的副本,而這些副本用戶在一段時(shí)間內(nèi)要連接不同的副本,而這些副本的差別應(yīng)該是透明的。的差別應(yīng)該是透
57、明的。Beijing University of Posts and Telecommunications Page 79以客戶為中心的一致性模型例t 最終一致性:如果在一段時(shí)間內(nèi)沒有更新操作,那最終一致性:如果在一段時(shí)間內(nèi)沒有更新操作,那么所有的副本將逐漸趨于一致么所有的副本將逐漸趨于一致t 單調(diào)讀一致性:如果一個(gè)進(jìn)程已經(jīng)在單調(diào)讀一致性:如果一個(gè)進(jìn)程已經(jīng)在t時(shí)刻看到時(shí)刻看到x的的值,那么以后它不會(huì)看到較老版本的值,那么以后它不會(huì)看到較老版本的x的值的值t 單調(diào)寫一致性:一個(gè)進(jìn)程對(duì)數(shù)據(jù)項(xiàng)單調(diào)寫一致性:一個(gè)進(jìn)程對(duì)數(shù)據(jù)項(xiàng)X執(zhí)行的寫操作執(zhí)行的寫操作必須在該進(jìn)程對(duì)必須在該進(jìn)程對(duì)X執(zhí)行的任何后續(xù)寫操作之
58、前完成執(zhí)行的任何后續(xù)寫操作之前完成t .Beijing University of Posts and Telecommunications Page 80復(fù)制管理t任何支持復(fù)制的分布式系統(tǒng),需解決兩個(gè)問題:n決定何時(shí)、何處、由誰(shuí)來(lái)放置副本:服務(wù)器放置:找到放置或托管數(shù)據(jù)存儲(chǔ)的服務(wù)器的最佳位置。內(nèi)容放置:找到放置內(nèi)容的最佳服務(wù)器。n何種機(jī)制保證副本的一致性。Beijing University of Posts and Telecommunications Page 81服務(wù)器放置t基于對(duì)客戶和網(wǎng)絡(luò)屬性進(jìn)行分析、優(yōu)化和決策,如:n以客戶與位置之間的距離作為計(jì)算依據(jù),距離可通過延時(shí)或帶寬來(lái)度量,在某個(gè)時(shí)間里選取服務(wù)器,使得服務(wù)器與客戶的平均距離最小。n利用聚類方法,標(biāo)識(shí)放置副本的區(qū)域,區(qū)域指訪問相同內(nèi)容的結(jié)點(diǎn)集,且結(jié)點(diǎn)之間的延時(shí)小。nBeijing University of Posts and Telecommunications Page 82內(nèi)容復(fù)制與放置t從邏輯上可以組織為三種不同類型的副本:n永久副本。n服務(wù)器啟動(dòng)的副本。n客
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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年智能農(nóng)田水利工程承包合同
- 2024年度能源集團(tuán)員工聘用合同范本
- 校園信貸安全教育
- pe 投資 投資合同范例
- 香菇種植合作協(xié)議合同范例
- 關(guān)于股東出資合同范例
- 銷售廢紙合作合同范例
- 預(yù)訂養(yǎng)老服務(wù)合同范例
- 公司工人合同范例
- 物流承包區(qū)合同范例
- 注漿聚脲施工方案
- 公司扭虧解困方案
- 北京市東城區(qū)2023-2024學(xué)年數(shù)學(xué)三年級(jí)第一學(xué)期期末綜合測(cè)試試題含答案
- 貴州省遵義市播州區(qū)2023-2024學(xué)年四年級(jí)數(shù)學(xué)第一學(xué)期期末監(jiān)測(cè)試題含答案
- 氫能與燃料電池電動(dòng)汽車第5章 氫與燃料電池
- 車床液壓系統(tǒng)設(shè)計(jì)與計(jì)算
- 徒手整形教學(xué)課件
- 西方思想經(jīng)典-南京大學(xué)中國(guó)大學(xué)mooc課后章節(jié)答案期末考試題庫(kù)2023年
- 跨平臺(tái)移動(dòng)應(yīng)用開發(fā)-Flutter實(shí)踐-南京師范大學(xué)泰州學(xué)院中國(guó)大學(xué)mooc課后章節(jié)答案期末考試題庫(kù)2023年
- 文化資源數(shù)字化技術(shù)有哪些
- 2023年杭州聯(lián)合銀行校園招聘筆試歷年高頻考點(diǎn)試題答案詳解
評(píng)論
0/150
提交評(píng)論