資源描述:
《基于UDP協(xié)議的網絡聊天程序設計》由會員上傳分享,免費在線閱讀,更多相關內容在行業(yè)資料-天天文庫。
1、《基于UDP協(xié)議的網絡聊天程序設計》基于UDP協(xié)議的網絡聊天程序設計學生姓名:XX指導老師:XX摘要本課程設計是是基于UDP協(xié)議的網絡聊天程序設計,UDP協(xié)議是無連接的協(xié)議,是TCP/IP協(xié)議的一種分層協(xié)議。通過本設計進一步掌握利用VisualC++進行程序設計的能力和運用面向對象程序設計的思想和方法,初步掌握開發(fā)一個小型實用系統(tǒng)的基本方法,理解Windows程序的運行過程。本設計實現(xiàn)的聊天工具要求在MicrosoftVisualC++6.0上,編寫一個程序,采用C/S模式,模擬網絡上的聊天軟件,實現(xiàn)
2、在局域網上兩臺主機之間的通信。且經過測試,該聊天程序能夠正常運行,實現(xiàn)了設計目標。關鍵詞UDP協(xié)議;客戶機/服務器;網絡聊天1引言現(xiàn)在是網絡的世界,網絡發(fā)展的不可估量了,它可以包括我們生活中的方方面面,小到上網瀏覽新聞、上網購物,大到網上理財、網上會議,可以說網絡把我們的世界變小了,即使在海角天邊,只要有網絡的地方我們就可以隨時聯(lián)系。最簡單的形式就是進行網絡聊天了,比如QQ、MSN等等很簡單的聊天工具,可以隨時拉近你我的距離。本設計將基于UDP協(xié)議和局域網環(huán)境,實現(xiàn)一個即時聊天程序。第16頁共16頁《
3、基于UDP協(xié)議的網絡聊天程序設計》1.1本文主要內容本文第二節(jié)介紹了UDP協(xié)議和客戶機/服務器模式基本原理,第三節(jié)詳細描述了設計思路和流程,第四節(jié)為本次課程設計的總結。1.2設計平臺MicrosoftVisualC++6.0,簡稱VC或者VC6.0,是微軟推出的一款C++編譯器,將“高級語言”翻譯為“機器語言(低級語言)”的程序。VisualC++是一個功能強大的可視化軟件開發(fā)工具。自1993年Microsoft公司推出VisualC++1.0后,隨著其新版本的不斷問世,VisualC++已成為專業(yè)程
4、序員進行軟件開發(fā)的首選工具。雖然微軟公司推出了VisualC++.NET(VisualC++7.0),但它的應用有很大的局限性,只適用于Windows2000、WindowsXP和WindowsNT4.0。所以實際中,更多的是以VisualC++6.0為平臺。VisualC++6.0由Microsoft開發(fā),它不僅是一個C++編譯器,而且是一個基于Windows操作系統(tǒng)的可視化集成開發(fā)環(huán)境(integrateddevelopmentenvironment,IDE)。VisualC++6.0由許多組件組
5、成,包括編輯器、調試器以及程序向導AppWizard、類向導ClassWizard等開發(fā)工具。這些組件通過一個名為DeveloperStudio的組件集成為和諧的開發(fā)環(huán)境。Microsoft的主力軟件產品。VisualC++是一個功能強大的可視化軟件開發(fā)工具。自1993年Microsoft公司推出VisualC++1.0后,隨著其新版本的不斷問世,VisualC++已成為專業(yè)程序員進行軟件開發(fā)的首選工具。雖然微軟公司推出了VisualC++.NET(VisualC++7.0),但它的應用的很大的局限性
6、,只適用于Windows2000,WindowsXP和WindowsNT4.0。所以實際中,更多的是以VisualC++6.0為平臺。第16頁共16頁《基于UDP協(xié)議的網絡聊天程序設計》2設計原理2.1UDP協(xié)議原理UDP協(xié)議的全稱是用戶數(shù)據報協(xié)議,在網絡中它與TCP協(xié)議一樣用于處理數(shù)據包,是一種無連接的協(xié)議。在OSI模型中,在第四層——傳輸層,處于IP協(xié)議的上一層。UDP有不提供數(shù)據包分組、組裝和不能對數(shù)據包進行排序的缺點,也就是說,當報文發(fā)送之后,是無法得知其是否安全完整到達的。UDP用來支持那些
7、需要在計算機之間傳輸數(shù)據的網絡應用。包括網絡視頻會議系統(tǒng)在內的眾多的客戶/服務器模式的網絡應用都需要使用UDP協(xié)議。UDP協(xié)議從問世至今已經被使用了很多年,雖然其最初的光彩已經被一些類似協(xié)議所掩蓋,但是即使是在今天UDP仍然不失為一項非常實用和可行的網絡傳輸層協(xié)議。UDP是OSI參考模型中一種無連接的傳輸層協(xié)議,它主要用于不要求分組順序到達的傳輸中,分組傳輸順序的檢查與排序由應用層完成,提供面向事務的簡單不可靠信息傳送服務。UDP協(xié)議基本上是IP協(xié)議與上層協(xié)議的接口。UDP協(xié)議適用端口分別運行在同一臺
8、設備上的多個應用程序。與所熟知的TCP(傳輸控制協(xié)議)協(xié)議一樣,UDP協(xié)議直接位于IP(網際協(xié)議)協(xié)議的頂層。根據OSI(開放系統(tǒng)互連)參考模型,UDP和TCP都屬于傳輸層協(xié)議。UDP協(xié)議的主要作用是將網絡數(shù)據流量壓縮成數(shù)據包的形式。一個典型的數(shù)據包就是一個二進制數(shù)據的傳輸單位。每一個數(shù)據包的前8個字節(jié)用來包含報頭信息,剩余字節(jié)則用來包含具體的傳輸數(shù)據。UDP是無連接的,即發(fā)送數(shù)據之前不需要建立連接(當然發(fā)送數(shù)據結束時也沒有連接可釋放)因此減少了開銷和發(fā)