本书是一本介绍网络分析、体系结构和设计方面系统化方法的教材和实用技术指南,作者在网络体系结构、设计和部署方面具有20多年的实际工作经验。全书通篇强调连贯、高效的系统方法学,内容涉及对用户需求、性能需求和流量的分析以及如何满足这些需求,在网络的何处以及如何实现网络体系结构(包括编址和路由体系结构、网络管理体系结构、性能体系结构、安全和隐私体系结构),如何为网络设计选择合适的技术,以及在网络设计中将这些技术相互连接起来的技巧。全书给出了很多详细、实用的示例,每章结尾都给出了有用的练习题,可以帮助学生和技术人员更好地理解和掌握实际操作能力。本书适合计算机和通信网络等相关专业的高年级本科生和研究生使用,同时也是网络专业技术人员的实用参考资料。
第1章 引言
1.1 本章目标
1.2 预备知识
1.3 背景知识
1.4 分析、体系结构和设计过程概观
1.5 系统方法
1.6 系统描述
1.7 服务描述
1.8 服务特性
1.9 性能特性
1.10 网络可支持性
1.11 本章小结
1.12 练习题
第2章 需求分析:概念
2.1 本章目标
2.2 预备知识
2.3 背景知识
2.4 用户需求
2.5 应用需求
2.6 设备需求
2.7 网络需求
2.8 其他需求
2.9 需求规范和地图
2.10 本章小结
2.11 练习题
第3章 需求分析:过程
3.1 本章目标
3.2 预备知识
3.3 收集和列出需求
3.4 开发服务度量
3.5 刻画行为的特性
3.6 开发RMA需求
3.7 开发延迟需求
3.8 开发容量需求
3.9 开发补充性能
3.10 环境特定的阈值和限度
3.11 可预测和有保证性能的需求
3.12 需求的映射
3.13 需求规范的开发
3.14 本章小结
3.15 练习题
第4章 流量分析
4.1 本章目标
4.2 预备知识
4.3 背景知识
4.4 流量
4.5 流量的标识和开发
4.6 数据源和数据宿
4.7 流量模型
4.8 流量优先化
4.9 流量规范
4.10 流量分析的例子应用
4.11 本章小结
4.12 练习题
第5章 网络体系结构
5.1 本章目标
5.2 预备知识
5.3 背景知识
5.4 组件体系结构
5.5 参考体系结构
5.6 体系结构模型
5.7 系统和网络体系结构
5.8 本章小结
5.9 练习题
第6章 编址和路由体系结构
6.1 本章目标
6.2 预备知识
6.3 背景知识
6.4 编址机制
6.5 路由机制
6.6 编址策略
6.7 路由策略
6.8 体系结构方面的考虑
6.9 本章小结
6.10 练习题
第7章 网络管理体系结构
7.1 本章目标
7.2 预备知识
7.3 背景知识
7.4 网络管理的定义
7.5 网络管理机制
7.6 编址策略
7.7 本章小结
7.8 练习题
第8章 性能体系结构
8.1 本章目标
8.2 预备知识
8.3 背景知识
8.4 性能的目标开发
8.5 性能机制
8.6 体系结构方面的考虑
8.7 本章小结
8.8 练习题
第9章 安全和隐私体系结构
9.1 本章目标
9.2 预备知识
9.3 背景知识
9.4 安全和隐私计划的开发
9.5 安全和隐私的管理
9.6 安全和隐私机制
9.7 体系结构方面的考虑
9.8 本章小结
9.9 练习题
第10章 网络设计的技术选择
10.1 本章目标
10.2 预备知识
10.3 背景知识
10.4 网络设计目标的开发
10.5 技术评估标准的开发
10.6 技术评估的指导原则和约束
10.7 网络设计中的技术选择
10.8 本章小结
10.9 练习题
第11章 网络设计中的技术互连
11.1 本章目标
11.2 预备知识
11.3 背景知识
11.4 共享介质(无互连接)
11.5 交换
11.6 路由
11.7 混合机制
11.8 将互连接机制应用到设计中
11.9 下一步去向何方
11.10 本章小结
11.11 练习题
术语表
缩略语表
自有网络设计这一概念以来,其更多的是具有“艺术”的意味,而不是一门“科学”或者“工程”。正如软件设计一样,其在初期更多的是一门“设计者本身素质起决定作用的艺术形式”,而不是一项具有严格方法学和系统方法的“工程实践”。随着“软件工程”概念的发展和深入人心,现在的软件开发具有了越来越多的“工程”和“科学”的元素,不再只是“个人英雄主义”的、主观因素起决定作用的活动,而是专业化、标准化、流程化、可重复批量生产的社会生产活动;于是就出现了CMM,正如其他生产领域的ISO 9000一样。可以说,现在的软件开发更多的是一门“科学”而不是一门技术。
相比较于软件设计和开发来说,网络的设计和开发则是一种非常粗放的生产活动,其要成为一门“科学”或者成为一种“工程实践”还有很远的路要走。这个领域中很多的方法学和系统方法还没有很好地总结出来,而且零星的经验交流很多还是通过口传身授的形式。看看市面上有多少书籍的名字中含有“软件工程”一词,就知道两者的差距有多大了。国内虽然有些图书的名字中有“网络工程”一词的影子,但大多是针对职业技术学校的教材,也许可以说是“工程实践”,但与真正的“方法学”或者“科学”差距太大。随着社会越来越依赖于可靠、可预测的数据通信,网络设计和构建活动中的个人经验应该被系统的工程方法所逐步替代。
这本书就是从系统方法学的角度来探讨网络的分析、体系结构和设计方面的问题,虽然更多的也是作者自己实际工作经验的总结,且离将经验抽象和提炼为普适的“方法学”还有非常大的差距,但该书仍有其独到的一面。对于网络和计算机的系统工程师来说,无论新手还是经验丰富的专业人士,阅读本书都会获益匪浅。
本书由秦亚红组织翻译,李刚、胡凤燕、徐静、陈强、宋泽海、徐东伟等人参与了部分翻译与审校工作。感谢他们辛苦而有成效的工作。译文中难免有错误和疏漏之处,还请海涵。
本书旨在帮助读者理解网络在支持用户、应用、设备和通信流的需求时的功能和行为,以及如何使用这些信息来构建和设计网络。
在写作本书的第一版时(“Practical Computer Network Analysis and Design”),我引入了许多后来在网络专业人士中很流行的概念。在提供服务质量和网络中的差分服务方面,通信流量分析和通信流量性能需求的结合变得越来越重要。收集并分析网络设计所需的需求,现在越来越广泛地被认为是保证设计的正确性和一致性的必要手段。系统由用户、应用和设备组成,而网络是系统的一种资源,这种系统方法现在已经成为构建大型计算网络和通信网络(包括网格)的模型;那本书所介绍的分析和设计过程也已经被世界范围的公司、高校和政府机构采用。
本书对这些发展中的技术、基本概念进行了扩展,并添加了一个新的要素—网络体系结构,来介绍这一过程。网络体系结构是分析和设计的必要补充,其可以确定网络主要功能(安全、管理、性能以及编址和路由)之间的关系,而这正是设计的基础。我发现,通过在分析和设计过程的早期阶段多考虑安全、管理、性能以及编址和路由方面的因素,将网络体系结构添加到分析和设计过程中,可以而且已经显著地提升了设计结果。
方法
本书将帮助读者理解和定义网络的体系结构和设计,全书着眼于整个系统,从用户及其应用到提供支持的设备和网络。
本书设计用于网络工程、网络体系结构、网络设计等专业的本科生和研究生,同时也适于专业人士的研究和参考。其结构的组织是按逻辑上的关系循序渐进的,首先是需求分析,接着是网络体系结构,随后是以体系结构为基础的网络设计。当我在大学、公司或者专业会议上讲解或者讨论网络分析、体系结构和设计时,我发现本书的内容是学生在工程应用方面的绝好素材。
在本书中,我们展示的是一种逐步进行网络分析、体系结构和设计的过程。在近些年为政府机构、高校和公司进行大型网络规划和设计的实际工作中,我对这种方法进行了不少的改进,并将这些实际的心得和经验融合到本书的内容中。与任何技术或协议的开放标准一样,本书中的很多内容都是集体智慧的结晶,其提供的是很多网络规划和设计人员的经验总结。
笔者在书中解决了网络设计、体系结构和设计中的一些难题,并提出了现实中会遇到的一些体系结构和设计方面的挑战,包括如何解决如下问题:
● 收集并定义网络需求;
● 确定如何以及在何处实现网络的编址和路由、安全、网络管理和性能;
● 评价并选择网络技术,诸如快速以太网/千兆位以太网/10 G以太网,SONET,POS等;
● 评价并选择互联这些技术的机制,诸如,交换、路由和基于流量的机制;
● 确定在何处应用路由协议(RIP/RIPv2,OSPF,BGPv4,MPLS)以及有类别与无类别IP编址机制;
● 确定在何处应用性能机制,包括服务质量、服务品质协议(SLA)和策略。
在提出这些挑战的同时,笔者还给出了指导方针、示例和通常的原则,以帮助读者做出决策。你可能会发现这些内容有些用处,笔者鼓励读者按照自己的情况灵活应用。
为了方便课堂教学使用和读者自学,本书的每一章都提供了大量的练习。另外,本书出版商的Web站点(www.mkp.com)提供了很多有用的资料。
本书的结构
本书的前4章讲述的是系统方法、需求分析和流量分析,与第一版相同,但都根据第一版出版以来的技术发展而进行了内容更新。第1章介绍网络分析,其中包括系统方法,并提供了全书要用到的定义和概念。第2章和第3章集中介绍确定网络需求的概念和过程,第4章讨论如何将网络通信流量分析应用于不同通信流的性能需求的结合。
第5章到第9章是这一版本的新内容,内容涉及网络体系结构的处理。第5章是网络体系结构、网络主要功能(编址和路由、安全、网络管理和性能)之间内外部关系的开发等方面的内容。第6章到第9章详细介绍了这些主要功能,以及开发组件和体系结构之间内外部关系的描述。
第10章和第11章的内容与第一版的内容并无显著的不同。第10章讨论如何确定哪种技术对自己的网络是较优的,包括制定技术评估标准以及对网络分析和体系设计的利用。第11章是对第10章的补充,详细介绍如何将各种网络技术相互连接起来,包括交换、路由和基于流量的机制。
在每一章的开始,我们都给出了推荐读物的清单,这些读物对读者理解该章的概念非常有用。本书介绍了很多的新概念,因此在术语表中给出了更多的内容。
致谢
本书中的内容是我对自己的实践经验和网络技术界很多同仁的经验的汇编。但是,为本书中的错误负责的是笔者个人。网络分析、体系结构和设计一直在发展,笔者欢迎读者就这一技术的发展提供反馈信息,问题、意见和建议可以通过doowah@doowah.com传递给笔者。
我要感谢那些审阅本书全部或部分内容的人,他们是:加州州立大学的Hongwei Du博士、Ryerson大学的Robert Hudyma、NASA的Mike Little和BellSouth的Norman Patty。