出版時(shí)間:2010-5 出版社:水利水電出版社 作者:高守傳,周書鋒 主編 頁(yè)數(shù):391
Tag標(biāo)簽:無
前言
隨著計(jì)算機(jī)網(wǎng)絡(luò)尤其是Internet的迅猛發(fā)展,人類社會(huì)已經(jīng)進(jìn)入了以網(wǎng)絡(luò)技術(shù)為基礎(chǔ)的信息化時(shí)代,網(wǎng)絡(luò)應(yīng)用滲透到生活的各個(gè)領(lǐng)域,即使在我們這樣的發(fā)展中國(guó)家,普及程度也相當(dāng)可觀。2009年7月16日,中國(guó)互聯(lián)網(wǎng)絡(luò)信息中心(CNNIC)發(fā)布的統(tǒng)計(jì)報(bào)告顯示,截至2009年6月30日,我國(guó)網(wǎng)民規(guī)模已達(dá)3.3 8億,居世界第一位。網(wǎng)絡(luò)的普及大大改變了人們的傳統(tǒng)習(xí)慣,拓展了新的媒體形式。但是,真正提供服務(wù)的卻是構(gòu)建在其上的各種類型的網(wǎng)絡(luò)應(yīng)用軟件,通過這些軟件提供的服務(wù),人們可以進(jìn)行網(wǎng)上購(gòu)物、收發(fā)電子郵件、實(shí)現(xiàn)家庭辦公、進(jìn)行視頻點(diǎn)播及遠(yuǎn)程教育等。TCP/IP協(xié)議是Internet的核心,在制定TCP/IP協(xié)議的目標(biāo)時(shí)就已指出,任何人都能方便地使用Internet,并在其上開發(fā)出滿足不同需要的應(yīng)用程序。本書即是參照TCP/IP協(xié)議的這一要求,并圍繞TCP/IP協(xié)議,在Windows環(huán)境中實(shí)現(xiàn)網(wǎng)絡(luò)程序的設(shè)計(jì)。本書的主要內(nèi)容如下:第1章作為本書的開篇,也是TCP/IP協(xié)議的基礎(chǔ),介紹了常見的網(wǎng)絡(luò)模型,同時(shí)還介紹了尋址方法與數(shù)據(jù)包在網(wǎng)絡(luò)中的傳遞過程。第2章詳細(xì)介紹Windows中套接字的相關(guān)知識(shí),主要包括套接字規(guī)范、Winsock.編程基礎(chǔ)、連接與無連接通信知識(shí)、套接字選項(xiàng)與I/O控制等,最后分別給出連接與無連接通信的例子來加深讀者對(duì)二者的理解。第3章介紹Windows套接字的5種I/O操作模型,即select模型(又稱選擇模型)、WSAAsyncSelect模型(又稱異步選擇模型)、WSAEventSelect模型(又稱事件選擇模型)、重疊I/O模型和完成端口模型,同時(shí)分別給出它們的具體實(shí)現(xiàn),最后對(duì)各個(gè)模型進(jìn)行了簡(jiǎn)單比較,以便幫助讀者選擇合適的編程模型。第4章介紹Windows網(wǎng)絡(luò)服務(wù)的編程方法,因?yàn)榇蠖鄶?shù)網(wǎng)絡(luò)服務(wù)是以系統(tǒng)服務(wù)的方式提供,所以有必要通過本章來學(xué)習(xí)Windows服務(wù)程序的設(shè)計(jì)方法。第5章介紹MFC中提供的套接字類,并對(duì)如何通過它們進(jìn)行網(wǎng)絡(luò)編程進(jìn)行詳細(xì)介紹,結(jié)尾給出了一個(gè)使用它們進(jìn)行網(wǎng)絡(luò)聊天室開發(fā)的實(shí)例。第6章介紹WinInet、ISAPI與Internet編程的具體細(xì)節(jié),這些標(biāo)準(zhǔn)簡(jiǎn)化了C/S模式的Internet.編程方法。第7~9章介紹TCP/IP協(xié)議族中的應(yīng)用層協(xié)議,主要包括HTTP協(xié)議、SMTP協(xié)議、:POP3協(xié)議、SOCK.S5代理協(xié)議等。作為網(wǎng)絡(luò)應(yīng)用程序的設(shè)計(jì)人員,在理解TCP/IP協(xié)議工作原理的基礎(chǔ)上,應(yīng)用層協(xié)議應(yīng)是關(guān)注的重點(diǎn),這也是本書以此3章來介紹應(yīng)用層協(xié)議的目的所在。第10章介紹原始套接字的相關(guān)知識(shí),包括Windows對(duì)原始套接字的支持情況、如何使用原始套接字等,最后給出兩個(gè)例子分別實(shí)現(xiàn)了不同的用途,其中包括在ICMP協(xié)議中的應(yīng)用和數(shù)據(jù)捕獲方面的應(yīng)用。第l1章介紹WinPcap的相關(guān)知識(shí),作為Windows環(huán)境中經(jīng)典的數(shù)據(jù)包捕獲驅(qū)動(dòng)庫(kù),WinPcap的應(yīng)用非常廣泛,最后給出WinPcap在數(shù)據(jù)捕獲方面的應(yīng)用實(shí)例。第12章介紹遠(yuǎn)程控制的相關(guān)知識(shí),包括連接方式、隱藏技術(shù)、啟動(dòng)方式、文件捆綁、鍵盤記錄等,最后給出一個(gè)簡(jiǎn)單的控制實(shí)例,讀者可以應(yīng)用本章介紹的知識(shí)對(duì)此實(shí)例進(jìn)行擴(kuò)展,以實(shí)現(xiàn)一個(gè)具有較強(qiáng)功能的遠(yuǎn)程控制軟件。本書定位于初、中級(jí)讀者,也可用作高等院校計(jì)算機(jī)及通信專業(yè)低年級(jí)學(xué)生的參考教材。在編寫時(shí),力求做到淺顯易懂,并配有大量插圖幫助讀者理解,在程序設(shè)計(jì)實(shí)例中注釋也比較詳細(xì),以便讀者自學(xué)。網(wǎng)絡(luò)程序設(shè)計(jì)是一門實(shí)踐性較強(qiáng)的課程,對(duì)讀者來說,只有在理解相關(guān)理論的基礎(chǔ)上進(jìn)行大量的動(dòng)手實(shí)踐,才能學(xué)好網(wǎng)絡(luò)程序設(shè)計(jì),因此,建議讀者在學(xué)習(xí)過程中一定要邊學(xué)習(xí)邊實(shí)踐,以達(dá)到學(xué)習(xí)效率的最大化。
內(nèi)容概要
網(wǎng)絡(luò)程序設(shè)計(jì)是當(dāng)前各種程序設(shè)計(jì)中最活躍的一個(gè)分支,幾乎滲透到各種應(yīng)用場(chǎng)合。在Windows網(wǎng)絡(luò)程序設(shè)計(jì)中,基于套接字的編程方式又是一種比較常見而且最為靈活的網(wǎng)絡(luò)應(yīng)用程序設(shè)計(jì)方法。本書從簡(jiǎn)單的網(wǎng)絡(luò)通信協(xié)議入手,介紹了Windows中常見網(wǎng)絡(luò)程序的設(shè)計(jì)方法,主要包括TCPfiP協(xié)議、網(wǎng)絡(luò)服務(wù)、MFC網(wǎng)絡(luò)編程、WinInet、ISAPI、Internet、HTTP協(xié)議、SMTP/POP3協(xié)議、代理協(xié)議、原始套接字等。此外,還對(duì)通用的數(shù)據(jù)包捕獲驅(qū)動(dòng)WinPcap進(jìn)行簡(jiǎn)要介紹,并給出了捕獲示例,最后結(jié)合現(xiàn)實(shí)需要對(duì)遠(yuǎn)程控制的相關(guān)技術(shù)進(jìn)行說明,并給出了實(shí)現(xiàn)的例子。 全書內(nèi)容豐富,講解細(xì)膩,在對(duì)理論進(jìn)行闡述的同時(shí),結(jié)合具體實(shí)踐給出了相應(yīng)的實(shí)現(xiàn)代碼,具有較強(qiáng)的針對(duì)性,力求使讀者通過理論聯(lián)系實(shí)際,掌握Windows網(wǎng)絡(luò)程序設(shè)計(jì)的一般方法,學(xué)習(xí)盡可能多的知識(shí)。同時(shí),對(duì)于開發(fā)中可能會(huì)遇到的問題也都給出了相應(yīng)的提示或說明。 本書定位于初、中級(jí)讀者,同時(shí)也可用作高等院校計(jì)算機(jī)及通信專業(yè)低年級(jí)學(xué)生的參考教材。
書籍目錄
前言第1章 網(wǎng)絡(luò)模型 1.1 功能分層 1.2 OSI模型 1.2.1 OSI層次結(jié)構(gòu) 1.2.2 OSI各層功能 1.2.3 OSI層間通信 1.2.4 OSI數(shù)據(jù)封裝及解封裝 1.3 TCP/IP協(xié)議簇 1.3.1 TCPHP層次結(jié)構(gòu) 1.3.2 TCPHP各層功能 1.3.3 TCP/IP與OSl模型比較 1.3.4 Internet層——-IP協(xié)議 1.3.5 傳輸層——TcP協(xié)議 1.3.6 TCP連接的建立與終止 1.3.7 傳輸層一丁DP協(xié)議 1.3.8 Windows 2003 TCPhP結(jié)構(gòu)模型 1.4 LAN模型 1.4.1 IEEE 802概述 1.4.2以太網(wǎng)標(biāo)準(zhǔn) 1.5 尋址方法 1.6 數(shù)據(jù)包在網(wǎng)絡(luò)中的傳遞 1.7 本章小結(jié)第2章 Windows套接字基礎(chǔ) 2.1 套接字簡(jiǎn)介 2.1.1 Berkeley套接字 2.1.2 Windows套接字規(guī)范 2.2 Windows Sockets 2.2.1 Windows Sockets 1.0 2.2.2 Windows Sockets 1.1 2.3 WindOWS Sockets 2 2.3.1 Windows Sockets 2簡(jiǎn)介 2.3.2 同時(shí)訪問多個(gè)傳輸協(xié)議 2.3.3 與WinSock 1.1的兼容性 2.3.4 功能擴(kuò)展機(jī)制 2.3.5 多線程中的應(yīng)用 2.3.6 分散/聚集I/O支持 2.4 WinSock編程基礎(chǔ) 2.4.1 WinSock APl 2.4.2 網(wǎng)絡(luò)程序結(jié)構(gòu) 2.4.3 端口的概念 2.4.4 字節(jié)順序 2.4.5 出錯(cuò)的處理 2.4.6 win Sock庫(kù)的初始化及釋放 2.5 面向連接的通信 2.5.1 socket與WSASocket 2.5.2 綁定套接字bind 2.5.3 監(jiān)聽listen 2.5.4 accept與WSAAccept 2.5.5 send與WSASend 2.5.6 recv與WSARecv 2.5.7 connect與WSAConnect 2.5.8 closesocket 2.6 無連接通信 2.6.1 sendt0與WSASendto 2.6.2 recvfrom與WSARecvfrom- 2.7 套接字選項(xiàng)與I/O控制 2.7.1 套接字選項(xiàng) 2.7.2 套接字I/O控制 2.8 套接字工作模式 2.9 流式套接字編程實(shí)例 2.9.1 TCP服務(wù)端設(shè)計(jì) 2.9.2 TCP客戶端設(shè)計(jì) 2.10 數(shù)據(jù)報(bào)套接字編程實(shí)例 2.10.1 UDP服務(wù)端設(shè)計(jì) 2.10.2 UDP客戶端設(shè)計(jì) 2.11 本章小結(jié)第3章 windows Socket I/O模型 3.1 select模型……第4章 網(wǎng)絡(luò)服務(wù)第5章 MFC套接字網(wǎng)絡(luò)編程第6章 WinInet、ISAPI與Internet編程第7章 HTTP協(xié)議第8章 郵件傳輸?shù)?章 代理服務(wù)器第10章 原始套接字第11章 WinPcap應(yīng)用第12章 遠(yuǎn)程控制技術(shù)附錄A IP協(xié)議號(hào)附錄B 以太網(wǎng)型字段附錄C 常見端口附錄D ASCII表參考文獻(xiàn)
章節(jié)摘錄
插圖:如前所述,遠(yuǎn)程控制技術(shù)的實(shí)現(xiàn)依賴于主控端和被控端之間的通信。一般情況下,都是通過IPX/Spx或TCP/IP等協(xié)議來實(shí)現(xiàn)遠(yuǎn)程控制,而這些都依賴于主控端和被控端之間連接的建立,當(dāng)然也有少數(shù)部分通過類似UDP協(xié)議等非連接方式實(shí)現(xiàn)控制功能。本節(jié)只介紹主流的基于連接的通信控制。一般情況下,連接方式分為主動(dòng)連接和被動(dòng)連接(又叫反彈連接),這里的主動(dòng)和被動(dòng)是指站在主控端的角度而言,所謂主動(dòng)連接就是由主控端連接被控端,而被動(dòng)連接則是指被控端連接主控端。早期的遠(yuǎn)程控制軟件都是基于主動(dòng)的連接方式實(shí)現(xiàn),但是隨著網(wǎng)絡(luò)安全產(chǎn)品應(yīng)用的推廣,使得主動(dòng)連接方式遭遇到諸多的問題。例如,對(duì)于圖12.1 中的防火墻和網(wǎng)關(guān)后面的被控端而言,主動(dòng)連接方式很難穿透防火墻和網(wǎng)關(guān),所以如今采用這種連接方式的軟件比較鮮見了,而大都采用反彈連接的方式。因此,這也是本節(jié)的重點(diǎn)。對(duì)于反彈連接,所要解決的問題在于如何獲取主控端的地址。通常采用兩種方式,即直接指定和通過第三方來獲取。下面就對(duì)它們的具體實(shí)現(xiàn)進(jìn)行討論。直接指定就是將主控端的IP地址或域名配置在被控端的配置信息中,這樣當(dāng)被控端需要連接主控端時(shí),就從自己的配置信息中直接讀出主控端的地址信息或域名,然后直接連接即可。對(duì)于域名,它還要將其轉(zhuǎn)換為IP地址才能建立到主控端的連接。這種方式要求主控端擁有較為固定的IP地址,否則不能保證被控端總能連接到主控端。不過,這可以通過將域名綁定IP地址的方法解決這個(gè)問題。但是,又增加了另外的負(fù)擔(dān),在IP地址變動(dòng)比較頻繁的情況下,要時(shí)時(shí)將其變化反映到域名上。其實(shí),這種問題的另一個(gè)問題在于,若不對(duì)配置信息進(jìn)行加密,則可以通過分析被控端文件得知主控端的IP地址或主機(jī)域名,這顯然會(huì)帶來一定的風(fēng)險(xiǎn)。
編輯推薦
《Windows 網(wǎng)絡(luò)程序設(shè)計(jì)完全講義》以RFC網(wǎng)絡(luò)協(xié)議為基礎(chǔ),以TCP/IP協(xié)議為主線。避免了一般同類書籍脫離RFC且無側(cè)重討論的問題。緊密結(jié)合學(xué)習(xí)實(shí)踐需要,‰精選多個(gè)典型實(shí)例。以實(shí)用和興趣為引導(dǎo),避免枯澡且脫離實(shí)際的學(xué)習(xí),進(jìn)而提高了學(xué)習(xí)效率。以解決實(shí)際問題為原則,代碼緊湊而不冗余,而且在關(guān)鍵處還配有大量的代碼注釋。以最小的篇幅和最簡(jiǎn)單的代碼將復(fù)雜問題簡(jiǎn)單化,利于讀者消化和吸收。對(duì)于部分難點(diǎn)、疑點(diǎn),編者還在書中以“說明”或“注釋的形式向讀者提供相關(guān)背景,這樣便于讀者對(duì)正文的理解。全書編配了大量的插圖用以解釋“流程”、“結(jié)構(gòu)”、“框架”等抽象概念,以輔助讀者對(duì)相關(guān)概念從抽象到具體的轉(zhuǎn)化,從而實(shí)現(xiàn)準(zhǔn)確的理解。
圖書封面
圖書標(biāo)簽Tags
無
評(píng)論、評(píng)分、閱讀與下載
Windows 網(wǎng)絡(luò)程序設(shè)計(jì)完全講義 PDF格式下載