女人下边被添全过视频,一二三四在线观看免费播放电影,美女露出奶头扒开尿口让男人桶,宅男噜噜噜66网站高清,日产精品一卡2卡三卡四卡区别

IT之道-艾銻知道

您當(dāng)前位置: 主頁 > IT服務(wù) > 網(wǎng)絡(luò)服務(wù) >

網(wǎng)絡(luò)游戲的常用體系結(jié)構(gòu)


2013-05-03 15:57 作者:ly 瀏覽量:

 

網(wǎng)絡(luò)游戲都是借助于互聯(lián)網(wǎng)運(yùn)作的,要實(shí)現(xiàn)網(wǎng)絡(luò)游戲同步的第一步就是設(shè)計(jì)出高效的網(wǎng)絡(luò)體系結(jié)構(gòu)。數(shù)據(jù)信息傳輸?shù)倪^程中,網(wǎng)絡(luò)底層協(xié)議影響著信息傳輸?shù)目煽啃院蜏?zhǔn)確性,因此網(wǎng)絡(luò)協(xié)議的選擇也是必須加以重視的問題。而影響網(wǎng)絡(luò)游戲同步的各種因素正是我們?yōu)榻鉀Q同步的突破口。

1  C/S模式的體系結(jié)構(gòu)

大多MMOG游戲都采用C/S的網(wǎng)絡(luò)體系結(jié)構(gòu),該體系結(jié)構(gòu)如圖1所示:

 

圖1 基于C/S的網(wǎng)絡(luò)游戲結(jié)構(gòu)

在此結(jié)構(gòu)中服務(wù)端的作用是擔(dān)任中心服務(wù)器的角色,每個(gè)連接到此服務(wù)端的客戶端需要更新或發(fā)出新的消息時(shí),服務(wù)端接收到客戶端傳來的數(shù)據(jù)信息后,根據(jù)邏輯進(jìn)行相應(yīng)的處理后把消息廣播到相應(yīng)的客戶端玩家,對(duì)于客戶端來說,相互之間不能直接通信,他們都要通過服務(wù)器的間接傳遞才能收到另外客戶端發(fā)來的數(shù)據(jù)信息。

在服務(wù)器端存放整個(gè)網(wǎng)絡(luò)游戲的世界原型,而玩家只能在客戶端進(jìn)入這個(gè)世界,觀察里面的動(dòng)態(tài)和情況,在游戲世界里互相溝通、交流、做出不同的回應(yīng)或攻擊。這樣客戶端就不能篡改游戲的狀態(tài),但是同時(shí)也會(huì)把所有的任務(wù)都交給服務(wù)端,服務(wù)器就需要承載更多的壓力。C/S結(jié)構(gòu)的優(yōu)點(diǎn)是能夠很好的保證游戲狀態(tài)的一致性,這是因?yàn)檎麄€(gè)游戲世界的原型和數(shù)據(jù)都保存在服務(wù)端,而客戶端的操作都需要經(jīng)過服務(wù)端的處理,這樣游戲狀態(tài)要經(jīng)過服務(wù)端的統(tǒng)一分析和處理,客戶端的非法操作就無法執(zhí)行,這樣就有效的防止了玩家的作弊。該結(jié)構(gòu)的缺點(diǎn)是容易造成系統(tǒng)的瓶頸,這是由于中心服務(wù)器的負(fù)載過重導(dǎo)致的。而服務(wù)器的癱瘓就會(huì)導(dǎo)致整個(gè)游戲的癱瘓。該結(jié)構(gòu)的另一個(gè)缺點(diǎn)是客戶端的升級(jí)十分困難,每次游戲升級(jí)都要下載龐大的客戶端軟件。尤其對(duì)于帶寬小的用戶更是一件十分不容易的事情。因此在設(shè)計(jì)游戲時(shí),客戶端更新程序的下載應(yīng)適當(dāng)縮減。

2  P2P體系結(jié)構(gòu)

P2P體系結(jié)構(gòu)[3],又稱對(duì)等通信結(jié)構(gòu),該結(jié)構(gòu)也是應(yīng)用比較廣泛的一種結(jié)構(gòu),其結(jié)構(gòu)圖如圖2所示。

 

 

