2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩27頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、<p>  基于局域網(wǎng)的信息收發(fā)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b>  摘 要</b></p><p>  網(wǎng)絡(luò)通訊在當(dāng)今已經(jīng)不算新鮮事物,但大多數(shù)網(wǎng)絡(luò)通訊都需要借助Internet上的服務(wù)器,這就給那些具有大規(guī)模內(nèi)部網(wǎng)絡(luò)的用戶造成了許多問題,如浪費(fèi)網(wǎng)絡(luò)資源、遭遇到網(wǎng)絡(luò)攻擊、傳播的病毒、破壞防御系統(tǒng)等等。由于互連網(wǎng)上的網(wǎng)絡(luò)通訊工具給企業(yè)內(nèi)部信息交流帶

2、來了不便,所以為了方便內(nèi)部網(wǎng)絡(luò)的用戶之間的溝通,需要開發(fā)一個(gè)基于局域網(wǎng)的信息收發(fā)系統(tǒng)的即時(shí)通訊工具,實(shí)現(xiàn)在內(nèi)部網(wǎng)絡(luò)中進(jìn)行信息的交流。本課題設(shè)計(jì)主要針對(duì)局域網(wǎng)通訊而開發(fā)設(shè)計(jì)的,采用的是C/S構(gòu)架,利用Delphi編程工具來實(shí)現(xiàn)單播、廣播以及在線用戶顯示和查看歷史記錄的功能,并借助一些網(wǎng)絡(luò)通訊組件,成功的實(shí)現(xiàn)了在局域網(wǎng)上的即時(shí)通訊。本論文共分為六部分。第一部分是課題的背景及研究意義;第二部分是所運(yùn)用的理論基礎(chǔ)知識(shí);第三部分是本系統(tǒng)的需求分析

3、;第四部分是系統(tǒng)結(jié)構(gòu)和模塊設(shè)計(jì);第五部是實(shí)施和測(cè)試情況;最后是本設(shè)計(jì)的結(jié)論總結(jié)及部分參考文獻(xiàn)。</p><p>  關(guān)鍵詞:即時(shí)通訊;C/S構(gòu)架;單播;廣播;歷史記錄 </p><p>  The Design and Implementation of Receiving and Sending Information System Based On LAN</p><

4、;p><b>  Abstract</b></p><p>  The network communication in already did not calculate the new things now, but the majority network communication all needed to draw support from on Internet the

5、server, this gave these to have the large-scale internal network user to create many problems, like waste network resources, bitter experience to network attack, dissemination virus, destruction defense system and so on.

6、 Because on the interconnection network communication facilities the interior communication have brought inconvenientl</p><p>  Key words: Instant message; C/S structure; Unicast; Broadcast; Historic record&

7、lt;/p><p><b>  目 錄</b></p><p><b>  論文總頁數(shù):25頁</b></p><p><b>  1引言1</b></p><p>  1.1課題的背景1</p><p>  1.2國內(nèi)外研究現(xiàn)狀1</p

8、><p>  1.3本課題研究的意義2</p><p><b>  2理論基礎(chǔ)2</b></p><p>  2.1C/S軟件架構(gòu)技術(shù)2</p><p>  2.2用戶數(shù)據(jù)報(bào)協(xié)議(UDP)3</p><p>  2.3單播(Unicast)3</p><p>

9、;  2.4廣播(Broadcast)4</p><p><b>  3需求分析5</b></p><p>  3.1現(xiàn)行業(yè)務(wù)系統(tǒng)描述5</p><p>  3.2現(xiàn)行系統(tǒng)存在的主要問題分析5</p><p>  3.3提出解決方案6</p><p><b>  4

10、系統(tǒng)設(shè)計(jì)6</b></p><p>  4.1系統(tǒng)總體架構(gòu)6</p><p>  4.2界面設(shè)計(jì)7</p><p>  4.3系統(tǒng)功能模塊設(shè)計(jì)9</p><p>  4.3.1網(wǎng)絡(luò)組件9</p><p>  4.3.2用戶信息顯示功能10</p><p>  4

11、.3.3局域網(wǎng)內(nèi)實(shí)現(xiàn)單播功能14</p><p>  4.3.4局域網(wǎng)內(nèi)實(shí)現(xiàn)廣播功能17</p><p>  4.3.5歷史信息記錄功能17</p><p>  5系統(tǒng)實(shí)施及測(cè)試18</p><p>  5.1實(shí)施概況18</p><p>  5.2測(cè)試方案19</p><p

12、>  5.3測(cè)試結(jié)果21</p><p><b>  結(jié) 論22</b></p><p><b>  參考文獻(xiàn)22</b></p><p><b>  致 謝24</b></p><p><b>  聲 明25</b>&

13、lt;/p><p><b>  引言</b></p><p><b>  課題的背景</b></p><p>  隨著計(jì)算機(jī)網(wǎng)絡(luò)日新月異的發(fā)展,人們的交流方式越來越多,傳統(tǒng)的交流方式,如:信件、電報(bào)、電話等已經(jīng)難以滿足人們的交流要求,在互聯(lián)網(wǎng)上即時(shí)的和好友取得聯(lián)系,已經(jīng)成為當(dāng)今社會(huì)人們主流的聯(lián)系方式。因此,計(jì)算機(jī)之間進(jìn)行即時(shí)通

