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

正文內(nèi)容

基于udp協(xié)議的聊天程序設(shè)計(jì)報(bào)告-展示頁(yè)

2025-02-16 03:17本頁(yè)面
  

【正文】 理客戶端的線程。當(dāng)服務(wù)器進(jìn)程處理完一個(gè)客服進(jìn)程請(qǐng)求的信息之后,由接著等待其他客戶的請(qǐng)求。 從以上特點(diǎn)可知, UDP 提供的是無(wú)連接的、不可靠的數(shù)據(jù)傳送方式,是一種盡力而為的數(shù)據(jù)交付服務(wù)。換句話說(shuō),因?yàn)?UDP發(fā)送者不能夠檢測(cè)擁塞,所以像使用包隊(duì)列和丟棄技術(shù)的路由器這樣的網(wǎng)絡(luò) 4 基本設(shè)備往往就成為降低 UDP 過(guò)大通信量的有效工具。 UDP 傳送數(shù)據(jù)較 TCP 快速,系統(tǒng)開(kāi) 銷也少。 UDP 不對(duì)收到的數(shù)據(jù)進(jìn)行排序,在 UDP 報(bào)文的首部中并沒(méi)有關(guān)于數(shù)據(jù)順序的信息(如 TCP 所采用的序號(hào)),而且報(bào)文不一定按順序到達(dá)的,所以接收端無(wú)從排起。如果在從發(fā)送方到接收方的傳遞過(guò)程中出現(xiàn)數(shù)據(jù)報(bào)的丟失,協(xié)議本身并不能做出任何檢測(cè)或提示,由于排除了信息可靠傳遞機(jī)制,將安全和排序 等功能移交給上層應(yīng)用來(lái)完成,極大降低了執(zhí)行時(shí)間,使速度得到了保證。如果某個(gè)數(shù)據(jù)報(bào)在傳輸過(guò)程中被第三方篡改或者由于線路噪音等原因受到損壞,發(fā)送和接收方的校驗(yàn)計(jì)算值將不會(huì)相符,由此 UDP 協(xié)議可以檢測(cè)是否出錯(cuò)。UDP 協(xié)議使用報(bào)頭中的校驗(yàn)值來(lái)保證數(shù)據(jù)的安全。從理論上說(shuō),包含報(bào)頭在內(nèi)的數(shù)據(jù)報(bào)的最大長(zhǎng)度為 65535 字節(jié)。因?yàn)閳?bào)頭的長(zhǎng)度是固定的,所以該域主要被用來(lái)計(jì)算可變長(zhǎng)度的數(shù)據(jù)部分(又稱為數(shù)據(jù)負(fù)載)。一般來(lái)說(shuō),大于49151 的端口號(hào)都代表動(dòng)態(tài)端口。有的網(wǎng)絡(luò)應(yīng)用只能使用預(yù)先為其預(yù)留或注冊(cè)的靜態(tài)端口;而另外一些網(wǎng)絡(luò)應(yīng)用則可以使用未被注冊(cè)的動(dòng)態(tài)端口。正是采用這一機(jī)制實(shí)現(xiàn)對(duì)同一時(shí)刻內(nèi)多項(xiàng)應(yīng)用同時(shí)發(fā)送和接收數(shù)據(jù)的支持。每一個(gè)數(shù)據(jù)報(bào)的前 8 個(gè)字節(jié)用來(lái)包含報(bào)頭信息,剩余字節(jié)則用來(lái)包含具體的傳輸數(shù)據(jù)。 UDP協(xié)議的主要作用是將網(wǎng)絡(luò)數(shù)據(jù)流量壓縮成數(shù)據(jù)報(bào)的形式。UDP 協(xié)議從問(wèn)世至今已經(jīng)被使用了很多 年,雖然其最初的光彩已經(jīng)被一些類似協(xié)議所掩蓋,但是即使是在今天, UDP 仍然不失為一項(xiàng)非常實(shí)用和可行的網(wǎng)絡(luò)傳輸層協(xié)議。 課程設(shè)計(jì)的內(nèi)容 UDP信 課程設(shè)計(jì)要求 基于 UDP 二 . UDP 協(xié)議的理解: UDP 協(xié)議是英文 UserDatagramProtocol 的縮寫(xiě),即用戶數(shù)據(jù)報(bào)協(xié)議,主要用來(lái)支持那些需要在計(jì)算機(jī)之間傳輸數(shù)據(jù)的網(wǎng)絡(luò)應(yīng)用。 關(guān)鍵詞 : 網(wǎng)絡(luò)通訊;客戶端 /服務(wù)器模型;用戶數(shù)據(jù)報(bào)協(xié)議;套接字 1 一、需求分析 課程設(shè)計(jì)目的 開(kāi)發(fā)一個(gè)專用于實(shí)現(xiàn)兩臺(tái)計(jì)算機(jī)之間即時(shí)通訊的連接時(shí)過(guò)多的浪費(fèi)網(wǎng)絡(luò)資源。 本課題是開(kāi)發(fā)一個(gè)基于 UDP 的局域網(wǎng)聊天系統(tǒng) ,運(yùn)用軟件工程的設(shè)計(jì)流程,綜合運(yùn)用數(shù)據(jù)庫(kù)編程技術(shù)、 Windows程序設(shè)計(jì)技術(shù)、網(wǎng)絡(luò)通訊技術(shù),此網(wǎng)絡(luò)聊天工具采用客戶端 /服務(wù)器( C/S)模式 ,客戶端采用 UDP 與服務(wù)器連接,客戶端與客戶端之間通過(guò) UDP 互相通訊。 編號(hào): 計(jì)算機(jī)網(wǎng)絡(luò)課程設(shè)計(jì) 題 目: 基于 UDP 的聊天程序 系 別: 計(jì)算機(jī)科學(xué)與工程學(xué)院 摘要 隨著網(wǎng)絡(luò)技術(shù)的發(fā)展及人們生活的需求,網(wǎng)絡(luò)聊天已越來(lái)越受到人們的青睞 。網(wǎng)絡(luò)聊天已經(jīng)成為人們工作生活中傳遞信息、交流感情的重要工具,給人們帶來(lái)了很大的方便。服務(wù)器端具有服務(wù)器端口設(shè)置,此聊天工具能實(shí)現(xiàn)多人聊天功能,適用于局域網(wǎng)使用的網(wǎng)絡(luò)聊天工具,其操作簡(jiǎn)單,靈活性好,運(yùn)行也比較穩(wěn)定。并且避免了服務(wù)器忙或與服務(wù)器無(wú)法連接UDP并理解網(wǎng)絡(luò)編程中面向無(wú)連接的概念。包括網(wǎng)絡(luò)視頻會(huì) 2 議系統(tǒng)在內(nèi)的眾多的客戶 /服務(wù)器模式的網(wǎng)絡(luò)應(yīng)用都需要使用 UDP 協(xié)議。 UDP 協(xié)議直接位于 IP(網(wǎng)際協(xié)議)協(xié)議的頂層。一個(gè)典型的數(shù)據(jù)報(bào)就是一個(gè)二進(jìn)制數(shù)據(jù)的傳輸單位。 UDP 協(xié)議使用端口號(hào)為不同的應(yīng)用保留其各自的數(shù)據(jù)傳輸通道。數(shù)據(jù)發(fā)送一方(可以是客戶端或服務(wù)器端)將 UDP 數(shù) 據(jù)報(bào)通過(guò)源端口發(fā)送出去,而數(shù)據(jù)接收一方則通過(guò)目標(biāo)端口接收數(shù)據(jù)。因?yàn)?UDP 報(bào)頭使用兩個(gè)字節(jié)存放端口號(hào),所以端口號(hào)的有效范圍是從 0 到 65535。數(shù)據(jù)報(bào)的長(zhǎng)度是指包括報(bào)頭和數(shù)據(jù)部分在內(nèi)的總的字節(jié)數(shù)。數(shù)據(jù)報(bào)的最大長(zhǎng)度根據(jù)操作環(huán)境的不同而各異。不過(guò),一些實(shí)際應(yīng)用往往會(huì)限制數(shù)據(jù)報(bào)的大小,有時(shí)會(huì)降低到 8192 字節(jié)。校驗(yàn)值首先在數(shù)據(jù)發(fā)送 3 方通過(guò)特殊的算法計(jì)算得出,在傳遞到接收方之后,還需要再重新計(jì)算。 UDP 協(xié)議并不提供數(shù)據(jù)傳送的保證機(jī)制。 三 . UDP 協(xié)議特點(diǎn) UDP 傳送數(shù)據(jù)前并不與對(duì)方建立連接,即 UDP 是無(wú)連接的,在傳輸數(shù)據(jù)前,發(fā)送方和接收方相互交換信息使雙方同步。 UDP 對(duì)接收到的數(shù)據(jù)報(bào)不發(fā)送確認(rèn)信號(hào),發(fā)送端不知道數(shù)據(jù)是否被正確接收,也不會(huì)重發(fā)數(shù)據(jù)。 由于缺乏擁塞控制( congestion control),需要基于網(wǎng)絡(luò)的機(jī)制來(lái)減小因失控和高速 UDP 流量負(fù)荷而導(dǎo)致的擁塞崩潰效應(yīng)。數(shù)據(jù)報(bào)擁塞控制協(xié)議 (DCCP)設(shè)計(jì)成通過(guò)在諸如流媒體類型的高速率 UDP 流中增加主機(jī)擁塞控制來(lái)減小這個(gè)潛在的問(wèn)題。 四 . 基于 C/S 的多 客服端相互通信原理分析 : 在 C/S 模式中, 它是在分散式 ,集中式,以及分布式基礎(chǔ)上發(fā)展起來(lái)的一種新模型,目前大多數(shù)網(wǎng)絡(luò)通信以及應(yīng)用都屬于這種模型, C/S 模式 將一個(gè)網(wǎng)絡(luò)事務(wù)分為兩部分,一部分是客戶端 (Client) ,他為用戶提供網(wǎng)絡(luò)請(qǐng)求服務(wù)的接口,另一部分是服務(wù)端( Server) ,它負(fù)責(zé)接受用戶對(duì)服務(wù)的請(qǐng)求,并將這些服務(wù)透明的提供給用戶,既適用于實(shí)際應(yīng)用的程序,又實(shí)用于真正的計(jì)算裝置,舉例來(lái)說(shuō),我們到飯店吃飯時(shí),要首先提出請(qǐng)求吃什么,屬于客戶端,飯店服務(wù)員根據(jù)請(qǐng)求提供相應(yīng)的服務(wù),屬于服務(wù)端,至于相應(yīng)的飯菜是由 哪一個(gè)廚師來(lái)做,則由飯店的服務(wù)員去聯(lián)系,而客戶端只需要和服務(wù)器打交道就行了,從程序?qū)崿F(xiàn)上來(lái)說(shuō),客戶端和服務(wù)器打交道實(shí)際上是兩個(gè)進(jìn)程打交道,服務(wù)端啟動(dòng) server 進(jìn)程,并等待客戶端與其聯(lián)系,而客戶端則啟動(dòng)客戶進(jìn)程和服務(wù)器打交道。 五. 套接字編程原理分析: 5 圖 套接字編程原理圖 注釋: socket(), 使用前創(chuàng)建一個(gè)新的套接字 ; bind(), 將套接字地址與所創(chuàng)建的套接字號(hào)聯(lián)系起來(lái) ; send()與 recv(), 數(shù)據(jù)的發(fā)送與接收 ; closesocket(), 關(guān)閉套接字 。與客戶端建立連接,實(shí)現(xiàn) socket 通信,對(duì)于服務(wù)器端是先接受數(shù)據(jù)流然后再發(fā)送數(shù)據(jù)流,客服端發(fā)送過(guò)來(lái)的信息經(jīng)服務(wù)器端然后轉(zhuǎn)發(fā)到其他所有的客戶端,服務(wù)器端相當(dāng)于中間的 橋梁。 七、詳細(xì)設(shè)計(jì) 服務(wù)器端: 8 圖 服務(wù)器端整體設(shè)計(jì)流程圖 客戶端建立一個(gè) seversocket 的類,并且創(chuàng)建一個(gè) vector 用來(lái)管理客戶創(chuàng)建服務(wù)端接口 建立一個(gè) seversocket 的類 svsocket 創(chuàng)建一個(gè)容器用來(lái)管理客戶端進(jìn)程 開(kāi)始監(jiān)聽(tīng),監(jiān)聽(tīng)是否有客戶端連接,有的話與其建立連接 分配 ID 監(jiān)聽(tīng)線程 監(jiān)聽(tīng)端口是否有消息傳入 如果有的話接收信息 再將信息發(fā)送到其他的所有的客服端 當(dāng)某客戶離開(kāi),結(jié)束他與其他人的通信 為客戶端連接創(chuàng)建線程 從容器 vector 中刪除該線程 表示該線程已經(jīng)離開(kāi)聊天室,結(jié)束兩者之間連接 9 端的線程,然后就開(kāi)始檢測(cè),如果有客戶端請(qǐng)求與服務(wù)器連接就與其
點(diǎn)擊復(fù)制文檔內(nèi)容
環(huán)評(píng)公示相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1