freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

p2p聊天軟件的實現(xiàn)設(shè)計-點對點-文庫吧資料

2024-12-15 10:17本頁面
  

【正文】 別在客戶端或服務(wù)器端的兩端內(nèi),設(shè)置“用戶忙”事件中, 通過 winsock 控件的 SendData 方法發(fā)送“ bu”字符串消息。 分別在客戶端或服務(wù)器端的兩端內(nèi),設(shè)置“離線狀態(tài)”事件中, 通過 winsock 控件的 SendData 方法發(fā)送“ dn”字符串消息。 發(fā)送用戶狀態(tài)協(xié)議 分別在客戶端或服務(wù)器端的兩端內(nèi),設(shè)置“上線狀態(tài)”事件中, 通過 winsock 控件的 SendData 方法發(fā)送“ up”字符串消息。 分別在客戶端或服務(wù)器端的兩端內(nèi),在設(shè)置了繪圖模式(即畫線還是畫圓)后,當(dāng)鼠標(biāo) 左鍵繪制完成后,觸發(fā)鼠標(biāo)的 mouseup 事件,如果是畫線,通過鼠標(biāo)讀取的四個坐標(biāo)值將圖形繪制在控件上,將“ p”字符串后面通過逗號分隔,連接上四個坐標(biāo)值,然后將連接后的字符串通過 winsock 控件的 SendData 方法發(fā)送;如果是畫圓,通過鼠標(biāo)將已經(jīng)計算好的圓的圓心和半徑三個值讀取將圖形繪制在控件上,將“ c” 字符串后面通過逗號分隔,連接上三個值,然后將連接后的字符串通過 winsock 控件的 SendData方法發(fā)送。 軟件協(xié)議 設(shè)計 發(fā)送接收聊天數(shù)據(jù)協(xié)議 通聊天信息 分別在客戶端或服務(wù)器端的兩端內(nèi),在發(fā)送按鈕讀取要發(fā)送的字符串后,在字符串前面連接“ s”字符串,在連接獲取當(dāng)前系統(tǒng)的時間,將連接后的字符串通過 winsock控件的 SendData 方法發(fā)送。服務(wù)器端在接收數(shù)據(jù)事件里,判斷數(shù)據(jù),如果是以 p 打頭的,那么將數(shù)據(jù)解析,執(zhí)行 picture控件的 line方法;如果是以 c打頭的,那么將數(shù)據(jù)解析,執(zhí)行 picture控件的 circle 方法,并且發(fā)給服務(wù)器端繪圖邊上且顯示相同的圖形。 TextBox2021 屆湖北汽車汽車工業(yè)學(xué)院畢業(yè)設(shè)計(論文) 控件用來輸入畫點或者畫圓的數(shù)據(jù),拖放兩個按鈕,分別是畫點和畫圓,分別編輯它們的單擊事 件,在事件里讀取 TextBox 的數(shù)據(jù),調(diào)用 picture 控件的 line 和 circle 方法,實現(xiàn)畫點和畫圓。 :在 winsock 的 DataArrival 事件,即當(dāng)有數(shù)據(jù)時,接收數(shù)據(jù),并將其用 listbox 列表框顯示出來。 :當(dāng)收到服務(wù)器端回應(yīng)時,觸發(fā) connect 事件,編寫事件代碼,彈出“連接成功提示框”。 二.客戶端 :通過 TextBox 控件,設(shè)置要連接的服務(wù)器的 IP地址,和遠(yuǎn)程端口號。另一方在接收數(shù)據(jù)事 件里,判斷數(shù)據(jù),如果是以 p打頭的,那么將數(shù)據(jù)解析,執(zhí)行picture 控件的 line 方法;如果是以 c打頭的,那么將數(shù)據(jù)解析,執(zhí)行 picture 控件的circle 方法,并且發(fā)送給客戶端的繪圖板上且顯示相同的圖形。 TextBox控件用來輸入畫點或者畫圓的數(shù)據(jù),拖放兩個按鈕,分別是畫點和畫圓,分別編輯它們的單擊事件,在事件里讀取 TextBox 的數(shù)據(jù),調(diào)用 picture 控件的 line 和 circle 方法,實現(xiàn)畫點和畫圓。 :在 winsock 的 DataArrival 事件,即當(dāng)有數(shù)據(jù)時,接收數(shù)據(jù),并將其用 listbox 列表框顯示出來。 :對客戶端進(jìn)行監(jiān)聽發(fā)起命令??蛻舳伺c服務(wù)器端的信息傳遞是采用 P2P 模式的,服務(wù)器可負(fù)責(zé)對客戶端進(jìn)行監(jiān)聽和發(fā)起繪圖聊天,服務(wù)器端可對客戶端進(jìn)行連接狀態(tài)的檢測。 :( 1)發(fā)送接收聊天數(shù)據(jù)協(xié)議;( 2)用戶在線與否協(xié)議;( 3)用戶離線與否協(xié)議;( 4)用戶忙的協(xié)議;( 5)用戶離開協(xié)議;( 6)用戶接收消息提示協(xié)議; :( 1)連接服務(wù)器端協(xié)議;( 2)監(jiān)聽客戶端協(xié)議;( 3)斷開連接協(xié)議; : (1)進(jìn)行畫點協(xié)議;( 2)進(jìn)行劃線協(xié)議; (3)進(jìn)行畫圓協(xié)議??蛻舳伺c服務(wù)器端可以發(fā)起 P2P 模式的聊天,可以進(jìn)行簡單的繪圖功能。需要分別實現(xiàn)服務(wù)器端和客戶端的軟件設(shè)計。 ? Error 事件 當(dāng)在工作中發(fā)生任何錯誤都會引起這個事件。 ? DataArrival 事件 當(dāng)建立連接之后,系統(tǒng)接受到了新的數(shù)據(jù)就會觸發(fā)這個事件。 SendProgress 事件記錄了當(dāng)前狀態(tài)下剩余字節(jié)數(shù)與已發(fā)送的字節(jié)數(shù)。 控件主要事件 ? Close 事件 遠(yuǎn)程機(jī)器關(guān)閉連接時候就會觸發(fā) ? Connect 事件 連接建立好了之后,可以進(jìn)行通信時觸發(fā) (客戶端 ) ? ConnectRequest 事件 當(dāng)本地 PC 接收到遠(yuǎn)程 PC 發(fā)送的連接請求時候,控 件的ConnectRequest 事件將會被觸發(fā)。 ? GetData 方法 當(dāng)本地計算機(jī)接收到遠(yuǎn)程計算機(jī)的數(shù)據(jù)時,數(shù)據(jù)存放 在緩沖區(qū)中,要從緩沖區(qū)中取出數(shù)據(jù),可以使用 GetData 方法。 Connect 方法調(diào)用的規(guī)范為: Connect, RemoteHost,RemotePort ? SendData 方法當(dāng)連接建立后,要發(fā)送數(shù)據(jù)就可以調(diào)用 SendData 方法,該方法只有一個參數(shù),就是要發(fā)送的數(shù)據(jù)。 ? Accept 方法 當(dāng)服務(wù)器接收到客戶端的連接 請求后,服務(wù)器有權(quán)決定是否接受客戶端的請求。 ? Listen 方法 Listen 方法只在使用 TCP 協(xié)議時有用。格式: Winsock 對象 .getdata 變量 [,數(shù)據(jù)類型 [,最大長度 ]] ? Close 方法 關(guān)閉當(dāng)前連接。格式: Winsock 對象 .accept Request ID ? Senddata 方法 用于發(fā)送數(shù)據(jù)。格式: Winsock 對象 .connect [遠(yuǎn)程主機(jī) IP,遠(yuǎn)程端口 ] ? Listen 方法 方法用于服務(wù)器端口程序,等待客戶訪問。 sckClosing 8 同級計算機(jī)正在關(guān)閉連接。 sckHostResolved 5 已識別主計算機(jī) sckConnecting 6 正在連接中。 ? ByteReceived 屬性 返回當(dāng)前接收緩沖區(qū)里的字節(jié)數(shù) ? State 屬性 返回 WinSock 控件此時的狀態(tài)常數(shù)值的描述。在客戶端口,當(dāng)控件的 Connect 方法被使用了后,遠(yuǎn)2021 屆湖北汽車汽車工業(yè)學(xué)院畢業(yè)設(shè)計(論文) 程計算機(jī)的 IP 地址就賦值給了 RemoteHostIP 屬性,而在服務(wù)器端,遠(yuǎn)程計算機(jī)(客戶端)的 IP 地址就賦給了這個屬性 ,當(dāng)在 ConnectRequest 事件后。 ? SocketHandle 屬性 返回當(dāng)前 socket 連接的語句,這是只讀屬性。sckTCPProtocol 和 sckUDPProtocol 分別是可選的協(xié)議是 TCP 和 UDP 對應(yīng)的 VB的常量,Winsock 控件默認(rèn)的協(xié)議是 TCP。就像定時器控件一樣的作用, WinSock 控件運行的時候無一個可視界面。 Winsock 控件的使用與方法 WinSock 控件能夠使用 UDP 協(xié)議(用戶數(shù)據(jù)報協(xié)議) 或 TCP 協(xié)議(數(shù)據(jù)傳輸協(xié)議)連接到遠(yuǎn)程的機(jī)器并且進(jìn)行數(shù)據(jù)互換。Windows Sockets 規(guī)范定義并且記錄了怎么使用 API 與 Inter 協(xié)議族( IPS,通常我們指的是 TCP/IP)連接,尤其要指出的是所有的 Windows Sockets 實現(xiàn)都支持流套接口和數(shù)據(jù)報套接口 .應(yīng)用程序使用 Windows Sockets 的 API 實現(xiàn)相互之間的通信。 2021 屆湖北汽車汽車工業(yè)學(xué)院畢業(yè)設(shè)計(論文) 任何可以與 Windows Sockets 兼容能力實現(xiàn)協(xié)作工作的應(yīng)用程序就都可以是具有 Windows Sockets 接口。 TCP 連接狀態(tài)圖如圖 : 2021 屆湖北汽車汽車工業(yè)學(xué)院畢業(yè)設(shè)計(論文) 圖 TCP 連接狀態(tài)圖 Winsock 的介紹和使用方法 Winsock 的介紹 Windows 下網(wǎng)絡(luò)編程的規(guī)范- Windows Sockets 是 Windows 下得到廣泛應(yīng)用的、開放的、支持多種協(xié)議的網(wǎng)絡(luò)編程接口。 (4) 接收最終 FIN的原發(fā)送端 TCP(即執(zhí)行主動關(guān)閉的那一端)確認(rèn)這個 FIN。 (3) 一段時間后,接收到這個文件結(jié)束符的應(yīng)用進(jìn)程將調(diào)用 close關(guān)閉它的套接字。 (2) 接收到這個 FIN 的對端執(zhí)行 “被動關(guān)閉”( passive close),這個 FIN通過 TCP確定。 (1) 某個應(yīng)用進(jìn)程首先調(diào)用 close,稱該端執(zhí)行“主動關(guān)閉”( active close)。 三次握手完成, TCP 客戶端和服務(wù)器端 成功地建立連接,可以開始傳輸數(shù)據(jù)了。 服務(wù)器端收到 SYN報文,回應(yīng)一個 SYN ( SEQ=y) ACK(ACK=x+1)報文,進(jìn)入 SYN_RECV狀態(tài)。這種建立連接的方法可以防止產(chǎn)生錯誤的連接, TCP 使用的流量控制協(xié)議是可變大小的滑動窗口協(xié)議。 TCP—— 傳輸控制協(xié)議 TCP 是因特網(wǎng)中的傳輸層協(xié)議,使用三次握手協(xié)議建立連接。簡單的來說:TCP 完成發(fā)現(xiàn)傳輸?shù)膯栴},一旦有問題就發(fā)出信號,就要求重新傳輸,直到全部數(shù)據(jù)安全正確地傳輸給目標(biāo)。 TCP/IP 定義了電子設(shè)備怎么連入因特網(wǎng),還有數(shù)據(jù)怎么在它們之間傳輸?shù)臉?biāo)準(zhǔn)。實際上,窗體正是這樣一種類模塊,在其上可安放控件、可顯示窗體窗口??梢栽陬惸K中編出代碼建造新的對象。寫入標(biāo)準(zhǔn)模塊的代碼不必綁定在特定的應(yīng)用程序里;如果不小心使用名稱引用窗體與控件,就在許多不同的應(yīng)用程序中可重新使用標(biāo)準(zhǔn)模 塊。 標(biāo)準(zhǔn)模塊 標(biāo)準(zhǔn)模塊是應(yīng)用程序內(nèi)其它模塊訪問的過程與聲明的必要部件。如果要在文本編輯器中觀察窗體2021 屆湖北汽車汽車工業(yè)學(xué)院畢業(yè)設(shè)計(論文) 模塊,就還會看到窗體及它的控件的描述,包含它們的屬性設(shè)置值。 窗體模塊 窗體模塊是大多數(shù) VB 應(yīng)用程序的基礎(chǔ)。 每個標(biāo)準(zhǔn)模塊、類模塊和窗體模塊都可包含: 聲明:可將常數(shù)、變量、類型和動態(tài)鏈接庫過程聲明放在窗體、類或標(biāo)準(zhǔn)模塊的模塊級。獨立模塊應(yīng)該是標(biāo)準(zhǔn)模塊。最后可以能會導(dǎo)致幾個窗體中都有要執(zhí)行的公共代碼。 簡單的一些應(yīng)用程序可以只有一個窗體,應(yīng)用程序的所有的代碼都存在在窗體模塊里。 VB 模塊實現(xiàn) VB模塊也稱代碼模塊 : Visual Basic 的代碼儲存在模塊里。它簡單易學(xué)、效率高,且功能強(qiáng)大可以與 Windows 專業(yè)開發(fā)工具 SDK 相媲美。這也是 WEB 的重要缺點 , Napster 就是在這種情況下問世的,抓住人們對 MP3喜歡的需求, Napster 的 MP3 交換直接引發(fā)了網(wǎng)絡(luò)的 P2P 技術(shù)革命。在傳統(tǒng)的 WEB 方式里,要實現(xiàn)屏幕交換需要大力參與的服務(wù)器,通過把屏幕上傳到某個特定的網(wǎng)站,網(wǎng)民再到一些網(wǎng)站搜索需要的屏幕,再共享,這種方式的不便的地方可以很簡單的列舉??梢赃@樣來說, P2P 為網(wǎng)絡(luò)的信息搜索提供了全新的解決方法。 P2P 技術(shù)使用戶能夠深度搜索文檔,而且這種搜索無需通過 Web 服務(wù)器,也可以不受信息文檔格式和宿主設(shè)備的限制,可達(dá)到傳統(tǒng)目錄式搜索引擎。但是傳統(tǒng)的 WEB 方式實現(xiàn)功能,給服務(wù)器帶來很大的負(fù)擔(dān),造成了大量的成本支出, P2P 技術(shù)的出現(xiàn),使網(wǎng)絡(luò)中上任意兩臺計算機(jī)都可以建立實際的聯(lián)系,建立這樣的共享、安全的虛擬空 間,網(wǎng)民可以進(jìn)行很多的活動,這些活動可交互進(jìn)行,也可是同時進(jìn)行, P2P 技術(shù)可以協(xié)助企業(yè)與關(guān)鍵客戶加上合作伙伴之間建立出一種安全網(wǎng)上工作聯(lián)系方式 。 2021 屆湖北汽車汽車工業(yè)學(xué)院畢業(yè)設(shè)計(論文) 協(xié)同工作 大量的公司機(jī)構(gòu)分散,給客戶與員工提供方便、輕松的消息和協(xié)助的工具,變得更加重要。 Intel 也剝用等對計算機(jī)技術(shù)來設(shè)計它的 CPU,并且為它節(jié)省很大的費用,同一時刻對等計算的發(fā)展是以 PC 計算機(jī)資源的有效開發(fā)為根本出發(fā)點的,所以也極力受到 Intel 的極力推薦。 對等計算 采用 P2P技術(shù)等對計算,正是把網(wǎng)絡(luò)里面的大多數(shù)計算機(jī)暫時的不使用的計算能力相互連接起來,用積累能力進(jìn)行超級計算機(jī)的任務(wù)。這使網(wǎng)民在 Inter 上的共享的做法被提到了一個更高層次,使人們以更加的主動方式參與到網(wǎng)絡(luò)中去, P2P 給互聯(lián)網(wǎng)的分布、共享精神帶來了無限的遐想,從目前的應(yīng)用來看, P2P 的主要威力還集中體目前大范圍的共享、搜索優(yōu)勢里。 隱私保護(hù):在 P2P 網(wǎng)絡(luò)中,因為信息的繪圖聊天分散在各節(jié)點之間進(jìn)行而無需經(jīng)過某個集中環(huán)節(jié),用戶的隱私信息被竊聽和泄漏的可能性大大縮小。隨著硬件技術(shù)的發(fā)展,個人計算機(jī)的計算和存儲能力及網(wǎng)絡(luò)帶寬等性能依照摩爾定理高速增長。 P2P 網(wǎng)絡(luò)還能夠根據(jù)網(wǎng)絡(luò)帶寬、結(jié)點數(shù)、負(fù)載等變化不斷地做自適應(yīng)式的調(diào)整。 P2P 網(wǎng)絡(luò)一般在部分結(jié)點失效時能夠自動調(diào)整整體拓?fù)洌3制渌Y(jié)點的連通性。 2021 屆湖北汽車汽車工業(yè)學(xué)院畢業(yè)設(shè)計(論文) 健壯性: P2P 架構(gòu)天生具有耐攻擊、高容錯的優(yōu)點。整個體系都是完全分布的,完全不存在一些瓶頸。 P2P的技術(shù)特點 非中心化 (Decentralization):網(wǎng)絡(luò)資源與服務(wù)分散在所有結(jié)點上,信息繪圖聊天與服務(wù)實現(xiàn)都直接在結(jié)點之間進(jìn)行的,可不需要中間環(huán)節(jié)和服務(wù)器的介入,避免了可能的瓶頸。混合式的 P2P結(jié)
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1