网 格 研 究 通 讯 第二期 分享研究心得·了解研究动态·鼓励大胆创新·提高研究能力
这份电子刊物所有内容的相关权益属于作者所有,转载需要征得作者同意。 不得将这份电子刊物用于商业用途。可以自由传播这份电子刊物,但是在传播时不能收费,不能对刊物内容进行修改,必须保持刊物的完整形式,只能以电子文档形式转发。 本期责任编辑 张坤龙 (zhangkl@) 本期出版日期 2005年1月15日
目录 前言..............................................................................................................................................- 1 - 新闻动态......................................................................................................................................- 2 - 2005年春季国际会议征文.................................................................................................- 2 - 网格主题日见闻..................................................................................................................- 6 - 我的南京网格之行..............................................................................................................- 9 - 网格主题日日记................................................................................................................- 12 - 研究报告....................................................................................................................................- 13 - 网格计算高可用技术研究................................................................................................- 13 - 基于网格的先进分布式仿真系统ADS-G.......................................................................- 59 - 构建网格安全系统............................................................................................................- 63 - 网格资源....................................................................................................................................- 70 - IEEE分布式系统在线......................................................................................................- 70 - 清华大学网格计算研究组................................................................................................- 71 - 科研方法....................................................................................................................................- 73 - 几款个人信息管理软件....................................................................................................- 73 - 给新研究生的建议............................................................................................................- 76 - 其他............................................................................................................................................- 86 - 《中国计算机报》征稿启事............................................................................................- 86 - 《网格研究通讯》第三期征稿启事................................................................................- 87 - 后记............................................................................................................................................- 88 -
前言 新春伊始,万象更新,《网格研究通讯》也推出了新的一期。我相信大家阅读完这期杂志以后,一定会觉得收获不小。我之所以有这样的信心,是因为参与编辑这一期杂志的所有同志都尽到了自己最大的努力。 每一篇文章后面都隐藏着一个故事。举个例子来说,对于郝宪文博士而言,区区几段英文他会读不懂?可偏偏是他,要放弃自己的休假时间来“多此一举”地将一篇英文文章翻译成中文。原因很简单,并不是民族主义,而是很多人在成长的路上都需要长者的扶助。再举个例子来说,王斌现在还只是一个大二的学生,可是他却说,我可以为大家做一些我有能力做到的事情。于是他克服了自己没有计算机宿舍里只能拨号上网的困难,为这期杂志撰写了一篇文章,并做了封面设计。 除了这些文章的作者,还有很多人值得我们感谢。我要特别提到所有投稿未中的作者,他们也真正体现了“网格的精神”。我还要特别提到所有的审稿人,他们都很认真,尤其是朴杰和叶哲丽这两个杂志的创办人。 最后,在大家准备阅读杂志正文以前,我要给送给大家一段对话作为忠告:那八戒向行者、沙僧道:“你两个吃的是甚么?”沙僧道:“人参果。”八戒道:“甚么味道?”☺ (张坤龙,zhangkl@) - 1 -
新闻动态 2005年春季国际会议征文 “一年之计在于春”,大家多多努力啊!下面的两个表格第一个是任浩整理的,第二个是我整理的。更多的会议信息请到DSO网站上去找(参看本期“IEEE分布式系统在线”一文中的介绍)。 表一 简称 全称 地点 召开时间 投稿截止 PAPP 2005 Practical Aspects of High-level Parallel USA May 22-25, 2005 Jan. 5, 2005 Programming PMAC-PDG’05 Performance Modeling and Analysis of Japan Jul. 20-22, 2005 Jan. 7, 2005 Communication in Parallel, Distributed, and Grid Networks PGaMS'05 Programming Grids and USA May 22-25, 2005 , 2005 Metacomputing Systems SDCS-2005 The 2nd International Workshop on USA -9, 2005 Jan. 10, 2005 Security in Distributed Computing Systems CCGrid 2005 At IEEE/ACM International USA May 9-12, 2005 Jan. 20, 2005 Symposium on Cluster Computing and the Grid PaCT-2005 The 8th International Conference on Russia -9, 2005 Jan. 20, 2005 Parallel Computing Technologies ICAC-05 2nd IEEE International Conference on USA -16, 2005 , 2005 Autonomic Computing - 2 -
ICCSA 2005 International Conference on SingaporeMay 9-12, 2005 , 2005 Computational Science and its Applications HPDC-14 The 14th IEEE International USA –27, 2005 , 2005 Symposium on High Performance Distributed Computing ICS 2005 The 19th ACM International USA -24, 2005 , 2005 Conference on Supercomputing CLADE2005 Challenges of Large Applications in USA Jul. 24, 2005 , 2005 Distributed Environments GCTA Workshop on Grid Computing USA -24, 2005 Feb. 26, 2005Technology and Applications WTAS 2005 WEB Technologies, Applications, Canada Jul. 4-6, 2005 Mar. 15, 2005and Services SOSP2005 20th ACM Symposium on Operating UK Oct. 23-26, 2005 Mar. 25, 2005Systems Principles NDBC 2005 第22届中国数据库学会会议 中国 2005年 2005年 呼和浩特 8月19日-21日 3月31日 CEEMAS 2005 4th International Central and Eastern Hungary -14,2005 2005 European Conference on Multi-Agent Systems WAIM 2005 The 6th International Conference on Hangzhou, Oct. 11-13, 2005 Apr. 11, 2005Web-Age Information Management china (任浩,renhao1973@) - 3 -
表二 Short Name Full Name Deadline The 2005 International Conference on Jan. 3, 2005 ICPP-05 Parallel Processing 22nd BRITISH NATIONAL CONFERENCE on Jan. 20, 2005 BNCOD22 DATABASES Nineteenth International Joint Jan. 21, 2005 IJCAI 2005 Conference on Artificial Intelligence 17th International Scientific and Jan. 24, 2005 Statistical Database Management SSDBM 2005 Conference The First International Conference on ADMA 2005 Jan. 28, 2005 Advanced Data Mining and Applications the annual conference of the Special Jan. 30, 2005 SIGCOMM 2005 Interest Group on Data Communication 3rd IEEE International Conference on Web ICWS 2005 Jan. 31, 2005 Services 2005 IEEE International Conference on SCC 2005 Jan. 31, 2005 Services Computing 24th Annual ACM SIGACT-SIGOPS Symposium Feb. 7, 2005 PODC 2005 on Principles of Distributed Computing 17th ACM Symposium on Parallelism in Feb. 7, 2005 SPAA 2005 Algorithms and Architectures The 9th International Database Feb. 18, 2005 IDEAS 2005 Engineering and Application Symposium - 4 -
16th International Conference on Feb. 19, 2005 Database and Expert Systems DEXA 2005 Applications 31st International Conference on Very Feb. 23, 2005 VLDB 2005 Large Data Bases 9th East-European Conference on Feb. 28, 2005 Advances in Databases ADBIS 2005 and Information Systems 9th European Conference on Digital ECDL 2005 Mar. 1, 2005 Libraries 9th International Symposium on Mar. 14, 2005 SSTD05 Spatial and Temporal Databases The 3rd International Workshop on AMR 2005 Mar. 21, 2005 Adaptive Multimedia Retrieval 20th ACM Symposium on Operating Systems Mar. 25, 2005 SOSP 2005 Principles Third International Symposium on Parallel and Distributed Processing and ISPA 2005 Apr. 1, 2005 Applications (张坤龙,zhangkl@) - 5 -
网格主题日见闻 张坤龙 (中国人民大学信息学院,zhangkl@) “第二届全国网格主题日将于2004年12月4日到5日在南京举行”,毫无疑问,这是一个非常好的消息,作为一个网格爱好者,我绝对不能错过这样的一个机会,从北京到南京的距离不应该成为障碍。 什么网格主题日?“官方”的说法是,网格主题日是一个全国性的网格学术活动,主要面向全国青年网格研究人员和网格应用单位,由“中国网格信息中转站”()网站发起,每年举办一届,主要形式是邀请知名网格专家和著名网格学者作报告,来自全国各地的网格研究者和应用单位的代表们可以通过专家的演讲和典型的网格应用案例,找到研究和应用网格技术的最佳结合点。 第一届网格主题日于2003年11月8日在中国人民大学举办,当时的情形可以用盛况空前四个字来形容。那么,第二届网格主题日办得怎么样呢? 1.以网格的精神研究网格 请看右边这幅照片,你注意到会议现场红色横幅上的标语写的是什么了吗?“网格主题日—以网格的精神研究网格”。这个标语据说是坐在照片右下角的中国网格信息中转站站长、第一天会议的主持人刘鹏博士提出来的。 什么是网格的精神呢?可惜的是我当时没有向刘博士请教这个问题的答案,不过我想,网格的精神,应该指的是“共享和协作”。大家来参加网格主题日活动,就可以彼此认识互相交流,这倒的确是符合“网格的精神”的。 问题是,都来了一些什么人呢?这张照片里大概有300多人,绝大部分是学生。“北京理工大学、南京大学、上海大学、国防科技大学、石家庄陆军指挥学院、广西大学、成都理工大学、宁夏大学、西北大学、哈尔滨工业大学、武汉大学”,这是与会学生所在学校统计结果的一部分。从这一部分统计结果上不难看出,有来自祖国大江南北长城内外的网格爱好者参加了会议,他们像我一样不远千里而来,自然是心中有所期待的。 - 6 -
2.令人感动的专家 这种期待不会落空,因为你至少可以聆听到大牛人的现场报告并有机会直接向这些大牛人发问。网格主题日的主要活动内容是听报告和会场交流。例如,2004年12月4日上午的安排是: 报告1:上海交通大学计算机系主任李明禄教授 09:15-09:50 《上海网格与无线网格》 报告2:上海超级计算中心总工程师桂亚东研究员 09:50-10:25 《上海超级计算中心的高性能计算与网格研究》 报告3:中国人民大学信息学院院长王珊教授 10:25-11:00 《信息网格及其应用》 报告4:解放军理工大学指挥自动化学院宋自林教授 11:00-11:35 《全球信息网格刍议》 报告人与听众进行50分钟的集体对话,听众提问,11:35-12:25 报告人解答 右边的照片是在2004年12月4日上午集体对话时拍的。照片里只有三个大牛人,左边的是王珊教授,中间的是宋自林教授,右边的是桂亚东研究员。还有一个大牛人哪里去了呢?会议主持刘博士说李明禄教授已经因为其他事情赶飞机走了。有一点遗憾,没有能和李教授交流,不过也感到高兴,因为我能聆听李教授在百忙之中赶来给我们这些网格爱好者做的精彩报告。在这4位专家之中,最让我感动的是照片中中间坐着的宋教授,他忍病站在讲台之上为我们做完他自己的报告。需要指出的是,在网格主题日上做报告并非是什么上级派发的任务,做了报告也并不意味着会有大笔酬金。 在两天的会议中,一共有17个人做了报告,其中有四个自北京,三个来自上海,一个来自杭州,一个来自银川。这么多外地的报告人能大老远跑来无偿地给大家做报告,就在一定程度上保证了这次网格主题日的成功举办。 - 7 -
3.一个很有意思的人 是会议主席大,还是会议主持人大?我想应该是会议主席大一点吧。在河海大学里遇到一件比较有趣的事情是副校长做了会议主席而校长反过来做了会议主持人。除了弃会议主席不做,这位河海大学的姜弘道校长更让人觉得不可思议的是,他从开幕式一直坚持到了闭幕式,一分钟也没有拉下。 左边的照片是这位超级网格爱好者在12月4日的会场上,他正在与其他人交流与会心得。 在12月5日上午的集体对话中,有一位河海大学的硕士生曾苍松站起来向姜校长提了一个问题:自己非常想参与学校的校园网格建设,如何才能实现自己的这个愿望?我想,当姜校长在回答这个问题的时候,他的内心里一定感到很高兴。因为他这两天一直在思考的问题是如何让网格服务于自己学校的优势学科建设,而这个问题的解决依赖于本校师生的积极参与。 4.期盼第三届网格主题日 “笑谈风云在吗?谁是笑谈风云?我找笑谈风云!”,在12月5日会议休息期间突然有人大声嚷嚷起来。原来笑谈风云是这个人在网上通过QQ认识的网友,他们俩这次都来参加网格主题日活动了。除了了解国内网格研究的最新动态,网格主题日还给参与会议的网格爱好者提供了一个很好的交流场所。正是因为这些不可抗拒的魅力,浙江大学的毕业生任浙东连续两届参加了网格主题日活动。在去年第一届的时候,他还只是个与会的听众,而这一次,他已经站到讲台之上为大家报告自己的成果了。任浙东现在正在以网格技术为基础进行创业。 三个博士生的观点也许可以代表与会人员对这次网格主题日活动的看法。第一位博士生是来自东南大学的江大伟,看到他在网格主题日上做录像,我询问了一下他对这次活动的感受。江博士说:我搞的方向是数据库,如何将网格和数据库结合起来是一个一直困扰我的问题,这次王珊教授的报告对我帮助很大。第二位博士生就是我自己了,呵呵,要问我参加网格主题日的感受,我想说的是:南京航空航天大学张海建硕士在报告中讲述了自己做网格研究的经历,他的实干苦干的精神鼓舞了我。最后一位博士生是来自清华大学的朱子玉,朱博士在网格主题日上做了精彩的报告,我有幸和他进行了个人交流。朱博士说,我的看法可以归结为一个期望,就是能不能尽快举办第三届网格主题日。 毫无疑问,第二届全国网格主题日办得非常好。如果真的举办第三届全国网格主题日,我想我同样不会错过。我的唯一的问题是,亲爱的读者,到时候我有没有机会和您面对面交流我们做网格研究的心得体会呢? - 8 -
我的南京网格之行 藕军 (合肥工业大学,richjo@) 一个人12月5日凌晨2:47登上去南京的火车,早上7点到达。因为不熟悉南京,又是一个人,所以有点忐忑,当然还有对即将来到主题日的兴奋和新鲜之感。这种忐忑被会议主办方解放军理工大学和河海大学的热情和精心安排所打消;而那种兴奋和新鲜却因为大师们精彩的报告、青年网格研究者分享的经验和收获以及身边网格爱好者的积极参与和热情而加强。6号下午我就回合肥了:相比于来时,回去的我有着沉甸甸的收获,听到了网格领域最前沿的报告,而且最重要的是结识了好多优秀的朋友。 一、热情和支持 整个会议期间,最明显的感受就是各界人士对这次会议的重视关心和支持。不管是会议组织者的热情精心安排,还是两所学校校长等领导的支持关心,还有专家和网格爱好者的热情参与,一切都因网格,网格把大家凝聚在一起,网格最终也会把世界凝聚在一起。 1.一踏入解放军理工大学的门,满眼的军装给人以有力和安全感,静谧的校园更给人以神圣感。会议接待人员的笑容和问候以及“欢迎你的到来”,让人在有些凉意的清晨心里涌起暖流。走入会议室,“以网格的精神研究网格”和“网格主题日”的条幅,座位上为每位参会者准备的矿泉水,以及会议发起人刘鹏上下的忙碌,让我这个网格门外汉找到了网格圣地的感觉。谁说没有免费的午餐?这里不但有免费的午餐,而且还有热情的食堂服务人员。第一天的会议结束后,又有专车送我们去下一个会议点:河海大学。到了河海大学后,研究生学生会人员为我们引路,帮我们安排食宿,告诉我们南京的特产和旅游景点及注意事项,还留下手机号码,让我们有任何问题都可以找他们。第二天的中午这里也提供了丰盛的午餐。 2.在两天的会议里,两所学校的校长等高级领导都到场,致词并一直认真倾听。唐万年校长携一群领导到场,远远看去只见一排少将和大校,还以为是看重要的军事会议呢。让人印象深刻的是河海大学老校长姜弘道及河海对网格的重视:姜校长从5号开始就一直出席会议,认真倾听;6号更是会议的主持人,介绍了河海的情况,在回答问题时详细介绍了他对网格在水利上的作用以及河海大学利用网格的重要性的理解,显然他对此有深刻的理解。 3.包括王珊老师、李明禄教授等学者和活跃在创新一线的青年网格研究人员在百忙中从祖国各地来到南京,带来了他们对网格的理解和最新最前沿的知识,还在会后认真回答了各种各样的问题。他们的学者风范和创新精神以及对网格热情,会激励每一位网格爱好者。 4.不管在解放军理工大学,还是在河海大学,会场上都坐满了网格爱好者:有来自宁夏,有来自北京,有来自桂林,有来自安徽,有来自上海,有来自广东;有学生,有老师,- 9 -
有企业人士;有网格高手,也有刚入门者。他们积极参与,认真倾听每场报告,提出了许多有代表性的问题。并且在会下这些网格爱好者之间互相交朋友,互通有无,互相探讨,这真是个交流的好机会。 二、学习到的前沿知识 这次主题日阵容强大,既有专家学者的精彩报告,如数据库领域的泰斗王珊老师,上海超级计算中心总工程师桂亚东研究员,“上海网格ShanghaiGrid”首席专家李明禄教授等;也有活跃在创新一线的青年网格研究人员的实践经验,如清华的朱子玉博士,杭州网维的任浙东,宁夏大学的张冬等。 这些报告和实践经验涉及众多前沿领域,如信息网格,美军的全球信息网格GIG,网格下的数据库,无线网格,织女星网格,上海网格,上海高校网格,河海校园网格,直网等等。下面选取一些使我映像深刻的发面讲讲: 1.无线网格。这个东西可是真正的前沿了,目前更多的是基于传感器的无线局域网网格。桂亚东研究员举了个例子,比如将监测传感器植入糖尿病患者体内监测其血糖浓度,并通过无线网格通知相关治疗机构,一旦浓度处于危险水平,即发出预警,通知患者来治疗。这个东东涉及很多东西,我不熟悉,姑且讲这么多。 2.上海网格的应用—上海交通网格。关于上海网格的具体情况就不多介绍,大家可以查查资料,只讲讲上海网格的一个应用,上海交通网格。交通网格的目标是基于上海网格丰富的计算能力和数据存储和处理能力,建立上海市的动态路况展示,以及基于其上的出行方案点播。通过收集汽车行驶速度及其它道路上安装的监测传感器,来测定道路的畅通情况,有无堵车,车流量大小等等,从而司机和人们在出行时就可以根据这些情况来选择合适的道路,以避开堵车、拥挤,节省时间等。在上海的某个街道就要安装这样的公交车电子公告牌,可以显示下一班车需要多长时间能到达等信息。 3.上海视频网格。上海视频网格是刘鹏博士提出的国家视频网格的一个具体实现,我们在解放军理工大学军事网格研究中心就参观了它的演示,据称现在已经可以同时支持2000多人同时在线实现顺畅地观看视频。上海视频网格主要利用网格资源共享和协同工作的特性,在上海市的若干特定地点安装若干网格服务器节点,上海市用户可以通过互联网实现多人同时在线的高速视频欣赏。 4.我的一些想法。信息技术的发展日新月异,新技术层出不穷,但人们想要实现的基本目的有以下两个:异构、分布的资源共享,分布组织、应用程序之间的协同工作。比如微软最新Microsoft Office System 就提供了分布工作组之间的资源共享和协同工作的功能;博克在一定程度上也实现了知识和信息共享的功能。而网格显然也只是实现这两种目标的一种手段,也是一种更深刻、更全面、更有革命意义的手段。所以网格的具体发展也没有定势,一切以如何更好地实现这两个目标的需要而取舍沉淀。 这里有几个例子:1) 织女星网格公司的E-office:一个高级商务音视频聊天工具,可以在一个组织内实现音视频协同交流,并且还有文件柜电子白板等功能。他们基于网格上的通信,解决了音视频聊天常见的服务器和带宽负载不了太多用户的局限。2)协同设计和制造。对于汽车、工程、飞机设计等需要很大计算力和多部门合作的项目,就可以利用网- 10 -
格技术来构建一个协同工作的平台。这一点在桂亚冬和朱子玉的报告里都提到了。 三、结识的朋友 这次会议上最大的收获就是结识了一批在网格领域又作为或是有创业热情和项目的学者、朋友和技术高手。 1) 刘鹏:网格主题日的发起者,清华博士,现为解放军理工大学军事网格研究中心主任。他的荣誉就是太多了,而且都是第一啊:2002年,率队夺得PennySort世界排序比赛冠军、清华大学“挑战杯”和“华为杯”比赛第一名,荣获清华大学“学术新秀”称号和特等奖学金;2003年,夺得全国“挑战杯”大学生课外科技作品竞赛特等奖,并获团体冠军;2004年,获得全国“挑战杯”创业计划大赛金奖。他也是一个热心的人,很乐意帮助别人解决网格上的难题。 2) 任浙东团队。这是个在杭州的网维实验室的5人创业团队,任浙东是技术核心,一群友善、实在、踏实又创业热情并坚持的人。他们作为会议发言人之一展示了他们的探索成果:直网。这是任浙东的自我介绍:毕业于浙江大学湖滨校区(本科,生物医学工程专业)。在学校期间对计算机产生浓厚的兴趣,毕业后一直从事工作流、Web Services、Java等设计与开发工作。2004年4月我们意在于建公众性综合服务网格网络。公众性综合服务网格网络是指面向大众用户的,气象服务、酒店预订、机票预订等一系列与生活息息相关的服务,支持用户以多种方式例如手机、PDA、web等享受服务,支持内容服务提供商接入系统提供各种数据服务,具有QoS服务质量管理,安全证书验证,安全数据传输等的网络。我们以酒店为切入点,模拟架构酒店数据网络,并以此为基础提供一个直观的应用——直订网络系统即直网。 3) 张冬。宁夏大学一个23岁的研一学生,很年青,可见其在技术上有一定实力。一个朴实而聪明的小伙子。他的荣誉也不少: 2003年第二届全国大学生Scilab程序设计竞赛二等奖 (Scilab网格计算器);2004年第二届全国高校BBS程序开发大赛最佳创意奖(网路蝴蝶虚拟计算机校园应用系统);2004年第三届全国大学生Scilab程序设计竞赛一等奖(Scilab科学计算环境);2001 第七届“挑战杯”全国大学生课外学术科技作品竞赛二等奖(电子实验开发板);2003 年第八届“挑战杯”全国大学生课外学术科技作品竞赛三等奖(网格系统开发工具包)。 4) 张坤龙。中国数据库泰斗王珊弟子,攻读博士学位,30多岁了,聪明友善,研究信息网格,主编了国内网格研究界的一本电子杂志:《网格研究通讯》。通过后来的联系,他对电子商务也有浓厚的兴趣。 5) 冯欣。东南大学学习数据库的研一学生,一个斯文的书生,说话声音很轻。他自己架设了一个博客空间,对博客有一定的理解。 交流会产生思想的火花,共享会让每一个人受惠。这正是网格的精神,“以网格的精神研究网格”,我们当奋力前行! - 11 -
网格主题日日记 张冬 (宁夏大学物理电气信息学院,grid@) 2004年12月4日 星期六 凌晨 南京火车站候车厅 经过30多个小时的火车,终于到了南京。现在是凌晨2点,南京火车站候车厅。此行的目的是来南京参加第二届网格主题日学术活动,第一届的时候因为正好和学校考试冲突,所以这次很重要。来之前看到中转站上公布的与会的网格方面的专家,想想原来在报纸、电视上听说过的专家学者,这次可以见到了,嗯,得好好抓住这次机会多多求教学习。 2004年12月4日 星期六 晚上10点 河海大学招待所 白天参加完主题日第一天的活动,很累,专家高密度的报告听着确实有些眼花缭乱,只好利用晚上时间来对照白天的笔记消化整理一下。白天的报告主要是介绍由网格方面的专家介绍中国和世界在网格领域的研究和实际进展情况,见到了李明禄教授、王珊教授、刘鹏博士等专家学者。印象最深的就是王珊教授做的关于信息网格的报告,因为觉得王教授主持的网格数据库系统比较实用,很多思想值得借鉴。还有就是刘鹏博士做的《如何将网格理念付诸实践》,其它的网格项目觉得好像遥不可及。不过,总体的感觉是中国的网格研究已经开始走向实际的应用。 解放军理工大学的准备工作很充分,我早上7点到的时候他们已经开始准备接待的工作了。中午饭是在解放军理工的食堂吃的,饭菜很好,只是我是北方人,对米饭不是太感兴趣。 2004年12月5日 星期日 晚上12点 南京火车站候车厅 凌晨2点的火车,现在又在候车了。今天的主题日活动是在河海大学进行,河海大学的姜校长很亲切。第二天主要是网格实际研究的报告,其中对上海交通大学网格研究中心邓倩妮老师的《Qos:网格的一个重要研究领域》和金陵科技学院赵维老师的《Petri网格》印象比较深刻,只是对于Petri网格 还是没有弄清楚.......郁闷! 我的报告是下午的最后一个,因为以前很少参加这样大规模的学术活动所以很是紧张,很是紧张,结果在讲演的时候把有些需要重点讲解的地方都漏了(汗ing ......)。 马上就要回去了,想想参加主题日的过程,学习到了很多知识,也增添了很多感慨,不过可以看出目前关于网格构建的主要理论已经完备,很多网格系统也已经在运行中,网格应用显然会成为下一个研究的热点。虽然我们做了很多软件,虽然在全国大学生科技比赛中经常获奖,可这些并不是成功经验。这次参加主题日,看到了国内网格界的许多新的成果,相比较而言,自己的方向偏了。 后记 参加主题日回来以后,根据主题日上得到的知识和意见我们制定了下一步的研究方向。我们得出的结论是:做网格就要做网格的特性,要在某一个领域取得明显非凡的应用。我们要以网格的精神来研究网格,欢迎大家和我们联系。我们的网址是: 邮箱:grid@ . - 12 -
研究报告 网格计算高可用技术研究 缘起: 人民大学的张坤龙博士办了一个网格研究方面的电子刊物《网格研究通讯》。我有幸拜读过第一期,内容非常好,也很感动于张博士的奉献精神。我答辩之后,张博士发来email建议我将论文缩写后发在下一期的《网格研究通讯》上。本着交流共享的精神,我腆颜将我的博士论文进行了缩写并提交给了张博士。 缩写说明: 缩写过程中,在尽量保持整个论文完整性(论文的各级标题保留)的前提下,进行了如下的缩写: 1.改小了一些内容的字体(为了省些篇幅)。 2.省略了论文中不是非常重要的内容(有些内容只保留了标题,有些地方对省略的内容进行了标记)。 感谢: 感谢我的导师杨学军教授,论文的选题、研究都是在杨教授的指导下进行的。 感谢国防科学技术大学的肖侬老师,肖老师在网格研究领域起步很早,造诣颇深,对我的研究工作给予了很多有价值的指导。特别是肖老师率领的网格研究课题组内形成的广泛交流、合作探讨的学术氛围对我的课题研究帮助非常大。 感谢张坤龙博士的热心。 联系方式: 我在做博士课题的过程中深深体会到了和同行(特别是在读的博士研究生)交流的益处。真诚希望能和感兴趣的朋友们交流。请通过以下的方式和我联系: email : chunjiangli@ lcj@ QQ:44588612; MSN:oranglee_6@ 电话: 手机:13786149790; 办公室:(0731)4575809; 一点说明: 由于答辩后就投入到了新的工作中,现在很难长时间挂在网上了,只能偶尔抽空去收一下email。可能不能及时回复朋友们的信件或留言,敬请谅解。 我现在工作的主要内容是编译优化技术,我以前的研究方向是并行计算体系结构和系统软件,对并行计算系统软件,如并行编译器、通信库等有过一点粗浅的了解。我做博士期间的前1年多还打算开编译方面的课题,没有成功, :),后来选了热门的网格计算方面,所以做得不怎么样也就勉强毕业了。 因此,我也非常希望能和有编译优化经验的朋友交流,特别是针对GCC的面向IA64的编译优化。- 13 -
ߚ㉏ো TP393 ᄺো 0069009 U D C ᆚ㑻 Ꮉᄺमᄺԡ䆎᭛㔥Ḑ䅵ㅫ催ৃ⫼ᡔᴃⷨお म⫳ྦྷৡ ᴢ∳ ᄺ⾥ϧϮ䅵ㅫᴎ⾥ᄺϢᡔᴃ ⷨおᮍ ᑊ㸠䅵ㅫ ᣛᇐᬭᏜ ᴼᄺݯᬭᥜ 䰆⾥ᄺᡔᴃᄺⷨお⫳䰶Ѡ嗟嗟ಯᑈक᳜- 14 -
The Research on Technologies for High Availability in Grid Computing Author: LI ChunjiangSupervisor: Prof. Yang XuejunA Dissertation Submitted for the Doctoral Degree Institute of Computer Science National University of Defense Technology Changsha, P. R. China October, 2004 - 15 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛Ⳃ ᔩᨬ㽕...................................................................iABSTRACT..................................................................iiϔゴ㒾䆎...............................................................1§ⷨお㚠᱃······················································································································1 §ⷨおݙᆍ······················································································································3 §Ⳍ݇ⷨおᎹ···············································································································4 §ᴀ᭛ⱘᎹ··················································································································4 §䆎᭛㒧ᵘ······················································································································4 Ѡゴ䅵ㅫ㔥Ḑ催ৃ⫼᳡ࡵԧ㋏㒧ᵘḚᶊ.......................................5§ᴀὖᗉⳌ݇ⷨお···································································································5 §䅵ㅫ㔥Ḑৃ⫼ᗻ䯂乬ߚᵤ····························································································5 §䅵ㅫ㔥Ḑ催ৃ⫼᳡ࡵԧ㋏㒧ᵘḚᶊ············································································7 §ᴀゴᇣ㒧······················································································································7 ϝゴ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺ.................................................8§ⷨお⦄⢊······················································································································8 §㔥Ḑⲥ⌟㋏㒳···············································································································8 §Ѣ䍟ⱘ䌘⑤ऎ䯈ৃ⫼ᑺ乘⌟ᮍ⊩·········································································9 §䴶催ৃ⫼ⱘ䌘⑤䇗ᑺ·····························································································10 §ᴀゴᇣ㒧····················································································································12 ಯゴӑ䌘⑤䗝ᢽ䌘⑤ӑㄪ⬹..........................................13§䅵ㅫ㔥Ḑⱘ䌘⑤ㅵ⧚·································································································13 §䌘⑤ӑⱘᅲ⦄ᴎࠊ·································································································13 §Ѣ䌘⑤㘮䲚ⱘ䅵ㅫ㔥Ḑӑ䌘⑤䗝ᢽ···································································13 §ӑ䌘⑤䗝ᢽㅫ⊩ঞᑨ⫼В՟··················································································21 §䅵ㅫ㔥Ḑ䌘⑤ӑ᳡ࡵ䖛······················································································21 §䌘⑤ӑㄪ⬹䆒䅵·····································································································22 §䌘⑤ӑㄪ⬹ߚᵤϢ䆘Ӌ··························································································22 §䌘⑤ӑ᳡ࡵ㋏㒳ㄪ⬹ᓩ᪢··················································································22 §ᴀゴᇣ㒧····················································································································23 ѨゴѢϮ䖯ሩᦣ䗄ⱘ䅵ㅫ㔥ḐẔᶹ⚍ᴎࠊ................................24§Ⳍ݇ⷨお····················································································································24 §ѢϮ䖯ሩᦣ䗄ⱘ䅵ㅫ㔥ḐẔᶹ⚍ण䆂·······························································25 §䴶⍜ᙃӴ䗦ᑨ⫼ⱘण䆂ᠽሩ··················································································27 §Ẕᶹ⚍ԧ㋏㒧ᵘ·········································································································28 §Ẕᶹ⚍᭄ᄬټㅵ⧚·································································································29 §ᴀゴᇣ㡖····················································································································30 ݁ゴ㔥Ḑ催ৃ⫼᳡ࡵሖⱘ䆒䅵..............................................31§㔥ḐЁ䯈ӊ················································································································31 §㔥Ḑ催ৃ⫼᳡ࡵሖⱘ㒧ᵘࡳ㛑··············································································31 I 义- 16 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛§ᴀゴᇣ㒧····················································································································32 ϗゴ㒧ᴳ䇁..............................................................33§ᴀ᭛Џ㽕䋵⤂·············································································································33 §ϟϔℹⷨおᎹ·········································································································33 ᬏ䇏मᄺԡᳳ䯈থ㸼䆎᭛ⱘᚙމ.............................................34ᬏ䇏मᄺԡᳳ䯈খࡴⱘ⾥ⷨᎹ.............................................34㟈䇶.......................................................................34খ㗗᭛⤂..................................................................35㸼㋶ᓩ˄⬹˅ II 义- 17 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ᨬ 㽕䱣ⴔInternetᡔᴃⱘ亲䗳থሩᑓ⊯ᑨ⫼ˈϔ⾡ᮄⱘ䅵ㅫᓣüü㔥Ḑ䅵ㅫ㫀থሩ䍋ᴹDŽ㔥ḐЎѢInternetⱘणৠ䌘⑤݅ѿ䯂乬∖㾷⦃๗ˈࡼInternetথሩࠄњᮄⱘ䰊↉DŽ✊㗠ˈ㔥Ḑ䖭⾡ᑓඳߚᏗǃ᱂䘡ᓖᵘⱘ䅵ㅫ⦃๗Ё䖯㸠णৠ䌘⑤݅ѿ䯂乬∖㾷䳔㽕㾷އ䆌ᣥᗻⱘ䯂乬DŽ݊ЁПϔህᰃ䌘⑤ᬙ䱰䕗乥㐕ⱘᚙމϟབˈԩֱ䆕㔥Ḑⱘৃ⫼ᗻDŽᴀ᭛ⱘⷨお㘮⛺Ѣ䅵ㅫ㔥Ḑˈߚᵤњ䅵ㅫ㔥Ḑৃ⫼ᗻ䯂乬ⱘ⡍⅞ᗻҹঞ䅵ㅫ㔥ḐЁ䯈ӊ䌘⑤ㅵ⧚ǃӏࡵ䇗ᑺǃֵᙃ᳡ࡵㄝᮍ䴶ⱘⷨお⦄⢊ˈೈ㒩བԩ㔥ḐЁ䯈ӊሖЎᑨ⫼ᦤկৃ⫼ᗻֱ䆕ⱘ䯂乬ˈⷨおњ㔥Ḑ䅵ㅫ催ৃ⫼݇䬂ᡔᴃˈࣙᣀৃ⫼ᗻߚᵤᑺ䞣ǃ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺǃӑ䌘⑤䗝ᢽǃ䌘⑤ӑㄪ⬹ǃẔᶹ⚍ᴎࠊDŽЏ㽕߯ᮄᎹࣙᣀ˖1ǃᦤߎњҢᑨ⫼ⱘ㾦ᑺߚᵤ䅵ㅫ㔥Ḑৃ⫼ᗻⱘᮍ⊩ˈᅮНњᑨ⫼ৃ⫼ᑺˈѢὖ⥛ൟᓎゟњᑨ⫼ৃ⫼ᑺⱘᑺ䞣ൟˈߚᵤњᕅડ䅵ㅫ㔥Ḑৃ⫼ᗻⱘ݇䬂㋴ˈ䆒䅵њ䅵ㅫ㔥Ḑ催ৃ⫼᳡ࡵԧ㋏㒧ᵘḚᶊDŽ2ǃᦤߎњ䌘⑤㛑⫼⿃˄䌘⑤ᗻ㛑ᣛᷛؐ䌘⑤ৃ⫼ᑺⱘЬ⿃˅ⱘὖᗉˈᑊ䆒䅵њѢ㛑⫼⿃ⱘ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺㅫ⊩DŽ䆹䌘⑤䇗ᑺㅫ⊩乘⌟䌘⑤ᗻ㛑ⱘৠᯊг乘⌟䌘⑤ⱘऎ䯈ৃ⫼ᑺˈ⫼ϸ⾡ᣛᷛؐⱘЬ⿃Ў䗝ᢽ䌘⑤ⱘձˈֱ䆕ᑨ⫼ᗻ㛑ⱘࠡᦤϟˈӬܜ䗝⫼ৃ⫼ᑺ催ⱘ䌘⑤䇗ᑺ㒭᳝催ৃ⫼䳔∖ⱘᑨ⫼DŽ3ǃᦤߎњѢ䌘⑤㘮䲚ⱘӑ䌘⑤䗝ᢽᮍ⊩ˈᑊḍ乘⬭ӑ䌘⑤ⱘ᭄䞣乘⬭ᯊᴎ䆒䅵њ⾡䌘⑤ӑㄪ⬹DŽ䅵ㅫ㔥Ḑ⦃๗ϟˈৃҹ䗮䖛䌘⑤乘⬭ᅲ⦄䌘⑤ӑˈᬃᣕᑨ⫼䌘⑤ᬙ䱰ⱘᚙމϟᖿ䗳ᘶDŽԚᰃˈ⦄᳝ⱘⷨおЁ≵᳝㾷އӑ䌘⑤䗝ᢽⱘ䯂乬ˈे䗝ᢽᇥǃ䗝ᢽાѯ䌘⑤Ўᑨ⫼ⱘӑ䌘⑤˗г㔎Уᇍ䌘⑤ӑㄪ⬹ⱘ䆒䅵䆘ӋDŽᴀ᭛ᦤߎⱘӑ䌘⑤䗝ᢽᮍ⊩䩜ᇍ㔥Ḑᑨ⫼Փ⫼䞣ᓖᵘ䌘⑤䖭ϔ⡍⚍ˈ佪ܜḍ䌘⑤䯈ⱘ݇㋏ᇚᑨ⫼Փ⫼ⱘ䌘⑤㘮䲚៤Ͼ䌘⑤䲚ড়ˈՓ↣Ͼ䌘⑤䲚ড়ৃҹ݅ѿӑ䌘⑤˗✊ৢ䗮䖛ৃ⫼ᗻᑺ䞣ᴹ⹂ᅮ↣Ͼ䌘⑤䲚ড়᠔䳔ⱘӑ䌘⑤ⱘ᭄䞣˗᳔ৢḍ䗝ӑ䌘⑤᳓ҷᑨ⫼ⱘ䌘⑤ৢⱘ䗮ֵᢧᠥ⒵䎇ᑺ䗝ᅮӑ䌘⑤ˈֱ䆕ӑ䌘⑤㛑᳔ᑺഄ⒵䎇ᑨ⫼ᇍ䌘⑤䯈䗮ֵᗻ㛑ⱘ㽕∖DŽᴀ᭛䆒䅵ⱘ䌘⑤ӑㄪ⬹Ў㔥Ḑᑨ⫼ᦤկ⾡䌘⑤ӑ᳡ࡵ㑻߿ˈ݊♉⌏ᑨ⫼ৃҹޣᇥ⬅Ѣ䌘⑤ӑ㗠䗴៤ⱘ䌘⑤⌾䌍DŽᴀ᭛⫼ᢳⱘᮍ⊩ᇍ䖭ѯ䌘⑤ӑㄪ⬹䖯㸠њߚᵤ䆘ӋDŽ4ǃᦤߎњѢϮ䖯ሩᦣ䗄ⱘᑨ⫼㑻䅵ㅫ㔥ḐẔᶹ⚍ण䆂DŽẔᶹ⚍/ᘶᴎࠊᰃᦤ催ৃ⫼ᑺⱘ䞡㽕ᮍ⊩Пϔˈ䅵ㅫ㔥Ḑ䖭⾡䌘⑤ᓖᵘⱘ䅵ㅫ⦃๗ϟᅲ⦄Ẕᶹ⚍ᴎࠊᰃ䴲ᐌᆠ᳝ᣥᗻⱘ䇒乬DŽᴀ᭛᠔ᦤⱘẔᶹ⚍ण䆂߽Ѣᣛᇐ⫼᠋䖯㸠ϮߚࡆࠊẔᶹ⚍ⱘ㉦ᑺDŽЎњᬃᣕ⍜ᙃӴ䗦ᑊ㸠ᑨ⫼ˈᴀ᭛ᦤߎњẔᶹ⚍᭄ЁᠽሩѢথ䗕ᮍⱘ⍜ᙃ᮹ᖫⱘᮍ⊩DŽℸ⸔Ϟˈ䆒䅵њẔᶹ⚍᭄ⱘᄬټ㒧ᵘˈᑊ䅼䆎њ䅵ㅫ䌘⑤㑻㔥Ḑ㑻ⱘẔᶹ⚍᭄ᄬټㅵ⧚䯂乬ˈ䆒䅵њ⾡䅵ㅫ䌘⑤㑻ⱘẔᶹ⚍᭄ݭܹࠄ㔥Ḑ㑻ᄬټ㋏㒳ⱘㅫ⊩ˈᑊѢ䖭ѯㅫ⊩䆒䅵њ㞾䗖ᑨⱘẔᶹ⚍᭄ᄬټㅫ⊩˗㔥Ḑ㑻Ẕᶹ⚍᭄ᄬټㅵ⧚Ёг䆒䅵њⳌᑨⱘᄬټㅫ⊩DŽ5ǃѢҹϞᇍ䅵ㅫ㔥Ḑ催ৃ⫼݇䬂ᡔᴃⱘⷨおˈᴀ᭛㔥ḐḌᖗЁ䯈ӊЁ䆒䅵њ催ৃ⫼᳡ࡵሖˈ䅼䆎њ݊ЁϾ㒘ӊⱘ㒧ᵘࡳ㛑ҹঞϢ㔥ḐЁ䯈ӊЁ݊Ҫ㒘ӊⱘѸѦ݇㋏DŽ݇䬂䆡˖㔥Ḑˈ䅵ㅫ㔥Ḑˈ催ৃ⫼ˈৃ⫼ᗻߚᵤˈ䌘⑤䇗ᑺˈ䌘⑤ӑˈẔᶹ⚍ᴎࠊ i 义- 18 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ABSTRACTWith the rapid development and wide application of Internet technologies, a new computing pattern, Grid computing, which substantially changes the way we perceive and use computational resources and services is booming. Grid is an Internet-based infrastructure for cooperative resource sharing and problem-solving, which brings the Internet into a new era. Yet, for cooperative resource sharing and problem-solving, many challenging problems anticipate solving in such a wide-area distributed and substantially heterogeneous computing environment as Grid, one of which is how to guarantee the high availability of Grid in circumstances with frequent resource failure. The research in this thesis focused on computational Grid, which is submental for the Grid. It analyzed the particularity of the availability problem of computational Grid and the current research on resource management, task scheduling and information services in the middleware of computational Grid. In order to provide high availability assurance for the Grid applications in the Grid middleware, we did much research on the high availability techniques for computational Grid, including availability analysis and measurement, resource scheduling for high availability, selection of backup resources, resource backup policies and checkpointing mechanisms. This thesis targets at making the following major contributions: Firstly, the availability analysis method from the point of view of applications in computational Grid is proposed, the definition of application availability is given and a measurement model based on probabilistic model is set up, based on which key factors which affect availability of Grid is analyzed thoroughly. Then the framework for high availability service architecture for computational Grid is presented. Secondly, the notion of Product of resource Performance and its Availability (PPA) is proposed, based on which an algorithm for high availability oriented resource scheduling is devised. And with the prediction of both resource performance and resource interval availability made simultaneously, this algorithm takes the two factors into consideration for scheduling, that is, under the precondition of performance guarantee, preferably choosing resources with high availability for applications with high availability demand. Thirdly, a resource-clustering based method for backup resource selection is proposed, and many policies for resource backup are devised according to the quantity of backup resources and the time of making advanced reservation. In computational Grid, resource backup can be achieved by means of resource reservation as a support to fast recovery when resource failure occurs. But, problems related to backup resource selection, that is, select how many and select which, remains unresolved in current research, meanwhile, resource backup policies and its evaluation are insufficient. For the usage of massive heterogeneous resources in Grid applications, backup resource selection method presented in this thesis is done as follows: first clustering resources into multiple resource sets according to resource relationship and endowing each set with the ability of backup resource sharing; then determining the quantity of backup resources needed by each set using the quantitative measurement of availability; and finally choosing backup resources according to the communication topology-satisfication degree of candidate backup resources so as to guarantee the inter-resource communication performance required from Grid applications to a maximum degree. The resource backup policies devised in this thesis provide multiple backup service levels, with flexible application of which, resource waste arisen from resource backup can be reduced. The analysis and evaluation of these policies are made with simulation method. Fourthly, a Job Progress Description based checkpoint protocol at application level for computational Grid is presented. Checkpoint/recovery mechanism is an important mechanism to improve application availability, and it’s challenging to implement checkpoint mechanism in such resource heterogeneous circumstances as Grid. The protocol proposed in this thesis can help users to partition jobs and control the granularity of job checkpointing. To support parallel application with message passing, a method of expanding checkpoint data with sender-based message logging is given. Then, based on this checkpoint protocol, the thesis designs the storage architecture of checkpoint data and discusses the storage management of checkpoint data in computational resource level and Grid level: In resource level, with multiple checkpoint data write-back algorithms devised, an adaptive write-back algorithm is proposed; while in Grid level storage algorithms for checkpoint data management are devised correspondingly. Finally, based on the research of these high availability techniques, the High Availability Service Layer for Grid (HASL4G) is designed in the kernel middleware of Grid, and the structure and functionality of the constitute components as well as interactions with other components in Grid middleware are discussed. KEYWORDS: Grid, Computational Grid, High availability, Availability analysis, Resource scheduling, Resource backup, Checkpointing mechanism ii 义- 19 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ϔゴ㒾䆎ⷨお㚠᱃㔥Ḑ䅵ㅫⱘ݈䍋Internetⱘᑓ⊯Փ⫼ҹঞଚ⫼䅵ㅫᴎ㋏㒳㔥㒰䆒ᗻ㛑ⱘᣕ㓁䭓ˈϡᮁഄࡼⴔ䅵ㅫᓣⱘথሩDŽᔧࠡˈϔ⾡ᮄⱘ㔥㒰䅵ㅫᓣüü㔥Ḑ䅵ㅫ˄Grid Computing˅៤ЎϔϾⷨお⛁⚍DŽ㔥Ḑ䅵ㅫᰃᣛࡼᗕⱘǃ⬅Ͼᴎᵘⱘֵᙃ໘⧚䌘⑤㒘៤ⱘ㰮ᢳ㒘㒛˄Virtual OrganizationˈVO˅Ё䖯㸠ⱘणৠ䌘⑤݅ѿ䯂[1]乬∖㾷DŽ˄⬹˖㔥Ḑ䅵ㅫⱘ3ϾЏ㽕Ⳃᷛ˅㔥Ḑ䅵ㅫⱘথሩ䖛䱣ⴔ㔥Ḑ䅵ㅫⱘথሩĀˈ㔥Ḑā䖭ϔ⿄䇧Т៤Ў݅ѿǃѦ᪡ǃ䗣ᯢ䆓䯂ⱘҷৡ䆡ˈ⾡ḋⱘ㔥Ḑ⿄䇧ሖߎϡかˈབ᭄㔥Ḑǃֵᙃ㔥Ḑǃⶹ䆚㔥Ḑǃ䇁Н㔥ḐㄝDŽ䖭䞠ҙḍ㔥Ḑᅲ⦄ⱘ⡍⚍ᴹ䖯㸠㔥Ḑথሩ䰊↉ߦߚ㗠ˈϡএ䅼䆎ҹ㔥Ḑ∖㾷䯂乬ⱘ⡍⚍ⳂᷛᴹᅮНⱘ㔥ḐDŽ˄⬹˖ᇍ㔥Ḑ䅵ㅫⱘথሩ䖛ⱘㅔऩҟ㒡˅ݙⱘ㔥Ḑ䅵ㅫ乍Ⳃㅔҟᴀ᭛ⷨお䩜ᇍⱘ㔥Ḑ⦃๗ᴀ᭛ⱘⷨお㘮⛺Ѣ䅵ㅫ㔥ḐˈЎ䅵ㅫ㔥Ḑⱘⷨお䍋ℹ䕗ᮽˈ݊㒧ᵘࡳ㛑ⱘⷨおᏆ㒣↨䕗៤❳ˈ㗠Ϩ䅵ㅫ㔥Ḑᰃ㔥Ḑ⦃๗ⱘ⸔DŽҹ䅵ㅫ䌘⑤ⱘ݅ѿणৠᎹЎⳂᷛᵘᓎⱘ㔥Ḑ䅵ㅫ⦃๗䗮ᐌ⿄Ў䅵ㅫ㔥ḐDŽ䅵ㅫ䌘⑤݅ѿणৠᎹᰃ㔥Ḑ䅵ㅫⷨおⱘ᳔߱ࡼгˈᰃ㔥Ḑ䅵ㅫথሩⱘ[2]ᣕ㓁ࡼˈ⾡㔥Ḑ⦃๗Ё䛑᮴ϔ՟ഄᕫࠄњᬃᣕᰃˈ㔥Ḑ⦃๗ⱘ⸔DŽ䅵ㅫ㔥Ḑᰃϔ⾡䕃ӊ⹀ӊⱘ⸔䆒ᮑЎˈ⫼᠋ᦤկњᇍഄ⧚ߚᏗⱘ䌘⑤ⱘৃ䴴ⱘǃϔ㟈ⱘǃ㒳ϔⱘ䆓䯂ˈ䖭ѯ䌘⑤ࣙᣀ䅵ㅫᴎǃ᭄ᄬټ㋏㒳ǃ⾥ᄺҾ఼[3][4]催ッᰒ⼎䆒ㄝDŽ䅵ㅫ㔥Ḑ䗮䖛㞾Џⱘ䅵ㅫᴎ㋏㒳ПϞᵘᓎЁ䯈ӊሖᴹ㘮ড়ᑓඳߚᏗⱘ䅵ㅫ䌘⑤ˈᵘ៤ϔϾѢInternetⱘ㾘ߚᏗ䍙㑻䅵ㅫ⦃๗ˈ៤Ўϔ⾡ᮄⱘ䖯㸠㾘⾥ᄺᎹ䅵ㅫⱘᑇৄDŽ䅵ㅫ㔥Ḑⱘᑨ⫼ࣙᣀߚᏗ䍙㑻[5][6][7][8]䅵ㅫˈⶹ䆚ড়៤ˈ㒓Ҿ఼䆒ࠊҹঞ䖰≝⍌ㄝDŽሑㅵᔧࠡ㔥ḐϢWeb ServiceⳌѦ㵡ড়ˈ䞛⫼䴶᳡ࡵⱘᵘᓎᮍᓣˈ㵡ড়њⱘ㔥㒰䌘⑤᳡ࡵԚˈᰃ䅵ㅫ䌘⑤ⱘ݅ѿणৠҡᰃ㔥Ḑⱘ⸔াˈϡ䖛ᇚTM䅵ㅫ䌘⑤ৠḋᇕ㺙៤᳡ࡵDŽ䴶OGSAᓔথⱘGlobus ⠜ᴀЁˈҡ✊㒻ᡓᑊᅠњ䴶䅵ㅫ㔥Ḑⱘ䖤㸠ᑧᮍᓣⱘᎹDŽ㗠ϨˈⳂࠡҡ᳝䞣ⱘⷨおᎹᰃ䩜ᇍ䅵ㅫ㔥Ḑ⦃๗ⱘˈ՟བGGFЁⱘϾⷨお㒘˄Research Group˅Ꮉ㒘˄Work Group˅ⱘ䞣ⷨおᎹᰃ䴶䅵ㅫ㔥ḐⱘDŽ䖭ᰃЎˈϔᮍ䴶䅵ㅫ㔥ḐЁⱘ䆌݇䬂ᡔᴃⱘⷨおҡᕜϡᅠˈ՟ 1 义- 20 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛བ䅵ㅫ㔥Ḑ⦃๗ϟⱘϮ䇗ᑺǃᑨ⫼ᓔথǃᗻ㛑䆘Ӌㄝㄝ˗ϔᮍ䴶ˈ䅵ㅫ㔥ḐᏆ㒣ᲈ䴆њ㔥Ḑ䅵ㅫЁⱘᴀ䋼ᗻⱘᣥ䯂乬ˈ䇌བᓖᵘᗻǃৃᠽሩᗻǃ㞾䗖ᑨᗻㄝㄝˈ䖭ѯ݇䬂䯂乬ⱘ⏅ܹⷨお᮴䆎ᇍ䅵ㅫ㔥Ḑ䖬ᰃ᳡ࡵ㔥Ḑ䛑䴲ᐌ䞡㽕DŽ㔥Ḑԧ㋏㒧ᵘ㔥ḐЁ䯈ӊ㔥Ḑⱘԧ㋏㒧ᵘ˄⬹˖㔥Ḑ䅵ㅫⱘሖԧ㋏㒧ᵘൟ˅㔥ḐЁ䯈ӊ˄⬹˖㔥ḐЁ䯈ӊⱘࡳ㛑ҹঞGlobusҟ㒡˅㔥Ḑ䴶Јৃ⫼ᗻⱘᣥ㔥ḐЎᑓඳ⦃๗ϟⱘֵᙃ⸔䆒ᮑˈ݊ⳂᷛҸҎ哧㟲Ԛˈᰃ䱣ⴔⷨおᅲ䏉ⱘ⏅ܹˈ䴶Јⱘᣥᗻ䯂乬䍞ᴹ䍞ഄさᰒߎᴹˈৃ⫼ᗻ䯂乬ህᰃ݊ЁПϔDŽ㔥ḐᰃᵘᓎInternetПϞⱘ㾘ߚᏗᓣ㋏㒳ˈ㾘ⱘߚᏗᓣ㋏㒳Ёˈ㒧⚍ᬙ䱰㔥㒰䖲ᬙ䱰㒣ᐌথ⫳DŽ՟བˈܼ⧗᳔ⱘInternet ᧰㋶ᓩ᪢GoogleՓ⫼њ㑺8000Ͼ㒧⚍ˈ↣ᑈ㒧⚍ⱘᬙ䱰⥛Ў2-3%ˈⳌᔧѢ↣36Ͼᇣᯊህ᳝[9]ϔϾ㒧⚍থ⫳ᬙ䱰˗ᇍϔϾൟᎹϮӕϮ㔥㒰ݙⱘ64000ৄḠ䴶䅵ㅫᴎ˄䖭ѯ䅵ㅫᴎᵘ៤њϔ㰮ᢳⱘPCᴎ㕸ˈৃҹЎӕϮⱘᑓඳ䅵ㅫᑇৄ˅ⱘৃ⫼ᑺⷨおЁথ⦄ˈ24ᇣᯊݙ᳝5%ࠄ10%ⱘᴎ఼ϡৃ⫼ˈᇍ݊䖯㸠ⱘ⫳ੑᳳ䆘ԄЁথ⦄ˈ100ⱘᯊ䯈ݙ᳝䖒1/3ⱘᴎ఼᮴⊩䖲䗮˄݊㔥㒰䖲⡍ᗻᏆ㒣ᬍ[10]ব˅DŽ㾘ⱘ䅵ㅫᴎ㋏㒳гᰃབℸˈབ㾘䅵ㅫᴎ㋏㒳ASCI-QⱘᭈϾ㋏[11]㒳ⱘᑇഛᬙ䱰䯈䱨ᯊ䯈˄MTBF˅া᳝ϾᇣᯊDŽ㔥Ḑⱘ䅵ㅫ䌘⑤˄བᎼൟᴎǃᴎ㕸ǃ催ᗻ㛑᳡ࡵ఼ǃϾҎ䅵ㅫᴎǃ˅ᄬټ䌘⑤˄བ㾘ⱘ᭄Ёᖗㄝ˅Ͼഄ⧚ߚᏗⱘ䌘⑤П䯈䗮䖛Internet䖲ˈ㗠ˈ[12]݊㔥㒰䖲ᬙ䱰г䴲ᐌ乥㐕DŽ᳝ⷨおᣛߎˈ᳝Internet䖲ⱘᎹキⱘᑇഛ᮴ᬙ䱰ᯊ䯈˄MTBF˅Ў13ϾᇣᯊᎺেˈгህᰃ䇈ˈ㾘Ў10000ⱘ䜡㕂ϟˈᑇഛ↣2ߚ䩳ህ᳝㟇ᇥϔϾ㒧⚍ᬙ䱰˄ᴎ఼ᬙ䱰㔥㒰䖲ᬙ䱰DŽ˅᳒㒣থ⫳䖛⬅Ѣ䌘⑤ᬙ䱰䗴៤䅵ㅫ㔥Ḑᑨ⫼᮴⊩ℷᐌ䖤㸠ⱘᅲ՟DŽ՟བˈ㓐ড়ݯ㸼⼎[13]˄Synthetic Forces ExpressˈSFExpress˅ᢳᑣѢ䅵ㅫ㔥Ḑᢳњ100000Ͼऩԡⱘഎ䴶ˈ߯䗴њ䆹乚ඳⱘϪ⬠㑾ᔩˈԚᰃˈ1997ᑈSupercomputing䰙Ӯ䆂Ϟⓨ⼎50000Ͼऩԡⱘഎᢳᯊ䖲ˈᖋᎲⱘ䍙[14]㑻䅵ㅫᴎⱘ㔥㒰ህߎ⦄њϡ⬙䗮ⱘᚙމDŽ䅵ㅫ㔥Ḑ䌘⑤ᬙ䱰乥㐕ⱘϸϾЏ㽕ॳᰃ˖˄1˅⸔䆒ᮑⱘϡৃ䴴˗˄2˅Ͼ䌘⑤ⱘ㞾ЏᗻDŽ⸔䆒ᮑࣙᣀϸϾᮍ䴶ᦤ˖կ䅵ㅫ䌘⑤ⱘЏᴎ㋏㒳ҹঞᦤկ䅵ㅫ䌘⑤П䯈ⳌѦ䗮ֵⱘ㔥㒰Ӵ䕧ܹ䆒ᮑDŽ䅵ㅫᴎ㋏㒳ⱘᬙ䱰ᰃ䲒ҹ䙓ܡⱘˈ⡍߿ᰃ㾘䅵ㅫᴎ㋏㒳ˈ݊ᑇഛ᮴ᬙ䱰ᯊ䯈ᕜⷁ㗠˗㔥㒰Ӵ䕧ܹ䆒ᮑ䗮ᐌ⬅Internet ISPᦤկˈ㔥㒰ᢹา䆒ᬙ䱰ㄝᚙމϟˈ݊ᦤկⱘ䗮ֵӴ䕧᳡ࡵⱘ䋼䞣г᮴⊩ֱ䆕DŽˈ㔥ḐЁⱘ䌘⑤ሲѢϡৠⱘ㒘㒛ϾҎ᠔᳝ˈ᳝ϡৠⱘㅵ⧚䜡㕂ᮍᓣˈ䌘⑤ᦤկ㗙ⱘЏ㾖㸠Ўˈབ䱣ᛣⱘᓔǃ݇䅵ㅫᴎ㒜ℶᶤѯ᳡ࡵˈгᰃ䗴៤䅵ㅫ㔥Ḑ⦃๗ϟ䌘⑤ᬙ䱰ⱘЏ㽕ॳDŽ 2 义- 21 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛㔥ḐЁⱘ⾡ᬙ䱰Ϲ䞡䰏њ݊໘⧚㛑ⱘܙߚথ㔥ˈḐЁ䯈ӊ䳔㽕Ўᑨ⫼ᦤկৃ⫼ᗻֱ䆕ˈՓ㔥Ḑ៤Ў催ৃ⫼ⱘ䅵ㅫ⦃๗DŽ䱣ⴔ㔥Ḑᡔᴃⱘথሩˈ䍞ᴹ䍞ᇍ䖤㸠⦃๗ⱘৃ䴴ᗻৃ⫼ᗻ᳝ᕜᔎ㽕∖ⱘᑨ⫼ᇚҹ㔥ḐЎᑇৄབˈ㕢[139]䰆䚼ⱘܼ⧗ֵᙃ㔥Ḑ˄Global Information GridGˈIG˅ᇚЎ㕢ᮄϪ㑾ⱘֵᙃᬃᩥ⦃๗DŽ݊Ҫ݇䬂ᑨ⫼乚ඳབᅛ㟾ǃ⬉ֵǃ䞥㵡ㄝгᇚ䗤⏤߽⫼㔥Ḑ䖭⾡ᑓඳֵᙃ໘⧚ᑇৄDŽ䖭ѯ乚ඳⱘᑨ⫼ᇍ䖤㸠䖛Ёⱘذ乓ᯊ䯈᳝ϹḐⱘ䰤ࠊˈ㒧⚍ᬙ䱰ǃ㔥㒰ᬙ䱰ˈҹঞϡৃ乘⌟ⱘ㔥㒰ᓊ䖳ㄝˈ䛑ৃ㛑ᇐ㟈Ϲ䞡ⱘৢᵰDŽ⬅Ѣ㔥ḐᵘᓎᏆ᳝ⱘ䌘⑤Internet㔥㒰䖲ПϞˈࡴܹ㔥Ḑⱘ䌘⑤᳝ᕜᔎⱘ㞾Џᗻ䖭ˈՓᕫᏆ᳝ⱘᑨ⫼ѢऩϾ䅵ㅫᴎ㋏㒳ⱘ催ৃ⫼ᡔᴃϡ㛑Ⳉᑨ⫼Ѣ㔥Ḑ⦃๗DŽ՟བˈᏆ᳝ⱘ䅵ㅫᴎ㋏㒳ߚᏗ䅵ㅫ⦃๗Ёˈ䗮ᐌ䞛⫼䚼ӊ˄ᇍ[15][16][17]䈵˅ݫԭẔᶹ⚍/ᘶㄝᡔᴃᴹֱ䆕ৃ⫼ᗻˈԚᇍѢᵘᓎ催ৃ⫼㔥Ḑ䅵ㅫ㗠㿔ˈᅲ⦄䖭ѯ催ৃ⫼ᡔᴃҡ᳝ᕜ݇䬂ⱘᡔᴃ䯂乬䳔㽕㾷އDŽⷨおݙᆍ䇒乬ᴹ⑤ᴀ᭛ⷨおѢⱘᬙ䱰ൟᴀ᭛ⱘⷨお䞡⚍䅵ㅫ㔥Ḑ㒻ᡓњᏆ᳝ⱘᑊ㸠ǃߚᏗᓣ㋏㒳Ёⱘ᳝⡍ᗻৠˈᯊ⬅Ѣ䌘⑤᱂䘡ᓖᵘϨࡼᗕᗻᔎজˈߎ⦄њᕜॳᴹⱘᑊ㸠ǃߚᏗᓣ㋏㒳Ё≵᳝ⱘᮄⱘᣥᗻⱘᡔᴃ䯂乬ˈ催ৃ⫼ᡔᴃᮍ䴶гབℸDŽৃ⫼ᗻߚᵤᑺ䞣ᮍ䴶䳔ˈ㽕㒭ߎ䆘Ӌ䅵ㅫ㔥Ḑৃ⫼ᗻⱘ䞣࣪ᮍ⊩DŽԚᰃᏆ᳝ⱘҢ㋏㒳ⱘ㾦ᑺߚᵤᑺ䞣ⱘᮍ⊩Ꮖ㒣ϡ䗖ড়䅵ㅫ㔥Ḑ䖭⾡ᓔᬒǃࡼᗕⱘ䅵ㅫ⦃๗䳔ˈ㽕ⷨお䅵ㅫ㔥Ḑ⦃๗ϟ䖯㸠ৃ⫼ᗻߚᵤᑺ䞣ⱘൟᮍ⊩DŽᅲ⦄催ৃ⫼᳡ࡵᮍ䴶䅵ˈㅫ㔥ḐгϡৠѢᇕ䯁ⱘ䅵ㅫᴎ㋏㒳ˈℸ䳔㽕㔥ḐЁ䯈ӊЁ䆒䅵催ৃ⫼᳡ࡵԧ㋏㒧ᵘDŽ䌘⑤䇗ᑺᮍ䴶䌘ˈ⑤䇗ᑺᰃᕅડ䅵ㅫ㔥Ḑৃ⫼ᗻⱘϔϾ䞡㽕㋴ˈ㔥Ḑ⦃๗ϟˈ䌘⑤㽕㒣䖛⊼ݠǃথ⦄ǃߚ䜡ⱘ䖛ᠡ㹿㔥Ḑᑨ⫼Փ⫼ˈ䇗ᑺ㒭ᑨ⫼ⱘ䌘⑤ⱘৃ⫼ᑺᇍᑨ⫼ⱘৃ⫼ᑺ᳝ᕜⱘᕅડDŽℸ䳔ˈ㽕ⷨお㔥Ḑ⦃๗ϟⱘ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺᮍ⊩DŽ䌘⑤ৃ⫼ᑺֵᙃᰃ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺⱘ⸔ˈℸг䳔㽕ⷨお㔥Ḑ⦃๗ϟ䌘⑤ৃ⫼ᑺⱘ乘⌟ᮍ⊩DŽ䌘⑤ӑᡔᴃᮍ䴶⬅ˈѢ䅵ㅫ㔥Ḑ䌘⑤᭄䞣ᑊϨ䌘⑤ӑ㽕䗮䖛䌘⑤乘⬭ⱘᮍᓣᅲ⦄ˈℸབԩ䗝ᢽ㽕乘⬭ⱘ⫼ӑⱘ䌘⑤ህ៤ЎϔϾ݇䬂䯂乬DŽ䌘⑤䗝ᢽ㽕㾷އϸϾᮍ䴶ⱘ䯂乬ˈ݊ϔᰃ⹂ᅮӑ䌘⑤ⱘ᭄䞣ӑ݇㋏䳔ˈ㽕ḍᑨ⫼ⱘৃ⫼ᑺ䳔∖ҹঞ䌘⑤䳔∖⹂ᅮӑ䌘⑤ⱘ᭄䞣гˈ䳔㽕⹂ᅮ䌘⑤䯈ⱘӑ݇㋏ˈेᯢ⹂ᑨ⫼Փ⫼ⱘ䌘⑤Ϣӑ䌘⑤ⱘᇍᑨ݇㋏˗݊Ѡᰃ⹂ᅮӑ䌘⑤ⱘԡ㕂ˈे䗝ᅮӑ䌘⑤⬅ˈѢ㔥Ḑ⦃๗ϟৃҹ⫼ӑ䌘⑤ⱘ䗝䌘⑤ৃ㛑᳝ᕜˈ䳔㽕ⷨお䗝ᅮӑ䌘⑤ⱘᮍ⊩DŽϔᮍ䴶ˈ⬅Ѣ㔥Ḑ䌘⑤㽕㒣䖛থ⦄ǃֱ⬭ߚ䜡ⱘℹ偸ᠡ㹿ᑨ⫼Փ⫼Ϩˈ↣Ͼℹ偸䛑᳝ᯊ䯈ᓔ䫔ˈℸ㽕ᦤ催䌘⑤ⱘ߽⫼⥛ᑊֱ䆕ৃ⫼ᑺ䳔ˈ㽕䆒䅵♉⌏ⱘ䌘⑤ӑㄪ⬹Ў㔥Ḑᑨ⫼ᦤկ♉⌏ⱘ䌘⑤ӑ᳡ࡵDŽẔᶹ⚍/ᘶᴎࠊҡᰃ䅵ㅫ㔥ḐЁ䞡㽕ⱘ催ৃ⫼ᡔᴃˈԚᰃ㔥Ḑ⦃๗ϟ䌘 3 义- 22 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛⑤ᓖᵘ䴲ᐌ᱂䘡ˈ䖭㒭ᅲ⦄Ẕᶹ⚍/ᘶᴎࠊᦤߎњ䆌ᮄⱘᣥDŽẔᶹ⚍ⱘᅲ⦄ሖǃ㓪ষǃϢⳌᑨ㓪ൟⱘ㒧ড়ǃẔᶹ⚍᭄ⱘᅮНǃẔᶹ⚍᭄ⱘᄬټㅵ⧚ㄝ䯂乬㔥Ḑ⦃๗ϟ䛑䳔㽕䖯㸠⏅ܹⱘⷨおDŽℸབˈԩ㔥ḐЁ䯈ӊЁ䲚៤催ৃ⫼ᡔᴃЎ㔥Ḑᑨ⫼ᦤկ催ৃ⫼᳡ࡵˈे䆒䅵ાѯ催ৃ⫼᳡ࡵ㒘ӊǃབԩϢᏆ᳝ⱘ㔥ḐЁ䯈ӊ㒘ӊѸѦणৠгˈ䳔㽕䖯㸠⏅ܹⱘⷨおDŽⳌ݇ⷨおᎹᆍ䫭㔥Ḑᑇৄ 㔥ḐQoS ৃ⫼ᗻߚᵤঞᑺ䞣䌘⑤䇗ᑺ䌘⑤乘⬭䅵ㅫ㔥ḐẔᶹ⚍/ᘶ᳡ࡵ㔥Ḑ⦃๗ϟⱘᬙ䱰Ẕ⌟ᴀ᭛ⱘᎹ˄⬹এњԧⱘভ䗄ˈাㅔ㽕߫ߎᷛ乬˅1ˊ䅵ㅫ㔥Ḑৃ⫼ᗻ䯂乬ߚᵤঞ催ৃ⫼᳡ࡵԧ㋏㒧ᵘ䆒䅵zᦤߎњҢᑨ⫼ⱘ㾦ᑺߚᵤ䅵ㅫ㔥Ḑৃ⫼ᗻⱘᮍ⊩zᓎゟњᑨ⫼ৃ⫼ᑺⱘᑺ䞣ൟˈ䆒䅵њ催ৃ⫼᳡ࡵԧ㋏㒧ᵘḚᶊDŽ2ˊ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺⷨおz䌘⑤ৃ⫼ᑺֵᙃⱘ㦋পz䴶催ৃ⫼ⱘ䌘⑤䇗ᑺㅫ⊩3ˊ䅵ㅫ㔥Ḑ䌘⑤ӑ݇䬂ᡔᴃⷨおzӑ䌘⑤䗝ᢽz䌘⑤ӑㄪ⬹䆒䅵䆘Ӌ4ˊ䅵ㅫ㔥ḐẔᶹ⚍݇䬂ᡔᴃⷨおzẔᶹ⚍ण䆂zᇍ⍜ᙃӴ䗦ᑊ㸠ᑨ⫼ⱘᬃᣕzẔᶹ⚍᭄ᄬټㅵ⧚5ˊ㔥ḐЁ䯈ӊ催ৃ⫼᳡ࡵሖⱘ䆒䅵䆎᭛㒧ᵘ 4 义- 23 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛Ѡゴ䅵ㅫ㔥Ḑ催ৃ⫼᳡ࡵԧ㋏㒧ᵘḚᶊᴀゴ佪ܜߚᵤњ䅵ㅫ㔥Ḑৃ⫼ᗻ䯂乬ⱘ⡍⅞ᗻᦤˈߎњҢᑨ⫼ⱘ㾦ᑺߚᵤ䅵ㅫ㔥Ḑৃ⫼ᗻ䯂乬ⱘᮍ⊩ˈᅮНњᑨ⫼ৃ⫼ᑺˈᑊᓎゟⳌᑨⱘᑺ䞣ൟˈߚᵤњᕅડৃ⫼ᗻⱘ݇䬂㋴ˈᯢ⹂њ䅵ㅫ㔥ḐЁ䯈ӊЁᦤկ催ৃ⫼᳡ࡵⱘᡔᴃ䗨ᕘˈ䖯㗠䆒䅵њ䅵ㅫ㔥ḐЁ䯈ӊ催ৃ⫼᳡ࡵԧ㋏㒧ᵘḚᶊDŽᴀὖᗉⳌ݇ⷨお ᴀὖᗉ催ৃ⫼Ϣᆍ䫭ৃ⫼ᑺⱘ䅵ㅫ䅵ㅫ㔥Ḑৃ⫼ᗻ䯂乬ߚᵤ䅵ㅫ㔥ḐᰃϔϾᴖⱘࡼᗕᗻᔎⱘ㋏㒳ৠˈḋг᳝ৃ⫼ᗻⱘ䯂乬䳔ˈ㽕ᇍ㔥Ḑⱘৃ⫼ᗻ䯂乬䖯㸠⏅ܹߚᵤԚˈᰃҢ㋏㒳ⱘ㾦ᑺߚᵤᑺ䞣ৃ⫼ᗻⱘᮍ⊩䅵ㅫ㔥Ḑ⦃๗ϟ䴶Јᕜⱘೄ䲒Ꮖˈϡ䗖ড়䅵ㅫ㔥Ḑ䖭ϔᓔᬒǃࡼᗕⱘ䅵ㅫ⦃๗DŽЏ㽕᳝ҹϟϸϾॳ˖1ˊϡৠⱘᑨ⫼᳝ϡৠⱘՓ⫼㾚DŽᇍѢϡৠⱘᑨ⫼ˈ㔥Ḑ᠔ᦤկⱘ᳡ࡵ᳝ᕜⱘϡৠˈ䖭পއѢ⫼᠋ⱘᴗ䰤ǃ䌘⑤ⱘՓ⫼ㄪ⬹ǃҬ䌍ㄝ㋴ˈℸϡৃ㛑ᕫߎϔϾᇍ᠔᳝⫼᠋ᑨ⫼䛑᳝খ㗗ᛣНⱘ㔥Ḑৃ⫼ᑺDŽ㗠ϨˈेՓᡞ㔥ḐⳟϔϾऩϔⱘ㋏㒳䙷ˈМг᮴⊩ᅮНᑺ䞣㋏㒳ⱘᎹᯊ䯈ׂᯊ䯈ˈЎᕜৃ㛑⬅Ѣᶤѯᬙ䱰ⱘথ⫳㱑ˈՓᶤ㉏ᑨ⫼ϡ㛑䅵ㅫ㔥ḐϞ䖤㸠њԚˈৃ㛑䖬᳝݊Ҫⱘᑨ⫼㛑ℷᐌ䖤㸠DŽ2ˊ㔥ḐЁᓖᵘ䌘⑤ᅲԧⱘ᭄䞣ᑲϨࡼᗕᗻ䴲ᐌᔎDŽ᳝ѯ䌘⑤ⱘࡴܹ䗔ߎ↨䕗䱣ᛣˈ䖭㒭Ңܼ㋏㒳ⱘ㾦ᑺߚᵤᑺ䞣䗴៤њᵕⱘೄ䲒DŽᅲ䰙ϞᇍˈѢ㔥Ḑ⫼᠋㗠㿔Ҫˈ݇ᖗⱘᰃҪᦤѸࠄ㔥Ḑⱘᑨ⫼ᓔྟ䖤㸠ҹৢˈⱘᑺϞ໘Ѣᣕ㓁ℷᐌ䖤㸠ⱘ⢊ᗕDŽℸᇍˈѢ㔥Ḑ㗠㿔ᅰҢᑨ⫼ⱘ㾦ᑺߚᵤৃ⫼ᗻЎˈℸᴀ᭛㒭ߎњབϟⱘᑨ⫼ৃ⫼ᑺᅮНDŽᑨ⫼ৃ⫼ᑺ˄Application Availability˅ᅮНЎ˖TrnAA(GA) i˄2-1˅T Trnrs݊ЁˈTЎᑨ⫼GAⱘᑇഛℷᐌ䖤㸠ⱘᯊ䯈᠔ˈ䇧ⱘℷᐌ䖤㸠ᰃᣛᑨ⫼໘Ѣrni䖤㸠⢊ᗕϨ᮴ϡ㛑ᆍᖡⱘᗻ㛑䰡Ԣ˗TЎᑨ⫼GAⱘᑇഛϡ㛑Ꮉᯊ䯈DŽrsiৃ㾕ˈᑨ⫼ৃ⫼ᑺᰃԧⱘᑨ⫼Ⳍ݇ⱘˈϡৠᑨ⫼ⱘৃ⫼ᑺϡৠ˗ᇍѢৃ㒜ℶⱘᑨ⫼㗠㿔ˈ݊ᑨ⫼ৃ⫼ᑺгৃҹ㸼⼎Ў˖TTrnAA(GA) i˄2-2˅ TrnTrs 5 义- 24 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛݊ЁˈTЎᑨ⫼GAᘏⱘℷᐌ䖤㸠ᯊ䯈˗TЎᑨ⫼GAᘏⱘϡ㛑Ꮉᯊ䯈DŽTrniTrsiᑨ⫼ৃ⫼ᑺডњⳳᅲⱘᑨ⫼ᅠ៤Ꮉⱘ㛑Ϣˈᑨ⫼ⱘ᳝⡍ᗻᑨ⫼ⱘ䚼㕆⦃๗᳝݇DŽᴀ᭛ⱘⷨおЁˈϡ㗗㰥ᑨ⫼ⱘ᳝⡍ᗻˈা㗗㰥ᑨ⫼䚼㕆ࠄ䅵ㅫ㔥Ḑ⦃๗ৢ䴶ˈᇍ䌘⑤ᬙ䱰乥㐕ⱘᚙމབˈԩ㔥ḐЁ䯈ӊЁЎᑨ⫼ᦤկֱ䆕ৃ⫼ᑺⱘ᳡ࡵDŽᑨ⫼ৃ⫼ᑺⱘᑺ䞣݀ᓣ2-12-2া䗖⫼Ѣᇍᑨ⫼ৃ⫼ᑺ䖯㸠㒳䅵Ԅㅫˈᅲ䰙Ϟˈ㔥Ḑ⦃๗ϟˈᔧ⫼᠋ᦤѸᑨ⫼ᯊǃᑨ⫼䖤㸠䖛Ёⱘ䚼㕆㒧ᵘᬍবᯊ˄⬅Ѣ䌘⑤ᬙ䱰ˈᑨ⫼ⱘᶤѯӏࡵ䖕⿏ࠄ݊Ҫ䌘⑤Ϟ䖤㸠˅ҹঞ㔥ḐЎᑨ⫼䗝ᢽֱ䆕ৃ⫼ᗻⱘㄪ⬹ᯊˈ䛑䳔㽕㛑ᇍᑨ⫼ৃ⫼ᑺ䖯㸠䆘ԄDŽᴀ᭛ᑺ䞣ᑨ⫼ৃ⫼ᑺⱘᴀᗱᛇᰃ⫼᳡ࡵѢ㔥Ḑᑨ⫼ⱘ㰮ᢳ㒘㒛ⳌᇍѢᑨ⫼ৃℷᐌᎹⱘὖ⥛Ўᑨ⫼ⱘৃ⫼ᑺˈᑊՓ⫼ὖ⥛ൟ䖥Ԑ䅵ㅫDŽ˄⬹˖ὖ⥛ൟⱘㅔऩಲ乒˅Ўњᓎゟᑨ⫼ৃ⫼ᑺⱘᑺ䞣ൟ佪ˈܜ䳔㽕ᓎゟᑨ⫼ⱘൟDŽ؛䆒ӏࡵ䲚ড়GA {GT,GT, ,GT}ЎϔϾ㔥Ḑᑨ⫼ˈGT(1didm)Ў㔥Ḑᑨ⫼ⱘϔϾӏࡵˈ12miϨӏԩϔϾӏࡵGTϡ㛑Ꮉᯊ˄䖭䞠া㗗㰥⬅Ѣᑨ⫼Փ⫼ⱘ䌘⑤ⱘᬙ䱰䗴៤ⱘiᑨ⫼ϡ㛑Ꮉⱘᚙމˈϡ㗗㰥ᑨ⫼ⱘ᳝⡍ᗻ˅ˈᭈϾᑨ⫼໘Ѣϡ㛑Ꮉ⢊ᗕDŽ؛ᅮGAⱘmϾӏࡵ䇗ᑺࠄkϾ㔥Ḑ㒧⚍Ϟ䖤㸠ˈ↣Ͼ㒧⚍Ϟⱘӏࡵ᭄ЎTNˈikˈᑊϨ↣Ͼӏࡵ⣀ऴՓ⫼㔥Ḑ㒧⚍ݙⱘϔϾ䅵ㅫ䌘⑤DŽTN m¦ii 1 ᳡ࡵѢ㔥Ḑᑨ⫼GAⱘ㰮ᢳ㒘㒛ⱘRBDൟ݊ˈ䳔㽕ᓎゟ᳡ࡵѢᑨ⫼GAⱘ㰮ᢳ㒘㒛ⱘৃ⫼ᑺⱘᑺ䞣ൟˈᴀ᭛䞛⫼њІ㸠ⱘRBDൟ˄RBDൟᰃ㋏㒳ৃ䴴ᑺৃ⫼ᑺߚᵤЁ䖯㸠ᄤ㋏㒳ߦߚⱘ᳔ᐌ⫼ⱘൟ˅ˈབ᠔⼎ˈ݊ЁGNЎ㔥Ḑ㒧⚍ˈCЎ㔥Ḑ㒧⚍GNࠄiiiѦ㘨㔥㒰ⱘ䖲DŽЁⱘ↣ϔϾഫ䛑ᰃϔϾ⣀ゟⱘ㋏㒳ˈ㗙ᰃ㔥㒰䖲ˈ㗙ᰃ㔥Ḑ㒧⚍ˈ⫼f(C)㸼⼎㔥㒰䖲Cⱘᬙ䱰ὖ⥛ˈf(GN)㸼⼎㔥Ḑ㒧⚍ciiriGNⳌᇍѢᑨ⫼ϡ㛑Ꮉⱘὖ⥛DŽi؛ᅮЁⱘ᠔᳝ഫ䛑ⳌᇍѢᑨ⫼㛑ℷᐌᎹᯊˈᑨ⫼ᠡ㛑ℷᐌᎹˈ[141,142]߭⫼ὖ⥛ൟ䅵ㅫᑨ⫼ⱘৃ⫼ᑺˈᑨ⫼ⱘৃ⫼ᑺ㸼⼎Ў˖kkAA(GA) (1 f(C))(1 f(GN))˄2-3˅cirji 1j 1㔥㒰䖲ⱘᬙ䱰ὖ⥛ৃҹḍ㔥Ḑⲥ⌟㋏㒳ⲥ⌟ࠄⱘग़᭄䖯㸠Ԅㅫˈ䗮䖛㔥㒰䖲ⱘ⡍ᗻ˄བᬙ䱰⥛ǃׂ⥛ㄝ˅ᴹ䅵ㅫDŽ㔥Ḑ㒧⚍ⳌᇍѢᑨ⫼ϡৃ⫼ⱘὖ⥛ⱘ䅵ㅫ㽕ᴖϔѯDŽ؛ᅮRTNЎ㔥Ḑ㒧i 6 义- 25 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛⚍GNЁৃ㹿ᑨ⫼Փ⫼ⱘ䅵ㅫ䌘⑤ᘏ᭄㒧ˈ⚍ߚ䜡㒭ᑨ⫼Փ⫼ⱘ䅵ㅫ䌘⑤᭄ⳂЎiRNˈ؛ᅮ↣Ͼ䅵ㅫ䌘⑤াկᑨ⫼ⱘϔϾӏࡵՓ⫼ˈ݊ℷᐌᎹⱘὖ⥛ЎPwˈiiথ⫳ᬙ䱰ⱘὖ⥛ЎPeˈPw Pe 1DŽ⫼RE㸼⼎RNϾ䌘⑤Ё໘ѢℷᐌᎹ⢊iiiiiᗕⱘ䌘⑤᭄ˈf(GN)㸼⼎㒧⚍GNЁℷᐌᎹⱘ䌘⑤᭄ᇣѢTNⱘὖ⥛DŽriiiҸU(GN) 1 f(GN)ˈ߭˖iriU(GN) 1 P{RE TN}iiTN 1ij§·RN jji 1 Pe(1 Pe)¦¨¸iRNj 0©i¹㔥Ḑ㒧⚍ݙϾ䌘⑤ⱘᬙ䱰ὖ⥛Peৃҹ䗮䖛ᇍ㔥Ḑⲥ⌟㋏㒳ⲥ⌟ࠄⱘग़i᭄ⱘ㒳䅵Ԅㅫᕫࠄˈгৃҹ⬅㒧⚍䌘⑤ⱘᦤկ㗙ᦤկ䖭ϔ᭄DŽᕅડᑨ⫼ৃ⫼ᑺⱘ݇䬂㋴ߚᵤ䅵ㅫ㔥Ḑ催ৃ⫼᳡ࡵԧ㋏㒧ᵘḚᶊϔ㠀ᴹ䆆ᦤˈ催䅵ㅫᴎ㋏㒳ৃ⫼ᗻⱘᮍ⊩ϔ㠀ߚЎ⹀ӊᮍ⊩䕃ӊᮍ⊩DŽᇍѢ䅵ㅫ㔥Ḑ䖭⾡䅵ㅫ⦃๗ˈॳ⧚Ϟгৃҹ䞛⫼䖭ϸ⾡ᮍ⊩DŽԚᰃˈབᵰ䞛⫼⹀ӊⱘᮍ⊩䳔㽕Ͼ䌘⑤㒧⚍ᦤկ䌘⑤/䆒ⱘݫԭᴹᦤ催݊ৃ⫼ᑺˈ䖭⾡ᮍ⊩ᅲ⦄Ёᇍ䌘⑤㒧⚍ᦤߎњ䕗催ⱘ㽕∖ˈϾ䅵ㅫ䌘⑤ⱘᢹ᳝㗙ᕜ䲒ফ䖭ѯ㽕∖ˈ᠔ҹ⹀ӊᮍ⊩ᕜ䲒᱂䘡ᅲ⦄DŽℸˈ᳔ড়䗖ⱘᮍ⊩ᰃ䞛⫼䕃ӊᮍ⊩ˈे㔥ḐЁ䯈ӊሖЎ⫼᠋ᦤկ催ৃ⫼᳡ࡵЎˈℸᴀゴ䆒䅵њ䅵ㅫ㔥Ḑ催ৃ⫼᳡ࡵԧ㋏㒧ᵘḚᶊˈབ᠔⼎DŽࡳ㛑㒘ӊ˄⬹˖Ͼࡳ㛑㒘ӊⱘㅔऩҟ㒡˅䅵ㅫ㔥Ḑ催ৃ⫼᳡ࡵԧ㋏㒧ᵘḚᶊ᳡ࡵ䖛ᴀゴᇣ㒧 7 义- 26 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ϝゴ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺϞϔゴ⫼䌘⑤ⱘᬙ䱰ὖ⥛ᴹԄㅫᑨ⫼ⱘৃ⫼ᑺᰃˈ؛ᅮ䌘⑤䰸њথ⫳ᬙ䱰݊Ҫᯊ䯈ᘏৃҹ⒵䎇ᑨ⫼ⱘ䖤㸠䳔㽕Ўˈњㅔ࣪ൟⱘᓎゟ䖛DŽԚᰃ䌘⑤䇗ᑺⱘᯊ䖬ˈ䳔㽕䖯ϔℹ㦋ᕫ䌘⑤ⳌᇍѢᑨ⫼ⱘৃ⫼ᑺֵᙃҹˈℸЎ䗝ᢽ䌘⑤ⱘϔϾձDŽ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺˈेᇚৃ⫼ᑺ催ⱘ䌘⑤ߚ䜡㒭᳝催ৃ⫼䳔∖ⱘ㔥Ḑᑨ⫼ᰃϔ⾡䞡㽕ⱘ㔥Ḑ催ৃ⫼᳡ࡵᴎࠊ㗠ˈ䌘⑤ৃ⫼ᑺֵᙃⱘ㦋পᰃᅲ⦄䴶催ৃ⫼ⱘ䌘⑤䇗ᑺⱘ⸔DŽ⬅Ѣ㔥Ḑᵘᓎ䞣ᓖᵘⱘ䌘⑤ПϞ㔥ˈḐЁ䯈ӊ䲒ҹⳈ㦋ᕫϾᑩሖ䌘⑤ⱘৃ⫼ᑺֵᙃˈা㛑䗮䖛㔥Ḑֵᙃ᳡ࡵᦤկⱘ㔥Ḑ䌘⑤ⲥ⌟ֵᙃ˄ग़ֵᙃ˅ᴹ乘⌟䌘⑤ⱘৃ⫼ᑺDŽᔧࠡᅲ⦄ⱘ㔥Ḑֵᙃ᳡ࡵ䗮䖛㔥Ḑⲥ⌟㋏㒳ᬊ䲚њᑩሖ䌘⑤ⱘ⢊ᗕֵᙃDŽᴀゴѢ㔥Ḑⲥ⌟㋏㒳ᦤկⱘ䌘⑤⢊ᗕֵᙃ㒭ˈߎњ䌘⑤ऎ䯈ৃ⫼ᑺⱘԄㅫᮍ⊩ᑊˈḍ䌘⑤ऎ䯈ৃ⫼ᑺⱘग़ֵᙃ䆒䅵њѢ䍟ⱘ䌘⑤ऎ䯈ৃ⫼ᑺ乘⌟ᮍ⊩DŽℸ⸔Ϟˈ䆒䅵њѢ䌘⑤㛑⫼⿃˄䌘⑤ᗻ㛑ᣛᷛؐ䌘⑤ৃ⫼ᑺⱘЬ⿃ⱘ˅䴶催ৃ⫼ⱘ䌘⑤䇗ᑺㅫ⊩䗮ˈ䖛ᢳᅲ偠ᇍㅫ⊩䖯㸠њ↨䕗ߚᵤDŽⷨお⦄⢊㔥Ḑ⦃๗ϟࡴˈܹ㔥Ḑ⦃๗Ёⱘ䌘⑤ሲѢϡৠⱘ㒘㒛ϾҎ᠔᳝᳝ˈϡৠⱘՓ⫼ᓣㄪ⬹ˈℸᕅડ䌘⑤ৃ⫼ᗻⱘ㋴ህࣙϸϾᮍ䴶䌘˖⑤ⱘ᳝⡍ᗻҹঞ䌘⑤ⱘՓ⫼ᚙމDŽ䌘⑤ⱘ᳝ৃ⫼ᑺϔ㠀䗮䖛ϔϾ㋏㒳ൟᵘ៤㋏㒳ⱘ㒘ӊⱘৃ䴴ᑺᴹᑺ䞣DŽ䌘⑤˄㋏㒳˅Ёⱘ㒘ӊⱘৃ䴴ᑺৃҹ䗮䖛ᇍ⾡᭄⑤ⱘߚᵤᕫࠄDŽ䖭ѯ᭄⑤ࣙᣀϢϾ㒘ӊⱘ⫳ѻॖଚⳌ݇ⱘ乚ඳ᭄ǃࡴ䗳ⱘ⫳ੑ[81]ᳳ⌟䆩㒧ᵰǃ݀݅ৃ㦋ᕫⱘ᭄˄བᴹ㞾ৃ䴴ᗻߚᵤЁᖗⱘ᭄˅ㄝDŽ㔥Ḑ⦃๗ϟˈᅲᯊ㦋ᕫ䖭ѯ䌘⑤ֵᙃ᭄ᑊ䅵ㅫߎ䌘⑤ⱘৃ⫼ᑺ䴲ᐌೄ䲒DŽˈ䌘⑤ⱘᢹ᳝㗙ᇍ䌘⑤ⱘ᪡Փ⫼гⳈᕅડњ㔥ḐЁ䌘⑤ⱘৃ⫼ᑺDŽℸˈ㔥Ḑ⦃๗ϟˈ䌘⑤ৃ⫼ᑺা㛑䗮䖛ᇍ㔥Ḑⲥ⌟㋏㒳ᬊ䲚ⱘ䌘⑤ֵᙃ䖯㸠乘⌟ᴹᕫࠄDŽ㔥Ḑⲥ⌟㋏㒳䋳䋷ᇍ㔥ḐЁⱘ⾡ᅲԧ䖯㸠ⲥ⌟㦋ˈপ⢊ᗕ᭄DŽϾ㔥Ḑ乍ⳂЁᏆ㒣ᅲ⦄њ⾡㔥Ḑⲥ⌟㋏㒳DŽⳂࠡˈѢⲥ⌟᭄ᇍᗻ㛑䖯㸠乘⌟˄ࣙᣀЏᴎᗻ㛑㔥㒰ᗻ㛑ᑊ˅䆒䅵Ⳍᑨⱘ䇗ᑺㅫ⊩ᮍ䴶Ꮖˈ㒣䖯㸠њ䞣ⱘⷨ[82-86]おDŽЎњֱ䆕㔥Ḑⱘᑨ⫼ৃ⫼ᑺˈϡҙ䳔㽕ᇍ䌘⑤ⱘᗻ㛑䖯㸠乘⌟ˈг䳔㽕ᇍ䌘⑤ⱘৃ⫼ᑺ䖯㸠乘⌟DŽ⦄᳝ⱘৃ⫼ᑺ乘⌟ᮍ⊩ˈ䛑ᰃ䴶ϔϾ㋏㒳ⱘˈབ᭛⤂[87]Ё䞛⫼䱣ᴎᬊⲞ㔥ൟᢳϔϾᴎ㕸㋏㒳ⱘ㸠Ўˈ䖯㗠乘⌟㋏㒳ⱘৃ⫼ᑺ䖭ˈᰃϔ⾡㋏㒳ৃ⫼ᑺߚᵤᑺ䞣ⱘᮍ⊩ϡˈᰃѢᅲ䰙ⲥ⌟ⱘ⢊ᗕ᭄䖯㸠ⱘ乘⌟DŽѢ㔥Ḑⲥ⌟㋏㒳ᦤկⱘ䌘⑤ᗻ㛑⢊ᗕⱘֵᙃ᭄䞛ˈ⫼ᶤ⾡ৃ⫼ᑺ乘⌟ᮍ⊩乘⌟㔥Ḑ䌘⑤ⱘৃ⫼ᑺ䖯ˈ㗠ᣛᇐ䌘⑤ߚ䜡ӏࡵ䇗ᑺᰃˈֱ䆕ᑨ⫼ৃ⫼ᑺⱘ䞡㽕ᮍ⊩ПϔDŽϟ䴶ܜҟ㒡ϔϟ㔥Ḑⲥ⌟㋏㒳ⱘⷨおᅲ⦄⦄⢊DŽ㔥Ḑⲥ⌟㋏㒳˄⬹˖ᇍ㔥Ḑⲥ⌟㋏㒳ⱘҟ㒡˄݊Ё䞡⚍ҟ㒡њᴀ᭛ৢ㓁ᎹЁ⫼ࠄⱘ 8 义- 27 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛NWS˅˅Ѣ䍟ⱘ䌘⑤ऎ䯈ৃ⫼ᑺ乘⌟ᮍ⊩˄⬹˖ᴀᇣ㡖Џ㽕ᗱᛇⱘㅔҟ˅ऎ䯈ৃ⫼ᑺ䅵ㅫϔϾ䌘⑤᳡ࡵѢ㔥Ḑᑨ⫼ⱘ䖛Ё᠔໘ⱘ⢊ᗕৃҹ⫼㸼⼎ߎᴹDŽTTTfaildegnormal ᑨ⫼䖤㸠ᳳ䯈䌘⑤ⱘ⢊ᗕབ᠔⼎ˈ䌘⑤⫳ੑᳳЁ᳡ࡵѢ㔥Ḑᑨ⫼ⱘϔϾᯊ䯈ऎ䯈ৃҹ㹿ߚЎ3䚼ߚ˖䌘⑤ᬙ䱰ˈᘏⱘᣕ㓁ᯊ䯈ᰃT˗⬅Ѣᗻ㛑䰡Ԣ㗠ϡ㛑ᬃᣕᑨ⫼䖤㸠ˈᘏfailⱘᣕ㓁ᯊ䯈ᰃT˗䌘⑤໘Ѣℷᐌ⢊ᗕˈ㛑ᬃᣕᑨ⫼ℷᐌ䖤㸠ˈᘏⱘᣕ㓁ᯊ䯈degᰃTDŽ䙷М䖭Ͼᯊ䯈ऎ䯈ݙˈ䌘⑤ⱘৃ⫼ᑺৃҹ⫼݀ᓣ3-1ᴹ䅵ㅫDŽnormalTnormalA(res,app) 3-1T T TfaildegnormalѢϞ䴶ⱘऎ䯈ৃ⫼ᑺԄㅫ݀ᓣᴀˈ᭛ᡞᇍ䌘⑤ⲥ⌟ⱘग़᭄∛㘮៤ϔ㋏߫ⱘᯊ䯈ऎ䯈ˈ✊ৢ䅵ㅫ↣Ͼऎ䯈ݙ䌘⑤ⱘৃ⫼ᑺDŽ䖯㗠ˈḍ䌘⑤ⱘग़ৃ⫼ᑺᑣ߫ˈ乘⌟ᴹϔϾᯊ䯈ऎ䯈ݙ䌘⑤ⱘৃ⫼ᑺDŽ؛ᅮTᰃᑨ⫼ⱘ乘ᳳ䖤㸠ᯊ䯈ˈህҹℸЎऎ䯈ⱘᯊ䯈䭓ᑺDŽ؛ᅮTᰃॳྟei᭄⫳៤ⱘᯊ䯈䯈䱨ˈᇍѢNWS㋏㒳㗠㿔ˈ䖭ϔᯊ䯈䯈䱨ᰃ10⾦DŽ䙷М∛㘮៤ϔϾᯊ䯈䯈䱨ⱘⲥ⌟᭄⚍ⱘ᭄Ⳃ˄K˅ৃҹ⫼ϟ䴶ⱘ݀ᓣ䅵ㅫ˖ªºTeK 3-2«»T«i»؛ᅮᇍϔϾ䌘⑤ⱘग़ⲥ⌟᭄ᑣ߫Ў:H h,h,...,h˗12nnªº䙷Мˈৃҹᡞ䖭ϔⲥ⌟᭄ᑣ߫∛㘮៤MϾऎ䯈ˈM DŽ«»K«»ᇍѢϔϾࣙKϾⲥ⌟᭄⚍ⱘऎ䯈lˈབh,h, ˈ(1dldM)ˈḍ,hll 1l k 1Ϟ䴶ⱘৃ⫼ᑺ䅵ㅫൟৃҹ䅵ㅫᯊ䯈ऎ䯈lݙ䌘⑤ⱘৃ⫼ᑺDŽ佪ܜˈᅮНབϟⱘߑ᭄˖Num(h,h, ,h)˖䌘⑤໘Ѣᬙ䱰⢊ᗕⱘⲥ⌟᭄⚍ⱘ᭄Ⳃ˗failll 1l k 1Num(h,h, ,h)˖䌘⑤໘Ѣᗻ㛑䰡Ԣ⢊ᗕⱘⲥ⌟᭄⚍ⱘ᭄Ⳃ˗degll 1l k 1Num(h,h, ,h)˖䌘⑤໘Ѣℷᐌ⢊ᗕⱘⲥ⌟᭄⚍ⱘ᭄ⳂDŽnomalll 1l k 1߭ˈऎ䯈lݙ䌘⑤ⱘৃ⫼ᑺԄ䅵ؐЎ˖ 9 义- 28 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛Num(h,h, ,h)normalll 1l k 1A ˄3-3˅lNum(h,h, ,h)Num(h,h,,h)Num(h,h, ,h)failll 1l k 1degll 1l k 1normalll 1l k Ѣ䍟ⱘ䌘⑤ऎ䯈ৃ⫼ᑺ乘⌟ऎ䯈ৃ⫼ᑺ乘⌟ⱘৃ㸠ᗻ䅵ㅫ㔥Ḑ⦃๗ϟ↣ˈϾ㔥Ḑ䌘⑤㒧⚍䛑᳝㞾Ꮕ⣀ゟⱘㅵ⧚Փ⫼ᓣ䗮ˈᐌ᳡ࡵѢ㔥Ḑ⫼᠋ⱘৠᯊгˈ᳡ࡵѢᴀഄⱘ⫼᠋㗠ˈϨᴀഄⱘㅵ⧚ਬ⫼᠋ᇍ㒧⚍䌘⑤᳝䕗催ⱘࠊᴗ䰤DŽ䖭ḋˈህ᳝⾡㋴ᕅડⴔ䌘⑤ⱘऎ䯈ৃ⫼ᑺˈࣙᣀ䌘⑤˄᮴䆎Џᴎ䖬ᰃ㔥㒰˅ⱘ⠽⧚⡍ᗻ˄Փ⫼ⱘ఼ӊǃ䆒ǃ㋏㒳䕃ӊǃ˅⫼᠋䖤㸠ⱘᑨ⫼ǃㅵ⧚ਬⱘ㓈ᡸ᪡ㄝㄝDŽ䖭⾡ᴖ㋏㒳ⱘϔϾൟ⡍ᕕህᰃ㸼⦄ߎњ㞾ⳌԐⱘ⡍ᕕˈ㞾ⳌԐ䗮ᐌᛣੇⴔϡৃ乘⌟DŽ㱑✊ˈҢ䭓ᳳᴹⳟˈ䌘⑤ⱘᗻ㛑㸼⦄ߎ㞾ⳌԐⱘ⡍ᕕԚˈᰃϔѯⷨおᎹ㸼ᯢ䌘ˈ⑤ⱘᗻ㛑ⷁᳳЁᳳⱘᯊ䯈[92,93]㣗ೈݙᰃᯊ䯈Ⳍ݇ⱘᇍˈ䌘⑤ᗻ㛑䖯㸠Ёⷁᳳⱘ乘⌟ᬜᵰᕜད䖭ˈ㸼ᯢѢग़ֵᙃᇍ䌘⑤ᗻ㛑䖯㸠Ёⷁᳳⱘ乘⌟ᰃৃ㸠ⱘDŽҢϞ䴶ᇍ䌘⑤ऎ䯈ৃ⫼ᑺⱘ䅵ㅫൟᮍ⊩ৃҹⳟߎ䌘ˈ⑤ⱘऎ䯈ৃ⫼ᑺг᳝䖭ϔ⡍ᕕDŽ㗠Ѣग़᭄ᇍ䌘⑤ⱘऎ䯈ৃ⫼ᑺ䖯㸠乘⌟гᰃৃ㸠ⱘDŽ乘⌟఼乘⌟ㅫ⊩˄⬹˖䞛⫼ⱘ䗮⫼ⱘѢ䍟ⱘ乘⌟ㅫ⊩˅䴶催ৃ⫼ⱘ䌘⑤䇗ᑺ䅵ㅫ㔥Ḑ⦃๗ϟ䌘ˈ⑤䇗ᑺᰃᑨ⫼ⱘᗻ㛑ৃ⫼ᑺⱘއᅮ㋴ПϔDŽЎњ[82-86]ᦤ催ᑨ⫼ⱘᗻ㛑Ꮖˈ㒣᳝ⳌᔧⱘᎹⷨお䌘⑤ᗻ㛑ⱘ乘⌟ᮍ⊩ࣙˈᣀЏᴎᗻ㛑乘⌟㔥㒰ᗻ㛑乘⌟ᑊˈϨ䆒䅵њ⾡䴶催ᗻ㛑ⱘ䌘⑤䇗ᑺㅫ⊩DŽ䖭ѯᗻ㛑乘⌟াᰃ乘⌟䕗䖥ⱘϔ↉ᯊ䯈ݙⱘᗻ㛑ˈ՟བՓ⫼NWS䖯㸠乘⌟ৃҹᕜདഄ[84]乘⌟10⾦䩳ݙⱘ㋏㒳ᗻ㛑ˈԚᰃϡ㛑ᕜདഄ乘⌟ᑨ⫼乘ᳳ䖤㸠ᯊ䯈䭓ᑺݙⱘ㋏㒳ᗻ㛑DŽᔧ✊ˈ䖭ϔᗻ㛑乘⌟ৃҹЎ䗝ᢽᗻ㛑⒵䎇ᑨ⫼㽕∖ⱘ䌘⑤ᦤկখ㗗DŽ㗠ℷབᴀ᭛ࠡ䴶᠔䅼䆎ⱘˈ䌘⑤䇗ᑺⱘᯊϡҙ㽕ֱ䆕ᑨ⫼ⱘᗻ㛑гˈ㽕ֱ䆕ᑨ⫼ⱘৃ⫼ᑺˈे䳔㽕ⷨお䴶催ৃ⫼ⱘ䌘⑤䇗ᑺᮍ⊩DŽ䅵ㅫ㔥Ḑ⦃๗ϟ⫼ˈ᠋ᦤѸᑨ⫼ⱘৠᯊ䗮ᐌ㽕ᦤѸϔϾϮ㛮ᴀᴹᦣ䗄ᑨ⫼ⱘ⡍ᗻᑨ⫼ⱘ䌘⑤䳔∖ᑨˈ⫼ⱘ䌘⑤䳔∖ࣙᣀ䳔㽕ⱘ䅵ㅫ㒧⚍᭄ǃ໘⧚఼ⱘԧ㋏㒧ᵘǃ䳔㽕ⱘݙᄬᆍ䞣CPU䋳䕑䰤ࠊㄝㄝDŽ䴶催ᗻ㛑ⱘ䌘⑤䇗ᑺ䖛Ёˈ佪ܜ㽕䗝ᢽ⒵䎇ᑨ⫼ԧ㋏㒧ᵘ㽕∖ⱘ䌘⑤˄䅵ㅫ㔥Ḑ⦃๗ϟˈ㽕䗮䖛ᶹ䆶㔥Ḑֵᙃ᳡ࡵᠡ㛑ᅲ⦄˅˗✊ৢ㽕ᕫࠄⱘ䌘⑤߫㸼Ё䗝ᢽ㛑Փᑨ⫼㦋ᕫ᳔催ᗻ㛑ⱘ䌘⑤ˈ䖭ϔ䗝ᢽ䖛䳔㽕ձᇍ䌘⑤ᗻ㛑ⱘ乘⌟DŽ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺϡҙ㽕㗗㰥䌘⑤ⱘᗻ㛑㋴гˈ㽕㗗㰥䌘⑤ⱘৃ⫼ᑺ㋴ˈⳂᷛᰃֱ䆕ᑨ⫼ⱘᗻ㛑ⱘৠᯊˈг㽕ֱ䆕ᑨ⫼ⱘৃ⫼ᑺDŽѢ䌘⑤ৃ⫼ᑺ乘⌟ⱘ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺⱘ䖛བϟ˖1.䗝ᢽ㛑⒵䎇ᑨ⫼ԧ㋏㒧ᵘ㽕∖ⱘ䌘⑤˗2.ᑺ䞣䖭ѯ䌘⑤ⱘᔧࠡᗻ㛑ˈབCPU䋳䕑ǃ㔥㒰ᏺᆑᓊ䖳ㄝˈᑊᑨ⫼ 10 义- 29 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛䌘⑤ᗻ㛑乘⌟ㅫ⊩ᴹ乘⌟䌘⑤ᴹϔ↉ᯊ䯈ݙⱘᗻ㛑ˈ䗝ᢽ⒵䎇ᑨ⫼ᗻ㛑㽕∖ⱘ䌘⑤˗3.乘⌟Ϟϔℹ䗝ߎⱘ䌘⑤ᴹᑨ⫼乘ᳳ䖤㸠ᯊ䯈ݙⱘৃ⫼ᑺ4.ᑨ⫼䴶催ৃ⫼ⱘ䌘⑤䇗ᑺㅫ⊩䗝ᢽ䌘⑤ߚ䜡㒭ᑨ⫼DŽѢPPAⱘ䌘⑤䇗ᑺㅫ⊩ᅮН䌘⑤㛑⫼⿃˄PPA˅؛ᅮ䌘⑤iⱘᗻ㛑ऎ䯈ৃ⫼ᑺৃҹ⫼ϔϾѠܗ㒘 p,a!ᴹ㸼⼎DŽ߭䌘⑤iiiⱘ㛑⫼⿃ᅮНЎ˖PPA puaˈᰃ乘⌟ⱘ䌘⑤ᗻ㛑ᣛᷛؐ乘⌟ⱘ䌘⑤ऎ䯈ৃiii⫼ᑺⱘЬ⿃ˈབ᠔⼎DŽu3. 2䌘⑤㛑⫼⿃ⱘᅮН[ㅫ⊩] Input˖䌘⑤䲚ড়R {r,r, ,r}ˈ݊Ёⱘ䌘⑤᭄Ўmˈ䌘⑤ⱘᗻ㛑ৃ⫼ᑺ12mⱘ乘⌟ؐᑣ߫Ў{ p,a!, p,a!, , p,a!}ˈ㽕䗝ᢽߎⱘ䌘⑤1122mm᭄Ўk˗Ouput˖䇗ᑺ㒭ᑨ⫼ⱘkϾ䌘⑤Begin˖1ˊᇍ䌘⑤䲚ড়R,佪ܜҢЁ䗝ᢽߎ乘⌟ᗻ㛑㛑⒵䎇ᑨ⫼㽕∖ⱘ䌘⑤ˈᵘ៤ϔϾ䌘⑤䲚R'ˈ݊Ёࣙⱘ䌘⑤᭄Ўnˈ؛ᅮmtntkDŽ2ˊᇍR'Ёⱘ↣ϔϾ䌘⑤iˈ䅵ㅫ䆹䌘⑤ⱘPPA,PPA pua˗iii3ˊḍ䌘⑤ⱘPPAˈᇍnϾ䌘⑤ᣝ䰡ᑣᥦᑣ˗4ˊ䗝ᢽࠡkϾ䌘⑤Ўߚ䜡㒭ᑨ⫼Փ⫼ⱘ䌘⑤˗End.Ѣ䌘⑤㛑⫼⿃ⱘ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺㅫ⊩䴶催ৃ⫼ⱘ䌘⑤䇗ᑺㅫ⊩ⱘⳂᷛᰃḍᇍ䌘⑤ᗻ㛑䌘⑤ऎ䯈ৃ⫼ᑺⱘ乘⌟䗝ˈᢽߎ᮶㛑⒵䎇ᑨ⫼ⱘᗻ㛑䳔∖জ㛑⒵䎇ᑨ⫼ৃ⫼ᑺ㽕∖ⱘ䌘⑤ߚ䜡㒭ᑨ 11 义- 30 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛⫼ˈЎℸᴀ᭛䆒䅵њѢ㛑⫼⿃ⱘ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺㅫ⊩˄ㅫ⊩˅ˈབ᠔⼎DŽৃ㾕ˈ䖭ϔѢ㛑⫼⿃ⱘ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺㅫ⊩ᰃ佪ܜ⒵䎇ᑨ⫼ⱘᗻ㛑㽕∖˄؛ᅮᇍᗻ㛑ⱘ乘⌟᳝䕗དⱘޚ⹂ᗻ˅ⱘࠡᦤϟˈݡḍ㛑⫼⿃䗝ᢽ䌘⑤DŽᢳ偠䆕ᢳᮍ⊩˄⬹˖ᢳᮍ⊩ⱘԧ㒚㡖˅䌘⑤䇗ᑺㄪ⬹ᢳᢳ䆩偠Ёˈ↨䕗њབϟϝ⾡䌘⑤䇗ᑺㄪ⬹˖1ˊ䱣ᴎ䌘⑤䇗ᑺ˄Randomˈ RDDŽ˅Ң᠔᳝ৃ⫼ⱘCPUѢ20%㒧⚍Ё䱣ᴎ䗝ᢽ4Ͼ㒧⚍䇗ᑺ㒭ᑨ⫼ⱘ4ϾӏࡵDŽ2ˊ催ᗻ㛑Ӭܜ˄High Performance Firstˈ HPFDŽ˅䗝ᢽ乘⌟ⱘৃ⫼CPUⱒߚ↨᳔催ⱘ4Ͼ㒧⚍䇗ᑺ㒭ᑨ⫼ⱘ4ϾӏࡵDŽ3ˊ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺ˄High Availability Oriented, HAODŽ˅Փ⫼Ϟϔ㡖ЁѢᗻ㛑ৃ⫼ᑺݙ⿃ⱘ催ৃ⫼䇗ᑺㅫ⊩䗝ᢽ4Ͼ㒧⚍䇗ᑺ㒭ᑨ⫼ⱘ4ϾӏࡵDŽᅲ偠㒧ᵰᴀゴᇣ㒧 12 义- 31 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ಯゴӑ䌘⑤䗝ᢽ䌘⑤ӑㄪ⬹ᦤ催㔥Ḑᑨ⫼ৃ⫼ᑺⱘϔϾ䞡㽕䗨ᕘᰃᦤկ䌘⑤ᬙ䱰ৢⱘӏࡵᖿ䗳ᘶᴎࠊ䌘ˈ⑤ӑᰃᬃᣕᖿ䗳ᬙ䱰ᘶⱘӴ㒳ᮍ⊩ˈ䅵ㅫ㔥ḐЁ䌘⑤ӑҡᰃᦤ催ᑨ⫼ৃ⫼ᑺⱘ䞡㽕↉DŽ䅵ㅫ㔥ḐЁ䌘ˈ⑤ӑা㛑䗮䖛Ё䯈ӊሖᇍ䌘⑤䖯㸠乘⬭ᴹᅲ⦄ϔˈѯⷨおҎਬᏆ㒣ᅲ⦄њ䅵ㅫ㔥Ḑ⦃๗ϟⱘ䌘⑤乘⬭ᴎࠊDŽ⬅Ѣ䅵ㅫ㔥ḐЁ∛㘮њ䞣ᓖᵘⱘ䌘⑤བˈԩЎᑨ⫼䗝ᢽӑ䌘⑤ҹঞབԩ䖯㸠䌘⑤ӑህ៤Ў䴲ᐌ݇䬂ⱘ䯂乬DŽӑ䌘⑤䗝ᢽ㽕㾷އϸϾᮍ䴶ⱘ䯂乬ˈ݊ϔ䗝ᢽᇥӑ䌘⑤ˈ݊Ѡ䗝ᢽાѯ䌘⑤Ўӑ䌘⑤˗ϔᮍ䴶ˈ⬅Ѣӑ䌘⑤াᰃ䌘⑤ᬙ䱰ⱘᯊᠡ㹿Փ⫼ᑊˈϨϡৠⱘᑨ⫼᳝ϡৠⱘৃ⫼ᑺ䳔∖ˈℸ䳔㽕ḍ乘⬭ӑ䌘⑤ⱘ᭄䞣ǃᯊᴎ䆒䅵⾡䌘⑤ӑㄪ⬹ˈ⒵䎇ᬙ䱰ӏࡵᘶ㽕∖ⱘৠᯊˈᦤ催䅵ㅫ㔥Ḑ䌘⑤ⱘ߽⫼⥛ˈгЎ㔥Ḑ⫼᠋ᦤկ⾡䌘⑤ӑ᳡ࡵ㑻߿DŽᴀゴ佪ܜҟ㒡њ䅵ㅫ㔥Ḑ䌘⑤ㅵ⧚ⱘԧ㋏㒧ᵘൟ䌘⑤乘⬭ⱘᅲ⦄ᴎࠊˈ✊ৢᦤߎњѢ䌘⑤㘮䲚ⱘӑ䌘⑤䗝ᢽᮍ⊩Пˈৢ䆒䅵њ⾡䌘⑤ӑㄪ⬹ᑊ䖯㸠њߚᵤ䆘Ӌ᳔ˈৢ䅼䆎њ䅵ㅫ㔥Ḑ䌘⑤ӑ᳡ࡵ㋏㒳ⱘ㒧ᵘࡳ㛑ᑊ䆒䅵њ䌘⑤ӑㄪ⬹ᓩ᪢DŽ䅵ㅫ㔥Ḑⱘ䌘⑤ㅵ⧚˄⬹˖ᇍ䌘⑤ㅵ⧚ൟ⡍߿ᰃᴀ᭛⫼ࠄⱘሖᓣ䌘⑤ㅵ⧚ൟⱘҟ㒡˅䌘⑤ӑⱘᅲ⦄ᴎࠊ䅵ㅫ㔥Ḑ䌘⑤ӑⱘॳ⧚䌘⑤乘⬭ⱘᅲ⦄üüGARA㋏㒳˄⬹˖ᇍGARA㋏㒳ⱘҟ㒡ߚᵤ˅Ѣ䌘⑤㘮䲚ⱘ䅵ㅫ㔥Ḑӑ䌘⑤䗝ᢽ⏅ܹߚᵤњ䅵ㅫ㔥Ḑ䌘⑤ߚ䜡䇗ᑺ䖛ⱘ⸔ПϞᴀˈ᭛ᦤߎњѢ䌘⑤㘮䲚ⱘӑ䌘⑤䗝ᢽㅫ⊩䆹ˈㅫ⊩䞛⫼њߚ㗠⊏ПⱘᗱᛇᇚˈЎᑨ⫼ߚ䜡ⱘ䌘⑤ᣝ䌘⑤П䯈ᰃ৺ᄬৃ᳓ҷ݇㋏ߚ៤Ͼ䌘⑤䲚ড়ৠˈᯊЎњޣᇥ∖㾷ⱘᴖᑺᣝˈ✻ϔᅮⱘ䯔ؐᇚ䌘⑤᭄Ⳃⱘ䌘⑤䲚ড়䖯ϔℹߚࡆ៤Ͼ䌘⑤䲚ড়✊ˈৢ䩜ᇍϾ䌘⑤䲚ড়䗝ᢽӑ䌘⑤DŽӑ䌘⑤䗝ᢽⱘ䖛Ё佪ˈܜ⫼䞣࣪ⱘৃ⫼ᑺᣛᷛ⹂ᅮӑ䌘⑤ⱘ᭄䞣✊˗ৢ⫼䗮ֵᢧᠥ⒵䎇ᑺ䖭ϔ䞣࣪ᣛᷛḍˈ䗝ӑ䌘⑤ᇍᑨ⫼ⱘ䗮ֵᗻ㛑ⱘ⒵䎇ᑺᴹ䗝ᅮӑ䌘⑤DŽ䌘⑤㘮䲚ⱘᴀॳ⧚㘮䲚ᮍ⊩ⱘᴀᗱᛇᰃḍᅲԧⱘ⡍ᕕҹঞᅲԧ䯈ⱘ݇㋏ᇚϔ㒘ᅲԧߚ៤Ͼ㒘ˈ↣Ͼ㒘ݙⱘᅲԧⱘ⡍ᕕⳌ䖥DŽᇍѢ䅵ㅫ㔥Ḑᑨ⫼Փ⫼ⱘ䞣䅵ㅫ䌘⑤ˈгৃҹ䞛⫼䖭⾡ᗱᛇᴹᡞߚ䜡㒭ᑨ⫼Փ⫼ⱘ䌘⑤㘮䲚៤Ͼ䌘⑤䲚ড়DŽ 13 义- 32 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛䌘⑤䯈݇㋏ⱘᅮН؛ᅮߚ䜡㒭ᑨ⫼Փ⫼ⱘ䌘⑤䲚ড়ЎR(GA) {r,r, ,r}ᇍˈ䖭ѯ䅵ㅫ䌘⑤c12mᅮНབϟ䌘⑤䯈ⱘ݇㋏˖ᅮН䌘⑤䯈ⱘৃ᳓ҷ݇㋏བ˖ᵰ䖤㸠䌘⑤rϞⱘӏࡵг㛑䖤㸠䌘i⑤rϞˈᑊϨ㛑⒵䎇ᗻ㛑˄䖭䞠ⱘᗻ㛑㽕∖ᰃᣛ䅵ㅫᗻ㛑˅㽕∖ˈ߭⿄䌘⑤rkkৃ᳓ҷ䌘⑤rˈ䆄ЎSub r,r!DŽiikᅮН 䌘⑤䯈ⱘѦ㸹݇㋏˖ϸϾ䌘⑤rrˈབᵰSub r,r!ϨikikSub r,r!ˈ߭⿄䌘⑤r䌘⑤rЎѦ㸹䌘⑤ˈ䆄ЎSim r,r!DŽkikiikᅮН ᇍㄝ䌘⑤䲚ড়˖䌘⑤䲚ড়Rˈབᵰ r,rRˈ䛑᳝Sim r,r!ˈknmknm䙷М⿄䌘⑤䲚ড়RЎᇍㄝ䌘⑤䲚ড়DŽkᅮН ᇍㄝ䌘⑤䲚ড়䯈ⱘѦ㸹݇㋏ᇍ˖ㄝ䌘⑤䲚ড়RRབˈᵰ rRˈikni rRˈ᳝Sub r,r!ϨSub r,r!ˈ߭⿄RR䯈᳝Ѧ㸹݇㋏ˈ䆄ЎmknmmnkiSim R,R!DŽ䌘⑤䯈Ѧ㸹݇㋏ⱘ߸ᅮᗻ䋼䌘⑤П䯈ⱘѦ㸹݇㋏߸ᅮⱘܙ㽕ᴵӊᰃϸϾ䌘⑤Ϟⱘᑨ⫼ⱘӏࡵѸᤶৢҡ㛑⒵䎇ᑨ⫼ⱘᗻ㛑㽕∖DŽԚᰃབᵰ䞛⫼䖭⾡ᮍᓣ߸ᅮᯊ䯈ᓔ䫔Ӯ䴲ᐌˈϔᮍ䴶⬅Ѣ⬅Ѣ㔥ḐЁⱘ䌘⑤᳝㘮䲚⡍ᗻ˄ϔϾㅵ⧚ඳݙⱘ䌘⑤䗮ᐌᰃৠᵘⱘ˅ˈϨ䌘⑤䇗ᑺ䗮ᐌӬܜՓ⫼ϔϾඳݙ䌘⑤ˈѢ䖭ϸϾॳˈৃҹ㒧ড়ҹϟϸϾᮍ䴶ࡴ䗳߸ᅮ˖z䌘⑤ⱘ⠽⧚⡍ᗻ⹀ӊ䕃ӊᑇৄⳌৠᅠܼⳌৠϨЎᑨ⫼ⱘӏࡵᦤկⱘᗻ㛑гⳌৠⱘϸϾ䌘⑤П䯈᳝Ѧ㸹݇㋏DŽ՟བབˈᵰϸৄ⹀ӊԧ㋏㒧ᵘᅠܼⳌৠⱘLinuxᎹキৃҹᦤկЎᶤϾᑨ⫼ᦤկⳌৠᗻ㛑˄CPUᯊ䯈ǃݙᄬᆍ䞣ㄝ˅ˈ䙷М䖭ϸϾ䌘⑤ህᰃ᳝Ѧ㸹݇㋏ⱘ䌘⑤DŽzᑨ⫼ⱘ⡍ᗻབᵰ䖤㸠ϸϾ䌘⑤ϞⱘӏࡵৃҹѸᤶᑊˈϨᇍᑨ⫼ⱘᗻ㛑≵᳝ᕅડ䙷ˈМ䖭ϸϾ䌘⑤䯈᳝Ѧ㸹݇㋏DŽ՟བˈབᵰ䖤㸠ϔৄWindowsᎹキϞⱘJavaӏࡵৃҹҹৠḋⱘᗻ㛑䖤 14 义- 33 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛㸠ϔৄLinuxᎹキϞˈ䙷М䖭ϸৄᎹキᇍ䖭ϾJavaӏࡵ㗠㿔ˈህᰃ᳝Ѧ㸹݇㋏ⱘ䌘⑤DŽḍϞ䴶ⱘᅮНˈᰒ✊᳝བϟᗻ䋼㒧䆎˖ᗻ䋼 Ѧ㸹݇㋏᳝㞾ডᗻǃӴ䗦ᗻDŽ㒧䆎 1 བᵰ䌘⑤rৃҹЎ䌘⑤rⱘӑ䌘⑤ˈ䙷Мᖙ᳝Sub r,r!DŽkiik㒧䆎2ᇍㄝ䌘⑤䲚ড়ЁⱘӏϔϔϾ䌘⑤ⱘӑ䌘⑤䛑ৃҹЎ䲚ড়Ё݊Ҫ䌘⑤ⱘӑ䌘⑤DŽ㒧䆎3བᵰᇍㄝ䌘⑤䲚ড়RR䯈᳝Ѧ㸹݇㋏ˈ䙷М䌘⑤䲚ড়R RЎikikϔϾᇍㄝ䌘⑤䲚ড়DŽ䌘⑤㘮䲚ⱘᅲ⦄ҢϞ䴶ⱘ㒧䆎2ৃ㾕ϔˈϾᇍㄝ䌘⑤䲚ড়Ёⱘ䌘⑤ৃҹ݅ѿӑ䌘⑤DŽℸˈЎᑨ⫼䗝ᢽӑ䌘⑤ᯊˈৃҹܜᡞᑨ⫼Փ⫼ⱘ䌘⑤㘮䲚៤Ͼᇍㄝ䌘⑤䲚ড়ˈ✊ৢЎ↣Ͼᇍㄝ䌘⑤䲚ড়䗝ᢽӑ䌘⑤DŽ䖭ḋϔᮍ䴶ৃҹޣᇥᴖᑺˈϔᮍ䴶гᯧѢ⹂ᅮӑ݇㋏DŽᴀ᭛䗮䖛ඳݙ㘮䲚ඳ䯈㘮䲚ϸℹˈᅲ⦄њ䖭ϔⳂᷛDŽඳݙ㘮䲚Ўᑨ⫼䗝ᢽⱘ᠔᳝䌘⑤Ёᕜˈৃ㛑᳝Ⳍᔧ᭄䞣ⱘ䌘⑤ሲѢৠϔϾㅵ⧚ඳབˈϔϾᴎ㕸Ёߚ䜡㒭ᑨ⫼ⱘ᠔᳝໘⧚㒧⚍ህᰃሲѢৠϔϾㅵ⧚ඳⱘ䅵ㅫ䌘⑤DŽЎϔϾ䅵ㅫ㔥Ḑᑨ⫼GAߚ䜡ⱘ᠔᳝㔥Ḑ䌘⑤ᵘ៤њϔϾ䌘⑤䲚ড়ˈৃҹ㸼R(GA) {r1,r2, ,rm}⼎Ўˈ݊ЁⱘmϾ䌘⑤ᴹ㞾kϾㅵ⧚ඳˈ㒣䖛ᣝㅵ⧚ඳ㘮䲚ҹৢˈGAⱘ䌘⑤䲚ড়ৃҹ㸼⼎ЎR(GA) {R,R, ,R}ˈ݊ЁRЎᴹ12kiNum(R)㞾ㅵ⧚ඳiⱘ䌘⑤䲚ড়DŽᅮНЎ䌘⑤䲚ড়RЁⱘ䌘⑤᭄ˈ߭ᑨ᳝˖kNum(R) m¦ii 1ሲѢৠϔϾㅵ⧚ඳⱘ䌘⑤䗮ᐌᰃৠᵘⱘˈ݊ᗻ㛑ǃ㒧ᵘǃᬙ䱰⥛कߚⳌ䖥ˈ㗠Ϩ⬅ৠϔ䌘⑤ㅵ⧚㋏㒳ㅵ⧚ˈ䞡㽕ⱘᰃ䗮ᐌ䚼㕆䖭ѯ䌘⑤Ϟⱘᑨ⫼ⱘӏࡵⱘᗻ㛑䳔∖гⳌৠDŽᴀ᭛Ё؛ᅮ↣Ͼㅵ⧚ඳЁⱘ䌘⑤ⳌᇍѢᑨ⫼ⱘӏࡵ䛑ᰃৠᵘⱘˈডПˈৃҹᡞඳЁⱘ䌘⑤ߚ៤ϾⳌᇍѢᑨ⫼ⱘӏࡵᰃৠᵘ䌘⑤ⱘ䲚ড়ˈ↣Ͼ䲚ড়ৃҹⳟ៤ϔϾ⣀ゟⱘඳDŽඳݙ㘮䲚ⱘᅲ⦄↨䕗ㅔऩ↣ˈϾ䅵ㅫ㔥ḐЁⱘ䌘⑤䛑᳝ଃϔⱘᷛ䆚㗠ˈϨ䌘⑤㒘㒛៤ሖ㒧ᵘ䖭ˈḋҢЎᑨ⫼ߚ䜡ⱘ䌘⑤߫㸼ህৃҹ߸ᮁ䙷ѯ䌘⑤ሲѢϔϾㅵ⧚ඳDŽ⬅Ѣ↣Ͼㅵ⧚ඳ䛑ᰃϔϾᇍㄝ䌘⑤䲚ড়ˈৃҹҢㅵ⧚ඳߎথ㗗㰥䌘⑤ⱘӑDŽԚᰃˈ⬅Ѣඳ䯈ৃ㛑᳝Ѧ㸹݇㋏ˈϡৠㅵ⧚ඳЁⱘ䌘⑤гৃ㛑݅ѿӑ䌘⑤ˈℸ䳔㽕ᡞ᳝Ѧ㸹݇㋏ⱘඳ㘮䲚䍋ᴹˈ㗗㰥ӑ䌘⑤ⱘ䗝ᢽDŽ 15 义- 34 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ѢѦ㸹݇㋏ⱘඳ䯈㘮䲚ᴀ᭛⫼ⶽ䰉Dᴹ㸼⼎nϾඳП䯈ⱘѦ㸹݇㋏བˈᵰ䌘⑤䲚ড়RR᳝Ѧ㸹nunki݇㋏Sim R,R!ˈ߭D(i,k) 1ˈডПˈD(i,k) 0DŽikᴀ᭛ᡞ⬅Ͼ㘮䲚ϔ䍋ⱘඳ⿄ЎϔϾ䌘⑤䍙䲚⫼ˈRSᴹ㸼⼎DŽ㒭ߎњѢѦ㸹݇㋏ⱘඳ䯈䌘⑤㘮䲚ㅫ⊩(ㅫ⊩)DŽㅫ⊩ ˖ඳ䲚ড়R {R,R, ,R}ˈඳ䯈Ѧ㸹݇㋏ⶽ䰉D˗12nnunutut˖䌘⑤䍙䲚ⱘ䲚ড়R {RS,RS, ,RS}˗12kBi˖1ˊi 1ˈRm R˗12ˊᇚϢⶽ䰉DЁRm᠔ⱘ㸠߫Ёⱘ䴲䳊ܗ㋴ᇍᑨⱘඳࡴܹࠄRSiЁ˗3ˊᇚϢRSЁⱘ᠔᳝ඳ᠔ⱘ㸠߫Ёⱘ䴲䳊ܗ㋴ᇍᑨⱘඳࡴܹࠄRSiiЁ˗4ˊ䞡3ℹˈⳈࠄRSϡݡࡴ˗i5ˊR R RS˗བᵰR )ˈ䗔ߎ˗৺߭ˈӏপRЁⱘϔϾඳRˈikRm Rˈi i 1ˈ䕀ࠄ2ℹDŽkdDŽѢѦ㸹݇㋏ⱘඳ䯈䌘⑤㘮䲚ㅫ⊩䌘⑤䍙䲚ⱘߚࡆㅫ⊩ Iut˖䌘⑤䍙䲚RS {R,R, ,R}ˈ䌘⑤᭄䯔ؐN˗12n'''' utut˖䌘⑤䍙䲚RS {R,R, ,R}˗12k Bi˖ 1ˊi˗' 2ˊབᵰRS )ˈ䗔ߎ˗৺߭ii1ˈR )˗i''' 3ˊR Max(RS)ˈབᵰNum(R)tNˈ߭RS RS Rˈ䕀2ℹ˗iii'' 4ˊR R Min(RS)ˈRS RS Min(RS)˗ii5ˊབᵰRS )ˈ䗔ߎ˗'6ˊབᵰNum(R)tNˈ䕀2ℹˈ৺߭䕀4ℹ˗i dDŽ䌘⑤䍙㑻ⱘߚࡆㅫ⊩ 16 义- 35 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ඳ䯈㘮䲚ᅠ៤ҹৢЎˈᑨ⫼ߚ䜡ⱘ䌘⑤㘮䲚៤њϾ䌘⑤䍙䲚↣ˈϾ䌘⑤䍙䲚䛑ᰃϔϾᇍㄝ䌘⑤䲚ড়ᑊˈϨ䌘⑤䍙䲚П䯈≵᳝Ѧ㸹݇㋏ˈৃҹ䩜ᇍ䌘⑤䍙䲚ᴹ䗝ᢽӑ䌘⑤DŽԚᰃˈ䌘⑤䍙䲚Ёⱘ䌘⑤᭄䞣᳝ৃ㛑䴲ᐌˈℸᯊˈЎњ∖㾷ᮍ֓ৃҹᡞ䌘⑤䍙䲚ᣝ✻ϔϾ䌘⑤᭄ⱘ䯔ؐߚࡆ៤Ͼ䌘⑤䲚ড়↣ˈϾ䌘⑤䲚ড়䛑ᰃϔϾᇍㄝ䌘⑤䲚ড়ˈ㗠Ϩߚ៤ⱘϾ䌘⑤䲚ড়П䯈гᄬѦ㸹݇㋏DŽ㒭ߎњ䌘⑤䍙䲚ⱘߚࡆㅫ⊩˄ㅫ⊩˅ˈ䆹ㅫ⊩Ёˈ䌘⑤䍙䲚ЎRS {R,R, ,R}ߑˈ᭄Max(RS)Min(RS)ߚ߿ЎRSЁ䌘⑤᳔᳔᭄ᇣⱘ䌘12n⑤䲚ড়DŽ䖭Ͼㅫ⊩Ё؛ᅮ䌘⑤᭄䯔ؐЎNᑊˈϨ䲚ড়ߚࡆⱘ䖛ЁֱᣕњඳⱘᅠᭈᗻˈेৠϔϾඳЁⱘ䌘⑤㽕ߚࠄϔϾ䌘⑤䲚ড়ЁDŽ䖭ḋৃҹֱ䆕ৠϔඳЁⱘ䌘⑤݅⫼ӑ䌘⑤㗠ˈϨ⬅ѢৠϔඳЁⱘ䌘⑤⡍ᗻⳌৠгˈৃҹޣᇣ䅵ㅫৃ⫼ᑺⱘᴖᑺDŽӑ䌘⑤᭄䞣ⱘ⹂ᅮᇍㄝ䌘⑤䲚ড়Ёⱘ䌘⑤ৃҹ݅ѿӑ䌘⑤ˈৃҹ䴶ᇍㄝ䌘⑤䲚ড়⹂ᅮӑ䌘⑤ⱘ᭄䞣DŽ⬅Ѣ䳔㽕ᕫࠄϔϾ䞣࣪ⱘ㒧ᵰˈ佪ܜ䳔㽕ᇍৃ⫼ᑺ䖯㸠ᑺ䞣ˈᴀ᭛Փ⫼ὖ⥛ൟᴹᑺ䞣ϔϾᇍㄝ䌘⑤䲚ড়ⱘৃ⫼ᑺDŽ؛ᅮᇍㄝ䌘⑤䲚ড়ЎR {r,r, ,r}ˈা᳝ᔧ䲚ড়Ёⱘ᠔᳝䌘⑤䛑ৃ⫼ᯊˈᑨ⫼ᠡ㛑ᣕ㓁䖤㸠ˈ৺߭12mᑨ⫼Ӯذ乓ˈᅮНA(R)Ў䆹䌘⑤䲚ড়ⱘৃ⫼ᑺˈ䖭䞠ⱘৃ⫼ᑺ䅵ㅫ䖛Ёˈ䞛⫼⫼ৃ䴴ᑺҷ᳓ৃ⫼ᑺⱘᮍ⊩䖭ˈᎹϞ㒣ᐌ䞛⫼ˈЎ䖭䞠া㛑㦋ᕫ䌘⑤ⱘᬙ䱰ὖ⥛ˈׂᗻখ᭄䲒ҹ㦋প˗؛ᅮf(r)Ў䌘⑤rⱘᬙ䱰ὖ⥛ˈ߭˖iimA(R) (1 f(r))DŽnn 1؛ᅮᑨ⫼ᇍ䌘⑤䲚ড়Rⱘৃ⫼ᑺ䳔∖ЎA(R)ˈབᵰA(R) A(R)ˈ߭䳔㽕vvЎ䆹䌘⑤䲚ড়䗝ᢽӑ䌘⑤DŽ'؛ᅮࡴњӑ䌘⑤ৢⱘ䌘⑤䲚ড়ЎRˈ߭݊ৃ⫼ᑺᅮНЎ˖''A(R,m) P{RЁ㟇ᇥ᳝mϾ䌘⑤ৃ⫼}DŽr'བᵰЎRࡴϔϾӑ䌘⑤ˈᷛোЎrˈR R {r}ˈ߭˖m 1m 1m 1m 1m 1'A(R,m) f(r)(1 f(r)) (1 f(r))DŽijk¦¦i 1j 1k 1jzi'བᵰࡴњϾӑ䌘⑤A(R,m)ⱘ䅵ㅫӮⳌᔧᴖˈЎњㅔ࣪䅵ㅫᴀ᭛䞛⫼њ䖥Ԑㅫ⊩DŽ䖥Ԑㅫ⊩Ё؛䆒䌘⑤䲚ড়RЁⱘ᠔᳝䌘⑤ⱘᬙ䱰⥛݊Ёᬙ䱰⥛᳔催ⱘ䌘⑤Ⳍৠˈ㸼⼎Ўf(R)DŽ䖭ḋ䆹䌘⑤䲚ড়ⱘৃ⫼ᑺЎ˖mA(R) (1 f(R))˄4-1˅Ў䆹䌘⑤䲚ড়䗝ᢽӑ䌘⑤ᯊˈ᠔䗝ⱘӑ䌘⑤ⱘᬙ䱰ὖ⥛ϡ催Ѣf(R)ˈ؛ᅮЎ䆹䌘⑤䲚ড়䗝ᢽњkϾӑ䌘⑤ˈ䙷М˖kkm ii§·§·'m ik im k iiARm¸(,) ¨¸(1 f(R))(f(R)) ¨(1 f(R))(f(R))˄4-2˅¦¦¨¸¨¸m km k©¹©¹i 0i 0ѢҹϞⱘ䅼䆎ᴀˈ᭛ᦤߎњ䗦ᓣӑ䌘⑤䗝ᢽㅫ⊩ᴹЎᇍㄝ䌘⑤䲚ড়R⹂ᅮӑ䌘⑤ⱘ᭄䞣ˈབ᠔⼎˄ㅫ⊩DŽ˅ㅫ⊩䗝ᢽӑ䌘⑤ᯊা㽕ӑ䌘⑤ⱘৃ⫼ᑺϡԢѢ䌘⑤䲚ড়Ёৃ⫼ᑺ᳔Ԣⱘ䌘⑤ⱘৃ⫼ᑺህৃҹ䖭ˈৃҹࡴӑ䌘⑤ⱘ䗝ᢽ㣗ೈDŽ䆹ㅫ⊩ᰃϔ⾡䆩 17 义- 36 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ᓣⱘӑ䌘⑤䗝ᢽㅫ⊩↣ˈাࡴϔϾӑ䌘⑤䖭ˈḋৃҹ⹂ᅮߎ⒵䎇ৃ⫼ᑺ㽕∖ⱘ᳔ᇣⱘӑ䌘⑤᭄Ⳃˈᅲ䰙Փ⫼Ёḍ䌘⑤䲚ড়ৃ⫼ᑺϢৃ⫼ᑺ䳔∖П䯈ⱘᏂ䎱ˈৃҹϔࡴϾӑ䌘⑤ˈᦤ催ㅫ⊩ⱘᬜ⥛DŽ[ㅫ⊩]Input˖ᇍㄝ䌘⑤䲚ড়Rˈ݊Ёⱘ䌘⑤᭄Ўmˈৃ⫼ᑺ䳔∖A(R)˗vOuput˖ӑ䌘⑤ⱘ᭄䞣NRb˗Begin˖1ˊ⫼݀ᓣ˄4-1˅䅵ㅫA(R)ˈབᵰA(R)tA(R)ˈ߭Rb )ˈ䗔ߎ˗v2ˊ߱ྟ࣪ˈNRb 0ˈj 0˗3ˊj j 1ˈЎ䌘⑤䲚ড়RࡴϔϾӑ䌘⑤ˈ㓪োЎrˈ߭m jR R {r}ˈ㽕∖݊ᬙ䱰⥛ϡ催Ѣf(R)˗m j4ˊNRb NRb 1ˈ⫼݀ᓣ˄4-2˅䅵ㅫA(R,m)ˈབᵰA(R,m) A(R)ˈ䕀3ℹ˗v 5ˊ䖨ಲӑ䌘⑤ⱘ᭄䞣NRbˈҹঞϾ䌘⑤ⱘᬙ䱰⥛˗ EndDŽ ⹂ᅮᇍㄝ䌘⑤䲚ⱘӑ䌘⑤᭄䞣ঞᬙ䱰ὖ⥛ⱘㅫ⊩ӑ䌘⑤ⱘ䗝ᅮϞ䴶䩜ᇍᇍㄝ䌘⑤䲚ড়ⱘӑ䌘⑤᭄䞣⹂ᅮⱘㅫ⊩㾷އњ㽕ЎϔϾᇍㄝ䌘⑤䲚ড়䗝ᢽᇥ䌘⑤ⱘ䯂乬DŽԚᰃˈᇍѢϔϾᇍㄝ䌘⑤䲚ᴹ䆆ˈৃկ䗝ᢽЎӑ䌘⑤ⱘ䌘⑤ৃ㛑᳝ᕜˈ䳔㽕䖯㸠ϔℹ䗝ᅮӑ䌘⑤DŽ'؛ᅮϔϾᇍㄝ䌘⑤䲚ЎRSˈ݊Ёࣙњᴹ㞾Ͼ䌘⑤ㅵ⧚ඳⱘnϾ䌘⑤ˈ䖭nϾ䌘⑤կᶤϾ㔥Ḑᑨ⫼Փ⫼ˈᑊϨৃҹ݅ѿӑ䌘⑤ˈ䳔㽕ⱘӑ䌘⑤᭄Ўmˈৠᯊг⹂ᅮњᇍӑ䌘⑤ᬙ䱰ὖ⥛ⱘ㽕∖DŽ䙷Мˈḍᑨ⫼ⱘ䌘⑤䳔∖ᦣ䗄'ЁᇍRSЁ䌘⑤ⱘ㽕∖ˈᶹ䆶㔥Ḑֵᙃ᳡ࡵ㋏㒳ˈ䖯㸠䌘⑤থ⦄ˈৃҹᕫࠄϔϾৃկ䗝ᢽӑ䌘⑤ⱘ䗝䌘⑤䲚CBRDŽ䗝䌘⑤䲚CBRЁⱘ䌘⑤䛑⒵䎇ᑨ⫼ⱘ'䅵ㅫᗻ㛑ᬙ䱰ὖ⥛ⱘ㽕∖ˈ⦄䳔㽕㽕ҢЁ䗝ᢽߎmϾ䌘⑤Ў䌘⑤䍙䲚RSⱘӑ䌘⑤DŽ䯂乬ߚᵤ䗝ᅮӑ䌘⑤㽕㗗㰥ⱘ݇䬂䯂乬ᰃᔧӑ䌘⑤ҷ᳓ᬙ䱰ⱘ䌘⑤ᡩܹՓ⫼ҹ'ৢᇍᑨ⫼䗮ֵᗻ㛑ⱘᕅડDŽЎӑ䌘⑤䌘⑤䲚RSЁⱘ䌘⑤᳝Ѧ㸹݇㋏ˈ 18 义- 37 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛Փ⫼ӑ䌘⑤ᯊ䅵ˈㅫᗻ㛑ϡӮ᳝ᕅડԚˈᰃབᵰᑨ⫼ⱘӏࡵ䖤㸠䖛Ё᳝⍜ᙃ䗮ֵˈ䙷Мӑ䌘⑤ⱘ䗮ֵᗻ㛑ህӮᇍᭈϾᑨ⫼ⱘᗻ㛑᳝ᕜⱘᕅડDŽℸᴀˈ᭛ᦤߎњѢ䗮ֵᢧᠥ⒵䎇ᑺⱘӑ䌘⑤䗝ᅮᮍ⊩䆹ˈᮍ⊩佪ܜᇍӑ䌘⑤ᡩܹՓ⫼ৢⱘ䌘⑤䯈䗮ֵᢧᠥϢॳ᳝䌘⑤䯈䗮ֵᢧᠥⱘ⒵䎇ᑺ䖯㸠䞣࣪⿄ˈЎ䗮ֵᢧᠥ⒵䎇ᑺ✊˗ৢҹℸЎ䞣࣪ᣛᷛҢ䗝ӑ䌘⑤䲚Ё䗝ᢽߎӑ䌘⑤DŽ䗮ֵᢧᠥ⒵䎇ᑺⱘᅮН䅵ㅫ䗮ֵᢧᠥ'ᴀ᭛⫼ϔϾ᮴G R,E!㸼⼎ϔϾᇍㄝ䌘⑤䲚RSЁⱘ䌘⑤ᑨ⫼RSc'䖤㸠䖛Ёⱘ䗮ֵ݇㋏⿄ˈЎᇍㄝ䌘⑤䲚RSⱘ䗮ֵᢧᠥDŽ݊ЁR {r,r, ,r}12nᰃ䌘⑤㒧⚍ⱘ䲚ড়DŽབᵰr,rRˈᑊϨᑨ⫼ⱘ䖤㸠䖛Ёr,r䯈ᄬ䗮ֵˈijij߭e r,r!Eˈे䗮ֵᢧᠥЁr,r䯈ᄬ䖍˗བᵰrRˈᑊϨrϢᇍㄝijijii'䌘⑤䲚RSПⱘᶤϾᑨ⫼᠔Փ⫼ⱘ䌘⑤䯈гᄬ䗮ֵ݇㋏߭ˈ䗮ֵᢧᠥGRЁг᳝ϢrⳌ䖲ⱘ䖍ˈাϡ䖛ϢⱘᶤϾ㒧⚍Ⳍ䖲ˈ䖭䞠៥Ӏϡ݇ᖗᅗϢાϾi㒧⚍䖲ˈা݇㋏䖭ᴵ䗮ֵ䏃ᕘⱘᗻ㛑䳔∖DŽᇍѢ䗮ֵᢧᠥGЁⱘ↣ϔᴵ䖍RSceˈ⫼Ѡܗ㒘P(e) L(e),B(e)!㸼⼎䆹䗮ֵ䏃ᕘᦤկ㒭ᑨ⫼Փ⫼ⱘ䗮ֵᗻ㛑ˈL(e)㸼⼎䗮ֵᓊ䖳ˈB(e)㸼⼎䗮ֵᏺᆑDŽ㒭ߎњϔϾࣙ7Ͼ䌘⑤ⱘ䗮ֵᢧᠥⱘϔϾ՟ᄤDŽ䖭ϔ⼎ᛣЁˈ≵᳝ԧᷛߎ↣ϔᴵ䗮ֵ䏃ᕘⱘᗻ㛑䗮ˈֵ䏃ᕘⱘ䗮ֵᗻ㛑ৃҹ䗮䖛ϸϾᮍ䴶ᴹ㦋ᕫˈ݊ϔᰃᑨ⫼ᦤѸⱘ䌘⑤䇋∖䌘⑤ߚ䜡ⱘ䖛ˈेᑨ⫼བᵰᇍᶤѯ䌘⑤䯈ⱘ䗮ֵᗻ㛑ᦤߎњ㽕∖ᑊˈϨ䌘⑤ߚ䜡ⱘᯊ⒵䎇њᑨ⫼ⱘ䳔∖䙷ˈМህৃҹᕫߎ䗮ֵ䏃ᕘⱘᗻ㛑˗݊Ѡᰃᑨ⫼䖤㸠䖛Ёⱘ㔥Ḑⲥ⌟᳡ࡵᑨˈ⫼䖤㸠䖛Ёᇍᑨ⫼Փ⫼ⱘ㔥㒰䗮ֵ䏃ᕘⱘⲥ⌟ˈৃҹ㦋ᕫᑨ⫼䗮ֵ䏃ᕘⱘᗻ㛑ֵᙃDŽe1, e1,5rr15e2,1e6, r2e3,1r6e2,3rr37re43,4ᇍㄝ䌘⑤䲚ⱘ䗮ֵᢧᠥ⼎՟䗮ֵᢧᠥ⒵䎇ᑺⱘᅮН䅵ㅫᮍ⊩ᴀ᭛ᅮНѠܗ㒘DSCT(G,r) DSCT_L(G,r),DSCT_B(G,r)!ЎRScbRScbRScbӑ䌘⑤r˄rCBR˅ҷ᳓RЁⱘ䌘⑤ৢᇍ䗮ֵᢧᠥGⱘ⒵䎇ᑺˈ⿄ЎbbRScӑ䌘⑤rⱘ䗮ֵᢧᠥ⒵䎇ᑺˈ݊ЁDSCT_L(G,r)Ў䗮ֵᓊ䖳⒵䎇ᑺˈⳌᑨbRScb 19 义- 38 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ഄ䗮ֵᏺᆑ⒵䎇ᑺ㸼⼎ЎDSCT_B(G,r)DŽЎњ䅵ㅫ䗮ֵᢧᠥ⒵䎇ᑺˈᴀ᭛RScbᅮНߑ᭄DSCP_L(e,e)Ўeҷ᳓eৢⱘ䗮ֵᓊ䖳⒵䎇ᑺˈ㗠ᇚeҷ᳓eৢⱘ䗮ijjijiֵ䏃ᕘᏺᆑ⒵䎇ᑺᅮНЎߑ᭄DSCP_B(e,e)DŽ䖭ѯ䞣࣪ᣛᷛⱘ䅵ㅫᮍ⊩བϟ˖ij1ˊབᵰrҷ᳓њRЁⱘϔϾ䌘⑤rৢϡˈ㛑⒵䎇ॳᴹ䗮ֵᢧᠥЁrϢ݊Ҫbkk䌘⑤ⱘ䗮ֵ݇㋏˄䖭䞠ⱘ䗮ֵ݇㋏ᣛⱘᰃ㛑৺䗮ֵϡˈ㗗㰥䗮ֵⱘᗻ㛑˅ˈ߭DSCT(G,r) 0,0!DŽҹЎ՟ˈབᵰrҷ᳓њrҹৢˈϡ㛑ᓎRScbb1ゟϢrⱘ䗮ֵ݇㋏߭ˈrⳌᇍѢབ᠔⼎ⱘ䗮ֵᢧᠥⱘ䗮ֵᢧᠥ⒵3b䎇ᑺЎ<0,0>DŽ2ˊབᵰrҷ᳓RЁⱘӏᛣϔϾ䌘⑤䛑㛑⒵䎇ॳᴹ䌘⑤ⱘ䗮ֵᢧᠥ݇㋏ˈ䙷bМ䳔㽕䖯ϔℹᇚ⒵䎇ᑺ䞣࣪DŽ؛ᅮRЁⱘϔϾ䌘⑤rˈ䗮ֵᢧᠥkGЁᄬlᴵ䗮ֵ䏃ᕘe,e, ,eˈeⱘ䗮ֵ䏃ᕘⱘ䗮ֵᗻ㛑ЎRSck1k2klkiP(e)1ˈdidlDŽrҷ᳓rৢˈᵘ៤ⱘᮄⱘ䗮ֵᢧᠥЁⳌᑨഄгᄬlᴵkibk䗮ֵ䏃ᕘe,e, ,eˈeⱘ䗮ֵ䏃ᕘⱘ䗮ֵᗻ㛑ЎP(e)ˈ1didlDŽབb1b2blbibiᵰL(e)dL(e)ˈ߭DSCP_L(e,e) 1˗ডПˈDSCP_L(e,e) bikikibikibiL(e)/L(e)DŽབᵰB(e)tB(e)ˈ߭DSCP_B(e,e) 1ˈ৺߭ˈkibibikikibiDSCP_B(e,e) B(e)/B(e)DŽkibibiki3ˊḍϞ䴶ⱘ䅵ㅫᮍ⊩ˈ䖯ϔℹৃҹ䅵ㅫ䌘⑤rҷ᳓䌘⑤rৢⱘ䗮ֵᢧᠥbk⒵䎇ᑺDŽ䅵ㅫᮍ⊩བϟ˖lDSCT_B(r,r) DSCP_B(e,e)˗kb¦kibii 1lDSCT_L(r,r) DSCP_L(e,e)˗kb¦kibii 1nDSCT_B(G,r) DSCT_B(r,r)˗RScb¦kbk 1nDSCT_L(G,r) DSCT_L(r,r)˗RScb¦kbk 1䖭ḋˈህৃҹ䅵ㅫߎ䗝ӑ䌘⑤rᡩܹՓ⫼ৢᇍॳ᳝䌘⑤ᢧᠥⱘ⒵b䎇ᑺ˖DSCT(G,r) DSCT_L(G,r),DSCT_B(G,r)!DŽѢ䗮ֵᢧᠥ⒵䎇ᑺⱘӑ䌘⑤䗝ᅮㅫ⊩ḍϞ䴶ⱘ䅼䆎ˈৃҹḍ䗝ӑ䌘⑤䲚CBRЁϾ䗝ӑ䌘⑤ᇍϢᇍㄝ䌘⑤䲚cRSⱘ䗮ֵᢧᠥⱘ⒵䎇ᑺᴹ䗝ᅮӑ䌘⑤DŽ䗮ֵᢧᠥ⒵䎇ᑺ⬅䗮ֵᏺᆑ⒵䎇ᑺ䗮ֵᓊ䖳⒵䎇ᑺϸ⾡䞣࣪ᣛᷛᴹ㸵䞣ˈᴀ᭛䆒䅵ⱘᑺ䞣ᮍ⊩ЁѠˈ㗙䛑ᰃ䍞催䍞དԚˈᰃ䗝ӑ䌘⑤䗮ᐌϡ㛑ৠᯊ⒵䎇䖭ϸϾᣛᷛ䛑催ⱘ㽕∖DŽЎℸˈ䗝ᅮӑ䌘⑤ⱘ䖛Ёˈ䳔㽕㗗㰥⾡ᚙމᴹ䗝ᅮӑ䌘⑤DŽབᵰcRSЁ䌘⑤䯈䗮ֵ乥㐕ˈᑊϨ↣䗮ֵⱘ᭄䞣ϡᰃᕜˈህ⫼ᓊ䖳Ӭܜⱘӑ䌘⑤䗝ᅮㅫ⊩˗བᵰcRSЁ䌘⑤䯈䗮ֵϡᰃᕜ乥㐕ˈ㗠↣䗮ֵⱘ᭄䞣↨䕗ˈህ⫼ᏺᆑӬܜⱘӑ䌘⑤䗝ᅮㅫ⊩˗བᵰϡ㛑㦋ᕫcRSЁ䌘⑤䯈ⱘ䗮ֵ⡍ᕕˈህ㓐ড়㗗㰥䖭ϸ⾡㋴ˈ⫼ϸϾᑺ䞣ᣛᷛⱘЬ⿃Ў䗝ᢽᣛᷛˈ⿄䖭ϔᮍ⊩Ўഛ㸵ⱘӑ䌘⑤䗝ᢽㅫ⊩DŽᦣ䗄њ㗗㰥䖭ϝ⾡ᚙމϟⱘӑ䌘⑤䗝 20 义- 39 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ᅮㅫ⊩˄ㅫ⊩DŽ˅ㅫ⊩ߚᵤㅔ࣪˄⬹˅[ㅫ⊩]Input˖ᇍㄝ䌘⑤䲚cRSঞ݊䗮ֵᢧᠥGˈӑ䌘⑤ⱘ᭄䞣NRbˈRSc䗝ӑ䌘⑤䲚CBR˗Ouput˖ӑ䌘⑤䲚ড়Rb˗Begin˖5ˊ䅵ㅫϾ䗝ӑ䌘⑤ᇍ䗮ֵᢧᠥGⱘ䗮ֵᢧᠥ⒵䎇ᑺRScDSCT_B(G,r)DSCT_L(G,r)DŽRScbRScb6ˊབᵰ䞛⫼䗮ֵᏺᆑӬܜⱘӑ䌘⑤䗝ᅮᮍ⊩ˈ߭ᇍCBRЁⱘӑ䌘⑤ᣝ✻DSCT_B(G,r)⬅ࠄᇣᥦᑣˈ䗝ᢽࠡNRbϾ䗝ӑ䌘⑤RScbЎӑ䌘⑤ˈࡴܹࠄӑ䌘⑤䲚ড়RbЁ˗7ˊབᵰ䞛⫼䗮ֵᓊ䖳Ӭܜⱘӑ䌘⑤䗝ᅮᮍ⊩ˈ߭ᇍCBRЁⱘӑ䌘⑤ᣝ✻DSCT_L(G,r)⬅ࠄᇣᥦᑣˈ䗝ᢽࠡNRbϾ䗝ӑ䌘⑤RScbЎӑ䌘⑤ˈࡴܹࠄӑ䌘⑤䲚ড়RbЁ˗8ˊབᵰ䞛⫼ഛ㸵ⱘӑ䌘⑤䗝ᅮᮍ⊩ˈᇍCBRЁⱘ↣Ͼӑ䌘⑤ˈ䅵ㅫDSCT_B(G,r)DSCT_L(G,r)ⱘЬ⿃E(G,rˈ)Пৢᣝ'RScbRScbbRS✻䖭ϔؐ⬅ࠄᇣᇍCBRЁⱘӑ䌘⑤ᥦᑣˈ䗝ᢽࠡNRbϾ䗝ӑ䌘⑤Ўӑ䌘⑤ˈࡴܹࠄӑ䌘⑤䲚ড়RbЁ˗ 5ˊ䖨ಲӑ䌘⑤䲚ড়Rb˗ dDŽ Ѣ䗮ֵᢧᠥ⒵䎇ᑺⱘӑ䌘⑤䗝ᅮㅫ⊩ӑ䌘⑤䗝ᢽㅫ⊩ঞᑨ⫼В՟ӑ䌘⑤䗝ᢽㅫ⊩ḚᶊϞ䴶ϔ㡖ⱘ䅼䆎Ёᴀˈ᭛㾷އњӑ䌘⑤䗝ᢽЁϸϾ݇䬂ⱘ䯂乬üü⹂ᅮӑ䌘⑤᭄䞣䗝ᅮӑ䌘⑤DŽ㓐ড়ҹϞⱘ䅼䆎䖭ˈ䞠㒭ߎᅠᭈⱘ䩜ᇍ㔥Ḑᑨ⫼ⱘӑ䌘⑤䗝ᢽㅫ⊩Ḛᶊˈབ᠔⼎˄ㅫ⊩DŽ˅ㅫ⊩ᑨ⫼В՟䅵ㅫ㔥Ḑ䌘⑤ӑ᳡ࡵ䖛˄⬹˖ᇍ䌘⑤ӑ᳡ࡵⱘ䖛ߚᵤˈᦤߎњᇍ䌘⑤ӑㄪ⬹ⱘ䳔∖˅ 21 义- 40 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ㅫ⊩ Iut˖Ўᑨ⫼ߚ䜡ⱘ䌘⑤䲚ড়ˈᑨ⫼ⱘৃ⫼ᑺ䳔∖˗ utut˖Ў䆹ᑨ⫼䗝ᢽⱘӑ䌘⑤䲚ড়˗ Bi˖1ˊᑨ⫼ⱘ䌘⑤䖯㸠ඳݙ㘮䲚˗2ˊᣝ✻ᑨ⫼ⱘ⡍⚍ߚ䜡ⱘ䌘⑤⡍ᗻˈ⹂ᅮ䌘⑤ඳ䯈ⱘѦ㸹݇㋏˗3ˊᣝ✻ඳ䯈ⱘѦ㸹݇㋏䖯㸠ඳ䯈㘮䲚ˈ⫳៤Ͼ䌘⑤䍙䲚˗4ˊḍ䌘⑤䍙䲚ⱘ䌘⑤᭄ᇚ䌘⑤䍙䲚ߚࡆ៤Ͼᇍㄝ䌘⑤䲚ড়˗5ˊḍᑨ⫼ⱘৃ⫼ᑺ䳔∖ߚ៤ⱘᇍㄝ䌘⑤䲚ড়ⱘ᭄Ⳃˈ⹂ᅮ↣Ͼᇍㄝ䌘⑤䲚ড়㽕⒵䎇ⱘৃ⫼ᑺ㽕∖˗6ˊᇍ↣Ͼᇍㄝ䌘⑤䲚ড়ˈḍৃ⫼ᑺ㽕∖ˈ⫼ㅫ⊩⹂ᅮӑ䌘⑤ⱘ᭄䞣˗7ˊḍᇍㄝ䌘⑤䲚ᇍӑ䌘⑤ⱘ㽕∖ˈ䗝ᢽߎϔ㒘䗝ӑ䌘⑤DŽ8ˊᇍ↣Ͼᇍㄝ䌘⑤䲚ঞ݊䗝ӑ䌘⑤䲚ˈ⫼ㅫ⊩䗝ᅮӑ䌘⑤DŽˊ䆄ᔩᇍㄝ䌘⑤䲚䯈ⱘ݇㋏ҹˈঞᇍㄝ䌘⑤䲚Ϣӑ䌘⑤ⱘᇍᑨ݇㋏DŽ˄ेᯢ⹂ӑ݇㋏ˈথ⫳ӏࡵᬙ䱰ⱘᯊˈᬙ䱰ⱘ䌘⑤ӬܜՓ⫼݊᠔ⱘᇍㄝ䌘⑤䲚ড়ⱘӑ䌘⑤ˈ᳝Ѧ㸹݇㋏ⱘᇍㄝ䌘⑤䲚ড়ৃҹ݅ѿӑ䌘⑤DŽ˅dDŽ䅵ㅫ㔥Ḑӑ䌘⑤䗝ᢽㅫ⊩Ḛᶊ䌘⑤ӑㄪ⬹䆒䅵᮴乘⬭ㄪ⬹ ܼ䚼乘⬭ㄪ⬹ 䚼ߚ乘⬭ㄪ⬹݅ѿ乘⬭ㄪ⬹ ᓊ䖳䚼ߚ乘⬭ㄪ⬹ ᮴ӑㄪ⬹䌘⑤ӑㄪ⬹ߚᵤϢ䆘Ӌᅮᗻߚᵤᢳߚᵤ˄⬹˖ㄪ⬹ᢳ఼ⱘ䆒䅵ǃᢳ䖛ǃᢳ㒧ᵰ˅䌘⑤ӑ᳡ࡵ㋏㒳ㄪ⬹ᓩ᪢䌘⑤ӑ᳡ࡵ㋏㒳ⱘࡳ㛑䌘⑤ӑ᳡ࡵ㋏㒳ⱘ㒧ᵘ 22 义- 41 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛䅵ㅫ㔥Ḑ䌘⑤ӑ᳡ࡵ㋏㒳ⱘ㒧ᵘḚᶊ䌘⑤ӑㄪ⬹ᓩ᪢˄⬹˖ㄪ⬹ᓩ᪢ЁⱘϾ㒘ӊࡳ㛑ᦣ䗄˅䅵ㅫ㔥Ḑ䌘⑤ӑㄪ⬹ᓩ᪢ⱘ㒧ᵘc4.ᴀゴᇣ㒧 23 义- 42 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ѨゴѢϮ䖯ሩᦣ䗄ⱘ䅵ㅫ㔥ḐẔᶹ⚍ᴎࠊ䅵ㅫ㔥Ḑ⦃๗ϟˈẔᶹ⚍/ᘶ᳡ࡵৠḋгᰃᦤ催ᑨ⫼ৃ⫼ᑺⱘ䞡㽕ᮍ⊩DŽԚᰃˈ䅵ㅫ㔥Ḑ䖭⾡䌘⑤ᓖᵘⱘ䅵ㅫ⦃๗Ёˈᅲ⦄Ẕᶹ⚍/ᘶ᳡ࡵࡴᴖˈ䳔㽕ⷨおⱘ䯂乬ࣙᣀẔᶹ⚍ⱘᅲ⦄ሖǃẔᶹ⚍᭄ⱘᅮНǃẔᶹ⚍ԧ㋏㒧ᵘǃᇍ⍜ᙃӴ䗦ᑊ㸠ᑨ⫼ⱘᬃᣕǃẔᶹ⚍᭄ⱘᄬټㅵ⧚ǃᘶ᳡ࡵㄝDŽᴀゴⱘᎹࣙᣀ˖Ⳍ݇ⷨおᎹⱘ⸔ϞҢˈẔᶹ⚍᭄ᅮНߎথᦤߎњѢϮ䖯ሩᦣ䗄ⱘᑨ⫼㑻䅵ㅫ㔥ḐẔᶹ⚍ण䆂ᦤ˗ߎњ䗮䖛ᠽሩѢথ䗕ᬒⱘ⍜ᙃ᮹ᖫᴹᬃᣕ䅵ㅫ㔥Ḑ⦃๗ϟⱘ⍜ᙃӴ䗦ᑊ㸠ᑨ⫼ⱘᮍ⊩䅼˗䆎䖭ϔẔᶹ⚍ᴎࠊϟⱘẔᶹ⚍ԧ㋏㒧ᵘҹঞẔᶹ⚍᭄ᄬټ㒧ᵘˈᦤߎњ㞾䗖ᑨⱘẔᶹ⚍᭄ᄬټㅵ⧚ᮍ⊩DŽⳌ݇ⷨおẔᶹ⚍ⱘᅲ⦄ᮍᓣ䅵ㅫ㔥ḐẔᶹ⚍ⱘⷨお⦄⢊㔥Ḑ⦃๗ϟৠḋ䳔㽕ᦤկẔᶹ⚍᳡ࡵˈ䖭Ꮖ㒣៤Ў㔥ḐⷨおҎਬⱘ݅䆚DŽܼ⧗㔥Ḑ䆎യ˄GGFЁ˅៤ゟњ㔥ḐẔᶹ⚍/ᘶᎹ㒘˄GridCPR Workgroup˅ˈҢ5ܼ⧗㔥Ḑ䆎യӮ䆂˄GGF5˅ᓔྟˈৢ㓁ⱘ↣ܼ⧗㔥Ḑ䆎യⱘӮ䆂Ϟ䆹Ꮉ㒘䛑ᇍ㔥ḐẔᶹ⚍ⱘⳌ݇䯂乬䖯㸠䅼䆎ˈᑊᔶ៤ϔѯ᭛ḷ㤝ḜDŽ2003ᑈ3᳜ীᓔⱘܼ⧗㔥Ḑ䆎യ(GGF)7Ӯ䆂Ϟ㔥ḐẔᶹ⚍/ᘶᎹ㒘䅼䆎њ㔥ḐẔᶹ⚍/ᘶ᳡ࡵⱘԧ㋏㒧ᵘAPIˈߚᵤњ㔥Ḑ⦃๗ϟẔᶹ⚍[105]ᅲ⦄ⱘ⡍⅞ᗻˈᯢ⹂њ䅵ㅫ㔥ḐẔᶹ⚍/ᘶ᳡ࡵᑨ䆹⒵䎇བϟ㽕∖˖zᦤկ⾡䅵ㅫ䌘⑤䯈Ѧ᪡ⱘ㛑DŽϡৠᑇৄϞ䖯㸠Ẕᶹ⚍᪡ⱘষᖙ乏ѦⳌݐᆍˈᑊϨ䗮䖛݀݅ⱘण䆂䗮ֵDŽℸ䅵ㅫ㔥ḐⱘẔᶹ⚍᳡ࡵᑨ䆹ᦤկᷛޚⱘAPIˈՓ⫼᠋㛑㓪ݭৃҹϡৠⱘ㔥Ḑ䌘⑤䯈⿏ࡼⱘǃϢ䌘⑤᮴݇ⱘҷⷕᴹ䖯㸠Ẕᶹ⚍ᘶ᪡DŽzֱ䆕Ẕᶹ⚍᭄ⱘৃ⫼ᗻDŽẔᶹ⚍᭄㽕ֱᄬ⣀ゟⱘǃᆍ䫭ⱘᄬټ䆒ϞˈᑊϨ㛑ֱ䆕Ẕᶹ⚍᭄Ӵ䕧ⱘৃ䴴ᗻDŽẔᶹ⚍᭄ⱘֱᡸᴎࠊ㽕㛑♉⌏ഄ䗖⫼Ѣϡৠ䅵ㅫ䌘⑤ⱘ㛑㒧ᵘDŽẔᶹ⚍᭄ㅵ⧚ᮍ⊩㽕㛑⒵䎇ᑨ⫼ⱘ䳔∖ˈᑊϨ㛑ϡׂᬍẔᶹ⚍᳡ࡵষⱘᚙމϟ䗖ᑨ⸔䆒ᮑ㒧ᵘⱘᬍবDŽzᦤկϢⳌ݇ⱘ㔥ḐЁ䯈ӊ⸔䆒ᮑ᳡ࡵѦ᪡ⱘ㛑DŽ䗮䖛Ẕᶹ⚍᳡ࡵᦤկⱘㅵ⧚ѸѦষˈ㔥ḐЁⱘ䇗ᑺǃ䆄䋺ǃᅝܼǃϮⲥ⌟ǃᗻ㛑ᑺ䞣ㄝ᳡ࡵ㛑Փ⫼ϮẔᶹ⚍ⱘֵᙃDŽ䆹ᖬᔩЁ≵᳝ᅮНӏԩᷛޚ≵ˈ᳝ᦤկAPIⱘ䆺㒚ᅮНԚˈᰃ䖒៤њ䅵ㅫ 24 义- 43 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛㔥ḐẔᶹ⚍ᴎࠊᖙ乏ᑨ⫼㑻ᅲ⦄䖭ϔ݅䆚DŽ䅵ㅫ㔥Ḑᰃ⬅Ͼഄ⧚ߚᏗⱘᓖᵘ䅵ㅫᴎ㋏㒳ᵘ៤ⱘˈ䎼Ͼㅵ⧚ඳˈᏆ᳝ⱘ䖯㑻Ẕᶹ⚍ण䆂ϡ䗖ড়㔥Ḑ⦃๗ˈ[106]Ўᓖᵘⱘ䅵ㅫ䌘⑤Ϟᘶ䖯ڣ䴲ᐌೄ䲒DŽ2004ᑈ6᳜ীᓔⱘܼ⧗㔥Ḑ䆎യ11Ӯ䆂Ϟˈ㔥ḐẔᶹ⚍/ᘶᎹ[107]㒘㒭ߎњϔϾ↨䕗䆺ሑⱘ㔥ḐẔᶹ⚍APIᓎ䆂㤝ḜˈԚᰃ݊ЁᅮНⱘAPIᰃ䴲ᐌᑩሖⱘAPIᑊˈϨাᰃϔ⾡ᓎ䆂ˈৃҹѢ䖭ѯᑩሖAPIᵘᓎ催ሖⱘẔᶹ⚍᳡ࡵDŽ⬅ѢẔᶹ⚍ᴎࠊᇍѢ䭓ᯊ䯈䖤㸠ⱘ㾘ᑨ⫼㗠㿔䴲ᐌ䞡㽕ˈℸϔѯ㔥Ḑ䅵ㅫ乍ⳂϡৠᑺϞᦤկњẔᶹ⚍ᴎࠊԚˈᰃ䖭ѯẔᶹ⚍ᴎࠊ䗮⫼ᗻϡ㗠ˈϨ䖬ᄬᕜϡ䎇ˈϟ䴶ㅔ㽕ߚᵤϸϾ᳝ҷ㸼ᗻⱘ䅵ㅫ㔥ḐẔᶹ⚍ᴎࠊDŽ Cactus⦃๗ЁẔᶹ⚍ⱘᅲ⦄ᮍ⊩[108]CactusᰃϔϾ䲚៤ⱘ䅵ㅫ⾥ᄺᎹ䯂乬∖㾷⦃๗DŽᅗᦤկњㅔऩǃᢑ䈵ⱘAPIˈሣ㬑њ䅵ㅫᴎ㋏㒳ⱘᴖᗻˈ㛑ϡৠԧ㋏㒧ᵘⱘ䅵ㅫᴎϞ䖤㸠DŽCactusܕ䆌⣀ゟᓔথⱘഫ䲚៤ϔ䍋ᴹ䖯㸠㾘ⱘᢳབˈ᭄ᄫⳌᇍ䆎Ёⱘᢳ咥⋲ǃЁᄤ᯳ǃᓩ⊶ㄝˈгৃҹᑨ⫼ࠄ݊Ҫ乚ඳˈ䇌བԧ⠽⧚ǃ࣪ᄺᎹǃ⇨䈵ᢳǃᆚⷕ⾥ᄺㄝDŽ㒧ড়њGlobusᎹࣙҹৢˈѢCactusⱘᑨ⫼ህৃҹϡࡴׂᬍഄ䖤㸠Ѣ䅵ㅫ㔥Ḑ⦃๗ЁDŽ߽⫼CactusᑊϢGlobusᎹࣙ㒧ড়ᖋ㕢ⱘϾⷨおᴎᵘ៤ࡳᅲ⦄њ㾘ⱘ咥⋲ᢳˈ݊៤ᵰ[109,110]Supercomputing 2001䰙Ӯ䆂Ϟሩ⼎ˈᑊ㦋ᕫњGordon Bell༪DŽ[111]Cactus⦃๗Ёᅲ⦄њϔ⾡䴲䗮⫼ⱘẔᶹ⚍ᴎࠊˈৃҹᬙ䱰ᘶᯊᇚᴖⱘ᭄㒧ᵘᘶࠄࠡϔ䖤㸠ᯊⱘ⢊ᗕDŽ䖭ϔẔᶹ⚍ᴎࠊջ䞡Ѣᇍᢳখ᭄ⱘֱᄬᘶˈ䖭ᇍ㾘ⱘᢳᰃ䴲ᐌ݇䬂ⱘDŽ DataGrid乍ⳂЁẔᶹ⚍ⱘᅲ⦄ᮍ⊩ⲳⱘDataGrid乍Ⳃջ䞡Ѣ㾷އ᭄ᆚ䲚ⱘ䅵ㅫ䯂乬DŽ䆹乍ⳂЁЎ⫼᠋[112]ᦤկњϔ㒘ⱘϮẔᶹ⚍APIˈ⬅⫼᠋ᴹᅮНϮⱘ⢊ᗕDŽϮⱘ⢊ᗕ⬅ϔ㒘<ሲᗻǃؐ>ᇍᵘ៤ˈৃҹҢҹֱࠡᄬⱘϮ⢊ᗕЁ䞡ᮄਃࡼ䅵ㅫϮDŽ䆹Ẕᶹ⚍ᴎࠊҹϮℹЎẔᶹ⚍᪡ⱘ㉦ᑺ㗠ˈϮℹⱘߦߚᅠܼ⬅⫼᠋އᅮ䖭ˈヺড়ᑨ⫼㑻Ẕᶹ⚍ⱘ⡍⚍DŽԚᰃᅗϔϾϮ⢊ᗕᇍ䈵ЁৠᯊֱᄬϮߚࡆ㒧ᵘҹঞᔧࠡϮℹⱘ⢊ᗕ䖭ˈϔᮍ⊩ϡ߽ѢᡞᦵϮⱘᘏԧ㒧ᵘ㗠ˈϨᇍẔᶹ⚍᭄ⱘᄬټㅵ⧚Ϯ䯈䗮ֵг≵᳝ᦤկ᳝ⱘᬃᣕDŽѢϮ䖯ሩᦣ䗄ⱘ䅵ㅫ㔥ḐẔᶹ⚍ण䆂ϡৠⱘԧ㋏㒧ᵘϞᅲ⦄䖯ݙᄬڣⱘᘶ䴲ᐌೄ䲒ˈℸेՓᑨ⫼㑻ᅲ⦄䅵ㅫ㔥ḐẔᶹ⚍ᴎࠊˈгϡ㛑⫼䖯ⱘݙᄬڣЎẔᶹ⚍᭄DŽ⬅Ѣᑨ⫼㑻Ẕᶹ⚍ण䆂䳔㽕⬅⫼᠋ᦦܹẔᶹ⚍᪡ᣛҸǃࠊẔᶹ⚍ⱘ㉦ᑺǃᦣ䗄Ϯⱘ⢊ᗕˈ䖭ᇍ⫼᠋ᦤߎњᕜ催ⱘ㽕∖DŽℸˈᑨ⫼㑻ⱘẔᶹ⚍ण䆂㽕Ў⫼᠋ᦤկᯧѢᡞᦵⱘϮ䘏䕥㒧ᵘ࣪ߚὖᗉˈᦤկᮍ֓ⱘAPIˈᑊϨ㛑ᓔথⳌᑨᎹⱘ⸔Ϟˈሑ䞣ޣᇥ⫼᠋ⱘᎹDŽѢҹϞ㗗㰥ᴀˈ᭛ҢẔᶹ⚍᭄ᅮНߎথᦤˈߎњѢϮ䖯ሩᦣ䗄ⱘ䅵ㅫ㔥ḐẔᶹ⚍ण䆂DŽ 25 义- 44 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ᴀᗱᛇᅮНϮ䖯ሩ˄Job Progress, JPDŽ˅ϔ㒘䖲㓁ⱘϮℹህᵘ៤њϔϾϮ䖯ሩDŽϮ䖯ሩৃҹᰃᑣݙϔ㒘䖲㓁ⱘᑣ䇁হгˈৃҹᰃᡍ໘⧚ϮЁ䖲㓁ⱘϾ᪡DŽᅮН⣀ゟϮ䖯ሩ˄Independent Job Progress, IJPDŽ˅བᵰϔϾϮ䖯ሩⱘᠻ㸠ϡձ䌪ѢᑣЁ݊ҪϮ䖯ሩⱘᠻ㸠⦃๗߭ˈ䆹Ϯ䖯ሩЎ⣀ゟϮ䖯ሩDŽᅮНϮ䖯ሩ䆄ᔩᇍ䈵˄Job Progress Record Object, JPRODŽ˅ᅗ䆄ᔩњϮߚࡆ៤ⱘϔ㋏߫Ϯ䖯ሩⱘᷛ䆚ˈҹঞϮ᳔䖥ᅠ៤ⱘϮ䖯ሩᷛ䆚DŽᅮНϮ䖯ሩ⢊ᗕᇍ䈵˄Job Progress States Object, JPSODŽ˅ᅗгᰃϔ⾡᭄㒧ᵘᅗˈ䆄ᔩњ↣ϾϮ䖯ሩ㒧ᴳᯊϮⱘ⢊ᗕˈϮ⢊ᗕ⬅⫼᠋ᴹᅮНˈ⬅ϔ㒘<ሲᗻˈؐ>ᵘ៤DŽᅮНϮ䖯ሩᦣ䗄˄Job Progress Description, JPDDŽ˅ϔϾẔᶹ⚍ϮⳌᇍᑨⱘϮ䖯ሩ䆄ᔩᇍ䈵ϔ㒘Ϯ䖯ሩ⢊ᗕᇍ䈵⿄Ў䆹ϮⱘϮ䖯ሩᦣ䗄DŽᑨ⫼㑻ᅲ⦄Ẕᶹ⚍⫼ˈ᠋ᑨ䆹ᇍϮⱘ䖯ሩ䖛᳝ϔᅮⱘњ㾷㛑ˈᇚϮߚࡆ៤ϔ㋏߫⣀ゟⱘϮ䖯ሩᑊˈϨ㽕ᯢ⹂ᅮН↣ᅠ៤ϔϾϮ䖯ሩᯊ䳔㽕ֱᄬⱘ⢊ᗕ᭄DŽᴀ᭛⫼ϸ㑻ᇍ䈵ᴹᦣ䗄Ϯⱘ䖤㸠ᚙމ˖Ϯ䖯ሩ䆄ᔩᇍ䈵Ϯ䖯ሩ⢊ᗕᇍ䈵䖭ˈϸ⾡᭄ᇍ䈵ᵘ៤њϮ䖯ሩᦣ䗄ˈ݊ЁϮ䖯ሩ䆄ᔩᇍ䈵ЎϮẔᶹ⚍ⱘᘏᇍ䈵DŽϔϾẔᶹ⚍ϮᇍᑨⱘϮ䖯ሩᦣ䗄ⱘ㒧ᵘབ᠔⼎DŽϮ䖯ሩᦣ䗄ⱘ㒘៤Ẕᶹ⚍API˄⬹˖Ẕᶹ⚍APIⱘԧݙᆍ˅ϮẔᶹ⚍ⱘᅲ⦄䗮ᐌ⫼ˈ᠋䅵ㅫ㔥ḐᦤѸϮⱘৠᯊг㽕ᦤѸ䆹Ϯⱘᦣ䗄᭛ӊˈϮᦣ䗄᭛ӊЁᦣ䗄њϮⱘ䌘⑤䳔∖ҹঞϮⱘ݊Ҫ⾡ሲᗻDŽϮᦣ䗄᭛ӊϔ㠀⫼[113]ᶤ⾡Ϯᦣ䗄䇁㿔㓪ݭˈབDataGrid乍ⳂЁᅲ⦄ⱘJDLㄝˈ䖭ѯᦣ䗄䇁㿔䗮ᐌᰃ䞛⫼ञ㒧ᵘ࣪ⱘ᭄ൟˈৃҹḍ䳔㽕䖯㸠ᠽሩDŽ⫼ᴀ᭛䆒䅵ⱘẔᶹ⚍ᴎࠊᅲ⦄ϮẔᶹ⚍⫼ˈ᠋㽕Ϯᦣ䗄Ёᣛᯢ䆹ϮЎẔᶹ⚍ϮᑊˈϨᦣ䗄ߎϮⱘϔ㋏߫䖯ሩDŽϮ䌘⑤㒧⚍㓪䆥៤ᠻ㸠ᑣⱘᯊẔˈᶹ⚍ᑧᑣ㽕䇏পϮᦣ䗄᭛ӊЁⱘẔᶹ⚍ሲᗻ߱ˈྟ࣪Ϯ䖯ሩᦣ 26 义- 45 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛䗄ᇍ䈵ЎˈẔᶹ⚍᪡خޚDŽৠᯊ⫼ˈ᠋㽕Փ⫼Ẕᶹ⚍API㓪ݭདϮⱘ⑤ᑣDŽ˄⬹˖JPD-based GridCPRᴎࠊϟⱘІǃᑊ㸠Ẕᶹ⚍Ϯⱘᅲ⦄˅䴶⍜ᙃӴ䗦ᑨ⫼ⱘण䆂ᠽሩ㔥Ḑ㓪ൟ⍜ᙃӴ䗦ᑨ⫼ⱘᬙ䱰ᘶᮍ⊩णৠẔᶹ⚍ᴎࠊ⍜ᙃ᮹ᖫᴎࠊѢথ䗕ᮍⱘ⍜ᙃ᮹ᖫᴎࠊᆍ䫭MPI㋏㒳ᏺথ䗕ᮍ⍜ᙃ᮹ᖫⱘϮ䖯ሩᦣ䗄ѢϮ䖯ሩᦣ䗄ⱘẔᶹ⚍ण䆂ᖙ乏㽕ᬃᣕ䅵ㅫ㔥Ḑ⦃๗ϟ⍜ᙃӴ䗦ᑊ㸠ᑨ⫼DŽབᵰ䞛⫼णৠẔᶹ⚍ᴎࠊ߭ˈᴀ᭛ⱘण䆂ᕜᆍᯧᬃᣕ⍜ᙃӴ䗦ᑊ㸠ᑨ⫼ⱘẔᶹ⚍DŽЎњᦤ催Ẕᶹ⚍ⱘᗻ㛑ᴀˈ᭛䞛⫼њϢ⍜ᙃ᮹ᖫ㒧ড়ⱘᮍ⊩ᴹᬃᣕ䅵ㅫ㔥ḐЁ⍜ᙃӴ䗦ᑊ㸠ᑨ⫼ⱘᬙ䱰ᘶDŽᅲ⦄ⱘᮍ⊩ᰃᇚথ䗕ᮍ⍜ᙃ᮹ᖫЎϮ䖯ሩᦣ䗄ⱘϔ䚼ߚˈ⫼Ẕᶹ⚍᪡ᇚֱ݊ᄬࠄ〇ᅮᄬټ䆒ЁDŽᏺ⍜ᙃ᮹ᖫⱘ䅵ㅫ㔥ḐẔᶹ⚍ᅲ⦄㒧ᵘᅲ⦄㒧ᵘ⬅Ѣ⍜ᙃ᮹ᖫֱᄬϮ䖯ሩ⢊ᗕᇍ䈵Ё㗠ˈৢ㗙Ӯ᳔㒜ֱᄬ㔥Ḑ㑻〇ᅮⱘᄬټ㋏㒳Ёˈℸ䖭⾡ᮍ⊩ৃҹᆍᖡϾᬙ䱰DŽЎњᅲ⦄⍜ᙃⱘ䞡Ӵˈ㽕Ͼ䅵ㅫ䌘⑤㒧⚍ⱘMPI䗮ֵᑧПϞᅲ⦄ϔϾ䗮఼ֵⱘ䗖䜡఼ˈ䋳䋷Ẕᶹ⚍᳡ࡵѸѦDŽᏺ⍜ᙃ᮹ᖫⱘѢϮ䖯ሩᦣ䗄ⱘẔᶹ⚍ⱘᅲ⦄㒧ᵘབ᠔⼎ˈ݊Ё㒧 27 义- 46 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛⚍ABЎ໘Ѣϡৠㅵ⧚ඳݙⱘϸϾ䅵ㅫ㒧⚍DŽ䗮䖛䞛⫼䴶䅵ㅫ㔥Ḑ䞡ᵘⱘMPI䗮ֵᑧˈ㒧⚍ABৃҹ䖯㸠㔥Ḑ㣗ೈݙⱘ⍜ᙃӴ䗦DŽϸϾ㒧⚍Ϟ䖤㸠ⱘᑣ⫼MPI㓪ݭˈϨ䇗⫼њѢJPDⱘẔᶹ⚍ण䆂APIˈे↣ϾMPIᄤϮߚࡆ៤њϔ㋏߫Ϯ䖯ሩˈ↣ϾϮ䖯ሩ㒧ᴳᯊ䇗⫼Ẕᶹ⚍APIˈᇚϮⱘ⢊ᗕҹঞ䆹Ϯ䖯ሩ䖤㸠䖛Ёথ䗕ⱘ⍜ᙃϔ䍋Ўᇍ䈵⢊ᗕ᭄ˈֱᄬࠄᄬټ㋏㒳ЁDŽ⍜ᙃ᮹ᖫ㒧ᵘѢথ䗕ᮍⱘ⍜ᙃ᮹ᖫ㒧ᵘⱘ⸔ϞЎˈњѢϮ䖯ሩᦣ䗄ⱘ䅵ㅫ㔥ḐẔᶹ⚍ण䆂㒧ড়ˈᴀ᭛䆒䅵њབϟⱘ⍜ᙃ᮹ᖫ㒧ᵘDŽSSN˖থ䗕ᮍ⍜ᙃᑣো˗SJPN˖থ䗕ᮍϮ䖯ሩᷛ䆚˗RJPN˖ᬊᮍϮ䖯ሩᷛ䆚˗MCON˖⍜ᙃݙᆍ˗RSN˖ᬊᮍᬊⱘ⍜ᙃᑣোDŽᘶ䖛ঞ䗮ֵᑧ䗖䜡఼ⱘࡳ㛑ᴀ᭛䆒䅵ⱘ㒧ড়⍜ᙃ᮹ᖫⱘẔᶹ⚍ᴎࠊЁҹˈϮ䖯ሩЎϮᘶⱘᴀऩԡˈᔧᶤϾMPI䖯থ⫳ᬙ䱰ৢˈಲ⒮ࠄϞϔϾϮ䖯ሩ㒧ᴳᯊⱘẔᶹ⚍໘ˈ᠔᳝݊ҪMPI䖯ᑓ᪁ˈ䇋∖䞡থҢϞϔẔᶹ⚍ࠄᬙ䱰থ⫳ᳳ䯈䆹䖯থ䗕ⱘ⍜ᙃˈ䞡থ䇋∖⍜ᙃЁᏺϞњᔧࠡϮⱘ䖯ሩᷛ䆚DŽϾMPI䖯ᬊࠄ䇋∖ҹৢᡞˈ䇋∖䕀থ㒭䗮఼ֵ䗖䜡఼䗮ˈ఼ֵ䗖䜡఼ᶹᡒ䖯ⱘ⍜ᙃ᮹ᖫˈᡒࠄথ䗕㒭ᬙ䱰䖯ⱘ⍜ᙃˈᣝ✻RSNⱘछᑣ䞡ᮄ⫳៤MPI䇗⫼ˈ䇗⫼MPI䗮ֵᑧ䇋∖䖯䞡থ⍜ᙃDŽৃ㾕ˈ䗮ֵᑧ䗖䜡఼ৃҹ᳔䰤ᑺⱘޣᇥᇍMPI䗮ֵᑧ᠔ⱘׂᬍᅗˈᅲ⦄њҢ⍜ᙃ᮹ᖫ䇏প⍜ᙃ䞡ˈথ⍜ᙃⱘࡳ㛑DŽˈ⍜ᙃᬊ㗙䖬㽕䗮䖛䗮ֵᑧ䗖䜡఼⫳៤RSNˈϢᑨㄨ⍜ᙃϔ䍋থ䗕㒭⍜ᙃথ䗕㗙DŽ᳔߱ⱘѢথ䗕ᮍⱘ⍜ᙃ᮹ᖫण䆂Ё⍜ˈᙃ᮹ᖫֱᄬϾ㒧⚍ⱘᯧ༅ᗻᄬټ఼Ёˈℸা㛑ᆍᖡϔᬙ䱰DŽ㗠ᴀ᭛ᦤߎⱘᏺ⍜ᙃ᮹ᖫⱘẔᶹ⚍㒧ᵘϟˈ⍜ᙃ᮹ᖫЎᑨ⫼㑻Ẕᶹ⚍᭄ⱘϔ䚼ߚˈֱᄬ〇ᅮⱘᄬټ䆒ЁDŽབᵰϸϾҹϞⱘᄤϮᬙ䱰䙷ˈМᬙ䱰ⱘᄤϮህ䛑ಲ⒮ࠄ᳔䖥䖯㸠њẔᶹ⚍᪡ⱘϮ䖯ሩˈথ䗕䞡থ⍜ᙃ䇋∖ˈབᵰᬙ䱰ᄤϮ䯈᳝⍜ᙃӴ䗦ˈ䙷Мᬙ䱰ⱘᄤϮ㞾ҢϞϔϮ䖯ሩᓔྟᠻ㸠ⱘ䖛Ёҡˈᠻ㸠ϮЁ᳝ⱘ⍜ᙃথ䗕᪡DŽৃ㾕ˈ䖭ᰃϔ⾡ᅠܼߚᏗᓣⱘ䴲णৠⱘẔᶹ⚍ण䆂ˈ䗖ড়㔥Ḑ⦃๗ϟᅲ⦄DŽẔᶹ⚍ԧ㋏㒧ᵘϮẔᶹ⚍ⱘᅲ⦄⌕Ẕᶹ⚍᭄ⱘᄬټ㒧ᵘẔᶹ⚍᭄ⱘৃ䴴ᄬټ催ᬜ䆓䯂ᰃẔᶹ⚍/ᘶ᳡ࡵⱘ݇䬂DŽѢϮ䖯ሩᦣ䗄ⱘẔᶹ⚍ण䆂ЁᇍˈᑨѢϔϾẔᶹ⚍ϮⱘẔᶹ⚍᭄ࣙᣀϔϾϮ䖯ሩᦣ䗄ᇍ䈵ϔ㒘Ϯ䖯ሩ⢊ᗕᇍ䈵DŽᴀ᭛ⱘẔᶹ⚍ᴎࠊЁẔˈᶹ⚍᭄ⱘᄬ 28 义- 47 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ټ㒧ᵘߚ៤ϸϾሖ˖䅵ㅫ䌘⑤㑻ⱘẔᶹ⚍᭄㓧ᄬ㔥Ḑ㑻ⱘẔᶹ⚍᭄ᄬټˈབ᠔⼎DŽᄬټ㔥Ḑ㑻ᄬټ䆒ϞⱘϢϔϾẔᶹ⚍ϮᇍᑨⱘẔᶹ⚍᭄ࣙᣀϔϾϮ䖯ሩᦣ䗄ᇍ䈵ϔ㒘Ϯ䖯ሩ⢊ᗕᇍ䈵DŽ䗮䖛ݫԭࡃᴀⱘᮍ⊩㔥Ḑ㑻ᄬټ᳡ࡵ䗮ˈᐌৃҹֱ䆕Ẕᶹ⚍᭄ⱘᅝܼᗻৃ⫼ᑺˈৃҹ؛ᅮᄬټ㔥Ḑ㑻ᄬټ䆒ϞⱘẔᶹ⚍᭄ᘏᰃৃ⫼ⱘDŽЎњޣᇥẔᶹ⚍Ϯ↣䖯㸠Ẕᶹ⚍᪡ⱘᓔ䫔ˈ䅵ㅫ䌘⑤㒧⚍ⱘᄬټ㋏㒳˄བ⹀Ⲭㄝ䕗〇ᅮⱘᄬټ䆒˅Ϟ䆒䅵њẔᶹ⚍᭄㓧ᄬˈߚЎϸϾ㓧ᄬऎ˖Ϯ䖯ሩᦣ䗄ᇍ䈵㓧ᄬϮ䖯ሩ⢊ᗕᇍ䈵㓧ᄬDŽ䖭ḋϮⱘẔᶹ⚍᪡䖛ߚ៤њϸϾ䰊↉1˖.Ẕᶹ⚍᭄ݭܹ䅵ㅫ䌘⑤㑻㓧ᄬ2˗.㓧ᄬЁⱘẔᶹ⚍᭄ݭܹࠄ㔥Ḑ㑻ᄬټ㋏㒳ЁDŽᇚࠡ㗙⿄ЎẔᶹ⚍᭄ݭܹˈৢ㗙⿄ЎẔᶹ⚍᭄ݭಲDŽ⬅Ѣ䅵ㅫ䌘⑤㑻ⱘᄬټ㋏㒳䗮ᐌϡ㛑ֱ䆕Ẕᶹ⚍᭄ⱘৃ䴴ᗻ㽕∖ˈℸা᳝ᔧẔᶹ⚍᭄ݭಲࠄ㔥Ḑ㑻ᄬټ㋏㒳Ẕˈᶹ⚍᪡ᠡⳳℷᅠ៤㗠˗䅵ㅫ䌘⑤㑻ⱘᄬټ㋏㒳䗮ᐌজ㛑⒵䎇Ẕᶹ⚍᭄᱖ᯊᄬټⱘ䳔∖˗ℸ䞛ˈ⫼ϸ㑻ᄬټⱘẔᶹ⚍᭄ᄬټ㒧ᵘ䗖ড়Ѣ䅵ㅫ㔥Ḑ⦃๗DŽԚᰃˈ⬅Ѣᓩܹњϸ㑻ᄬټሖˈẔᶹ⚍᭄ⱘᄬټㅵ⧚বᕫࡴ䞡㽕DŽẔᶹ⚍᭄ᄬټ㒧ᵘẔᶹ⚍᭄ᄬټㅵ⧚Ẕᶹ⚍᭄ᰃᬙ䱰ᘶⱘ⸔ˈ㗠Ẕᶹ⚍᭄ᄬټㅵ⧚ᰃẔᶹ⚍/ᘶ᳡ࡵⱘ݇䬂ݙᆍПϔDŽᴀ᭛ᦤߎⱘѢϮ䖯ሩᦣ䗄ⱘẔᶹ⚍ᴎࠊЁẔˈᶹ⚍᭄ⱘᄬټ㒧ᵘབϞϔ㡖᠔⼎DŽ䖭ϔẔᶹ⚍᭄ᄬټԧ㋏㒧ᵘЁ㽕ˈ㾷އⱘ݇䬂䯂乬Пϔᰃ⹂ᅮẔᶹ⚍᭄ⱘݭಲᯊᴎDŽᴀ㡖ㅔ㽕ҟ㒡Ẕᶹ⚍᭄ᄬټ䖛Пৢ䆒ˈ䅵њ⾡Ẕᶹ⚍᭄ݭಲㅫ⊩᳔ˈৢ㒭ߎњ㞾䗖ᑨⱘẔᶹ⚍᭄ݭಲㅫ⊩DŽ 29 义- 48 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛Ẕᶹ⚍᭄ᄬټ䖛ϔϾẔᶹ⚍Ϯৃҹᦣ䗄Ў˖JPSS {(jps1,rt1,sds1,pr1),(jps2,rt2,sds2,pr2), ,(jpsn,rtn,sdsn,prn)}݊Ёˈjpsi㸼⼎Ϯ䖯ሩiⱘϮ䖯ሩᷛ䆚ˈrti㸼⼎Ϯ䖯ሩiⱘ䖤㸠ᯊ䯈ˈsdsi㸼⼎Ϯ䖯ሩiⱘ⢊ᗕ᭄ᇣˈpri㸼⼎Ϯ䖯ሩi㒧ᴳᯊⱘ⢊ᗕ᭄Ёᰃ৺ࣙᑣⱘ䚼ߚ㒧ᵰDŽzẔᶹ⚍᭄㓧ᄬ᪡˄⬹˅zẔᶹ⚍᭄ݭಲ᪡˄⬹˅Ẕᶹ⚍᭄ݭಲㅫ⊩਼ᳳᗻݭಲㅫ⊩䖭Ͼㅫ⊩Ёˈ਼ᳳᗻഄ䇗⫼ݭಲ᪡DŽ˄⬹˅Ẕᶹ⚍᪡偅ࡼⱘݭಲㅫ⊩䖭ϔㅫ⊩ⱘᴀᗱᛇᰃ䖯㸠⡍ᅮⱘẔᶹ⚍᪡ᯊਃࡼݭಲ᪡ˈ˄⬹˅䖤㸠ᯊ䯈偅ࡼⱘݭಲㅫ⊩㓧ᄬぎ䯈ᆍ䞣偅ࡼⱘẔᶹ⚍᭄ݭಲㅫ⊩㞾䗖ᑨⱘẔᶹ⚍᭄ݭಲㅫ⊩Ḛᶊ㔥Ḑ㑻ⱘẔᶹ⚍᭄ᄬټㅵ⧚ᴀゴᇣ㡖 30 义- 49 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛݁ゴ㔥Ḑ催ৃ⫼᳡ࡵሖⱘ䆒䅵Ўњᵘᓎ催ৃ⫼ⱘ㔥Ḑ⦃๗䳔ˈ㽕㔥ḐЁ䯈ӊЁᅲ⦄催ৃ⫼ᡔᴃDŽᴀゴ㒧ড়GlobusᎹࣙˈ㔥ḐḌᖗЁ䯈ӊЁ䆒䅵њ㔥Ḑ催ৃ⫼᳡ࡵሖ˄High Availability Service Layer for Grid,HASL4G˅ˈҟ㒡њHASL4Gⱘ㒧ᵘঞ㒘ӊⱘࡳ㛑ˈ䅼䆎њ݊Ҫ㔥ḐЁ䯈ӊ㒘ӊⱘѸѦ݇㋏DŽ㔥ḐЁ䯈ӊ㔥ḐЁ䯈ӊὖ䗄㔥ḐḌᖗЁ䯈ӊ 㔥Ḑ催ৃ⫼᳡ࡵሖⱘ㒧ᵘࡳ㛑㔥ḐЁ䯈ӊЁ䆒䅵催ৃ⫼᳡ࡵሖⱘⳂᷛᰃ㒧ড়㔥ḐḌᖗЁ䯈ӊ㒘ӊЎ㔥Ḑᑨ⫼ᦤկ催ৃ⫼᳡ࡵDŽ㔥Ḑ催ৃ⫼᳡ࡵሖⱘԧ㋏㒧ᵘབ᠔⼎DŽ㔥ḐЁ䯈ӊ催ৃ⫼᳡ࡵሖⱘԧ㋏㒧ᵘHASL4Gⱘ㒘ӊབЁ咥㰮㒓ḚЁ᠔⼎䖭ˈѯ㒘ӊⱘ㒧ᵘࡳ㛑䆒䅵Ꮖ㒣ᴀ᭛ࠡ䴶ⱘⳌ݇ゴ㡖Ё䖯㸠њ䆺㒚ҟ㒡ˈϟ䴶ҟ㒡䖭ѯ㒘ӊᰃབԩՓ⫼GlobusᎹࣙЁᏆ㒣ᦤկⱘḌᖗ᳡ࡵᴹᅲ⦄ⱘDŽ 31 义- 50 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛䌘⑤ӑ᳡ࡵ䴶催ৃ⫼ⱘ䌘⑤䇗ᑺẔᶹ⚍᳡ࡵᴀゴᇣ㒧 32 义- 51 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ϗゴ㒧ᴳ䇁ᴀ᭛Џ㽕䋵⤂ϟϔℹⷨおᎹᴀ᭛ⷨおᎹⱘ⸔Ϟˈৢ㓁ᇚӮᇍϟ䗄ϾⳌ݇䯂乬䖯ϔℹⱘ⏅ܹⷨお˖1ˊߚᵤ㔥ḐЁ䯈ӊϾ㒘ӊⱘ㒘㒛䚼㕆㒧ᵘҹঞѸѦ݇㋏ˈⷨおབԩᵘᓎ剕Ầⱘ㔥ḐЁ䯈ӊᴹֱ䆕㔥Ḑⱘৃ⫼ᗻDŽᴀ᭛ⱘⷨおᎹЁˈ؛ᅮЁ䯈ӊⱘϾ㒘៤㒘ӊᘏᰃৃ⫼ⱘⴔˈ䞡ⷨおЁ䯈ӊЁབԩ䩜ᇍ䌘⑤ⱘᬙ䱰ᦤկ催ৃ⫼᳡ࡵDŽ㗠㔥ḐЁ䯈ӊ㒘ӊⱘ䚼㕆㒘㒛ҹঞѸѦ㸠Ўᇍᬙ䱰ᘶг᳝ϔѯᕅડˈЎℸ䳔㽕䩜ᇍ䖭ϔ䯂乬䖯㸠⏅ܹⱘⷨおDŽ2ˊᔧࠡˈЎњᢧሩ㔥Ḑ䅵ㅫⱘᑨ⫼乚ඳˈ㔥ḐᡔᴃℷϢWeb Serviceᡔᴃ㵡ড়ˈҹ㔥Ḑ᳡ࡵЎ䌘⑤ሖⱘᅲ⦄ᮍᓣDŽ䖭⾡ᚙމϟˈৃҹ䖯ϔℹⷨお᳡ࡵড়៤ǃ᳡ࡵথ⦄ҹঞ᳡ࡵ䖕⿏Ёⱘ催ৃ⫼݇䬂ᡔᴃDŽᴀ᭛ᦤߎⱘᮍ⊩পᕫⱘ៤ᵰৃҹᑨ⫼ࠄ䖭ѯᡔᴃ乚ඳЁˈᔧ✊г㽕䴶ᇍ䳔㽕㾷އⱘ䯂乬DŽ3ˊᴀ᭛ⱘ䌘⑤ৃ⫼ᑺ乘⌟ᮍ䴶≵᳝㗗㰥䌘⑤ⱘ᠔᳝㗙ⱘ㸠Ўᇍ䌘⑤ৃ⫼ᑺⱘᕅડ㗠ˈࡴܹࠄ䅵ㅫ㔥Ḑ⦃๗Ёⱘ䌘⑤᳝ᵕⱘ㞾Џᗻ䌘ˈ⑤ᢹ᳝㗙ᇍ䌘⑤ⱘ᪡Փ⫼ㄪ⬹ᇍ䌘⑤ⱘৃ⫼ᑺ᳝ᕜⱘᕅડDŽ䖭ѯᕅડᰃҎⱘ㸠Ў㋴⼒Ӯ㋴݅ৠ⫼ⱘ㒧ᵰDŽ㽕㗗㰥䖭ѯᕅડ䳔ˈ㽕׳䡈Ҏ㉏㸠Ўᄺ⼒ӮᄺⱘⳌᑨⷨお៤ᵰˈࡴ⏅ܹഄߚᵤ㞾Џ䌘⑤㔥Ḑ⦃๗Ёⱘ㸠Ў㾘ᕟЎˈདഄ乘⌟䌘⑤ⱘৃ⫼ᑺᦤկᐂࡽDŽ4ˊ㔥Ḑӑ䌘⑤䗝ᢽᮍ䴶ᴀˈ᭛ᦤߎⱘѢᢧᠥ⒵䎇ᑺⱘ䌘⑤䗝ᅮᮍ⊩ˈ↣া㗗㰥ϔϾ䗝䌘⑤ˈৃҹ䖯ϔℹⷨおৠᯊ㗗㰥Ͼ䗝䌘⑤ৠᯊ᳓ҷᏆߚ䜡ⱘϾ䌘⑤ᯊᢧᠥ⒵䎇ᑺⱘ䯂乬DŽ5ˊᴀ᭛ᦤߎⱘ䅵ㅫ㔥ḐẔᶹ⚍ण䆂䖬᳝䆌䳔㽕ᅠⱘഄᮍˈ䳔㽕ⷨおབԩ㔥ḐϮᵘᓎЁ⡍߿ᰃ㔥ḐϮᦣ䗄䇁㿔ЁᠽሩϮ䖯ሩߦߚǃ݇㋏ᅮНǃੑৡㄝϮᦣ䗄䇁㿔ܗ㋴ˈᵘᓎৃᠽሩⱘৃҹᬃᣕẔᶹ⚍ᴎࠊⱘϮᦣ䗄䇁㿔DŽ݊䳔ˈ㽕ⷨおϢᏆ᳝ⱘ㔥Ḑ⍜ᙃӴ䗦ᑧ㒧ড়ৢⱘẔᶹ⚍ᗻ㛑ǃᘶᗻ㛑Ӭ࣪ㄝ䯂乬DŽˈᇍѢ㔥Ḑ㑻ⱘẔᶹ⚍᭄ㅵ⧚ˈ⡍߿ᰃࡃᴀㅵ⧚ǃᅮԡ᳡ࡵㄝˈ䖬䳔㽕㒧ড়㔥Ḑ᭄ㅵ⧚ᡔᴃ䖯㸠⏅ܹⱘⷨおDŽ 33 义- 52 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛ᬏ䇏मᄺԡᳳ䯈থ㸼䆎᭛ⱘᚙމᬏ䇏मᄺԡᳳ䯈খࡴⱘ⾥ⷨᎹ㟈䇶ᴀ᭛ᅠ៤П䰙ˈ䇼᠔᳝㒭ќ៥ᣛᇐǃ݇ᗔǃᐂࡽᬃᣕⱘ㗕Ꮬǃ乚ᇐǃৠᄺǃ҆Ҏ᳟ট㸼⼎⏅⏅ⱘᛳ䇶DŽ˄⬹˅ᛳ䇶᠔᳝䑿໘ഄⱘ៥᠔㒧䆚ⱘ݇ᖗ៥ⱘ᳟টӀʽ 34 义- 53 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛খ㗗᭛⤂[1]I. Foster, C. Kesselman, S. Tuecke. The Anatomy of the Grid: Enabling Scalable Virtual ’l J. High-Performance Computing Applications, vol. 15, no. 3, 2001, pp. 200-222. [2]David de Roure, Mark A. Baker, Nicholas R. Jennings and Nigel R. Shadbolt. The evolution of the Grid, in the book of Grid Computing - Making the Global Infrastructure a Reality, John Wiley and Sons Ltd, 2003, pp. 65-100. [3]I. Foster, C. Kesselman (eds.). The Grid: Blueprint for a Future Computing Infrastructure. Morgan Kaufmann: San Francisco, CA, 1999. st[4]I. Foster. The Grid: A New Infrastructure for 21 Century Science. Physics Today, 54(2), 2002. [5]Paul Messina. Distributed Supercomputing Applications. In the book of The Grid: Blueprint for a Future Computing Infrastructure, Morgan Kaufmann Publishers, 1999, -73. [6]Reagan Moore, Chaitanya Baru, Richard Marciana, Arcot Rajasekar, and Michael Wan. Data Intensive Computing. In the book of The Grid: Blueprint for a Future Computing Infrastructure, Morgan Kaufmann Publishers, 1999, -129. [7]William Johnson. Realtime Widely Distributed Instrumentation Systems. In the book of The Grid: Blueprint for a Future Computing Infrastructure, Morgan Kaufmann Publishers, 1999, -103. [8]Tom Defanti and Rick Stevens. Teleimmersion. In the book of The Grid: Blueprint for a Future Computing Infrastructure, Morgan Kaufmann Publishers, 1999, -156. [9]A. Brown and D. A. Patterson. Embracing failure: A Case for Recovery- Oriented Computing (ROC). In High Performance Transaction Processing Symposium, Asilomar, CA, October 2001. [10]W. J. Bolosky, J. R. Douceur, D. Ely, and M. Theimer. Feasibility of a Serverless Distributed File System Deployed on an Existing Set of Desktop PCs. In Proceedings of the ACM International Conference on Measurement and Modeling of Computer Systems, SIGMETRICS, pp. 34-43, 2000. [11]George Bosilca, Aurelien Bouteiller, et al. MPICH-V: Toward a Scalable Fault Tolerant MPI for Volatile Nodes. In Proceedings of International Conference on Super Computing,IEEE Computer Society, Nov. 2002. [12]G. Fedak, C. Germain, V. Neri, F. Cappello. Xtrem Web: A Generic Global Computing System. In proceedings of the 1st IEEE/ACM Int’l Conf. On Cluster Computing and the Grid, Brisbane, Australia, IEEE Computer Society, May 2001, -460. [13]SF Express Project. [14]Sharon Brunett and Steven Fitzgerald. Metacomputing Supports Large-Scale Distributed Simulations. May 1998, /pubs/sc98/.[15]Dhiraj . Fault-Tolerant Computer System Design. Prentice Hall PTR, June 1996 [16]Tanenbaum A S. Distributed Operating System. Prentice Hall Inc, 1995. [17]Jie Wu. Distributed System Design. CRC Press LLC, 1999. [18]I-WAY Project. [19]Kai Hwang and Zhiwei Xu. Scalable Paralle Computing: Technology, Architecture, Programming. The McGraw-Hill Companies, Inc. 1998. [20]J. K. Muppala, R. Fricks and K. S. Trivedi. Techniques for System Dependability Evaluation, Computational Probability, W. K. Grassmann (ed.), Kluwer Academic Publishers, 2000, -479. [21]DEC, TruCluster: Digital’s UNIX Cluster, Digital Part # EC-Z6310-43, Feb. 1996. [22]L. Smarr and C. Catlett. Metacomputing, Communications of the ACM, (1992), pp. 44-52. [23]I. Foster and C. Kesselman. Globus: A Metacomputing Infrastructure Toolkit, International Journal of Supercomputing Applications, 11(2), 1997, pp:115-128. [24]FAFNER, Grimshaw, W. Wulf et al.. The Legion Vision of a Worldwide Virtual Computer. Communications of ACM, (1), 1997. [26]Global Grid Forum, GGF. Foster, C. Kesselman, J. Nick and S. Tuecke. The Physiology of the Grid: Open Grid Service Architecture for Distributed System Integration. Presented at GGF4, Feb 2002. 35 义- 54 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛[29]Globus Project, the Information Future: The Internet and Beyond. National Academy Press, 1994. Computing Info Centre. E. Johnson, D. Gannon, and B. Nitzberg. Information Power Grid Implementation Plan: Research, Development, and Testbeds for High Performance , Widely Distributed, Collabrative, Computing and Information System Supporting Science and Engineering. NASA Ames Research Center, IPG, 1999. [34]EuroGrid. Project. Project. Lewis, A. Grimshaw. The Core Legion Object Model. Proceedings of the Fifth IEEE International Symposium on High Performance Distributed Computing, August 1996. [38]DataGrid. Hoschek, J. Jaen-Maetinez, A. Samar, H. Stockinger, and K. Stockinger, Data Management in an stInternational Data Grid Project. Proceedings of the 1 IEEE/ACM International Workshop on Grid Computing (Grid’2000), Bangalore, India, 17-20 Dec. 2000, Springer-Verlag Press, Germany. [40]Ninf: Network Infrastructure for global computing. Polder Computing Environment. http:// . [42]NAREGI: National Research GRID Initiative. GRID. Grid Homepage. Project. Project. Project. Project. Portal. (Uniform Interfaces to Computing Resources) Project. http://www. Legion Project Testbed. Project. Project. Project. Legion Project Testbed. Corp. Building Secure and Reliable Network Applications. Manning Publications, Greenwich, CT, 1996. [58]L. Lamport, R. Shostak and M. Pease. The Byzantine Generals Problem. ACM .Transactions on Programming Languages and Systems, July 1982, 4(3):382-401. [59]R. Braden, D. Clark and S. Shenker. Integrated Services in the Internet Architecture: An Overview. 1994. RFC1633. [60]M. Garrett. ATM Service Architecture: From Applications to Scheduling. 1994. ATM Forum Contribution 94-0846 TMSVG. [61]VEGA. Jin, Deqing Zou, Hanhua Chen, Jianhua Sun and Song Wu. Fault-Tolerant Grid Architecture and Practice. In Proceedings of Journal of Computer Science and Technology ,Volume 18, Issue 4, July 2003. [63]X. He, X. H. Sun and G. V. Laszewski. QoS Guided Scheduling Algorithm for Grid Computing. In Proceedings of the International Workshop on Grid and Cooperative Computing, GCC 2002, Sanya, China, Nov. 2002. [64]GGF11. Stone et al. An Architecture for Grid Checkpoint Recovery Services and a GridCPR API. Fischer, . Lynch, and . Paterson. Impossibility of distributed consensus with one faulty process. In Journal of the ACM, 1985, 32: 217-246. [67]. Chandra, V. Hadzilacos, and S. Toueg. The weakest failure detector for solving consensus. Journal of the ACM, July 1996, 43(4):685-722. 36 义- 55 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛[68]. Chandra and S. Toueg. Unreliable failure detectors for reliable distributed systems. Journal of the ACM, 43(2):225-267, 1996. A preliminary version appeared in the Proceedings of the Tenth ACM Symposium on Principles of Distributed Computing, ACM Press, August 1991: 325-340. [69]Object Management Group. CORBA Notification Service Specification . OMG, June 2000. [70]J. K. Muppala, R. M. Fricks and K. S. Trivedi. Techniques for System Dependability Evaluation. In Computational Probability, W. Grassman (ed.), pp. 445-480, Kluwer Academic Publishers, The Netherlands, 2000. [71]R. E. Barlow and F. Proschan. Statistical Theory of Reliability and Life Testing – Probability Models. Holt, Rinehart and Winston, New York, NY, USA, 1975. [72]O. Ibe, R. Howe, and K. S. Trivedi. Approximate Availability Analysis of VAXCluster Systems. IEEE Transactions on Reliability, Vol. 38, No. 1, Apr. 1989, pp. 146-152. [73]A. , . Lavenberg and . Trivedi. Probabilistic Modeling of Computer System . of Oper. Res., vol. 8, pp. 285- 306, 1986. [74]R. Sahner, A. Puliafito and K. S. Trivedi. Performance and Reliability Analysis of Computer Systems: An Example-Based Approach Using the SHARPE Software Package. Kluwer Academic Publishers, Boston, 1995. [75]K. S. Trivedi, Probability and Statistics with Reliability, Queuing and Computer Science Applications, Prentice-Hall, Englewood Cliff, NJ, 1982. [76]R. Wolski. Dynamically Forecasting Network Performance Using the Network Weather Service. In Journal of Cluster Computing, Volume 1, pp. 119-132, January 1998. [77]R. Wolski, N. Spring, and J. Hayes. The Network Weather Service: A Distributed Resource Performance Forecasting Service for metacomputing. In Journal of Future Generation Computing Systems, Volume 15, Numbers 5-6, pp. 757-768, October 1999. [78]B. Tierney, R. Aydt, D. Gunter, W. Smith, M. Swany, V. Taylor, R. Wolski. A Grid Monitoring Architecture. August, 2002. GGF Technical Report , January 2002. Czajkowski, S. Fitzgerald, I. Foster and C. Kesselman. Grid Information Services for Distributed Resource Sharing. In Proc. of 10th IEEE International Symposium on High Performance Distributed Computing (HPDC-10'01), IEEE Press, August 2001. [80]P. Holub, M. Kuba, L. Matyska and M. Ruda. Grid Infrastructure Monitoring as Reliable Information Service. In the 2nd European Across Grids Conference, Nicosia, Cyprus, January 2004. [81]David W. Coit. System Reliability Prediction Prioritization Strategy. In Proceedings of Annual Reliability and Maintainability Symposium, 2000. [82]Liu, C., Yang, L., Foster, I. and Angulo, D., Design and Evaluation of a Resource Selection Framework for Grid Applications. Proceedings of the 11th IEEE International Symposium on High-Performance Distributed Computing (HPDC 11), Edinburgh, Scotland, 2002. [83]Dinda, . and O'Hallaron, ., Host Load Prediction Using Linear Models, Cluster Computing, Vol. 3, 2000. [84]Dail, ., A Modular Framework for Adaptive Scheduling in Grid Application Development Environments. Computer Science,University of California, California, San Diego, 2001. [85]Bjorn Frogner, Alexander B. Cannara. Monitoring and Prediction of Network Performance. International Workshop on Advance Issues of E-Commerce and Web-Based Information Systems. Santa Clara, California USA, April 08-09, 1999. [86]Konstantinos Psounis, Rong Pan, Balaji Prabhakar, Damon Wischik. The Scaling Hypothesis: Simplifying the Prediction of Network Performance using Scaleddown Simulations. ACM SIGCOMM Computer Communications Review. Volume 33, Number 1, January 2003. [87]C. Leangsuksun, L. Shen, T. Liu, H. Song and . Scott. Availability Prediction and Modeling of High Availability OSCAR Cluster. [88]S. Fitzgerald, I. Foster, C. Kesselman, G. von Laszewski, W. Smith, and S. Tuecke. A directory service for con_guring high-performance distributed computations. In Proc. of 6th IEEE Symp. on High Performance Distributed Computing, IEEE Computer Society Press, pp 365-375, 1997. [89]M. Wahl, S. Kille and T. Howes. "Lightweight Directory Access Protocol (v3)" , RFC 2251, December 1997. [90]Extensible Markup Language ( XML) : W3C Recommendation, Feb. 2004. [91]B. Byrom et al. DataGrid Information and Monitoring Service Architecture: Design, Requirements and Evaluation Criteria. 2002. [92]L. Yang, I. Foster and . Schopf. Homeostatic and Tendency-based CPU Load Predictions. International Parallel and Distributed Processing Symposium (IPDPS2003), Nice, France, 2003. [93]L. Yang, . Schopf and I. Foster. Conservative Scheduling: Using Predicted Variance to Improve 37 义- 56 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛Scheduling Decision in Dynamic Environments. In Proceedings of SuperComputing 2003 (SC2003), Nov. 2003. [94]R. Buyya, S. Chapin and D. DiNucci. Architectural Models for Resource Management in the Grid. The First IEEE/ACM International Workshop on Grid Computing (GRID 2000), Springer Verlag LNCS Series, Germany, Dec. 17, 2000, Bangalore, India. [95]S. Chapin, M. Clement and Q. Snell. A Grid Resource Management Architecture, Strawman 1, Grid Forum Scheduling Working Group, November 1999. [96]M. Stonebraker, et al. An Economic Paradigm for Query Processing and Data Migration in Mariposa. In rdProceedings of 3 International Conference on Parallel and Distributed Information Systems, Sept. 1994. [97]R. Buyya, D. Abramson and John Giddy. Nimrod/G: An Architecture for a Resource Management and thScheduling System in a Global Computational Grid. In Proceedings of the 4 International Conference on High Performance Computing in Asia-Pacific Region (HPC Asia 2000), China, 2000. [98]S. Lalis and A. Karipidis. JaWS: An Open Market-Based Framework for Distributed Computing over the Internet. In Proceedings of IEEE/ACM International Workshop on Grid Computing (Grid 2000), Dec. 2000. [99]Alain Roy. End-to-End Quality of Service for High-End Applications. Thesis. The University of Chicago, Aug. 2001. [100]R. Braden, L. Zhang, S. Berson, S. Herzog and S. Jamin. Resource ReSerVation Protocol (RSVP)-version 1, functional specification. Internet RFC 2205, September, 1997. [101]J. Forgie. ST – a Proposed Internet Stream Protocol. Internet IEN 119, September 1979. [102]K. Czajkowski, I. Foster, N. Karonis, C. Kesselman, S. Martin, W. Smith and S. Tuecke. A Resource Management Architecture for Metacomputing Systems. In Proceedings of the IPPS/SPDP ’98 Workshop on Job Scheduling Strategies for Parallel Processing, 1998. [103]H. Chu and K. Nahrstedt. CPU Service Classes for Multimedia Applications. In Proceedings of IEEE International Conference on Multimedia Computing and Systems. IEEE Computer Society Press, 1999. [104]Sharon Brunett and Steven Fitzgerald. Metacomputing Supports Large-Scale Distributed Simulations, May 1998, pubs/sc98/. [105]GridCPR Working Group. An Architecture for Grid Checkpoint Recovery Services and a GridCPR API. .[106]Michael Litzkow, Todd Tannenbaum, Jim Basney, and Miron Livny. Checkpoint and Migration of UNIX Processes in the Condor Distributed Processing System. Dr. Dobbs Journal, February 1995. [107]GridCPR Working Group. . [108]Cactus Web Site. [109]G. Allen. Cactus Grid Computing. . [110]G. Allen,T. Dramlitsch, I. Foster, N. Karonis, , , and B. Toonen. Supporting Efficient Execution in Heterogeneous Distributed Computing Environments with Cactus and Globus. In Proceedings of the ACM/IEEE SC2001 Conference (SC'01), November 10-16, 2001 Denver, Colorado. [111]T. Goodale and G. Allen. Checkpoint/Recovery in Cactus . [112]Gianelle, A., Peluso, etc. Job Partitioning and Checkpointing. Technical Report DataGrid-01-TED-0119-0_3. European DataGrid Project. June 2002. [113]DataGrid Project. WP1 Document, Job description language. . September 2001. .[114]R. Tolksdorf. Models of coordination and web-based systems. In D. Marinescu and C. Lee, editors, Process Coordination and Ubiquitous Computing. CRC Press, 2002. [115]N. Furmento, A. Mayer, S. McGrouph, S. Newhouse, T. Field, and J. Darlington. An Integrated Grid Environment for Component Applications. In Second International Workshop on Grid Computing (Grid 2001), LNCS Vol. 2242, pp. 26-37, 2001. [116]L. Fischer, editor. The Workflow Handbook 2002. Future Strategies, Inc., 2002. [117]C. Lee and D. Talia, Grid Programming Models: Current Tools, Issues and Directions. In Grid Computing: Making the Global Infrastructure a Reality, F. Berman, G. Fox and T. Hey (eds.), Wiley, chapt. 21, pp. 555-578, 2003. [118]I. Foster and N. T. Karonis. A Grid-Enabled MPI: Message Passing in Heterogeneous Distributed Computing Systems. In Proceedings of the IEEE/ACM SC98 Conference November 07 - 13, 1998 Orlando, Florida. [119]N. T. Karonis, B. Toonen and I. Foster. MPICH-G2: A Grid-Enabled Implementation of the Message Passing Interface. In Journal of Parallel and Distributed Computing (JPDC), Vol 163, No. 5, May 2003, pp. 551-563. [120]Message Passing Interface Forum. MPI: A message-passing interface stanstard. International Journal of Supercomputer Applications, 8(3/4):165-414, 1994. 38 义- 57 -
䰆⾥ᄺᡔᴃᄺⷨお⫳䰶ᄺԡ䆎᭛[121]W. Gropp, E. Lusk, N. Doss and A. Skjellum. A High-Performance, Portable Implementation of the MPI Message Passing Interface Standard. Parallel Computing, Vol. 22, 1996, pp. 789-828. [122]William L. George, John G. Hagedorn, and Judith E. Devaney. IMPI: Making MPI Interoperable. In the Journal of Research of NIST. May-June, 2000. [123]Eickermann, Thomas; Grund, Helmut; Henrichs, Jörg. Performance Issues of Distributed MPI Applications in a German Gigabit Testbed. J. Dongarra, E. Luque, and T. Margalef (eds.) Recent Advances in Parallel Virtual Machine and Message Passing Interface, In Proc. of the 6th European PVM/MPI Users' Group Meeting, Barcelona, September 1999. [124]G. Fagg and K. London. MPI interconnection and control. In Technical Report TR98-42, Major Shared Resource Center, . Army Corps of Engineers Waterways Experiment Station, Vicksburg, Missippissi, 1998. [125]E. dgar Gabriel, Michael Resch, and Roland Rhle. MPI with optimized algorithms for metacomputing. In Yoginder S. Dandass Anthony Skjellum, Purushotham V. Bangalore, editor, In Proceedings of the Third MPI Developer’s and User’s Conference. ImplementingMPI Software Technology Press, 1999. [126]Communication Library Between Heterogeneous Parallel Computers, Stampi-User Manual, JAERI-Data/Code 98-034, 1998. [127]Georg Stellner. CoCheck: Checkpointing and Process Migration for MPI. In Proceedings of the 10th International Parallel Processing Symposium (IPPS'96), Honolulu, Hawaii, 1996. [128]A. Agbaria and R. Friedman. Starfish: Fault-tolerant dynamic MPI programs on clusters of workstations. In 8th IEEE International Symposium on High Performance Distributed Computing, 1999. [129]L. Alvisi and K. Marzullo. Message Logging: Pessimistic, Optimistic, Causal, and Optimal. IEEE Transaction on software Engineering, 24(2):149-159, Feb. 1998. [130]D B. Johnson andW Zwaenepoel. Sender-based message logging. Technical report, Department of Computer Science, Rice University, Houston, Texas, 1987. TM[131]R. Batchu, J. Neelamegam, Z. Cui, M. Beddhua, A. Skjellum, Y. Dandass, and M. Apte. MPI/FT:Architecture and taxonomies for fault-tolerant, message-passing middleware for performanceportable parallel computing. In Proceedings of the 1st IEEE International Symposium of Cluster Computing and the Grid held in Melbourne, Australia., 2001. [132]Soulla Louca, Neophytos Neophytou, Arianos Lachanas, and Paraskevas Evripidou. MPI-FT: Portable fault tolerance scheme for MPI. In ParallelProcessing Letters, Vol. 10, No. 4, 371-382 , World Scientific Publishing Company., 2000. [133]George Bosilca, Aurelien Bouteiller, Franck Cappello, Samir Djilali, Gilles Fedak, Cecile Germain, Tho mas Herault, Pierre Lemarinier, Oleg Lodygensky, Frederic Magniette, Vincent Neri, Anton Selikhov. MPICH-V: Toward a Scalable Fault Tolerant MPI for Volatile Nodes. In Proceedings of the IEEE/ACM SC2002 Conference, November 2002. [134]G. Fagg and J. Dongarra. FT-MPI: Fault tolerant MPI, supporting dynamic applications in a dynamic world. In Euro PVM/MPI User’s Group Meeting 2000 ,Springer-Verlag, Berlin, Germany, pp 346-353., 2000. [135]William Gropp, Ewing Lusk, Nathan Doss, and Anthony Skjellum. High-performance, portable implementation of the MPI Message Passing Interface Standard. Parallel Computing, 22(6):789–828, September 1996. [136]D. L. Russell. State Restoration in Systems of Communicating Processes. IEEE Transactions on Software Engineering, SE-6(2):183-194, March 1980. [137]M. Wahl, T. Howes and S. Kille. Lightweight Directory Access Protocol (V3). [138]S. Blake, D. Black, M. Carlson, M. Davies, Z. Wang and W. Weiss. An Architecture for Differentiated services. Internet RFC 2475, December 1998. [139]GIG, Global Information Grid. Ferris and J. Farrell. What are Web services? Communications of the ACM,46(6):31,June 2003. [141]A. Sathaye, S. Ramanni, K. S. Trivedi. Availability Models in Practice. In Proceedings of Int. Workshop on Fault-Tolerant Control and Computing (FTCC-1), May 22-23, 2000, Seoul, Korea. [142]E. Balkovich, P. Bhabhalia, W. Dunnington and T. Weyant. Vaxcluster Availability Modeling. Digital Technical Journal, ,pp 69-79, Sept. 1987. [143]ゴᷟㄝDŽ㋏㒳ৃ䴴ᗻϢ㓈ׂᗻⱘߚᵤϢ䆒䅵DŽ࣫Ҁ㟾ぎ㟾ᄺߎ⠜⼒ˈ࣫Ҁˈ1990DŽ[144]㣚䆫ᵒˈ⥟⦆⦆DŽৃ䴴ᗻ㒳䅵DŽढϰᏜ㣗ᄺߎ⠜⼒ˈϞ⍋ˈ1984DŽ 39 义- 58 -
基于网格的先进分布式仿真系统ADS-G 朱子玉,李三立,都志辉,陈英明 (清华大学计算机系,北京 100084) [1][2][3]摘 要:为了克服现有HLA仿真系统的诸多缺点:缺乏统一数三个发展阶段。随着信息技术的发展,计算机仿据表示、仿真资源静态分配、缺乏仿真全生命周期支持、安全真所需解决的问题越来越复杂,仿真规模越来越大,仿性和容错性差等,本文提出并设计了基于网格的先进分布式仿真精度要求越来越高。这种情况下,现有各种HLA实真体系结构——ADS-G。该体系结构建立在网格技术基础之上。现已经越来越不适应仿真系统的需求。 [4]主要思想是把HLA体系结构在网格系统中实现,并充分利用网近年来,网格(Grid)技术成为关注的焦点。网格系统提供的资源共享及动态分配、安全性和扩展性等HLA系格所要解决的主要问题是资源共享以及动态多机构虚[5]统结构所不能够提供的特性。本文开发了ADS-G的原型系统,拟组织的协同问题求解。第3代网格系统(OGSA)[6]并在原型系统上运行了仿真实例。仿真系统运行结果表明,和第4代网格系统(WSRF)都是以目前广泛应用的ADS-G仿真系统能够正确高效的运行,验证了ADS-G设计概念的web服务技术为基础。已经有越来越多的应用使用网格可行性。 技术来构建,包括医疗应用系统、物理应用系统、天文关键词:计算机仿真;网格;分布式仿真;仿真体系结构 应用系统等等。 中图分类号: 文献标识码:A 1 HLA实现面临的问题 文章编号: 现有HLA实现都存在着共同的问题。主要体现在 下面几个方面。 Advanced distributed simulations based on grid 1)没有统一的仿真数据表示。定义联邦成员能够ZHU Ziyu, LI Sanli, DU Zhihui, CHEN Yingming 共同理解的仿真数据是仿真系统正确运行的前提条件。(Department of Computer Science and Technology, Tsinghua 但HLA规范并没有给出数据类型的规定。仿真数据类University, Beijing 100084, China) 型和语义的定义就需要使用HLA体系之外的技术来完Abstract: There have many shortcomings in HLA implementations, 成。 including lack of unified definition of data types, static allocation of 2)仿真资源都是静态分配。设计仿真应用时就确simulation resources, unable to supporting the whole life cycle of 定了联邦成员和仿真计算、存储等资源的对应关系,两simulation, the insufficient security and fault tolerance. To address 者被静态的绑定在一起。仿真执行过程中,无论仿真资these issues, a simulation architecture of advanced distributed 源的负载轻重,这种静态绑定关系都不会发生改变。静simulation based on grid, ADS-G, is introduced in the paper. The 态绑定方式容易造成某些仿真资源成为整个仿真系统importance idea is to implement HLA with grid technology and to 运行的瓶颈,一些仿真资源负载过重,而另外一些仿真exploit the features of resources sharing, dynamic allocation of 资源则不能够被充分利用。 resources, strong security and fault tolerance supported by the grid. 3)缺乏对仿真全生命周期的支持。仿真系统的设A prototype of ADS-G is developed, and a simulation routine is 计、开发、分析和结果评估等部分都是离线完成的。离operated with this prototype. The result shows that ADS-G 线方式对于协作性很强的仿真设计等操作非常不利,往simulation system can operate validly and effectively and the idea 往造成成本的提高。仿真的设计、开发、分析和结果评of ADS-G is practical significance. 估等阶段使用在线协作的工作方式,已经成为分布式仿Keywords: Computer Simulation; Grid; Distributed Simulation; 真迫切需要解决的问题。 Simulation Architecture 4)缺乏对大型并行仿真应用的支持。现有仿真系 统中的仿真应用通常采用串行仿真程序。但某些仿真应 用的计算量非常巨大,采用串行程序处理方式不能满足 分布式仿真技术已走过了SIMNET、DIS、HLA计算要求。使用高性能计算机做并行计算,是解决大型- 59 -
仿真应用计算需求的有效手段。 资源信息 消息 数据 协同事务5)仿真系统的安全性不强。现有仿真系统对安全管理服务 管理 管理 管理管理性考虑较少。分布式仿真系统往往被限制在独立的局域联邦管理 √ √ √ √ 网内运行,以防在广域网上造成泄密现象。分布式仿真声明管理 √ √ √ 系统的规模受到了严重的限制。 对象管理 √ √ √ 6)仿真系统的容错性较差。由于传统仿真系统的所有权管理 √ √ √ 资源是被静态分配的,当系统出现严重问题时,往往造时间管理 √ √ √ √ 成整个仿真系统的失效。这样的仿真系统缺乏必要的容数据分发管理√ √ 错能力。 3 ADS-G关键技术 为了解决上述HLA体系结构中的问题,本文设计了一个基于网格的先进分布式仿真体系结构—— 统一的数据类型定义 ADS-G。ADS-G建立在网格体系结构之上,其核心是在网格系统中,采用通用的XML语言作为数据类基于网格的HLA实现。ADS-G能够为分布式仿真提供型定义的基础。仿真领域可以使用XML语言定义数据很多HLA规范之外的优越特性。 语义和数据类型文档。在仿真设计和仿真运行中遵循该2 ADS-G体系结构 文档。联邦成员在进行数据交互时就可以避免数据歧义的发生。 HLA仿真系统和网格系统在很多方面是相似的,都是分布式系统,都提供系统之间的互操作性,都保证 仿真代理和仿真成员分离技术 系统的可重用性。两者的区别是,前者为专用于仿真领ADS-G体系结构中一个重要的思想是把联邦成员域的分布式系统,而后者则为通用的分布式系统。使用中仿真成员逻辑和仿真代理分离开来,如图2所示。仿通用的网格技术来实现HLA规范将是一个有效的分布真成员是指数据收集器、仿真系统(模型)、仿真实物式仿真解决方案。 等仿真单元。仿真代理是指仿真成员和RTI之间的接HLA中定义了6大类服务。这6类服务的很多服口程序。仿真代理中实现联邦成员大使务功能和网格通用中间件实现的功能是相类似的。在(FederateAmbassador),并负责调用RTI大使ADS-G中,HLA规定的6类服务都将在网格通用中间(RTIAmbassador)。仿真代理把仿真成员需要发布的件上得以实现。换句话说,在网格环境中实现RTI平数据封装成FOM中指定的对象属性或者交互类参数,台。ADS-G的层次结构如图1所示。 传递给RTI,并从RTI接收其他联邦成员更新的对象属仿真网格…仿真应用SBA应用虚拟样机性或者交互类,提取数据,并将数据格式化后传送给仿应用真成员。 HLA服务(RTI)可视化(联邦管理、声明管理、对象管理、所有…仿真网格VV&A服务联邦成员联邦成员中间件权管理、时间管理、数据分发管理)仿真成员信息服务资源管理消息管理工作流…安全管理仿真成员网格通用(数据收集器)…(仿真系统)中间件QoS管理事务管理协同管理数据管理用户管理(被动观察器)网格计算存储仿真仿真仿真VR…资源资源资源模型工具实物工具仿真代理仿真代理仿真代理 接口图1 ADS-G层次结构图 RTI 表1列举了HLA服务对网格通用服务的依赖关图2 仿真代理 系。例如,联邦管理中创建和销毁联邦执行时需要资源把仿真代理和仿真成员分离的设计方法会给仿真管理网格服务,联邦管理中保存和恢复联邦执行时需要系统带来下面的几种特性。 数据管理网格服务,时间管理中处理事件驱动的仿真模1)动态的负载平衡。仿真代理和仿真成员分离之式时需要协同管理网格服务,时间管理中处理回退事件后,仿真成员就可以充分利用高性能服务器来完成仿真时需要事务管理网格服务等等。 逻辑运算。服务器负载过高时,仿真成员可以被重新调表1 HLA服务和网格通用服务的关系 度到其他服务器上,但仿真代理并不随之发生变化。仿- 60 -
真系统屏蔽了仿真成员的迁移,保证了具有动态的负载3)设计联邦 平衡能力。 a)选择联邦成员 2)容错能力。联邦执行过程中,如果某个服务器在这个步骤中,需要选择合适的仿真资源来组成联突然失效,网格系统可以把该服务器上的仿真成员计算邦成员。网格信息服务中间件可以为仿真资源的选择提任务调度到其他服务器上,并把该服务器从系统中隔离供信息注册和查找服务。首先,仿真对象模型库等仿真出去,有效的屏蔽仿真资源的错误,保证仿真系统具有资源向网格信息服务中间件注册服务资源。然后,当需很强的容错能力。 要选择仿真资源时,联邦设计者可以向网格信息服务中3)良好的扩展性。通过仿真代理和仿真成员的分间件查找合适的仿真对象模型等仿真资源。 离,各种仿真资源,例如,计算服务器、存储器、仿真b)设计联邦 对象模型库、仿真建模资源库、概念模型库、安全策略设计联邦的过程需要在多个联邦设计者之间协同库、环境生成服务器、实体仿真实物,以及计算机生成的进行。这个过程可以使用网格系统的协同环境来完兵力服务器等等,能够动态的为仿真系统提供服务,使成。 仿真系统具有良好的扩展性。 4)开发联邦 联邦开发者可以使用网格系统提供的联邦集成开 在线仿真全生命周期支持 发环境来协同的开发联邦。在联邦开发过程中,需要根[7]FEDEP定义了联邦开发执行过程中需要经过的6据仿真模型的接口来开发仿真代理。 个步骤:定义联邦目标、开发联邦概念模型、设计联邦、5)集成和测试联邦 开发联邦、集成和测试联邦、执行联邦并准备结果。网a)规划执行 格系统集成了大量的网格服务资源,并提供对这些网格在联邦执行规划中,需要定义联邦执行过程的工作资源的协调、安全的共享和使用。在网格技术的支持下,流。这个工作流将规定后面联邦执行中的执行过程。 ADS-G体系结构可以实现以FEDEP为基础的仿真系统b)联邦集成 在线全生命周期运行。图3显示了FEDEP规定的仿真联邦集成的过程需要在多个联邦开发者之间协同系统开发和执行流程。下面分步骤来介绍。 的进行,可以使用网格系统的协同环境。 6)执行联邦和准备结果 开发者/开发者/…a)联邦执行 用户用户联邦执行和上面步骤中的联邦测试都需要经过若,1,2,,4,,4干步骤。仿真系统用户启动联邦执行,并提供联邦执行信息服务协同环境工作流等相关数据和流程;网格系统为仿真代理查找并工作流QoS分配合适的执行环境,为仿真模型等仿真成员分配计算,,数据管理HLA中间件服务器等相关资源。查找仿真资源时,可以同时考虑服(RTI)务质量、安全性等因素。网格QoS服务可以随时监控,仿真资源的服务可用性和服务负载等情况;工作流引擎模型库仿真代理仿真代理负责执行联邦执行工作流;仿真代理和仿真成员组成的存储资源…模型库联邦成员通过RTI来完成分布式系统仿真过程。 b)准备数据 计算资源计算资源 仿真运行过程中,联邦和联邦成员将产生大量的数图3 仿真开发运行流程示意图 据。这些数据在仿真结果的评估中起到重要的作用。仿1)定义联邦目标 真系统可以使用网格系统提供的高性能、高可靠的数据定义联邦目标需要在仿真开发者和仿真系统用户存储服务来保存这些仿真数据。 之间协同进行。网格系统提供了一个可靠、有效的协同ADS-G仿真系统除了支持FEDEP各个步骤在线执环境。在这个协同环境中,联邦目标定义以及下面的多行之外,还可以支持仿真结果的在线收集、在线分析等个协同处理过程都可以在网格上实时、在线的实现。 工作。形成一个完整的在线仿真全生命周期支持环境。2)开发联邦概念模型 网格系统能够集成和共享各种的联邦设计、开发、运行和步骤1一样,联邦概念模型也需要使用网格系统等仿真工具。设计联邦、开发联邦和运行联邦过程可以的协同环境来协同开发。 通过网格系统来使用这些共享的仿真工具。这样可以极- 61 -
大的提高仿真系统设计、开发、运行的效率。 统优势的同时,能够克服传统HLA仿真系统中的诸多缺点。ADS-G能够充分的利用网格系统的资源共享和 安全支持 协同能力,为仿真系统的设计、开发、运行以及结果的网格系统非常强调安全性能。在网格系统安全性能分析提供一个高效率全生命周期支撑平台。可以说,的支持下,ADS-G平台上的大规模分布式仿真系统时HLA体系结构在网格系统中的实现是HLA发展的一个就可以安全的扩展到广域网上去,而不是仅仅局限于局方向。 域网内部。 参考文献 (References) 4 ADS-G仿真系统实现 [1] High level architecture rules, [EB/OL]. ht- 本文根据ADS-G体系结构,实现了一个ADS-Gtp://, 1998. 原型系统。该原型系统以G[2] High level architecture federate interface specif ication, lobus Toolkit 3中间件为基础,实现了HLA规范中联邦管理、对象管理、声明管[EB/OL]. , 1998. 理和所有权管理中的关键功能。这些功能保证基本的仿[3] High level architecture object model template specification, 真实例能够在原型系统上执行。原型系统由客户端、计[EB/OL]. , 1998. 算服务器和信息服务器组成。[4] Foster I, Kesselman C, Tuecke S. The anatomy of the grid: 在ADS-G原型系统上,本文开发并执行了一个仿enabling scalable virtual organizations[J]. International 真实例。该实例中包含两类联邦成员:飞机联邦成员和Journal of Supercomputer Applications, 2001,15(3):1-10. 导弹联邦成员。联邦的仿真功能是进行导弹和飞机的对[5] Foster I, Kesselman C, Nick J, et al. The physiology of the grid: 抗试验,如图4所示。an open grid services architecture for distributed systems integration[EB/OL]. earch/papers/, 2002. [6] K. Czajkowski, D. Ferguson, I. Foster, et al. From open grid services infrastructure to ws-resource framework: refactoring &evolution[EB/OL]. 2004. [7] High level architecture federation development and execution process (FEDEP) model, version [EB/OL]. y/projects/hla/guidelines/, 1999. 图4 仿真网格实例 仿真实例运行结果表明,ADS-G仿真系统能够正作者联系地址: 确、高效的运行,能够完成仿真实例的仿真要求。HLA朱子玉 规范能够在网格系统上很好的实现,并同网格系统提供北京清华大学计算机系微机组,100084 的其他服务一起构成一个集成、高效的在线仿真设计、zhu_zy00@, 开发、运行和分析平台。 zzy@ 5 结论 Tel:010-62783820, 13718167672 网格技术在分布式系统和web服务技术的基础上作者简历: 日渐成熟。网格系统能够解决大规模自动化的信息和信朱子玉 息处理能力的共享以及自动的多方协调问题解决等问男,清华大学计算机系博士研究生,导师为李三立院士,题,提供了一个安全的、高度可扩展的资源共享、使用、祖籍河北。 协作环境。 本文在网格技术的基础上设计了先进分布式仿真体系结构ADS-G。该体系结构把网格技术和HLA体系结构结合了起来。该体系结构在发挥传统HLA仿真系- 62 -
构建网格安全系统 王东 (天津大学计算机系,sea3721@) 摘要: 本文剖析了信息安全的本质,并根据网格安全的特点,提出解决网格安全问题需要构建网格安全系统的观点。在对当前网格安全研究现状进行分析的基础上,本文提出了构建网格安全系统的相关思路。 1.概述 网格计算像一个出生的婴儿,每个人都对它有不同的企盼,希望它能够按照自己想象的样子成长。虽然不同的人都在对网格的发展的施加影响,不断促使它变的充实,完整,但是自然界的透明之手在不断指引它向某一个方向发展,像每一个新系统的产生发展过程一样。自然界发展过程中,已经有许多不同的新事物产生,能够生存下来,并不断发展的,只有那些内含“有机联系,自成组织,并且与外界系统保持良好的平衡”的系统[1]。基于计算机的信息系统作为和现代人类社会密切相关的一类系统,其存在与发展也遵循同样的法则。 通过对网格计算技术的发展历程的观察可以发现,网格体系结构从五层沙漏到OGSA结构,再到WSRF的出现,其各个组成成分间的联系日趋合理、紧密,其系统化程度愈来愈高[2]。因此,本文认为在研究网格技术时,要坚持把网格看作一个系统,按照系统的观点来研究网格。网格安全作为网格的一个重要的构成成分,其发展也与网格一样呈现出系统化的趋势:一方面网格安全的各个构件间的联系愈来愈紧密,另一方面网格安全构件和网格系统的关系也愈来愈清晰(见图1)。所以,本文提出了解决网格安全问题需要构建网格安全系统的观点。 网格网格安全 图1 网格和网格安全的关系 下面通过剖析信息安全的本质,分析网格安全发展的趋势,来对上述观点进行论述。之后,本文还会对如何构建网格安全系统给出思路。 - 63 -
2.信息安全的本质 信术,其内容包信、Web信息安全的本绍。 网网格发出其本 信用户使资源,的资源12在包括:12345这UNIX)全的和于是安的仍然其他用改,通性是指通进行分 ·息安全研究到目前为止已经取得了很多成果,发展出各种信息安全理论与技括入侵检测、防火墙、安全管理、密码学、数字水印、安全协议、隐蔽通全、主机安全等等[2]。但是纵观各种关于信息安全的文献,没有一个文献对信息安质给出合理的解释,大部分介绍信息安全的书籍都是分散地对各种安全技术进行介格的出现,给信息安全的发展提出了新的挑战,要提高信息安全的研究水平,解决展带来的复杂安全问题,就必须对信息安全的理论和技术有一个宏观的把握,提炼质。下面就对信息安全的本质进行分析。 息安全的研究最早产生多用户操作系统,并随计算机网络的发展而逐渐展开。在单用的计算机系统中,安全性的要求很简单,因为单个用户独享所有计算资源和数据不存在数据共享和保密等问题。当多用户操作系统产生后,多个用户要共享计算机,这时候,安全性的要求逐渐强烈起来。要求主要来自两个方面: . 对公共资源的使用是受限的,比如每个用户只能使用一部分存储空间和一部分进程。因此,用户使用系统资源必须是受到限制的。 . 每个用户有自己隐私要求,用户需要保护自己的隐私。归纳起来,系统的安全功能就是对用户使用计算机资源的权限进行控制和管理。 计算机网络出现后,用户间通信的安全性成为主要的安全问题。通信的安全性主要 . 通信数据的保密性,即要求两个用户间的通信信息对其他用户来说是不可读的。 . 通信的认证性,即要求保证通信的双方的身份确实是预期的身份。 . 通信数据的完整性,即通信信息对其他用户是不可修改的 . 通信的不可否认性,即通信一方向另一方发送数据这一动作对另一方来说是不可否认的 . 通信的匿名性,即通信一方的主体标识对于另一方是不可知的。 些要求在同一个操作系统上的两个用户间一般不必考虑,因为在多用户操作系统(如中,一般都假设操作系统是绝对可信和公平的,在操作系统中两个用户间的通信是安可靠的。当用户分布到不同的主机上,通过网络进行通信时,这种假设被破坏了,全性需要进行重新描述。但是,我们可以发现在网络通信相关的安全性实际上解决是权限划分问题,通信保密性和认证性都是为了保证信息不被正常通信双方之外的户所获取,通信数据的完整性是为了保证通信信息不被通信双方之外的第三方所修信的不可否认性是指通信一方具有“知道另一方发送某消息”的权限,通信的匿名通信一方没有权限知道另一方的真实名称。 过对各种安全性要求(保密性、完整性、认证性、不可否认性、匿名性、公平性等)析,可以发现: 信息安全的本质就是要解决“如何控制信息处理主体对信息处理的权限”的问题 信息处理主体是指有能力对信息进行处理的各种主体,简称主体。对于简单的双向- 64 -
通信过程,信息处理主体就是指通信的两方。对于分布式信息处理系统,信息处理主体包括参与分布式计算的各个用户,系统调度代理,证书认证中心等。 ·对信息的处理能力包括对信息的产生、复制、读、写、转换、销毁等。由于信息的结构复杂性衍生出的信息处理能力还包括创建进程、运行进程、创建服务、调用服务、读取数据、发送信息、接收信息等。 ·权限是指对主体可以使用或不可以使用某些信息处理能力进行限定。通过制定权限规则来可以实现对主体处理信息能力的控制,实现安全目标。 因此信息安全功能实际上就是对信息处理主体的信息处理权限的分配、调度、撤销、设定等管理功能。 3.信息系统的安全 根据上一节对信息安全的本质的定义,我们可以发现所有信息系统的实现的安全功能实际上都是围绕这一本质进行的。下面我们分析一下信息系统中的安全功能构成。 不论是多用户操作系统、分布式系统、协同计算系统、C/S系统、B/S系统、P2P网络系统,还是其他各种涉及网络或者多个用户参与的信息系统,都需要考虑安全性问题。因为不论在上述何种系统中,都会涉及信息保护的问题,用户对信息处理的权限需要保护和控制,系统对信息处理的权限也需要保护。信息系统的安全性实现的实际是对系统各参与者的权限管理功能。 由信息安全的本质可以知道,做为一个信息系统,对信息的处理能力包括产生、复制、读、写、转换、销毁等。所谓的权限规则就是针对这些信息处理能力的。 多年的信息安全研究表明,在一个信息系统中,安全子系统是一个必备的组件[3]。安全子系统作为信息系统的一个特殊部件,负责整个系统的信息处理权限的控制。安全子系统一般包括两个功能,一个是权限规则设定/解释部分,另一个是权限规则执行/维护部分。纵观已有的各种信息系统的安全构件,都或多或少、或优或差的包括这两个方面。例如,IE浏览器里面的信任分级策略就是B/S结构系统中对权限规则的一种设定方式。而防火墙可以看作是对局域网信息系统进行访问权限控制的安全子系统的一个实例。对于分布式计算系统来说,由于很多情况下,参与分布式计算的计算机系统都同属于用户所拥有,这样的情况下,没必要考虑安全性的问题。当分布式计算需要涉及不同信任域内的节点时,安全性就成为非常重要的要素。 在这些系统中,有些系统对安全性的需求较少,安全功能也是单一功能或者几个功能的组合,靠这些简单的功能已经能够满足基本的安全需求。但是对于比较复杂的信息系统,其安全性要求可能会十分复杂,这个时候,单靠有限的几个安全功能模块已经不能有效的保障系统的安全了。多个安全功能必须有效的结合在一起才能对信息系统提供全面的安全保障。 这样的背景促成安全功能系统化的发展趋势。 4.网格系统的安全 网格计算系统可以看作是对传统分布式计算系统的扩展,这个系统涉及到多个不同信任域内节点的参加,而且节点间的通信如果是在Internet上进行时,系统面临的安全威胁变得更加严重。在网格系统中,不仅仅要考虑参与计算的用户间的权限管理,还要考虑对网格系统之外的用户(可能是攻击者)的权限管理。可以说在基于Internet网络通信的网- 65 -
格计算系统中,安全问题的复杂性达到了前所未有的程度。 在网格系统构建过程中,参与设计的先驱们已经设计了以GSI为代表的网格安全框架,其中采用单点登陆&相互认证的策略来实现认证需求,采用基于SSL以及后来的Web Service加密通信等技术实现通信的保密需求,采用代理证书机制实现了信任委托、采用CAS机制实现授权[2,4,5]。 目前最新的网格体系结构是采用OGSA架构的,其安全架构如图2 [6]如下所示。 图2 网格安全架构 目前,网格中集成的安全技术[4]包括: ·密码技术:对称加密/非对称加密 ·安全传输技术:IPSEC/IPv6,SSL/SSH,S/MIME ·安全认证技术:PKI和Kerberos ·访问控制技术:DAC/MAC/RBAC,防火墙 ·Web Service安全技术:XML加密、XML签名、SOPA安全性等 ·GSS-API:通用安全服务应用接口 当前的网格安全架构的实现是从应用实际出发的,其思路还是按照传统的安全功能构建思路,将可能的安全功能加入到系统之中,而没有考虑各个安全功能之间通过协作为网格系统提供一个完善的安全支持。这样的构架的缺点是: ·与网格架构耦合性过强,当网格架构变化时,不利于扩展。 ·各个安全功能部件各自独立行使功能,相互之间没有统一的组织方式和相互协作机制,当应用同时需要多个安全功能时,执行时可能会发生冲突。 ·对用户的透明性支持不够,当安全功能大量增加时,用户可能并不能合理的选择和使用安全功能,这样就可能会使得系统的安全性出现漏洞。 - 66 -
另外,在网格系统中,认证性、保密性、完整性、不可否认性、匿名性、公平性、权限共享等多种安全需求交织在一起,与网格系统的其他元素相互制约,相互作用,形成了复杂的网格计算系统。如果单靠几个简单的安全功能来保证网格系统的安全,显然是不可能的。 因此必须结合网格系统的构成,把安全功能作为一个子系统进行设计,只有把各种安全功能有效的组织在一起,使其成为一个高效合理的有机体,才能通过它对整个网格系统的安全提供保障和支持。 按照发展的眼光来看,信息系统的安全设计必须采用系统化的方法。对信息系统安全构架的研究已经昭示出把安全系统化的方向。而网格安全是向这个方向发展过程中一个典型的研究与应用的对象。所以,本文认为: 应该从系统的角度来研究网格安全,通过构建网格安全系统来 保证网格系统的安全。 5.网格中的安全系统 关于安全系统的设计目前可以参考的资料并不多,因为以前大部分的研究都是集中于某些具体的安全技术,如加密算法、安全协议、安全服务等,关于安全模型的研究也有一些成果。另外的一些研究是关于局域网、或者虚拟专用网的安全的,在这些环境中的安全性要求主要集中于通信的安全性,安全功能比较单一。这些研究都可以作为安全系统研究的参考资料,但是关于安全系统设计方面的理论和经验很少。 网格计算的出现,给安全系统的研究带来了一个机会。在设计安全系统架构时,需要考虑到系统设计方面的基本原则,同时要考虑到安全系统的特殊性。下面讨论构建网格安全系统的基本思路。 (1)网格安全系统的功能 在网格系统中,安全子系统是一个特殊的系统,它需要和资源管理、任务调度等不同的子系统进行合作。安全子系统存在于用户和系统交接处,通过控制用户的权限来实施系统既定的安系统相当于公共安则,另一个是实施上,对于有多个信不同的国家系统可能需 (2)网格安对于安设定策略。的系统来说算系统来说前提下,设 全规则。举个通俗的例子,如果把网格计算比作一个国家,那么安全子全部门。在网格计算中考虑安全问题,包括两个方面:一是制定权限规权限规则。制定权限规则相当于立法,实施权限规则相当于执法。实际任域参与的网格计算系统,用国际社会来比喻更加合适。不同的信任域相当于,不同的信任域间的关系在某些方面也类似国家间的关系。这个时候,安全子要更多的关注于公平性的需求。 全系统的权限规则设定 全系统中权限规则的设定,不同的网络组成方式和应用目标决定着权限规则的例如,对于P2P计算,其基本目的是共享,节点组织方式是松散的。对于这样,首先要保证的是各信任域间权限的公平性和信任域的独立性。而对于网格计,其组成在宏观上是集中的,开放的。任何资源加入系统都需要注册,在这一计权限规则时就可以更加严谨一些,或者说可以对权限进行更严格的控制。 - 67 -
(3)网格安全系统的权限规则实现 对于权限规则的实现,网格系统的体系结构也影响着安全子系统的功能实现。在设计安全子系统时需要考虑到网格系统的体系结构。例如五层沙漏模型和TCP/IP协议类似,可以参考TCP/IP安全方面的经验,也可以把这方面的技术直接纳入安全系统中,如可以直接使用IPSEC、SSL等安全协议。GT3系统已经结合了Web service技术,在这样的体系结构中考虑安全性,就需要结合web service的特点进行设计。例如,其通信主要依靠基于http协议的通信,同时采用了soap、uddi、xml等技术。在设计安全系统时就要针对这些特点设计安全功能的实现。 根据以上思路,考虑网格现有体系结构的特点,本文提出了一种新的网格安全系统的架构。 用户服务提供者各种网格服务网格环境静态服务动态服务安全动态支持组件安全服务调用接口安安全安全规则实施组件全系系统统自管身安全功能组合理的安全安全规则设定基本安全构成元素安全算法安全数据证书基础设施 图3 一种新的网格安全架构 新的网格安全系统是一个分层的结构,最底层为基本安全构成元素。其中,安全算法是指各种基本的信息安全算法,如加/解密算法、密钥产生算法、数字签名算法、数字摘要算法、单向散列函数算法、伪随机数产生算法、证书产生服务等。安全数据是指实现安全功能是需要用到的各种数据,如对称密钥、公钥、私钥、伪随机数、证书等。证书基础设施指存在于网格中用于认证的PKI(公钥基础设施)体系,在现代分布式计算中,证书基础设施已经成为一个必备的、基本的构成成分。 安全中间件[7]构建于基本安全构成元素之上,可以为网格提供静态安全服务和动态安全服务。 静态服务是指可以被用户直接在应用程序中使用的服务,如加密服务、证书产生服务等。安全功能组合构件可以将不同的安全功能组合起来,给用户提供更多的安全服务支持,例如用户可以通过调用通信数据保密与完整性服务,实现对通信数据的加密与完整性保护功能。静态服务通过安全服务调用接口向网格的用户、服务提供者或者是具体的网格服务提供服务。 动态服务是指网格安全系统动态的为网格提供公共安全保障的服务。所谓公共安全保障是指保障网格各个信任域、或者用户间的权限的合理分配,即使得他们只能访问网格安全规则允许的数据、调用网格安全规则允许的进程、进行网格安全规则允许的通信。 动态安全服务的实现是与系统的体系结构与运行机制紧密相关的,要为一个系统提供- 68 - 安全中间件
动态的安全服务就必须要分析该系统的安全需求,并根据安全需求制定权限规则,然后采用各种安全技术来实现权限规则,最后通过动态的安全支持组件提供动态安全服务的运行时支持。 动态的安全支持组件实现的功能是和网格系统构成紧密相关的,它可以实现对网格中主体行为的监控和动态控制,可以根据网格内各主体间权限状态的变化自动采用不同的安全措施。 为了保证网格安全系统的正常运行,需要为网格安全系统提供调度、维护等管理机制,同时,网格安全系统也要保证自身的安全性。 关于网格系统中安全系统的具体设计和实现,需要做的研究工作还有很多。随着网格技术和信息安全技术的发展,这方面的研究一定会越来越完善。 6.总结 本文分析了信息安全的本质,提出并论述了“通过构建网格安全系统来解决网格安全问题”的论点。最后,讨论了网格中安全系统的构建思路,并给出了一个网格安全系统的架构。今后的研究工作重点在于对网格安全系统进行详细的设计、实施。 参考文献: [1] 魏宏森、曾国屏,系统论——系统科学的哲学,北京:清华大学出版社,1995. [2] 都志辉、陈渝、刘鹏,网格计算,北京:清华大学出版社,2002. [3] Ross ,信息安全工程(蒋佳、刘新喜),北京:机械工业出版社,2003. [4] 肖侬, 网格安全技术, 2004年11月. [5] [6] OGSA Security Architecture for Open Grid Services, /~humphrey/ogsa-sec-wg/. [7] Vance Vaughan, Network security middleware, :4201/ bcc/Apr_May99/. 作者简介: 王东,25岁,天津大学计算机系硕士,研究方向为网络与信息安全。 从接触网络与信息安全至今已有五年,对网络与信息安全研究各方面都有所涉猎,主要研究内容包括入侵检测技术、安全管理技术、蠕虫技术、隐蔽通信技术、安全协议、安全架构等。参与相关项目三个,发表论文两篇,写作图书一部,文章若干。 - 69 -
网格资源 IEEE分布式系统在线 IEEE分布式系统在线(IEEE Distributed Systems Online, DSO网站的内容很丰富,在这里我只给大家介绍如何从DSO网站上获取国际会议投稿信息。 在图1中的左侧菜单中有一个“Events 图1 DSO网站首页 Calendar”,点击它即出现图2中的事件日历。 注意将右侧滚动条拉到底部以后可以看到右下角显示有近期论文投稿截止日期信息(Upcoming Submission Deadlines)。 在图2中,有两大部分内容。上面一部分是投稿截止日期信息(Deadlines),可以选择一个年份或者一个月份。图3是选择2005年3月份得到的结果。下面一部分是在某一年或者某一个月内召开的国际会议信息(Meetings)。 图2. 事件日历 如果你注意一点的话,你会看到图2中有RSS标记,这意味着你可以通过新闻阅读软件来自动获取最新的信息。怎么使用新闻阅读软件,我也不知道/,哪位大虾能写个文章在这个杂志上给介绍介绍? 呵呵,看到图3的时候请你记住感谢一个人,Guillaume Pierre,没有他的默默奉献,也就没有我们这种“information at my finger tips”的豪爽感觉。 图3. 2005年3月份投稿信息 (张坤龙,zhangkl@) - 70 -
清华大学网格计算研究组 清华大学网格计算研究组是清华大学计算机系的网格技术研究课题组,由李三立院士领导,共有教授2人、副教授3人、讲师1人,并有在读博士生10人,在读硕士生若干人。本研究组的研究方向有:1)网格计算;2)集群式高性能计算与高端服务;3)计算机体系结构;4)并行模型与并行算法;5)高性能通信网络。 在网格研究方面,网格计算研究组是国内最早开展网格研究的单位之一。 李三立,院士,清华大学计算机科学与技术系教授,兼任上海大学计算机学院院长。 2000年6月李三立院士提出建立教育部门先进计算基础设施(Advanced Computational Infrastructure简称ACI)的建议是实现国家计算网格的重要一环,得到了教育部领导人的大力支持,并在8月通过教育部科学技术研究重点项目“先进计算基础设施(ACI)北京上海试点工程”的立项。ACI主要研究内容是把教育部门的高性能计算机(还包括其它有关贵重仪器设备)用高速网络连接起来,建立一个高性能网格计算平台,研究开发出相应的网络软件,为用户提供具有统一管理、易于远程使用、安全的高性能计算和大容量数据处理环境。为跨学科的重大问题研究提供计算和实验平台,使全国高校可以共享ACI的高性能计算资源,开展跨地区、跨学科的科研合作,迅速提高我国高等院校的科学研究水平,为建成若干所世界一流大学提供条件。“ACI试点工程”把北京、上海的两台高性能计算机系统(即清华大学的THNPSC和上海大学的自强2000)作为网格节点,用CERNET连接成ACI平台,同时连接另外分布在异地的四个网格应用节点,并开发中间件,在该平台上建立以“压铸模具流体场研究”为应用的北京上海之间“虚拟实验室”,开展电子晶体学研究、石油化工超临界化学反应模拟研究、高分子介观结构研究、卫星地面站数据处理等应用。“ACI试点工程”达到了原来制定的目标,并且在单一系统映像、容错、安全和一致的WEB访问等多个方面超过了原来任务书的要求。“ACI试点工程”研究开发出用户友好的入网环境,具有远程网络环境下的异地交互功能和管理功能。结合具体应用程序在北京、上海两地进行地理位置透明、具有权限级别的远距离异地计算,北京和上海两地的高性能计算能力实现了动态调度和动态管理。“ACI试点工程”在2001年8月通过教育部主持的验收与鉴定,这是我国在网格领域内正式通过鉴定的第一个项目。 - 71 -
近年来,网格计算研究组又先后实施了多个网格应用研究项目,深入开展网格技术的研究工作。2002年,与航天部二院北京仿真中心合作开展了“仿真网格”的研究。“仿真网格”把网格的概念引入到仿真领域,设计了一整套“仿真网格”体系结构,并实现了原型系统。2002年,与中国林业科学院、北京卫星地面站等单位合作,开展了“森林资源与林业生态工程信息应用网格”项目研究,并取得了显著的效果。2002年,在IBM基金的支持下进行具有自主特性的网格计算与商业应用模式研究。2003年,参加了国防重点实验室基金项目“网格技术在虚拟样机支撑平台中的应用研究”的研究工作。2003年,在李三立院士的主持下,上海市教委论证并设立了“上海高校网格e-研究院”研究项目。“上海高校网格”项目联合了上海大学、上海交通大学、复旦大学、同济大学、上海第二医科大学、华东理工大学等院校共同研究开发。“上海高校网格”与2004年正式启动,成为上海市网格研究的重点项目之一。 在论文论著方面,网格计算研究组在网格计算研究领域出版了国内第一本关于网格计算的著作《网格计算》,参与了多本网格著作编写和翻译工作,在国际会议和核心期刊发表文章近数十篇。 网格计算研究组从实践中积累了网格研究的丰富经验和技术,进行了长期的跟踪、前瞻性和网格应用研究工作。网格计算研究组成员以中青年学者为主,他们有强烈的创新意识和开拓精神。 另外,网格计算研究组长期从事高性能计算方面的研究工作,完成了多套高性能计算机的研制。包括峰值速度为万亿次的“深超-21C”和峰值速度为万亿次的“自强3000”,这两台高性能计算机在目前国际TOP500中分别位于第209位和第481位,在目前中国的TOP100中分布位于第6位和第15位。这些高性能计算机为网格技术研究提供计算能力方面的支持,并且可以作为网格结点提供给应用网格来使用。 (朱子玉,zhu_zy00@) - 72 -
科研方法 几款个人信息管理软件 王斌 (北方工业大学,wangbin_is_ben@) 个人信息管理软件(Personal Information Manager,PIM)的主要功能包括两大块:联系管理和日程管理。在做研究工作时使用个人信息管理软件有很多好处,例如联系管理功能有助于自己保持和其他研究人员的联络甚至于良好的私人关系,而日程管理则会使自己对于在研究中要做那些事情一目了然不至于陷入迷乱。 个人信息管理软件是比较多的,质量也是参差不齐。这里,就笔者的一些经验,介绍两款(自以为)还是不错的软件。 一、IBM Lotus Organizer 这是一款出自名门的个人信息管理软件,其功能有通讯录管理、日程安排、备忘录等。其界面设计为笔记本形状,在使用方面很容易上手。 1、通讯录管理 在这里,你可以添加联系人,设置姓名、性别、单位、联系电话、手机、电子邮件等,且在通讯录界面中,可以直接调用邮件客户端给联系人发送邮件。用户界面如左图。 2、日程安排 用户界面如右图,在这里,输入时间段,输入要做的事情,一切就万事OK了! 3、备忘录 第三个大功能就是备忘录的功能。它相当于一个笔记本,可以记下你的重要的事情。在这里,你可以轻松的创建、修改你的备忘录。另外,它还可以为你提供分页浏览功能。 - 73 -
二、WinPIM 这是一款国产软件,中文名字是友情强档,它小巧,安装方便,功能强大。它特别为中国人设计,无论是保存、查询和处理通讯录、名片、地址薄等信息,还是管理个人日记、日程安排以及待办事宜等。都考虑了中国汉语的特点。友情强档具备一些为中国人特别设计的功能,例如:由于汉字输入较慢且较麻烦,友情强档设计了中文拼音首字检索,检索记录现在变得轻而易举;考虑到很多中国人有使用中国农历的习惯,友情强档全面保留了中国农历,日历功能可以显示农历日期、气节、记年及生肖。 左图是友情强档的主界面。它是一个“今日”界面。“今日”页提供了对当天的预览。通过友情强档的“ 今日”,您可以看到约会安排摘要以及任务列表。熟悉Microsoft Outlook的人很快就会发现友情强档与之很像。 1、通讯录管理 可存储联系人的电子邮件地址、街道地址、多个电话号码以及其他任何与联系人有关的信息,如生日或照片等。可将任何日程安排及任务活动链接到联系人,以帮助跟踪与联系人有关的活动。 我们可以在联系人组的属性中更改联系人的列表字段,并可根据姓名、地址或其它任意字段对联系人进行排序。如果您使用调制解调器,也可通过友情强档拨打联系人的电话号码。如果连接到了互联网络,还可以十分方便地调用系统地电子邮件程序或 Internet 浏览器来发送电子邮件或访问联系人的网站。 - 74 -
2、日程安排 下面是友情强档的日程安排界面。 3、备忘录和日记 友情强档也支持编辑备忘录以及写日记,这里就不多说了。 三、总结 总体来说,我对WinPIM 有一些偏好。友情强档是一款特别为中国人设计的个人信息管理软件,比如他的农历日期显示,联系人信息等的设计,都针对我们中国人的习惯。作为一款共享软件,它还是功能强大,体积小巧的!下面是网上比较常见的同类型的软件,有兴趣地可以自己找来看看! 软件名称 简单介绍 一个依直觉使用的桌面月历,你可以随意的贴上Notes、会议日程,甚或是音效文件在任一天的框格中,并且设定闹铃以提醒你不要忘记了重要的事项。若你实在是个大忙人,记录的事情相当多,不用担心,Bills Calendar Bills Calendar具备搜寻功能,可以很快的找到重要的记事,或是直接以内建的列印功能,将记事列出,或是输出成为HTML网页随时用浏览器查阅,就更不会遗忘了。 Biromsoft To Do List BiromsoftToDoList是一个记事任务管理软件!可以帮助你有效 的管理你的个人生活和工作!支持Skin功能!界面非常漂亮! BestPIM是一个小型个人信息管理软件.它可以帮助您保存一些个人信息诸如用户名和口令,网址链接,电子邮件,地址,电话好码和便BestPIM 个人信息管理 笺等.所有这些信息都保存在一个数据库文件里.并且该数据库文件可以用密码保护.... ASSISTME是目前最好的通讯录、联系人、约会、任务、便笺、日记、邮件检查、文档编辑为一体的软件,各项模块在同类软件中均为上流,功能超强,该软件纯绿色、可随身携带,及时使用、小巧而不失强ASSISTME Pro 2004 简体中文大,是日常使用必备的梦幻软件。该软件主要特点有: 1)通讯录:联专业版 系人名片、图标等四种经典精美界面;最全面的联系人字段和自定义字段;强大的联系人目录树管理功能;强大的联系人、单位分组管理功能;联系人相关活动添加跟踪功能;联系人照片管理功能;强大的分类查询功能;一键快捷获得联系人信 - 75 -
给新研究生的建议 郝宪文 (东北大学,9hao@) 写在前面 本文原文来自 希望读者能给予我的翻译批评和指正,意见请发到我的邮箱9hao@。我会考虑在网格信息中转站或是什么地方作个勘误,以便读者能得到最新的最好的译文。 另外,我得感谢陈廷伟。他给我推敲、改动了不少地方。我们在一起,他email是@,希望在他看到这篇文章时能给他个新发现,不过要是挨骂他也得跟着^_^!(张坤龙注:呵呵,要是挨骂的话我也来跟着) 原作者简介 Manuel Blum,1938年4月26日生于委内瑞拉首都加拉加斯。Blum是卡内基梅隆大学计算机科学教授,也是世界上理论计算机学大师。他被选举成为美国国家科学院(National Academy of Sciences)的成员,这对于任何一位美国的科学家或是工程师来说都是最高的荣誉。 Blum是计算的复杂性理论的奠基人之一,该理论可以应用于密码术及程序校验。1995年,Blum在美国伯克利的加州大学的事业非常辉煌,并于同年在那里以奠定了计算复杂性理论的基础和在密码术及程序校验方面的贡献而获得计算机领域中的最高奖项:图灵奖。 正文 Advice to a Beginning Graduate Student 给新研究生的建议 or 或 What is Research? 什么是研究? or 或 The 4 R's of Graduate School: Reading, Rithmetic, Research, and Writing 研究所的4R:阅读、计算、研究、写作 29-AUG-01. Updated 28-AUG-02. 2001-8-29初稿,2002-8-28修订 - 7 6 -
Manuel Blum 曼纽尔·勃鲁姆 Outline of the talk: 提要: READING, STUDYING, THINKING, 阅读, 学习, 思考, STARTING OFF on the PhD, 攻读博士学位开始阶段 DEEP in the MIDDLE of the PhD, 攻读博士学位深入阶段 WRITING it all up. 写作. YOU 给你的忠告 READING: 阅读: Books are not scrolls. 书本不是古代的羊皮纸卷轴。 Scrolls must be read like the Torah from one end to the other. 阅读卷轴必需要像读摩西五经那样从头读到尾。 Books are random access -- a great innovation over scrolls. 书本可以随意地读其任意部分――这是相对卷轴的一个伟大革新。 Make use of this innovation! Do NOT feel obliged to read a book from 充分利用这项革新吧!不要认为读书必需得遵从从头到尾的顺序。 beginning to end. 允许你自己随意地翻开一本书,开始你的阅读。 Permit yourself to open a book and start reading from anywhere. 如果读的是诸如数学、物理或者其它晦涩的书籍,你可以试着先读那In the case of mathematics or physics or anything especially hard, try to 些你可以理解的部分。 find something anything that you can understand. 读君之可读。 Read what you can. 在空白之处记下心得体会(你知道它有多有用)。 Write in the margins. (You know how useful that can be.) 当再次翻开这本书时,你将发现你已经能够阅读更多的部分了。 Next time you come back to that book, you'll be able to read more. 就这样,你可以渐渐地学会晦涩至极的东西。 You can gradually learn extraordinarily hard things this way. Consider writing what you read as you read it. 在阅读的同时,你要考虑一下如何写下你之所读。 This is especially true if you're intent on reading something hard. 如果你下决心要读些难读之物,这是极为正确的做法。 I remember a professor of Mathematics at MIT, 我记得麻省理工的一位数学教授, name of BERTRAM KOSTANT, 名字叫BERTRAM KOSTANT, who would keep his door open whenever he was in his office, and he would 只要人在办公室,他总是开着门,并且总是伏在桌上写着什么。 always be at his desk writing. 写,一直在写。 Writing. Always writing. 他在记述他的研究工作吗?可能。 Was he writing up his research? Maybe. 或者在记述他的某些思想吗?也有可能。 Writing up his ideas? Maybe. 不过我个人认为他是在阅读,并且是在写他读到的东西。 I personally think he was reading, and writing what he was reading. 至少对我而言,在面对一些晦涩的材料时,书我所读是一个轻松并且At least for me, writing what I read is one of the most enjoyable and 行之有效的方法。 profitable ways to learn hard material. STUDYING: 学习: You are all computer scientists. 你们都是计算机科学家。 You know what FINITE AUTOMATA can do. 你们知道有限自动机能做什么。 You know what TURING MACHINES can do. 你们知道图灵机能做什么。 For example, Finite Automata can add but not multiply. 例如:有限自动机可以做加法,做不了乘法。 - 77 -
Turing Machines can compute any computable function. 图灵机能计算任何可以计算的函数。 Turing machines are incredibly more powerful than Finite Automata. 图灵机能力比有限自动机强大得令人难以置信。 Yet the only difference between a FA and a TM is that the TM, unlike the 然而,它们之间只存在着唯一一个差别, FA, has paper and pencil. 那就是图灵机拥有纸和笔,而有限自动机没有。 Think about it. 认真考虑一下吧。 It tells you something about the power of writing. 它告诉你们写的重要性。 Without writing, you are reduced to a finite automaton. 离开了写,你将蜕变成一台有限自动机。 With writing you have the extraordinary power of a Turing machine. 拥有了写,你就拥有了图灵机的超常能力。 THINKING: 思考: CLAUDE SHANNON once told me that as a kid, he remembered being 克劳德·仙农告诉过我,他小时候曾一度被一个智力拼图游戏所难倒。stuck on a jigsaw puzzle. 他哥哥正好从他身边经过,对他讲: His brother, who was passing by, said to him: “你知道,我可以告诉你怎么做。” "You know: I could tell you something." 他哥哥就说了这些。 That's all his brother said. 但这已经足以帮助克劳德解决难题的了。 Yet that was enough hint to help Claude solve the puzzle. 这个提示最伟大之处在于…你总能给自己这样的提示!!! The great thing about this hint... is that you can always give it to 所以我建议你们,在遇到难题的时候, yourself !!! 想像有一只小鸟,或是一个年长的自我在耳边低语 I advise you, when you're stuck on a hard problem, “…我可以告诉你怎么做…”。 to imagine a little birdie or an older version of yourself whispering "... I could tell you something..." 我曾问过UMESH VAZIRANI, I once asked UMESH VAZIRANI how he was able, 一个麻省理工的本科生, as an undergraduate at MIT, 问他是如何能够每学期都修6门课的。 to take 6 courses each and every semester. 他说他清楚自己没有时间按常规完成课业, He said that he knew he didn't have the time to work out his answers the 他得找到一个捷径。 hard way. 你看,UMESH懂得问题往往有便捷,聪明的解决方法可寻。 He had to find a shortcut. You see, Umesh understood that problems often have short clever solutions. 你会遇到这种情况:在一个问题上艰难的研究了很长时间,却没有结There will come a time when you work on a problem long and hard but 果:( UNsuccessfully :( 而这时你获悉其他人已经发现了一个解决方法。 And then you learn that someone else found a solution. 要把这视为一个学习重要东西的好机会, See this as the GREAT opportunity it is to learn something important. 别让它从你身边溜走。 Don't let it pass you by. 问问自己:“我该如何解决问题呢?” Ask yourself: "How SHOULD I have been thinking to solve that problem?" 我发现这样做是一个强有力的训练。 I have found that doing so is a powerful exercise. Danny Sleator告诉我,鲍勃·弗洛伊德亲自推荐给学生的就是这个训Danny Sleator tells me that BOB FLOYD independently recommended 练。 exactly this exercise to his students. 他愿意引导学生自问: He would lead them into asking themselves: “我如何能够引导自己找到那个答案呢?” "How COULD I have led myself to that answer?" 花时间把它想清楚吧。 Take the time to think it through. 因为值得。 It's worth it. 你也会遇到这种情况:在一个问题上艰难地研究了很长时间,也成功There will come a time when you work on a problem long and hard and 了:) - 78 -
SUCCESSFULLY :) 而这时你发现其他人已经发表了。:( And then you learn that someone else already published. :( 可能让你难以接收的是,你必须还得视之为一个好机会。 Hard as that may be for you to take, you must view this too as a great 不要逃避。读一读已经发表的东西。 opportunity. Don't turn off. Read what got published. 你将惊奇的发现,很多情况下已发表的文章和你的研究是多么的迥然You will be surprised how often the published paper turns out to be 不同。粗略地讲, different in some significant way. Roughly 50%的情况,那根本就不是你所作的。 50% of the time, it is NOT at all the same as what you did. 25%的情况,与你所作相同但不够好。 25% of the time, it is the same but not as good. 25%的情况,它好于你。 25% of the time it is better. 这意味着50%,甚至更多的机会,你可以继续发表。 This means that 50% of the time or more, you can still publish. 那么那已发表的东西好于你的25%的情况怎么办呢? And what about the 25% time that what got published is better than your 这种情况是你学习的好机会。 own? 问问自己:“如果用这种好方法,我该如何解决问题呢?” In that case, you have a great opportunity to learn. Ask yourself: "How SHOULD I have been thinking to solve the problem in this fine way?" 这正是我发现自己,作为一名年轻的工程师,应该学习些极强,叫做This is how I discovered, as a young engineer, that I should learn something “近世代数”的东西。 enormously powerful called "Modern Algebra." 这是我从电子工程专业本科转到数学专业读研究生的一个原因。 It's one reason I switched from Electrical Engineering as an undergraduate 当然,那是在计算机科学学科出现之前的事了。 major to Mathematics as a Graduate major. Of course, this was before there existed anything called Computer Science. 接着思考… Still on THINKING... 悖论和矛盾的重要性。 The importance of PARADOX and CONTRADICTION. 当你可以证明一个命题S是正确的, When you can prove that a statement S is true, 并且你也可以证明同一个命题S是错误的, and you can prove that the same statement S is false, 那时你将知晓你已经意识到: then you KNOW that that you're on to something: 什么地方出错了。 Something is wrong somewhere. 不要低估矛盾的重要性。 Never underestimate the power of a contradiction. 它是我们知识的一个重要源泉。 It is one of our most potent sources of knowledge. 例子包括说谎者悖论“我正在说的这句话是慌话”以及它在集合论上Examples include the Liar Paradox "This statement is false." with its 和对我们理解语言方面的应用。 applications to Set Theory and our understanding of language. 粗略地讲,悖论可分为可数性悖论和不可数性悖论。 There are the seeming paradoxes of countability and uncountability, 在计算机科学中,显然是悖论引起的“停机问题”。 In CS, there is the apparent paradox that leads to The Halting Problem. 在物理学中,也存在许多自相矛盾的东西: Physics has lots of paradoxical material: 量子论中,爱因斯坦-罗森-波多尔斯基悖论, Quantum Theory. The Einstein-Rosen-Podulsky Paradox. 相对论中,双生子悖论, The relativistically speeding Twins. 物质的波粒二相性。 The wave and particle nature of matter. 在这插一段关于我目前研究工作的题外话,也是基于悖论的: Here's an ASIDE on my current work, also based on paradox: 我个人对意识悖论感兴趣。请比较如下两观点: - 79 -
I am personally interested in the Paradox of consciousness. Compare the 1. 人类是机器的观点,认为人类有丰富的但有限的内存,像计算机following two views: 一样程序化地工作。 1. the view that the human is a MECHANISM, an automaton with 2. 人类是有思想的观察力敏锐的生物体的观点,认为人类有神一样substantial but finite internal memory, programmed like any computer to do 的自由意志,是一个在超复杂、能力超强机器控制下的有意识实whatever it does, and/or 体,在巨大的潜意识的支持下选择该如何去做。 2. the view that the human is a thoughtful observant creature with a God-like free will; that it is a CONSCIOUS ENTITY at the controls of a highly complex highly capable mechanism, choosing what to do from among options served up by/from its vast unconscious below. 依我看来,这两种观点都是对的。这又怎么可能呢? In my view, both these views are correct. How can that be? 詹姆斯·鲍斯韦尔在他的《约翰逊传》中引用塞缪尔·约翰逊的话说:In his "Life of Johnson," James Boswell quotes Samuel Johnson “理论束缚人的思想;实践解放人的思想。” as saying: 约翰逊18岁时,牛顿逝世(享年85岁)。 "All theory is against the freedom of the will; all experience is for it." 那时约翰逊知道力学第二定律F=MA意味着人类就是机器。 Johnson was 18 years old when Newton (age 85) was buried. Johnson knew that F=MA implied that humans are mechanisms. “理论束缚人的思想;实践解放人的思想。” "All theory is against the freedom of the will; all experience is for it." 以上是我的题外话。 This ends my ASIDE. 整理一下你研究问题的好方法。 Make a list for yourself of good ways to pursue a problem. 我自己倾向于拿小的例子做试验。相反,DAVID GRIES倾向于置身My own favorite is to try small examples. By comparison, DAVID GRIES's 于一个(假定的)解决方案之中。一个例子就是他的咖啡罐问题: favorite is to put himself in the middle of a (presumed) solution. An 有一个罐中装着黑白两种颜色的咖啡豆,按照下述方式做:拿出两颗,example is his coffee can problem: Given a can of black and white coffee 如果同色,拿出一颗白色的咖啡豆置换它们;如果异色,拿出一颗黑beans, do the following: Pull out two beans: if both are the same color, 色的咖啡豆置换它们。问:最后拿出的一颗豆是什么颜色? replace them with a white bean. If the two are different, replace them with a black bean. What color is the last bean? 或者用赫尔希巧克力条问题试试这两种方法。 Or try out the two methods on the Hershey Bar problem [该问题如下:请给出将一块m×n的巧克力条掰成1×1大小的小块[Give an optimal algorithm to break an mxn Hershey bar into 1x1 pieces. 的最优算法。每一次,你可以选择一方条巧克力,沿着纵向或者横向At each step, you can choose a single rectangle of chocolate and crack it 的线摆开。掰一下算一步,步数越少越好。] along one of its vertical or horizontal lines. A single crack counts one step. You are to make the fewest number of cracks] 大脑就是肌肉。 Brains are muscles. 越用越灵活。 They grow strong with exercise. 并且即使是灵活的头脑,不锻炼也将变得越来越笨拙。 And even if they're strong, they grow weak without it. 在卡斯帕罗夫输给深蓝的前几个月里, In the months before Kasparov lost to Deep Blue, 他的母亲一直跟着他。 his mother came after him. 她担心儿子没有花足够的时间在国际象棋的训练上。 She was worried that he wasn't spending enough time exercising himself 她的担心被证明是有道理的。 (on chess). Her worries proved well-founded. 博士学位:开始阶段 - 80 -
THE PhD: GETTING STARTED 我记得我曾在IVIC(Instituto Venezolano de Investigaciones Cientificos)I remember a great summer job I once had at IVIC (Instituto Venezolano de 的一件很棒的暑期临时工作。 Investigaciones Cientificos). 一位顶级的神经生理学家Svaetichin,给了我一个极好的题目…不幸A top neurophysiologist, name of Svaetichin, gave me a splendid problem... 的是我没能解决它。 one that I unfortunately could not solve. 题目是找到一种方法,让光线集中在金鱼视网膜的一个细胞上,并且The problem was to find a way to focus light on a single cell of a goldfish 不能让光线溢出到相邻的其它细胞。 retina so that the light would not spill over onto any of the adjacent cells. Svaetichin曾试着在一片薄黑锡矿上打一个针孔,让光穿过该孔。在Svaetichin had tried making a pinhole in a sheet of black tin, and shining 中等大小的孔上还行,但在真正的小孔上失败了,光线分散,并形成his light thru the hole. This worked for moderate size holes, but failed for 了衍射图案。 really small holes, which caused the light to diverge, to form diffraction patterns. 因为Svaetichin没能解决该问题,我就坚信我也不行。也许我认为他Since Svaetichin couldn't solve the problem, I decided I couldn't. Or 的问题物理上是解决不了的。回顾往昔,我那时真应该翻出物理学书perhaps it's that I thought his problem physically unsolvable. In retrospect, I 籍,特别是光学方面的,尽全力阅读,和其他人讨论,并与他本人保should have taken out books on physics, especially optics, read as much as I 持讨论。 could, talked to others and kept on talking to him. 如果Svaetichin看到我在阅读、思考、工作,他会帮助我的。 Svaetichin would have helped me if I had shown him I was reading thinking working. 不要期望你的导师给你一个他或她可以回答的题目。当然,她也许会Don't expect your thesis advisor to give you a problem that he or she can *给你一个她已经知道一个答案的题目。 answer. Of course, she might. *给你一个她认为是可以回答,但她却还没有明确答案的题目。 * She might give you a problem to which she already knows an answer. *给你一个极难的题目。 * She might give you a problem that she thinks is answerable, but that she *如果她给你的题目足够难,我建议你先寻找一个非标准的答案。在hasn't actually answered. 处理完有关导师的话题以后我会就这一点做更多的讨论。 * She might give you a problem that is deadly hard. * If the problem she gives you is hard enough, I suggest you look for a NONSTANDARD answer. More on this later after I get done cooking the thesis advisor. 你的导师可能鼓励你在一个他感到舒适的领域研究,在这种情况下你Your thesis advisor may encourage you to work in an area that she feels 可以依靠她的高明建议和出色指导。 completely comfortable in... in which case you can rely on her for sage 或者你的导师可能鼓励你在一个她知之甚少,甚至一无所知的领域研advice and sound guidance. 究。在这种情况下,你得反过来告诉或者教她。 Or she may encourage you to work on something she knows little or 后一种情况,你只能自己努力了… 你得从其他老师那儿、课堂上、nothing about, in which case it will be up to you to inform and teach her. 书籍中、期刊里或者同学之间学习。 In the latter case, you will have to learn all you can for yourself... You will 这两种导师你都可能遇到。 have to learn from other faculty, from courses, from books, from journals. 我不知道哪一种一定好于另外一种。 from peers. 但你得知道你的导师是属于哪种。 Both kinds of advisors can work out for you. I don't know that one is necessarily better than the other. But you should know which you got. 无论你做什么,你得喜欢做它… Whatever you do, you got to like doing it.... 你得喜欢它以至于你愿意在很长一段时间无人跟进的情况下,独立思You got to like it so much that you're willing to think about it, work on it, 考它,研究它。 long after everyone else has moved on. 博士学位:深入阶段 - 81 -
THE PhD: DEEP IN THE MIDDLE OF IT. 阿纳托尔·法朗士有一句名言: There's a wonderful quote from ANATOLE FRANCE: “一个大学生” "A University Student" ――特别是博士生―― -- and this is especially true for a PhD Student -- “应该对任何东西都有个了解, "should know something about everything 并且对某个东西彻底了解。” and everything about something." 你知道有关于博士的笑话… You know the jokes about PhD's... 一个博士对越来越少的东西知道得越来越多, A PhD knows more and more about less and less 直到他一无所知。 until he knows everything about nothing. 在读博士的时候,你必需专注于一个狭小到你可以彻底理解的题目。When working on a PhD, you must focus on a topic so narrow that you can 起初,看起来你象是在针尖上工作,世界的极小一部分,就像一块微understand it completely. 小的水晶,微观上美丽却尚未完美。 It will seem at first that you're working on the proverbial needle, a tiny 坚持下去。随着你的坚持,你就会越来越深入了解它,你就会越来越fragment of the world, a minute crystal, 意识到,你的研究工作,你的题目,实际上包罗万象。 beautiful but in the scheme of things, microscopic. 到那时,你将可以窥一斑而知全豹了。 Work with it. And the more you work with it, the more you penetrate it, the more you will come to see that your work, your subject, encompasses the world. In time, you will come to see the world in your grain of sand. 一颗沙里看出一个世界, To see a world in a grain of sand 一朵野花里有一座天堂, Or a heaven in a wild flower, 把无限放在你手掌上, Hold infinity in the palm of your hand 永恒在一刹那间收藏。 And eternity in an hour. 威廉·布莱克(1757-1827) WILLIAM BLAKE (1757-1827) 这首华丽的四重奏背后跟着许多时而看似深奥,时而又看似疑问多多This gorgeous quartet is followed by a large number of sometimes deep 的格言,我视之为作博士论文过程中的偶尔发生的磨合工作。 sometimes questionable aphorisms, which I see much like the occasionally grinding work of a PhD thesis. 有各种各样的研究供你来做。 There's all kinds of research you can do. 有能够证明你之所知正确的研究。 There's research to prove what you know to be true. 有这样的研究――也许叫做调查更合适――能够判定出什么是正确There's research -- maybe better called SEARCH -- to figure out what is 的。 true. 一些这样的优秀调查成功于证明了人们最初确信为正确的东西是错Some of the best such search succeeds in DISPROVING what you initially 误的。 believed to most certainly be true. 例如,据说佛瑞德·霍伊尔爵士是在一次他打算驳斥 “宇宙大爆炸”For example, Sir Fred Hoyle is said to have coined the phrase "Big Bang" 这个概念时创造该词的。 at a time when he was looking to disprove it. 举一个相对小,但很私人化的例子: For a relatively minor but personal example: 在我研究中值问题的时候,我的目标是证明任何求n个整数的中值的When I was working on the MEDIAN problem, my goal was to prove that 确定性算法做的比较次数与对n个整数排序的确定性算法做的比较次any deterministic algorithm to find the MEDIAN of n integers must 数大致相同,即都是nlogn次比较。 necessarily make roughly as many comparisons as it takes to sort n integers, 结果我却惊奇的发现仅用O(n)次比较就可以找到n个整数的中值。 - 82 -
. n log n comparisons. I was shocked to discover that the median of n integers can be found with just O(n) comparisons. 当你在试图证明命题S为真的时候, When working on proving some statement S true, 你应该至少花些时间试着证明它为假。 you should spend at least some time trying to prove it false. 即使是S为真,试图证明之为假也可以给我们以启示。 Even if it's true, trying to prove it false can give insight. 不论怎样,往往我们的直觉是完全错误的。 And in any case, too often, our intuition is dead wrong. 还有一种情况,在解决一个难题时,你可能会发现答案不是你预期的。There is yet another sense in which, when working on a hard problem, you 你可能在寻找肯定或者否定的答案;然而答案往往可能是这两者之外may find that the answer is NOT what you expected. 的其他东西。 You may be looking for a YES or a NO; it may be something else. 一些年前,约翰·霍普克罗夫特给他的一个博士生一个判定自由布尔范Some years ago, JOHN HOPCROFT gave one of his PhD students the 式等价的题目。 problem of deciding the Equivalence of Free Boolean Forms. 其中的细节并不重要。 The specifics don't matter. 这个题目是Garey和Johnson写的书中一个未解决的问题。 The problem appeared as an open problem in Garey and Johnson. 问题是:等价问题究竟是不是NP-完全问题? The question was: Is the Equivalence problem NP-complete? 或者它在多项式时间内可解否? Or is it solvable in poly time? Chandra, Wegman和我发现了一个解决该问题的随机算法。当时,这Chandra, Wegman and I found a randomizing algorithm for this problelm. 象是已经完全解决了问题。仅在我们详细描写该算法的时候,我们才At the time this seemed to beg the question entirely. Only after writing it up 真正明白虽然我们已经给出一个有效的随机算法来解决该问题,但如did we really understand that we had given an efficient albeit randomizing 果NP<>RP (随机多项式时间),那么该问题并不是一个NP-完全问题,algorithm to solve it, This shows, by the way, that the problem is not 尽管看起来相象。 NP-complete if NP <> RP (Randomizing Poly-time), as seems likely. 当然,这又引发了P=NP?问题。 Of course, this brings up the question whether P = NP. 现在的问题是NP-完全问题在多项式时间内可解吗? The question of our time: Are NP-complete problems solvable in poly time? 我今天所讲的东西不知能否对解决像这样的难题有所帮助。 Could anything I have said today be useful for so hard a problem as that? 可能没有。然而… Probably not. Nevertheless... 与我一样,LEONID LEVIN相信无论P=NP?问题的答案是什么,结LEONID LEVIN believes as I do that whatever the answer to the P=NP? 果都不应该像你所想像的那样。并且他给出了一些很好的例子。 problem, it won't be like anything you think it should be. And he has given 比如说,他给出一个因式分解算法,该算法可以被证明是最优的,一some wonderful examples. 直到一个乘法常数。 For one, he has given a FACTORING ALGORITHM that is proVably 并且他证明如果他的算法是指数级的, optimal, up to a multiplicative constant. 那么因式分解的任何算法都将是指数级的; He proves that if his algorithm is exponential, 同样地,如果任何因式分解算法是多项式级的, then every algorithm for FACTORING is exponential. 那么他的算法也将是多项式级的。 Equivalently, if any algorithm for factoring is poly-time, 但我们无法判断他的算法的时间复杂度,有种强烈的预感,它的运行then his algorithm is poly-time. 时间是不可分析的。 But we haven't been able to tell the running time of his algorithm because, 也许像STEVEN RUDICH建议的那样,P=NP?问题用常规的数学形in a strong sense, it's running time is unanalyzable. 式化推导是不可判定的。 Maybe as STEVEN RUDICH suggests, the P=NP? problem is undecidable in the standard formalization of Mathematics. 关键是我们很难预料问题的答案是什么。这里有一首我作的诗,该诗The point is that the answer may not lie where you expect it. Here's a poem 有感于我对下述事实的困惑:有时候我们很可能会被问题拖着,不情I wrote when I wondered at the fact that we must sometimes be dragged 愿地走到一个我们无法预料到的正确方向上去。 - 83 -
kicking and screaming in the right direction. 这可以用我们眼睛的盲点作个类比, It's a comparison to the blind spot in our eyes, 盲点不是真的看不见而是将东西隐藏了 which isn't really blind but makes things up for us. 它导致一个问题:世界上是否有其他东西我们的大脑和智力生来就不It questions whether there might not be other things in this world that our 能隐藏? brains, our minds, by their very nature, make up for us: 盲点 (写作于1996-5-15) Blind Spots mb 15-MAY-96 所有人的眼睛中都有盲点, All men have Blind Spots in their eyes, 它制造了视觉上的山谷。 That manufacture visions of their vale. 它塑造了光线未曾走过的空旷, And shape that void where light's unregistered, 伴随着无耻无悔的谣言。 With bold-faced unrepentant tales. 是什么其他盲点塑造了我们的智力和思维? What other blind spots shape our minds and thoughts? 有哪些其他谣言被非凡的智力 What other tales do won'dring minds unfurl 揭露以使我们不被自己所相信的欺骗 To woo us unbeguiled we would believe 或制造给陌生的不存在的世界? To strange and nonexistent worlds? 关于写作: ABOUT WRITING: 这里我引用的一段我认为非常明智和有益的话: Here is the one quote that I have found most helpful and wise: “首先要有东西可说, "First have something to say, 其次把它说出来, Second say it, 第三说完即止, Third stop when you have said it, 最后拟一个正确题目” and Finally give it an accurate title." 约翰·肖·比林斯 [1838-1913] JOHN SHAW BILLINGS [1838-1913] 我给你的建议: MY ADVICE TO YOU: 不要期望你的导师能够读懂你的论文。有一些导师能够读懂你的论文Don't expect your thesis advisor to read your thesis. Some thesis advisors 并且能够给你很好的反馈意见,但这不是所有的导师都能够做到的。can and do give good feedback, but not all. 尽管如此,你要保证有人读懂你的论文…, Still, make sure that SOMEBODY reads your thesis... 我建议你请你的同伴来做这件事。 I especially recommend that you ask your peers. 这里还有另外一条建议,是我曾经给我自己的一条建议,现在我把他Here's another piece of advice that I have often had to give myself, and I 送给你们… here give you... 当你将准备发表的论文寄出, When you send a paper off to be published, 但是未被录用… and it gets rejected... 不要因为评委粗心无知的反馈意见使得你对自己经过深思熟虑,表述Don't be turned off by the mindless cretinous feedback that you get to your 优美的文章产生怀疑! well-thought-out beautifully-written work! 但要理性地对待它,利用这些反馈信息完善你的论文! Be a MENSCH. Use the feedback to improve your paper! 改进后,将论文重新寄出去。 Make it better. And send it back. 最后,我最诚挚的希望你们能够知道你们的的确确在某些显赫的方面Finally, it is my most earnest wish that you should know something that is 是特殊的,独一无二的。 honestly amazingly true of you... That you are each of you UNIQUE and SPECIAL in some glorious way. - 84 -
我写了一首诗来表述我的希望,作为这次说教的结束。诗的名字叫做I wrote a poem to capture this, which I now use to end my sermon. It's “根本法则”。 called "Fundamentals." 根本法则 FUNDAMENTALS (写作于 1996-06-05) mb 05-JUN-96 鸟须高飞。臭鼬须臭。 Bird must soar. Skunk must stink. 猫须捉鼠。人需思考。 Cat must prowl. Man must think. 能够思考使得人区别于动物。 What sets man apart from beast is his engine of thought. 他的智力,他的 His mind. His 大脑 BRAIN 使得他们独一无二 makes him unique 并给他们带来巨大的欢愉。 and gives him his greatest pleasure. 但是根本法则就像思维之于人类 But fundamental as is thought for human beings, 还有更基本的东西存在并 there is stuff more basic still that underlies and 驱动 DRIVES 不仅包括人类 not only man 也包括所有高级动物。 but all great beasts, 是天性要求我们每个人…要有特点, And that is nature's call to each of us... to be special. 在某一方面卓越, To be distinguished in some way. To be 独一无二, UNIQUE. 比任何人都了不起,比任何人做得都好。 To BE something, to DO something, BETTER than everyone else. 就像中古时期光鼻子的黑猩猩, Like the leather nosed chimpanzee, 把罐子和树枝拖拽得哗哗响, dragging noisy cans and branches, 恐吓着同伴,使其臣服。 frightening peers into submission, 一个人不必是聪明绝顶,只要特殊,他就是天才。 One does not have to be brilliant, a genius, to be special. 做那些比其他人或任何人做得都好的事。 To do something better than anyone/everyone else. To be 想无人能敌吗? UNMATCHED, 选择一个目标吧, One has only to choose an END 这个目标 any END 不仅关系到 that MATTERS 而且能鼓舞 that INSPIRES 你, YOU 然后去实现它。 And then DO IT. - 85 -
其他 《中国计算机报》征稿启事 作为一家IT专业媒体,《中国计算机报》一直关注技术的发展和应用。网格技术作为影响未来的一项重要技术,《中国计算机报》在2005年全面征集网格技术方面的稿件。稿件内容要求围绕网格技术/应用发展进行阐述,稿件写作文风贴近大众,太过论文化的稿件不予刊登。来稿字数不限,尽量为文章配上图片或者表格,稿费一般为80-100元/千字,优秀稿件稿费可以提高到120-150元/千字。欢迎大家踊跃投稿! 联系人:李军;联系电话:010-88559758;电子邮件:ciw_lijun@;QQ:1958505; MSN:lijun961@ - 86 -
《网格研究通讯》第三期征稿启事 《网格研究通讯》是一份面向广大网格爱好者的电子刊物,它特别注重稿件的原创性、实用性和前瞻性。《网格研究通讯》创办的目的是给广大网格爱好者提供一个分享研究心得、了解研究动态、鼓励大胆创新和提高研究能力的平台。《网格研究通讯》的内容目前主要包括以下几方面: 新闻动态 会议、项目,网格爱好者的活动等等。1)国内国外会议投稿指南。2)国内国外关于网格的新闻。 研究报告 写自己的网格研究心得,类似于研究论文。1)综述某一个方面的研究动态。2)阐述自己的新想法。3)毕业论文、开题报告的缩写版本。 网格资料 带领网格爱好者打开网格的宝库,包括到哪里去找资料和认识其他网格爱好者。1)网格相关的网站导航。2)网格相关的会议、期刊和书籍介绍。3)翻译的网格外文资料。4)介绍著名的网格专家和研究小组。5)网格爱好者的自我介绍(最好配有照片)。 科研方法 主要讨论如何做学术研究。1)介绍做研究时使用的计算机软件。2)写论文发表论文的过程。3)研究人员应该具备的心理素质和习惯。4)自己做研究的成功和失败经验。5)翻译的谈研究方法的外文资料。 其他 其他您认为适合在本刊发表的内容。 稿件最好能是原创作品(包括外文翻译)。对稿件的格式没有太多的要求,但最好能使用Word排版,文章通常包括标题、作者姓名和联系方式,正文、参考文献和作者个人简介,标题请从三级标题开始编排,正文通常使用5号宋体。 《网格研究通讯》计划在2005年夏季或者秋季推出第三期。这一期的“命题稿件”包括:EGEE项目介绍,全球信息网格(GIG)介绍,网址(如IE收藏夹中的网址)管理软件,参考文献管理软件,以及介绍研究方法的外文翻译(如来自网站 稿件、有助于组稿的信息、对刊物的批评和建议,请通过电子邮件寄给张坤龙(zhangkl@)。 - 87 -
后记 《网格研究通讯》创刊号推出后第二天,我就收到吴东的一封来信,他在信中写道: 在这里,我觉得我得澄清一个事实,那就是我的身份。我在《网格研究通讯》第一期的本刊创办成员列表中看到我的身份是博士,觉得很奇怪,不知是我当时写错了,还是其它原因造成的。我只是一个硕士而已。还有一个就是我的研究方向问题,由于一些原因,我现在主攻网络拥塞,对网格没有更深的了解,但我还会继续跟踪网格计算的发展,关注网络拥塞在网格方面的应用。 以上是我给你写信的要说明的一些事实,希望坤龙兄能谅解,同时也把我的身份纠正过来。 老实说,对于吴东要求纠正身份这件事情我感到有点吃惊,因为我一直都是很喜欢人家叫我张博士的,虽然我还没有拿到博士学位。对于吴东的来信,我很快就给予了这样的答复: 我查阅了一下保存的记录,发现里面你并没有表明自己的身份。我是从你的一句话“不知道我在博什么”推断你是博士的。工作不够细致导致出错,还请你给予原谅。呵呵,或许我这样称呼你早了点。 显然,这个事情光这样处理是不妥当的,因为我并没有完全按照吴东的要求去做。不过,我这样做也是有原因的。《网格研究通讯》创刊号已经发行,这个错误不如等到发行第二期时再来公开纠正。更重要的是,我觉得吴东的身上有一种宝贵的精神,这种精神值得我学习,也值得我把它宣扬开来与大家共勉。 (张坤龙,zhangkl@) - 88 -