单一世界架构初探

romandion 2009-06-29 01:57:00
加精
如果说,还有什么最令我好奇的是,单一世界架构就是其中之一。我在网络上查了一些资料,但对单一世界真正建立,还是有很多问题需要解决。个人认为,这个架构将会是里程碑式的。我融合现有架构的认识以及一些自己的思考,在下面将逐渐铺开。本来我只准备发表在自己的博客中,但毕竟一个人的认识有限,想到这里专家颇多,所以还是特定发表在这里供大家拍砖。

我曾经看到过的,和单一世界相关的文章主要是云风的和一个可能是传奇架构的。已经实现的架构,一个是澳洲的《BigWorld》引擎,另外一个是《EVE》。EVE虽然宣称是单一世界,但他有个上限是1.3万。这就没啥意思了。因为网易据说购买了BigWorld引擎做天下贰,所以我感觉云风关于他的论述有一定的可信度,不过我没有直接接触过,这些都是二手资料,只能供自己参考。

不管怎么说,我感觉单一世界是很重要的课题,我凭自己的经验和思考来探讨这个议题。首先,必须对这个单一世界做一个严格概念上的界定,怎么样才算是单一世界呢?满足2个充要条件:1、所有的在线人员看到的都是同一连续的世界;2、在线人数的限制和机器的数量成正比,这个人数界定允许单一世界的人数无限扩展。界定出这样的世界才有意义。

现在的魔兽世界弄得全国沸沸扬扬的,而且也是一款最受人关注的巨作,我就拿他来解剖作案例。在魔兽世界有百万在线人数,于是我们就将他暂时评估为 10M在线数,同时有10个区,N多服。每个服之间的货币和角色是无法自由流动的,而在单一世界中,就没有这个限制。当然,副本是不算在内的,副本可以算是另外一个世界,实现要比单一世界简单多了。现在我们探讨下,如果将魔兽世界的全部区和全部服整合在一个单一世界中,会有什么问题呢?

1、巨大的连接数,我们先限定在10M。不过这也不是单个机器能受得了,还带来巨多玩家信息。

2、海量的计算。由于海量的人在上面,所以海量的计算是显然的。

3、庞大的地图。想想看,如果所有的人都挤在荆棘谷或者风暴城会是怎么样的情景呢?显然会把路都堵死了。当然这个最不关我的事情了,真的把路堵死了,估计把开发商都笑咧嘴了。

4、虚拟世界和真实世界的不同。虚拟世界中在一起打怪的2个人甚至一个团队可能物理上分布在世界的N个角落。不同的延时也是很关键的事情。汗啊,比网络会议难度还猛啊。会是关键性问题么?

看到这些问题,我们可能一下子会蒙掉了,高难度啊。不过,我们还应该看到,在单一世界中,有一些天然得限制。

1、你所能看到的世界是局部的,或者说是在某种粒度上是局部的。可以这么理解,你一眼望去,从荆棘谷是看不到幽暗城里面发生了什么。即使从小地图上看,也是一种粗粒度的局部。可能会看到赞加沼泽的概况,却也看不到盘牙水库上面有没有鱼在游动。

2、世界也是局部的,在风暴城中打个饱嗝,决不会造成天空卫队某个哥们摔下坐骑,更不会有蝴蝶效应,即使有,也可以抹杀。而且,即使世界是连续,完全可以视为局部的连续。

单一世界的局部性原理是我们实现单一世界的一个核心原理,使得我们有可能根据这个原理构筑更大的世界。
...全文
3878 150 打赏 收藏 转发到动态 举报
写回复
用AI写文章
150 条回复
切换为时间正序
请发表友善的回复…
发表回复
bbvs1 2010-02-09
  • 打赏
  • 举报
回复
来顶贴了!!!!!!!
pingan300 2009-12-17
  • 打赏
  • 举报
回复
好帖子,非常值得学习,开拓了眼界
gumbour 2009-09-18
  • 打赏
  • 举报
回复
补充一点, 限于x86的总线带宽,一般通用服务器都采用千兆网络接口。 而专用领域的高端集群,则采用更高级的处理器,如一块服务器板最多4颗XLR732(每颗8核32线程MIPS),甚至2到4颗TILERA64(每颗64核64线程MIPS),这种设备成本未必高,但是性能极强,板件带宽一般都是万兆的,而且支持多框级联。
gumbour 2009-09-18
  • 打赏
  • 举报
回复
[Quote=引用 120 楼 xingzhe2001 的回复:]
romandion,我在服务器方面绝对菜鸟,因为能接触到高级服务器硬件的机会还是不普遍,能否告诉我们:
1.现在服务器之间交互都通过什么设备
2.如果是网卡,传输速度是多少,考虑到交换机,传输速度是多少
3.应该有专用的服务器间连接线吧,看到集群计算机后面插了很多线,都有些啥线,速度是多少
4.有专用的机对机连线么,不通过交换器的那种,传输速度能有多少?有光纤么?

还有服务器软件的问题:
1.现在的集群服务器操作系统能提供什么服务?使数据在服务器间透明的共享么?任意两个服务器之间?

[/Quote]
1 如果真要搭建集群,刀片服务器是首选。刀片服务器内部已经提供了高速冗余交换网络。
一般是一个机框,能插10多块服务器单板和2快主控交换板,典型的开放架构如ATCA,不过HP,IBM现在都有自己的架构。刀片能够提供热插板,统一供电,统一网络出口,远程管理等功能。


2 机架服务器不适合搭建集群,所以不讨论,而且机架服务器高速网口(万兆)成本也太高。
以ATCA为例,标准17英寸机框12服务器板+2主控交换板,双双星(base和fabric两个平面都是双星)结构为例。
框内有一块背板,提供框内各槽位互联。


每块服务器板和每块交换板之间有一个base接口,速率至少1Gbps或10Gbps。
每块服务器板和每块交换板之间有一个fabric接口,速率至少1Gbps或10Gbps。
每块服务器板和隔壁(也可能隔壁的隔壁) 之间有一个update接口,速率1Gbps或10Gbps,注意不是任意两块,而是每块之和另外一块有update接口,整框12块板有6对update接口。
每块服务器板由前插板和后插板组成,CPU和内存等主体模块在前插板上,前插板也可能出数个1Gbps或者10Gbps接口,甚至提供4个扩展子卡插槽(每插槽可扩展1CPU或其他设备,像PCI一样,只是总线不同)。 后插板一般是IO,包括鼠标,键盘,USB,显示器,网口等接口,后插板可选,一般一框就一个后插板,反正支持热插拔,想操作哪个服务器板,就插到对应的后面去。
服务器板网络接口非常丰富。 以我们公司的服务器板为例,前插板2网络接口(RJ45或光纤口),后插板2网络接口(RJ45或光纤口),背板支持4网络接口(2base+2fabric),再加Update接口 一共9个接口。 前插板和后插板因为万兆接口成本远高于背板的万兆网络接口,所以一般前插板都是千兆口,update,base和fabric则根据成本和需求决定。
假如不惜成本,服务器板的豪华配置可在框内达到40Gbps带宽(2base+2fabric)。

两块交换板之间提供40Gbps设置80Gbps或者更高的带宽。
交换板前面板和后插板可以出若干个接口,千兆或者万兆均可,一般整个机框从交换板上出一根网线就可以满足整框的网络需求。。


base和fabric采用serdes通道来进行串行数据传输,典型的刀片服务器架构都是用base和fabric通道来承载IP网络,作为网络集群使用。但是假如你愿意,你可以用来承载任何协议,甚至承载内部高速总线使整框成为一台多核计算机。 虽然ATCA建议fabric是1G或10G接口,但已经有公司在base和fabric上承载40G接口。

这样每个主控交换板都处于一个base平面和一个fabric平面的星形网络结构中心,如果是承载二层以太网的话,主控交换板上有数颗巨牛B的万兆交换芯片,一般都是broadcom的产品,完成最高数百Gbps的数据交换。 因为2块主控交换板的base和fabric共4个网络都是星形结构所以叫双双星结构,如果因为成本原因也可能简化为双星或者单星。


正常的分布式网络集群每服务器采用4个千兆网口已经是豪华配置了,只有专门的数据处理才可能用的上万兆接口!


3 框内的交换一般已经够豪华了,大部分不需要再连线了。


4 高端服务器网络接口可能采用RJ45千兆水晶头接口, SFP接口,可插入千兆光模块,XFP接口,可插入万兆光模块。 光模块上可以直接接光纤。
所有的网络接口全部双工。


集群服务器软件提供多服务器管理功能和分布式运行能力,对外表现为一台多核计算机,数据对外透明,内部对任务进行划分处理,一般按线程/进程在多服务器间调度。
如果不跑集群服务器软件,那么每块服务器板就是一个单独的服务器,可以独立使用。
tangyueast 2009-09-18
  • 打赏
  • 举报
回复
受教。
向楼主致敬。
The9thArt 2009-09-16
  • 打赏
  • 举报
回复
mak
beipiao 2009-09-08
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 romandion 的回复:]
现在我们进入实质性的探讨阶段,首先是登录管理。

单一世界中海量在线数是个很重要的问题。多数架构都是用代理服务器来分散连接,这里提供一个方法,既能满足海量连接,还能实现单点登录,细节看了再说。

单点登录,意味着,所有的请求都将被一个IP处理。而海量请求,意味着所有的登录管理都会在一个IP的完成,天啦,如果到了10M那是什么概念。即使1M/S的处理速度,也要10S才能完成一个登录管理,那我估计,这个应用早被人骂了体无完肤,当然,魔兽世界可能例外,没看到那么多人排队进战场么?可不止10S啊。

对于一个登录过程来说,一般可以分为几个步骤。

1、C-->登录请求-->S

2、S-->请求应答-->C

3、C-->认证信息-->S

4、S-->认证结果-->C

在这个步骤中,如果一个S同时处理所有的请求,显然在海量连接下是不可能。于是,我们将步骤2进行拆分。

2.1、S-->登录转发-->C

2.2、C-->登录请求-->Sx

2.3、Sx-->请求应答-->C

在C发出登录请求的时候,C可能得到2种报文,一个是转发报文,服务器让他连接到另外一个服务,后续的过程是一样的;另外一个是登录应答。服务器直接响应客户端的请求。

