資源描述:
《網(wǎng)絡(luò)編程課程設(shè)計-基于TCPIP的網(wǎng)絡(luò)文字聊天程序設(shè)計》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在學(xué)術(shù)論文-天天文庫。
1、網(wǎng)絡(luò)編程課程設(shè)計題目基于TCP/IP的網(wǎng)絡(luò)文字聊天程序設(shè)計系、部:計信學(xué)院學(xué)生姓名:學(xué)號:專業(yè):網(wǎng)絡(luò)工程班級:網(wǎng)絡(luò)1102班指導(dǎo)教師:完成時間:2013-12-18-23-前言Socket協(xié)議:socket的英文原義是“孔”或“插座”。在這里作為4BDSUNIX的進程通信機制,取后一種意思。socket非常類似于電話插座。以一個國家級電話網(wǎng)為例。電話的通話雙方相當(dāng)于相互通信的2個進程,區(qū)號是它的網(wǎng)絡(luò)地址;區(qū)內(nèi)一個單位的交換機相當(dāng)于一臺主機,主機分配給每個用戶的局內(nèi)號碼相當(dāng)于socket號。任何用戶在通話之前,首先要占有一部電話機,相當(dāng)于申請一個socket;同時要知道對方的號碼,相當(dāng)于對方
2、有一個固定的socket。然后向?qū)Ψ綋芴柡艚校喈?dāng)于發(fā)出連接請求(假如對方不在同一區(qū)內(nèi),還要撥對方區(qū)號,相當(dāng)于給出網(wǎng)絡(luò)地址)。對方假如在場并空閑(相當(dāng)于通信的另一主機開機且可以接受連接請求),拿起電話話筒,雙方就可以正式通話,相當(dāng)于連接成功。雙方通話的過程,是一方向電話機發(fā)出信號和對方從電話機接收信號的過程,相當(dāng)于向socket發(fā)送數(shù)據(jù)和從socket接收數(shù)據(jù)。通話結(jié)束后,一方掛起電話機相當(dāng)于關(guān)閉socket,撤消連接。在電話系統(tǒng)中,一般用戶只能感受到本地電話機和對方電話號碼的存在,建立通話的過程,話音傳輸?shù)倪^程以及整個電話系統(tǒng)的技術(shù)細節(jié)對他都是透明的,這也與socket機制非常相似。so
3、cket利用網(wǎng)間網(wǎng)通信設(shè)施實現(xiàn)進程通信,但它對通信設(shè)施的細節(jié)毫不關(guān)心,只要通信設(shè)施能提供足夠的通信能力,它就滿足了。至此,我們對socket進行了直觀的描述。抽象出來,socket實質(zhì)上提供了進程通信的端點。進程通信之前,雙方首先必須各自創(chuàng)建一個端點,否則是沒有辦法建立聯(lián)系并相互通信的。正如打電話之前,雙方必須各自擁有一臺電話機一樣。在網(wǎng)間網(wǎng)內(nèi)部,每一個socket用一個半相關(guān)描述:(協(xié)議,本地地址,本地端口)一個完整的socket有一個本地唯一的socket號,由操作系統(tǒng)分配。最重要的是,socket是面向客戶/服務(wù)器模型而設(shè)計的,針對客戶和服務(wù)器程序提供不同的socket系統(tǒng)調(diào)用??蛻?/p>
4、隨機申請一個socket(相當(dāng)于一個想打電話的人可以在任何一臺入網(wǎng)電話上撥號呼叫),系統(tǒng)為之分配一個socket號;服務(wù)器擁有全局公認的socket,任何客戶都可以向它發(fā)出連接請求和信息請求(相當(dāng)于一個被呼叫的電話擁有一個呼叫方知道的電話號碼)。-23-目錄前言-1-Socket協(xié)議:-1-一、課程設(shè)計任務(wù)書-3-(一)設(shè)計題目-3-(二)設(shè)計要求-3-(三)設(shè)計完成后要上交的材料-3-二、課程設(shè)計內(nèi)容-4-(一)設(shè)計功能:-4-(二)程序設(shè)計流程圖-4-(三)程序設(shè)計原理-7-(四)程序主要代碼-7-(五)程序功能截圖-21-三、課程設(shè)計心得與體會-23-四、參考文獻-23--23-一、
5、課程設(shè)計任務(wù)書(一)設(shè)計題目基于TCP/IP的網(wǎng)絡(luò)文字聊天程序設(shè)計(二)設(shè)計要求1、對設(shè)計方法的要求使用VisualC++6.0開發(fā)出在Windows控制臺或圖形界面下運行的程序。2、對設(shè)計內(nèi)容的要求實現(xiàn)網(wǎng)絡(luò)文字聊天程序的服務(wù)器端。實現(xiàn)網(wǎng)絡(luò)文字聊天程序的客戶端。主程序的結(jié)構(gòu)和流程。程序運行過程的截圖。網(wǎng)絡(luò)文字聊天程序的實現(xiàn)原理。網(wǎng)絡(luò)文字聊天程序?qū)崿F(xiàn)代碼的分析。3、對課程設(shè)計說明書的要求①設(shè)計思路與開發(fā)過程。②對主要代碼段要有較詳細的注釋。③對本次設(shè)計的評價、設(shè)計的收獲與建議。4、說明書為打印件(三)設(shè)計完成后要上交的材料1、將說明書和源程序文件與可執(zhí)行文件,一并存入光盤并上交(以班為單位,
6、每個學(xué)生一個文件夾,文件夾名為“學(xué)號_姓名”,這個目錄下存放工程文件夾與說明書的Word2003文檔)。2、設(shè)計說明書一份(必須用A4紙打印,不得少于20頁)。-23-二、課程設(shè)計內(nèi)容(一)設(shè)計功能:實現(xiàn)網(wǎng)絡(luò)文字聊天程序的基本功能。主要包括:1.TCP聊天服務(wù)器程序2.TCP聊天客戶端程序3.TCP聊天室程序(二)程序設(shè)計流程圖1、功能模塊圖TCP網(wǎng)絡(luò)聊天服務(wù)器程序功能模塊TCP網(wǎng)絡(luò)聊天客戶端程序TCP網(wǎng)絡(luò)聊天室程序-23-2、TCP網(wǎng)絡(luò)聊天服務(wù)器流程圖TCP聊天服務(wù)器程序建立服務(wù)器判斷地址創(chuàng)建失敗服務(wù)器創(chuàng)建成功退出-23-3、TCP網(wǎng)絡(luò)聊天客戶端流程圖TCP聊天客戶端程序連接服務(wù)器判斷連
7、接連接失敗連接成功退出4、網(wǎng)絡(luò)聊天室程序網(wǎng)網(wǎng)絡(luò)聊天室聊天室服務(wù)器地址聊天頻道客戶名稱編輯發(fā)送信息已發(fā)送信息聊天室信息-23-(三)程序設(shè)計原理聊天室原理:1、客戶選擇聊天的對象,將信息發(fā)送給服務(wù)器,然后服務(wù)器對這個信息進行判斷,找到對應(yīng)的套接字發(fā)送,而不發(fā)給其他用戶。2、客戶選擇聊天的對象,將信息發(fā)送給服務(wù)器,服務(wù)器不管這個消息,只認為是普通的信息,逐次發(fā)給每一個用戶,有客戶程序來判斷,如果是自己的消息就顯示出來;如果不