Effective TCP/IP Programming: 44 Tips to Improve Your Network Programs (Paperback)
暫譯: 有效的 TCP/IP 程式設計:提升網路程式的 44 個技巧 (平裝本)
Jon C. Snader
- 出版商: Addison Wesley
- 出版日期: 2000-05-14
- 售價: $2,480
- 貴賓價: 9.8 折 $2,430
- 語言: 英文
- 頁數: 320
- 裝訂: Paperback
- ISBN: 0201615894
- ISBN-13: 9780201615890
-
相關分類:
TCP/IP
-
相關翻譯:
深入研究 TCP/IP 網路程式設計 (Effective TCP/IP Programming: 44 Tips to Improve Your Network Programs) (繁中版)
立即出貨 (庫存 < 3)
買這商品的人也買了...
-
Computer Algorithms C++$1,120$1,098 -
Computer Organization & Design: The Hardware/Software Interface, 2/e$1,200$1,176 -
計算機組織與設計--軟硬體界面第二版 (Computer Organization & Design, 2/e)$680$537 -
Software Engineering, 6/e$1,090$1,068 -
C++ Primer, 3/e 中文版$980$774 -
LPI Linux 資格檢定 (LPI Linux Certification in a Nutshell)$880$695 -
Computer Architecture: A Quantitative Approach, 3/e(精裝本)$1,300$1,274 -
UML 與樣式徹底研究 (Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process, 2/e)$780$624 -
C++ Builder 6 完全攻略$690$587 -
Java 完美經典優質學習篇$750$638 -
ASP.NET 程式設計徹底研究$590$466 -
STRUTS 實作手冊(Struts in Action: Building Web Applications with the Leading Java Framework)$690$538 -
重構─改善既有程式的設計$720$569 -
鳥哥的 Linux 私房菜-伺服器架設篇$750$638 -
鳥哥的 Linux 私房菜─基礎學習篇增訂版$560$476 -
JSP 2.0 技術手冊$750$593 -
Project 2003 徹底研究$690$538 -
ASP.NET 徹底研究進階技巧─高階技巧與控制項實作$650$507 -
深入淺出 Java 程式設計, 2/e (Head First Java, 2/e)$880$695 -
Linux Kernel 完全剖析$750$585 -
ASP.NET 2.0 深度剖析範例集$650$507 -
Windows 加密解碼防毒防駭─Vista、XP 全適用$350$298 -
電腦鑑識與數位證據-資安技術、科技犯罪的預防、鑑定與現場重建$600$468 -
現代嵌入式系統開發專案實務-菜鳥成長日誌與專案經理的私房菜$600$480 -
防止網路駭客、保密大作戰$199$157
相關主題
商品描述
Description
An excellent next-step for students who have read Stevens' TCP/IP Illustrated series, this book is designed to boost programmers to a higher level of competence by focusing on the protocol suite's more subtle features and techniques. In forty-four concise, self-contained lessons, this book offers experience-based tips, practices, and rules of thumb for learning high-performance TCP/IP programming techniques. Moreover, it shows you how to avoid many of TCP/IP's most common trouble spots. Numerous examples demonstrate essential ideas and concepts. Skeleton code and a library of common functions allow you to write applications without having to worry about routine chores.
![]()
Appropriate Courses
Table Of Contents
Preface.
1. Introduction.
Road Map to the Rest of the Book.
Client-Server Architecture.
Basic Sockets API Review.
Summary.
2. Basics.
Tip 2: Understand Subnets and CIDR.
Tip 3: Understand Private Addresses and NAT.
Tip 4: Develop and Use Application “Skeletons.”
Tip 5: Prefer the Sockets Interface to XTI/TLI.
Tip 6: Remember That TCP Is a Stream Protocol.
Tip 7: Don't Underestimate the Performance of TCP.
Tip 8: Avoid Reinventing TCP.
Tip 9: Realize That TCP Is a Reliable Protocol, Not an Infallible Protocol.
Tip 10: Remember That TCP/IP Is Not Polled.
Tip 11: Be Prepared for Rude Behavior from a Peer.
Tip 12: Don't Assume That a Successful LAN Strategy Will Scale to a WAN.
Tip 13: Learn How the Protocols Work.
Tip 14: Don't Take the OSI Seven-Layer Reference Model Too Seriously.
3. Building Effective and Robust Network Programs.
Tip 16: Understand the TCP Orderly Release Operation.
Tip 17: Consider Letting inetd Launch Your Application.
Tip 18: Consider Letting tcpmux “Assign” Your Server's Well-Known Port.
Tip 19: Consider Using Two TCP Connections.
Tip 20: Consider Making Your Applications Event Driven (1).
Tip 21: Consider Making Your Applications Event Driven (2).
Tip 22: Don't Use TIME-WAIT Assassination to Close a Connection.
Tip 23: Servers Should Set the SO_REUSEADDR Option.
Tip 24: When Possible, Use One Large Write Instead of Multiple Small Writes.
Tip 25: Understand How to Time Out a Connect Call.
Tip 26: Avoid Data Copying.
Tip 27: Zero the sockaddr_in Structure Before Use.
Tip 28: Don't Forget about Byte Sex.
Tip 29: Don't Hardcode IP Addresses or Port Numbers in Your Application.
Tip 30: Understand Connected UDP Sockets.
Tip 31: Remember That All the World's Not C.
Tip 32: Understand the Effects of Buffer Sizes.
4. Tools and Resources.
Tip 34: Learn to Use tcpdump or a Similar Tool.
Tip 35: Learn to Use traceroute.
Tip 36: Learn to Use ttcp.
Tip 37: Learn to Use lsof.
Tip 38: Learn to Use netstat.
Tip 39: Learn to Use Your System's Call Trace Facility.
Tip 40: Build and Use a Tool to Capture ICMP Messages.
Tip 41: Read Stevens.
Tip 42: Read Code.
Tip 43: Visit the RFC Editor's Page.
Tip 44: Frequent the News Groups.
Appendix A: Miscellaneous UNIX Code.
The daemon Function.
The signal Function.
Appendix B: Miscellaneous Windows Code.
Windows Compatibility Routines.
Bibliography.
Index. 0201615894T04062001
![]()
商品描述(中文翻譯)
描述
這本書是對已閱讀 Stevens 的《TCP/IP Illustrated》系列的學生的絕佳進階選擇,旨在通過專注於協議套件的更微妙特徵和技術,提升程式設計師的能力。書中包含四十四個簡潔且獨立的課程,提供基於經驗的提示、實踐和經驗法則,以學習高效能的 TCP/IP 程式設計技術。此外,它還展示了如何避免 TCP/IP 中最常見的問題點。眾多範例展示了基本概念和想法。骨架程式碼和常用函數庫使您能夠編寫應用程式,而無需擔心日常瑣事。
適合的課程
網路 - 進階主題。
目錄
前言。
1. 介紹。
一些約定。
本書的路線圖。
客戶端-伺服器架構。
基本的 Sockets API 回顧。
總結。
2. 基礎知識。
提示 1:了解連接協議和無連接協議之間的區別。
提示 2:了解子網和 CIDR。
提示 3:了解私有地址和 NAT。
提示 4:開發和使用應用程式“骨架”。
提示 5:優先使用 Sockets 介面而非 XTI/TLI。
提示 6:記住 TCP 是一種流協議。
提示 7:不要低估 TCP 的性能。
提示 8:避免重新發明 TCP。
提示 9:認識到 TCP 是一種可靠的協議,而不是萬無一失的協議。
提示 10:記住 TCP/IP 不是輪詢的。
提示 11:準備好應對來自對等方的粗魯行為。
提示 12:不要假設成功的 LAN 策略會擴展到 WAN。
提示 13:了解協議的運作方式。
提示 14:不要過於認真對待 OSI 七層參考模型。
3. 建立有效且穩健的網路程式。
提示 15:了解 TCP 寫入操作。
提示 16:了解 TCP 有序釋放操作。
提示 17:考慮讓 inetd 啟動您的應用程式。
提示 18:考慮讓 tcpmux“分配”您的伺服器的知名端口。
提示 19:考慮使用兩個 TCP 連接。
提示 20:考慮讓您的應用程式事件驅動 (1)。
提示 21:考慮讓您的應用程式事件驅動 (2)。
提示 22:不要使用 TIME-WAIT 謀殺來關閉連接。
提示 23:伺服器應設置 SO_REUSEADDR 選項。
提示 24:在可能的情況下,使用一次大型寫入而不是多次小型寫入。
提示 25:了解如何對連接調用設置超時。
提示 26:避免數據複製。
提示 27:在使用前將 sockaddr_in 結構歸零。
提示 28:不要忘記字節序。
提示 29:不要在您的應用程式中硬編碼 IP 地址或端口號。
提示 30:了解連接的 UDP Sockets。
提示 31:記住全世界並非只有 C 語言。
提示 32:了解緩衝區大小的影響。
4. 工具和資源。
提示 33:熟悉 ping 工具。
提示 34:學會使用 tcpdump 或類似工具。
提示 35:學會使用 traceroute。
提示 36:學會使用 ttcp。
提示 37:學會使用 lsof。
提示 38:學會使用 netstat。
提示 39:學會使用系統的調用追蹤功能。
提示 40:建立並使用捕獲 ICMP 訊息的工具。
提示 41:閱讀 Stevens 的著作。
提示 42:閱讀程式碼。
提示 43:訪問 RFC 編輯器的頁面。
提示 44:經常參加新聞組。
附錄 A:雜項 UNIX 程式碼。
etcp.h 標頭。
daemon 函數。
signal 函數。
附錄 B:雜項 Windows 程式碼。
skel.h 標頭。
Windows 相容性例程。
參考書目。
索引。 0201615894T04062001