圖2 P2P(Peer to Peer)對(duì)等通信結(jié)構(gòu)

與C/S體系結(jié)構(gòu)不同的是,該結(jié)構(gòu)沒有中心服務(wù)器的概念,游戲狀態(tài)都保存在客戶端。各客戶端之間采用Peer to Peer通信方式進(jìn)行溝通和交流。

該結(jié)構(gòu)的大體思想是:通常由創(chuàng)建游戲局的客戶端擔(dān)任服務(wù)器的角色,該客戶端玩家既擔(dān)任服務(wù)器也擔(dān)任客戶端的角色。這個(gè)服務(wù)器就像浮動(dòng)服務(wù)器一樣。對(duì)戰(zhàn)型游戲大多采用此結(jié)構(gòu)。

P2P結(jié)構(gòu)的優(yōu)點(diǎn)是縮短了傳輸?shù)木W(wǎng)絡(luò)延遲,這是因?yàn)榭蛻舳酥g是可以直接進(jìn)行交互的,他們不用把數(shù)據(jù)信息發(fā)送到服務(wù)端等待服務(wù)端的統(tǒng)一裁決,這樣就避免了消息通過服務(wù)端中轉(zhuǎn)所花費(fèi)的時(shí)間。游戲狀態(tài)都保存在客戶端,也就不存在C/S體系結(jié)構(gòu)中的服務(wù)器資源有限而不能隨時(shí)隨地都及時(shí)反應(yīng)的問題。該結(jié)構(gòu)的缺點(diǎn)也是顯而易見的,由于消息在各客戶端之間傳輸時(shí)不可避免的會(huì)出現(xiàn)丟失或則時(shí)間延遲的情況,這樣就很容易引起游戲狀態(tài)的不同步。但是控制和決策機(jī)制都放在客戶端,玩家要想作弊是輕而易舉的事情,這種機(jī)制不能很好的防止玩家的作弊行為。

P2P體系結(jié)構(gòu)是通過廣播的形式來進(jìn)行工作的,廣播這種機(jī)制只能在局域網(wǎng)內(nèi)使用,因此P2P結(jié)構(gòu)比較適合應(yīng)用于局域網(wǎng)中。

3 分布式體系結(jié)構(gòu)

下面我們給出結(jié)合了C/S和P2P優(yōu)點(diǎn)的體系結(jié)構(gòu),即分布式體系結(jié)構(gòu)。該結(jié)構(gòu)非常適合用于MMOG游戲中,該結(jié)構(gòu)的玩家分布在不同的地區(qū)甚至有可能是不同的國家。它有多種設(shè)計(jì)和實(shí)現(xiàn)方式,鏡像游戲服務(wù)器架構(gòu)是一種很有代表性且比較常用的方式,如下圖所示:

 

 

在采用分布式體系結(jié)構(gòu)的系統(tǒng)中,當(dāng)客戶端登錄時(shí),根據(jù)“就近原則”,它會(huì)連接到與自己網(wǎng)絡(luò)延遲較小的那臺(tái)服務(wù)器上。由每個(gè)服務(wù)器來維護(hù)游戲狀態(tài)的一致性,客戶端和服務(wù)器之間的通信仍然類似于C/S結(jié)構(gòu),而鏡像服務(wù)器之間通過P2P模式進(jìn)行連接和交互。

在分布式體系結(jié)構(gòu)中,每個(gè)鏡像服務(wù)器都保存一份游戲狀態(tài)備份(就像P2P體系結(jié)構(gòu)中的客戶端一樣),這樣就消除了C/S體系結(jié)構(gòu)中的弊端,即消除了服務(wù)器成為制約游戲的瓶頸的問題和一臺(tái)服務(wù)器癱瘓后對(duì)游戲的同步影響問題。相對(duì)于P2P結(jié)構(gòu),此架構(gòu)保存游戲狀態(tài)的服務(wù)器數(shù)量較少,因而要達(dá)到游戲同步是比較容易的。

 

 

--- 版權(quán)最終歸艾銻無限所有http://www.wgjkw.cn/ 如需轉(zhuǎn)載,請(qǐng)標(biāo)明出處。

 

相關(guān)文章

IT外包服務(wù)
二維碼 關(guān)閉