14、訊、發(fā)送文件等交流方式已經(jīng)成為必然潮流。因此出現(xiàn)了QQ、UC等聊天工具,然而QQ、UC等聊天工具雖然方便、實(shí)用,但是,娛樂功能太多,有很多吸引人的娛樂功能,從一定程度上來說,是一種娛樂工具,不能作為用于即時(shí)通訊、文件共享的專用工具。目前,用于實(shí)現(xiàn)單一的即時(shí)通訊、文件共享的軟件實(shí)在太少,而且它們中大部分都對(duì)遠(yuǎn)程服務(wù)器有非常大的依賴性,沒有徹底實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)的交流。為此,我們決定開發(fā)一個(gè)專用于實(shí)現(xiàn)基于局域網(wǎng)內(nèi)部計(jì)算機(jī)之間即時(shí)通訊、文件傳輸?shù)能浖?/p>

15、,以方便內(nèi)網(wǎng)計(jì)算機(jī)之間信息的交流。本軟件屬于點(diǎn)對(duì)點(diǎn)連接的,在連接并通信時(shí),尤其是近程的即時(shí)通訊,徹底的脫離了遠(yuǎn)程的服務(wù)器,避免了和遠(yuǎn)程服務(wù)器連接時(shí)過多的浪費(fèi)網(wǎng)絡(luò)資源。并且避免了服務(wù)器忙或與服務(wù)器無法連接時(shí),浪費(fèi)過多時(shí)間用于和服務(wù)器建立連接。因此,這個(gè)軟件是極具適應(yīng)性和實(shí)用性的即時(shí)通訊軟件。</p><p><b>  國內(nèi)外研究現(xiàn)狀</b></p><p>  即時(shí)通

16、訊的出現(xiàn)和互聯(lián)網(wǎng)有著密不可分的關(guān)系,從技術(shù)上來說,IM完全基于TCP/IP網(wǎng)絡(luò)協(xié)議族實(shí)現(xiàn),而TCP/IP協(xié)議族是整個(gè)互聯(lián)網(wǎng)得以實(shí)現(xiàn)的技術(shù)基礎(chǔ),最早期的即時(shí)通訊雛形可以追溯到芬蘭人Jarkko Oikarinen于1988年發(fā)明的一種網(wǎng)絡(luò)聊天協(xié)議IRC(Internet Relay Chat),該協(xié)議僅支持文本聊天,并且也不支持好友列表的概念,1996年第一個(gè) IM產(chǎn)品ICQ發(fā)明后,即時(shí)通訊的技術(shù)和功能開始基本成型,其工作原理開始被人們所

17、了解,但不同廠商實(shí)現(xiàn)即時(shí)通訊技術(shù)原理時(shí)采用的協(xié)議卻有較大的差異,甚至到目前為止世界主要的 IM服務(wù)運(yùn)營商AOL(American Online:美國在線)仍然沒有公布其主要即時(shí)通訊產(chǎn)品AIM(American Instant Messenger)的專用協(xié)議。從1997年第一代即時(shí)通訊軟件誕生后發(fā)展到現(xiàn)在,即時(shí)通訊行業(yè)先后經(jīng)歷了文本通信(第一代)、語音交流(第二代)、視頻交流(第三代)和跨網(wǎng)溝通(第四代)等多種信息傳遞技術(shù)變革。盡管第一代

18、、第二代以及第三代即時(shí)通訊軟件的信息傳遞主要在互聯(lián)網(wǎng)范圍內(nèi),但各個(gè)階段都可以看到即時(shí)通訊行業(yè)在跨網(wǎng)通訊領(lǐng)域中的應(yīng)用</p><p><b>  本課題研究的意義</b></p><p>  隨著現(xiàn)代通訊技術(shù)不斷的發(fā)展,即時(shí)通訊技術(shù)也有飛速的發(fā)展,它是一種使人們能在網(wǎng)上識(shí)別在線用戶并與他們實(shí)時(shí)交換消息的技術(shù),被很多人稱為電子郵件發(fā)明以來最酷的在線通訊方式。但是為了提高通

19、訊的質(zhì)量,很多企業(yè)在網(wǎng)絡(luò)上進(jìn)行即時(shí)通訊時(shí)一般都不會(huì)采用Internet上的即時(shí)通訊軟件,如QQ、MSN、OICQ等。因此本課題主要是研究基于局域網(wǎng)的信息收發(fā)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn),希望能通開發(fā)設(shè)計(jì)的局域網(wǎng)通訊軟件來方便在內(nèi)部網(wǎng)絡(luò)上的信息交流,這樣不緊提高了通訊的質(zhì)量,還能有效的防護(hù)在互連網(wǎng)上帶來的攻擊,對(duì)于那些大中型企業(yè)來說更是需要這樣的一個(gè)自己內(nèi)部的即時(shí)通訊工具,避免帶來工作效率上不去;病毒及木馬的感染率增大;遠(yuǎn)程服務(wù)器連接時(shí)過多的浪費(fèi)網(wǎng)絡(luò)

20、資源;互連網(wǎng)由于某種原因而斷開時(shí)造成通訊中斷等問題。</p><p><b>  理論基礎(chǔ)</b></p><p><b>  C/S軟件架構(gòu)技術(shù)</b></p><p>  C/S(Client/Server)結(jié)構(gòu),即大家熟知的客戶機(jī)和服務(wù)器結(jié)構(gòu)。它是軟件系統(tǒng)體系結(jié)構(gòu),通過它可以充分利用兩端硬件環(huán)境的優(yōu)勢(shì),將任務(wù)合理分配

