提供主机通过存储控制器端口访问设备的方法和系统技术方案

技术编号:2849765 阅读:245 留言:0更新日期:2012-04-11 18:40
提供一种维持和使用关于主机、端口和设备连接的连结信息的方法、系统和程序。从存储控制器端口上的主机端口接收登录,其中在存储控制器上配置主机端口来访问一个或多个设备。将项添加到对于登录中所涉及的主机端口和存储控制器端口的主机存储控制器端口数据结构中。在主机存储控制器端口数据结构的项中初始化至少一个指针来指向至少一个中间数据结构中的至少一个项。在由主机存储控制器端口数据结构中的一个经初始化的指针寻址的一个中间数据结构的每个项中,初始化一个指针来指向具有多个项的连结数据结构。

【技术实现步骤摘要】

本专利技术涉及用于维护以及使用关于主机、端口和设备连接的连结信息(nexus information)的方法、系统和程序。
技术介绍
在某些计算环境中,多主机系统可能与一个或多个诸如IBM企业存储服务器(ESS)之类的存储控制器交流由接收请求的ESS所管理的存储设备中的数据。存储控制器管理对诸如通过一个或多个逻辑路径互连的硬盘驱动器之类的存储设备的访问。(IBM和ESS是IBM的注册商标)。可以将互连的设备配置为直接访问存储设备(DASD)、冗余独立磁盘阵列(RedundantArray of Independent Disks,RAID)、磁盘连续捆束阵列(Just a Bunch ofDisks,JBOD)等。存储控制器可以配置定义在存储控制器所管理的存储设备中存储空间的区域的逻辑卷。存储控制器或存储控制器中的适配器可以维护关于每个可能连接的连结信息,包括主机端口、存储控制器端口和存储设备(逻辑卷)。在小型计算机系统接口(SCSI)中,启动器(initiator)(I)与目标(T)交互来发出到逻辑单元(L)的I/O操作。在I/O操作进行的同时,启动程序/目标/逻辑单元具有被称为ITL连结的关系。为了管理ITL连结,存储控制器可能需要维护某些持续超过I/O操作的持续时间的信息。例如,该信息可能包括涉及挂起单元关注条件(pending unit attention condition)和保留(reservation)的指示器。在典型的实现中,启动器功能与主机端口相关联,目标功能与存储控制器端口相关联,而逻辑单元与存储设备相关联。即使对于当前设有配置逻辑卷的主机端口-存储控制器端口-逻辑卷组合,也维护该信息,这是由于它们可能在之后的时间被添加到配置中。随着配置中的设备、存储控制器端口和相连的主机端口的数量的增加,存储连结信息所需的存储器也在增加。
技术实现思路
提供一种维护和使用关于主机、端口和设备连结的连结信息的方法、系统和程序。接收来自存储控制器端口上的主机端口的登录,其中在存储控制器上配置主机端口来访问一个或多个设备。将项添加到对于登录中所涉及的主机端口和存储控制器端口的主机存储控制器端口数据结构中。在主机存储控制器端口数据结构的项中初始化至少一个指针来指向至少一个中间数据结构中的至少一个项。在由主机存储控制器端口数据结构中的一个经初始化的指针寻址的一个中间数据结构的每个项中,初始化一个指针来指向具有多个项的连结(nexi)数据结构。附图说明图1图解了计算环境的实施例;图2图解了用于维护关于主机-存储控制器端口-逻辑卷连接的连结信息的数据结构;和图3、4和5图解了生成和使用连结信息的操作。具体实施例方式图1图解了计算环境的实施例。多个主机2a、2b、…、2n通过网络8,将指向一个或多个存储系统4(只示出一个)的输入/输出(I/O)请求发送到存储控制器6,其中存储控制器6管理对存储系统4的访问。每个主机2a、2b、…、2n可以包括主机适配器卡上的一个或多个主机端口。存储控制器6包括处理器10,其执行I/O管理器代码12来配置并管理存储系统中的逻辑卷14a、14b、…、14n。卷包括可以由主机2a、2b、…、2n引用的存储系统4中的一部分存储空间的逻辑表示,例如逻辑设备或者逻辑单元号码(LUN)。存储控制器6包括多个适配器16a、16b,适配器16a、16b包括端口18a、18b、18c和18d。可以有比图1中所示更多或更少的适配器和端口,以及每个适配器有更多或更少的端口。每个主机2a、2b、…、2n可以连接到每个端口18a、18b、…、18n,从而连接到逻辑卷14a、14b、…、14n。存储控制器6包括诸如非易失性存储器之类的存储器20,存储器20包括I/O高速缓存22和提供关于主机、端口和逻辑卷之间所建立的连接的信息(又称为连结信息)的连结信息24。连结信息可以提供关于连接指示器的信息,例如主动提供的单元关注条件(unsolicited unit attention conditions)、保留状态、报告的事件、状态等。尽管任何主机2a、2b、…、2n可以通过任何端口18a、18b、18c、18d连接到任何逻辑卷14a、14b、…、14n,但在很多实现中,主机可能不是通过所有可能的端口连接到所有可能的逻辑卷。I/O管理器代码12能够使用连结信息22来处理不同连接的请求。主机2a、2b、…、2n可以包括能够通过网络发送I/O请求的计算环境,例如服务器、工作站、台式机、大型机、便携式计算机、手持计算设备、电话设备等。存储控制器6可以包括存储服务器、企业存储服务器、存储控制器或者用于管理指向由存储控制器所管理的存储系统4的I/O请求的其他设备。在一个实施例中,在使用SCSI上层协议(ULP)的光纤信道互连上执行所述的用于管理卷的操作。存储系统4可以包括一个或多个本领域中公知的设备,例如互相连接的硬盘驱动器(例如被配置为DASD、RAID、JBOD等)、磁带驱动器、电存储器等。网络8可以包括局域网(LAN)、存储区域网络(SAN)、因特网以及内联网、无线网络、总线接口、串行或并行连接等。图2图解了用于维护不同的主机端口-存储控制器端口-设备连接的连结信息的数据结构的排列。索引50具有由主机端口2a、2b、…、2n和存储控制器端口18a、18b、18c、18d的标识符索引的项,其中每个索引的项包括指向主机存储控制器端口数据结构56的项(例如54)的指针(例如52)。在一个实施例中,对I/O适配器中的每个I/O端口维护索引表50。每个I/O端口支持来自相连的主机的一定数量的N端口登录,该登录可以包括光纤信道或其他协议登录。每个N端口登录使用主机端口索引表50的一个元素,并且该项的内容标识登录的主机端口以及在主机端口-存储控制器端口数据结构中的项的唯一索引,该索引是在主机端口发出进程登录(process login)时从用于该特定N端口登录在I/O端口上的存储控制器获得的。因此,当添加新的主机端口-存储控制器端口组合的新的进程登录时,添加项/指针(例如52)到索引50中,该指针寻址添加到该主机端口-存储控制器端口组合的主机端口-存储控制器端口数据结构56中的新的项(例如54)。主机端口-存储控制器端口数据结构中项的数量决定所有存储控制器端口上可能的进程登录的数量。主机端口-存储控制器端口数据结构56中的每个项(例如54)包括多个指针58,其中每个指针(例如60a、60b)寻址单独的中间数据结构(例如62a、62b)。每个中间数据结构62a、62b包括指针(例如64a、64b),其中每个指针(例如64a、64b)寻址不同连结数据结构66a、66b。连结数据结构的项66a、66b提供与地址连续的逻辑卷14a、14b、...、14n相关联的LUN的连结信息,其中逻辑卷地址是唯一的,并且根据存储控制器所使用的一定方案来分配。存在从由I/O接口上的主机端口所使用的LUN_ID到逻辑卷地址的定义的映射。设备(逻辑卷)地址可以用于索引不同的数据结构,来定位连结数据结构66a、66b中的连结信息项。例如,设备地址的第一部分可以标识第一指针60a、60b,包括任何一个包含在用于主机-端口对的主机端口-存储控制器端口数本文档来自技高网
...

