(计算机软件与理论专业论文)作业管理系统通信机制与作业流同步机制的研究与应用.pdf_第1页
(计算机软件与理论专业论文)作业管理系统通信机制与作业流同步机制的研究与应用.pdf_第2页
(计算机软件与理论专业论文)作业管理系统通信机制与作业流同步机制的研究与应用.pdf_第3页
(计算机软件与理论专业论文)作业管理系统通信机制与作业流同步机制的研究与应用.pdf_第4页
(计算机软件与理论专业论文)作业管理系统通信机制与作业流同步机制的研究与应用.pdf_第5页
已阅读5页,还剩56页未读 继续免费阅读

(计算机软件与理论专业论文)作业管理系统通信机制与作业流同步机制的研究与应用.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

西北工业大学碗士学位沦文 摘要 摘要 网络作、世管理系统的广泛应用,主要目的是强化操作系统的批处理功能, 提供对作业的提交、调度、执行及控制等机制,从而能够更加有效地利用系统 资源、平衡网络负载,提高系统的整体性能。本文作者在参与的研究工作中提 = _ 的作、j k 管理系统j m s 丰要是基于作业流的控制,这不同于传统的作业管理系 统以作、i k 为摹础进行控制。随着研究的深入,作业流彼此间的交互也越来越多, 因此,如何实现作业流之问的同步就显得相当重要。工作流管理同盟( w f m c ) 为实现工作流之间的互操作性,曾提出过同步模型规范,这种模型要求在两个 工作流程中存在同步点。目前的作业管理系统在同步点的设置以及同步点的实 现方面不够灵活和有效,针对这种情况,作者在实践中提出了一种作业流间同 步的新乃案,通过在两个作业流程中任意的设置两种同步作业,完成作业流之 间的同步执行关系。另外,作者对采用客户n 务器模型的作业管理系统的通信 机制进行了深研究,本文就体现了作者的主要研究成果。 作背参与研究的作业管理系统具有典型的客户服务器模型结构。为了减轻 客户与服务器在数据传输的相关处理上的负担,同时也为了方便通信接口的扩 腱与维护,实现j ,客户、通讯代理、服务器的三层体系结构。客户端提供完全 的g u i 用户界面,完成用户对作业流的管理及对系统的管理功能;通讯代理采 用t c p i p 网络通信踟议以及与平台无关的数据通讯协议来实现客户与服务器 之间的完全通讯;服务器端提供对客户端各种操作的全面支持。 在服务器内部,为达到作业管理的网络实现目的,各模块之间需进行跨网 络、跨平台的相瓦通信,这主要由面向连接的流式s o c k e t 实现。j m s 系统主要 提供了4 个s o c k e t 服务端口,它们将整个系统的服务器内部各模块串联起来, 完成各种功能。为实现作业流之间的同步,作者提出了两类新型作业:送信作 业和收信作业,它们通过在作业流之问进行信息的发送和接收,很好的解决了 同步点的搜罱与实现山1 题。 关键词:作业管理系统客户服务器机制通信代理s o c k e t 通信作业流同步机 制送信作、k 收信作业 西北工业大学颤士学位论文a b s t - a c l a b s t r a c t n e t w o r kj o bm a n a g e m e n ts y s t e mi sw i d e l yu s e dn o w a d a y s ,w i t ht h ep u r p o s eo f s t r e n g t h e n i n gt h eb a t c hp r o c e s s i n go f0 s ,p r o v i d i n gt h e m e c h a n i s mo fj o b s u b m i t t i n g ,s c h e d u l i n g ,e x e c u t i n ga n dc o n t r o l l i n gc o n s e q u e n t l yt h es y s t e mr e s o u r c e c o u l db e t i l i z e dm o r ee f f e c t i v e l y , t h en e t w o r kl o a dc o u l db eb a l a n c e d ,a n dt h e s y s t e mp e r f o r m a n c ec o u l db ei m p r o v e dt h ej o bm a n a g e m e n ts y s t e m ,w h i c ht h e a u t h o rp a r t i c i p a t e si na n di sn a m e da sj m s ,i sb a s e do nt h ec o n t r o lo fj o b f l o wi t i s d i f f e r e n tf r o mt h et r a d i t i o n a lj o bm a n a g e m e n ts y s t e mw h o s eb a s i cu n i ti sj u s tj o b a s g o i n gd e e pi n t ot h er e s e a r c ho f t h i sj o bm a n a g e m e n ts y s t e m ,t h e r ea r em o r ea n d m o r em u t u a lc o m m u n i c a t i o n sb e t w e e nj o b f l o w , h e n c ei t i ss e e mt ob ev e r y i m p o r t a n tt o r e a l i z et h es y n c h r o n i z a t i o ni no r d e rt os o l v et h i sp r o b l e m ,w o r k f l o w m a n a g e m e n tc o a l i t i o nh a sa d v a n c e dac r i t e r i o nf o rs y n c h r o n i z a t i o nm o d e lt h i s m o d e lp r e s c r i b e st h a tt h e r es h o u l db es y n c h r o n i z a t i o np o i n tb e t w e e nt w ol o b f i o w s t o d a y sj o bm a n a g e m e n ts y s t e mi sn o tf l e x i b l ea n de f f e c t i v e l ye n o u g bt os e ta n d r e a l i z es y n c h r o n i z a t i o np o i n t ,a i m i n gf o rs o l v i n gt h i sp r o b l e m ,t h ea u t h o rh a s e x t e n d e dan e wp r o j e c ti nt h i sn e wp r o j e c t ,t h es y n c h r o n i z a t i o n m e c h a n i s mi s f u l f i l l e db ys e t t i n gt w os y n c h r o n o u sj o b sf r e e l yi nj o b f l o w so na n o t h e rh a n d ,t h e a u t h o rh a sg o n ed e e pi n t ot h es t u d yo fc o m m u n i c a t i o nm e c h a n i s mi nt h ej m s s y s t e mt h i sa r t i c l er e f l e c t st h em a i nr e s e a r c hr e s u l to ft h ea u t h o r t h ej o bm a n a g e m e n ts y s t e mw h i c ht h ea u t h o rt o o kp a r ti ni sp r o v i d e dw i t ht h e t y p i c a lm o d e ls t r u c t u r eo fc l i e n t s e r v e r i no r d e rt or e d u c et h ew e i g h to fd e a l i n g w i t hd a t at r a n s m i s s i o nb e t w e e nc l i e n ta n ds e r v e r , a n da l s ot om a k ei tc o n v e n i e n ti n e x p a n d a b i l i t ya n dm a i n t e n a n c et oc o m m u n i c a t i o ni n t e r f a c e ,j m si s r e a l i z e d b y t h r e e - l a y e ra r c h i t e c t u r eo fc l i e n t ,c o m m u n i c a t i o na g e n ta n ds e r v e r c l i e n ts u p p l i e s c o m p l e t eg r a p h i cu s e ri n t e r f a c e ,a c c o m p l i s h e st h em a n a g e m e n to fj o b f l o wa n d s y s t e m ;c o m m u n i c a t i o na g e n ta c c o m p l i s h e sc o m p l e t ec o m m u n i c a t i o nb e t w e e n c l i e n ta n ds e r v e r b yt c p f l p n e t w o r kc o m m u n i c a t i o np r o t o c o la n dp l a t f o r m i n d e p e n d e n td a t ac o m m u n i c a t i o np r o t o c o l ;s e r v e rs u p p l i e sf u l ls u p p o r to fa l l o p e r a t i o n si nc l i e n t f o rt h ep u r p o s eo ft h en e t w o r kj o bm a n a g e m e n t ,a l lm o d e l si n s i d es e r v e r s h o u l dc o m m u n i c a t ew i t he a c ho t h e ra m o n gd i f f e r e n tn e t w o r ka n dd i f f e r e n t0 s t h i si sr e a l i z e db ys t r e a ms o c k e tj m ss y s t e mp r o v i d e sf o u rs o c k e ts e r v e rp o r t s w h i c hc o r r e s p o n dt oa l lt h e s em o d e l sa n de x t e n da l lf u n c t i o u st or e a l i z et h e s y n c h r o n i z a t i o na m o n gj o bf l o w , t h ea u t h o rd e f i n e dt w on e wt y p e so fj o b : l i 两北工业大学硕士学位论文 a b s t r a c t s e n d e v e n tj o ba n dr e c v e v e n tj o bt h e ys e n da n dr e c e i v em e s s a g e sa m o n g j o bf l o w a n dr e s o l v et h e p r o b l e m s o fs e t t i n ga n d r e a l i z i n gs y n c h r o n i z a t i o np o i n t s s u c c e s s f i a l l v k e yw o r d s :j o bm a n a g e m e n ts y s t e m ,c l i e n t s e r v e rm e c h a n i s m ,c o m m u n i c a t i o n a g e n t ,s o c k e t ,s y n c h r o n i z a t i o nm e c h a n i s mo f j o bf l o w , s e n d e v e n tj o b 、r e c v e v e n t j o b u i 西北工业大学硕士学位论文 刖茜 本文的研究背景 日u 舌 作业管理功能最早由u n i x 系统本身实现。由于u n i x 主机通常昼夜运行, 在大多数的非工作时间系统资源无法得到有效利用,因此产生了“在以后某个 时刻执行作业”、“在资源得到满足的情况下执行作业”、“按某种时问周期有规 律地执行作业”等作业管理的思想。u n i x 的a t 、c r o n 等系统命令提供了对批处 理作业的支持,然而u n i x 作业管理功能存在着很多不足。例如,a t 命令一旦将 作业投入运行就会立刻“忘记”该作业,它无法对作业的执行过程进行控制, 用户只能在作业完成后,查看作业的执行结果;a t 系列命令并不关心作业运行 时系统的负载情况,因此,当有几个大型的作业同时执行时,可能导致系统整 体效率极为低下。因此,u n i x 系统对作业管理只提供了有限的支持,满足了用 户作业管理的最基本要求。后来发展起来的批处理队列系统,更加强化了u n i x 的作业管理功能,并支持网络范围内多台u n i x 主机上的作业调度与执行,这就 产生了作业管理系统。 作业管理系统最早在大型主机上使用,系统或用户提交的作业在它的管理 下以批处理的方式运行。随着高性能工作站、集群系统的发展,作业管理系统 也发展到支持异构的网络环境、支持多平台、支持并行应用等新需求这样一个 阶段。 实际应用中对作业管理系统的需求也越来越显著。目前,作业管理系统主 要应用于以下几个方面: 1 科学计算 计算机自发明以来,一个主要的应用是进行科学计算,如何有效利用 计算机解决复杂的计算问题,一直是一个活跃的研究领域。例如,对天气 系统进行数字模拟以建立大气或气候模型,机械设备的设计及制造加工, 设计超大规模集成电路,模拟化学反应等计算密集型任务。对这类问题, 现在都是用高性能并行机或集群系统来完成,将一个大问题中包含的多个 小问题进行并行处理,最终得到大问题的答案。而作业管理系统就是在网 络范围内调度执行并行程序、更充分利用和分配并行环境的资源的网络管 西北工业大学硕士学位沦文刖吾 理系统。它可以管理特大型的集群( 如5 0 0 个结点) 和特别大韵作业( 如 需要5 0 个结点才可以运行) ,可以实现集群范围内的作业调度,让属于同 一并行作业的多个并行任务在同一时刻启动执行;可以在集群系统中实现 作业迂移,即作业正在执行的机器由于资源发生了变化或调度规则的限制, 需要将作业转移到另外一台机器上继续执行。 2 商业领域 高性能计算对计算机的发展起到了很大的促进作用,但是,商业应用 领域对计算机的发展提出了更高的要求,因为该领域需要计算机的速度更 快,容量更高,能对大量数据进行各种复杂的处理。当大量高性能的计算 机系统也应用到商业领域如银行业、金融业、石油化工企业、信息服务业 及娱乐业时,这些系统的管理员发现同样需要一个很好的后台系统完成企 业范围内的作业管理,实现企业网络资源的优化利用,简化系统维护工作, 协调企业内各类应用系统的运行,所以作业管理系统在商业领域也大受欢 迎。在企业信息管理领域里,作业管理系统支持夫在作业,实现更多的作 业依旃关系,支持广域网范围内整个企业的作业管理与调度;支持包括 u n i x 、w i n d o w sn t 在内的多种操作系统平台。 3 大型网络系统的维护与管理 它是项复杂的工作,系统管理员可能要不断跟踪系统运行日志,调 整系统参数,刘用户数据、帐户信息、磁盘空间等进行统计、备份与恢复, 向川j 。发送消息,多台服务器间进行数据复制等。它要求作业管理系统支 持异构的网络环境,并与网络管理软件集成。 本文的研究内容 鉴 二作、管理系统在以上各领域的广泛应用,现今国内外众多研究机构都 致力于对作! t 营理系统的研究与开发。作者从2 0 0 2 年9 月进入西北工业大学计 算机学院软件工程中心作业管理系统研发项目组从事研究工作,该项目与国外 某著名公司合作,开发的作业管理系统具有分布式特征,是典型的客户服务器 模型,卜要面向商业应用,为企业提供良好的网络作业管理,在国外已经占据 了较好的市场份额,目前该产品正在走向中国市场。 作者在项目组期间,历经两期开发,主要参与设计实现了作业流之问的同 步机制e v e n t j o b ,还参与了基本设计、功能设计、详细设计,以及各阶段 的测试,划相关学习文档与维护文档的写作。在这段时间里,分别在客户端和 西北工业大学硕上学位论文刖舌 服务器端对作业管理系统进行了深入学习研究,这使作者对整个作业管理系统 有了深刻了解,从总体上把握了作业管理系统的运行机制,对作业管理系统的 通信机制进行了全面剖析。 在上述工作的基础上,作者对作业管理系统的通信机制进行全砸深刻的讨 论,完成r 此篇论文。本文的主要研究内容如下: 简要介绍作业管理系统的原理,使读者对作业管理系统有总体的认识; i 寸沦作业管理系统的通信机制,主要论述服务器内部各模块的s o c k e t 通信: 详细介绍作业流同步机制的设计与实现,即新增加的两类作业:送信 作业和收信作业; 分析作业管理系统的通信代理机制,讨论它的相关原理和协议,给出 实现方法。 本文的组织结构 前。5 i :综述本文的研究背景、研究内容与组织结构。 第章:概述作业管理系统j m s 的体系结构、实现的功能和特性、运行机 制,并对作业管理系统的通信机制与同步机制作简单的介绍; 第一章:讲述作业管理系统通信的相关技术,从进程间通信必须遵守的协 议开始讨论,介绍了数据通信的基础知识、网络分层协议、应用 层i 办议等; 第三章:客户服务器之间的通信代理机制。详细分析j m s 采用通信代理 的原因,分析通信代理的技术特点和具体实现方案; 第四章:服务器端的s o c k e t 通信机制以及作者主要参与的作业流同步机制 的实现: 结束浯一总结本文的主要内容,展望将来作业管理系统的发展方向与现在 存在的不足。 西北上业 = 学碗上学位论文 第一章 第一章作业管理系统j m s 及其通信机制概述 在作业管理系统中,数据的通信与同步是一个重要组成部分。本章首先对 作业管理系统j m s 本身做一个简要的介绍,使读者对这一系统有一个大致的了 解,然后对此系统的通信机制以及作业流同步作概要的说明。 1 1 作业管理系统j m s 作业管理系统是建立在操作系统之上的一种类系统软件,它的主要作用是 强化操作系统的作业管理功能,提供作业提交、调度、执行及控制的新机制, 更加有效地利用系统资源、平衡网络负载、提高系统整体性能。 1 1 1j m s 实现的功能 作、j k 管理系统j m s 主要实现以下功能: 作业流的管理功能。j m s 提供了一种叫做j o b n e t w o r k 的作业流机制,一个 作业流包含了多个传统意义上的作业、以及单元作业之间的执行逻辑即作 业闻的依赖关系。它是作业执行的单位,作业管理以作业流为对象。j m s 提供对作业流进行的各种操作,包括创建、删除、提交运行、和监控。同 时还有产生作业流的执行日志、执行数据的归档等功能: 日历凋度功能。j m s 向用户提供对作业流的日历调度功能,用户创建口历 及时刻表,设置工作日及休息曰。用户可以设置作业流的日历调度规则, 将调度规则联接到具体的作业流之上,使该作业流按照所设定的调度规则 进行凋度: 、户执行跟踪显示功能。用户可以监奄作业流的执行状况,跟踪作业流的执行, 获得作业流当前的执行点,查看单元作业的执行结果、出错信息、详细情 报,对执行作业流进行各种控制,存执行过程中重新修改作业流及作业的 属性定义: 负载i 1 2 衡功能。,j m s 提供了三种负载共享的方式,一是用户可以指定其作 业必须运行于哪一台服务器的哪一个队列中;二是对用户半透明的自动负 载共享方式;三是对用户完全透明的自动负载共享方式; 4 西北工、i k 尢学硕士学位沦文 第一誊 机器绀管理。对机器进行统一管理, 机器组内,可实现负载的分散功能。 统的机器组中。 1 1 2j m s 的体系结构 可以形成作业管理系统的机器组,在 可追加或删除一台机器到作业管理系 作业管理系统m s 是具有客户n 务器模式的分布式系统,采用分层处理 模型,对系统的开发以及灵活性等都很有帮助。 1 作业管理系统j m s 的客户通信代理服务器三层模式 客户i 服务器体系结构是一种先进的网络分布式模型,分层结构主要带来以 下这些好处: 层次独立:每一层只关心相邻的下一层提供的服务: 灵活性:某层次的变化不会影响其他层次: 易于实现和维护: 标准化:把分层功能、服务和接口做成结构化的实体,以使标准化:【作 变得容易开展。 由于分层结构有l 述优点,j m s 系统也采用了客户n 务器体系结构。更进 。步,j m s 将整个作、肚管理系统划分为客户层、通讯代理层、服务器层三部分。 采用层次开发的观点,将整个系统分为若干层,每层功能相互独立,但保证层 与层接口相对稳定。这样做既有利于软件开发,也可以做到很大的灵活性,扩 展功能比较方便。实际上,该系统在经历了多个版本的研发之后,增加了很多 功能,但客户n 务器的体系结构并没有改变,这说明该体系结构具有很强的生 命力。 2 j m s 的分层体系结构 作业管理系统j m s 的体系结构如图1 1 所示。说明: 客户端w i n c l 为用户提供图形界面,供用户完成作业管理的一系列操 作。用户对w i n c l 的每一项操作,都形成命令请求,通过代理发送给 服务器端,再根据服务器端的处理结果做出相应的反应; 通信代理c o m a g e n t 负责客户与服务器间的通信,它将客户的命令请 求发送给服务器端,又将服务器端的处理结果发送回客户端; 命令转发中心j n w m a n 是位于服务器端的模块,它相当于一个转接叶i 心,由c o m a g e n t 处获得客户端的命令并解析,根据对象类的不同进 行分类处理: 西北工业大学碗士学位论文第一章 作业引擎j n w e n g i n e 是系统的执行核心,它负责对作业网络进行解析、 执行及控制,同时产生作业网络的执行状态文件,执行曰志文件。它 的存在依赖于q w b 和t r k r d r 。q w b 调用q w a t c h 命令监视n q s 。当作业的 执行状态发生变化,q w a t c h 将变化捕捉到,通过q w b 通知 n w e n gj t i e , i n w e n g i n e 根据状态变化作相应处理,t r k r d r 通过读取n q s 的数据文 件获得作业的执行状态; n q s 网络队列系统执行j m s 投交到队列中的单元作业,对队列中的请 求进行调度、转移、执行,完成机器的负载平衡及队列的负载平衡。 1 2 作业管理系统中的通信 数据通信主要是“人( 通过终端) 机( 计算机) ”通信或者是“机一机”通 信,它以数据传输为基础,但又不是单纯的数据传输。它包括数据传输和数据 交换,以及在传输前后的数据处理过程。 传统的汁算机系统由一台大型计算机和一定数量的“哑”终端组成。计算 机系统所有的运算能力全在这一台计算机里。用户通过字符终端与计算机进行 西北工业大学硕士学位论文 第一章 交互,通常,用户界面由输入的难懂的指令和接收的相对简单的屏幕信息组成。 对作、世管理系统j m s 而言,它采用了客户服务器模式,用户通过图形用 户界面( g u l ) 和系统进行交互。客户组件w i n c l 是服务提出方,负责届示作 业管理相关信息以及与用户交互,这就是“人机”通信;而服务器组件s e r v c f 是服务提供方,接收客户端发来的命令请求并进行解析和执行,将结果返回给 客户,这一过程就是“机机”通信的部分,包括了c s 之间的请求响应通信 以及服务器内部、不同服务器之间的通信,即进程间的通信。 1 2 1 j m s 的图形用户界面人机通信 前面已经提到,j m s 是基于客户服务器模式的,客户n 务器系统和传统 的、基于过程的系统最明显的不同是客户服务器系统几乎总是和图形用户界面 相联系。一个图形用户界面在屏幕上向用户描述了大量的对象,例如命令按钮、 菜单、图形按钮、下拉式列表框、工具条等。这种多样性与以前只允许用户在 提示符处输入数据或命令的系统形成了鲜明的对比。 在j m s 中,w i n c l 是一个图形化界面下的“通用客户程序”,与一般c s 相比,它把任务的中心全部移到了服务器上,客户端只提供与用户的交互并显 示服务器返回的信息,这大大简化和降低了客户机的开发任务,同时可以随应 用变化与用户需求方便地集中更改服务器即可,提高了系统的可扩充性。用 户只需要了解w i n c l 如何操作,而不必知道任务请求是如何具体实施的,这样 增加了操作的透明性,同时也缩减了一般客户软件使用前的培训开支。 w i n c l 图形界面可以完成作业管理操作的所有功能,用户可使用g u i 来 创建、管理、提交作业网络;允许用户监视作业网络的执行情况,对执行过程 中的作、渺网络进行控制;允许用户建立、修改、删除日历;允许用户设定作业 网络的执钯二h 寸刻表:允许用户管理整个服务器机群。 1 2 2j m s 进程间的通信 j m s 系统进程间的通信分为客户端与服务器之间的通信和服务器内部的通 信。 1 2 2 1 客户朋务器问的通信代理c o m a g e n t 作业管理系统j m s 客户和服务器之问的通信,采用了通信代理机制。通信 代理c o m a g e n t 负责在客户与服务器之间进行数据通讯,由它将客户的命令请 西北工业大学硕上学泣论殳 第章 求发送到服务器端,并将服务器端的处理结果返回给客户端,这就形成了客户、 通讯代理、服务器的三层通信结构。 前面电提到了分布式系统分层结构的好处,把客户与服务器间的通信单独 分离出来作为通信系统层,既有利于软件开发,也可以做到很大的灵活性,扩 展功能也比较方便。 从层次结构上来看,c o m a g e n t 位于作业管理系统的中问层,处理客户n 务器模式下的信息交互:从功能上来看,c o m a g e n t 将客户和服务器从额外的 数据传输负担种解脱出来,便于客户服务器之间通讯接口的扩展和升级;从命 令协议i j 来看,c o m a g e n t 由t c p i p 网络通信协议及与平台无关的数据通讯协 议构成。主要包括以下功能: 将客户发出的命令请求串彳亍化,即将打包后的命令发给服务器; 将服务器返回的结果数据反串行化,即将解包后的结果返回给客户; 数据的网络传输功能。 1 2 2 2 服务器内部通信机制 由l12 小节已知,作业管理系统j m s 的服务器方主要由命令转发中心 j n w m a n 、作业引擎j n w e n g i n e 和网络队列系统n q s 、日历调度模块s c l a u n d 组 成,它们之间的相互通信关系是: 1 ) 通信代理c o m a g e n t 接受从客户端发来的命令请求后,进行反串行 化并调起命令转发模块j n w m a n ,j n w m a n 解析请求并交由其他模 块处理,部分由自己自行处理。如果是创建和载入作业流 j y w 请 求,则由j n w m a n 自身实现;如果是检索j n w 的t r a c k e r 信息请求, 则和t r k s r c h 模块合作实现这个请求;如果是客户发出的作业执行 或控制请求,j n w m a n 将该请求提交给j n w e n g i n e 来完成。同时, 日历调度功能也是由s c l a u n c h d 调用j n w m a n 来实现的。 2 ) 若客户向服务器发出的是作业流执行或控制请求,j n w m a n 则将该 请求提交给作业引擎j n w e n g i n e 来完成,通过s o c k e t 端口 j n w e n g i n e 3 ) 作业引擎j n w e n g i n e 执行作业流请求,读入作业流脚本文件,解释 其流程并执行之。它将单元作业投入到n q s 队列中运行,并监视 运行结果。这通过q s u b 等q 命令进行,而监视功能则由q w b 执行。 4 ) n q s 系统执行队列中的子请求,调度请求使网络负载平衡。 西北工业大学硕士学位论文第一章 1 3 作业流同步机制 随着作业管理系统各功能的日趋完善,对作业间的同步要求越来越迫切了, 如何实现作业流之间的同步就显得相当重要。j m s 系统为实现作业流之间的互 操作性,根据工作流管理同盟( w f m c ) 曾提出过的同步模型规范( 即要求在 两个工作流程中存在同步点) ,新增加了两种专门用来实现作业流间同步功能的 作业:送信作、j k ( s e n d e v e n tj o b ) 和收信作业( r e c v e v e n tj o b ) 。通过在两个作 业流程中任意的设置这两种同步作业,成功地完成了作业流之间的同步执行关 系。 1 送信作业s e n d e v e n tj o b 负责发送e v e n t 的作业,该作业的属性有“目标机器名”、“e v e n t t d ”和“收到 确认的t i m o u t 时问”,以及“该e v e n t 的有效期”。通过指定e v e n t 的目标机器名 和e v e n t i d 可以唯一一的确定出等待该e v e n t 的作业。s e n d e v e n tj o b 用来表示异 机或异构平台上作业流之间的同步关系。 2 收信作业r e c v e v e n tj o b 负责接收e v e n t 的作业,该作业的属性有“源机器名”、“e v e n t l d ”、“等待 e v e n t 的t i m e o u t 时f 司”。通过指定e v e n t 的源机器名和e v e n t l d 可以唯一地确定 出要等待的送信e v e n t ,用来表示异机或异构平台上作业流之间的同步关系。 当执行到送信作业时,会向目的机器发出一个e v e n t 消息,然后根据该作 业的属性参数决定等待确认的方式。一共有三种方式:“不等待确认”、“一直等 待确认”,和“在一段时间内等待确认”。并且根据属性参数决定发出的e v e n t 的有效时间,如果“一直有效”,则发出的e v e n t 会一直在目标机器上有效,直 到目标机器上有作业收到了该e v e n t ;如果“在某段时间内有效”,则发出的e v e n t 会在一段时间内在目标机器上有效,若在这段时间内目标机器上没有作业等待 该e v e n t ,那么送信作业会超时( e r r o r d o n e ) 。 当执行到收信作业时,会根据该作业的属性参数决定等待e v e n t 的方式。 共有三种方式:“不等待e v e n t ”、“一直等待e v e n t ”和“在一段时间内等待e v e n t ”。 当等到了e v e n t 之后,该收信作业执行完毕,会继续执行后续作业。 1 4 小结 本章主要论述了基于客户服务器模式的分布式作业管理系统j m s 的分层 体系结构和它实现的功能,简要介绍了j m s 系统的通信机制和作业流同步机 制。j m s 由客户端、通信代理、服务器端三层构成,客户端为用户提供图形界 面,供刚,- 完成作业管理的一系列操作。客户端与服务器之问的通信采用 t c p i p 网络通信协议,和与平台无关的数据通讯协议串行化反串行化协 西:i l l - 业大学硕七学位论文第一审 议。服务器负责解析和处理来自客户端的各种请求,全面支持作业网络的管理 功能。 m s 的通信系统主要由客户服务器间的通信通信代理c o m a g e n t 和服 务器内部各模块间的通信组成。为实现作业流间的同步,新增加了两类作业一 一送信作业和收信作业。 一f 章日f 述数据通信知识。 西北工业大学硕士学位论文 第二考 第二章数据通信技术 数据通信是指由信息源产生的数据,按照一定的通信协议,形成数据流传 送到受信者的过程。它以数据传输为基础,但又不是单纯的数据传输。它包括 数据传输和数据交换,以及在传输前后的数据处理过程。目前由于计算机在各 个领域中都得到了非常广泛的应用,以及计算机网络技术的不断发展,数据通 信有了更广泛的应用领域和广阔的发展前景。 本章首先概要介绍网络七层协议,然后讨论客户服务器模型,最后介绍 j m s 通信采用的几种技术:s o c k e t 、m a i l s l o t 和p i p e 。 2 1 网络七层协议 在计算机刚络中,通信发生在不同系统的实体之间。实体就是任何能够发 送和接收信息的东西。但是,两个实体并不能简单地将位流发送给对方,同时 还希望对方能够理解这个位流。要进行通信,这两个实体必须同意使用一种协 议。西汉就是一组控制数据通信的规则。协议定义要传送什么,怎样进行通信, 以及何时逊百通信。协议的三个关键要素就是语法、语义和同步。 语法。语法就是数据的结构或格式,以及数据出现的顺序的意义。例如, 简单的协议可以规定数据的前8 位是发送器的地址,第二个8 位是接收器 的地址,而剩下的位流则是报文自身。 语义。语义是每一部分位的意思。一个特殊的位模式应怎样解释? 基于这 样的解释又该采取什么行动等。 同步。同步有两个特点:数据在何时应当发送出去以及数据应当发送得多 快。例如,如果发送端产生数据的速率是1 0 0m b s ,但接收端只能以1 m b s 的速率处理数据,那么这样的传输将使接收端过载并导致大量数据丢失。 2 1 1o s i 模型 通信需要许多不同的协议。用多少电压表示“0 ”和“l ”? 接收者如何知 道哪一位是消息的最后一位? 怎样判定消息是否损坏或丢失,如果是又应该做 西北工业大学硕士学位论文第二章 什么? 不沦是底层的位传输还是高层的信息表示,在每一个层次上都需要协议。 为了方便地处理通信中存在的层与层之问的问题,国际标准化组织( 1 s o ) 开发了个参考模型,它清楚地确定了不同层所涉及的内容,给出了各层的标 准名称,并指出各层应做的工作。这个模型称作开放系统互连参考模型( o s i ) , 通常所写为i s o o s i ,有时也称为o s i 模型。在这里简单介绍一下。 在o s i 模型中,通信结构分为7 层,分别是物理层、数据链路层、网络层、 传输层、会晒层、表示层利应用层。每一层处理有关通信的一个特定方面,使 用这种方法,可以将一个问题分解为几个可管理的部分,每一部分都解决和其 他部分1 i 同的m 题。傅一层都提供一个接口( i n t e r f a c e ) 给它的上一层,接口由 一系列操作组成,它们定义了本层将提供给它的用户的服务。 在o s i 模型中,当机器1 上的进程a 想和机器2l 的进程b 通信时,它建 立一条消息,并将消息传送到本机的应用层。应用层软件在消息前面加上报头 并将结果通过第6 层和第7 层的接口传送给表示层,表示层加上自己的报头将 结果向下传递给会话层,如此一直下去。这些层中不仅要在消息前面加报头, 还要在消息后面加上报尾。当消息到达最低部时,由物理层实际传输报文。 当消息到达2 号机器时,它向上传递,每一层都剥掉并检查自己的报头, 最后消息到达接收者进程b 。它以相反的路径响应,第n 层的报头信息就 用n 层的协i 义。 通信系统提供的通信服务可以是无连接的和而向连接的。所旧面向连接 ( c o n n e c t i o n o r i e n t e d ) 的协议,在交换数据之前,发送者和接收者首先必须明 确地建立连接,并且协商可能使用的协议。: 作完成后必须断开连接。电话就 是一种面向连接的通信系统。在所谓无连接( c o n n e c t i o n l e s s ) 的协议中则不需 要预先做制么,发送者只要将准备好的报文直接发送出去即可,投信到邮箱就 是无连接m 议的例子。 2 1 2t c p i p 协议族 t c p i p 在o s i 模型之前就已经开发了,现在t c p i p 协议族成为占主导地 位的商刷体系结构,冈为它已用在i n t e r n e t 中,并且通过了广泛的测试:而o s i 模型从来没有被完全实现过。 由于t c p i p 早j 二o s i 模型,因此t c p 1 p 协议族的层次无法准确地和o s i 模型对应起来。t c p i p 协议族由五层组成:物理层、数据链路层、网络层、传 输层和应用层。前四层与o s i 的前四层相对应,提供物理标准、网络接r 、刚 西- i l _ t _ 业大学碳士学位论文第二章 际互连以及传输功能。而o s i 的上三层在t c p i p 中则用应用层来表示。 这就是说,每一个应用程序必须包括指派给o s i 模型中的会话层、表示层 和应用层的所有任务。这样做有一些优点,但也有一些缺点。优点就是每一个 应用程序髫| :;是独立的。它只需要这个应用程序设计的任务所需的一些功能。这 就省去了许多不必耍的仅仅是传递参数的服务调用。缺点是在不同的应用程序 中会出现些相同的任务,因而使得这些应用程序更加复杂。此外,这样做就 破坏了o s i 模型的模块性和分层的体系结构。 o s i 模型t c p ,i p 协议族 图2 1o s i 与t c p i p 的比较一一一一一一一 西北工业大学硕士学位论文第二章 2 2 。廖用层协议与客户,月艮务器模式 应用层i 办议与用户的关系最为密切,因为用户使用网络往往要通过应用层 协泌。各种应用进程就是通过各种应用层协议来使用网络提供的通信服务。解 决具体的网络应用问题,往往是通过用户开发的位于不同主机中的应用软件之 间的通信和写作来完成的,应用层的具体内容就是规定这些应用进程在通信时 所遵循的阱议。 t c p i p 的应用层使用客户n 务器模式( 简称c s 模式) 进行通信。客户 服务器模式描述了进程间服务与被服务的关系。客户是主叫方,服务器是被叫 方。由客户向服务器发出服务请求,服务器则将结果返回给客户。服务器总是 在个熟知端l i ( 如文件传送协议f t p 使用的熟知端口号是2 1 ) 等待服务请求, 这样它的客户才知道将请求究竟发向哪个套接口( s o c k e t ) 。一个服务器通常可 以同时处理多个客户的请求。一个应用的服务器端和客户端可以安装成相同或 不同的系统,但是客户与服务器处于不平等地位,是非对等相互作用。一般来 说,服务器拥有客户所不具备的软硬件资源。 常用的应用层协议有很多,例如,t c p i p 中所有应用层协议都要使用的层 次型命名管理机制域名系统,文件传输协议f t p ,电子邮件协议中的简单 邮件传输曲,议s m t p 和远程登录协议t e l n e t 等。 2 3s o c k e t 、m a i l s i o t 与p i p e 2 3 1 套接字接口 存客,1 1 服务器模式中,两个应用程序需要彼此互相通信,这两个程序一个 在本地系统上运行( 例如是客户) ,另一个则在远程系统上运行( 例如是服务器) 。 为了使网络编程标准化,就开发出了一些应用编程接口( a p i ) 。a p i 是一组说 明语句、定义和过程,后面带有程序员编写的客户n 务器程序。套接字接口就 是种常用的a p i 。 2 3 1 1 套接字的类型 在套接字编程中所需要的通信结构就是套接字。套接字的作用就像一个端 点,两个进程要在每一端都有一个套接字才能彼此通信。 西北工业大学硕士学位论文 第二章 套接字在操作系统中被定义为一个结构,具有五个字段的套接字结构中各 字段列出如下: 系列。这个字段定义协议组:i p v 4 、i p v 6 、u n i x 域协议等等。 类型。这个字段定义套接字的类型:流套接字、数据报套接字或原始套接 字。, 协议。对t c p 和u d p ,这个字段通常置为0 。 本地套接字地址。这个字段定义本地套接字地址,如以前所定义的,它是 类型s o c k a d d r e s s 的结构。 远程套接字地址。这个字段定义本地套接字地址,如以前所定义的,它是 类型s c c k a d d r e s s 的结构。 套接字接口定义三种类型的套接字:流套接字、数据报套接子和原始套接 字。所有这三种套接字都能够用在t c p i p 环境中。 1 流套接字 流套接字彼设计用在如t c p 这样的面向连接的协议中。t c p 使用一对套接 字把一一个应用程序跨越i n t e r n e t 连接到另一个应用程序。 2 数据报套接字 数据报套接宇被设计用在如u d p 这样的无连接协议中。u d p 使用对数 据报套接字把个应用程序跨越i n t e r n e t 连接到另一个应用程序。 3 原始套接字 有些如i c m p ( i n t e r n e t 控制报文协议) 或o s p f ( 开放最短通路优先协议) 这样的防议,它们直接使用i p 的服务,既不使用流套接字,也不使用数据报套 接字。原始套接字就是为这些类型的应用程序设计的。 2 3 1 2i n t e l n e t 套接字地址结构 使用t c p i p 协议族的应用程序需要一个结构,叫做套接字地址,它主要是 保留个i p 地址、一个端v 1 号和协议号。它的结构叫做s o c k a d d r e s s ,共有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论