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

正文內(nèi)容

基于udp的局域網(wǎng)聊天系統(tǒng)-全文預(yù)覽

2024-12-08 03:25 上一頁面

下一頁面
  

【正文】 AR closesocket(SOCKET s)。如果沒有錯誤發(fā)生, recv()返回總共接收的字節(jié)數(shù)。 recv()調(diào)用用于鑰紀(jì) 紀(jì) 數(shù) s 指定的已連接的數(shù)據(jù)報或流套接字上接收輸入數(shù)據(jù),格式如下: int PASCAL FAR recv(SOCKET s, char FAR *buf, int len, int flags)。 buf 指向存有發(fā)送數(shù)據(jù)的緩沖區(qū)的指針,其長度由 len 指定。 5 數(shù)據(jù)傳輸 ──send() 與 recv() 當(dāng)一個連接建立以后,就可以傳輸數(shù)據(jù)了。否則它返回 SOCKET_ERROR。 listen()需在 accept()之前調(diào)用,其調(diào)用格式如下: int PASCAL FAR listen(SOCKET s, int backlog)。調(diào)用前,參數(shù) addr 指向一個初始值為空的地址結(jié)構(gòu),而 addrlen 的初始值為 0;調(diào)用 accept()后,服務(wù)器等待從編號為 s 的套接字上接受客戶連接請求,而連接請求是由客戶方的 connect()調(diào)用發(fā)出的。如果沒有錯誤發(fā)生, accept()返回一個 SOCKET 類型的值,表示接收到的套接字的描述符。 參數(shù) s 為本地套接字描述符,在用做 accept()調(diào)用的參數(shù)前應(yīng)該先調(diào)用過listen()。在面向連接的協(xié)議中,該調(diào)用導(dǎo)致本地系統(tǒng)和外部系統(tǒng)之間連接實際建立。參數(shù) name 指出說明對方套接字地址結(jié)構(gòu)的指針。這樣做的優(yōu)點是程序員不必為每一數(shù)據(jù)指定目的地址,而且如果收 到的一個數(shù)據(jù)報,其目的端口未與任何套接字建立 “ 連接 ” ,便能判斷該端靠紀(jì) 紀(jì) 可操作。如果沒有錯誤發(fā)生, bind()返回 0。其調(diào)用格式如下: int PASCAL FAR bind(SOCKET s, const struct sockaddr FAR * name, int namelen)。根據(jù)這三個參數(shù)建立一個套接字,并將相應(yīng)的資源分配給它,同時返回一個整型套接字號。參數(shù) af 指定通信發(fā)生的區(qū)域,UNIX 系統(tǒng)支持的地址族有: AF_UNIX、 AF_INET、 AF_NS 等,而 DOS、 WINDOWS 中僅支持 AF_INET,它是網(wǎng)際網(wǎng)區(qū)域。 具體的說:一個服務(wù)器應(yīng)用程序一般偵聽一個特定的端口等待客戶端的連接請求,當(dāng)一個連接請求到達(dá)時,客戶端和服武器端建立一個通信連接,在連接過程中,客戶端被分配一個本地端口與一個 socket 建立連接,客戶端通過寫 socket來通知服務(wù)器,以讀 socket 中的信息,類似的服務(wù)器 也獲得一個本地端口,它需青島理工大學(xué)畢業(yè)設(shè)計(論文) 8 要一個新的端口號來偵聽原始端口上的其他連接請求。 UDP 適用于不需要 TCP 可靠機(jī)制的情形,比如,當(dāng)高層協(xié)議或應(yīng)用程序提供錯誤和流控制功能的時候。 UDP 協(xié)議基本上是 IP 協(xié)議與上層協(xié)議的接口。設(shè)計界面是,簡化界面的復(fù)雜性,模擬 等現(xiàn)有即時通訊工具的界面,使用戶能很容易看懂并使用。當(dāng)客戶端用戶的登錄狀態(tài)改變時(如在線改為隱身),客戶端首先將新的登錄狀態(tài)發(fā)送給服務(wù)器,服務(wù)器在其數(shù)據(jù)庫中查找與之是好友關(guān)系的并且在線的用戶,再將其發(fā)送給這些用戶的客戶端,然后更改其相應(yīng)的登錄狀態(tài) [3]。當(dāng)客戶端用戶登陸成功后,才可以進(jìn)行與好友通信,發(fā)送文件,查找好友,添加刪除好友,查看好友資料等操作。 提供基于 UDP 網(wǎng)絡(luò)的即時消息傳送、消息廣播、實時聊天、文件傳輸?shù)裙δ堋?為了適應(yīng)校園網(wǎng)的建設(shè),實現(xiàn)校園網(wǎng)內(nèi)進(jìn)行消息發(fā)布,學(xué)生交流,師生交流,網(wǎng)上作業(yè)等功能。 局域網(wǎng)聊天系統(tǒng)的意義及特點 現(xiàn)在, 企業(yè)、機(jī)關(guān)、學(xué)校 都 建立起了自己的局域網(wǎng) ,在局域網(wǎng),雖然可以通過文件共享的方式進(jìn)行通訊,但單單使用這種方式,是非常不方便的,首先,在局域網(wǎng)里的網(wǎng)上鄰居里,只能看到機(jī)器名,不清楚對方是誰,也不知道對方機(jī)器里有什么資源可以共享,而且,當(dāng)局域網(wǎng)的機(jī)器很多時,這種方式更加麻煩。但是有服務(wù)器的通訊軟件,有著不可比擬的優(yōu)勢:可以發(fā)送離線消息,不管用戶當(dāng)時是否在線,下次上線時,就可以看到這條消息了。網(wǎng)絡(luò)版的聊天軟件種類繁多,如 、 OICQ、 MSN 等,實現(xiàn)了隨時隨地上網(wǎng)聊天,給人們帶來了很大的方便,也使世界好 象 一下子縮小了,不管你在哪里,只要你上了網(wǎng),打開這些軟件,就可以給你的朋友發(fā)信息,不管對方是否也同時在線,只要知道他有號碼。服務(wù)器端具有服務(wù)器端口設(shè)置,維護(hù)客戶端個人信息,記錄客戶端狀態(tài),分配 賬號 等功能;客戶端具有服務(wù)器地址及端口設(shè)置,用戶注冊,用戶登陸,添加好友和刪除好友,查看好友信息,給好友發(fā)送消息,簡單文件傳輸?shù)裙δ?。青島理工大學(xué)畢業(yè)設(shè)計(論文) I 摘 要 隨著網(wǎng)絡(luò)技術(shù)的發(fā)展及人們生活的需求,網(wǎng)絡(luò)聊天已越來越受到人們的 青睞 。此網(wǎng)絡(luò)聊天工具采用客戶端 /服務(wù)器( C/S)模式 ,客戶端采用 UDP與服務(wù)器連接,客戶端與客戶端之間通過 UDP 互相通訊。 The client have the ability setting the IP address and port of the server, user register, user login, adding friends and deleting friends, finding and looking the user’s information, sending message to friends, simple file translation, timing noting ,timing shutting the puter and so on. It adapts to use the work chatting tool in local inter, it’s operation is simple , the flexibility is good and movement is also stable. KEY WORDS: work munication, client/server mechanism, UDP, SOCKET 青島理工大學(xué)畢業(yè)設(shè)計(論文) III 目 錄 第 1 章 緒 論 ........................................................ 1 項目背景 ....................................................... 1 局域網(wǎng)聊天系統(tǒng)的意義及特點 ..................................... 1 第 2 章 需求分析 ..................................................... 3 功能需求 ....................................................... 3 數(shù)據(jù)流 ......................................................... 5 性能需求 ....................................................... 6 第 3 章 系統(tǒng)總體設(shè)計 ................................................. 7 相關(guān)開發(fā)技術(shù)的原理性說明 ....................................... 7 UDP 協(xié)議介紹 ............................................... 7 Socket 介紹 ................................................ 7 客戶 /服務(wù)器程序的介紹 ..................................... 12 開發(fā)環(huán)境的選擇 ................................................ 13 系統(tǒng)開發(fā)工具的選擇 ....................................... 13 數(shù)據(jù)庫系統(tǒng)的選擇 ......................................... 13 技術(shù)選取及搭配 ................................................ 15 數(shù)據(jù)庫的設(shè)計 .................................................. 15 第 4 章 系統(tǒng)詳細(xì)設(shè)計及實現(xiàn) .......................................... 18 ................................................ 18 服務(wù)器端的構(gòu)成 ............................................ 19 服務(wù)器端的主要功能實現(xiàn) .................................... 20 客戶端的設(shè)計 .................................................. 27 界面庫的實現(xiàn) .................................................. 32 第 5 章 結(jié)論與展望 .................................................. 36 致 謝 .............................................................. 37 參 考 文 獻(xiàn) ........................................................ 38 青島理工大學(xué)畢業(yè)設(shè)計(論文) 1 第 1 章 緒 論 項目背景 網(wǎng)絡(luò)聊天已經(jīng)成為人們工作生活中傳遞信息、交流感情的重要工具。其中的一些軟件(如飛鴿傳書)非常的小巧,并且是不需要服務(wù)器的???之,這種軟件在局域網(wǎng)上,還是有很大的用途的,為局域網(wǎng)上通訊,帶來極大的方便 [1]。 并能最大限度地利用現(xiàn)有的網(wǎng)絡(luò)資源,極大地提高工作效率。通過構(gòu)建該系統(tǒng),客戶端通過賬戶認(rèn)證即可進(jìn)入該系統(tǒng)。客戶端將登陸信息或者注冊信息發(fā)送給服務(wù)器,進(jìn)行登陸或者新賬戶注冊處理,如果發(fā)生錯誤,如賬號錯誤密碼錯誤等,服務(wù)器再 將錯誤信息返回給客戶端進(jìn)行處理,否則反正正確登陸的信息,并將客戶相關(guān)的好友信息以及離線消息等數(shù)據(jù)發(fā)送給客戶端進(jìn)行相應(yīng)的處理,這就完成了用戶登陸或者用戶注冊的數(shù)據(jù)傳輸。查找好友時,服務(wù)器按照客戶端發(fā)送給服務(wù)器的查找條件返回相應(yīng)的復(fù)合條件的用戶列表,客戶端將其粗略的現(xiàn)實出來,如果需要查看詳細(xì)的用戶信息,客戶端在發(fā)送需要查看用戶的賬號給服務(wù)器,服務(wù)器端在查找相應(yīng)用戶的詳細(xì)信息,并且返回給客戶端,客戶端再將其現(xiàn)實出來。 (2) 易 操作性,程序簡單易懂,容易上手使用。是一個簡單的面向數(shù)據(jù)報的傳輸層協(xié)議, IETF RFC 768 是 UDP 的正式規(guī)范。由于 UDP 比較簡單, UDP 頭包含很少的字節(jié),比 TCP 負(fù)載消耗少。也就是說網(wǎng)絡(luò)上兩個或兩個以上雙工方式通信的進(jìn)程之間總有一個連接,這個連接的端點成為套接字,套接字是在比較低的層次上通信的 [3]。 該調(diào)用要接收三個參數(shù): af、 type、 protocol。參數(shù) protocol 說明該套接字使用的特定協(xié)議,如果調(diào)用者不希望特別指定使用的協(xié)議,則置為 0,使用默認(rèn)的連接模式。 bind()將套接字地址(包括本地主機(jī)地址和本地端口地址)與所創(chuàng)建的套接字號聯(lián)系起來,即將名字賦予套接字,以指定本地半相關(guān)。 namelen 表明了 name 的長度。青島理工大學(xué)畢業(yè)設(shè)計(論文) 9 無連接的套接字進(jìn)程也可以調(diào)用 connect(),但這時在進(jìn)程之間沒有實際的報文交換,調(diào)用將從本地操作系統(tǒng)直接返回。 參數(shù) s 是欲建立連接的本地套接字描述符。否則返回值 SOCKET_ERROR。 accept()的調(diào)用格式如下: SOCKET PASCAL FAR accept(SOCKET s, struct sockaddr FAR* addr, int FAR* addrlen)。 addrlen 為客戶方套接字地址的長度(字節(jié)數(shù))。參數(shù) addr 和 addrlen 存放客戶方的地址信息。 青島理工大學(xué)畢業(yè)設(shè)計(論文) 10 4 監(jiān)聽連接 ──listen() 此調(diào)用用于面向連接服務(wù)器,表明它愿意接收連接。如果沒有錯誤發(fā)生, listen()返回 0。它在調(diào)用socket()分配一個流套接字,且調(diào)用 bind()給 s 賦于一個名字之后調(diào)用,而且一定要在 accept()之前調(diào)用。 參數(shù) s 為已連接的本地套接字描述符。否則它返回 SOCKET_ERROR。 flags 指定傳輸控制方式,如是否接收帶外數(shù)據(jù)等。 6關(guān)閉套接字 ──closesocket() closesocket()關(guān)閉套接字 s,并釋放分配給該套接字的資源;如果 s 涉及一個打開的 TCP 連接,則該連接被釋放。否則返回值 SOCKET_ERROR。 圖 無連接的套接字調(diào)用時序圖 青島理工
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1