【摘 要】本文討論了一種基于TCP/IP的局域網(wǎng)通信工具的設(shè)計與實現(xiàn)方法,以delphi6.0作為開發(fā)環(huán)境,采用SQLserver 2000存儲數(shù)據(jù)信息。采用TCP和UDP傳輸方式,編寫客戶端與服務(wù)器端網(wǎng)絡(luò)軟件(C/S結(jié)構(gòu)),實現(xiàn)用戶的注冊和登錄,好友的顯示和查找,好友文字、語音視頻聊天等功能。
【關(guān)鍵詞】TCP/IP;delphi6.0;SQLserver 2000
【Abstract】The designand implementation of LAN communication tool have been proposrd. The system was designed in delphi 6.0 and stored data in SQLserver 2000.The transmission form of TCP and UDP and C/S structure were used in the design.At last,the function just as user registration and login,the display and find between friends,the text chat,the voice and video chat were achived.
【Key words】TCP/IP;delphi6.0;SQLserver 2000
0 引言
隨著全球信息化進程的不斷發(fā)展,越來越多的企業(yè)使用局域網(wǎng)來管理各種事務(wù)。但隨著局域網(wǎng)的機器增多,軟件的應(yīng)用對局域網(wǎng)的信息吞吐、處理能力的要求也越高。為解決上述矛盾,就有必要設(shè)計一個在局域網(wǎng)里的ICQ,通過該系統(tǒng),進行文件傳輸,消息的發(fā)布,提高企業(yè)的工作效率。
1 需求分析
該系統(tǒng)基于TCP/IP網(wǎng)絡(luò)協(xié)議,采用C/S模式,服務(wù)器端與數(shù)據(jù)庫連接,客戶端安裝在不同電腦上可通過同一服務(wù)器實現(xiàn)數(shù)據(jù)通訊。實現(xiàn)的功能如下:
(1)用戶注冊,隨機分配號碼并填寫個人信息;
(2)用戶登入驗證并導(dǎo)出好友列表;
(3)能夠查找好友并認證后加為好友;
(4)文字聊天,聊天記錄保存;
(5)點對點文件傳輸功能;
(6)視頻語音捕獲與傳輸(視頻語音聊天功能)。
2 詳細設(shè)計
2.1 概要設(shè)計
本課題在研究和分析計算機TCP/IP網(wǎng)絡(luò)協(xié)議基礎(chǔ)上,在不同計算機之間實現(xiàn)數(shù)據(jù)通訊。采用TCP和UDP傳輸方式,編寫客戶端與服務(wù)器端網(wǎng)絡(luò)軟件??蛻粝蚍?wù)器發(fā)出服務(wù)請求,服務(wù)器作出應(yīng)答響應(yīng),服務(wù)器監(jiān)聽客戶發(fā)出的請求,當(dāng)客戶提出連接請求后,服務(wù)器作出應(yīng)答,并為客戶提供相應(yīng)的服務(wù)。
本系統(tǒng)前臺使用Delphi6.0進行設(shè)計,后臺運用Sql Server 2000進行數(shù)據(jù)管理。
2.2 方案設(shè)計
該即時通的工作過程如下:當(dāng)服務(wù)器開啟時,用戶從客戶端登錄,通過TCP/IP網(wǎng)絡(luò)將輸入的帳號和密碼傳到服務(wù)器,服務(wù)器從數(shù)據(jù)庫中對應(yīng)的數(shù)據(jù)表查找驗證,若驗證錯誤,返回錯誤提示信息;若驗證通過,則登錄QQ主頁面。在進入主頁面后,用戶可通過輸入對方QQ號查找其他用戶且加對方為好友。兩用戶可通過點對點通訊實現(xiàn)文字聊天,語音視頻聊天,文件傳輸?shù)取?/p>
2.3 系統(tǒng)數(shù)據(jù)表設(shè)計
本系統(tǒng)使用SQL Server 2000設(shè)計后臺數(shù)據(jù)庫,共設(shè)計了兩張數(shù)據(jù)表:用戶信息表和好友信息表。
用戶信息數(shù)據(jù)表用于儲存注冊用戶的信息,存儲的信息包括:用戶QQ號(主鍵)、用戶密碼、用戶昵稱、性別、是否在線(1為在線,0為不在)、用戶上線地址、國籍、省份、城市等。
好友信息數(shù)據(jù)表,主要用于添加用戶好友信息,用戶登錄時調(diào)用相關(guān)信息并顯示。存儲的信息包括:用戶QQ號、好友QQ號、好友是否在線、好友在線地址、好友昵稱。
2.4 詳細模塊設(shè)計及功能實現(xiàn)
客戶端包括七個模塊:
(1)登錄模塊:此模塊實現(xiàn)客戶端與服務(wù)器連接,用戶登錄時驗證身份,驗證通過則進入QQ主頁面模塊,并調(diào)取好友信息顯示。
(2)主頁面模塊:用戶在登錄模塊驗證身份通過后,從服務(wù)器調(diào)取好友信息,并在QQ主頁面上顯示。
(3)查找模塊:該模塊用于用戶查找好友,輸入對方帳號查找對方信息,并加為好友,與服務(wù)器連接并修改數(shù)據(jù)表的內(nèi)容,在主頁面上添加上新好友。
(4)文字聊天模塊:此模塊實現(xiàn)用戶間的點對點聊天,兩客戶端通過UDP連接,發(fā)送和接收文字信息,實現(xiàn)局域網(wǎng)文字聊天。
(5)文件傳輸模塊:此模塊實現(xiàn)兩客戶端點對點文件傳輸,圖片,文本文檔及壓縮包等均可傳輸。
(6)語音視頻聊天模塊:此模塊實現(xiàn)了語音和視頻的捕獲以及點對點傳輸功能。
服務(wù)器端根據(jù)功能要求可分為以下三個模塊:
(1)服務(wù)器監(jiān)聽模塊:用于回應(yīng)客戶端請求,包括登錄回應(yīng),注冊回應(yīng),調(diào)用好友信息回應(yīng)等。
(2)遠程截圖模塊:此模塊實現(xiàn)服務(wù)器端從上線的客戶端獲取IP地址后截取對方屏幕顯示。
(3)查詢模塊:此模塊實現(xiàn)服務(wù)器端訪問數(shù)據(jù)庫并查詢數(shù)據(jù)庫信息。分為綜合查詢和詳細查詢功能。
3 系統(tǒng)程序的總體設(shè)計與實現(xiàn)
本系統(tǒng)軟件采用模塊化結(jié)構(gòu),由用戶登錄程序、用戶注冊程序、好友信息顯示程序、好友查找程序、文字聊天程序、文件傳輸程序等子程序構(gòu)成。其中,文件傳輸,語音視頻聊天模塊都具有獨立性,可在單獨設(shè)計后加入到整個系統(tǒng)中,其余各模塊間需要服務(wù)器客戶端相互連接同時調(diào)試才可實現(xiàn)。服務(wù)器端首先開啟運行,在和客戶端相互通訊實現(xiàn)基本功能。
4 結(jié)束語
本系統(tǒng)基于Delphi6.0和Sql Server 2000的運用,在研究和分析計算機TCP/IP網(wǎng)絡(luò)協(xié)議基礎(chǔ)上,實現(xiàn)不同計算機之間的數(shù)據(jù)通訊。采用C/S結(jié)構(gòu),實現(xiàn)在功能有:用戶的注冊和登錄,好友的顯示和查找,好友文字、語音視頻聊天,文件傳輸?shù)取?/p>
【參考文獻】
[1]劉德勇,朱明富.基于Internet的遠程協(xié)議作故障診斷系統(tǒng)技術(shù)[J].現(xiàn)代電子技術(shù),2001,12:23~26.
[2]祖守徒.基于Ethernet的分布式監(jiān)控系統(tǒng)通信技術(shù)的研究[D].2006.
[責(zé)任編輯:湯靜]