21、到Client端和Server端來實(shí)現(xiàn),降低了系統(tǒng)的通訊開銷。目前大多數(shù)應(yīng)用軟件系統(tǒng)都是Client/Server形式的兩層結(jié)構(gòu),由于現(xiàn)在的軟件應(yīng)用系統(tǒng)正在向分布式的Web應(yīng)用發(fā)展,Web和Client/Server應(yīng)用都可以進(jìn)行同樣的業(yè)務(wù)處理,應(yīng)用不同的模塊共享邏輯組件;因此,內(nèi)部的和外部的用戶都可以訪問新的和現(xiàn)有的應(yīng)用系統(tǒng),通過現(xiàn)有應(yīng)用系統(tǒng)中的邏輯可以擴(kuò)展出新的應(yīng)用系統(tǒng)。這也就是目前應(yīng)用系統(tǒng)的發(fā)展方向。</p><

22、;p>  傳統(tǒng)的C/S體系結(jié)構(gòu)雖然采用的是開放模式,但這只是系統(tǒng)開發(fā)一級(jí)的開放性,在特定的應(yīng)用中無論是Client端還是Server端都還需要特定的軟件支持。由于沒能提供用戶真正期望的開放環(huán)境,C/S結(jié)構(gòu)的軟件需要針對(duì)不同的操作系統(tǒng)系統(tǒng)開發(fā)不同版本的軟件,加之產(chǎn)品的更新?lián)Q代十分快,已經(jīng)很難適應(yīng)百臺(tái)電腦以上局域網(wǎng)用戶同時(shí)使用。</p><p>  圖1 客戶機(jī)/服務(wù)器計(jì)算結(jié)構(gòu)</p><p

23、>  用戶數(shù)據(jù)報(bào)協(xié)議(UDP)</p><p>  用戶數(shù)據(jù)報(bào)協(xié)議(UDP)是ISO參考模型中一種無連接的傳輸層協(xié)議,提供面向事務(wù)的簡單不可靠信息傳送服務(wù)。UDP協(xié)議基本上是IP協(xié)議與上層協(xié)議的接口。UDP協(xié)議適用端口分辨運(yùn)行在同一臺(tái)設(shè)備上的多個(gè)應(yīng)用程序。 </p><p>  由于大多數(shù)網(wǎng)絡(luò)應(yīng)用程序都在同一臺(tái)機(jī)器上運(yùn)行,計(jì)算機(jī)上必須能夠確保目的地機(jī)器上的軟件程序能從源地址機(jī)器處獲得

24、數(shù)據(jù)包,以及源計(jì)算機(jī)能收到正確的回復(fù)。這是通過使用UDP的“端口號(hào)”完成的。源端口號(hào)標(biāo)識(shí)了請(qǐng)求域名服務(wù)的本地機(jī)的應(yīng)用程序,同時(shí)需要將所有由目的站生成的響應(yīng)包都指定到源主機(jī)的這個(gè)端口上。與TCP不同,UDP并不提供對(duì)IP協(xié)議的可靠機(jī)制、流控制以及錯(cuò)誤恢復(fù)功能等。由于UDP比較簡單,UDP頭包含很少的字節(jié),比TCP負(fù)載消耗少,所以UDP適用于不需要TCP可靠機(jī)制的情形,比如,當(dāng)高層協(xié)議或應(yīng)用程序提供錯(cuò)誤和流控制功能的時(shí)候。UDP是傳輸層協(xié)議

25、,服務(wù)于很多知名應(yīng)用層協(xié)議,包括網(wǎng)絡(luò)文件系統(tǒng)(NFS)、簡單網(wǎng)絡(luò)管理協(xié)議(SNMP)、域名系統(tǒng)(DNS)以及簡單文件傳輸系統(tǒng)(TFTP)。 </p><p>  單播(Unicast)</p><p>  單播(Unicast)指網(wǎng)絡(luò)中從源向目的地轉(zhuǎn)發(fā)單播流量的過程。單播流量地址唯一。單播方式下,只有一個(gè)發(fā)送方和一個(gè)接收方。與之比較,組播是指單個(gè)發(fā)送方對(duì)應(yīng)一組選定接收方的一種通信,任意播是

26、指任意發(fā)送方對(duì)應(yīng)一組較為接近的接收方間的一種通信。早期的點(diǎn)對(duì)點(diǎn)通信含義類似于單播。</p><p>  單播傳輸是 LANs 傳輸中的主要使用方式。所有 LANs(如以太網(wǎng))和 IP 網(wǎng)絡(luò)都支持單播傳輸模式,并且大多數(shù)用戶都了解標(biāo)準(zhǔn)單播應(yīng)用程序,如:http、smtp、ftp 和 telnet ― 都作為 TCP 傳輸協(xié)議。新版本的網(wǎng)際協(xié)議第六版(IPv6)支持單播同時(shí)也支持任意播和組播類型。許多路由選擇協(xié)議如路

