Network Programming with Perl
暫譯: 使用 Perl 進行網路程式設計
Lincoln D. Stein
- 出版商: Addison Wesley
- 出版日期: 2001-01-06
- 售價: $2,240
- 貴賓價: 9.5 折 $2,128
- 語言: 英文
- 頁數: 784
- 裝訂: Paperback
- ISBN: 0201615711
- ISBN-13: 9780201615715
-
相關分類:
Perl 程式語言
已絕版
買這商品的人也買了...
-
$580$458 -
$680$537 -
$149$118 -
$980$774 -
$1,150$1,127 -
$168$133 -
$1,029Operating System Concepts, 6/e (Windows XP Update)
-
$450$351 -
$780$741 -
$750$638 -
$600$588 -
$760$600 -
$590$466 -
$680$537 -
$690$538 -
$720$569 -
$750$638 -
$560$476 -
$480$379 -
$750$593 -
$780$616 -
$650$507 -
$1,127Interactive Computer Graphics: A Top-Down Approach using OpenGL, 4/e (美國版ISBN:0321321375 )
-
$650$507 -
$600$540
相關主題
商品描述
Description
Network Programming with Perl is a comprehensive, example-rich guide to creating network-based applications using the Perl programming language. Among its many capabilities, modern Perl provides a straightforward and powerful interface to TCP/IP, and this book shows how to leverage these capabilities to create robust, maintainable, and efficient custom client/server applications. The book quickly moves beyond the basics to focus on high-level, application programming concepts, tools, and techniques. Students will find a review of basic networking concepts and Perl fundamentals, including Perl's I/O functions, process model, and object-oriented extensions. In addition, the book examines a collection of the best third-party modules in the Comprehensive Perl Archive Network, including existing network protocols for e-mail, news, and the Web.
Table Of Contents
Preface.I. BASICS.
1. Input/Output Basics.Networking Made Easy.
Filehandles.
Using Object-Oriented Syntax with the IO::Handle and IO::File Modules.
Summary.
2. Processes, Pipes, and Signals.
Pipes.
Signals.
Summary.
3. Introduction to Berkeley Sockets.
Berkeley Sockets.
Socket Addressing.
A Simple Network Client.
Network Names and Services.
Network Analysis Tools.
Summary.
4. The TCP Protocol.
Socket Functions Related to Outgoing Connections.
A TCP Echo Server.
Adjusting Socket Options.
Other Socket-Related Functions.
Exceptional Conditions during TCP Communications.
Summary.
5. The IO::Socket API.
IO::Socket Methods.
More Practical Examples.
Performance and Style.
Concurrent Clients.
Summary.
II. DEVELOPING CLIENTS FOR COMMON SERVICES.
6. FTP and Telnet.
Net::Telnet.
Summary.
7. SMTP: Sending Mail.
Net::SMTP.
MailTools.
MIME-Tools.
Summary.
8. POP, IMAP, and NNTP: Processing Mail and Netnews.
The IMAP Protocol.
Internet News Clients.
A News-to-Mail Gateway.
Summary.
9. Web Clients.
LWP Basics.
LWP Examples.
Parsing HTML and XML.
Summary.
III. DEVELOPING TCP CLIENT/SERVER SYSTEMS.
10. Forking Servers and the inetd Daemon.
Running Example: A Psychotherapist Server.
The Psychotherapist as a Forking Server.
A Client Script for the Psychotherapist Server.
Daemonization on UNIX Systems.
Starting Network Servers Automatically.
Using the inetd Super Daemon.
Summary.
11. Multithreaded Applications.
A Multithreaded Psychiatrist Server.
A Multithreaded Client.
Summary.
12. Multiplexed Applications.
The IO::Select Module.
A Multiplexed Psychiatrist Server.
Summary.
13. Nonblocking I/O.
Using Nonblocking Handles.
Using Nonblocking Handles with Line-Oriented I/O.
A Generic Nonblocking I/O Module.
Nonblocking Connects and Accepts.
Summary.
14. Bulletproofing Servers.
Setting User Privileges.
Taint Mode.
Using chroot().
Handling HUP and Other Signals.
Summary.
15. Preforking and Prethreading.
Prethreading.
Performance Measures.
Summary.
16. IO::Poll.
IO::Poll Methods.
A Nonblocking TCP Client Using IO::Poll.
Summary.
IV. ADVANCED TOPICS.
17. TCP Urgent Data.
Using TCP Urgent Data.
The sockatmark() Function.
A Travesty Server.
Summary.
18. The UDP Protocol.
Creating and Using UDP Sockets.
UDP Errors.
Using UDP Sockets with IO::Socket.
Sending to Multiple Hosts.
UDP Servers.
Increasing the Robustness of UDP Applications.
Summary.
19. UDP Servers.
The Chat Client.
The Chat Server.
Detecting Dead Clients.
Summary.
20. Broadcasting.
Broadcasting Explained.
Sending and Receiving Broadcasts.
Broadcasting Without the Broadcast Address.
Enhancing the Chat Client to Support Resource Discovery.
Summary.
21. Multicasting.
Using Multicast.
Sample Multicast Applications.
Summary.
22. UNIX-Domain Sockets.
A "Wrap" Server.
Using UNIX-Domain Sockets for Datagrams.
Summary.
Appendix A. Additional Source Code.
PromptUtil.pm (Chapters 8 and 9).
IO::LineBufferedSet (Chapter 13).
IO::LineBufferedSessionData (Chapter 13).
DaemonDebug (Chapter 14).
Text::Travesty (Chapter 17).
mchat_client.pl (Chapter 21).
Appendix B. Perl Error Codes and Special Variables.
Magic Variables Affecting I/O.
Other Perl Globals.
Appendix C. Internet Reference Tables.
Registered Port Numbers.
Internet Multicast Addresses.
Appendix D. Bibliography.
Index. 0201615711T04062001
![Back to Top](/Images/subpages/backtotop.gif)
商品描述(中文翻譯)
網路程式設計與 Perl 是一本全面且充滿範例的指南,旨在使用 Perl 程式語言創建基於網路的應用程式。在其眾多功能中,現代 Perl 提供了一個簡單而強大的 TCP/IP 介面,本書展示了如何利用這些功能來創建穩健、可維護且高效的自訂客戶端/伺服器應用程式。這本書迅速超越基礎,專注於高層次的應用程式設計概念、工具和技術。學生將會回顧基本的網路概念和 Perl 基礎,包括 Perl 的 I/O 函數、進程模型和物件導向擴展。此外,本書還檢視了在綜合 Perl 存檔網路(Comprehensive Perl Archive Network)中最佳的第三方模組,包括現有的電子郵件、新聞和網路的網路協定。
目錄
前言
I. 基礎
1. 輸入/輸出基礎
Perl 與網路
簡化網路
檔案處理
使用物件導向語法與 IO::Handle 和 IO::File 模組
總結
2. 進程、管道和信號
進程
管道
信號
總結
3. Berkeley Sockets 介紹
客戶端、伺服器和協定
Berkeley Sockets
Socket 地址
一個簡單的網路客戶端
網路名稱和服務
網路分析工具
總結
4. TCP 協定
一個 TCP 回音客戶端
與傳出連接相關的 Socket 函數
一個 TCP 回音伺服器
調整 Socket 選項
其他與 Socket 相關的函數
TCP 通訊中的異常情況
總結
5. IO::Socket API
使用 IO::Socket
IO::Socket 方法
更多實用範例
性能與風格
同時客戶端
總結
II. 為常見服務開發客戶端
6. FTP 和 Telnet
Net::FTP
Net::Telnet
總結
7. SMTP:發送郵件
郵件模組介紹
Net::SMTP
MailTools
MIME-Tools
總結
8. POP、IMAP 和 NNTP:處理郵件和網路新聞
郵局協定
IMAP 協定
網際新聞客戶端
一個新聞到郵件的網關
總結
9. 網頁客戶端
安裝 LWP
LWP 基礎
LWP 範例
解析 HTML 和 XML
總結
III. 開發 TCP 客戶端/伺服器系統
10. 分叉伺服器和 inetd 守護進程
並發的標準技術
運行範例:心理治療師伺服器
心理治療師作為分叉伺服器
心理治療師伺服器的客戶端腳本
UNIX 系統上的守護進程化
自動啟動網路伺服器
使用 inetd 超級守護進程
總結
11. 多執行緒應用程式
關於執行緒
一個多執行緒的心理醫生伺服器
一個多執行緒的客戶端
總結
12. 多路複用應用程式
一個多路複用客戶端
IO::Select 模組
一個多路複用的心理醫生伺服器
總結
13. 非阻塞 I/O
創建非阻塞 I/O 處理
使用非阻塞處理
使用非阻塞處理與行導向 I/O
一個通用的非阻塞 I/O 模組
非阻塞連接和接受
總結
14. 伺服器的防護
使用系統日誌
設定用戶權限
汙染模式
使用 chroot()
處理 HUP 和其他信號
總結
15. 預分叉和預執行緒
預分叉
預執行緒
性能測量
總結
16. IO::Poll
使用 IO::Poll
IO::Poll 方法
使用 IO::Poll 的非阻塞 TCP 客戶端
總結
IV. 進階主題
17. TCP 緊急數據
"帶外" 數據和緊急指標
使用 TCP 緊急數據
sockatmark() 函數
一個滑稽伺服器
總結
18. UDP 協定
一個時間客戶端
創建和使用 UDP Sockets
UDP 錯誤
使用 IO::Socket 的 UDP Sockets
發送到多個主機
UDP 伺服器
增加 UDP 應用程式的穩健性
總結
19. UDP 伺服器
一個網際聊天系統
聊天客戶端
聊天伺服器
偵測死掉的客戶端
總結
20. 廣播
單播與廣播
廣播解釋
發送和接收廣播
無需廣播地址的廣播
增強聊天客戶端以支持資源發現
總結
21. 多播
多播基礎
使用多播
範例多播應用程式
總結
22. UNIX 域 Sockets
使用 UNIX 域 Sockets
一個 "包裝" 伺服器
使用 UNIX 域 Sockets 處理數據報
總結
附錄 A. 額外的源代碼
Net::NetmaskLite(第 3 章)
PromptUtil.pm(第 8 和 9 章)
IO::LineBufferedSet(第 13 章)
IO::LineBufferedSessionData(第 13 章)
DaemonDebug(第 14 章)
Text::Travesty(第 17 章)
mchat_client.pl(第 21 章)
附錄 B. Perl 錯誤代碼和特殊變數
系統錯誤常數
影響 I/O 的魔法變數
其他 Perl 全域變數
附錄 C. 網際網路參考表
分配的埠號
註冊的埠號
網際多播地址
附錄 D. 參考書目
索引
0201615711T04062001