这个过程有几点好处:
第一、满足单点登录,因为客户端只需要知道一个IP地址;
第二、转发报文让客户端能够连接到其他IP,在海量在线的时候,实际上,主IP没有太多的事情,只要负责转发报文;
第三、客户端可以保存上次得到的IP,下次直接连接到改IP中,这样,就不需要找主IP的麻烦了;
第四、如果服务x依然有问题,比如太忙,那么,他可以再转发该客户端到其他IP去。
[/Quote]

楼主,海量登陆连接可以用负载均衡集群来解决,还有一个办法是加一个服务器,专门用来给客户端分配登陆ip。

集群分很多种,你不能用高性能集群来代表所有集群。

单一世界架构的实现,必须是一个具有“高并发高负载应用开发经验和大规模集群项目实施经验”的人来领导才有可能。

我不是做游戏的,正所谓术业有专攻,但是有时候专攻一个方向,会使你的思路容易限制在某个方面。
xiaobinsf 2009-09-04
  • 打赏
  • 举报
回复
支持一下楼主, 没有想象就没有进步, 况且,分布式架构网游服务器,不是没可能做到的
nj_dobetter 2009-08-21
  • 打赏
  • 举报
回复
牛!
sancoz 2009-08-14
  • 打赏
  • 举报
回复
LZ,我不知道你从哪得来的资料,现在EVE同时在线人数都是平均在40000以上
sniperhuangwei 2009-08-12
  • 打赏
  • 举报
回复
喔,兴睿网络的CTO鲁俊武又行骗到这来啦?
-----------------------------------------------------------
至于那个 MDNA网络游戏整体架构编程 就是两个菜鸟在那里YY.
-----------------------------------------------------------
朋友,你真的以为是两个菜鸟吗?其实是一个,xman和lu.你们就不用再
装了吧.你在网络上的ID多的是.自己跟自己唱双簧的戏我已经看腻了.
yuyunliuhen 2009-07-30
  • 打赏
  • 举报
回复
好贴。
Thinking_In_IT 2009-07-20
  • 打赏
  • 举报
回复
mark 一下
zzmoutmans 2009-07-18
  • 打赏
  • 举报
回复
zzmoutmans 2009-07-18
  • 打赏
  • 举报
回复
romandion 2009-07-17
  • 打赏
  • 举报
回复
这CSND还真怪了啊。行者兄弟10点的时候回的113楼,怎么愣是不见了呢?
donil 2009-07-17
  • 打赏
  • 举报
回复
虽然不做游戏,但是的确是好帖,mark
xingzhe2001 2009-07-17
  • 打赏
  • 举报
回复
[Quote=引用 110 楼 romandion 的回复:]
如果说每个角色都会有一个唯一标识符容易理解,不过每个剑是否也会有呢?如果2个角色都拿着1把蛋刀,这2把蛋刀是相同的标识符还是…
[/Quote]
每一个可以保存的对象都是有唯一标识符的,武器,装备。我接触的是用uuid做标识符。这样可以在数据库中查找,也可以防止复制装备。
simon031187 2009-07-17
  • 打赏
  • 举报
回复
大一统的服务器,起码现在的硬件环境应该是达不到的
我想还是多个并行的服务器,但是在服务器之间按照一定的规则,允许帐号转移
就好像现实里面的各个国家,允许个人移民一样
mituxiaomao 2009-07-17
  • 打赏
  • 举报