27、由選擇信息協(xié)議(RIP)和開放最短路徑優(yōu)先(OSPF),都支持高效 Internet 單播路由選擇過程。</p><p>  而IPv6 支持單播(Unicast)、組播(Multicast)和任意播(Anycast)三種類型。IPv6 中沒有關(guān)于廣播(Broadcast)的具體劃分,而是作為組播的一個(gè)典型類型。</p><p>  圖2 單播物理結(jié)構(gòu)圖</p><p&

28、gt;  廣播(Broadcast)</p><p>  網(wǎng)絡(luò)廣播是指一個(gè)節(jié)點(diǎn)同時(shí)向相同域中的其它所有節(jié)點(diǎn)傳輸數(shù)據(jù)包的過程。組播是一種特殊的廣播,其中一組請(qǐng)求收聽的選定用戶將收到廣播。廣播傳輸通常在局域網(wǎng)(如以太網(wǎng))中進(jìn)行,但有時(shí)也發(fā)生在虛擬局域網(wǎng)(VLAN)中。IPv6 支持單播(Unicast)、組播(Multicast)以及任意播(Anycast)三種類型,IPv6 中沒有關(guān)于廣播(Broadcast)的具

29、體劃分,而是作為組播的一個(gè)典型。</p><p>  生成廣播信息的應(yīng)用程序包括地址解析協(xié)議(ARP)。通過該協(xié)議,主機(jī)發(fā)送一個(gè)地址解析查詢到局域網(wǎng)中的所有計(jì)算機(jī)上,以實(shí)現(xiàn)網(wǎng)絡(luò) IP 地址的分配。有些路由選擇協(xié)議,如RIP,主要用于支持網(wǎng)絡(luò)設(shè)備“Advertise”網(wǎng)絡(luò)服務(wù)。</p><p>  網(wǎng)絡(luò)廣播中涉及以下重要概念:</p><p>  廣播域(Broadc

30、ast Domain):這是一個(gè)限定區(qū)域,其中的所有設(shè)備都可以共享信息。換句話說,與網(wǎng)絡(luò)相連,且負(fù)責(zé)接收廣播的所有設(shè)備都是同一廣播域的一部分。在一個(gè)共享以太網(wǎng)中,工作站通過共享媒體將幀廣播到其它所有節(jié)點(diǎn)。其它節(jié)點(diǎn)收聽廣播,只接收尋址到它們的幀。因此,共享以太網(wǎng)中的所有節(jié)點(diǎn)都屬于同一廣播域。此外通過虛擬局域網(wǎng)技術(shù)可以創(chuàng)建一個(gè)虛擬廣播域。</p><p>  廣播地址(Broadcast Address):這是一個(gè)特

31、殊地址,當(dāng)數(shù)據(jù)包可以尋址到該地址時(shí),可以幫助所有設(shè)備打開和處理信息。例如,MAC 地址,格式為 1xFFFFFFFF 是一種廣播地址;IP 地址255.255.255.255是通用廣播地址。任何設(shè)備都將打開尋址到廣播地址的信息,并將它們傳送到下一個(gè)工作站。</p><p>  廣播風(fēng)暴(Broadcast Storm):當(dāng)主機(jī)系統(tǒng)響應(yīng)一個(gè)在網(wǎng)上不斷循環(huán)的廣播數(shù)據(jù)包或者試圖響應(yīng)一個(gè)沒有應(yīng)答的系統(tǒng)時(shí)就會(huì)發(fā)生廣播風(fēng)暴。

32、隨著網(wǎng)絡(luò)數(shù)據(jù)包數(shù)量的增加,廣播風(fēng)暴可能會(huì)引起網(wǎng)絡(luò)擁塞問題。為防止廣播風(fēng)暴的發(fā)生,需要細(xì)心配置網(wǎng)絡(luò)以阻止非法廣播信息的進(jìn)入。</p><p>  圖3 廣播物理結(jié)構(gòu)圖</p><p><b>  需求分析</b></p><p><b>  現(xiàn)行業(yè)務(wù)系統(tǒng)描述</b></p><p>  隨著計(jì)算機(jī)網(wǎng)絡(luò)

33、日新月異的發(fā)展,人們的交流方式越來越多,傳統(tǒng)的交流方式如:信件、電報(bào)、電話等已經(jīng)難以滿足人們的交流要求,在互聯(lián)網(wǎng)上即時(shí)的和好友取得聯(lián)系,已經(jīng)成為當(dāng)今社會(huì)人們主流的聯(lián)系方式。兩臺(tái)計(jì)算機(jī)之間進(jìn)行即時(shí)通訊、發(fā)送文件等交流方式已經(jīng)成為時(shí)代的潮流。因此出現(xiàn)了QQ、UC等即時(shí)通訊工具。這些即時(shí)通訊業(yè)務(wù)屬于基礎(chǔ)語音業(yè)務(wù)外的數(shù)據(jù)增值類業(yè)務(wù),從范疇來講屬于“消息類”業(yè)務(wù),本質(zhì)是完成對(duì)“文字、聲音、圖像”信息的傳遞。同屬于消息類的業(yè)務(wù)還有短信、彩信等,他們

34、之間都存在一定程度的替代性,同時(shí)又各有長短。但不會(huì)成為那些大中型企業(yè)內(nèi)部的主要通訊工具,在企業(yè)中要求很簡單,能確??焖僬5募磿r(shí)通訊,還要具有很好的安全性,這樣才能提高工作效率,增加企業(yè)的效益。</p><p>  現(xiàn)行系統(tǒng)存在的主要問題分析</p><p>  目前,像QQ、UC等即時(shí)通訊工具雖然方便、實(shí)用,但是,娛樂功能太多,有很多吸引人的娛樂功能,從一定程度上來說,是一種娛樂工具,不