【技术保护点】
一种用于提供主机通过存储控制器端口访问设备的方法,包括:    接收来自存储控制器端口上的主机端口的登录,其中在存储控制器上配置主机端口来访问一个或多个设备;    将项添加到对于登录中所涉及的主机端口和存储控制器端口的主机存储控制器端口数据结构中;    在主机存储控制器端口数据结构的项中初始化至少一个指针来指向至少一个中间数据结构中的至少一个项;以及    在由主机存储控制器端口数据结构中的一个经初始化的指针寻址的一个中间数据结构的每个项中,初始化一个指针来指向具有多个项的连结数据结构。

【技术特征摘要】
US 2004-11-17 10/991,6621.一种用于提供主机通过存储控制器端口访问设备的方法,包括接收来自存储控制器端口上的主机端口的登录,其中在存储控制器上配置主机端口来访问一个或多个设备;将项添加到对于登录中所涉及的主机端口和存储控制器端口的主机存储控制器端口数据结构中;在主机存储控制器端口数据结构的项中初始化至少一个指针来指向至少一个中间数据结构中的至少一个项;以及在由主机存储控制器端口数据结构中的一个经初始化的指针寻址的一个中间数据结构的每个项中,初始化一个指针来指向具有多个项的连结数据结构。2.如权利要求1所述的方法,其中登录包括第二级登录,还包括接收对一个主机端口和存储控制器端口的第一级登录;将项添加到第一级登录中所指示的主机端口和存储控制器端口的索引中;以及将指针添加到主机端口和存储控制器端口的索引中所添加的项中,来寻址在第二级登录期间添加到主机存储控制器端口数据结构中的项。3.如权利要求2所述的方法,其中,第一级登录包括光纤信道N端口登录,而第二级登录包括SCSI处理登录。4.如权利要求2所述的方法,还包括启动关于一个主机端口、存储控制器端口和设备连接的操作;使用主机端口和存储控制器端口标识符来访问对应于主机端口和存储控制器标识符的索引中的指针;以及使用索引中所访问的指针来访问主机存储控制器端口数据结构中的一个项,来访问在执行操作中使用的主机端口、存储控制器端口和设备连接的连结信息。5.如权利要求1所述的方法,其中,连结信息被添加到的连结数据结构中的项对应于登录中所涉及的设备的设备地址的一部分。6.如权利要求1所述的方法,还包括处理关于主机端口、存储控制器端口和设备的操作,其中设备具有设备地址;使用设备地址的第一部分来访问主机存储控制器端口数据结构中的一个项中的第一指针;使用所访问的第一指针来访问中间数据结构;使用设备地址的第二部分来访问中间数据结构中的访问项中的第二指针;使用第二指针来访问一个连结数据结构;和使用设备地址的第三部分来访问具有与主机端口、存储控制器端口和设备连接相关联的连结信息的、所访问的连接数据结构。7.如权利要求1所述的方法,其中,连结数据结构中的项为具有相邻设备地址的设备提供连结信息。8.如权利要求1所述的方法,其中,中间数据结构包括多个指针,每个指向不同连结数据结构,连接数据结构具有与主机存储控制器端口数据结构相关联的主机端口和存储控制器端口所连接到的不同设备的连结信息。9.如权利要求8所述的方法,其中,不是所有与主机和存储控制器端口相关联的连结数据结构中的项都包含连结信息。10.如权利要求8所述的方法,其中,主机存储控制器端口数据结构中的一个项包括每个指向不同中间数据结构的多个指针,其中,每个中间数据结构包括至少一个寻址一个连结数据结构的指针,该连接数据结构提供具有主机端口、存储控制器端口和设备连接的连接信息的项。11.如权利要求1所述的方法,其中,所述设备包括由存储控制器管理的逻辑存储单元。12.如权利要求1所述的方法,还包括确定是否存在一个由可以通过登录访问的一个设备的设备地址的第一部分所标识的指针,在主机存储控制器端口数据结构中的一个项中的该指针寻址中间数据结构中的一个项,其中,响应于确定不存在由寻址中间数据结构中的一个项的设备地址的第一部分所标识的指针,在主机存储控制器端口数据结构中初始化该指针。13.如权利要求1所述的方法,还包括确定是否存在一个由可以通过登录访问的一个设备的设备地址的第二部分所标识的指针,该指针在主机存储控制器端口数据结构中的指针寻址的中间数据结构中,其中,响应于确定不存在由寻址一个连结数据结构的设备地址的第二部分所标识的指针,在中间数据结构中初始化该指针。14.一种与具有主机端口的主机和设备有关的系统,包括多个存储控制器端口;处理器;存储器,包括主机存储控制器端口数据结构、至少一个中间数据结构和至少一个连结数据结构;计算机可读介质,包含由处理器执行来完成操作的代码,所述操作包括(i)接收来自一个存储控制器端口上的一个主机端口的登录,其中在存储控制器上配置主机端口来访问一个或多个设备;(ii)将项添加到对于登录中所涉及的主机端口和存储控制器端口的主机存储控制器端口数据结构中;(iii)在第一数据结构的项中初始化至少一个指针来指向至少一个中间数据结构中的至少一个项;以及(iv)在由主机存储控制器端口数据结构中的一个经初始化的指针寻址的一个中间数据结构的每个项中,初始化一个指针来指向具有多个项的一个连结数据结构。15.如权利要求14所述的系统,其中所述登录包括第二级登录,存储器还包括索引,所述操作还包括接收对一个主机端口和存储控制器端口的第一级登录;将项添加到第一级登录中所指示的主机端口和存储控制器端口的索引中;以及将指针添加到主机端口和存储控制器端口的索引中所添加的项中,来寻址在第二级登录期间添加到主机存储控制器端口数据结构中的项。16.如权利要求15所述的系统,其中,第一级登录包括光纤信道N端口登录,而第二级登录包括SCSI处理登录。17.如权利要求14所述的系统,其中所述操作还包括启动关于一个主机端口、存储控制器端口和设备连接的操作;使用主机端口和存储控制器端口标识符来访问对应于主机端口和存储控制器标识符的索引中的指针;以及使用索引中所访问的指针来访问主机存储控制器端口数据结构中的一个项,来访问在执行操作中使用的主机端口、存储控制器端口和设备连接的连结信息。18.如权利要求14所述的系统,其中,连结信息被添加到的连结数据结构中的项对应于登录中所涉及的设备的设备地址的一部分。19.如权利要求14所述的系统,其中所述操作还包括处理关于主机端口、存储控制器端口和设备的操作,其中设备具有设备地址;使用设备地址的第一部分来访问主机存储控制器端口数据结构中的一个项中的第一指针;使用所访问的第一指针来访问中间数据结构;使用设备地址的第二部分来访问中间数据结构中的访问项中的第二指针;使用第二指针来访问一个连结数据结构;和使用设备地址的第三部分来访问具有与主机端口、存储控制器端口和设备连接相关联的连结信息的、所访问的连接数据结构。20.如权利要求14所述的系统,其中,连结数据结构中的项为具有相邻设备地址的设备提供连结信息。21.如权利要求14所述的系统,其中,中间数据结构包括多个指针,每个指向不同连结数...

【专利技术属性】
技术研发人员:马修J卡洛斯理查德A里普伯格
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1