回复
mark 谢谢
加载更多回复(129)
因pdf的容量过大分4个压缩包打包,还有一个源码另外下载。 《.NET深入体验与实战精要》作者身为从事.NET一线开发的资深开发专家,常年耕耘技术博客,惠及无数.NET新知。此次将长期的思考、感悟,多年的系统开发、设计和团队管理经验,以及深入分析众多项目实战的宝贵成果和盘托出,力求将编程思想与具体实践融为一体,提炼出适合于广大读者快速理解和彻底掌握.NET软件开发的最佳学习路线。本书既考虑到实际开发中经常遇到的困惑和难题,也分析了解决问题的思路和方法,更总结出项目开发中不可或缺的技术点及思想。读者可以在欣赏一个个有趣例子的过程中,不知不觉具备开发真正商业项目的能力。 本书集实用性、思想性、趣味性于一体,内容共分为技术基础总结、系统架构设计思想及项目实战解析三部分,随书所附光盘收录大量实例代码及独家披露的商业系统,供读者参考学习。 本书适合于.NET初、中级开发人员参考学习,特别有助于.NET从业者进入实战层次,也可作为相关培训机构的参考教材,还可以作为高等院校相关专业师生的参考书。 目录 第1篇 技术基础总结 第1章 .NET,你真的知道了吗 3 1.1 搞清自己是干什么的 4 1.2 .NET的几个特性 7 1.3 万丈高楼平地起:面试者必会 9 1.3.1 C#介绍 10 1.3.2 命名空间 10 1.3.3 C#语法格式要点 10 1.3.4 变量 12 1.3.5 类型推断 12 1.3.6 变量的作用域 13 1.3.7 常量 16 1.3.8 流程控制 16 1.3.9 字符串常见操作 21 1.3.10 几个常用的数学函数 27 1.4 .NET的面向对象之门 27 1.4.1 继承——“子承父业” 28 1.4.2 委托——“任务书” 35 1.4.3 事件——“年终分红” 42 1.4.4 反射——“解剖” 49 1.5 .NET开发几把小刀 52 1.5.1 using之多变身 52 1.5.2 @符号的妙用 54 1.5.3 预处理指令,有你更轻松 55 1.6 Visual Studio.NET 2008 实战 58 1.6.1 如何创建ASP.NET项目 58 1.6.2 如何创建Windows项目 61 1.6.3 Visual Studio.NET 2008 操作与使用技巧 61 1.6.4 常见开发调试技巧 66 1.6.5 错误异常处理方法 70 本章常见技术面试题 76 常见面试技巧之面试前的准备 76 本章小结 77 第2章 细节决定成败 79 2.1 Equals()和运算符==的区别 80 2.2 const和readonly的区别 82 2.3 private、protected、public和internal的区别 86 2.4 sealed、new、virtual、abstract与override 87 2.5 abstract class与interface 91 2.6 公共变量与属性的区别 93 2.7 参数修饰符params、out和ref的区别 96 2.8 值类型和引用类型的区别 100 2.9 结构与类的区别 103 2.10 Dispose()和Close()、Finalize()的 区别 106 2.11 string和StringBuilder有什么区别 106 2.12 Debug版本和Release版本的 区别 108 本章常见技术面试题 111 常见面试技巧之细节决定成败 111 本章小结 112 第3章 ASP.NET开发大杂烩 113 3.1 页面生命周期 114 3.1.1 独立页面生命周期事件顺序 114 3.1.2 具有Master页的生命周期事件顺序 116 3.1.3 ASP.NET生命周期详解 118 3.2 页面状态管理 120 3.2.1 Cookie 121 3.2.2 HtmlInputHidden隐藏域 123 3.2.3 ViewState 123 3.2.4 查询字符串Request 124 3.2.5 Aplication对象 125 3.2.6 Session对象 125 3.2.7 示例项目:在线用户列表统计 128 3.3 服务器和客户端数据交互 131 3.3.1 页面数据绑定全攻略 131 3.3.2 Bind和Eval的区别 140 3.4 ASP.NET编程中的技巧 142 3.4.1 页面之间传值的7种方法 142 3.4.2 get与post方法的区别 146 3.4.3 ASP.NET服务器控件和 HTML控件的区别 146 3.4.4 Server.Transfer和Response.Redirect的区别 148 3.4.5 刷新页面的方法汇总 149 3.4.6 页面事件控制 150 3.4.7 在URL中传递中文的解决方案 152 3.4.8 增强用户体验的一些技巧 153 3.4.9 XHTML与HTML的区别 156 3.5 打造自己的页面基类PageBase 161 本章常见技术面试题 164 常见面试技巧之如何做好自我介绍 164 本章小结 165 第4章 Windows窗体编程你也行 167 4.1 创建简单的WinForm项目 168 4.2 创建MDI窗体应用 170 4.3 获取应用程序路径信息 174 4.4 回车跳转控件焦点 175 4.5 窗体间传递复杂数据 176 4.5.1 构造传递 176 4.5.2 公有字段传递 177 4.5.3 委托与事件传递 179 4.6 实现个性化窗体界面 181 4.7 无标题窗体拖动的两种方法 183 4.8 让程序只启动一次——单实例运行 184 4.9 实现系统托盘和热键呼出 185 4.10 进程与多线程的区别 190 4.11 创建多线程应用程序 191 4.12 WinForm开发常见问题 194 4.12.1 如何设置运行时窗体的起始位置 194 4.12.2 如何使一个窗体在屏幕的最顶端 194 4.12.3 实现窗体渐显效果 194 4.12.4 设置窗口背景为渐变色 195 4.12.5 模态窗口和非模态窗口 196 4.12.6 屏蔽窗口右上角的关闭 操作 196 4.12.7 调用执行外部的程序 197 本章常见技术面试题 197 常见面试技巧之经典问题巧回答 198 本章小结 198 第5章 数据库开发 199 5.1 ADO.NET与抽水的故事 200 5.1.1 ADO.NET的定义 200 5.1.2 趣味理解ADO.NET对象模型 202 5.1.3 进水笼头——建立Connection 204 5.1.4 抽水机——Command 206 5.1.5 输水管——DataAdapter 209 5.1.6 输水管——DataReader 210 5.1.7 随用随关,释放资源 212 5.1.8 水库管理——DataSet 212 5.1.9 水池子——DataTable 214 5.2 数据库操作类的封装详解 217 5.2.1 执行命令方法的封装 217 5.2.2 查询数据方法的封装 220 5.2.3 数据统计方法的封装 221 5.2.4 实现SqlParameter方式 222 5.2.5 实现多数据库的访问 223 5.3 常用经典SQL语句 224 5.4 事务处理 226 5.4.1 SQL和存储过程级别的事务 227 5.4.2 ADO.NET级别的事务 229 5.4.3 ASP.NET页面级别的事务 230 5.4.4 企业级服务COM+事务 231 5.4.5 System.Transactions 事务处理 236 5.5 Oracle开发常见问题 240 5.5.1 Oracle和SQL Server的常用函数对比 240 5.5.2 Oracle和SQL Server的语句区别 244 5.5.3 ASP.NET连接Oracle失败的解决方法 245 本章常见技术面试题 246 常见面试技巧之经典问题巧回答 246 本章小结 247 第6章 关于XML 249 6.1 XML概述 250 6.1.1 XML和HTML有什么区别 250 6.1.2 XML的优势 250 6.2 文档结构与基本语法 251 6.3 XML操作 253 6.3.1 XmlDocument创建XML文档 253 6.3.2 XmlTextWriter创建XML文档 254 6.3.3 XmlDocument读取XML文档 256 6.3.4 XmlTextReader读取XML文档 257 6.3.5 在HTML中显示XML中的数据 258 6.3.6 JavaScript获取XML内容 259 6.3.7 项目案例:通用自定义XML配置类 263 6.4 ADO.NET与XML 266 6.4.1 读XML文档到DataSet 266 6.4.2 DataSet转为XML文档 267 6.5 项目案例1:实现网站的RSS应用 267 6.6 项目案例2:在线实现RSS阅读器 270 本章常见技术面试题 275 常见面试技巧之经典问题巧回答 275 本章小结 276 第7章 Web Service开发详解 277 7.1 Web Service基本概念 278 7.2 Web Service的应用场景 278 7.3 创建简单的Web Service项目应用 280 7.4 Web Service属性介绍 282 7.5 ASP.NET如何调用Web Service 286 7.6 JavaScript如何调用Web Service 288 7.6.1 通过webbehavior.htc调用Web Service 288 7.6.2 通过Microsoft.XMLDOM调用Web Service 291 7.6.3 XMLHTTP POST调用Web Service 293 7.6.4 SOAP调用Web Service 293 7.7 WinForm如何调用Web Service 295 7.7.1 .NET的WinForm调用Web Service 295 7.7.2 手动发送HTTP请求调用Web Service 295 7.8 实现异步调用Web Service 297 7.9 如何保证Web Service的安全 299 7.9.1 通过SoapHeader来增强 Web Service的安全性 299 7.9.2 采用SSL实现加密传输 302 7.9.3 访问IP限制 315 7.10 Web Service开发中需要注意的问题 316 本章常见技术面试题 320 常见面试技巧之经典问题巧回答 320 本章小结 321 第8章 用户体验的杀手锏—— Ajax 323 8.1 Ajax概述 324 8.1.1 什么是Ajax 324 8.1.2 Ajax技术的核心 325 8.1.3 Ajax的工作原理 326 8.1.4 Ajax的优点 326 8.1.5 Ajax的问题 327 8.1.6 Ajax适用场景 327 8.1.7 Ajax不适用场景 329 8.1.8 XMLHttpRequest开发实例 329 8.2 微软VS.NET的Ajax开发 333 8.2.1 安装ASP.NET 2.0 Ajax Extensions 333 8.2.2 创建ASP.NET Ajax应用程序 333 8.2.3 ScriptManager控件使用技巧 335 8.2.4 UpdaetPanel控件使用技巧 336 8.2.5 AsyncPostBackTrigger实现 外部控件引发局部刷新 338 8.2.6 Ajax错误处理 341 8.2.7 告诉用户你正在做什么—— UpdateProgress控件 342 8.2.8 ASP.NET AjaxControToolKit简介 345 8.3 使用第三方组件 Ajax.dll 开发 347 8.4 使用第三方组件AjaxPro的开发 351 8.5 使用第三方组件MagicAjax的开发 351 8.6 Ajax开发原则 352 本章常见技术面试题 353 常见面试技巧之经典问题巧回答 353 本章小结 354 第9章 系统与文件操作 355 9.1 获取系统信息 356 9.1.1 用SystemInformation类获取系统信息 356 9.1.2 用Environment 类获取系统信息 357 9.1.3 通过WMI获取系统信息 358 9.1.4 用RegistryKey 类读取系统信息 361 9.1.5 用API函数获取系统信息 363 9.1.6 获取系统服务信息 365 9.2 文件操作 368 9.2.1 StreamWriter类实现写文件 368 9.2.2 通过File类创建文件 369 9.2.3 通过FileStream类创建文件 370 9.2.4 通过FileInfo类创建文件 370 9.2.5 追加文本 370 9.2.6 读取文本文件 371 9.2.7 读写二进制文件 372 9.2.8 文件复制、移动、删除 374 9.3 文件夹目录操作 375 9.4 读写INI文件 376 9.5 读写注册表 379 本章常见技术面试题 381 常见面试技巧之经典问题巧回答 381 本章小结 382 第10章 网络应用开发 383 10.1 Socket基本编程 384 10.1.1 Socket基本知识 384 10.1.2 Socket服务端开发步骤 386 10.1.3 Socket客户端开发步骤 388 10.2 异步Socket通信——实现MSN机器人 390 10.2.1 机器人服务端 390 10.2.2 客户端实现步骤 395 10.3 基于TCP协议的客户端和服务端 398 10.3.1 TcpListener 实现网络服务端 398 10.3.2 TcpClient实现网络客户端 399 本章常见技术面试题 401 常见面试技巧之经典问题巧回答 401 本章小结 402 第11章 Windows Service开发 403 11.1 什么是Windows服务 404 11.2 创建Windows服务 404 11.3 Windows服务开发常见问题 408 11.4 安装/卸载Windows服务 409 11.4.1 安装Windows服务 409 11.4.2 卸载Windows服务 410 11.4.3 Windows服务应用程序体系结构 411 11.5 调试Windows服务 414 11.5.1 日志调试法 414 11.5.2 附加进程断点调试法 414 本章常见技术面试题 416 职场智慧之初入江湖 416 本章小结 418 第12章 新技术初探 419 12.1 WPF 421 12.1.1 WPF简介 421 12.1.2 WPF何以令人佩服 422 12.1.3 XAML概述 422 12.1.4 WPF开发环境配置 423 12.1.5 项目示例:开发一个简单的WPF应用程序 424 12.2 WCF 427 12.2.1 SOA是什么 427 12.2.2 WCF是什么 428 12.2.3 WCF的优势是什么 428 12.2.4 WCF开发环境 431 12.2.5 项目示例:订票服务WCF开发步骤 431 12.3 LINQ 440 12.3.1 LINQ的架构 441 12.3.2 传统的查询 441 12.3.3 LINQ查询实例 444 12.3.4 LINQ查询语法 448 本章常见技术面试题 449 职场智慧之学习方法 449 本章小结 450 第2篇 系统架构设计思想 第13章 面向对象思想 453 13.1 为什么要面向对象 454 13.2 什么是面向对象 456 13.3 面向对象的特点 458 13.3.1 封装 459 13.3.2 继承 459 13.3.3 多态 460 13.4 面向对象设计和开发实例 466 13.4.1 传统过程化设计实现播放器功能 466 13.4.2 基于面向对象设计实现播放器功能 467 13.4.3 面向对象封装、继承、多态的应用 468 13.4.4 设计模式、条件外置及反射技术的应用 471 13.5 面向对象分析(OOA)的方法 475 13.6 面向对象设计的原则 478 13.6.1 优先使用(对象)组合,而非(类)继承 478 13.6.2 针对接口编程,而非(接口的)实现 481 13.6.3 开放-封闭法则(OCP) 482 13.6.4 Liskov替换法则(LSP) 485 13.6.5 单一职责原则(SRP) 486 13.6.6 依赖倒置原则(DIP) 486 13.6.7 接口分离原则(ISP) 489 13.6.8 面向对象设计时需要注意的 问题 490 本章常见技术面试题 491 本章小结 491 第14章 三层架构项目开发 493 14.1 什么是三层架构 494 14.1.1 常用的三层架构设计 494 14.1.2 趣味理解:三层架构与养猪 496 14.2 为什么要用三层架构 497 14.3 三层架构项目开发示例 500 14.3.1 数据库设计 500 14.3.2 创建整体解决方案 501 14.3.3 业务实体Model的实现 502 14.3.4 数据访问层的实现 504 14.3.5 业务逻辑层的实现 509 14.3.6 表示层的实现 510 14.4 实现基于工厂模式的三层架构 512 14.4.1 扩展新增数据访问层 512 14.4.2 IDAL抽象接口的实现 513 14.4.3 创建DAL对象的封装 517 14.4.4 实现抽象工厂模式 519 14.4.5 工厂模式的三层架构图 521 本章常见技术面试题 522 职场智慧之程序员的职业规划 523 本章小结 524 第15章 大型网站的性能优化与安全 525 15.1 高效C#编码优化 526 15.2 页面(HTML)优化的方法 534 15.3 ASP.NET开发性能优化 540 15.3.1 如没必要,尽量使用静态HTML页面 540 15.3.2 避免不必要的回送操作 541 15.3.3 尽量在客户端进行用户输入验证 541 15.3.4 关闭不必要的Session状态 542 15.3.5 优先使用HTML控件,而非服务器控件 542 15.3.6 不必要时关闭ViewState 542 15.3.7 禁用调试模式 543 15.4 系统缓存管理 543 15.4.1 缓存的分类 544 15.4.2 传统缓存方式 545 15.4.3 页面输出缓存 545 15.4.4 页面输出缓存API 548 15.4.5 页面局部缓存 549 15.4.6 应用程序数据缓存 554 15.4.7 文件缓存依赖 555 15.4.8 数据库缓存依赖 557 15.4.9 Memcached——分布式缓存系统 560 15.4.10 Cacheman——.NET架构 下的分布式缓存项目 561 15.5 数据库访问性能优化 562 15.5.1 选择合适的.NET数据供应器 563 15.5.2 及时地关闭数据库连接 563 15.5.3 跟踪监视SQL Server当前链接池状态 564 15.5.4 善用数据库的存储过程 567 15.5.5 SqlDataRead和Dataset的选择 567 15.5.6 ExecuteNonQuery和 ExecuteScalar的选择 568 15.5.7 数据的绑定DataBinder 568 15.5.8 使用DataReader的注意事项 568 15.5.9 Command对象的使用 569 15.5.10 反复地执行SQL语句用 Prepare() 569 15.5.11 分页的数据访问 570 15.5.12 SQL命令的优化 570 15.5.13 tempdb的使用技巧 572 15.5.14 使用视图代替跨库操作 572 15.5.15 尽量避免大事务操作 572 15.5.16 尽量避免使用游标 573 15.5.17 为你的表建立适当的索引 573 15.6 网站安全防护 573 15.6.1 什么是SQL注入式攻击 573 15.6.2 如何防范SQL注入式攻击 574 15.6.3 实现页面验证码 575 15.6.4 实现文件防盗链 579 15.6.5 采用HTTPS进行访问 584 15.7 IIS优化 584 15.7.1 如何监测IIS服务器并发数 584 15.7.2 采用Gzip压缩页面优化 585 15.7.3 网站应用程序池配置 588 15.8 网站架构优化策略 593 本章常见技术面试题 596 职场智慧之独善其身 596 本章小结 599 第16章 系统设计的原则和技巧 601 16.1 系统设计的一些原则 602 16.1.1 最适合的才是最好的 602 16.1.2 以不变应万变 603 16.1.3 可扩展性 603 16.1.4 可复用性 604 16.2 系统设计的常用方法 604 16.3 敏捷软件开发12条原则 608 16.4 系统架构师成长之路 611 本章常见技术面试题 615 职场智慧之职场政治 615 本章小结 616 第3篇 项目实战解析 第17章 权限角色管理项目解析 619 17.1 权限角色管理概述 620 17.2 项目概述 623 17.3 数据库设计 624 17.3.1 数据库实体关系模型 624 17.3.2 表结构设计 625 17.4 数据访问层 627 17.4.1 类设计 627 17.4.2 代码实现 629 17.5 业务逻辑层 629 17.5.1 类设计 630 17.5.2 扩展.NET Framework用户处理机制 632 17.6 接口调用与Web管理实现 638 17.6.1 Web.config配置 638 17.6.2 用户身份和权限验证 638 17.6.3 用户验证接口方式:权限验证用户控件 640 17.6.4 用户验证接口方式:页面基类 642 17.6.5 用户和角色权限的后台管理 644 职场智慧之如何提升自己在公司的价值 652 本章小结 653 第18章 单点登录系统的设计与实现 655 18.1 项目概述 656 18.1.1 名词定义 656 18.1.2 项目需求描述 656 18.2 业务流程设计 657 18.2.1 用户认证流程 657 18.2.2 安全验证流程 658 18.3 功能与接口设计 659 18.3.1 接口交互设计 659 18.3.2 应用系统接口 660 18.3.3 认证服务器功能和接口 660 18.4 数据库设计 660 18.4.1 数据库实体关系模型 661 18.4.2 表结构设计 661 18.5 实现认证服务器 662 18.5.1 SSO解决方案 663 18.5.2 系统管理后台 664 18.5.3 用户通行证管理中心 665 18.5.4 认证服务器接口开发 673 18.6 应用系统接入接口开发 675 18.6.1 用户身份认证 675 18.6.2 接收状态同步 676 18.6.3 用户注销 678 18.6.4 更新认证服务器状态 679 18.7 接口封装及调用 679职场智慧之晋升之道 682 本章小结 684 第19章 常用.NET开发工具介绍 685 19.1 源码版本管理: Visual SourceSafe 2005 686 19.1.1 安装和配置VSS 2005服务端 686 19.1.2 安装和配置VSS客户端 691 19.1.3 将项目加入VSS版本控制 692 19.1.4 客户端连接VSS 服务器获取源代码 694 19.1.5 设置VSS支持通过 Internet访问 696 19.1.6 版本控制的几个概念 701 19.1.7 VSS项目权限管理 703 19.1.8 VSS数据备份 705 19.1.9 VSS 2005的使用规范 707 19.2 单元测试工具:NUnit 708 19.2.1 NUnit简介 708 19.2.2 手把手教你在.NET中应用NUnit 708 19.3 日志工具——Log4net 714 19.3.1 Log4net简介 714 19.3.2 使用步骤 717 19.3.3 单独配置文件的使用 719 19.4 代码规范检查工具: Microsoft Source Analysis for C# 721 19.5 生成文档注释工具:GhostDoc 723 19.6 反编译工具:Reflector for .NET 732 19.7 动软.NET代码生成器 733 19.8 帮助文档生成工具:Sandcastle 737 19.8.1 Sandcastle介绍 737 19.8.2 生成方式 738 19.8.3 具体生成步骤 740 本章小结 748 附录A 软件编码规范 A.1 概述 750 A.1.1 规范基本原则 750 A.1.2 术语定义 750 A.1.3 文件命名组织 750 A.2 代码外观 751 A.2.1 列宽 751 A.2.2 换行 751 A.2.3 缩进 751 A.2.4 空行 751 A.2.5 空格 752 A.2.6 括号——() 753 A.2.7 花括号——{} 753 A.3 程序注释 754 A.3.1 注释概述 754 A.3.2 文档型注释 755 A.3.3 类注释 755 A.3.4 单行注释 755 A.3.5 注释标签 756 A.4 声明 758 A.4.1 每行声明数 758 A.4.2 初始化 758 A.4.3 位置 758 A.4.4 类和接口的声明 759 A.4.5 字段的声明 759 A.5 命名规范 759 A.5.1 命名概述 759 A.5.2 大写规则 760 A.5.3 缩写 761 A.5.4 命名空间 761 A.5.5 类 762 A.5.6 接口 762 A.5.7 属性(Attribute) 763 A.5.8 枚举(Enum) 763 A.5.9 参数 763 A.5.10 方法 764 A.5.11 属性(property) 764 A.5.12 事件 765 A.5.13 常量(const) 766 A.5.14 字段 767 A.5.15 静态字段 768 A.5.16 集合 768 A.5.17 措词 768 A.6 语句 769 A.6.1 每行一个语句 769 A.6.2 复合语句 769 A.6.3 return语句 769 A.6.4 if、if-else、if else-if语句 770 A.6.5 for、foreach 语句 770 A.6.6 while语句 771 A.6.7 do-while语句 771 A.6.8 switch-case语句 771 A.6.9 try-catch语句 772 A.6.10 using块语句 772 A.6.11 goto语句 772 A.7 其他 773 A.7.1 表达式 773 A.7.2 类型转换 773 A.8 匈牙利命名法 773 A.9 控件命名规则 774 A.9.1 一般命名方法 774 A.9.2 主要控件名简写对照表 774 ……
因pdf的容量过大分4个压缩包打包,还有一个源码另外下载。 《.NET深入体验与实战精要》作者身为从事.NET一线开发的资深开发专家,常年耕耘技术博客,惠及无数.NET新知。此次将长期的思考、感悟,多年的系统开发、设计和团队管理经验,以及深入分析众多项目实战的宝贵成果和盘托出,力求将编程思想与具体实践融为一体,提炼出适合于广大读者快速理解和彻底掌握.NET软件开发的最佳学习路线。本书既考虑到实际开发中经常遇到的困惑和难题,也分析了解决问题的思路和方法,更总结出项目开发中不可或缺的技术点及思想。读者可以在欣赏一个个有趣例子的过程中,不知不觉具备开发真正商业项目的能力。 本书集实用性、思想性、趣味性于一体,内容共分为技术基础总结、系统架构设计思想及项目实战解析三部分,随书所附光盘收录大量实例代码及独家披露的商业系统,供读者参考学习。 本书适合于.NET初、中级开发人员参考学习,特别有助于.NET从业者进入实战层次,也可作为相关培训机构的参考教材,还可以作为高等院校相关专业师生的参考书。 目录 第1篇 技术基础总结 第1章 .NET,你真的知道了吗 3 1.1 搞清自己是干什么的 4 1.2 .NET的几个特性 7 1.3 万丈高楼平地起:面试者必会 9 1.3.1 C#介绍 10 1.3.2 命名空间 10 1.3.3 C#语法格式要点 10 1.3.4 变量 12 1.3.5 类型推断 12 1.3.6 变量的作用域 13 1.3.7 常量 16 1.3.8 流程控制 16 1.3.9 字符串常见操作 21 1.3.10 几个常用的数学函数 27 1.4 .NET的面向对象之门 27 1.4.1 继承——“子承父业” 28 1.4.2 委托——“任务书” 35 1.4.3 事件——“年终分红” 42 1.4.4 反射——“解剖” 49 1.5 .NET开发几把小刀 52 1.5.1 using之多变身 52 1.5.2 @符号的妙用 54 1.5.3 预处理指令,有你更轻松 55 1.6 Visual Studio.NET 2008 实战 58 1.6.1 如何创建ASP.NET项目 58 1.6.2 如何创建Windows项目 61 1.6.3 Visual Studio.NET 2008 操作与使用技巧 61 1.6.4 常见开发调试技巧 66 1.6.5 错误异常处理方法 70 本章常见技术面试题 76 常见面试技巧之面试前的准备 76 本章小结 77 第2章 细节决定成败 79 2.1 Equals()和运算符==的区别 80 2.2 const和readonly的区别 82 2.3 private、protected、public和internal的区别 86 2.4 sealed、new、virtual、abstract与override 87 2.5 abstract class与interface 91 2.6 公共变量与属性的区别 93 2.7 参数修饰符params、out和ref的区别 96 2.8 值类型和引用类型的区别 100 2.9 结构与类的区别 103 2.10 Dispose()和Close()、Finalize()的 区别 106 2.11 string和StringBuilder有什么区别 106 2.12 Debug版本和Release版本的 区别 108 本章常见技术面试题 111 常见面试技巧之细节决定成败 111 本章小结 112 第3章 ASP.NET开发大杂烩 113 3.1 页面生命周期 114 3.1.1 独立页面生命周期事件顺序 114 3.1.2 具有Master页的生命周期事件顺序 116 3.1.3 ASP.NET生命周期详解 118 3.2 页面状态管理 120 3.2.1 Cookie 121 3.2.2 HtmlInputHidden隐藏域 123 3.2.3 ViewState 123 3.2.4 查询字符串Request 124 3.2.5 Aplication对象 125 3.2.6 Session对象 125 3.2.7 示例项目:在线用户列表统计 128 3.3 服务器和客户端数据交互 131 3.3.1 页面数据绑定全攻略 131 3.3.2 Bind和Eval的区别 140 3.4 ASP.NET编程中的技巧 142 3.4.1 页面之间传值的7种方法 142 3.4.2 get与post方法的区别 146 3.4.3 ASP.NET服务器控件和 HTML控件的区别 146 3.4.4 Server.Transfer和Response.Redirect的区别 148 3.4.5 刷新页面的方法汇总 149 3.4.6 页面事件控制 150 3.4.7 在URL中传递中文的解决方案 152 3.4.8 增强用户体验的一些技巧 153 3.4.9 XHTML与HTML的区别 156 3.5 打造自己的页面基类PageBase 161 本章常见技术面试题 164 常见面试技巧之如何做好自我介绍 164 本章小结 165 第4章 Windows窗体编程你也行 167 4.1 创建简单的WinForm项目 168 4.2 创建MDI窗体应用 170 4.3 获取应用程序路径信息 174 4.4 回车跳转控件焦点 175 4.5 窗体间传递复杂数据 176 4.5.1 构造传递 176 4.5.2 公有字段传递 177 4.5.3 委托与事件传递 179 4.6 实现个性化窗体界面 181 4.7 无标题窗体拖动的两种方法 183 4.8 让程序只启动一次——单实例运行 184 4.9 实现系统托盘和热键呼出 185 4.10 进程与多线程的区别 190 4.11 创建多线程应用程序 191 4.12 WinForm开发常见问题 194 4.12.1 如何设置运行时窗体的起始位置 194 4.12.2 如何使一个窗体在屏幕的最顶端 194 4.12.3 实现窗体渐显效果 194 4.12.4 设置窗口背景为渐变色 195 4.12.5 模态窗口和非模态窗口 196 4.12.6 屏蔽窗口右上角的关闭 操作 196 4.12.7 调用执行外部的程序 197 本章常见技术面试题 197 常见面试技巧之经典问题巧回答 198 本章小结 198 第5章 数据库开发 199 5.1 ADO.NET与抽水的故事 200 5.1.1 ADO.NET的定义 200 5.1.2 趣味理解ADO.NET对象模型 202 5.1.3 进水笼头——建立Connection 204 5.1.4 抽水机——Command 206 5.1.5 输水管——DataAdapter 209 5.1.6 输水管——DataReader 210 5.1.7 随用随关,释放资源 212 5.1.8 水库管理——DataSet 212 5.1.9 水池子——DataTable 214 5.2 数据库操作类的封装详解 217 5.2.1 执行命令方法的封装 217 5.2.2 查询数据方法的封装 220 5.2.3 数据统计方法的封装 221 5.2.4 实现SqlParameter方式 222 5.2.5 实现多数据库的访问 223 5.3 常用经典SQL语句 224 5.4 事务处理 226 5.4.1 SQL和存储过程级别的事务 227 5.4.2 ADO.NET级别的事务 229 5.4.3 ASP.NET页面级别的事务 230 5.4.4 企业级服务COM+事务 231 5.4.5 System.Transactions 事务处理 236 5.5 Oracle开发常见问题 240 5.5.1 Oracle和SQL Server的常用函数对比 240 5.5.2 Oracle和SQL Server的语句区别 244 5.5.3 ASP.NET连接Oracle失败的解决方法 245 本章常见技术面试题 246 常见面试技巧之经典问题巧回答 246 本章小结 247 第6章 关于XML 249 6.1 XML概述 250 6.1.1 XML和HTML有什么区别 250 6.1.2 XML的优势 250 6.2 文档结构与基本语法 251 6.3 XML操作 253 6.3.1 XmlDocument创建XML文档 253 6.3.2 XmlTextWriter创建XML文档 254 6.3.3 XmlDocument读取XML文档 256 6.3.4 XmlTextReader读取XML文档 257 6.3.5 在HTML中显示XML中的数据 258 6.3.6 JavaScript获取XML内容 259 6.3.7 项目案例:通用自定义XML配置类 263 6.4 ADO.NET与XML 266 6.4.1 读XML文档到DataSet 266 6.4.2 DataSet转为XML文档 267 6.5 项目案例1:实现网站的RSS应用 267 6.6 项目案例2:在线实现RSS阅读器 270 本章常见技术面试题 275 常见面试技巧之经典问题巧回答 275 本章小结 276 第7章 Web Service开发详解 277 7.1 Web Service基本概念 278 7.2 Web Service的应用场景 278 7.3 创建简单的Web Service项目应用 280 7.4 Web Service属性介绍 282 7.5 ASP.NET如何调用Web Service 286 7.6 JavaScript如何调用Web Service 288 7.6.1 通过webbehavior.htc调用Web Service 288 7.6.2 通过Microsoft.XMLDOM调用Web Service 291 7.6.3 XMLHTTP POST调用Web Service 293 7.6.4 SOAP调用Web Service 293 7.7 WinForm如何调用Web Service 295 7.7.1 .NET的WinForm调用Web Service 295 7.7.2 手动发送HTTP请求调用Web Service 295 7.8 实现异步调用Web Service 297 7.9 如何保证Web Service的安全 299 7.9.1 通过SoapHeader来增强 Web Service的安全性 299 7.9.2 采用SSL实现加密传输 302 7.9.3 访问IP限制 315 7.10 Web Service开发中需要注意的问题 316 本章常见技术面试题 320 常见面试技巧之经典问题巧回答 320 本章小结 321 第8章 用户体验的杀手锏—— Ajax 323 8.1 Ajax概述 324 8.1.1 什么是Ajax 324 8.1.2 Ajax技术的核心 325 8.1.3 Ajax的工作原理 326 8.1.4 Ajax的优点 326 8.1.5 Ajax的问题 327 8.1.6 Ajax适用场景 327 8.1.7 Ajax不适用场景 329 8.1.8 XMLHttpRequest开发实例 329 8.2 微软VS.NET的Ajax开发 333 8.2.1 安装ASP.NET 2.0 Ajax Extensions 333 8.2.2 创建ASP.NET Ajax应用程序 333 8.2.3 ScriptManager控件使用技巧 335 8.2.4 UpdaetPanel控件使用技巧 336 8.2.5 AsyncPostBackTrigger实现 外部控件引发局部刷新 338 8.2.6 Ajax错误处理 341 8.2.7 告诉用户你正在做什么—— UpdateProgress控件 342 8.2.8 ASP.NET AjaxControToolKit简介 345 8.3 使用第三方组件 Ajax.dll 开发 347 8.4 使用第三方组件AjaxPro的开发 351 8.5 使用第三方组件MagicAjax的开发 351 8.6 Ajax开发原则 352 本章常见技术面试题 353 常见面试技巧之经典问题巧回答 353 本章小结 354 第9章 系统与文件操作 355 9.1 获取系统信息 356 9.1.1 用SystemInformation类获取系统信息 356 9.1.2 用Environment 类获取系统信息 357 9.1.3 通过WMI获取系统信息 358 9.1.4 用RegistryKey 类读取系统信息 361 9.1.5 用API函数获取系统信息 363 9.1.6 获取系统服务信息 365 9.2 文件操作 368 9.2.1 StreamWriter类实现写文件 368 9.2.2 通过File类创建文件 369 9.2.3 通过FileStream类创建文件 370 9.2.4 通过FileInfo类创建文件 370 9.2.5 追加文本 370 9.2.6 读取文本文件 371 9.2.7 读写二进制文件 372 9.2.8 文件复制、移动、删除 374 9.3 文件夹目录操作 375 9.4 读写INI文件 376 9.5 读写注册表 379 本章常见技术面试题 381 常见面试技巧之经典问题巧回答 381 本章小结 382 第10章 网络应用开发 383 10.1 Socket基本编程 384 10.1.1 Socket基本知识 384 10.1.2 Socket服务端开发步骤 386 10.1.3 Socket客户端开发步骤 388 10.2 异步Socket通信——实现MSN机器人 390 10.2.1 机器人服务端 390 10.2.2 客户端实现步骤 395 10.3 基于TCP协议的客户端和服务端 398 10.3.1 TcpListener 实现网络服务端 398 10.3.2 TcpClient实现网络客户端 399 本章常见技术面试题 401 常见面试技巧之经典问题巧回答 401 本章小结 402 第11章 Windows Service开发 403 11.1 什么是Windows服务 404 11.2 创建Windows服务 404 11.3 Windows服务开发常见问题 408 11.4 安装/卸载Windows服务 409 11.4.1 安装Windows服务 409 11.4.2 卸载Windows服务 410 11.4.3 Windows服务应用程序体系结构 411 11.5 调试Windows服务 414 11.5.1 日志调试法 414 11.5.2 附加进程断点调试法 414 本章常见技术面试题 416 职场智慧之初入江湖 416 本章小结 418 第12章 新技术初探 419 12.1 WPF 421 12.1.1 WPF简介 421 12.1.2 WPF何以令人佩服 422 12.1.3 XAML概述 422 12.1.4 WPF开发环境配置 423 12.1.5 项目示例:开发一个简单的WPF应用程序 424 12.2 WCF 427 12.2.1 SOA是什么 427 12.2.2 WCF是什么 428 12.2.3 WCF的优势是什么 428 12.2.4 WCF开发环境 431 12.2.5 项目示例:订票服务WCF开发步骤 431 12.3 LINQ 440 12.3.1 LINQ的架构 441 12.3.2 传统的查询 441 12.3.3 LINQ查询实例 444 12.3.4 LINQ查询语法 448 本章常见技术面试题 449 职场智慧之学习方法 449 本章小结 450 第2篇 系统架构设计思想 第13章 面向对象思想 453 13.1 为什么要面向对象 454 13.2 什么是面向对象 456 13.3 面向对象的特点 458 13.3.1 封装 459 13.3.2 继承 459 13.3.3 多态 460 13.4 面向对象设计和开发实例 466 13.4.1 传统过程化设计实现播放器功能 466 13.4.2 基于面向对象设计实现播放器功能 467 13.4.3 面向对象封装、继承、多态的应用 468 13.4.4 设计模式、条件外置及反射技术的应用 471 13.5 面向对象分析(OOA)的方法 475 13.6 面向对象设计的原则 478 13.6.1 优先使用(对象)组合,而非(类)继承 478 13.6.2 针对接口编程,而非(接口的)实现 481 13.6.3 开放-封闭法则(OCP) 482 13.6.4 Liskov替换法则(LSP) 485 13.6.5 单一职责原则(SRP) 486 13.6.6 依赖倒置原则(DIP) 486 13.6.7 接口分离原则(ISP) 489 13.6.8 面向对象设计时需要注意的 问题 490 本章常见技术面试题 491 本章小结 491 第14章 三层架构项目开发 493 14.1 什么是三层架构 494 14.1.1 常用的三层架构设计 494 14.1.2 趣味理解:三层架构与养猪 496 14.2 为什么要用三层架构 497 14.3 三层架构项目开发示例 500 14.3.1 数据库设计 500 14.3.2 创建整体解决方案 501 14.3.3 业务实体Model的实现 502 14.3.4 数据访问层的实现 504 14.3.5 业务逻辑层的实现 509 14.3.6 表示层的实现 510 14.4 实现基于工厂模式的三层架构 512 14.4.1 扩展新增数据访问层 512 14.4.2 IDAL抽象接口的实现 513 14.4.3 创建DAL对象的封装 517 14.4.4 实现抽象工厂模式 519 14.4.5 工厂模式的三层架构图 521 本章常见技术面试题 522 职场智慧之程序员的职业规划 523 本章小结 524 第15章 大型网站的性能优化与安全 525 15.1 高效C#编码优化 526 15.2 页面(HTML)优化的方法 534 15.3 ASP.NET开发性能优化 540 15.3.1 如没必要,尽量使用静态HTML页面 540 15.3.2 避免不必要的回送操作 541 15.3.3 尽量在客户端进行用户输入验证 541 15.3.4 关闭不必要的Session状态 542 15.3.5 优先使用HTML控件,而非服务器控件 542 15.3.6 不必要时关闭ViewState 542 15.3.7 禁用调试模式 543 15.4 系统缓存管理 543 15.4.1 缓存的分类 544 15.4.2 传统缓存方式 545 15.4.3 页面输出缓存 545 15.4.4 页面输出缓存API 548 15.4.5 页面局部缓存 549 15.4.6 应用程序数据缓存 554 15.4.7 文件缓存依赖 555 15.4.8 数据库缓存依赖 557 15.4.9 Memcached——分布式缓存系统 560 15.4.10 Cacheman——.NET架构 下的分布式缓存项目 561 15.5 数据库访问性能优化 562 15.5.1 选择合适的.NET数据供应器 563 15.5.2 及时地关闭数据库连接 563 15.5.3 跟踪监视SQL Server当前链接池状态 564 15.5.4 善用数据库的存储过程 567 15.5.5 SqlDataRead和Dataset的选择 567 15.5.6 ExecuteNonQuery和 ExecuteScalar的选择 568 15.5.7 数据的绑定DataBinder 568 15.5.8 使用DataReader的注意事项 568 15.5.9 Command对象的使用 569 15.5.10 反复地执行SQL语句用 Prepare() 569 15.5.11 分页的数据访问 570 15.5.12 SQL命令的优化 570 15.5.13 tempdb的使用技巧 572 15.5.14 使用视图代替跨库操作 572 15.5.15 尽量避免大事务操作 572 15.5.16 尽量避免使用游标 573 15.5.17 为你的表建立适当的索引 573 15.6 网站安全防护 573 15.6.1 什么是SQL注入式攻击 573 15.6.2 如何防范SQL注入式攻击 574 15.6.3 实现页面验证码 575 15.6.4 实现文件防盗链 579 15.6.5 采用HTTPS进行访问 584 15.7 IIS优化 584 15.7.1 如何监测IIS服务器并发数 584 15.7.2 采用Gzip压缩页面优化 585 15.7.3 网站应用程序池配置 588 15.8 网站架构优化策略 593 本章常见技术面试题 596 职场智慧之独善其身 596 本章小结 599 第16章 系统设计的原则和技巧 601 16.1 系统设计的一些原则 602 16.1.1 最适合的才是最好的 602 16.1.2 以不变应万变 603 16.1.3 可扩展性 603 16.1.4 可复用性 604 16.2 系统设计的常用方法 604 16.3 敏捷软件开发12条原则 608 16.4 系统架构师成长之路 611 本章常见技术面试题 615 职场智慧之职场政治 615 本章小结 616 第3篇 项目实战解析 第17章 权限角色管理项目解析 619 17.1 权限角色管理概述 620 17.2 项目概述 623 17.3 数据库设计 624 17.3.1 数据库实体关系模型 624 17.3.2 表结构设计 625 17.4 数据访问层 627 17.4.1 类设计 627 17.4.2 代码实现 629 17.5 业务逻辑层 629 17.5.1 类设计 630 17.5.2 扩展.NET Framework用户处理机制 632 17.6 接口调用与Web管理实现 638 17.6.1 Web.config配置 638 17.6.2 用户身份和权限验证 638 17.6.3 用户验证接口方式:权限验证用户控件 640 17.6.4 用户验证接口方式:页面基类 642 17.6.5 用户和角色权限的后台管理 644 职场智慧之如何提升自己在公司的价值 652 本章小结 653 第18章 单点登录系统的设计与实现 655 18.1 项目概述 656 18.1.1 名词定义 656 18.1.2 项目需求描述 656 18.2 业务流程设计 657 18.2.1 用户认证流程 657 18.2.2 安全验证流程 658 18.3 功能与接口设计 659 18.3.1 接口交互设计 659 18.3.2 应用系统接口 660 18.3.3 认证服务器功能和接口 660 18.4 数据库设计 660 18.4.1 数据库实体关系模型 661 18.4.2 表结构设计 661 18.5 实现认证服务器 662 18.5.1 SSO解决方案 663 18.5.2 系统管理后台 664 18.5.3 用户通行证管理中心 665 18.5.4 认证服务器接口开发 673 18.6 应用系统接入接口开发 675 18.6.1 用户身份认证 675 18.6.2 接收状态同步 676 18.6.3 用户注销 678 18.6.4 更新认证服务器状态 679 18.7 接口封装及调用 679职场智慧之晋升之道 682 本章小结 684 第19章 常用.NET开发工具介绍 685 19.1 源码版本管理: Visual SourceSafe 2005 686 19.1.1 安装和配置VSS 2005服务端 686 19.1.2 安装和配置VSS客户端 691 19.1.3 将项目加入VSS版本控制 692 19.1.4 客户端连接VSS 服务器获取源代码 694 19.1.5 设置VSS支持通过 Internet访问 696 19.1.6 版本控制的几个概念 701 19.1.7 VSS项目权限管理 703 19.1.8 VSS数据备份 705 19.1.9 VSS 2005的使用规范 707 19.2 单元测试工具:NUnit 708 19.2.1 NUnit简介 708 19.2.2 手把手教你在.NET中应用NUnit 708 19.3 日志工具——Log4net 714 19.3.1 Log4net简介 714 19.3.2 使用步骤 717 19.3.3 单独配置文件的使用 719 19.4 代码规范检查工具: Microsoft Source Analysis for C# 721 19.5 生成文档注释工具:GhostDoc 723 19.6 反编译工具:Reflector for .NET 732 19.7 动软.NET代码生成器 733 19.8 帮助文档生成工具:Sandcastle 737 19.8.1 Sandcastle介绍 737 19.8.2 生成方式 738 19.8.3 具体生成步骤 740 本章小结 748 附录A 软件编码规范 A.1 概述 750 A.1.1 规范基本原则 750 A.1.2 术语定义 750 A.1.3 文件命名组织 750 A.2 代码外观 751 A.2.1 列宽 751 A.2.2 换行 751 A.2.3 缩进 751 A.2.4 空行 751 A.2.5 空格 752 A.2.6 括号——() 753 A.2.7 花括号——{} 753 A.3 程序注释 754 A.3.1 注释概述 754 A.3.2 文档型注释 755 A.3.3 类注释 755 A.3.4 单行注释 755 A.3.5 注释标签 756 A.4 声明 758 A.4.1 每行声明数 758 A.4.2 初始化 758 A.4.3 位置 758 A.4.4 类和接口的声明 759 A.4.5 字段的声明 759 A.5 命名规范 759 A.5.1 命名概述 759 A.5.2 大写规则 760 A.5.3 缩写 761 A.5.4 命名空间 761 A.5.5 类 762 A.5.6 接口 762 A.5.7 属性(Attribute) 763 A.5.8 枚举(Enum) 763 A.5.9 参数 763 A.5.10 方法 764 A.5.11 属性(property) 764 A.5.12 事件 765 A.5.13 常量(const) 766 A.5.14 字段 767 A.5.15 静态字段 768 A.5.16 集合 768 A.5.17 措词 768 A.6 语句 769 A.6.1 每行一个语句 769 A.6.2 复合语句 769 A.6.3 return语句 769 A.6.4 if、if-else、if else-if语句 770 A.6.5 for、foreach 语句 770 A.6.6 while语句 771 A.6.7 do-while语句 771 A.6.8 switch-case语句 771 A.6.9 try-catch语句 772 A.6.10 using块语句 772 A.6.11 goto语句 772 A.7 其他 773 A.7.1 表达式 773 A.7.2 类型转换 773 A.8 匈牙利命名法 773 A.9 控件命名规则 774 A.9.1 一般命名方法 774 A.9.2 主要控件名简写对照表 774 ……
802.11无线网络权威指南 第二版 非扫描 pdf 稀缺的非扫描版本 网络学习必备教程 802.11 无线网络权威指南.......................................................................................................... 1 (第2 版) .................................................................................................................................... 1 目录........................................................................................................................................... 3 序............................................................................................................................................ 14 前言......................................................................................................................................... 16 第1 章 无线网络导论.............................................................................................................. 24 1.1 为何需要无线? 24 1.1.1 无线频谱:关键资源.......................................................................... 25 1.2 无线网络的特色 27 1.2.1 没有实体界限..................................................................................... 27 1.2.2 动态实体介质..................................................................................... 27 1.2.3 安全性................................................................................................ 28 1.2.4 标准的好处......................................................................................... 29 第2 章 802.11 网络概论......................................................................................................... 31 2.1 IEEE 802 网络技术规格 31 2.2 802.11 相关术语及其设计 33 2.2.1 网络类型............................................................................................ 34 2.2.2 再论传输系统..................................................................................... 37 2.2.3 网络界限............................................................................................ 38 2.3 802.11 网络的运作方式 40 2.3.1 网络服务............................................................................................ 40 2.4 移动性的支持 44 2.4.1 移动性网络设计................................................................................. 45 第3 章 802.11 MAC............................................................................................................... 47 3.1 MAC 所面临的挑战 48 3.1.1 射频链路质量..................................................................................... 48 3.1.2 隐藏节点的问题................................................................................. 49 3.2 MAC 访问控制与时钟 50 3.2.1 载波监听功能与网络分配矢量............................................................ 51 3.2.2 帧间隔................................................................................................ 52 3.2.3 帧间隔与优先程度.............................................................................. 53 3.3 利用DCF 进行竞争式访问 54 3.3.1 DCF 与错误复原................................................................................. 55 3.3.2 使用重传计数器................................................................................. 55 3.3.3 DCF 与延迟........................................................................................ 55 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第4 页, 共508 页 3.3.4 Spectralink 语音优先性...................................................................... 56 3.3.5 帧的分段与重组................................................................................. 57 3.3.6 帧格式................................................................................................ 58 3.3.7 Frame Control 位............................................................................... 58 3.3.8 Duration/ID 位.................................................................................... 62 3.3.9 Address 位......................................................................................... 62 3.3.10 Basic Service Set ID (BSSID)...................................................... 63 3.3.11 顺序控制位....................................................................................... 63 3.3.12 帧主体.............................................................................................. 64 3.3.13 帧检验序列(FCS) ........................................................................ 64 3.4 802.11 对上层协议的封装 65 3.5 竞争式数据服务 66 3.5.1 广播与组播数据或管理帧................................................................... 66 3.5.2 单点传播帧......................................................................................... 67 3.5.3 省电程序............................................................................................ 69 3.5.4 多种速率支持(Multirate Support) .................................................. 71 3.6 帧的处理与桥接 72 3.6.1 无线介质到有线介质(802.11 至以太网) ........................................ 73 3.6.2 有线介质至无线介质(Wired Medium to Wireless Medium)........... 74 3.6.3 服务质量延伸功能.............................................................................. 75 第4 章 802.11 帧封装细节..................................................................................................... 76 4.1 数据帧 76 4.1.1 Frame Control(帧控制) .................................................................. 77 4.1.2 Duration(持续时间) ........................................................................ 77 4.1.3 地址与DS Bit..................................................................................... 79 4.1.4 数据帧的次类型................................................................................. 81 4.1.5 数据帧的封装..................................................................................... 82 4.2 控制帧 85 4.2.1 一般的帧控制位................................................................................. 85 4.2.2 RTS(请求发送)............................................................................... 86 4.2.3 CTS(允许发送)............................................................................... 87 4.2.4 ACK(应答)...................................................................................... 88 4.2.5 PS-Poll(省电模式一轮询)............................................................... 89 4.3 管理帧 90 4.3.1 管理帧的结构..................................................................................... 90 4.3.2 长度固定的管理帧元件....................................................................... 91 4.3.3 管理帧的信息元素.............................................................................. 99 4.3.4 管理帧的类型...................................................................................112 4.4 帧发送以及连接与身份认证状态 116 4.4.1 帧等级..............................................................................................117 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第5 页, 共508 页 第5 章 有线等级隐私(WEP) ............................................................................................ 119 5.1 WEP 的密码学背景 119 5.1.1 串流密码锁的安全性........................................................................120 5.1.2 密码政治学.......................................................................................121 5.2 WEP 的加密机制 121 5.2.1 WEP 的数据处理..............................................................................122 5.2.2 WEP 的帧格式..................................................................................125 5.3 关于WEP 的各种问题 126 5.3.1 RC4 在密码学上的性质....................................................................126 5.3.2 WEP 统设计上的瑕疵......................................................................126 5.3.3 针对WEP 密钥的还原攻击..............................................................127 5.3.4 防范密钥还原攻击............................................................................128 5.4 动态WEP 129 第6 章 802.1X 使用者身份认证............................................................................................ 130 6.1 可延伸身份认证协议(EAP) 131 6.1.1 EAP 的封包格式...............................................................................131 6.1.2 EAP 的要求与回复............................................................................132 6.1.3 EAP 身份认证方式............................................................................133 6.1.4 EAP 认证的成功或失败....................................................................134 6.1.5 EAP 交换程序范例............................................................................134 6.2 EAP 认证方式(EAP Method) 135 6.2.1 加密的方式.......................................................................................135 6.2.2 非加密式EAP 认证方式...................................................................137 6.2.3 其他的内层身份认证方式.................................................................138 6.3 802.1X:网络连接埠的身份认证 139 6.3.1 802.1X 的架构及相关术语................................................................140 6.3.2 802.1X 的帧过滤...............................................................................141 6.3.3 EAPOL 的封装格式...........................................................................141 6.3.4 定位..................................................................................................142 6.4 802.IX 与无线局域网络 142 6.4.1 802.11 网络上的802.1X 交换程序范例............................................142 6.4.2 动态产生密钥...................................................................................144 第7 章 802.11I:RSN、TKIP 与CCMP .............................................................................. 145 7.1 临时密钥完整性协议(TKIP) 145 7.1.1 TKIP 与WEP 的差异........................................................................145 7.1.2 TKIP 的数据处理与过程....................................................................147 7.1.3 Michael 完整性检验..........................................................................152 7.2 「计数器模式」搭配「区块密码锁链—信息真实性检查码」协议(CCMP)154 7.2.1 CCMP 的数据处理............................................................................155 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第6 页, 共508 页 7.3 固安网络(RSN)的运作方式 157 7.3.1 802.11i 密钥阶层体系.......................................................................157 7.3.2 802.11i 密钥的产生与传递................................................................159 7.3.3 混合加密类型...................................................................................160 7.3.4 密钥快取..........................................................................................161 第8 章 过程管理................................................................................................................... 162 8.1 管理架构 162 8.2 扫描 162 8.2.1 被动扫描..........................................................................................163 8.2.2 主动扫描..........................................................................................164 8.2.3 扫描结果..........................................................................................165 8.2.4 加入网络..........................................................................................166 8.3 身份认证 167 8.3.1 802.11“身份认证”.........................................................................167 8.4 事先身份认证 170 8.4.1 802.11 事先身份认证........................................................................170 8.4.2 802.11i 事先身份认证与密钥快取.....................................................171 8.5 连接过程 173 8.5.1 连接程序..........................................................................................173 8.5.2 重新连接程序...................................................................................174 8.6 节省电力 176 8.6.1 Infrastructure(基础型)网络的电源管理.........................................176 8.6.2 IBSS 的电源管理..............................................................................181 8.7 计时器的同步 183 8.7.1 Infrastructure 的计时同步.................................................................184 8.7.2 IBSS 的计时同步..............................................................................184 8.8 频谱的管理 185 8.8.1 传输功率控制(TPC).....................................................................185 8.8.2 动态选频(DFS)............................................................................188 8.8.3 Action 帧...........................................................................................190 第9 章 PCF 免竞争服务....................................................................................................... 196 9.1 以PCF 提供免竞争访问 196 9.1.1 PCF 作业..........................................................................................196 9.1.2 基站的传输.......................................................................................197 9.1.3 免竞争期间的长短............................................................................199 9.2 PCF 帧的封装细节 199 9.2.1 免竞争期间结束(CF-End)............................................................201 9.2.2 CF-End+CF-ACk.............................................................................202 9.3 电源管理与PCF 204 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第7 页, 共508 页 第10 章 物理层概观............................................................................................................. 205 10.1 物理层架构 205 10.2 无线链路 205 10.2.1 使用执照与管制.............................................................................206 10.2.2 展频................................................................................................208 10.3 RF 传播与802.11 210 10.3.1 信号接收与效能.............................................................................210 10.3.2 路径损耗、传输距离与传输量........................................................212 10.3.3 多重路径干扰.................................................................................213 10.3.4 讯符间干扰(ISO) .......................................................................214 10.4 802.11 的RF 工程 215 10.4.1 RF 零件...........................................................................................215 第11 章 跳频物理层............................................................................................................. 218 11.1 11.1 跳频传输 218 11.1.1 802.11 FH 的细节...........................................................................219 11.1.2 802.11 跳频序列.............................................................................220 11.1.3 加入802.11 跳频网络....................................................................220 11.1.4 I S M 幅射量规定与最大传输量......................................................221 11.1.5 干扰效应........................................................................................221 11.2 高斯频移键控(GFSK) 222 11.2.1 二阶式GFSK .................................................................................222 11.2.2 四阶式GFSK .................................................................................223 11.3 FH PLCP 224 11.3.1 分封(Framing)与白化(whitening)..........................................224 11.4 FH PMD 226 11.4.1 传输率1Mbps 之PH PHY 所使用的PMD.....................................226 11.4.2 传输率2 -Mbps 之FH PHY 所使用的PMD...................................226 11.5 PH PHY 的特性 226 第12 章 直接序列序列物理层: DSSS 与HR/DSSS(802.11B) .................................... 228 12.1 直接序列传输 228 12.2 差分相移键控(DPSK) 234 12.2.1 差分二进制相移键控(DBPSK)...................................................234 12.2.2 差分正交相移键控(DQPSK)......................................................234 12.3 “原本的”直接序列物理层 236 12.3.1 PLCP 的分封(framing)与处理...................................................237 12.3.2 DS PMD 附属层.............................................................................238 12.3.3 DS PHY 的CS/CCA ......................................................................238 12.3.4 DS PHY 的特性.............................................................................239 12.4 互补码调制(CCK) 240 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第8 页, 共508 页 12.5 高速直接序列物理层(HR/DSSS PHY) 240 12.5.1 PLCP 分封(Framinf)与搅码(scrambling)..............................241 12.5.2 HR/DSSS PMD ..............................................................................243 12.5.3 802.11b PHY 的非必要功能...........................................................246 12.5.4 HR/DSSS PHY 的特性...................................................................246 第13 章 802.11A 与802.11J............................................................................................... 248 13.1 正交分频多工(OFDM) 248 13.1.1 载波多工........................................................................................249 13.1.2 正交性的意义(不使用微积分) ....................................................249 13.1.3 防护时间........................................................................................250 13.1.4 周期延伸(周期前置)...................................................................251 13.1.5 加窗法(Windowing) ...................................................................253 13.2 802.11 所采用的OFDM 253 13.2.1 将OFDM13.2.1 302.11 a 所选用的.F.M 参数................................253 13.2.2 作业频道的结构.............................................................................254 13.2.3 作业频道........................................................................................258 13.3 OFDM PLCP 260 13.3.1 帧的格式........................................................................................260 13.4 OFDM PMD 263 13.4.1 编码与调制.....................................................................................263 13.4.2 电波效能:灵敏度与频道拒斥........................................................264 13.4.3 净空频道评估.................................................................................264 13.4.4 传送与接收.....................................................................................264 13.5 OFDM PHY 的特性 266 第14 章 802.11:延伸速率物理层 (ERP) ..................................................................... 267 14.1 802.11g 的组成元件 267 14.1.1 相容性议题.....................................................................................268 14.1.2 防护机制........................................................................................268 14.2 ERP 的物理层收敛程序(PLCP) 271 14.2.1 ERP-OFDM 的帧格式.....................................................................271 14.2.2 802.11 g 的单载波帧格式...............................................................272 14.3 ERP 的实际搭酣介质(PMD) 275 14.3.1 净空频道评估(CCA) ..................................................................275 14.3.2 接收程序........................................................................................276 14.3.3 ERP 物理层的特性..........................................................................276 第15 章 802.11N 前瞻 :MIMO-OFDM ................................................................................. 278 15.1 共同功能 278 15.1.1 多进与多出(MIMO)....................................................................278 15.1.2 频宽................................................................................................279 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第9 页, 共508 页 15.1.3 MAC 效能的提升.............................................................................279 15.2 WWiSE 280 15.2.1 MAC 的改良....................................................................................280 15.2.2 WWiSE MIMO 硬件层.....................................................................283 15.2.3 WWiSE PLCP.................................................................................286 15.2.4 WW i S E P MD ...........................................................................289 15.3 TGnSync 291 15.3.1 TGnSync MAC 的改良....................................................................291 15.3.2 TGnSync PHY 的改良....................................................................297 15.3.3 TGnSynC 硬件层传输(PLCP 与PMD) ......................................300 15.4 比较与结论 304 第16 章 802.11 的硬件......................................................................................................... 306 16.1 802.11 界面的一般结构 306 16.1.1 软件控制的无线电:离题插播........................................................308 16.1.2 硬件实作上的议题..........................................................................309 16.2 实现上的差异 310 16.2.1 重新激动界面卡.............................................................................310 16.2.2 扫描与漫游.....................................................................................310 16.2.3 速率的选择.....................................................................................311 16.3 解读规格表 311 16.3.1 灵敏度比较.....................................................................................311 16.3.2 延迟范围........................................................................................312 第17 章 802.11 与 WINDOWS............................................................................................ 313 17.1 Windows XP 313 17.1.1 安装网卡........................................................................................313 17.1.2 选择网络........................................................................................316 17.1.3 安全性参数与802.1×的状态设置.................................................317 17.1.4 设置EAP 认证方式........................................................................321 17.1.5 WPA 的状态设置与安装方式..........................................................326 17.2 Windows 200 328 17.2.1 动态WE P 的状态设置..................................................................328 17.3 Windows 电脑验证 329 17.3.1 运作方式........................................................................................329 第18 章 802.11 与MACINTOSH ......................................................................................... 332 18.1 AirPort Extreme 网卡 332 18.1.1 软件安装........................................................................................332 18.1.2 设置与监视AirPort 界面.................................................................334 18.2 在AirPort 上使用802.1X 337 18.2.1 EAP 方法的配置设置......................................................................340 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第10 页, 共508 页 18.2.2 密钥链............................................................................................341 18.2.3 障碍排除........................................................................................341 第19 章 802.11 与LINUX .................................................................................................... 345 19.1 Linux 所支持的CIA 345 19.1.1 PCMCIA Card Services 概观..........................................................345 19.1.2 PCMCIA Card Services 的安装......................................................347 19.1.3 监控网卡........................................................................................348 19.1.4 排除资源的冲突.............................................................................350 19.2 Linux 无线延伸功能与工具 352 19.2.1 编译与安装.....................................................................................352 19.2.2 以无线工具和iwconfig 来设置界面...............................................352 19.3 Agere (Lucent) Orinoco 358 19.3.1 编译与安装.....................................................................................359 19.3.2 设置 orinoco_cs 界面的配置........................................................360 19.4 采用 Atheros 芯片组的网卡与 MADwifi 361 19.4.1 驱动程序架构与硬件访问层...........................................................361 19.4.2 先决条件........................................................................................362 19.4.3 组建驱动程序.................................................................................362 19.4.4 驱动程序的使用.............................................................................362 19.5 在Linux 中使用xsulicant 363 19.5.1 先决条件........................................................................................363 19.5.2 编译与安装xsupplicant..................................................................363 19.5.3 xsupplicant 的配置设置..................................................................364 19.5.4 网络连接与身份认证......................................................................365 19.5.5 Linux 上的WPA..............................................................................369 第20 章 使用 802.11 基站................................................................................................... 370 20.1 基站的基本功能 370 20.1.1 基站的种类.....................................................................................372 20.2 以Ethernet 供电(PoE) 374 20.2.1 PoE 的种类.....................................................................................375 20.3 选购基站 376 20.3.1 真的需要基站吗?..........................................................................378 20.4 CiscO 1200 基站 378 20.4.1 设置1200 基站..............................................................................379 20.4.2 无线界面的配置设置......................................................................379 20.4.3 安全性的配置设置..........................................................................381 20.4.4 监控................................................................................................382 20.4.5 障碍排除........................................................................................383 20.5 Apple AirPort 基站 384 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第11 页, 共508 页 20.5.1 初次设置........................................................................................384 20.5.2 管理界面........................................................................................385 第21 章 无线网络逻辑架构................................................................................................... 388 21.1 评估逻辑架构 388 21.1.1 移动性............................................................................................388 21.1.2 安全性............................................................................................391 21.1.3 效能................................................................................................392 21.1.4 骨干工程........................................................................................396 21.1.5 网络服务........................................................................................397 21.1.6 用户端整合.....................................................................................397 21.2 网络拓扑范例 398 21.2.1 拓扑1:单一子网络.......................................................................398 21.2.2 拓扑形态 2:E.T.Phone Home 或Island Paradise..............403 21.2.3 拓扑形态3:动态VLAN ................................................................407 21.2.4 拓扑形态4:虚拟基站...................................................................411 21.3 逻辑架构的选择 416 第22 章 安全性架构............................................................................................................. 418 22.1 安全性的定义与分析 418 22.1.1 无线局域网络的安全问题...............................................................419 22.2 身份认证与访问控制 422 22.2.1 工作站身份认证与连接...................................................................423 22.2.2 链路层身份认证.............................................................................424 22.2.3 网络层身份认证.............................................................................426 22.2.4 以RADIUS 整合用户身份认证.......................................................426 22.3 以加密确保私密性 428 22.3.1 静态WEP ......................................................................................429 22.3.2 802.1X 动态WEP 密钥...................................................................429 22.3.3 改良型RC4 加密:TKIP................................................................431 22.3.4 C C M P:AES 加密.......................................................................431 22.3.5 较上层的安全协议(IPsec、SSL 与SSH) ..................................432 22.4 安全性协议的选择 434 22.4.1 协议栈的安全防护..........................................................................434 22.4.2 身份认证方式的选择......................................................................437 22.4.3 加密方式的选择.............................................................................441 22.5 私设基站 442 22.5.1 检测................................................................................................443 22.5.2 实际定位........................................................................................443 22.5.3 关闭私设基站.................................................................................446 第23 章 网络规划与工程管理............................................................................................... 448 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第12 页, 共508 页 23.1 工程规划与需求 449 23.2 网络需求 450 23.2.1 覆盖范围需求.................................................................................451 23.2.2 容量需求........................................................................................453 23.2.3 可移动性的需求.............................................................................457 23.2.4 网络整合的需求.............................................................................457 23.3 物理层的选择与设计 458 23.3.1 2.4 G H z(3.2.11 b/g)频道规划..................................................459 23.3.2 5 GHZ(802、11a)频道规划........................................................461 23.3.3 混合式频道规划(802.11 a+b/g 网络).........................................462 23.4 基站摆设位置规划 462 23.4.1 建筑物............................................................................................463 23.4.2 初步规划........................................................................................465 23.4.3 电波资源管理与频道规划...............................................................466 23.4.4 规划的修正与测试..........................................................................466 23.4.5 准备最后的报告.............................................................................468 23.5 使用天线调整覆盖范围 468 23.5.1 天线类型........................................................................................469 第24 章 802.11 网络分析..................................................................................................... 474 24.1 网络分析工具 474 24.1.1 8.2.11 网络分析软件.......................................................................475 24.2 Ethereal 475 24.2.1 编译与安装.....................................................................................476 24.2.2 将无线界面设定为监听模式...........................................................476 24.2.3 执行Ethereal .................................................................................478 24.2.4 减少数据量.....................................................................................480 24.2.5 使用Ethereal 进行8.2.11 分析......................................................480 24.3 802.11 网络分析项目清单 485 24.3.1 显示过滤初探.................................................................................485 24.3.2 一般疑难排除过程..........................................................................486 24.4 其它工具 489 24.4.1 搜寻、量测与对映网络...................................................................490 24.4.2 WEP 密钥还原................................................................................490 24.5 身份认证 491 第25 章 802.11 效能比较..................................................................................................... 492 25.1 802.11 效能评估 492 25.1.1 计算示范........................................................................................493 25.2 改善效能 494 25.3 802.11 可调参数 495 802.11 无线网络权威指南 文档密级 华为三康机密,未经许可不得扩散 第13 页, 共508 页 25.3.1 无线电波管理.................................................................................495 25.3.2 电源管理调校.................................................................................497 25.3.3 计时过程........................................................................................498 25.3.4 可调参数一览表.............................................................................499 第26 章 结论与展望............................................................................................................. 500 26.1 标准化过程 500 26.1.1 新的标准........................................................................................500 26.2 无线网络的当前趋势 502 26.2.1 安全性............................................................................................502 26.2.2 网络部署与管理.............................................................................503 26.2.3 应用程序........................................................................................506

8,303

社区成员

发帖
与我相关
我的任务
社区描述
游戏开发相关内容讨论专区
社区管理员
  • 游戏开发
  • 呆呆敲代码的小Y
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