35、能作為用于作為即時(shí)通訊、文件共享的專用工具。并且現(xiàn)在用于實(shí)現(xiàn)單一的即時(shí)通訊、文件共享的軟件真的實(shí)在太少,因此不能為那些大中型企業(yè)所使用,而且在現(xiàn)行的系統(tǒng)中主要的問題是:一、在即時(shí)通訊系統(tǒng)中由于防火墻、網(wǎng)絡(luò)速度等原因難以建立或者速度很慢,IM服務(wù)器還提供消息中轉(zhuǎn)服務(wù),即時(shí)消息全部先發(fā)送到IM服務(wù)器,還要再由服務(wù)器轉(zhuǎn)發(fā)給對(duì)方,所以連接時(shí)過多的浪費(fèi)了網(wǎng)絡(luò)資源,并且在服務(wù)器忙或與服務(wù)器無法連接時(shí),浪費(fèi)過多時(shí)間用于和服務(wù)器建立連接;二、即時(shí)通訊工

36、具始終是通過互連網(wǎng)的服務(wù)器來傳輸?shù)?,正是這樣所以更有可能會(huì)帶來遭遇到網(wǎng)絡(luò)上的許多攻擊,如木馬,蠕蟲等。為企業(yè)中的信息交流帶來了很大的安全性問題。</p><p><b>  提出解決方案</b></p><p>  根據(jù)企業(yè)在內(nèi)部網(wǎng)絡(luò)上信息交流的需求,所以本課題就主要針對(duì)內(nèi)部的網(wǎng)絡(luò)來設(shè)計(jì)這樣的一個(gè)即時(shí)通訊系統(tǒng),本系統(tǒng)是在基于局域網(wǎng)的在IM客戶端和IM服務(wù)器之間通訊采用

37、的UDP協(xié)議和C/S軟件構(gòu)架技術(shù)上開發(fā)的通訊工具,它在近程的即時(shí)通訊時(shí)徹底的脫離了遠(yuǎn)程的服務(wù)器,不通過遠(yuǎn)程服務(wù)器來完成實(shí)現(xiàn)通訊,避免了和遠(yuǎn)程服務(wù)器連接時(shí)過多的浪費(fèi)網(wǎng)絡(luò)資源。并且避免了服務(wù)器忙或與服務(wù)器無法連接時(shí)浪費(fèi)過多時(shí)間用于和服務(wù)器建立連接,同時(shí)也為內(nèi)網(wǎng)服務(wù)增強(qiáng)了許多的安全性,徹底的將通訊工具從互連網(wǎng)上搬到內(nèi)網(wǎng)中來,這樣一來就不會(huì)受到來自互連網(wǎng)的攻擊了。這種系統(tǒng)主要是為了方便了大中型企業(yè)在內(nèi)部即時(shí)通訊要求,從而進(jìn)一步提高工作效率,增加

38、企業(yè)的效益。</p><p><b>  系統(tǒng)設(shè)計(jì)</b></p><p><b>  系統(tǒng)總體架構(gòu)</b></p><p>  本系統(tǒng)主要是采用C/S結(jié)構(gòu),并且每個(gè)客戶端也是作為服務(wù)器端的,當(dāng)系統(tǒng)發(fā)送信息給局域網(wǎng)的用戶,主要由單播模塊和廣播模塊來實(shí)現(xiàn),而其中的單播模塊和用戶信息模塊是具有依賴性的,在接收信息的時(shí)候又有兩個(gè)

39、模塊來完成,一是信息接收的模塊,另一個(gè)是信息查看的模塊。</p><p>  由此可以看出本系統(tǒng)主要分為兩大部分模塊:發(fā)送模塊和接收模塊。發(fā)送模塊:單播模塊,廣播模塊,用戶信息模塊,信息記錄模塊接收模塊:接收信息模塊,查看信息模塊</p><p>  有了以上的了解了那讓我們來看看系統(tǒng)的架構(gòu)圖:</p><p><b>  圖4 系統(tǒng)架構(gòu)圖</b&g

40、t;</p><p><b>  界面設(shè)計(jì)</b></p><p>  為了方便用戶的操作,我采用比較簡單的界面設(shè)計(jì),主界面包括廣播按鈕、發(fā)送按鈕、刷新按鈕、在線用戶顯示框、信息輸入窗體。其中廣播按鈕是將信息窗體中的內(nèi)容發(fā)送到所有的用戶;發(fā)送按鈕是將信息窗體中的內(nèi)容發(fā)送到指定的用戶;在線用戶顯示框中選取指定的用戶和查看用戶的信息;刷新是重載用戶列表。</p>

41、;<p><b>  圖5 主界面</b></p><p>  當(dāng)有信息傳過來時(shí)將自動(dòng)彈出一個(gè)信息接收的窗體,窗體包括查看按鈕和關(guān)閉按鈕還有一個(gè)顯示對(duì)方用戶的區(qū)域,他們分別是用來打開并查看信息或是不想查看而關(guān)閉的作用。</p><p><b>  圖6 信息接收界面</b></p><p>  如過你在圖6中

