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

正文內(nèi)容

基于visualc++的p2p文件傳輸系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)-文庫吧

2025-11-02 02:23 本頁面


【正文】 ............................................................................ 33 第五章 后記 .......................................................................................................... 36 第六章 參考文獻(xiàn) ................................................................................................... 37 第七章 致 謝 ...................................................................................................... 38 東南大學(xué)成賢學(xué)院 第 1 頁 共 44 頁 第一章 緒論 課題的主要內(nèi)容和國內(nèi)外發(fā)展方向 P2P 可以理解為“伙伴對伙伴”的意思。目前人們認(rèn)為其在加強(qiáng)網(wǎng)絡(luò)上人的交流、文件交換、分布計(jì)算等方面大有前途。 2021年,尼古拉斯曾斯特姆 (Niklas Zennstrom)把 P2P 音 樂下載軟件 KaZaA 買給一家小公司時(shí),得到了 50 萬美元; 2021 年,他把P2P 通信軟件 Skype 出售給 eBay 時(shí),賺到了 21億美金。三年前,因?yàn)?P2P 音樂下載,他和創(chuàng)業(yè)伙伴面臨著來自美國唱片工業(yè)協(xié)會(huì)的訴訟威脅;三年后, P2P 支撐的互聯(lián)網(wǎng)通信已經(jīng)成為市場的寵兒。 P2P 使得一個(gè)用戶可以直接連接到其它用戶的計(jì)算機(jī),并交換文件,而不是像過去那樣連接到服務(wù)器去瀏覽與下載。 P2P 另一個(gè)重要特點(diǎn)是改變互聯(lián)網(wǎng)現(xiàn)在的以大網(wǎng)站為中心的狀態(tài),重返“非中心化”,并把權(quán)力交還給用戶。 P2P 看起來似乎很新,但是正如 B2C、 B2B 是將現(xiàn)實(shí)世界中很平常的東西移植到互聯(lián)網(wǎng)上一樣, P2P 并不是什么新東西。在現(xiàn)實(shí)生活中我們每天都按照 P2P 模式面對面地或者通過電話交流和溝通。即使從網(wǎng)絡(luò)看, P2P 也不是新概念, P2P 是互聯(lián)網(wǎng)整體架構(gòu)的基礎(chǔ)?;ヂ?lián)網(wǎng)最基本的協(xié)議 TCP/IP 并沒有客戶端和服務(wù)器的概念,所有的設(shè)備都是通訊的平等的一端。在十年之前,所有的互聯(lián)網(wǎng)上的系統(tǒng)都同時(shí)具有服務(wù)器和客戶端的功能。當(dāng)然,后來發(fā)展的那些架構(gòu)在 TCP/IP 之上的軟件的確采用了客戶機(jī) /服務(wù)器的結(jié)構(gòu):瀏覽器和 Web 服務(wù)器,郵件客戶端和郵件服務(wù)器。但是,對于服務(wù)器來說,它們 之間仍然是對等聯(lián)網(wǎng)的。以 為例,互聯(lián)網(wǎng)上并沒有一個(gè)巨大的、唯一的郵件服務(wù)器來處理所有的 ,而是對等聯(lián)網(wǎng)的郵件服務(wù)器相互協(xié)作把 傳送到相應(yīng)的服務(wù)器上去。但是過去的 5年里,互聯(lián)網(wǎng)的發(fā)展至少從表面上遠(yuǎn)離了 P2P,互聯(lián)網(wǎng)上絕大部分的節(jié)點(diǎn)也不能和其它節(jié)點(diǎn)直接地交流。 今天, P2P 再一次被關(guān)注主要是由 于 Napster 以及 ICQ 類軟件的出現(xiàn),雖然在Napster 之前 P2P 方式的研究也從未停止。 Napster 正是喚醒了深藏在互聯(lián)網(wǎng)背后的對等聯(lián)網(wǎng)。 Napster 的文件共享功能在局域網(wǎng)中共享目錄也是再平 常不過的事情。但是Napster的成功促使人們認(rèn)識(shí)到把這種“對等聯(lián)網(wǎng)”拓展到整個(gè)互聯(lián)網(wǎng)范圍的可能性。當(dāng)然,在許多人的眼中, Napster 并不是純粹的 P2P,它仍然需要一個(gè)處于中心協(xié)調(diào)機(jī)制。 P2P 引導(dǎo)網(wǎng)絡(luò)計(jì)算模式從集中式向分布式偏移,也就是說網(wǎng)絡(luò)應(yīng)用的核心從中央服務(wù)器向網(wǎng)絡(luò)邊緣的終端設(shè)備擴(kuò)散:服務(wù)器到服務(wù)器、服務(wù)器到 PC 機(jī)、 PC 機(jī)到 PC機(jī), PC機(jī)到 WAP 手機(jī)??所有網(wǎng)絡(luò)節(jié)點(diǎn)上的設(shè)備都可以建立 P2P 對話。這使人們在Inter上的共享行為被提到了一個(gè)更高的層次,使人們以更主動(dòng)深刻的方式參與到網(wǎng)東南大學(xué)成賢學(xué)院 第 2 頁 共 44 頁 絡(luò)中去,正如 I2(第二代互聯(lián)網(wǎng):簡單的說,就是借助 IPv6的力量,解決絕大多數(shù)第一代互聯(lián)網(wǎng)遇到的難題,把網(wǎng)絡(luò)、電視、電話還有所有可能想象到的應(yīng)用囊括其中 )之父 Doug. Van Houweling 在他的中國之行時(shí)說到的:“下一代互聯(lián)網(wǎng)民們將真正參與到網(wǎng)絡(luò)中來,每個(gè)人都能為網(wǎng)絡(luò)的資源和功能擴(kuò)展作出自己的貢獻(xiàn)?!?P2P 給互聯(lián)網(wǎng)的分布、共享精神帶來了無限的遐想。 在國外, P2P 發(fā)展已經(jīng)如火如荼, Intel、 Sun、 Microsoft 等公司已經(jīng)在制定 P2P的標(biāo)準(zhǔn)。 P2P 技術(shù)的巨大影響力橫亙了內(nèi)容發(fā)行、通信等領(lǐng)域,它廣闊的前景引 來微軟、 Google、雅虎、新聞集團(tuán)等公司的關(guān)注,但是 P2P 對內(nèi)容產(chǎn)業(yè)以及對傳統(tǒng)通信公司的負(fù)面影響依然存在,在很多國家都曾經(jīng)出現(xiàn)過互聯(lián)網(wǎng)服務(wù)提供商封殺 P2P的事件。Napster 雖然敗訴,這似乎預(yù)示著 P2P 的挫折,但實(shí)際上這卻意味著由 P2P 帶來的新的規(guī)則正在建立,相關(guān)的數(shù)字版權(quán)立法已經(jīng)開始, P2P 的力量開始逐步顯示出來。 國內(nèi) P2P 的市場基本從 2021年底開始逐步啟動(dòng)。目前,國內(nèi) P2P 的應(yīng)用主要有兩個(gè)方向:文件共享及協(xié)同工作。 具有代表性的技術(shù)有: P2P 多線程斷點(diǎn)續(xù)傳的實(shí)現(xiàn); P2P 之 UDP 穿透 NAT 的原理與實(shí)現(xiàn); IPTV 業(yè)務(wù)承載網(wǎng)的解決; IPTV 流媒體分發(fā)和交付技術(shù)的新突破;第三代google 排名搜索引擎技術(shù);網(wǎng)格的應(yīng)用;基于 P2P 思想的 蠕蟲的原理與防治;網(wǎng)絡(luò)電話;流媒體應(yīng)用等。 軟件的預(yù)期實(shí)現(xiàn)的目標(biāo)和完成狀況 服務(wù)器端的應(yīng)用程序?qū)⑼瓿扇缦鹿δ? —— 通過數(shù)據(jù)庫驗(yàn)證用戶名密碼登陸 —— 設(shè)置服務(wù)器的賬號(hào) —— 監(jiān)聽客戶端的連接請求 —— 為請求連接的客戶端建立 SOCKET 隊(duì)列 —— 向客戶端發(fā)送消息 —— 從客戶端接收消息 —— 向客戶端發(fā)送文件 —— 從客戶端接收文件 —— 與客戶端語音通信 —— 截取 屏幕 —— 可以與客戶端進(jìn)行遠(yuǎn)程協(xié)助(控制鍵盤鼠標(biāo)進(jìn)程) 客戶端的通訊程序?qū)⑼瓿扇缦鹿δ? 東南大學(xué)成賢學(xué)院 第 3 頁 共 44 頁 —— 通過數(shù)據(jù)庫驗(yàn)證用戶名密碼登陸 —— 建立與服務(wù)器的連接 —— 關(guān)閉與服務(wù)器的連接 —— 向服務(wù)器發(fā)送消息 —— 從服務(wù)器接收消息 —— 向服務(wù)器發(fā)送文件 —— 從服務(wù)器接收文件 —— 與服務(wù)器語音通信 —— 截取屏幕 —— 可以與服務(wù)器進(jìn)行遠(yuǎn)程協(xié)助(控制鍵盤鼠標(biāo)進(jìn)程) 目前的實(shí)現(xiàn)狀況 由于這套軟件采用 Visual C++進(jìn)行網(wǎng)絡(luò)編程,同時(shí)還涉及到了數(shù)據(jù)庫編程和 VC++的多線程,為了使用戶接口美觀、使用方便, 還需要采用編程的方法進(jìn)行處理和美化,另外處理網(wǎng)絡(luò)通信和用戶信息交流還要建立各種輔助的數(shù)據(jù)結(jié)構(gòu)和信息管理系統(tǒng),所以需要處理的細(xì)節(jié)問題較多;此外,服務(wù)器和客戶端軟件要分別編寫,這樣還牽扯到它們之間通信方案的制定,這樣造成整套軟件的編碼工作量較大,所以整個(gè)軟件的實(shí)現(xiàn)目標(biāo)并未完全實(shí)現(xiàn),主要是與數(shù)據(jù)庫連接,語音聊天和界面的美工尚未完成。 東南大學(xué)成賢學(xué)院 第 4 頁 共 44 頁 第二章 通信方案的設(shè)計(jì) TCP 與 UDP 協(xié)議的選擇 TCP 協(xié)議 TCP/IP 通常指的是關(guān)于 TCP 和 IP 的任何東西,它是一個(gè)統(tǒng)稱,它既可以包括其它協(xié)議,其它應(yīng)用程 序,還可以包括網(wǎng)絡(luò)介質(zhì)?;窘Y(jié)構(gòu)如圖 , 這個(gè)結(jié)構(gòu)存在于Inter 中計(jì)算機(jī)之中,它決定了計(jì)算機(jī)在網(wǎng)絡(luò)上的動(dòng)作。 圖 2 1TCP/IP 模型中早期的協(xié)議和網(wǎng)絡(luò) 如果 IP 數(shù)據(jù)包中有已經(jīng)封好的 TCP 數(shù)據(jù)包,那么 IP 將把它們向‘上’傳送到 TCP層。 TCP 將包排序并進(jìn)行錯(cuò)誤檢查,同時(shí)實(shí)現(xiàn)虛電路間的連接。 TCP 資料包中包括序號(hào)和確認(rèn),所以未按照順序收到的包可以被排序,而損壞的包可以被重傳。 TCP 將它的信息送到更高層的應(yīng)用程 序,例如 Tel 的服務(wù)程序和客戶程序。應(yīng)用程序輪流將信息送回 TCP 層, TCP 層便將它們向下傳送到 IP 層,設(shè)備驅(qū)動(dòng)程序和TELNET FTP SMTP DNS TCP UDP IP ARPANET SATNET LAN 協(xié)議 網(wǎng)絡(luò) 應(yīng)用層 傳輸層 網(wǎng)絡(luò)層 物理層和數(shù)鏈層 東南大學(xué)成賢學(xué)院 第 5 頁 共 44 頁 物理介質(zhì),最后到接收方。 面向連接的服務(wù)(例如 Tel、 FTP、 rlogin、 X Windows 和 SMTP)需要高度的可靠性,所以它們使用了 TCP。 DNS 在某些情況下使用 TCP 協(xié)議發(fā)送和接收域名數(shù)據(jù)庫,但使用 UDP 協(xié)議傳送有關(guān)單個(gè)主機(jī)的信息。 TCP 協(xié)議即采用流式套接字 SOCKET_STREAM。 UDP 協(xié)議 UDP 與 TCP 位于同一層 , UDP 不被應(yīng)用于那些使用虛電路的面向 連接的服務(wù),UDP 主要用于那些面向查詢 應(yīng)答的服務(wù),例如 NFS。相對于 FTP 或 Tel,這些服務(wù)需要交換的信息量較小。使用 UDP 的服務(wù)包括 NTP(網(wǎng)落時(shí)間協(xié)議)和 DNS( DNS也使用 TCP)。 欺騙 UDP 包比欺騙 TCP 包更容易,因?yàn)?UDP 沒有建立初始化連接(也可以稱為握手)(因?yàn)樵趦蓚€(gè)系統(tǒng)間沒有虛電路),也就是說,與 UDP 相關(guān)的服務(wù)面臨著更大的危險(xiǎn)。UDP 協(xié)議使用數(shù)據(jù)報(bào)式套接字 SOCKET_DGRAM。 雖然基于 TCP/IP 連接協(xié)議(流套接字)的服務(wù)是設(shè)計(jì)客戶機(jī) /服務(wù)器應(yīng)用程序時(shí)的主流標(biāo)準(zhǔn),但有些服 務(wù)也是可以通過無連接協(xié)議(資料報(bào)套接字)提供的。先介紹一下TCP socket 與 UDP socket 在傳送數(shù)據(jù)時(shí)的特性: Stream (TCP) Socket 提供雙向、可靠、有次序、不重復(fù)的數(shù)據(jù)傳送。 Datagram(UDP) Socket 雖然提供雙向的通信,但沒有可靠、有次序、不重復(fù)的保證,所以 UDP 傳送數(shù)據(jù)可能會(huì)收到無次序、重復(fù)的數(shù)據(jù),甚至數(shù)據(jù)在傳輸過程中出現(xiàn)遺漏。由于 UDP Socket 在傳送數(shù)據(jù)時(shí),并不保證數(shù)據(jù)能完整地送達(dá)對方,所以本程序采用 TCP 協(xié)議處理 Socket,以保證數(shù)據(jù)的正確性。一般情 況下 TCP Socket 的數(shù)據(jù)發(fā)送和接收是調(diào)用 send() 及 recv() 這兩個(gè)函數(shù)來達(dá)成,而 UDP Socket則是用 sendto() 及 recvfrom() 這兩個(gè)函數(shù),這兩個(gè)函數(shù)調(diào)用成功發(fā)揮發(fā)送或接收的數(shù)據(jù)的長度,否則返回 SOCKET_ERROR。 多線程編程 由于用到對話框,所以單線程的操作會(huì)嚴(yán)重影響程序功能的實(shí)現(xiàn),所以采用多線程操作,使得在打開一個(gè)對話框時(shí),不會(huì)影響到另一個(gè)對話框的功能,在 MFC 程序中創(chuàng)建一個(gè)線程,調(diào)用 AfxBeginThread 函數(shù): CWinThread AfxBeginThread( AFX_THREADPROC pfnThreadProc, 控制函數(shù) LPVOID pParam, 傳遞給控制函數(shù)的參數(shù) 東南大學(xué)成賢學(xué)院 第 6 頁 共 44 頁 int nPriority = THREAD_PRIORITY_NORMAL, 線程的優(yōu)先級 UINT nStackSize = 0, 線程的堆棧大小 DWORD dwCreateFlags = 0, 線程的創(chuàng)建標(biāo)志 LPSECURITY_ATTRIBUTES lpSecurityAttrs = NULL 線程的安全屬性 )。 結(jié)束進(jìn)程:進(jìn)程只是提 供了一段地址空間和內(nèi)核對象,其運(yùn)行是通過在其地址空間內(nèi)的主線程來體現(xiàn)的。當(dāng)主線程的進(jìn)入點(diǎn)函數(shù)返回時(shí),進(jìn)程也就隨之結(jié)束。這種進(jìn)程的終止方式是進(jìn)程的正常退出,進(jìn)程中的所有線程資源都能夠得到正確的清除。除了這種進(jìn)程的正常退出方式外,有時(shí)還需要在程序中通過代碼來強(qiáng)制結(jié)束本進(jìn)程或其它進(jìn)程的運(yùn)行。 Exit Process()函數(shù)即可在進(jìn)程中的某個(gè)線程中使用,并將立即終止本進(jìn)程的運(yùn)行。 該函數(shù)具有強(qiáng)制性,在執(zhí)行完畢后進(jìn)程即已經(jīng)被結(jié)束,因此位于其后的任何代碼將不能被執(zhí)行。雖然 ExitProcess()函數(shù)可以在結(jié)束進(jìn)程的 同時(shí)通知與其相關(guān)聯(lián)的動(dòng)態(tài)鏈接庫,但是由于它的這種執(zhí)行的強(qiáng)制性,使得 ExitProcess()函數(shù)在使用上將存在安全隱患。 WinI 編程與 WinSock 編程的比較及其優(yōu)點(diǎn) 網(wǎng)絡(luò)編程簡單 使用 WinSock 編程,用戶需要熟悉網(wǎng)絡(luò)通信及 TCP/IP 和各種協(xié)議;而使用 WinI進(jìn)行開發(fā),就不需要了解具體實(shí)現(xiàn)協(xié)議,從而簡化了網(wǎng)絡(luò)編程。另外, WinI 函數(shù)的調(diào)用形式與多數(shù) Win32 API 函數(shù)類似,也便于用戶掌握和使用。 程序維護(hù)簡單,升級方便 Inter 發(fā)展迅速,其各種協(xié)議 也在不斷發(fā)展與完善。 WinI 隱藏了協(xié)議的具體的協(xié)議細(xì)節(jié),使得應(yīng)用程序不必直接實(shí)現(xiàn)協(xié)議,而只需要調(diào)用一個(gè)協(xié)議接口,這樣在協(xié)議更新時(shí),只要更新 WinI 動(dòng)態(tài)鏈接庫即可,程序本身無須做任何修改。 性能優(yōu)越,支持多線程 WinI 函數(shù)支持多線程,可以在多線程中調(diào)用各種 WinI 函
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1