用TCP-IP进行网际互联 第3卷:客户——服务器.pdf

所需积分/C币:11 2019-03-26 14:01:45 11.01MB PDF

《用TCP/IP进行网际互连第3卷:客户服务器编程与应用》是关于计算机网络的经典教材,是目前美国大多数大学所开设的计算机网络课程的主要参考书。目前国内外能见到的各种关于TCP/IP的书籍,其主要内容都参考了《用TCP/IP进行网际互连第3卷:客户服务器编程与应用》。《用TCP/IP进行网际互连第3卷:客户服务器编程与应用》的特点是强调原理,概念准确,深入浅出
内容简介 本书是一部计算机网绪经典性教科书。它是目前美国大怎数大学甲所开设的计算机网络课程的主要参考 栘。百前国内外能见到的各种有关 TCPIP的书籍,其主要内容均出自本书。本书的特点是:强调原理,概念 准确,深入浅出,肉容F富且新颖。全书共分为二卷。第二三卷主要讨论应用软件如何使用TCPH,重点研究 了客户-服务器范例,并考察了分布式程序中的客户和服务器,举例说明了各种设计,讨论了应用网关和嘘 通技术。第三卷共31章,各章之后附有很多很好的丬题。本书可供计算机和通信专业的研究生、高年级本科 尘作为教科书和学习参考书,也可供从事科研和技术开发的人员参考。 Authorized translation from the English language edition published by Prentice-Hall, Inc. Copyright 2001 All rights reserved, No part of this brook uay be: reproduced or transmited in any form cr by any means, electronic or mechanical, including photo:op ying, recording ar by any information storage retrieval system, without permission from the publisl Simplified Chinese lunguage edition published by Publishing House of Eltc:tronics Industry. Copyright 2CH) 本书中文简体专有翻译出版权由 Pearson救育集闭所属的 Prentice-Hllm授予电子T业出版社。其原文版权 及中文翻译出版权受法律保护。未经许可,不得以任何形式业手段复制或抄袭本书内容 图书在版编目CP数据 用TCPP进行网际互联.第3卷,客户-服务器编程与应用: Linux/POSIX套接字版f美)科默( Comer, E.}著;赵刚译.一北京:电子工业出版社,2004 书名原文: Intemetwcnking With TCP/P Volume3iemt- Server Programming And Applications Linux/PXX Sockets 国外计算机科学教材系列 ISBN7-5053-6590-8 Ⅰ用·Ⅱ、①科、②趑。Ⅲ、①汁算机网络-通信协议-教材②服务器-操作系统(软件),Iin-程 序设计Ⅳ.TN91504 中版本图书馆CP数据核字(2001)第16806号 丛书名:国外计算机科学教材系列 书名:用TcPP进行网际互联第二卷:客户一服务器编程与应用( Linux/ pos套接字版 原书名; ntemetworking With TCP/PY皿: Clierel-Server Programmming And application [inu/ PoSiX Sockets versio 著者:[美] DOUGLAS E. COMER DAⅥ DL. STEVEN 谇者:赵刚林瑶将戲等 审校者:谢希仁 任编辑:谭海平 排版制作:今日电子公司制作部 印刷者:北京天竺颖华印刷厂 出版发行:电子工业出版社UrlhTtp:/www.phei.com.cn 北京市海淀区万寿路173信箱邮编:100036电话:68279077 经销:各地新华书店 开本:787x109216印张:28,75字数:718千字 版次:≥001年4月第I版2001年4月第1次印刷 书号:1SBN750532659-8 T:3652 定价:480元 版权贸易合同登记号图字:01-2000-3473 凡购买电子工业出版祉的图书,如有缺页、倒、脱页者,请向购买书店褥换;若书店售缺,请与本社发行部 联系调换 出版说明 随着21世纪的到来,计算杌技术的发展更加迅猛,在钎行各业的应用更加广泛,越来越多的 高等院校增设了有关计算机科学的课程內容,或对现计算机课程设置进行了适当调整,以紧跟前 沿技术,在这个教学体系和学科结构变革的大环境F,对适合不同院系、不同专业、不同层次的教 材的求鳕与日俱增。此时,如果能够借鉴、学国外一流大学的先进教学体系,引进具有先进性、 实用性和权威性的国外一流大学计算机教材,汲取其精华,必能更好地促进中国高等院校教学的全 面改革。 美国 Prentice Hall H版公是享誉世界的高校教材出版商,自1913年成立以来,一直致力于 教材的出版,所出版的计算机教材为美国众多大学采用,其中有不少是专业领城中的经典名著,已 翻详成多种文字在世界各地的大学中使用,成为全人类的共同财富。许多蜚声世界的教授、学者都 是该公司的资深作者,如道格拉斯·科默( Dougias e. Comer)、威廉·斯大林( William Stallings)等。 早在1997年,电子工业出版社就从 Prentice hal引进了一套计算机英文版专业教材,并将其翻译出 版,同时定名为《国外计算机科学教材系列》〔下称:第轮教材)。截至2000年12月,该系列教 材已出版23种,深受读者欢迎,被许多大学选为高年级学生和研究生教材或参考书 4年过去了已出版的教材中多数已经有了后续版本因此,我钉开始设计新一轮教材(第二 轮教材)的出版,成立了由我国计算机界著名专家和教授组成的“教材出版委员会”,并结合第 轮教材的使用情况和师生反馈意见,组织了第轮《国外计算机科学教材系列》出版工作。 第二轮教材的出版原则为: 1.引进 Prentice hal版公司200年和2001年推出的新版教材,作为替换版本。 2.在著名高饺教授的建议下,除「从 Prentice hall新选了一些教材之外,还从MGrw-Hl和 Addison Wesley longnan等著名专业教材出版社、麻省理工学院出版社和剑桥大学出版社等 著名大学出版社引进了一些经典教材,作为增补版本 3对于第一轮中无新版本的优秀教材,我们将其作为延用版本,直接进入第二轮使用。 4对于第一轮中翻译质量较好且无新版本的教材,我们将其进行了修订,也作为延用版本,进 人第二轮使用。 这次推岀的教材覆盖学科范围广、领域宽、层次多,既有本科专业课程教材,也有研究生课程 教材,以适应不同院系、不同专业、不同层次的师生对教材的需求。广大帅生可自由选择和自由组 合使用 按照计划,本轮教材规划出版37种,其中替换版本8种,新增版本14种,延用版本15种。教 材內容涉及的学科方向包括网络与通信、操作系统、计算机组织与结构、算法与数据结构、数据库 与信息处理、编程语言、图形图像与多媒体、软件工程等。本轮教材计划于2001年7月前全部出 版。教材的使用年限平均为3年。我们还将陆续推出一些教材的參考课件,希望能为授课老师提供 帮助。 为了保证本轮教材的选题质量和翻译质早,我们约请了清华大学、北京大学、北京航空航天大 学、复且大学、上海交通大学、南京大学、浙江大学、哈尔滨业大学、华中科技大学、西安交通 大学、国防科学技术大学、解放军理工大学等著名高校的教授和骨于教师参与了本轮教材的选题、 翻译和审校工作。他们中既钉讲授同类教材的骨干教师和博土,也有积累了几十年教学经验的教授 和博」生导师。 在本轮教材的选题、醐译和编辑加工过程中,为提高教材质量,我们做了大量细致的工作 包括: 1.对于新选题和新版本进行了全面论证。 2对于延用版本,认真审查了前一版本教材,修改了其中的印刷错误 3.对于译者和编辑的选择,达到了专业对口。 4.对于从英文原书中发现的错误,我们通过与作者联络、从网上下载勘误表等方式,一…做 了修改。 5.对于醐译、审校、编辑、排版、印刷质量进行了严格的审查把关。 通过这些工作,保证了本轮教材的质量较前一轮有明显的提高。相信读者一定能够从字里行间 体会到我们的这些努力。 今后,我们将继续加强与各高校教师的密切联系,为广大师生引进更多的国外优秀教材和参考 书,为我国计算机科学教学体系与国际教学体系的接轨做出努力。 由于我们对国际计算机科学、我国高校计算机教育的发展存在认识上的不足,在选题、翻译、 出版等方面的工作中还有许多有待提高之处,恳请广大师生和读者提出批评和建议。 电了工业出版社 2001年春 教材出版委员会 主任杨芙清北京大学教授 中国科学院院士 北京大学信息与工程学部主任 北京大学软件工程研究所所长 委员王珊中国人民大学信息学院院长、教授 胡道元清华大学计算机科学与技术系教授 国际信息处理联合会通信系统中国代表 钟玉琢清华大学计算机科学与技术系教授 中国计算机学会多媒体专业委员会主任 谢希仁中国人民解放军理工大学教授 全军网络技术研究中心主任、博上生导师 尤晋元上海交通大学计算机科学与工程系教授 上海分布计算技术中心主任 施伯乐中国计算机学会常务理事、上海市计算机学会理事长 上海国际数据库研究中心主任、复旦大学教授 邹鹏国防科学技术大学计算机学院教授、博士生导师 教育部计算机基础教学课程指导委员会副主任委员 张昆藏青岛大学信息工程学院教授 关于作者 Douglas Comer博是TCP/P协议和因将网的函际公认专家。自20世纪70年代末、80年代初 形成因特网以来,他就致力于因特网的研究T作,他也是负责指导因特网开发的因特网体系小 组(AB〕的成员,还是 CSNET技术委员会的主和 CSNET执行委员会的成员。 omer为-些公司提供树络设计和实现的咨询,还给全世界的技术和非技术人员开TCP和互 联网络的专业讲座。他的操作系统Ⅺim以及TCPP协议的实现在他的书中都有介绍,并且应用到 了商业产品中。 Comer是 Purdue大学计算机科学系的教授,他主要教授计算机网络、互联网络和操作系统的课 程,并进行相关研究。除了撰写一系畅销的技术书籍外,他还是《 Software- Practice and Experience》杂志的北美地区编辑。 Comer是ACM会员(Felw) 其他的信息可查询以下网址 www.os.purdUe.edwPeupLe/cumer David stevens从Purd大学的计算机科学系获得了硕上(198)和博上(1993)学位。从1983 年起,他就是 BSD UNIX系统的编程人员,主要从事于 BSD UNIX内核的开发。他实现了大部分TCP IP协议族,并和 Comer博土一起合作编写了几本计算机科学的教科书。他感兴趣的专业方向是操作 系统、计算机网络和大规模软件系统设计。 近年来, Stevens在可扩缩联网( scalable networking)领域进行高性能多处理器系统的研究,为 Sequent Computer Systems公司利BM公司工作。他是ACM和IEEE的成员 前 Douglas E. Comer博士的系列著作—《用TCPP进行网际互联》是套令人瞩目的丛书。能 向开放源码( open source)读者介绍该书的第卷,对我来说实在是荣幸之至 开放源码和TCPP的历史是紧密相连的没有网络把休利合作者连接起来,就不能进行协作 而且,最早一批开放源码软件就有TCPP协议的实现。我记得在20世纪80年代初,“开放源码” 还不像现在那样受媒体青跦,理解闷络体系结构和实现的研究者屈指可数,而 Douglas就是其中的 佼佼者他是一项广泛研究计划的负责人,全线出击,对当时遇到的很多问题提出挑战 记得在20世红90年代初,我们已经看到将技术应用到大工程领域的巨大趋势,这些领域渴望 肴知识和解决方案。那时,为公司构造基于互联网的环境,对工程师来说还是一个巨大的挑战。于 是,Doug灬s便开始教导他们、让他们能够掌握下层网络的复杂性,给他们提供辛勤耕耘得来的经 验教训。 21世纪来临了,新一代的设计者正在为因特网编写分布式应用程序。当前,我们听到许多激 动人心的因特网应用,如 napster、 gnutella以及 infrasearch但奇怪的是,现在的开发人员很少有人 华固掌握网络工程原理坦率地说,他们缺乏对基础的理解,这种缺乏不可避免地造成了应用程 序的适应能力不强或者干脆就不能工作 正因为如此,Doug与 David l. stevens合著的第三卷:客户-服务器编程与应用才与今天的因 特网息息相关。这本书教给我们如何设计和构建客户一服务器应用程序,而且更重要的是,它还教 给我们如何理解每种设计决策中所蘊涵的利弊得失 我希望读者能够像业界前辈一样,从 Comer博士的智慧中获益。 Marshall rose Theorist, Implementor, and Agent Provocateur Petaluma,← aliform 序 limx操作系统声名正旺,作为服务器系统,它对联网界尤其重要。这本使用Linx的新版第 卷是为那些渴望了解如何创建联网应用的稗序员撰写的。大致说來,本书考察这样的问题,“应 用软件如何使用TCPP协议通过因特网进行通信?”本书重点研究了客户-服务器范例,并考察了 在分布式程序中客户和服务器这两部分所用的算法。本卷举例说明了每种设计,并讨论了包括应用 层网关和隧道等技术。另外,本卷还重温了几个标准应用协议,并用它们来说明一些算法和实现技 术 尽管本卷可以单独阅读和使用,但它实际是和另外两卷共同构成了一套丛书。丛书第一卷考 虑的问题是:“什么是TP互联网?”;第二卷考察的问题是:“TCPP软件是如何工作的?”,它 给出了更多的细节,考察了工作代码,比第一卷探讨得更深入。因此,虽然程序员可以只通过第三 卷学习创建网络应用,但学习其他各卷可以更好地理解下层技术。 第三卷的这个新版本包含了最新的技术,如,有一章解释了 Linux程序如何利用POSX线程设 施创建并发服务器;关于NFS的章节讨论了NFS的第版,这一版将为 Linux界采用。此外,还有 部分章节解释了sp等程序所蕴涵的概念,这种程序能通过拨号电话连接访问因特网,而不要求每 台计算机有一个惟一的IP地址。 还有两章显得特别及时,它们集中讨论了流式概念以及相关的技术,这些技术用于通过因特网 发送音频和视频数据。第28章描述了实时协议(RTP)、编码、抖动缓存等基本概念。第29章展示 ∫用于接收和播放MP3音频的RTP实现 本书代码可在线获得。要通过万维网得到一个副本,可在以下网址的联网书籍清单中查找第 卷 http://www.cs.purdue.edu/homes/comer/netbookshtml 要通过FP访问代码,使用以下网址: ftp: //ftp. es. purdue. edu/pub/comer/TCPIP-vol3 linux dist tar.Z 本书前几章介绍了客户一服务器模型,以及应用程序用于访问 TCPIP协议软件的套接字 c:ket)接口。此外,还描述了并发进程和用于创建进程的操作系统函数。随后的几章介绍了客户 和服务器设计 夲书阐明了各式各样可能的设计并不是没有规则的。实际上,这些设计都遵循了一种模式。在 考虑了并行性和传输的选择后,就可以理解这一观点。例如,有一章讨论了使用面向连接传输(如 TCP)的非并发服务器设计,而另一章讨论了相似的设计,但它使用无连接传输(如UP 我们描述了每个设计如何适应于各种可能的实现,但是,并没有试图开发一种客户一服务器交 互的抽象“理论”。我们只是强调实用的设计原则,以及对程序员很重要的技术。每种技术在某些 情况下都有其优点,并且每种技术都已用于正在工作的软件中。我们相信,理解这些设计之间的概 念联系,将有助于读者理解每种方法的优缺点,并更容易在它们之间进行选择。 本书包含了多个例子程序,他们展现了各种设计实际上是如何进行的。大多数例子实现了标准 的TCPP应用协议。在每一种情况下,我们都试图选择一个应用协议,使它可表达一种设计思路 而又不太难理解。因此,虽然很少有令人激动的例子程序,但这里的每一个例子都说明了一个重要 的概念。在第卷的这个版本中,所有的例子程序都使用Lnx套接字机制(即套接字A;本书 还有两个!他版本,他们含有相同的例子,只不过使用了微软的 Windows sockets和AT&T的Tl接 后儿章集中讨论中间件,讨论了远程过程调用的概念,并描述它是怎样被用于构造分布式程序 的。这些章将远程过程调用技术与客户-服务器模型相联系,并说明如何使用软件从远程过程调用 描述生成出客户和服务器程序。有关TENE的章节展现了细枝末节如何在一个实际工作的程序中 占据支配地位,以及即使是实现一个简单的、面向字符的协议,其代码如何会变得复杂。木部分最 后两章是关于流式传输协议的 本书很大部分的重点在并发处理。编写过并发程序的学生可能熟悉我们所描述的许多概念,因 为这些概念适用于所有的并发程序,而不仅仅是网络应用。没编写过并发程序的学生可能会觉得这 些概念很难 本书适于作为向高年级学生教授“套接字编程”,或向低年级研究生介绍分布式计算的一个学 期的课程。由于本书重点是如何使用互联网,而不是互联网是如何工作的,因此学生几乎不需要太 多的网络背景知识就能理解这些内容。只要教师按合适的进度循序渐进,本科生课程中不会有特别 的概念令人感到太难。介绍操作系统概念或并发编程实际经验的基础课程,可提供最佳背景材料。 学生只有亲手使用教材后,才会欣赏它。因此,任何课程都应安排编程实践,强迫学生将其想 法运用到实际程序中。大学本科生可通过反复设计其他的应用协议来学习基本概念。研究生则应构 建更为复杂的分布式程序,这些程序强调-些细微的技术(如第16章中的并发管理技术和第18章 和第19章中的互连技术 在此要慼谢许多人的帮助 Purdue大学因特网研究小组的成员们给本书原稿提供了许多技术信 息和建议。 Michael evangelista校对了本书并编写了RTP代码。 Gustavo Rodriguez- Rivera阅读了本 书的许多章节,并做了很多实验测试细节,还编辑了附录1。 Dennis Brylow对本书许多章节提出了 建议。 Christine gomer进行了修订并改进了行文和一致性。 Douglas e. comer David L stever

...展开详情
试读 127P 用TCP-IP进行网际互联 第3卷:客户——服务器.pdf
img
sugarTan
  • 至尊王者

    成功上传501个资源即可获取

关注 私信 TA的资源

上传资源赚积分,得勋章
    最新推荐
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf 11积分/C币 立即下载
    1/127
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第1页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第2页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第3页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第4页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第5页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第6页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第7页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第8页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第9页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第10页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第11页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第12页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第13页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第14页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第15页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第16页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第17页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第18页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第19页
    用TCP-IP进行网际互联 第3卷:客户——服务器.pdf第20页

    试读已结束,剩余107页未读...

    11积分/C币 立即下载 >