42、點(diǎn)擊了查看按鈕,那么將會(huì)彈到顯示信息查看的窗體上,在文本區(qū)則會(huì)顯示對(duì)方傳送過來的信息內(nèi)容,在查看了之后有個(gè)關(guān)閉按鈕,用來結(jié)束對(duì)話框,便可以回到圖5的界面了。</p><p><b>  圖7 信息查看界面</b></p><p>  在歷史記錄的窗體中點(diǎn)擊記錄文件按鈕來選擇保存的路徑,將會(huì)自動(dòng)生成一個(gè)文本文件來對(duì)通訊記錄進(jìn)行保存。</p><p&g

43、t;<b>  圖8 歷史記錄</b></p><p><b>  系統(tǒng)功能模塊設(shè)計(jì)</b></p><p><b>  網(wǎng)絡(luò)組件</b></p><p>  UDP協(xié)議由TCP協(xié)議衍生而來。TCP用于確保點(diǎn)對(duì)點(diǎn)的連接,而UDP并不保證發(fā)送的數(shù)據(jù)一定到達(dá),也不表明數(shù)據(jù)報(bào)的傳輸成功或失敗。</p&

44、gt;<p>  本系統(tǒng)設(shè)計(jì)使用的是TIdUDPClient和TIdUDPServer兩個(gè)用戶數(shù)據(jù)報(bào)(UDP)組件,首先創(chuàng)建Delphi工程。然后向工程組再添加一個(gè)工程。把一個(gè)工程作為客戶,另一個(gè)作為服務(wù)器。為連接到UDP服務(wù)器,需要一個(gè)TIdUDPClient組件。用來表示服務(wù)器的IP地址和端口號(hào)。由于UDP是無連接的,因此在UDP的接口方法中不包括Connect方法。要使用Internet Direct實(shí)現(xiàn)的組件,只需

45、使用Send向給定的IP地址和端口號(hào)廣播一個(gè)命令字符串。</p><p>  其中我為IP地址和端口號(hào)的設(shè)置分別為127.0.0.1和9000。服務(wù)器是作為應(yīng)用程序?qū)崿F(xiàn)的,它對(duì)客戶程序發(fā)出的一個(gè)簡單的命令集進(jìn)行響應(yīng)。為實(shí)現(xiàn)服務(wù)器,程序?qū)⒈O(jiān)聽DefaultPort端口上的廣播,并將TIdUDPServer.Active設(shè)置為True。</p><p>  下面是我對(duì)TIdUDPClient和

46、TIdUDPServer組件的設(shè)置圖:</p><p>  圖9 TIdUDPClient組件設(shè)置</p><p>  圖10 TIdUDPServer組件設(shè)置</p><p><b>  用戶信息顯示功能</b></p><p>  為了方便用戶選取單個(gè)用戶進(jìn)行信息發(fā)送和查看在線用戶的信息,所以設(shè)計(jì)了一個(gè)ListVie

47、w來進(jìn)行顯示如圖5,在ListView中包括了用戶名、工作組、IP地址。當(dāng)有用戶打開本系統(tǒng)的時(shí)候?qū)?huì)向局域網(wǎng)中的所有用戶發(fā)送一個(gè)握手信息來獲取網(wǎng)絡(luò)中的在線用戶信息并添加到列表中顯示出來,同時(shí)也把自己的網(wǎng)絡(luò)資源信息發(fā)送給對(duì)方,使自己被添加到其他用戶的列表中。</p><p>  其中分別要對(duì)網(wǎng)絡(luò)中的所有的用戶名、工作組、IP地址進(jìn)行獲取,下面來看一下對(duì)于獲取這些網(wǎng)絡(luò)資源的代碼部分。</p><p

48、>  用戶名獲取代碼如下:</p><p>  工作組獲取代碼如下:</p><p>  IP地址獲取代碼如下:</p><p>  局域網(wǎng)內(nèi)實(shí)現(xiàn)單播功能</p><p>  在本設(shè)計(jì)中單播發(fā)送的按鈕為BitBtn2,主要是通過IdUDPServer和IdUDPClient組件來編寫的,由client.SendBuffer語句來發(fā)送的,

49、主要是對(duì)局域網(wǎng)內(nèi)部的同一工作組用戶發(fā)送信息。</p><p>  下面是發(fā)送按鈕的代碼部分:</p><p>  由于是單播所以需要指定用戶,而用戶是由ListView中顯示的,則要對(duì)其進(jìn)行顯示并能選取,通過客服端來讓主機(jī)服務(wù)器響應(yīng),實(shí)現(xiàn)代碼主要如下:</p><p>  IP地址進(jìn)行顯示;由工作組進(jìn)行顯示,最后連接到表Label2中去。</p>&l

50、t;p>  局域網(wǎng)內(nèi)實(shí)現(xiàn)廣播功能</p><p>  在本設(shè)計(jì)中單播發(fā)送的按鈕為BitBtn3,主要是通過IdUDPServer和IdUDPClient組件來編寫的,主要是使用了client.Broadcast來對(duì)信息進(jìn)行發(fā)送的,在發(fā)送時(shí)將會(huì)把信息發(fā)送給在局域網(wǎng)內(nèi)部的所有用戶包括自己。</p><p>  下面是發(fā)送按鈕的代碼部分:</p><p><b

