第五章 FC-GS协议分析.doc_第1页
第五章 FC-GS协议分析.doc_第2页
第五章 FC-GS协议分析.doc_第3页
第五章 FC-GS协议分析.doc_第4页
第五章 FC-GS协议分析.doc_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

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

文档简介

第五章 FC-GS协议分析51FC-GS概述FC-GS协议详细描述了FS协议中所介绍的普通服务(Generic Service)。此外,GS协议中描述了用于支持普通服务所定义的辅助功能和服务。所描述的服务包括名字服务,管理服务,发现服务(Discover Service),时间服务和别名服务(Alias Service)。对于上述普通服务,GS协议中定义了一个通用传输协议(Common Transport protocol)。通用传输为普通服务提供了一个统一的FC-4层接口。名字服务是目录服务的一种,负责交换网内节点和端口名字的响应节点的注册请求和查询请求,并在交换网结构发生改变时及时更新。管理服务是用于管理整个交换网的行为及运作。其中包括:1. 交换网配置服务器:用于交换网配置管理;2. 未分区(Unzoned)名字服务器:用于访问不在分区中的名字服务器信息;3. 交换网分区服务器:提供分区访问和管理;4. 性能服务器:Performance Server。5. 安全策略服务器:提供分布式的安全策略;6. 交换网设备管理接口:管理特定设备的数据信息。别名服务管理别名标识符(包括搜索组合多播组)的注册和注销。52通用传输(CT)521 概述光纤通道普通服务在FC-4层共用通用传输(CT)。CT提供了一种带有服务参数集的方式访问服务,更易于使用光纤通道结构,也为简化分布式服务中服务器-服务器通信提供了另一层次的复用。光纤通道普通服务并不象高性能I/O(比如SCSI,IP,VI)那样需要高性能通信通道。与普通服务有关的CT和FC-FS的关系如图5-1所示。图5-1 CT和FC-FS关系图CT可访问服务,每一种服务可访问多个服务器。每一个服务器又可访问不同的信息和控制,或者通过不同的方式访问相同的信息和控制。服务类型可根据GS_Type字段识别。服务既可由服务对应的周知地址接受,也可由提供服务的N端口接受。提供服务的服务器由GS_Type中的GS_Subtype字段确定。CT,服务和服务器之间的关系如图5-2所示。图5-2服务和服务器关系图522一般概念以下参数用于描述CT向服务传送的参数:(1) 服务和服务器的类型(type of service and server);(2) 事务类型(type of transaction);(3) 服务类别(Class of service);(4) IU的最大字节数(maximum size of an IU)。GS协议中描述的通过CT可访问的服务类型有:(1) 目录服务(Directory Service);(2) 别名服务(Alias Service);(3) 管理服务(Management Service);(4) 时间服务(Time Service);有两种事务类型:(1) 请求:一个实体(例如客户端)向另一个实体(例如服务器)传送IU,请求服务器执行一项功能;(2) 应答:服务器在收到客户端发来的请求之后,向客户端回送一个应答IU。服务类别标志着客户端在以后的传输中所期望的服务质量。包括以下3种:(1)1类;(2)2类;(3)3类。因为并不需要支持所有的类型,这个参数按优先级递减的顺序罗列了服务类别。客户端用它来指出可用的类型优先顺序。如果操作环境允许第3类服务,客户端也应该支持第3类服务。注2:当服务器分布于交换网中多个实体之中时,在这多个实体之间传送CT信息要采用F类服务。F类的用法未在本标准中定义,参见FC-SW-3。客户端也可限制接收到的来自服务器的IU大小。服务器应检查并遵守客户端的限制。523CT信息单元(CT_IU)(1) 概述通用传输信息单元(CT_IU)是通用光纤通道序列,用于传输客户端和服务器之间所有信息。CT_IU的第一部分为CT_IU preamble。CT_IU preamble至少包含一个16字节的基本CT_IU preamble。此外,还可能包括扩展CT_IU preamble和厂商定义的preamble。CT_IU中使用了多个preamble时,这些preamble的顺序见下图,所有CT_IU中的preamble都遵从CT_IU preamble的定义。CT_IU的剩余部分包含preamble定义信息的附加信息,长度可能为0或者不为0。CT_IU的格式如表5-1:表5-1(2) 基本CT_IU preamble格式表5-21) Revision域:指出协议的修订版本。01h或02h标识本标准的前版本。03h表示为本版本。2) IN_ID域:由请求CT_IU置为0。3) GS_Type域:指明服务的类型。FC-目录服务;FA-管理服务;FB-时间服务;F8-别名服务。4) GS_Subtype域:指明服务所对应的具体服务器。这个值由具体的服务提供。5) Options域:指明该IU中的可选项,例如是否包含扩展CT_IU preamble和厂商定义的CT_IU preamble。6) Command/Response code:若是请求,指明所请求执行的命令码;若是应答,指明是接受还是拒绝。7) Reason code和Reason code Explanation:在拒绝CT_IU中才有意义。8) Vendor Specific包含厂商定义的原因码。(3) 扩展CT_IU preamble扩展CT_IU preamble共88字节,格式如下表5-3: 表5-31)Authentication SAID,鉴定安全关联标识符,该安全标识符用来识别在请求CT和应答CT之间产生鉴定哈希块的算法和密钥。(详细内容见SP协议)2)transaction_id:事务id,请求和应答中应包含相同的事务id。3)请求CT N端口名:发起CT请求的N端口的名字,请求和应答中是相同的。4)鉴定哈希块:包含通过某种算法和密钥生成的哈希编码。(4)厂商定义CT_IU PreambleVender Specific Reject Information,厂商定义的拒绝信息:1)当存在厂商定义的preamble时,厂商定义信息中应该包含厂商拒绝信息。厂商负责在他们定义的信息结构中加入合适的拒绝信息。这些拒绝信息用来对原因码和原因码解释进行辅助说明。2)厂商所定义的各种信息结构不应引起协议中其他定义的执行发生改变。(5) CT_IU附加信息在CT_IU preamble和可选的扩展preamble之后紧跟着是附加信息。附加信息字节包含对应于特定GS_Type,GS_Subtype和Command/Response code的信息。524CT_IU1)CT为普通服务定义了一个请求和两种应答:(1)Request CT_IU;(2)Accept CT_IU 和Reject CT_IU。2)CT_IU的附加信息中包含相关命令数据。这些数据基于命令码,并被各个服务器独立的定义。3)拒绝CT_IU中应给出原因码和原因码解释。525 FC-FS映射通用服务将CT_IU映射到适当的光纤通道结构中。1)交换网登录和N端口登录:一个N端口在发送服务请求之前,应首先执行登录操作。若提供服务的是周知地址(well-known address),则在该地址执行交换网登录;若提供服务的是N端口,则应在该N端口执行N端口登录。完成向服务器注册的Nx端口应执行N端口登出。完成其他任何请求的Nx端口也应执行N端口登出(N_Port Logout)。当一个服务资源不足时,也可能执行N端口登出操作,服务会采用最少最近使用算法(least recently used algorithm)决定将哪一个实体登出。2)服务类别:CT_IU请求和应答使用同一种服务。3)交换和序列管理:应使用一个单独的双向交换(single bidirectional Exchange)。请求CT_IU应该是交换的第一个序列,而对应的应答则应是这个交换的最后一个序列。SI(Sequence Initiative)应该在CT_IU传输的最后进行传送。如果应答CT在接收到的CT_IU结尾未找到SI,则认为出现了协议错误,并终止交换。来自或发往一个Nx端口的3类CT请求序列的发起方,应该认为这个请求序列是开放的,直到以下情况发生:(1) 序列发起方收到来自同一个交换的CT应答序列的一桢;(2) FC-FS-2中所定义的其他可以使发起方认为请求序列不再开放的规则。4)FC-2接口:描述了CT_IU到光纤通道序列和桢的映射。(1) Routing bits:路由位应设定为FC-4层设备数据(0000b)。(2) D_ID: D_ID为CT_IU目的端的光纤通道地址标识符。对于请求CT_IU来说,D_ID为周知地址或者提供服务的N端口标识符;对于应答CT_IU来说,D_ID为请求服务的Nx端口的地址标识符。(3) Type:20h(通用传输)。(4) First Sequence(首序列):请求的CT应该将此参数设定为true,以为传送一个请求CT_IU发起一个新的交换。(5) Last Sequence(末序列):服务应将应答CT_IU中的此参数设定为true,以在事务的结尾终止一个交换。5)请求和应答的相关性:请求CT_IU与应答CT_IU之间的相关性由具体的服务管理。FC-CT提供这种管理的通用机制。典型的情况是:服务通过交换标识符(OX_ID和RX_ID对)实现请求和应答的相关。6)错误检测和恢复:有两级有效的错误恢复:1 无效CT_IU或者FC-CT协议错误;1 无效或未定义的GS_Type;2 无效版本号(revision level);3 无效可选项;4 目的端FC_CT处,序列载荷超过CT_IU最大长度。2 FC_FS协议错误和超时:1 序列错误;2 请求超时;3 交换错误。当检测到无效CT_IU或FC-CT协议错误时,应答CT使用一个拒绝CT_IU作为应答告知请求方错误情况。当检测到FC-FS协议错误示,交换应立即被终止。交换的发起方或应答方均可使用终止序列链路服务(Abort Sequence Link Service,LS_bit置位1)终止事务。所有的错误情况都应通知给客户端。526时间常数1) 请求应答时间:如果请求方CT未在3倍R_A_TOV时间内收到应答方CT的应答,就认为出现了协议错误。2) 数据库传播延时:当成功的完成一次更新数据库请求后,数据库开始更新。这个更新需要一段时间。一个查询请求等待更新之后的数据的时间就是数据库传播延时时间。这个时间是系统执行需要的,但是不能超过6倍的R_A_TOV值。527登出后的作用持续Persistence of actions after Logout,这个约定允许客户端登录并在服务器上注册信息,然后可以登出服务器,而所注册的信息仍然保存在服务器中。例如,一个设备向名字服务器注册了自己的信息之后,无须再为了保持自己的已注册状态而维持这个登录。528CT鉴定(Authentication)CT鉴定用来鉴定和加密(可选)客户端和服务器间的CT_IU请求和应答,通过使用扩展CT_IU preamble来实现(见4.3.3)。这种机制提供了一种验证在未经改变的授权CT之间传送的请求和应答的方式,并且可以在由中间代理误用或未经授权的CT产生的请求和应答中区分出它们(例如,完整性和反重用保护,integrity and anti-replay)。这种机制也可以选择为CT_IU提供加密。CT鉴定机制使用一种特定的算法和密钥计算出一个代表相关CT_IU的哈希序列。为了传输一个鉴定过的CT_IU,应该将生成的哈希序列作为CT_IU的一部分传送。接受方收到CT_IU后,使用相同的算法和密钥计算哈希序列,还原信息。529通用请求1)所有的服务器类型都可以执行通用请求。2)CT_IU preamble中设置应遵循如下设置,未提到的域定义遵循4.3.2:1 GS_Type和GS_Subtype值根据通用请求所发往的服务器设定;2 命令码:请求命令码见表14。3)GMI,Get More Information,请求更多信息。当请求方的上一次请求得到了接受应答,并且应答CT_IU的Residual Size字段不等于0000h时,请求方会使用GMI请求获取上一个请求的附加的信息。1)服务器注册和状态改变通知初始化:服务器会话定义为到一个服务器的一个或多个请求组成的集合。客户端为了描述一个会话,会通知特定的服务器一个请求集合开始了,而且还会通知它这个会话的结束时间。会话通过特定的周知地址(例如名字服务)初始化。本标准中为服务定义了两种方法分别指示会话开始和会话结束。服务器会话开始(Server Session Begin)和服务器会话结束(Server Session End)都是基于CT的请求。2)服务器注册会话(Server Registration Sessions):客户端应该在单独服务器会话(single server session)中与服务器交换命令。客户端发送一个SSB通用请求请求开始一个与服务器的会话,通过发送一个SSE宣布与服务器的会话关系结束。3)GS异步通知(ASYNC): 随着交换网规模的扩大,CT请求变得更复杂,需要更多的时间来产生应答。当一个普通服务无法在GS超时值内接受请求时,它将返回一个原因码为“无法执行命令请求”,原因码解释为“正在处理请求”的拒绝CT_IU。普通服务将保留被拒绝的请求的记号,并在处理完该请求之后向被拒绝的Nx端口发送GS异步通知。GS异步通知用来减少GS请求失败后的重发次数。抛弃请求失败后反复重发的方式,GS异步通知可增大CT请求处理的稳定性(stability)。接收到GS异步通知后,Nx端口应该回送一个接受CT_IU作为应答,并再次发送带有记号的CT请求已得到所请求的信息。53 名字服务器(Name Server)通过使用名字服务器,Nx端口可以执行注册并且发现光纤通道的特性。向名字服务器发送的请求通过CT传送。共有3种类型的名字服务器请求,见表20。名字服务器最好分布在交换机中,一旦一个Nx端口完成交换网登录,名字服务器随即对该端口是可用的。虽然如此,名字服务器并未被严格要求为交换网的一部分,也可能位于Nx端口之中。名字服务器在任何光纤通道拓扑结构中都是可用的。531名字服务器协议(Name Server Protocol)(1) 名字服务器的注册,注销和查询通过服务器支持的一系列请求CT_IU和应答CT_IU所组成的协议进行管理。(2) 注册:交换网登录成功之后,将会注册以下对象:(1)端口类型(Port Type);(2)端口标识符(Port Identifier);(3)端口名(Port Name);(4)节点名(Node Name);(5)服务类型(Class of Service);(6)永久端口名(Permanent Port Name)。(3) 注销:通过执行删除所有(Remove All,DA_ID)请求可以注销掉一个指定端口的所有相关对象。注销给定端口的指定对象可以的实现,是通过在该对象处注册NUL

温馨提示

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

评论

0/150

提交评论