編輯推薦
《Linux/UNIX網絡編程》在編寫上力求由簡到繁、由淺入深和循序漸進,讀者不但可以學會程序設計的基本知識、設計思想和方法,還可以學會網絡程序設計的通用方法與步驟。《Linux/UNIX網絡編程》適閤作為高等院校計算機及相關專業學生的教材,也可作為廣大計算機愛好者、網絡研究人員和網絡程序開發人員的自學參考書。
《Linux/UNIX網絡編程》配有免費電子教案,讀者可以從中國水利水電齣版社網站上下載,網址為:
培養學生實際動手能力,加大瞭實戰檢驗的比重。教材體係閤理,展現瞭高校計算機教育教學改革的最新科研成果。
采用“案例引導,任務驅動”的編寫方式,便於激發學習興趣。
教學資源豐富,提供電子教案和程序源代碼。
內容簡介
本書詳細介紹瞭在UNIX/Linux係統下基於TCP/IP網絡套接口的基本編程方法,包括迭代與並發服務器編寫方法、進程與綫程編程技術、I/O編程技術、IPv4與IPv6的兼容性、原始套接口、數據鏈路訪問技術、廣播與多播技術等。為滿足教學實際需要,在本書最後一章給齣瞭Socket基本編程、服務器與單客戶的連接處理、多進程服務器模闆、多綫程編寫模闆和綫程專用數據TSD實現模闆5個實驗指導。在本書編寫過程中,編者參閱瞭國內外同類書籍及各類報刊雜誌,將精華思想應用到教學實踐中,形成的教學成果與體會反映在書中。在書中相關章節,編者都至少列舉一個完整的例子來說明問題,學習者將書中的基礎實驗做好,再通過相關章節中的實驗進行驗證,就可以學習高級Linux/UNIX編程瞭。
本書在編寫上力求由簡到繁、由淺入深和循序漸進,讀者不但可以學會程序設計的基本知識、設計思想和方法,還可以學會網絡程序設計的通用方法與步驟。本書適閤作為高等院校計算機及相關專業的教材,也可作為廣大計算機愛好者、網絡研究人員和網絡程序開發人員的自學參考書。
內頁插圖
目錄
序
前言
第1章 TCP/IP簡介
1.1 概述
1.1.1 基本的C/S服務模型
1.1.2 OSI模型和TCP/IP四層結構
1.2 IP協議介紹
1.2.1 IP數據報的格式
1.2.2 IP地址
1.2.3 子網掩碼(subnet mask)
1.3 TCP協議介紹
1.3.1 TcP連接的建立與終止
1.3.2 TcP狀態轉換圖
1.4 UDP協議
1.5 端口號
1.6 本章小結
1.7 實戰檢驗
理論鞏固
第2章 套接字編程簡介
2.1 套接字基礎
2.2 套接字的類型
2.3 套接字地址結構
2.3.1 IPv4套接字地址結構
2.3.2 IPv6套接字地址結構
2.3.3 兩種套接字地址結構的比較
2.3.4 通用套接字地址結構
2.4 套接字基本函數
2.4.1 字節排序函數
2.4.2 字節操縱函數
2.4.3 IP地址轉換函數
2.4.4 isfdtype()函數
2.5 值結果參數
2.6 本章小結
2.7 實戰檢驗
理論鞏固
上機實戰
第3章 基本TCP套接字編程
3.1 TCP套接字編程
3.1.1 socket()1函數
3.1.2 connect()函數
3.1.3 bind()函數
3.1.4 listen()函數
3.1.5 accept()函數
3.1.6 數據傳輸函數
3.1.7 close()函數
3.2 TCP套接字編程實例
3.3 服務器的3種異常情況
3.3.1 服務器主機崩潰
3.3.2 服務器主機崩潰後重啓
3.3.3 服務器主機關閉
3.4 本章小結
3.5 實戰檢驗
理論鞏固
上機實戰
第4章 基本UDP套接口編程
4.1 UDP套接字編程
4.1.1 recvfrom()函數
4.1.2 sendto函數
4.2 UDP套接字編程實例
4.3 UDP中對數據報的各項處理
4.3.1 數據報的丟失
4.3.2 驗證收到的響應
4.3.3 服務器進程未運行
4.4 connect函數用於UDP
4.5 本章小結
4.6 實戰檢驗
理論鞏固
上機實戰
第5章 並發服務器
5.1 服務器的分類
5.2 多進程並發服務器
5.2.1 進程基礎
5.2.2 進程創建
5.2.3 進程終止
5.2.4 多進程並發服務器
5.2.5 多進程並發服務器實例
5.3 多綫程服務器
5.3.1 綫程基礎
5.3.2 綫程基礎函數
5.3.3 給新綫程傳遞參數
5.3.4 多綫程並發服務器實例
5.3.5 綫程安全函數
5.3.6 綫程安全實例
5.3.7 用函數參變量實現綫程安全性
5.4 本章小結
5.5 實戰檢驗
理論鞏固
上機實戰
第6章名宇與地址轉換編程
6.1 概述
6.2 域名係統
6.3 gethostbyname()函數
6.4 RES USE INET6解析器選項
6.5 gethostbyname2函數對IPv6的支持
6.6 gethostbyaddr()函數
6.7 uname()函數
6.8 gethostname函數
6.9 getservbyname和getservbyport函數
6.10 getaddrinfo、gai strerror和host—serv函數
6.11 freeaddrinfo函數
6.12 使用getaddrinfo的TCP和UDP
6.13 gemameinfo函數
6.14 gethostbyaddr實例
6.15 本章小結
6.16 實戰檢驗
理論鞏固
上機實戰
第7章 IPv4和IPv6編程
7.1 IPv4客戶與IPv6服務器
7.2 IPv6客戶與IPv4服務器
7.3 IPv6 ADDRFORM套接口選項
7.4 IPv6地址測試宏
7.5 源代碼的可移植性
7.6 本章小結
7.7 實戰檢驗
理論鞏固
上機實戰
第8章 守護進程和inetd超級服務器
8.1 守護進程的原理
8.1.1 啓動守護進程
8.1.2 輸齣守護進程消息
8.1.3 syslog函數
8.1.4 創建守護進程
8.1.5 以守護進程方式運行的時間服務器
8.2 inetd的工作原理
8.2.1 概念
8.2.2 工作流程
8.2.3 inetd處理並發
8.3 本章小結
8.4 實戰檢驗
理論鞏固
上機實戰
第9章 I/O編程
9.1 I/O模型
9.2 select函數
9.3 shutdown函數
9.4 poll函數
9.5 使用select函數的TCP例子
9.6 高級的I/O編程
9.6.1 recv和send函數
9.6.2 recvmsg和sendmsg函數
9.7 非阻塞connect
9.8 ioctl函數
9.8.1 套接口操作
9.8.2 文件操作
9.8.3 接口配置
9.8.4 接口操作
9.8.5 ARP操作
9.8.6 路由錶操作
9.9 本章小結
9.10 實戰檢驗
理論鞏固
上機實戰
第10章 廣播與多播編程
10.1 廣播的概念
10.1.1 廣播的原理
10.1.2 廣播的示例
10.2 多播概念
10.2.1 多播與廣播的比較
10.2.2 多播套接口選項
10.2.3 多播的實例
10.3 本章小結
10.4 理論與鞏固
實戰檢驗
上機實戰
第11章 路由套接口編程
11.1 概念和數據鏈路套接口地址結構
11.2 sysctl操作
11.3 接口名和索引函數
11.4 本章小結
11.5 實戰檢驗
理論與鞏固
上機實戰
第12章 信號量編程
12.1 信號的概念
12.2 信號的概念及常見信號介紹
12.2.1 signal函數
12.2.2 處理SIGCHLD信號
12.2.3 wait和waitpid函數
12.2.4 kill和raise函數
12.2.5 SIGPIPE信號
12.2.6 alarm和pause函數
12.2.7 sigprocmask函數
12.2.8 sigpending函數
12.2.9 sigaction函數
12.2.10 sigsecjmp和siglongjmp函數
12.2.1l sigsuspend函數
12.2.12 abort函數
12.2.13 system函數
12.2.14 sleep函數
12.3 例子:使用SIGIO的uDP迴射服務器程序
12.4 本章小結
12.5 實戰檢驗
理論鞏固
上機實戰
第13章 原始套接口與數據鏈路訪問編程
13.1 原始套接口創建
13.2 原始套接口輸齣
13.3 原始套接口輸入
13.4 原始套接字編程實例
13.4.1 實例1:拒絕服務攻擊
13.4.2 實例2:ICMP包的構建、發送和接收
13.4.3 實例3:ping程序
13.5 數據鏈路層訪問
13.5.1 BPF BSD分組過濾器
13.5.2 數據鏈路提供者DLPI
13.5.3 Unux的SOCK PACKET
13.5.4 分組捕獲函數庫libpcap
13.5.5 libpcap的庫函數
13.5.6 數據鏈路層訪問實例
13.6 本章小結
13.7 理論與鞏固
實戰檢驗
上機實戰
第14章 實驗指導
14.1 Socket基本編程
14.2 服務器與單客戶的連接處理
14.3 多進程服務器模闆
14.4 多綫程編寫模闆
14.5 綫程專用數據TSD實現模闆
參考文獻
精彩書摘
第1章 TCP/IP簡介
1.1 概述
1.1.1 基本的C/S服務模型
網絡編程是指編寫的網絡通信程序可以與網絡上的其他程序進行通信。相互通信的網絡程序通常可以分為兩部分:客戶端(Client)和服務器端(Server)。在圖中給齣瞭一個最簡單的C/S服務模型。
在此模型中,客戶和服務器之間采用的是一對一的關係,即客戶一次隻與一個服務器通信。當然一個客戶同時與多個服務器進行通信,一個服務器同時與多個客戶通信的情況也存在。以最常用到的使用Web瀏覽器瀏覽網頁為例,IE瀏覽器在這裏就是客戶端,而遠程提供信息的服務器就是服務器端,可以在5分鍾內與許多不同的Web服務器通信;反之從服務器的角度來看,一颱Web服務器也可以同時處理多個客戶的請求。
對剛開始學習網絡編程的讀者來說,當第一次看到對C/S服務模型的介紹時,可能對它的理解就隻是圖中所描述的邏輯關係(一端享受服務,一端提供服務)而已,而並不是非常清楚用戶數據和服務器的數據是怎麼完成相互傳遞的。
前言/序言
隨著計算機科學與技術的發展,計算機應用已經滲透到人們生活、工作和學習的方方麵麵,從而日益改變著人類傳統的工作與生活方式。這就要求當代大學生在校學習期間就應儲備更多的計算機專業知識。
為瞭大力推廣計算機應用技術,更好地適應當前高等院校計算機教育模式的轉變,我們組織一批學術水平較高、教學經驗豐富、實踐能力較強的學術帶頭人、科研人員和從事相關課程教學的主要骨乾教師,對當前國內外高等院校計算機教育的教學現狀與發展趨勢、新形勢下如何加強高等院校的教材建設等問題進行瞭深入的研究和探討,並成立瞭“21世紀高等院校計算機科學規劃教材”編委會,在明確瞭高校的人纔培養模式、培養目標和課程體係的框架下,組織編寫瞭本套“21世紀高等院校計算機科學規劃教材”。
本套教材具有以下顯著特色:
(1)充分體現瞭計算機教育教學第一綫的需要。在編寫之初,編委會經過大量的前期調研和策劃,廣泛地瞭解各高等院校的教學現狀、市場需求,研討瞭課程設置、課程體係,擬定瞭相關的知識單元和知識點,充分聽取瞭教學第一綫教師對計算機教育的意見,使本套教材充分反映瞭老師們的需求。
(2)各高校計算機院(係)院長(主任)對本套教材的建設十分重視,熱情鼓勵教師積極參與編寫,充分展現瞭各個高校在計算機教育教學改革中取得的最新教研成果。
(3)本套教材在內容安排上既注重內容的全麵性,也充分考慮瞭不同學科、不同專業對計算機知識的不同需求的特殊性。
(4)本套教材為瞭充分調動學生分析問題、解決問題的積極性,以及鍛煉學生的實際動手能力,在全書中大力增加瞭實踐檢驗所占的比重。
(5)力求實踐性強是本套教材的一大特色,通過案例教學,將最急需、最實用的計算機知識傳授給學生。
為進一步體現實用性,本配套教材在編寫時配有課程學習輔導、實驗指導、綜閤實訓、電子教案等,以使教材嚮多元化、多媒體化發展,滿足廣大教師的教學需要。
總之,本套教材凝聚瞭眾多長期工作在教學、科研第一綫的教師及科研人員的教學科研成果、教學經驗和智慧,在寫法上體現瞭理論與實踐相結閤,相關的知識點講解清晰、透徹,注重教學實踐,力求科學實用,符閤教學習慣。語言通俗易懂,內容豐富翔實,既有對基本理論及使用方法的透徹講解,又注重實例與技巧的融會貫通。這套教材是新形勢下計算機教育改革的一種新的嘗試,“新”就會有許多值得修改的地方。我們期待廣大讀者對本套規劃教材提齣寶貴意見,以便進一步修訂,使本套規劃教材不斷完善和提高。
Linux/UNIX網絡編程/21世紀高等院校計算機科學規劃教材 下載 mobi epub pdf txt 電子書
評分
☆☆☆☆☆
有空看看吧,反正是需要學的東西
評分
☆☆☆☆☆
所以,是教師就要做一個甘於清貧、道德高尚的人,不想道德高尚、不甘於清貧就不要做教師。臧剋傢在《有的人》中說“有的人活著,他已經死瞭。有的人死瞭,他還活著。”既然為人,就要做一個活得有意義——有道德底綫——活著的人。作為教師,我們更要隨時問自己:“你還活著嗎?”
評分
☆☆☆☆☆
學習新東西喜歡看教材,循序漸進,有練習可以檢驗是否真的懂瞭。要是想跟深入的話看unix網絡編程
評分
☆☆☆☆☆
評分
☆☆☆☆☆
評分
☆☆☆☆☆
評分
☆☆☆☆☆
書籍是人類進步的階梯,古今中外的思想傢、科學傢、文學傢,例如:愛迪生、魯迅、高爾基、華羅庚等人無不是從小酷愛讀書,從書籍中吸取豐富的營養,使自己的腦子變得日益聰明起來的。莎士比亞說過:“書籍是全世界的營養品,生活裏沒有書籍就像沒有陽光,智慧裏沒有書籍就像鳥兒沒有翅膀。”偉大的科學傢培根說過:“讀書使人充實,會談使人敏捷,寫作與筆記使人精確。”這些偉大的名言足以說明讀書的重要。一個人從小養成讀書的習慣將受益一生。現在,我們也都認識到瞭讀書的重要性,想盡一切辦法讓學生多讀一些書。但是,學生如果對讀書沒有興趣,就達不到預期的效果。不但如此,有時還會使學生對學習産生厭煩心理。為此,培養學生的讀書興趣是至關重要的。那麼,如何培養學生的讀書興趣呢?
評分
☆☆☆☆☆
學生的成長很大程度上受到環境的影響。優化閱讀環境,讓生活彌漫書香氣息是我們做教師的追求。因此,我在教學中努力為孩子創造一個優良的閱讀環境,帶領學生敲響讀書之門。首先,著力打造書香班級。在我們班有可供孩子閱讀的各方麵書籍,並在讀書角張貼溫馨的閱讀暗示:“與書為友,走嚮優秀!”“讀經典的書,做有根的人!”在教室前麵彰顯著警示牌:“今天,你讀書瞭嗎?”還在教室裏張貼名言警句,“為中華之崛起而讀書””書中自有黃金屋,書中自有顔如玉”、“書山有路勤為徑,學海無涯苦作舟“,“世上無難事,隻怕有心人”。“讀書破萬捲,下筆如有神。” 這些醒目的標誌,使學生邁進班級的那一刻就會想到讀書。其次,將書香氣息帶給傢庭。說句心裏話,我們班孩子的傢長多數是農民,他們對於讀書的意識並不高,盡管如此,我仍堅信:隻要肯努力、隻要肯堅持,讓孩子在無意中就能端起書本來閱讀,這樣,長此以往,相信傢長們會有所動容,從而為孩子能夠讀更多的好書拓寬‘道路’。雖然讓傢長讀書的起步工作難做,但我仍通過校信通、開傢長會等利用一切與傢長接觸的機會,將書香信息傳遞給傢長。開展書香傢庭評比,推動傢庭閱讀正常化,持久化,為學生閱讀習慣的養成提供優越的外部環境。這裏提到的‘書香傢庭評比’,我並沒有給傢長們齣難題,而是根據每個傢庭的實際情況而定,我抓住孩子對新事物的好奇心,及孩子那純真的天性,讓每個孩子做為他自己傢庭的組長,父母是組員,先由孩子感染父母、督促父母,和父母同讀一本書並交流讀後之感,這樣一段時間下來,我發現孩子們課餘聊的話題由原來的“我昨天吃什麼好吃的瞭”、“我媽給我買什麼新衣服瞭”、“我爸帶我去公園玩瞭”這些,被現在的“昨天我們全傢坐在一起聊《紅岩》,爺爺還給我講瞭好多英雄人物的故事”、“周末我們傢要舉行講故事比賽呢”所取待,從班級門前走過,每每聽到這些,我的心裏真是比吃瞭蜜還要甜。
評分
☆☆☆☆☆