51、>  歷史信息記錄功能</b></p><p>  為了能讓用戶對(duì)歷史的信息進(jìn)行查看,所以本設(shè)計(jì)中包含了一個(gè)對(duì)歷史信息進(jìn)行記錄的功能,主要是創(chuàng)建一個(gè)記事本文件對(duì)信息進(jìn)行復(fù)制保存,以下就是歷史信息記錄的代碼:</p><p><b>  系統(tǒng)實(shí)施及測(cè)試</b></p><p><b>  實(shí)施概況</b>&

52、lt;/p><p>  本設(shè)計(jì)是基于局域網(wǎng)內(nèi)采用C/S結(jié)構(gòu)的即時(shí)通信軟件,其主要實(shí)現(xiàn)的是單播和廣播功能,還包含了顯示用戶信息、查看歷史信息等輔助功能。本設(shè)計(jì)是在是Microsoft Windows XP系統(tǒng)上利用編程軟件開發(fā)的,然后再組建的局域網(wǎng)中來進(jìn)行測(cè)試和調(diào)試工作,所以最少會(huì)用到兩臺(tái)或兩臺(tái)以上的電腦并由交換機(jī)組成一個(gè)小型的局域網(wǎng),考慮到一些系統(tǒng)兼容性的問題,所以在內(nèi)部網(wǎng)絡(luò)上的每臺(tái)計(jì)算機(jī)上都用的是相同的操作系統(tǒng),在

53、網(wǎng)絡(luò)配置方面也是相同的方式。對(duì)于編程軟件的選擇主要是采用Delphi7來編寫和編譯程序的,因?yàn)榭紤]到Delphi是具有可視化的一個(gè)編程環(huán)境, Delphi它提供了500多個(gè)可供使用的構(gòu)件,利用這些部件可以快速地構(gòu)造出應(yīng)用系統(tǒng)。也可以根據(jù)自己的需要修改部件或用Delphi本身編寫自己的部件,能提供方便、快捷的Windows應(yīng)用程序開發(fā)環(huán)境,本程序也基本是借助與那些組件來編寫的。</p><p><b> 

54、 測(cè)試方案</b></p><p>  本程序在Windows XP操作系統(tǒng)下,使用Borland Delphi 7企業(yè)版軟件作為開發(fā)工具,利用Delphi7(企業(yè)版)集成開發(fā)環(huán)境中提供的網(wǎng)絡(luò)通訊組件進(jìn)行編程的,代碼也是在這個(gè)開發(fā)環(huán)境中編譯的,并在組建的局域網(wǎng)中進(jìn)行系統(tǒng)測(cè)試的。</p><p>  設(shè)計(jì)測(cè)試的是同在一個(gè)局域網(wǎng)中,先將編譯好的程序復(fù)制到內(nèi)部網(wǎng)絡(luò)上的沒臺(tái)計(jì)算機(jī)上面,

55、然后都將設(shè)計(jì)的系統(tǒng)打開運(yùn)行,這是觀察是否能顯示所有的在線用戶的信息,如果了防火墻之類的軟件正在運(yùn)行的話,很可能不能正常顯示工作組、IP等信息,所以最好是關(guān)閉防火墻。如圖11:</p><p>  圖11 顯示在線用戶</p><p>  如果能顯示出來用戶的信息則在其中一臺(tái)計(jì)算機(jī)上的信息窗體中輸入好準(zhǔn)備發(fā)送出去的信息“歡迎使用!”,如圖12:</p><p>  圖

56、12 輸入發(fā)送信息</p><p>  如果是想發(fā)送到整的網(wǎng)絡(luò)就點(diǎn)擊界面上的廣播按鈕,這時(shí)在所有的計(jì)算機(jī)上都會(huì)彈出一個(gè)接收的界面,如圖13:</p><p><b>  圖13 接收界面</b></p><p>  點(diǎn)擊查看按鈕則會(huì)彈到一個(gè)查看信息的界面上,上面會(huì)顯示出剛才所發(fā)送的信息和來自于誰,如圖14:</p><p&g

57、t;<b>  圖14 查看界面</b></p><p>  如果是想發(fā)送給網(wǎng)絡(luò)中的其中一個(gè)用戶就先選擇要發(fā)送的對(duì)象再點(diǎn)擊發(fā)送按鈕,這時(shí)就只會(huì)在那個(gè)指定的用戶那里彈出查看的界面了而其他用戶則不會(huì)接收到發(fā)送來的信息。</p><p>  要是想對(duì)通訊的內(nèi)容進(jìn)行記錄,則在歷史記錄窗體上選擇保存通訊記錄的路徑,點(diǎn)擊確認(rèn)按鈕,便會(huì)在選擇的路徑里生成一個(gè)文本文件用來保存用戶的通

58、訊記錄了,在點(diǎn)擊托盤區(qū)圖標(biāo)選擇查看記錄,如圖15:</p><p>  圖15 通訊記錄界面</p><p>  最后是退出,退出只能點(diǎn)擊托盤區(qū)的圖標(biāo)來退出,當(dāng)關(guān)閉了其中一個(gè)用戶的時(shí)候,其他的用戶列表中自動(dòng)會(huì)將該用戶的用戶信息給刪除,這表明此用戶已經(jīng)下線離開了。</p><p><b>  測(cè)試結(jié)果</b></p><p&g

