TW202315363A - 在儲存區域網路中執行主機起始之鏈路重設 - Google Patents
在儲存區域網路中執行主機起始之鏈路重設 Download PDFInfo
- Publication number
- TW202315363A TW202315363A TW111126413A TW111126413A TW202315363A TW 202315363 A TW202315363 A TW 202315363A TW 111126413 A TW111126413 A TW 111126413A TW 111126413 A TW111126413 A TW 111126413A TW 202315363 A TW202315363 A TW 202315363A
- Authority
- TW
- Taiwan
- Prior art keywords
- link
- san
- port
- host
- computer
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/215—Flow control; Congestion control using token-bucket
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0659—Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
- H04L41/0661—Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities by reconfiguring faulty entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
- H04L43/0882—Utilisation of link capacity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/06—Generation of reports
- H04L43/067—Generation of reports using time frame reporting
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Environmental & Geological Engineering (AREA)
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Debugging And Monitoring (AREA)
Abstract
諸實施例包括在一儲存區域網路(SAN)中執行一主機起始之鏈路重設。諸態樣包括藉由與該SAN通信之一主機識別該SAN中之各鏈路,其中各鏈路係由一對埠界定。諸態樣亦包括:藉由該主機獲得用於該SAN中之各埠的一緩衝區信用餘額;及藉由該主機獲得用於該SAN中之各埠的一緩衝區信用;及基於該SAN中之一埠之該緩衝區信用低於一臨限值之一判定,藉由將一鏈路重設記錄自該主機傳輸至該鏈路之一控制裝置來引起與該埠相關聯之一鏈路的一重設。
Description
本發明大體上係關於儲存區域網路(SAN),且更具體而言,係關於在SAN中執行主機起始之鏈路重設。
在SAN之正常操作期間,包括應答之光纖通道訊框可能在傳送中受到損壞。此類損壞可由光學器件故障、不良電纜、鬆散連接、不在容差內之光學預算、間歇性硬體故障等引起。
當光纖通道連接之接收側不可辨識傳入訊框標頭中的訊框頭(SOF)時,接收器並不以適當應答回應。在一個實例中,發送器在發送訊框之後即刻將可用緩衝區信用遞減壹,但不接收對應應答。因此,發送器與接收器之間關於緩衝區信用的同步變得偏斜。當此情況出現時,其將繼續且引起被感知為可用的緩衝區信用的數目逐漸減小至其影響效能或甚至引起鏈路傳輸完全停止之點。
目前,提供於光纖通道標準中之緩衝區信用恢復機制試圖防止發送器與接收器之間的緩衝區信用同步出現錯誤。該等標準支援兩種緩衝區信用恢復模式:1)鏈路重設,及2)簡單地引起信用補充的計算。然而,兩種緩衝區信用恢復模式皆排他性地藉由網路裝置(諸如,交換器)且僅針對交換埠執行。
本發明之實施例係關於用於在儲存區域網路(SAN)中執行主機起始之鏈路重設的電腦實施方法。電腦實施方法之一非限制性實例包括藉由與該SAN通信之主機識別該SAN中之各鏈路,其中各鏈路係由一對埠界定。該方法亦包括藉由該主機獲得用於該SAN中之各埠的一緩衝區信用,及基於該SAN中之一埠之該緩衝區信用低於一臨限值的判定,藉由將一鏈路重設記錄自該主機傳輸至該鏈路之控制裝置來引起與該埠相關聯之鏈路的重設。
本發明之實施例係關於一種儲存區域網路(SAN)。該SAN之一非限制性實例包括一或多個網路裝置及複數個終端裝置,該等終端裝置各自耦接至該一或多個網路裝置中之至少一者。該複數個終端裝置中之一者係主機裝置,該主機裝置經組態以識別該SAN中之各鏈路,其中各鏈路藉係由一對埠界定。該主機裝置亦經組態以獲得用於SAN中之各埠的一緩衝區信用,且基於SAN中之各埠的該緩衝區信用低於一臨限值的判定,藉由將一鏈路重設記錄自該主機傳輸至該鏈路之控制裝置來引起與該埠相關聯之鏈路的重設。
本發明之實施例係關於一種用於在儲存區域網路(SAN)中執行主機起始之鏈路重設的電腦程式產品,該電腦程式產品包含具有隨其實施的程式指令的一電腦可讀儲存媒體。該等程式指令可由處理器執行以使該處理器執行一方法。該方法之一非限制性實例包括藉由與該SAN通信之主機識別該SAN中之各鏈路,其中各鏈路係由一對埠界定。該方法亦包括藉由該主機獲得用於該SAN中之各埠的一緩衝區信用,及基於該SAN中之一埠之該緩衝區信用低於一臨限值的判定,藉由將一鏈路重設記錄自該主機傳輸至該鏈路之控制裝置來引起與該埠相關聯之鏈路的重設。
額外技術特徵及益處係經由本發明之技術實現。本發明之實施例及態樣在本文中經詳細描述且被視為所主張主題之一部分。為了更好地理解,參考實施方式及圖式。
例示性實施例包括用於在一儲存區域網路(SAN)中執行主機起始之鏈路重設的方法、系統及電腦程式產品。在例示性實施例中,連接至SAN之主機裝置經組態以監視報告為可用於SAN中之所有埠(包括通道埠及交換埠)上之緩衝區信用。主機裝置經進一步組態以在判定與一鏈路相關聯之埠的緩衝區信用低於臨限值之後即刻引起SAN中之鏈路重設。該鏈路重設引起該鏈路中之兩個埠的緩衝區信用計數器恢復至其完全預設值。
現轉向圖1,大體上根據一實施例展示電腦系統100。如本文所描述,電腦系統100可為電子、電腦架構,其包含及/或使用任何數目個利用各種通信技術之運算裝置及網路以及其組合。電腦系統100可易於為可縮放、可延伸及模組化的,其能改變至不同服務或獨立於其他特徵而重新組態的一些特徵。電腦系統100可為例如伺服器、桌上型電腦、膝上型電腦、平板電腦或智慧型手機。在一些實例中,電腦系統100可為雲端運算節點。可在正由電腦系統執行之電腦系統可執行指令(諸如,程式模組)之總體上下文中描述電腦系統100。通常,程式模組可包括執行特定任務或實施特定抽象資料類型之常式、程式、物件、組件、邏輯、資料結構等。可在分散式雲端運算環境中實施電腦系統100,其中由經由通信網路而鏈接之遠端處理裝置執行任務。在分散式雲端運算環境中,程式模組可位於包括記憶體儲存裝置的本端及遠端電腦系統儲存媒體兩者中。
如圖1中所展示,電腦系統100具有一或多個中央處理單元(CPU) 101a、101b、101c等(統稱為或泛稱為處理器101)。處理器101可為單核心處理器、多核心處理器、運算叢集,或任何數目個其他組態。亦稱為處理電路之處理器101經由系統匯流排102耦接至系統記憶體103及各種其他組件。系統記憶體103可包括唯讀記憶體(ROM) 104及隨機存取記憶體(RAM) 105。ROM 104耦接至系統匯流排102,且可包括控制電腦系統100之某些基本功能之基本輸入/輸出系統(BIOS)。RAM為耦接至系統匯流排102以供處理器101使用之讀取-寫入記憶體。系統記憶體103在操作期間為該等指令之操作提供臨時記憶體空間。系統記憶體103可包括隨機存取記憶體(RAM)、唯讀記憶體、快閃記憶體或任何其他合適的記憶體系統。
電腦系統100包含耦接至系統匯流排102之輸入/輸出(I/O)適配器106及通信適配器107。I/O適配器106可為與硬碟108及/或任何其他類似組件通信之小型電腦系統介面(SCSI)適配器。I/O適配器106及硬碟108在本文中統稱為大容量儲存器110。
用於在電腦系統100上執行之軟體111可儲存於大容量儲存器110中。大容量儲存器110為可由處理器101讀取之有形儲存媒體之實例,其中軟體111儲存為用於由處理器101執行以使得電腦系統100操作之指令(諸如下文關於各種圖所描述)。電腦程式產品及此指令之執行的實例在本文中更詳細地論述。通信適配器107將系統匯流排102與網路112 (其可為外部網路)互連,使得電腦系統100能夠與其他此類系統通信。在一個實施例中,系統記憶體103及大容量儲存器110之一部分共同儲存作業系統,該作業系統可為任何適當的作業系統,諸如來自IBM公司之z/OS或AIX作業系統,以協調展示於圖1中之各種組件的功能。
額外輸入/輸出裝置展示為經由顯示適配器115及介面適配器116連接至系統匯流排102。在一個實施例中,適配器106、107、115及116可連接至一或多個I/O匯流排,該一或多個I/O匯流排經由中間匯流排橋接器(未展示)而連接至系統匯流排102。顯示器119 (例如,螢幕或顯示監視器)藉由顯示適配器115連接至系統匯流排102,該顯示適配器可包括用以改良圖形密集型應用之效能的圖形控制器及視訊控制器。鍵盤121、滑鼠122、揚聲器123等可經由介面適配器116互連至系統匯流排102,該介面適配器可包括例如將多個裝置適配器整合至單一積體電路中之超I/O晶片。用於連接周邊裝置(諸如硬碟控制器、網路適配器及圖形適配器)之合適的I/O匯流排通常包括共同協定,諸如周邊組件互連(PCI)。因此,如圖1中所組態,電腦系統100包括呈處理器101形式之處理能力,及包括系統記憶體103及大容量儲存器110之儲存能力、諸如鍵盤121及滑鼠122之輸入構件,及包括揚聲器123及顯示器119之輸出能力。
在一些實施例中,通信適配器107可使用任何合適之介面或協定(諸如,網際網路小型電腦系統介面等)傳輸資料。網路112可為蜂巢式網路、無線電網路、廣域網路(WAN)、區域網路(LAN)或網際網路等。外部運算裝置可經由網路112連接至電腦系統100。在一些實例中,外部運算裝置可為外部網頁伺服器或雲端運算節點。
應理解,圖1之方塊圖並不意欲指示電腦系統100應包括圖1中所展示之所有組件。相反地,電腦系統100可包括圖1中未說明之任何適當較少或額外組件(例如,額外記憶體組件、嵌入式控制器、模組、額外網路介面等)。此外,本文中關於電腦系統100所描述之實施例可藉由任何適當的邏輯來實施,其中在各種實施例中,如本文中所提及,邏輯可包括任何合適硬體(例如,處理器、嵌入式控制器或特殊應用積體電路等)、軟體(例如,應用程式等)、韌體,或硬體、軟體及韌體之任何合適組合。
圖2為根據本發明之一實施例之儲存區域網路(SAN) 200之圖。SAN 200包括複數個各自連接至一或多個網路裝置230 (諸如交換器)之終端裝置210、220。網路裝置230包括記憶體電路及處理電路(例如包括監視電路及限制電路)。SAN 200之網路拓樸可為交換式網狀架構,其中網路裝置230為交換器。在一些實施例中,特定交換器230可設定為切換模式或N埠ID虛擬化(NPIV)模式。在例示性實施例中,SAN裝置210中之終端裝置210、220中至少一者組態為主機裝置210。在一個實施例中,主機裝置210係在電腦系統中實施,諸如圖1所展示的電腦系統。
在例示性實施例中,網路裝置230中之各者包括複數個埠,該複數個埠經由鏈路225將網路裝置230連接至各種終端裝置210、220。此外,各終端裝置210、220包括一或多個埠,該一或多個埠將終端裝置鏈接至一或多個網路裝置230或其他終端裝置220。在例示性實施例中,各鏈路225係藉由連接至該鏈路225之兩個埠界定。終端裝置220、210之埠稱為通道埠,而網路裝置230之埠稱為交換埠。
在例示性實施例中,網路裝置230支援光纖通道(FC)及/或以太網光纖通道(FCoE)協定。舉例而言,特定固定埠網路裝置可支援FC協定及/或FCoE協定。作為另一實例,若特定網路裝置包括複數個線路卡,則其中至少一些可支援FC協定及/或其中至少一些可支援FCoE協定。應注意,特定網路裝置230上之特定埠可經預設或經組態(例如,若特定埠為通用埠)而支援FC協定或FCoE協定。視情況,網路裝置230支援用於收集資訊(例如,用於在管理裝置210上輸出)之一或多個其他協定,諸如簡單網路管理協定(SNMP)。
現參考圖3,展示根據本發明之一實施例之用於在儲存區域網路執行主機起始之鏈路重設的方法300之流程圖。如區塊302所展示,方法300包括藉由與SAN通信之主機識別SAN中之各鏈路。在例示性實施例中,SAN中之各鏈路由一對埠界定,其中該等埠為通道埠及交換埠中之一者,或在交換器間鏈路的情況下,其可為兩個交換埠。如區塊304中所展示,方法300亦包括藉由主機獲得用於SAN中之各埠的緩衝區信用。接下來,如區塊306所展示,方法300包括判定SAN中之各埠的緩衝區信用是否已降至臨限值以下。若SAN中之一鏈路埠的緩衝區信用已降至臨限值以下,則方法300前進至區塊308,且藉由將鏈路重設記錄自主機傳輸至該埠之控制裝置以引起鏈路之重設。否則,方法300返回至區塊304。
在例示性實施例中,該臨限值具有預設值一,且可藉由主機裝置之使用者設定成任何其他正整數。在另一實施例中,臨限值可基於鏈路特性(諸如鏈路之位元率及/或鏈路之距離)來設定。在例示性實施例中,週期性地執行獲得用於SAN中之各埠之緩衝區信用。舉例而言,在一個實施例中,主機裝置經組態以每十五分鐘或以由主機裝置之使用者設定的另一預訂間隔獲得用於SAN中各埠之緩衝區信用。
在例示性實施例中,一旦判定一鏈路需要重設,則重設該鏈路所採取的動作取決於界定該鏈路之埠的類型。在一個實施例中,基於用於該鏈路之該對埠中之至少一者為通道埠的判定,主機裝置藉由發佈命令至通道埠以重設該鏈路而使得該鏈路重設。在另一實施例中,基於該對埠均不為通道埠之判定,主機裝置藉由指示與該鏈路相關聯之SAN中的網路裝置執行該鏈路之重設來使得該鏈路重設。在一個實施例中,使用控制單元埠(CUP)將該指令發送至網路裝置。
在例示性實施例中,SAN利用光纖通道實現節點間之通信。光纖通道經組態以發送被稱為訊框之資料封包,該等封包包括分界訊框頭(SOF)或訊框尾(EOF)之訊框定界符。發送埠上之基元信號(表示事件)包括應答信號(R_RDY)及緩衝區至緩衝區狀態變化(BB_SC)信號。BB_RDY_N變數通常用於維護所接收之R_RDY基元的計數,且BB_FRM_N維護所接收之訊框的計數。緩衝區至緩衝區狀態變化數目(BB_SC_N)反映指定BB_SC基元信號之間的訊框數目及BB_SCr基元信號之間的R_RDY數目的值。緩衝區至緩衝區狀態變化R_RDY (BB_SCr)信號經週期性地傳輸以使得附接埠能夠判定是否任何R_RDY已丟失。緩衝區至緩衝區狀態變化SOF (BB_SC)信號經傳輸以使得附接埠能夠判定是否任何訊框已丟失。
在例示性實施例中,BB_SC_N (緩衝區至緩衝區狀態變化數目)用於追蹤兩個埠間之鏈路的商定緩衝區信用最大值。舉例而言,當兩個埠連接時,在登入期間(FLOGI或PLOGI),該等埠執行鏈路參數(ELP)的交換,且向彼此發送攜載其值的內部鏈路服務(ILS)訊框。若兩個埠具有不同值,則兩個埠均使用兩個值中之較大者。通常,BB_SC_N介於1至15範圍內。在例示性實施例中,變數F用於指定待在BB_SC間發送之訊框的數目及在BB_SCr基元信號間發送之R_RDY的數目。在一個實施例中,F界定為2
BB_SC_N。換言之,為建立檢查點,在每一F訊框之後發送BB_SC信號,且在每一F R_RDY之後發送BB_SCr。在一個實例中,BB_SC_N=3,=> F=8。在此實例中,各埠將在受制於緩衝區至緩衝區流量控制之每8個訊框之後發送BB_SC,且各埠將在每8個R_RDY之後發送BB_SCr。
在例示性實施例中,各埠維護在完成登入與接收到第一BB_SC之間接收之訊框數目的計數,例如BB_FRM_N。此外,各埠亦維護BB_SC的連續出現之間的計數。當訊框數目的計數達到F時,其繞回至零且重新開始。然而,若當BB_SC到達時計數器並不為零,則其意謂一或多個訊框已丟失。
在例示性實施例中,各埠維護在登入完成與接收到第一BB_SCr之間接收之R_RDY數目的計數,例如BB_RDY_N。各埠亦維護BB_SCr之連續出現之間的計數。當R_RDY數目的計數達到運算值F時,其繞回至零且重新開始。然而,若當接收BB_SCr時,所接收之R_RDY數目的計數並不為零,則一或多個R_RDY已丟失。
現參考圖4,描繪根據本發明之另一實施例的用於在儲存區域網路中執行主機起始之鏈路重設的方法400的流程圖。如區塊402所展示,BB_SCr或BB_SC到達埠。接下來,如決策區塊404所展示,判定BB_RDY_N或BB_FRM_N是否等於零。若BB_RDY_N或BB_FRM_N等於零,則方法400前進至區塊406,且持續SAN之正常操作。然而,若BB_RDY_N及BB_FRM_N中之一者不等於零,則判定一或多個訊框或R_RDY已丟失,且方法400前進至決策區塊408。
如一般熟習此項技術者將理解,BB_RDY_N與BB_FRM_N為在光纖通道標準中允許的計數/追蹤實施之不同實施例。在例示性實施例中,此等計數器通常具有零值且不需要動作。然而,當此等計數器具有非零值時,其指示R_RDY基元已丟失/未計入,且因此所接收之一半鏈路上的可用緩衝區信用的數目將不再為其完整/預期之組態值。在例示性實施例中,臨限值用於觸發以判定何時執行緩衝區信用恢復。在不同實施例中,臨限值觸發可為基於埠的登入BB_Credit之值的百分比、剩餘0個緩衝區信用、緩衝區信用低於指定值(例如,小於5)或在經組態RMF (資源量測設施)間隔期間經由RMF 74-7 (FICON導向器活動報告)報告訊框調步延遲之多個例項的使用者可組態值。
繼續參考圖4,在決策區塊408處,判定是否觸發緩衝區信用丟失之臨限值。若是,則該方法400前進至決策區塊410。否則,方法400前進至區塊406,且繼續SAN之正常操作。在決策區塊410處,判定該鏈路之該等埠中的一或多者是否為通道埠或直接附接之控制單元(CU)埠。若鏈路之埠中的一或多者為通道埠或直接附接的CU埠,則該方法前進至區塊412,且主機裝置發出命令至通道埠以執行鏈路重設(LR)。否則,該方法前進至區塊414,且主機裝置發出命令(經由FICON CUP或SMI-S)以執行鏈路重設。在例示性實施例中,該主機裝置將鏈路重設命令傳輸至用於經識別鏈路的控制裝置。該鏈路重設命令包括由主機產生之鏈路重設記錄。該鏈路重設記錄尤其包括界定待重設之鏈路的源埠及目的地埠的識別。方法400在區塊416處結束,此時鏈路上之緩衝區信用得到恢復。在例示性實施例中,在LR期間,並不丟棄訊框,其保持在緩衝區中直至LR結束且LR重設所有涉及之計數器至初始值,從而在效果上「補充」「丟失之」緩衝區信用。
現參考圖5,展示根據本發明之另一實施例之鏈路重設命令500。在例示性實施例中,主機裝置經組態以產生鏈路重設命令500,且將鏈路重設命令500傳輸至控制裝置。在例示性實施例中,控制裝置為SAN中與待重設之鏈路相關聯的網路裝置。鏈路重設命令500與鏈路重設記錄一起傳輸,其使得該控制裝置重設該鏈路。
現參考圖6,展示根據本發明之另一實施例之鏈路重設記錄600。如圖所示,鏈路重設記錄600包括導向器類型欄位602、C欄位604、R欄位606、源埠位址識別符欄位608、目的地埠位址識別符欄位610、導向器域ID欄位612、傳輸訊框調步時間欄位614、接收訊框調步時間欄位616、主機識別符欄位618及臨限值欄位620。在一個實施例中,導向器類型欄位602為用於識別產生鏈路重設記錄600之導向器的類型的四位元欄位。導向器類型用於識別導向器ID欄位612中所列之導向器的類型。導向器類型為源導向器、中間導向器及目的地導向器中之一者。源導向器類型指示導向器ID欄位612識別待重設鏈路的源埠位址。中間導向器類型指示導向器ID欄位612識別位於源導向器與目的地導向器之間且不含源或目的地埠位址的導向器。目的地導向器類型指示導向器ID欄位612識別待重設鏈路的目的地埠位址。C欄位604用以指定所使用之鏈路重設臨限值為傳輸訊框調步時間抑或接收訊框調步時間。R欄位606為預設全部為零之保留欄位。源埠位址識別符欄位608含有待重設鏈路之二十四位元光纖通道源埠位址識別符。目的地埠位址識別符欄位610含有待重設鏈路之二十四位元光纖通道目的地埠位址識別符。傳輸訊框調步時間欄位614及接收訊框調步時間欄位616包括已被阻斷以不能傳輸或接收之訊框傳輸單元之數目的計數。主機識別符欄位618含有產生鏈路重設記錄600之主機的識別。臨限值欄位620含有用於用以產生鏈路重設記錄600之訊框調步時間之臨限值的使用者定義值。
在例示性實施例中,當主機偵測到用於儲存區域網路中之鏈路的緩衝區信用低於臨限值之後,主機裝置即刻產生鏈路重設記錄,諸如圖6中所展示之鏈路重設記錄。接下來,主機產生鏈路重設命令,諸如圖5中所展示之鏈路重設命令。接著,鏈路重設命令與鏈路重設記錄一起自主機傳輸至用於經識別鏈路之控制裝置。該鏈路重設命令包括由主機產生之鏈路重設記錄。
本文中參考相關圖式描述本發明之各種實施例。可在不脫離本發明之範疇的情況下設計本發明之替代實施例。在以下描述及圖式中,闡述元件之間的各種連接及位置關係(例如,上方、下方、鄰近等)。除非另外指定,否則此等連接及/或位置關係可為直接或間接的,且本發明不意欲侷限在此方面。相應地,實體之耦接可指直接抑或間接耦接,且實體之間的位置關係可為直接或間接位置關係。此外,本文中所描述之各種任務及程序步驟可併入至具有未詳細地描述於本文中之額外步驟或功能性的更全面處理程序或程序中。
以下定義及縮寫將用於解釋申請專利範圍及本說明書。如本文中所使用,術語「包含(comprises/comprising)」、「包括(includes/including)」、「具有(has/having)」、「含有(contains或containing)」或其任何其他變體意欲涵蓋非排他性包括。舉例而言,包含一系列元件之組合物、混合物、程序、方法、物品或設備未必僅限於彼等元件,而是可包括未明確地列出或此類組合物、混合物、程序、方法、物品或設備所固有的其他元件。
另外,術語「例示性」在本文中用以意謂「充當一實例、例子或說明」。不必將本文中描述為「例示性」之任何實施例或設計解釋為比其他實施例或設計較佳或有利。術語「至少一個」及「一或多個」可理解為包括大於或等於一個之任何整數個,亦即,一個、兩個、三個、四個等。術語「複數個」可理解為包括大於或等於兩個之任何整數個,亦即,兩個、三個、四個、五個等。術語「連接」可包括間接「連接」及直接「連接」兩者。
術語「約」、「實質上」、「大致」及其變體意欲包括與基於在申請本申請案時可用的設備之特定量的量測相關聯之誤差度。舉例而言,「約」可包括給定值之±8%或5%或2%的範圍。
出於簡潔起見,本文中可能或可能不詳細描述與進行及使用本發明之態樣有關的習知技術。特定而言,用以實施本文中所描述之各種技術特徵的運算系統及特定電腦程式之各種態樣係熟知的。因此,為簡潔起見,許多習知實施細節在本文中僅簡要提及或完全省略而不提供熟知系統及/或程序細節。
本發明可為在任何可能之技術細節整合層級處的系統、方法及/或電腦程式產品。電腦程式產品可包括電腦可讀儲存媒體(或媒體),其上具有電腦可讀程式指令以使處理器進行本發明之態樣。
電腦可讀儲存媒體可為有形裝置,其可保持及儲存指令以供指令執行裝置使用。電腦可讀儲存媒體可為例如但不限於電子儲存裝置、磁性儲存裝置、光學儲存裝置、電磁儲存裝置、半導體儲存裝置或前述各者之任何合適組合。電腦可讀儲存媒體之更特定實例之非窮盡性清單包括以下各者:攜帶型電腦磁片、硬碟、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可擦除可程式化唯讀記憶體(EPROM,或快閃記憶體)、靜態隨機存取記憶體(SRAM)、攜帶型緊密光碟唯讀記憶體(CD-ROM)、數位化通用光碟(DVD)、記憶棒、軟性磁碟、機械編碼裝置(諸如打孔卡片或其上記錄有指令之凹槽中之凸起結構)及前述各者之任何合適組合。如本文中所使用,不應將電腦可讀儲存媒體本身理解為暫時信號,諸如無線電波或其他自由傳播之電磁波、經由波導或其他傳輸媒體傳播之電磁波(例如,經由光纖電纜傳遞之光脈衝),或經由導線傳輸之電信號。
本文中所描述之電腦可讀程式指令可自電腦可讀儲存媒體下載至各別運算/處理裝置或經由網路(例如,網際網路、區域網路、廣域網路及/或無線網路)下載至外部電腦或外部儲存裝置。網路可包含銅傳輸纜線、光傳輸光纖、無線傳輸、路由器、防火牆、交換器、閘道器電腦及/或邊緣伺服器。每一運算/處理裝置中之網路適配器或網路介面自網路接收電腦可讀程式指令且轉遞電腦可讀程式指令以用於儲存於各別運算/處理裝置內之電腦可讀儲存媒體中。
用於執行本發明之操作的電腦可讀程式指令可為一或多個以程式設計語言之任何組合撰寫的組譯程式指令、指令集架構(ISA)指令、機器指令、機器相關指令、微碼、韌體指令、狀態設定資料、積體電路之組態資料或原始程式碼或物件程式碼,該一或多種程式設計語言包括諸如Smalltalk、C++或其類似者的物件導向式程式設計語言,及諸如「C」程式設計語言的程序式程式設計語言或類似程式設計語言。電腦可讀程式指令可完全在使用者之電腦上執行、部分在使用者之電腦上執行、作為獨立套裝軟體執行、部分在使用者之電腦上且部分在遠端電腦上執行,或完全在遠端電腦或伺服器上執行。在後一種情境中,遠端電腦可經由任何類型之網路(包括區域網路(LAN)或廣域網路(WAN))連接至使用者電腦,或可連接至外部電腦(例如,經由使用網際網路服務提供者之網際網路)。在一些實施例中,包括例如可程式化邏輯電路、場可程式化閘陣列(FPGA)或可程式化邏輯陣列(PLA)之電子電路可藉由利用電腦可讀程式指令之狀態資訊來個人化電子電路來執行電腦可讀程式指令,以便執行本發明之態樣。
本文參考根據本發明之實施例之方法、設備(系統)及電腦程式產品之流程圖說明及/或方塊圖描述本發明之態樣。應理解,可藉由電腦可讀程式指令實施流程圖說明及/或方塊圖中之每一區塊以及流程圖說明及/或方塊圖中之區塊之組合。
可將此等電腦可讀程式指令提供至通用電腦、專用電腦或其他可程式化資料處理設備之處理器以產生一機器,以使得經由該電腦或其他可程式化資料處理設備之處理器執行之指令產生用於實施該或該等流程圖及/或方塊圖區塊中所指定之功能/動作之手段。亦可將此等電腦可讀程式指令儲存於電腦可讀儲存媒體中,該等指令可指導電腦、可程式化資料處理設備及/或其他裝置以特定方式起作用,使得其中儲存有指令之電腦可讀儲存媒體包含製品,該製品包括實施一或多個流程圖及/或方塊圖區塊中所指定之功能/動作之態樣的指令。
電腦可讀程式指令亦可載入至電腦、其他可程式化資料處理設備或其他裝置上,以使一系列操作步驟在該電腦、其他可程式化設備或其他裝置上執行以產生電腦實施程序,使得在該電腦、其他可程式化設備或其他裝置上執行之指令實施一或多個流程圖及/或方塊圖區塊中所指定之功能/動作。
諸圖中之流程圖及方塊圖說明根據本發明之各種實施例之系統、方法及電腦程式產品之可能實施之架構、功能性及操作。就此而言,流程圖或方塊圖中之每一區塊可表示指令之模組、區段或部分,其包含用於實施經指定邏輯功能之一或多個可執行指令。在一些替代實施中,區塊中所指出的功能可不按圖式中所指出的次序發生。舉例而言,視所涉及之功能性而定,連續展示之兩個區塊實際上可實質上同時執行,或該等區塊有時可以相反次序執行。亦將注意,可藉由執行指定功能或動作或進行專用硬體及電腦指令之組合的基於專用硬體之系統實施方塊圖及/或流程圖說明之每一區塊,及方塊圖及/或流程圖說明中之區塊之組合。
已出於說明目的呈現本發明之各種實施例之描述,但該等描述並不意欲為詳盡的或限於所揭示之實施例。在不脫離所描述具體實例之範圍及精神的情況下,許多修改及變化對一般熟習此項技術者而言將顯而易見。本文中所使用的術語經選擇以最佳解釋實施例的原理、實際應用或對市場中發現的技術的技術改良,或使得其他一般熟習此項技術者能夠理解本文中所描述之實施例。
100:電腦系統
101a:中央處理單元
101b:中央處理單元
101c:中央處理單元
102:系統匯流排
103:系統記憶體
104:唯讀記憶體
105:隨機存取記憶體
106:輸入/輸出適配器
107:通信適配器
108:硬碟
110:大容量儲存器
111:軟體
112:網路
115:顯示適配器
116:介面適配器
119:顯示器
121:鍵盤
122:滑鼠
123:揚聲器
200:儲存區域網路
210:主機裝置/終端裝置/SAN裝置/管理裝置
220:終端裝置
225:鏈路
230:網路裝置/交換器
300:方法
302:區塊
304:區塊
306:區塊
308:區塊
400:方法
402:區塊
404:決策區塊
406:區塊
408:決策區塊
410:決策區塊
412:區塊
414:區塊
416:區塊
500:鏈路重設命令
600:鏈路重設記錄
602:導向器類型欄位
604:C欄位
606:R欄位
608:源埠位址識別符欄位
610:目的地埠位址識別符欄位
612:導向器域ID欄位
614:傳輸訊框調步時間欄位
616:接收訊框調步時間欄位
618:主機識別符欄位
620:臨限值欄位
在本說明書之結尾處的申請專利範圍中特別地指出且清楚地主張本文中所描述之獨佔式權利的細節。本發明之實施例的前述以及其他特徵及優點自結合隨附圖式進行之以下詳細描述顯而易見,在該等圖式中:
圖1為根據本發明之一實施例之電腦系統之示意圖;
圖2為根據本發明之一實施例之儲存區域網路之示意圖;
圖3描繪根據本發明之一實施例之用於在儲存區域網路中執行主機起始之鏈路重設的方法之流程圖;
圖4描繪根據本發明之另一實施例之用於在儲存區域網路中執行主機起始之鏈路重設的方法之流程圖;
圖5描繪根據本發明之另一實施例之鏈路重設命令的方塊圖;及
圖6描繪根據本發明之另一實施例之鏈路重設記錄之方塊圖。
本文中所描繪之圖式係說明性的。在不背離本發明之精神的情況下,所描述之圖式或操作可存在許多變化。舉例而言,可以不同次序執行動作或可添加、刪除或修改動作。又,術語「耦接」及其變化描述在兩個元件之間具有通信路徑且並不暗示元件之間的直接連接且其間不具有介入元件/連接。所有此等變化視為本說明書的一部分。
300:方法
302:區塊
304:區塊
306:區塊
308:區塊
Claims (18)
- 一種用於在一儲存區域網路(SAN)中執行一主機起始之鏈路重設的電腦實施方法,該方法包含; 藉由與該SAN通信之一主機識別該SAN中之各鏈路,其中各鏈路係由一對埠界定; 藉由該主機獲得用於該SAN中之各埠的一緩衝區信用;及 基於該SAN中之一埠之該緩衝區信用低於一臨限值之一判定,藉由將一鏈路重設記錄自該主機傳輸至該鏈路之一控制裝置來引起與該埠相關聯之一鏈路的一重設。
- 如請求項1之電腦實施方法,其中週期性地執行獲得用於該SAN中之各埠之該緩衝區信用。
- 如請求項2之電腦實施方法,其中該週期之一頻率可由該主機之一使用者組態。
- 如請求項1之電腦實施方法,其中該臨限值為由一使用者提供之一預定數目。
- 如請求項1之電腦實施方法,其中該臨限值為一預定數目,具有一預設值零。
- 如請求項1之電腦實施方法,其中該鏈路重設記錄包括識別該鏈路之一源埠位址及一目的地埠位址。
- 一種儲存區域網路(SAN),其包含: 一或多個網路裝置; 複數個終端裝置,其各自耦接至該一或多個網路裝置中之至少一者,其中該複數個終端裝置中之一者係經組態以進行以下操作之一主機裝置: 識別該SAN中之各鏈路,其中各鏈路係由一對埠界定; 獲得用於該SAN中之各埠的一緩衝區信用餘額;及 基於該SAN中之一埠之該緩衝區信用低於一臨限值之一判定,藉由將一鏈路重設記錄自該主機傳輸至該鏈路之一控制裝置來引起與該埠相關聯之一鏈路的一重設。
- 如請求項7之SAN,其中週期性地執行獲得用於該SAN中之各埠的該緩衝區信用。
- 如請求項8之SAN,其中該週期之一頻率可由該主機之一使用者組態。
- 如請求項7之SAN,其中該臨限值為由一使用者提供之一預定數目。
- 如請求項7之SAN,其中該臨限值為一預定數目,具有一預設值零。
- 如請求項7之SAN,其中該鏈路重設記錄包括識別該鏈路之一源埠位址及一目的地埠位址。
- 一種用於在一儲存區域網路(SAN)中執行一主機起始之鏈路重設的電腦程式產品,該電腦程式產品包含: 一電腦可讀儲存媒體,其具有隨其實施之程式指令,該等程式指令可由一處理器讀取以使得該處理器: 藉由與該SAN通信之一主機識別該SAN中之各鏈路,其中各鏈路係由一對埠界定; 藉由該主機獲得用於該SAN中之各埠的一緩衝區信用餘額; 獲得用於該SAN中之各埠的一緩衝區信用餘額;及 基於該SAN中之一埠之該緩衝區信用低於一臨限值之一判定,藉由將一鏈路重設記錄自該主機傳輸至該鏈路之一控制裝置來引起與該埠相關聯之一鏈路的一重設。
- 如請求項13之電腦程式產品,其中週期性地執行獲得用於該SAN中之各埠的該緩衝區信用。
- 如請求項14之電腦程式產品,其中該鏈路重設記錄包括識別該鏈路之一源埠位址及一目的地埠位址。
- 如請求項13之電腦程式產品,其中該臨限值為由一使用者提供之一預定數目。
- 如請求項13之電腦程式產品,其中該臨限值為一預定數目,具有一預設值零。
- 如請求項13之電腦程式產品,其中該鏈路重設記錄包括識別該鏈路之一源埠位址及一目的地埠位址。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/476,594 | 2021-09-16 | ||
US17/476,594 US20230078787A1 (en) | 2021-09-16 | 2021-09-16 | Executing a host initiated link reset in a storage area network |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202315363A true TW202315363A (zh) | 2023-04-01 |
TWI802468B TWI802468B (zh) | 2023-05-11 |
Family
ID=83362477
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW111126413A TWI802468B (zh) | 2021-09-16 | 2022-07-14 | 在儲存區域網路中執行主機起始之鏈路重設 |
Country Status (5)
Country | Link |
---|---|
US (1) | US20230078787A1 (zh) |
EP (1) | EP4402873A1 (zh) |
JP (1) | JP2024531527A (zh) |
TW (1) | TWI802468B (zh) |
WO (1) | WO2023041344A1 (zh) |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6823453B1 (en) * | 2000-10-06 | 2004-11-23 | Hewlett-Packard Development Company, L.P. | Apparatus and method for implementing spoofing-and replay-attack-resistant virtual zones on storage area networks |
US7352706B2 (en) * | 2002-09-16 | 2008-04-01 | Finisar Corporation | Network analysis scalable analysis tool for multiple protocols |
US7568026B2 (en) * | 2004-02-13 | 2009-07-28 | Cisco Technology, Inc. | Method and system for efficient link recovery for fibre channel over SONET/SDH transport path |
US7787375B2 (en) * | 2007-08-06 | 2010-08-31 | International Business Machines Corporation | Performing a recovery action in response to a credit depletion notification |
CN101175077B (zh) * | 2007-10-26 | 2010-06-30 | 华中科技大学 | 光纤通道知识产权核 |
CN103051482B (zh) * | 2012-12-28 | 2015-09-30 | 中国航空工业集团公司第六三一研究所 | 基于fc交换机的一种端口隔离及恢复的实现方法 |
US9036479B2 (en) * | 2013-03-08 | 2015-05-19 | Brocade Communications Systems, Inc. | Mechanism to enable buffer to buffer credit recovery using link reset protocol |
JP6428048B2 (ja) * | 2014-08-25 | 2018-11-28 | 富士通株式会社 | 通信システム,異常制御装置および異常制御方法 |
US10992580B2 (en) * | 2018-05-07 | 2021-04-27 | Cisco Technology, Inc. | Ingress rate limiting in order to reduce or prevent egress congestion |
US11115340B2 (en) * | 2018-06-26 | 2021-09-07 | International Business Machines Corporation | Guaranteed delivery in receiver side overcommitted communication adapters |
US10986023B2 (en) * | 2019-07-19 | 2021-04-20 | Cisco Technology, Inc. | Using machine learning to detect slow drain conditions in a storage area network |
US11190588B2 (en) * | 2020-04-28 | 2021-11-30 | International Business Machines Corporation | Host initiated link reset in a storage area network |
US11297006B1 (en) * | 2020-06-03 | 2022-04-05 | Cisco Technology, Inc. | Use of virtual lanes to solve credit stall on target ports in FC SAN |
CN111884866B (zh) * | 2020-08-05 | 2022-10-28 | 中国工商银行股份有限公司 | 网络优化方法、网络优化系统、计算机系统和存储介质 |
-
2021
- 2021-09-16 US US17/476,594 patent/US20230078787A1/en active Pending
-
2022
- 2022-07-14 TW TW111126413A patent/TWI802468B/zh active
- 2022-09-01 JP JP2024513765A patent/JP2024531527A/ja active Pending
- 2022-09-01 EP EP22773154.4A patent/EP4402873A1/en active Pending
- 2022-09-01 WO PCT/EP2022/074351 patent/WO2023041344A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
JP2024531527A (ja) | 2024-08-29 |
TWI802468B (zh) | 2023-05-11 |
US20230078787A1 (en) | 2023-03-16 |
EP4402873A1 (en) | 2024-07-24 |
WO2023041344A1 (en) | 2023-03-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10230825B2 (en) | Dynamic port type detection | |
US20140052844A1 (en) | Management of a virtual machine in a storage area network environment | |
US10015084B2 (en) | Storage area network path management | |
US8942094B2 (en) | Credit-based network congestion management | |
US20180219755A1 (en) | Determination of status of ports in storage area networks | |
US9036479B2 (en) | Mechanism to enable buffer to buffer credit recovery using link reset protocol | |
US11240100B2 (en) | Using an out-of-band network to reconfigure a bus interface port | |
US10348553B2 (en) | Isolation and monitoring mode for problematic data links | |
US11799753B2 (en) | Dynamic discovery of service nodes in a network | |
US7352701B1 (en) | Buffer to buffer credit recovery for in-line fibre channel credit extension devices | |
US9003027B2 (en) | Discovery of storage area network devices for a virtual machine | |
US10326691B2 (en) | Wireless data transfer as an alternative method to overcome errors or noise in a storage environment | |
US10459791B2 (en) | Storage device having error communication logical ports | |
AU2021265486B2 (en) | Host initiated link reset in a storage area network | |
TWI802468B (zh) | 在儲存區域網路中執行主機起始之鏈路重設 | |
EP2947852A1 (en) | Method, device and system for implementing node port virtualization in the fibre channel | |
JP7572134B2 (ja) | ストレージ・エリア・ネットワークにおけるホストによって始動されるリンク・リセット | |
US11405333B2 (en) | Switched fabric network routing mode support | |
US10243859B2 (en) | Communications-capability-based SDN control system | |
US11206226B1 (en) | Switched fabric network routing mode selection | |
US11296986B2 (en) | Automatically enabling credit-loss protocols | |
WO2024020058A1 (en) | Storage aware congestion management | |
WO2016204777A1 (en) | Network communications | |
CN117880070A (zh) | 网络设备的故障检测与定位方法、装置、系统 |