59、t;  經(jīng)過多次在局域網(wǎng)中進(jìn)行測(cè)試,本設(shè)計(jì)的基本功能都在測(cè)試中得到了體現(xiàn),下面就是我在整個(gè)測(cè)試的過程中得到的一些測(cè)試結(jié)果:</p><p>  在局域網(wǎng)內(nèi)能完整傳輸所發(fā)的信息,不會(huì)出現(xiàn)信息丟失或亂碼等情況</p><p>  在測(cè)試的時(shí)候如果開了防火墻很可能不能顯示工作組,但并不會(huì)影響到信息的發(fā)送和接收</p><p>  在發(fā)送廣播信息時(shí)是對(duì)所有用戶發(fā)送信息,包括

60、自己也會(huì)收到廣播信息</p><p>  當(dāng)進(jìn)入系統(tǒng)后便能自動(dòng)更新顯示在線用戶信息,用戶下線時(shí)能在顯示列表中也能自動(dòng)刪除此用戶信息</p><p>  能對(duì)用戶在即時(shí)的通訊時(shí)的通訊信息進(jìn)行記錄,方便用戶查看歷史的通訊信息</p><p>  通過測(cè)試還發(fā)現(xiàn)了用戶只能進(jìn)行文本格式即時(shí)的通訊,不能發(fā)送圖片等格式的信息</p><p>  在發(fā)送信

61、息時(shí)沒有能對(duì)信息進(jìn)行加密后在發(fā)送</p><p><b>  結(jié) 論</b></p><p>  通過本次課題的研究,認(rèn)識(shí)到即時(shí)通訊工具在企業(yè)中起到了重要的作用,本系統(tǒng)實(shí)現(xiàn)了顯示在線用戶信息的功能,能夠查看到當(dāng)前局域網(wǎng)中用戶的在線情況,并且可以對(duì)用戶的用戶名、工作組和IP地址的信息進(jìn)行顯示;能保存歷史記錄的功能,可以方便用戶對(duì)歷史信息進(jìn)行查看;還實(shí)現(xiàn)了在局域網(wǎng)內(nèi)

62、部進(jìn)行收發(fā)單播和廣播信息的功能。解決了傳統(tǒng)通訊工具需要連接遠(yuǎn)程服務(wù)器來進(jìn)行信息轉(zhuǎn)發(fā)的局限性問題,這樣能夠節(jié)約網(wǎng)絡(luò)資源,也保證了在信息交流時(shí)的安全性,減少了病毒及木馬的感染率。但是系統(tǒng)還有是存在一些不足的地方存在:1、只是單一的傳輸文本信息,還不能對(duì)圖片格式等進(jìn)行傳輸 2、沒有針對(duì)信息進(jìn)行加密發(fā)送,這樣不能保證所發(fā)送和接收的信息百分之百的安全;3、沒有設(shè)計(jì)用戶登錄界面,使本系統(tǒng)的使用方面還存在安全問題。但是我會(huì)在以后的工作學(xué)習(xí)中逐步解決這

63、些問題,不斷完善這個(gè)系統(tǒng),使它更具實(shí)用性的。</p><p>  本次課題設(shè)計(jì)我學(xué)到了很多關(guān)于網(wǎng)絡(luò)通訊方面的知識(shí),也認(rèn)識(shí)到自己的能力,是我從理論走向?qū)嵺`邁出的堅(jiān)實(shí)的一步。從設(shè)計(jì)分析到設(shè)計(jì)編寫直到具體實(shí)現(xiàn),在學(xué)校所學(xué)的理論知識(shí)對(duì)我有很大的幫助,我也發(fā)現(xiàn)了我的很多不足的地方。總之通過這次畢業(yè)設(shè)計(jì),我深深體會(huì)到,一個(gè)好的程序設(shè)計(jì)人員必須具有認(rèn)真、謹(jǐn)慎的作風(fēng),堅(jiān)忍不拔的毅力,并且要不斷的向更高的臺(tái)階邁進(jìn),我會(huì)向著這個(gè)方向

64、去努力。</p><p><b>  參考文獻(xiàn)</b></p><p>  [1] 劉華.黑魔方 Delphi 基礎(chǔ)教程[M].北京:清華大學(xué)出版社,2004.9。</p><p>  [2] 飛思科技產(chǎn)品研發(fā)中心.Delphi 網(wǎng)絡(luò)高級(jí)編程[M].北京:電子工業(yè)出版社,2002.1。</p><p>  [3] 施新剛

65、.Delphi 實(shí)效編程百例[M].北京:人民郵電出版社,2002.1。 </p><p>  [4] 鮑敏,吳昊.Delphi 網(wǎng)絡(luò)高級(jí)編程[M].北京:人民郵電出版社,2001.7。 </p><p>  [5] 肖建.Delphi 6 編程基礎(chǔ)[M].北京:清華大學(xué)出版社,2002.1。</p><p>  [6] (美)W.Richars Stevens.T

66、CP/IP詳解 卷1:協(xié)議[M]. 北京:機(jī)械工業(yè)出版社,2005。</p><p>  [7] (美)Paul Kimmel.Delphi 6 應(yīng)用開發(fā)指南[M].北京:清華大學(xué)出版社,2002.1。</p><p><b>  致 謝</b></p><p>  本文是在趙軍老師的熱情關(guān)心和指導(dǎo)下完成的,他淵博的知識(shí)和嚴(yán)謹(jǐn)?shù)闹螌W(xué)作風(fēng)使

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論