TW200409497A - Data processing systems - Google Patents

Data processing systems Download PDF

Info

Publication number
TW200409497A
TW200409497A TW092117395A TW92117395A TW200409497A TW 200409497 A TW200409497 A TW 200409497A TW 092117395 A TW092117395 A TW 092117395A TW 92117395 A TW92117395 A TW 92117395A TW 200409497 A TW200409497 A TW 200409497A
Authority
TW
Taiwan
Prior art keywords
network
node
message
data
request
Prior art date
Application number
TW092117395A
Other languages
English (en)
Other versions
TWI285039B (en
Inventor
Paul Nicholas Cashman
Carlos Francisco Fuente
William James Scales
Original Assignee
Ibm
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ibm filed Critical Ibm
Publication of TW200409497A publication Critical patent/TW200409497A/zh
Application granted granted Critical
Publication of TWI285039B publication Critical patent/TWI285039B/zh

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/46Cluster building
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/72Admission control; Resource allocation using reservation actions during connection setup
    • H04L47/722Admission control; Resource allocation using reservation actions during connection setup at the destination endpoint, e.g. reservation of terminal resources or buffer space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/901Buffering arrangements using storage descriptor, e.g. read or write pointers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/54Store-and-forward switching systems 
    • H04L12/56Packet switching systems
    • H04L12/5601Transfer mode dependent, e.g. ATM
    • H04L2012/5603Access techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2101/00Indexing scheme associated with group H04L61/00
    • H04L2101/60Types of network addresses
    • H04L2101/618Details of network addresses
    • H04L2101/645Fibre channel identifiers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)

Description

200409497 五、發明說明(l) 【I明所屬之技術領域】 本發明係、;η 在此系統下傳逆=自;一種貧料處理系統,且特別地有關於 k矾息的—種方法以及裝置。 二、【先前技術】 王 向模組的Ξ散系統已漸漸由龐大且整體的系統朝 為分散式系統i:;?集式系統發展。舉例而言,這是因 低投入成本、高接=理效率以及成效。另外,也可提供 伺服器。 以及允终使用一般電腦(個人電腦) 如此的分散今 包含多個不㈣般被設置為-資料通訊網路’其 存裝置,其形成網t置(、例如電腦)以及週邊裝置,如儲 此溝通並交換訊·:點亚由適當的通訊通道連接,以彼 也將會包含所謂g桩此設置之下,每一系統的節點一般 用以與經由一區域資/op)或疋介面轉接器(adapter), 資料等等,並且匯流排建立此節點的系統裝置交換 及系統裝置之間的,訊網路完成與其他節點以 可為-通訊網路的舉:而言,此資料處理系統 在此設置之下,。 一個已知且杼m μ、3 間在通訊網路的通訊一般是採用 们已决旱的通訊協定。一般用於這種資料通訊 所使用的°#與協定係為所謂的"光纖通道(Fiber
Channel)"協定(舉例而言’如定義光纖通道實體介面的 ANSI X3·303:1998) 。 1 第5頁 200409497 五、發明說明(2) 在一光纖通道系統中,通訊網路的每一節點( 或是週邊裝置)是由一光纖通道接口連結到網路,y處理 係經由一區域資料匯流排與處理或週邊裝置或是節、&壯地, (通常指π主機(hos t)")交換資料。此光纖通道接口也^, 一介面控制器,用以處理光纖通道通訊網路與主機声g 3 是週邊裝置或是光纖通道接口相關的裝置間的低階=f, 換。 疋父 光纖通道系統也支援且也能夠轉送資料,根據高階通 汛協疋’例如網際網路協定(I n t e r n e t p r 〇 t 〇 c 〇 1, I p )以及 小型電月自糸統介面協定(smaj^ computer system interface, SCSI),(例如 ANSI Χ3·270··1 99 6 之結構資料以 及描述SCSI主要指令的SPC2 NC ITS· 35 1 :20 0 1 )。如此技藝 者所知,此s C S I協定一般用於通訊,如一主機處理裝置(例 如電腦)對一週邊儲存裝置的讀取以及寫入指令。事實上, 目如的分散式儲存系統中之主要的(predominant)通訊協定 以及網路結構係為光纖通道的SCSI (叫做n FCPn (特別定義在 ANSI X3· 269 :1 996 ))。在此結構下,高階通訊協定,如 SCS I協定,係被實施於光纖通道協定上。 當使用有關通訊網路的分散式系統時,具有有效率之 供父換訊息的通訊機制是很重要的,其系統的應用可能需 要在系統的節點或是裝置之間傳送以完成系統有用的功 能’如必須交換以達成這些有用的功能的資訊。這些應用 訊息的例子可包含如要求、允許、鎖定、使無效等訊息。 訊息可能在一分散式系統中交換以存取並操作有關一組資
第6頁 200409497 五、發明說明(3) 料之間的負料(in e t a d a t a)(或是貧料本身)。舉例而言,對 於快取複製功能,如用以判斷一組資料是否已快取複製或 是鎖定,及/或更多一般可能用以控制並實現此系統有用的 功能之訊息。(如熟知此技藝者所要的,此應用訊息應該會 與低階指令以及協定訊息區別,如接收者等待一應用訊息 的表示,其也可能在網路節點之間被交換以控制應用訊息 本身的傳送。) 在分散式儲存系統中,實際上的應用訊息交換問題是 v 很嚴重的’因為其上的訊息量通常是以百萬分之一秒計 算。 ^ 馨 加強在一分散式系統t的應用訊息交換的一方法是使 用進一步設計來傳訊息的上層通訊協定,如可供應用訊息 的虛擬介面協定(Virtual lnterface,π)。然而'不1是"所 有現存的通訊協定接口及轉接器,如光纖通道轉接器,都 可支援這種額外的通訊協定。也可能使用在分散式系統 中,有效傳訊息的分離式網路更適用,如無限頻寬網路 (InfiniBand net/Work)。雖然也許能提供更好的成效,但 是如此將會增加系統中所加入的額外通訊網路所需^成 本 〇 另外,習知也可使用現存通訊網路以及分 協定,以於通訊網路所連結之節點之間(以及裝置=岸 用訊息:彳=支?:的通訊協定,例如光纖通道以‘ 入”。因此’可用這種,,寫入”處理來將一應用訊^^
200409497 五、發明說明(4) 網路”寫入”所指的接收 在此設置之下,訊 接收端提出一寫入指令 想要傳送”資料”至所指 接著執行之後的任何其 這種操作方式的系統之 指令時,接收端將會被 此所指之應用訊息的記 就緒(transfer ready) 此應用訊息發送者將接 再次被中斷以告知應用 成此寫入指令並且通知 成。至此’此應用訊息 源釋出。 端。 息發送者將向此應用訊息的所指的 協定訊息(或是類似者)(例如,'一 疋的接收端的一指令),而此系統合 他寫入動作。因此,舉例而言,在θ 下的一光纖通道,於接收到此寫入 中斷、檢查此寫入指令、分配接收 憶體空間、以及接著回傳一個”傳送 ’的協定訊息至此應用訊息發送者。、 著轉送此應用訊息,而此接收端备 訊息傳送成功。此接收端將接著^ 此應用訊息發送者應用訊息傳送完 發送者可將與此應用訊息相關的資 如此設置的例子係使用一SCSI傳送指令(send command)在包含處理裝置的兩個%81接口之間傳送一應用 訊息。在此設置之下,低階的SCSI中傳送指令(不論對^欠 與硬體)的實施係與scsi寫入指令(WRITE command)相同' 此設置係利用現存的通訊協定以及網路所使用的硬體 且其能運作良好。由於,舉例以SCSI系統而言,大多協定 訊息處理可被操作於顧客的SCSI轉接器之硬體上,因此疋 主要主機系統處理器可以自由地作高階的工作。此外,對 於大多現存可用的SCS I附加轉接器,應用訊息提出者將只 處理此起始寫入(傳送)要求以及最終完成協定訊息(儘管^妾
第8頁 200409497 —發明說明(5) ----- 收而並不而要再多做什麼,包含管理起始寫入指令的接 收、應用訊息轉送的設定(例如準備此應用訊息的一記憶位 置、)、訊息轉送完成通知、以及最終協定完成訊息的傳送 (以及任何有關整理(,,tidying up")))。 自 :j而 申睛人知道此種設置具有一缺點,就是應用訊 =傳==間將會被所需要的初始,,交遞(handshsking),,延 、: “、:也有一些在網路組織本身明顯的往返延遲,但是 取大的延遲—般將會發生在接收端所控制的處理哭,以設 定接收端來接收應用訊息。對於許多輸入輸广 :)操作,…與寫入快取相關的處理 要對於大量應用之下所感受的成效是主 要^辦因素(這些是大家不想要的)。 认因此,申請人相信仍需要一種分散式資料處理 、心用訊息傳送以及接收處理,其可降低潛在,'、、、中 體上的應用訊息處理。 素及/或整 二、【發明内容】 於本發明的第一方面,提供一種於資料 运一訊息的方法,此資料處理系統包含具有 個或是多個節點的一網路。此方法包含: 網路之第一節點傳送要求至網路其他節 自此卽點的資料; ::系"中傳 溝通 的兩 點,
接收來 $戽有 <處 …網路之另一節點接收此接收資料要求, 此第一網路節點之一訊息時,完成此接收資
五、發明說明(6) 理’以?送此訊息至此第 於本發明的第二方面,提路即點。 樹匕溝通的兩個:是多個:::種資料處理系、统,包含 網路之一第一節”、、的〜網路,其中·· 路之其他節點,以接收來:::f置,供傳送-要求至網 網路之H點,包含ί:點的資料,·以及 要求,並且當有欲傳送至此第4,供接收此接收資料 成處理此接收資$, /罔略節點的一訊息時,完 點。 科要求以傳廷此訊息至此第一網路節 本發明另外也延伸到一裝置, :統t通訊網路之節點根據本發分散式資料 此,於本發明之第三方面, 之方法來刼作。因 之一節點使用的裝置,包含·,、一種供於一資料通訊網路
X ’供傳送'要求至# 自網路節點的資料; 路之其他節點,以接收來 j, . ^ ’供接收來自其他網路節點的 一 求, 即點的一賁料接收要 ==識何時此網路節,點具有给網路之另一節 息時,供〜當此網路節點具有給網路之另一節點的一却 itb 1自”凡成所接收到之此接收資料要求之卢”、、' ° 此汛息至網路之另一節點。 之處理,以傳送 自gtfc # ^月中,因應當具有給所要求的網w 息日寸其他網路筋^ ^ j略即點的一訊 路即點回傳的一訊息’訊息係由傳送接收資料
11111 第10頁 200409497 五、發明說明(7) 要求至其他網路節點的最初訊息接收者,在網路的節點之 間轉送。實際上,通訊是藉由使用一資料要求以”拉…、 (PuH )π出此訊息給接收端而反向操作的,而不是利用資料 傳送或是寫入指令來,,推(push)”給接收端。這有利於降低 =將傳送的訊息以及即將於接收端接收的訊息之間的潛在 =^二由於訊息一旦準備好傳送就不需要在訊息可以被傳 ^則寻待接收端完成它的準備處理工作, 收媳笪注% 6 』立/又’逋知接 鳊4待汛息的往返延遲。這裡也很少利用整體系統,因 =—接收資料要求一般比起一傳送資料要求,如一寫入浐 少的處理。舉例而言,對—接收資料要求,二 =收2可此一般會具有一個設定處理部份以及兩個 :部ί:::傳送資料要求而言’可能-般有兩個設定處 伤為要元成以及三個中斷部分。 的:-網路節點傳送的接收資料要求可以採用任何適合 /^(forinat)。這種要求應該是可辨識的高階資 要灰,如右關机奋二 不早早是一個(非常)低階 存 :男、不、上完成應用訊息轉送處理所必要的暫 存空間的可利用性的協定訊息。因此,接 將是可充分辨識的單一回庫。而 、’、要求身又 傳运,要求傳送節點將不知道哪m 要求所傳送到的節點必須傳送至I本=心饭如其中任何 格式^r 姑桩令 、、、要求卽點’或是哪種回應 ΐί:Γίΐΐ備ϊ收資料要求應該便是-般形式,其不 而要或疋預先準備你何特別的回廡、 用回傳任何形式的訊自Θf 口… 土本上真正可以利 μ回應(只要可以被辨識為接收資料要
第11頁 200409497 五、發明說明(8) 求的一回應) 接收資料要求最好杲八々 協定之標準形疗的疋刀政式糸、,先之網路所使用的通訊 另-節點接收資ϋ要求最好包含由網路之 -節點的-讀;式以及最好是被傳送至網路之另 特別在一幸交佳杂& /, , 送一接收資料要^// /,在一網路節點根據本發明傳 確定有足以===?,令)至其他節.點時,首先要 的訊息的記憶資源(儲存因應接^料要求所將傳送 會接著ί:::::ί在傳送接收資料要求之前,實際上 由準備一儲存:置、子::t f t應:訊息,,可能係藉 收訊息。此儲存位晉1二土疋一緩衝器,來因應此要求接 節點的接收資料I戈妾者破用來作為因應傳送至另一網路 較佳為(資料)的接收儲存位置。 一儲存位置。"b 妾收貝料要求,直到已經準備好 遲,iL妾=體,定義此儲存位置(緩衝器)可被延 # 應用汛息。舉例而言,由一歧記_管理;^ 體於此時定義儲存位置。 一》己U &理硬 收傳助於在訊息被傳送之前確定接收端有接 、k汛心的工間,因此提供一種流程控制裝置。 ,接收的訊息之儲存位i ’如缓衝器’可以為任意適 田但疋應該足以能夠接收預期訊息的大小。其可能是具有 足以同時儲存(如此以接收)複數個訊息的大小。另外/,、最
第12頁 200409497 五、發明說明(9) 好此訊息傳 供的訊息儲 送的任何訊 (以及固定) 的協定訊息 言’利用包 地於使用時 息傳送節點 於本發 之一節點使 一裝置 置;以及 一裝置 料要求至網 於本發 之一' 節點的 此節點 其他節點的 收資料要求 送節點 存容量 息不會 此儲存 交換)) 含接收 動態地 其目前 明之第 用的裝 ,供確 (例如接收資料要求的接收端) 如果可以的話,接著可以確 ,過這個容量。此資訊可藉由 容量(並且通知節點(例如利用 以提供給訊息傳送節點。或者 資料要求的資訊,此要求節點 判斷其儲存容量,並且指示使 的儲存容量。 四方面,提供一種供於一資料 置,包含·· 疋此節點具有可接收一訊息的 知道所提 定他所傳 預先判斷 一些先前 ,舉例而 可以額外 用中的訊 通訊網路 一儲存位 ,若判斷 路之其他 明之第五 方法,包 確定是否 一 sfl 息, 至網路之 如上所討論者, 儲存位置 存位置準 料轉送要 此資料要 節點準備一 只有當此儲 接收資 具有給傳送 具有一儲存位置可用,傳送一接收資 節點。 ' 方面,提供一種操作一資料通訊網路 含: 具有一儲存位置,供接收來自網路之 乂及’若具有一儲存位置,傳送一 其他節點。 本發明的這些方面可進一步包含於此 以接收此訊息的裝置或是步驟,並且 備好時才傳送此接收資料要求。 f(例如讀取指令)的網路節點應該於 ' 、網路節點之一訊息時,因應此資
第13頁 200409497
料要求傳送一訊息。 於接收到此接收資料要 送給接收資料要求傳送者的 接收資料要求,直到具有傳 息。 求時,若接收網路節點沒有傳 一訊息時,可能將暫停處理此 送給此接收資料要求的一訊 節點⑽1 :::接收到的接收資料要求已經有給要求提出 可能於接收到此接收資料要求時立即著 予此訊息的傳送處理。 因此, 訊網路之一 一裝置 求; 於本發明的第六方 節點使用的裝置, ’供接收來至網路 面,提供一種供於一資料通 包含: 之其他節點的一接收資料要 一裝置,供判斷此網路節 、, 之網路節點的一待傳訊息;•、瓦八有欲傳迗至此要求 一裝置,當判斷此網路節 的一待傳訊息時,暫停處理此給此要求之網路節點 -裝置,當此網路節:c求;以及 待傳訊息日寺,完成此接收資料::此J求之網路節點的一 至此要求的網路節點。 未之處理,以傳迗此訊息 提供一種操作一資料通訊網路 於本發明的第七方面 的一節點的方法,包含: 此節點: 接收來自網路之其他節點 判斷此網路節點是否具有 的一接收資料要求; 欲傳送至此要求之網 路節點 2UU4U949/ 五、發明說明(11) 的一待傳訊息; 當此網路節點沒有欲傳送至此 傳訊息時’暫停處理接收到之此接收資料G節待 當此该網路節點具有給此要求之未’ 息時,完成此接收資料要求之處理,以:點的-待傳訊 求之網路節點。 專适此机息至此要 於一特別地較佳實施例中,當一 Μ 其他網路節點的—訊息時,可能;郎點具有傳送給 用上述的S入指令處理),直到接收 :使 網路節點的一接收資料要求。於接收自此汛心所私的 適當接收資料要求之前,λ多網 ^相關的節點的 路之另外節點的訊息。且於接收到要丁列欲傳送給網 資料時’接著,如上所述地,傳要^接收適當節點的 等待訊息給此網路節點。一旦又仏為立即地)佇列的 傳送時,訊息傳送者將接著開始;列;:接收資料要求被 自相關網路節點的一個新的接收=:,直到接收到來 致訊息整批產生,因此,對捥ς要求。此設置自然導 效率地訊息傳送(其中因為整批的的系統,將導致更有 少)。 Λ %、,任何潛在因素將減 於本發明的第八方面, 之 節點使用的裝置,包八’、種供於一資料通訊網路 一裝置,供辨識欲傳送至 一裝置,供判斷此網路 ^ 他節點的訊息; 節點的一未決接收資料要长’疋接收到來自網路之另 乂及 1 第15頁 五、發明說明(12) 一裝置,當網路 的一未決接收資料 P點沒有來自該訊息所指的網路節點 到來自訊息所指求時,儲存而不傳送訊息,直到接收 於本發d!路節點的-接收資料要求。 之一節點的方法U面,提供一種操作—資料通訊網路 此節點: s· =識欲傳送至網路之其他節點的訊息;
判斷網路節3u L 路I另—Μ 1疋否接收到一未決要求,以接收來自網 峪乃即點的貢料;以及 _ A =、罔路二點沒有一未決要求以接收來自該訊息所指的 、卽站的資料時,儲存而不傳送該訊息,直到接收到來 自訊息所指的網路節點的一接收資料要求。 、十因應此接收資料要求的訊息之傳送可以任何合適的方 式完成’且舉例而言,將依照多少要求(例如讀取指令)被 處理來決定通訊協定的使用。此處理應該轉送此訊息給要 求網路節點準備給接收訊息的儲存位置。因此,舉例而 言’在一光纖通道及/或SCSI型態的系統中,訊息傳送者可 準備一健存位置,例如包含此訊息的緩衝器,並且參考包 含此訊息的儲存位置回應此接收資料要求。 當接收資料要求提出者被告知其要求已經被回應,則 接著將會檢查為了接收訊息所準備的儲存位置(緩衝器)以 處理所接收到的訊息。 任何已知的加強或是改良所討論的通訊協定中接收資 料要求(如讀取指令)處理的技術於接收資料要求完成時可
第16頁 200409497
被,用。因此,舉例而言,SCSI型態的轉接器中實施之已 知取佳一化可被使用在本發明之scs丨型態之實施中,其允 訊息(資料)轉送’並且完成(狀態)有關被硬體轉送二續取 的訊息,其具有—個來自軟體以及一個來 = 成中斷信號要求。 艰的70 ^ 、罔路筇點使其接收資料要求(如讀取指令)完成 η:提出一進一步接收資料要求。較佳為實質= 即地、、’S元成此要求的徊炊Μ -步的訊息。 此可馬上接收節點之進 輯^ = €可能傳送多自同步的接收資料要纟,及/或维 料要求,至其他(同-)網路節點。這 -新接欠現存未決要求被滿足時,由傳送-單 供之訊息ίϊί 所必須滿足的訊息傳送速率中所提 發明技:::想要地,在-通訊網路可以根據本 im收需要而預先準備的-些交遞。然 遞可以岸用ί網路中已經幾乎有一定程度的交 光可以使用寫入指令者。舉例 入/輸出)要求之前?交換特;路須在y交換!〇(輪 FC4登入)。 且入(iogins) (FC2以及 自傳=基i的設置之下,本發明可以使用於作為-訊 •。傳^的-網路節點以及作為―訊息接收者的另一網路孔 200409497 五、發明說明(14) _— 節點。然而,在一特定較佳實a 傳送以及接收訊息,如此建^ ^例中,每一節點對都可以 町得到傳送接收資料要求給另〜傳送以及一回應能力。即 對。另外,一般在此情;兄之 、’罔路郎點對的每一節點 /個或是更多,且最好每個節零’網路包含超過兩個節點, (及/或與之交換接收資料要长)·、、έ可以傳送接收資料要求至 地,最好一個或是更多以爲田複數個另外的節點。同樣 女早 . 理如上述的來自複數個另冰a τ母個節點可以接收並且處 舉例而言,此將允許一網路節署路郎點的接收資料要求。 以及接收訊息的節點的資料^ 維持於每一另外需要傳送 因此,在一特定較佳實施例中,(々如讀取指令)保持良好。 傳送一接收資料要求給每個另外母厂網路節點根據本發明 持與每個另外的網路節點間(或者的复同丨路即點’並且最好維 會需要接收訊息的那些節點)的一未^已知其將會或是預期 如上所述,本發明係可應用於高、求。 應用訊息(相對於低階協定訊息)的轉^。=網路節點間的 例子將可因應接收資料要求被轉送,^ $些應用矾息的 存衣置中執行動作或是與資料存取有關春二的储 ^ ^ 1闹之先丽的要求、枋 /隹 '鎖定、或是使無效的訊息之資料。 人 然而,本發明也可以或改為用以轉 x Xb TT , 得运貝枓,如在—宜 入决取中存在的修改資料的副本,或 罵 土态、、, 疋之則如在兩節赴pq 轉适的一位元映像(b i tmap)。舉例而士 _ ㈩、間 μ、、, β ’吳可以藉由忠从 轉迗之因應接收資料要求的訊息來隨著被文排 描述被轉送之資料的一標頭)的描述來 、貝"、例如 爪‘ ▼貢料。在此設置
第18頁 200409497 五、發明說明(15) 之下,不同於在較傳統的資料轉送處理,當接收資料要求 被傳送時,被傳送(如被轉送)的資料本身將不會被知道, 而接收端將不會由此訊息中之相關資料的標頭發現此資 料0
本發明可被使用於任何支援網路節點間的接收資料要 求(如讀取指令)的通訊網路以及協定。特別地,也可應用 到使用光纖通道及/或s C SI通訊協定的網路,且因此可應用 至任何(網路)支援SCSI協定,如傳統平行SCSI、光纖通 道、與SSA、以及如iSCSI以及Infiniband(SRP)的協定的光 纖技術。本發明也可應用在雙道入口 /平均(2-way entry /midrange)儲存控制者以及轉接器。特別地可以應用在任 何(分散式)具有兩個或是更多節點的儲存系統。 對於一SCS I式的系統,接收資料要求較好是一個scs I 讀取指令,且可以在此設置之下被看見的。本發明將使用 一個未決的SCS I讀取指令來經由所指的接收端之網路’,拉 出”此訊息。 因此,根據本發明的其他方面,提供一種於一通訊網 路的兩節點間傳送一訊息的方法,此方法包含·· 網路之一第一節點傳送一讀取指令至網路之其他節 點;以及 網路之另一節點因應此讀取指令傳送此訊息至此第一 節點。 網路的此節點或是每一節點可組成此技藝中已知的許 多裝置。此節點一般可包含至少一個處理裝置或是週邊裝
第19頁 200409497 五、發明說明(16) -- 置(如一儲存裝置),以及一個或是多個接口或是轉接器接 合此節點的處理裝置及/或週邊裝置至此通訊網路。發明的 較佳各種操作可以利用及/或在介面接口或是節點的轉接器 的控制之下完成(其中因此最好包含本發明之前所述之此裝 置)。也可能使用合適的設置及/或為此修改 csI轉接 器。 此例中的節點的轉接器 作,最好可以至少使發出的 求的回應相關連,且最好自 加接收節點(系統)的其他裝 本發明之方法可能至少 施,如電腦程式。因此,當 看出本發明提供特地連結以 以及包含當程式元素於資料 上述方法的電腦軟體碼部分 延伸至包含當用以操作包含 時’使與此資料處理裝置連 者’以完成本發明之方法的 為一實體儲存裝置,如一唯 是磁片、或者可為經由電線 是一無線電訊號,如對一衛 並非本發明的方法中的 凡成’而且因此在本發明的 腦軟體以及安裝在一電腦軟 ’其控制與本發明相關的操 接收資料要求與傳入之這些要 然能控制這些回應而不需要增 置的負擔。 舄要使用部分使用軟體來實 由進一步的方面來看時,可以 完成上述之方法的電腦軟體, 處理裝置中執行時,用以執行 =一電腦程式元素。本發明也 資料處理裝置的通訊網路節點 結的此軟體的一電腦軟體攜帶 f驟。一電腦軟體攜帶者將可 讀記憶體(R〇M)晶片、CD R0M或 訊號、一光學訊號或 生或疋其他類似者。 所有步驟都需要利用電腦軟 泛的方面中,提“ 體攜Τ者的軟體,以完成上述
200409497 五、發明說明(17) 的方法至少一步驟 四、【實施方式】 以下將以實例以及參考相 許多較佳實施例。 ]圖式的方式描述本發明之 圖一顯示本發明的一較 路,其具有彼此經由一單一土 1施例,包含一電腦通訊網 101、102,且其中勻自产二通訊通道103溝通的兩節點 而,如上所述且熟知此技蓺·、、、4係以皁一方向傳送。(然 使用以允許訊息在兩節點^所希望的,本發明可特別被 演傳送者與接收者的角色且:弩稱地交換,每一節點都扮 網路)。 可以被使用在超過兩個節點的 如圖一所示之電腦網路—_ 電腦系統,其包含如一處理母二卽點1〇1、102包含一 ^ ^ 處理或是週邊裝置或複數個梦罟以 及一、,罔路接口或是轉接器,1 、 .. ’、使郎點的I置或複數個梦菩 與連結節點料訊通道1G3接合。在此實施射,^= 是訊息接收者’節點102是訊息傳送者。訊息接收節點101 包含用以接收訊息的一暫存記憶體i04,以及訊息傳送節點 1 02包含負責傳送訊息任務的一暫存記憶體丨〇5。此兩節點 101與102係經由一全雙工光纖通道通訊通道1〇3連接。 圖 '一顯不於*息由郎點1 0 2被傳送至接收節點1 〇 1 時,節點1 0 1與1 0 2之間的整體訊息流。在此一實施例中, 假設節點101、102使用FCP協定(如光纖通道的SCSI)通訊, 其通常以光纖網路主機匯流排轉接器的儲存賣主(vendor)
第21頁 200409497
實施,且交換的協定訊息(所謂的光纖通道協定中的"資气 單元^將被描述為參考FCP協定。然而,如上所述且如熟知 此技藝者所欲,本發明同樣可應用在如SCSI或是iscsi(在 此協定訊息將採用另外的名稱)等其他環境下。 在此處理的第一階段係為使節點丨〇!傳送一要求給節點 10 2 以接收來自郎點1 〇 2的資料,此要求係以一讀取指令 20 1 (FCP一CMND)協定訊息的形式傳送至節點丨〇2。當具有傳 至郎·、沾1 0 1的一應用说息2 〇 2時,節點1 〇 2接著回應此讀取 才曰令。此時’訊息傳送節點1 〇 2包裹此欲傳送至節點丨〇 1的 應用訊息202成為一合適的FCP協定訊息(fcP_DATA),並於 讀取指令201的完成回應203被傳送至節點1〇1時,與一讀取 指令完成協定訊息(FCP一RSP) —起傳送。 圖三顯示較詳細之傳送讀取指令並接收應用訊息的節 點1 0 1所執行部分處理之步驟。節點1 〇 1首先初始化(步驟 3 0 1 ) ’且接著準備供接收訊息的一緩衝器丨〇 4 (步驟3 〇 2 )。 接著’傳送一讀取指令201(FCP__CMND)協定訊息係提及緩衝 器104準備就緒給預期的訊息傳送節點1〇2(步驟3〇3),以及 完成此時的處理(步驟3 〇 4 )。 當節點1 0 1接收對於其傳送給節點1 〇 2的讀取指令的一 完成訊息2 0 2 (DATA + RSP)時,其了解此狀況(步驟401)並檢 查其緩衝器1 04以擷取且處理所接收到的一訊息或複數個訊 息(步驟4 0 2 )。接著,重複在初始化執行的處理(步驟3 0 2至 3 0 4 )’以傳送一個新的讀取指令至節點丨〇 2,以接收進一步 訊息(步驟403 )。
Μ 第22頁 200409497 五、發明說明(19) Θ四A 乂及圖四β顯示在訊息傳送處理 所執行的步驟詳細内容。 丨仂甲即.,,、占丄υ 八201: : ’、節點1〇2首先接收來自節點101的讀取指 1 , ,亚且檢查是否已經接收到需要被傳送到 :至值、if用)訊息的通知(步驟5〇2)。如果節點102已經 、、代心,接著將繼續盡其所有(或所能)地包裹更 夕的訊心至其訊息傳送緩衝器1〇5(步驟5〇 一 知於節點1 0 1中的1自辟产—B Μ阳A丨,甘 且玉b、尸斤 .^ . . A ,的祇心儲存谷$的限制(其儲存容量可以由 先刖的協礒或是於節點1 〇1至節點1 02之接收資料要求中動 =指^傳達(如以讀取指令2〇1))。此節點1〇2接著傳送 至節點1〇1的應用訊息,以及對於讀取指令的 凡協尺汛息之完成訊息2〇2(步驟504)至節點1〇1並且 結束此處理(步驟5 0 5 )。 a 士另力方,’假如當一開始接收到來自節點1 0 1的讀取指 7/又有等待傳送的訊息(步驟5 〇 2 ),節點丨〇 2會紀錄讀 取指令已經接收(步驟5〇6)以及結束此處理(步驟5〇7),直 到接收到供傳送的訊息。 /圖四B顯示當接收供傳送至節點1〇1的一訊息時節點ι〇2 所執行的步驟。當接收到供傳送的一訊息時(步驟Μ 1 ),節 點1 02判斷來自節點丨〇 }的一讀取指令是否已經接收到,並 等待訊息的傳遞(步驟602 )(這是藉由檢查上述之步驟5〇6所 做的、’、己錄來確疋)。假如已經有一個等待中的讀取指令,於 步驟601,中新接收到的訊息接著會立即包裹以供傳送(步驟 603 ),亚且如步驟5〇4以及其他步驟(步驟6〇4)中傳送。
200409497 五、發明說明(20) " — 假如改為發現沒有等待中的讀取指令,而接著供傳送 的訊息將被儲存(步驟605 )以及處理結束(步驟6〇6),直到 一讀取指令被接收。在此例中,當訊息被接收時,被健存 的訊息之紀錄將被偵測,且將造成訊息在一讀取指令被接 收時立即被傳送(於圖四A中的步驟502之後以及步驟5〇3至 50 5 )。 由上述可以得知以上的訊息交換改變等等可以被延伸 以允許節點1 0 1與節點1 〇 2之間的雙向的傳送以及接收,以 及延伸包含超過兩個節點的系統的設置。另外,節點間轉 送的訊息可包含上述的資料。 如此熟知此技藝者所知的,真正的節點i 〇 1以及丨〇 2將 包含接合到通訊通道1 〇 3 (且因此接到另外的節點)的通訊網 路轉接器。上述的訊息處理將需要被對應到所使用的特定 轉接器(如SCSI轉接器)的硬體介面。這可以任何合適的方 式做到。以下將描述對應到適合允許能依照本發明操作, 以執行SCSI型態的I/O(讀取/寫入)動作的一介面晶片的一 "面硬體之具體貫施例。此介面晶片的功能係為任何市場 上所此取得來自許多賣主(如AgHent、QLogic 'Adaptec等 專)的轉接卡的子集合(subset)。 此實施例的介面晶片實施FCP(光纖通道上的SCSI),但 是相同介面同樣將可運作在具有SCSI之介質(media)或是其 他具有類似條件的I/O介面。 、 介面晶片要被安裝在一I/O匯流排,如PCI或是PCI-X匯 流排’或是供任何新興的技術,如Rap i d I /〇。舉例而言,
wami
iill
第24頁 200409497 五、發明說明(21) 其可被安裝為一實體上分離的轉接卡 腦的可相容的-插槽、成為一訂製:儲;器電 件、或是利用任何其他晶片所支援的方2 中的-兀 此介面晶片將操作以實施一控制,: 的控制軟體要求晶片的服務,並且 —二允涔此阳片 此技藝者所知的其他重要的事件 ^ ^以及如熟知 、心—壯& 干9服務通知0此控制敕體 將被女1為一傳統操作系統令的一裝 石w ^ 2000 (TM)或是在一控制哭中强你从 、動叩,如Windows 他合適的形式。如孰知:技蓺】丄—部分碼’或是任何其 而曰Η新担也ΛΛ… 技藝者所知,此控制軟體將在介 面S曰片所k供的服務與操作環境的需要之間轉譯。 為了能夠完成不同的择作,+者 可被使用以帶有孰知此技蓺者所去Λ ^例的7丨面晶片實施 1 μ Υ 技藝者所知之控制區塊(Contr〇l η的一輸入佇列(Input Queue)以及一輸出佇列 輸入符列帶有描述由控制軟體對此服 面晶片的服務要求之控制區塊。此輸出佇列 :來自;丨面曰曰曰片的資訊至控制軟體,如之 中接^要求的結果資m其他附註的事件。 时k些仔列的每一者在分裂成相等大小且每一塊可以包 :早二控制區塊單位(entry)的記憶區域中實施。在此佇列 ^單位將以一完全上升位址依序排列,直到最後一單位 被使用,此時第一單位(具有最低位址)會被再次使用。(然 而也可以用如熟知此技藝者所知之其他設置)。每一佇列 的位置與大小會被定義在一個合適的暫存器。 如熟知此技藝者所知,對一佇列的製造者(如在此例中
第25頁 200409497 五、發明說明(22) 的輸出仔列的介面晶片),必須表示何時在此佇列之下可得 到〆το素(e 1 emen t)。為此,其更新對此佇列可以被消費者 讀取的一,存姦(。如在此例中之輸出佇列的控制軟體)。此 暫存器在每次一單位被加入佇列時向前推進,並且指到下 ,個自由的位置(s 1 〇 t)(如在新增加的單位之後的位置)。 /佇列的消費者必須也指出何時在此佇列之下一元素 町以被處理。為此,其也可更新一暫存器,其可在此時被 此佇列中的製造者讀取。此暫存器在每次一單位被處理時 向前推進’並且指到下一個需要被處理的單位。 在此設置之下’當消費者和製造者的指標都指向相同 的單位日$,仵列會是空的(如無未處理的元素)。且當製造 者指標洛後消費者指標之一個單位時,作列會全滿(即使還 有〆個單位未使用)。在後者的例子中,製造者必須等待元 素能被消費者取得,並且不能彳宁列新元素。 在此貫施例中’為了降低控制區塊佇列導向鎖死狀態 的風險’對任何連線被允許之未完成要求的總數會被限 制,旅且晶片會被設置以確保控制區塊佇列足夠以維持所 有相關核准的未完成要求之數目(雖然如果需要的話其他技 術也町以被使用)。 " 在本實施例中,輸入與輸出佇列會存在介面晶片之外 的記憶體中,此記憶體係可供介面晶片以及其控制軟體存 取,旅且係在一記憶體管理系統,如一虛擬記憶體管理 者,之下控制的。此控制軟體執行系統呼叫以使記憶體可 被介面晶片存取。在此也可以有其他的設置。
第26頁 200409497 五、發明說明(23) 輸出佇列也可以有一個相關的中斷機制,其通知此處 理單元執行控制軟體使一新的控制區塊被加入輸出符列 中。舉例而言,此中斷機制可以為一 PC I匯流排中的一中斷 線、PC I -X中的一訊息訊號中斷、或是其他允許這種訊息被 傳送的機制。 為了能夠依照本發明之上述實施例操作,介面晶片需 要能接受控制區塊以執行下列指令要求:
傳送FCP — CMND框並且等待傳入的FCP — DATA框以及FCP RSP 框。 一 傳送FCP —DATA框及跟隨的FCP —RSP框。 (其將於這些功能(function)被需要時由控制軟體放置 於一輸入佇列),以及創造下列控制區塊(其將被介面晶片 放置於輸出佇列中以通知控制軟體相關的事件): 傳送FCP — CMND以及傳入的FCP —DATA及FCP —RSP完成。 傳送FCP —DATA以及相關的FCP一RSP框完成。FCP —CMND框被接 收。 這些控制區塊以及相對應的介面晶片操作將參考一介 片執行一訊息在一資料通訊網路,其每一者包含如本 灵、靶例中的一介面晶片,中之兩節點間轉送之使用詳細描 述。描述的操作將基本上依照上述之圖二、圖三、圖四A以 及圖四B所列出的步驟。 _ 如上討論,於本發明的實施例中,訊息轉送處理的第 :=驟係由初始節點(如接收資訊要求的傳送者)準備記憶 體緩衝為’以接收回應接收資料要求以及同時與訊息回傳
200409497 、發明說明(24) 的元成指示FCP一RSP框的被傳送的訊息。在此實施例中,為 此準備兩緩衝器,一個供訊息使用而一個供FCp一RSp框使 用。初始節點也定義一個鑑別者,其可以用以辨別有問題 的特疋接收資料要求(如當此要求的回應被處理時,再次呼 叫特定資料要求)。此動作係由介面晶片控制軟體於初始節 點完成。 訊息轉送處理的下一步驟係由初始節點(如傳送接收資 料要求,並接收其回應訊息的節點)傳送一接收資料要求 (在此實施例中係為一讀取指令的形式)至另一網路節點, 亚且當接收到回應時,自行準備接收資料要求之回應的接 利用控制軟體放置 傳送FCP_CMND, FCP —RSP 框 並且等待(接收)傳入的FCP—DATA框以及 這些操作。 接著製造者的暫存 一個新控制區塊的 以控制在此初始節點的此介面晶片實行 於此輸入佇列中的控制區塊(在此, 器會向前推進,以表示在此輸入佇列的 存在)。此指令的控制區塊包含:
及特別Π::2允許此特定接收資料要求被辨別 及特另其將於輸出佇列的一完成訊 控制軟體); 了疋攸寻 器的形式之參考,在此實 接收資料要求之所指的接收 施例即為一光纖通道位址; 200409497 五、發明說明(25) 將被傳送的項取指令(如接收貧料要求)的一 S C SI指令 說明區塊(command descriptor block, CDB); 所準備且係欲放置的傳入回應訊息資料的控制軟體所 擁有的記憶體缓衝器的位址與大小;以及 欲被放置的回應完成協定訊息(在此係FCP一RSP框)的記 憶體緩衝器的位址與大小。 (在此實施例中,此控制區塊假設所提供的記憶體緩衝 器可於一單一位址存取,如一相鄰的記憶體,但是也可能 於一分散式集合列表中所述之不同的記憶體位置中分散傳 入的資料。) ' 當接收到此一控制區塊,介面晶片會創造一個符合嵌 入SCSI架構的FCP_CMND框,特別地,來自控制區塊以及一 發起者交換辨識符(0X_ID)的%31讀取指令的指令說明區老 (其分配並且被使用,特別地,藉由接收此接收資料要白 目標f點以"標示"此要求的回應,來允許初始節點辨識並 且d κ此回應)。此介面晶片接著插入任何其他需要之由 枯準所疋義之領域、產生任何需要的錯誤檢查碼(如 CRCs)、亚且將於光纖通道連線中傳送的框編碼。
介面晶片接著判斷由參考控制 =指令之所指的接收器的此24位元的目的辨 的框至目標節,點。此輸: = S〇C〇nstruCted % , . ^ „叛入仔列消費者暫存器接著向前推 進,以表不佇列單位可以被重新使用了。 於此目標節點的介面晶片將接著接收並且處理此
200409497 五、發明說明(26) FCP — CMND框(如接收資料要求)。目標節點介面晶片於此處 理的第一步驟係,一旦要求已經被接收時,放置 已接收FCP_CMND框 控制區塊在輸出佇列中的下一個自由的位置,以通知 其接收資料要求的接收之控制軟體。 此接收FCP —CMND框的控制區塊包含: 一襴(field)係辨識為接收FCP — CMNIHl的控制區塊; 一辨識符係辨識FCP-CMND框的傳送者(如讀取指令(接 收資料要求)的傳送者); % 傳送之指令的内容(如FCP一CDB)(如其為一讀取指令:一 接收資料要求);以及 於此FCP —CMND框嵌入的發起者交換辨識符(〇χ—ID)。 此介面晶片也向前推進其製造者暫存器,以表示一個 新控制區塊的存在。 在目標綠點的此控制軟體接著被中斷,並且就藉由檢 查製造者暫存器開始處理,其將指出有一個新的輸出仔列 單位可使用。此控制軟體將檢查新單位並且藉由分析此訊 息傳送者以及其所含的%81指令(SCSI—CDB)來處理此 FCP_CMND框。 此目標節點接著執行符合SCS丨協定的處理,以判斷使 接收的(項取)指令是否可以被處理,以及如果可以的話, 因應其指令’判斷哪個訊息資料需要被傳送。所判斷的訊 息資料可以接著被放置於介面晶片可以存取的記憶體。(如 熟知此技藝者所知者,有很多方式可以獲得此資料)。此目
第30頁 200409497 五、發明說明(27) ( 標節點將以包含一SCSI良好狀態(SCSI Good Status)的一 FCP — RSP框的形式,準備一資料轉送完成協定訊息。最後, 具有F C P 一 C Μ N D框的完成分析’目標節點會向前推進豆消費 者暫存器。 、 此目標節點的介面晶片接著藉由目標節點的控制軟體 放置 傳送FCP — DATA框及跟隨的FCP —RSP框 命令目標節點的介面晶片傳送此訊息與訊息完成協定訊息 至要求節點。 於介面晶片的輸入佇列的控制區塊(並且接著向前推進 相關的製造者暫存器,以表示控制區塊存在於佇 控制區塊包含: 一欄(f i e 1 d )係辨識為此種類之控制區塊; 二唯一辨識符(unique identifier),將會被用以區別 ,、回應與其他可肖b未元成之此類要求回應(以及但不限 於將於輸出佇列的一完成訊息中被回傳至控制軟體); 此資料之所指的接收器之參考(訊息以及Fcp Rsp框) (如要求節點); 一 ίΠΥ Λ自初始節點的接收資料要求的發起者交換辨識符 其介面晶片將插人所傳送的框,以允許所傳送的 ,之接收者確定框有因應由接收者所傳送的接收資料 來), 、 靳存傳迗的訊息資料被放置的控制軟體擁有的記憶體 曰存Μ的位址與大小;以及
第31頁 200409497 五、發明說明(28) 由被傳送的FCP一RSP協定訊息被放置的記憶體暫存起的 位址與大小。 於此控制區塊接收時,介面晶片藉由轉送來自所表示 的記憶體暫存器的一訊息資料的一初始部分,以及放置於 一FCP —DATA框開始。轉送的訊息資料的數目被選擇以填滿 FCP —DATA框’並且有效率地使用此系統的資源。一標頭 (header)接著被加入此框,此標頭包含所指的接收器的目 的辨識碼(D—ID),以及來自控制區塊的發起者交換^識符 (0X一ID)(以及於他們的^匕⑶帅框中所提供的接收器f。藉 ,增加錯誤檢查碼(如CRC)以及框化資訊完成此框,以及接 著為傳送編碼並且於光纖通道連線中傳送。 介面晶片接著繼續以轉送下一個來自所指的記憶體暫 存裔的訊息資料的下一個部分,於上述的記憶體資料部分 建構另一個FCP —DATA框,以及接著傳送此框等等,直到控 制區塊所指的所有的訊息資料都已傳送。 二 介面晶片接著轉送來自由控制區塊表示的記憶體暫 為的此FCP一RSP框的酬載内容(payl〇ad c〇ntents)至一
F^P;RSP框,以對FCP —DATA框相同的方式建構FCP-RSP框 剩餘的框標頭,並且傳送此FCP —Rsp框至所指的接收器£ 於確認此最後框的傳送之後,卩面晶片向前推進其 輸入仵列中的消費者指標,而且產生並且放 FCP —DATA + FCP —RSP 完成
第32頁 200409497
前推進此輸出佇列的製造者暫存器,以表示此新的控制區 塊的存在)。此控制區塊包含: 一欄(f i e 1 d)係辨識為此種類之控制區塊; 一唯一辨識符,由傳送FCP一DATA框及跟隨的FCp— Rsp框 控制區塊的控制軟體提供;以及 一欄係辨識是否有任何發生錯誤或是沒有發生錯誤。 當目標節點再次中斷且檢查製造者暫存器以及輸出佇 列時,將會發現此傳送FCP —DATA以及Fcp —Rsp控制區塊的完 成控制區塊,並且於完成控制區塊中辨識具有使用唯一辨 識捋已經行動過的特定控制區塊。此目標節點可以接著執 行步驟以恢復並且釋放與此讀取指令的處理相關的資源, 以及向前推進輸出佇列的消費者暫存器以釋放單位供再次 使用。此處理的下一階段將是由Fcp—DATUl(以及Fcp —Rsp 框格)的初始節點且因應讀取指令由目標節點傳送的介面晶 片接收。初始節點將藉由匹配包含在所接收的框中且有辨 識符傳送的原始讀取指令之值的此(〇x—ID)辨識這種框格。 接著將驗證每個框,以確保如目的辨識符⑶—丨”的攔,以 及錯誤檢查碼是正確的。 :旦驗證過每個框,介面晶片將除去此標頭資訊,並 且轉送酬載至辨識於原始傳送fcp_cmnd以及等待(接收)傳 入的FCP_DATA框與FCP_RSP框控制區塊中的緩衝写。來自所 接收的第一FCP —DATA框的資料將被放置在提供的緩衝器的 原點,且介面晶片接著維持所接收資料的計數器,如此隨 後的FCP — DATA框使得酬載放置於相鄰先前框的酬載。此介
200409497 五、發明說明(30) 面晶片將確保所接收的資料總數量沒有超過提供的記憶體 緩衝器的大小。 一旦FCP—DATA框已經接收,FCP—RSP框被接收,其係再 次與使用包含在FCP_RSP框中發起者交換辨識符(〇x—ID)欄 中提出之相關的讀取指令。此FCP一RSP框内容係接著被轉送 至表示在原始傳送FCP —CMND以及等待(傳送)傳入的 FCP一DATA框與FCP_RSP框控制區塊的緩衝器。 在FCP — RSP框處理之後,介面晶片會放置 傳送FCP —CMND以及傳人的FCP —DATA與FCP_RSP完全 輸出佇列中的控制區塊以表示成功的(或是其他)讀取 指令完成(並且向前推進製造者暫存器以表示此新的控制區 塊的存在)。此控制區塊包含: 一攔係辨識為此種控制區塊; ^ $原始讀取要求中的控制軟體提供的唯一辨識符(以允 許此完成控制區塊與合適的讀取要求匹配); 在貝料緩衝器以及FCP一RSP緩衝器中所接收到之資料的 總數之一報告·,以及 、 一攔係表示是否存在有任何錯誤或是沒有錯誤存在。 %、控制軟體的處理器接著被中斷,並且檢查製造者暫存 此日守其將會發現此控制區塊並使用唯一辨識符,里包 含判斷哪個指令Ρ姐—士、 ,ρ ^ ^ /、匕 贫日 成。此FCP-RSP框接著被檢查、確認 童如疋否是良好或是其他),以及確認描述轉送資料 里=。此控制^體可以接著釋放與此原始讀取指令相 春、貝"、,亚且向可推進輸出佇列的消費者暫存器。此控
200409497
第35頁 200409497 圖式簡單說明 圖一顯示依照本發明操作的一電腦網路的兩節點; 圖二顯示依照本發明之一實施例於圖一令的網路節點 之間的整體訊息流; 圖三係為顯示依照本發明之一實施例一訊息接收節點 實行的步驟的一流程圖;以及 圖四A以及圖四B顯示依照本發明之一實施例中一訊息 傳送節點實行的步驟。 1 0 3 通訊通道 2 0 1讀取指令 2 0 3 完成回應 圖式元件符號說明 1 0 1、1 0 2 節點 1 0 4、1 0 5 緩衝器 2 0 2 應用訊息

Claims (1)

  1. 200409497 六、申請專利範圍 1 · 一種於 此溝通的 該網 求,以接 該網 給該第一 求,以傳 2. 如申請 接收資料 點先建立 存貨源。 3. 如申請 送該接收 節點先準 一訊息。 4. 如申請 網路之另 節點是否 (pending 要求之網 求,直到 息。 5 ·如上述 個或是多 一資料處理系纪 兩個或是多^Z送一訊息的方法,包含具有彼 路之-第之一網路’該方法包含: 收啦白兮浐 2傳送至該網路之其他節點一要 收來自孩即點之資料; 路之另一節點垃L ” 網路節點之:m接收資料要求’並且當具有 送該訊息至該第…Ϊ成處理該接收資料要 我弟一網路節點。 專利範圍第1頊辦、 員所述之方法,進一步包含在傳送該 要求至该網路夕兄 μ ^ ^ 略之另一卽點之前,該網路之第一節 具有可供接收因應該接收資料要求的-訊息的儲 =利fe圍第1或2項所述之方法,進一步包含在傳 育料要求至該網路之另一節點之前,該第一網路 備一儲存位置,以供接收因應該接收資料要求的 專利範圍第1、2或3項所述之方法,進一步包含該 一節點於接收到該接收資料要求時,判斷該網路 具有欲傳送至該要求之網路節點的一待傳訊息 message),且當判斷該網路節點沒有欲傳送至該 路節點的一待傳訊息時,暫停處理該接收資料要 具有傳送至傳送該接收資料要求的該節點的一訊 任一之申請專利範圍所述之方法,進一步包含_ 個網路節點佇列(queue)欲傳送至該網路之其他節
    第37頁 200409497 六、申請專利範圍 即點接收到來自 I進〜步包含該 ^ ^ 或多個 即勒,提出一進 ^進〜步包含該 v的接收資料要 ,進 步包含成 其中該網路包 夕個網路節點, 路節點。 中該網路之每一 之接收資料訊 點而不傳送至該網路節點的訊息,直到該 忒另一網路節點的一接收資料要求。 5·如上述任一之申請專利範圍所述之方法 網路之一節點一旦接收到因應該接收資料 说息時’對已完成先前之該要求的該網路 一步接收資料要求。 7 ·如上述任一之申請專利範圍所述之方法 網路之一節點維持多個與其他網路節點同 8 ·如上述任一之申請專利範圍所述之方法 對網路節點交換彼此的接收資料要求。 9 ·如上述任一之申請專利範園所述之方法 含超過兩個節點,且進一步包含一個或是 每一者傳送接收資料要求至複數個其他網 1 0 ·如申請專利範圍第9項所述之方法,其 節點與該網路之每個其他節點維持一未決 息0 11 · 一種操作一資料通訊網路的一節點的方法,包人 該節點確定該節點是否具有供接收來自該網路3之复 節點的一訊息之一儲存位置,而當一儲存位置可用時”他 送一接收資料要求至該網路之其他節點。 T 傳 1 2 ·如申請專利範圍第11項所述之方法,進一步包含兮# 在傳送該接收資料要求至該網路之其他節點之前, 儲存位置’以供接收因應該接收資料要求的一訊幸。
    200409497
    ^、、申5青專利範圍 1 3 · —種操作一資料通訊網路的一 該節點: 接收來自該網路之其他節點的一接收資料、、 判斷該網路節點是否具有欲傳送至該要求; 的一待傳訊息; /之網略節點 二當該網路節點沒有欲傳送至該要求之網略〜 傳訊土時,暫停處理該接收到之接收資料要求即點的〜待 士當該網路節點具有給該要求之網路節點的丄U及 日守’完成該接收資料要求之處理,以傳送該待傳訊息 之網路節點。 。至該要求 14. 種操作一資料通訊網路之一節點的方法, 該節點: 匕含: 辨識欲傳送至該網路之其他節點的訊息; 判斷該網路節點是否接收到一未決要求,以接 該網路之另一笳赴从义抓· ^ 乂接收來自 力 即點的貢料;以及 若該網路節點沒有一未決要求以接收來自該訊息 到f網路節點的資料時,儲存而不傳送該訊息,直到接收 1 $ “自该訊息所指的該網路節點的一接收資料要求。
    收次如上述任一之申請專利範圍所述之方法’其中因應該接 貝料要求所傳送的該訊息包含一資料,該資料同時具有 =傳送之該資料的一說明。 路·如上述任~之申請專利範圍所述之方法,其中該通訊網 &用光纖通道(F i b r e c h a η n e 1)及/或小型電腦系統介面 通訊協定(SCO . 01 communications protocols) 0
    第39頁 200409497 六、申請專利範圍 __ 1 7·如上述任一之申請專利範圍所述之方法, 路係為一分散儲存系統的一部分。 ,其中該通訊網 1 8 ·如上述任一之申請專利範圍所述之方法, 料要求係表示為傳送至該網路之另一節% 其中該接收資 式。 〜 < 一讀取指令形 1 9 · 一種於一通訊網路的兩節點間傳送一 法包含: ° &的方法’該方 他 該網路之一第一節點傳送—讀取指令至該 節點;以及 ^ ^ * 該網路之另一節點因應該讀取指令傳送該訊息至該第 一節點。 2 0 · —種資料處理系統,包含彼此通訊的兩個或是多個節點 的一網路,其中. 該網路之一第一節點,包含一裝置,供傳送至該網路 之其他節點一要求,以接收該網路節點的資料;以及 該網路之一第二節點,包含一裝置,供接收該接收資 料要求,並且當有欲傳送至該第一網路節點=一訊息時, 完成處理該接收資料要求以傳送該訊息至該第一網路節 21·如申請專利範圍第20項所述之系統’其中因 節點進一步包含一裝置,供確定異有可接收口應泫接收資 料要求的一訊息的儲存資源。 辻由兮々 22.如申請專利範圍第2〇或“項所述之系,’位、中该二路之 第一節點進一步包含一裝置,供準備一儲存位置乂仏接收
    第40頁 ^uu4U9497 申請專利範圍 2因3= 妾J"料要求的-訊息。 路之第二^專里利範圍第20、21或22項所述之系統,其中該網 求時,:::J: ”含-裝置,於接收到該接收資料要 點的—待傳自一節點是否具有欲傳送至該第一網路節 有欲傳送至;Z,以及一裴置,當判斷該第二網路節點沒 接收資料要Ϊ 網路節點的一待傳訊息時,暫停處理該 息。 , 直到具有欲傳送至該第一網路節點的一訊 該^:^^圍_第20至23項中任一項所述之系統,其中 一網路節點的訊息:步包含一裝置,供佇列欲傳送至該第 兮=々申明專利範圍第20至24項中任一項所述之系鲚盆由 该網路的每一節 τ 1 貝尸汁述之糸統,其中 置。 .、、、進一步包含至少一處理裝置或週邊裝 來自該網路節點=該網路之其他節點-要求,以接收 要求; 供接收來自該網路之其他節,點的一資料接收 節點的一吨自七、辨哉何日”亥網路節點具有給該網路之另一 心,以及 訊息時,供6成乂:路即點具有給該網路之另-節點的-才供疋成處理所接收到之該接收資 忒δΚ息至該網路之另一節點。 、枓要求以傳运
    200409497 六 申請專利範圍 裝置,進一步包含一裝 該接收資料要求的一訊 ,如專禾J範圍第2 6項所述之 ’、疋该節點且有可接收因應 息的儲存資源。〃 · 士申明專利範圍第2 6或2 7項所述之裝置,進一步包含一 裝置,供準備〜儲存位置以接收因應該接收資料要求的一 訊息。 29·如申請專利範圍第26、27或28項所述之裝置,進一步包 合一裝罟,木 . ^ ^ §匈斷該節點於接收到一接收資料要求時,沒 省"浴欠1 尊ijl 5 士古 ^ _ μ要求之網路節點的一待傳訊息時,供暫停處 ^里热ί彳欠資料要求’直到該節點具有傳送至傳送該接收資 料要求的該節點的一訊息。 Ο Q 士口 1 ^ • °号刊範圍第2 6至2 9項中任一項所述之裝置,進一 步包含一裝罟 i ’供佇列欲傳送至其他網路節點的訊息。 31· 一種供於〜次= 一穿 貝料通訊網路之一節點使用的裝置,包含: 置;以ί置,供確定該節點具有可接收一訊息的一儲存位 求至該網:之ί::;儲存位置可用,傳送一接收資料要 m專專送利f圍第31項所述之裝置,進-步包含-裝 *.蚀ί接收資料要求至該網路之另一節點之前, 準備-儲存位置以接收因應」二之$即點之剛 33· —種供於—資料通訊路收^+要求的一訊息。 -裳置,供接收來至該網路一之即:使用的裝置,包含: 要求; 、、罔路之其他節點的一接收資料
    200409497 六、申請專利範圍 之網”點的=路節點是否具有欲傳送至該要求 一裝置,當判斷該〜 的一待傳訊息時,斬p、 即點沒有給該要求之啕& ^ -裝置,當該網路節心;貧料要求、及 待傳訊息時,完成該接收資料::該:求之網路節點的— 至s亥要求的網路節點。 之处理,以傳送該訊息 3 4. —種供於—資料通訊網路之— 一裝置,佴辨螂外扁、、, 即點使用的裝置,句八 一 >1 士番 '、σ日人傳送至該網路之其他節點沾 3 ·· 衣置,供判斷該網路節點曰二 卩.、、、έ的訊息; 另一節點的一未麥接跄次 ^疋否接收到來自該網路之 一狀 禾决接收貧料要求;以及之 一1置’當該網路節點沒有來 節點的-未決接收資料要求m;所:的該網路 求要收到末自该訊息所指的該網路節點的一接收資料要 一由種^路介面接口(p〇rt)或是轉接器(adapter),包含 口 "亥申請&專利範圍第26至34項中之任一所述之裝置。 3 6 ·如申明專利範圍第2 0至3 5項中之任一所述之系統或是裝 :、中β亥通訊網路使用光纖通道(Fibre channel)及/或 J ^•電^系、統介面通訊協定(Scsi communications protocols) 〇 3 7 士 卜、、 • ° 迷—之申請專利範圍所述之系統或是裝置,其中 该通訊網敗& QQ 略係為一分散儲存系統的一部分。 U 0 .—斧重雷B似 如程式元素(e 1 e m e n t ),包含電腦軟體程式碼部
    第43頁 200409497 六、申請專利範圍 分,供於該程式元素在一資料處理裝置中運作時,執行如 該申請專利範圍第1至1 9項中之任一所述之方法。 3 9. —種於一資料處理系統中傳送一訊息的方法,係實質如 前所述關於附圖中之任一者。 4 0. —種供於一資料通訊網路之一節點使用的裝置,係實質 如前所述關於附圖中之任一者。
    第44頁
TW092117395A 2002-11-29 2003-06-26 Data processing systems and a method and a recording media of transmitting a message in the data processing system TWI285039B (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GBGB0227871.1A GB0227871D0 (en) 2002-11-29 2002-11-29 DATA processing systems

Publications (2)

Publication Number Publication Date
TW200409497A true TW200409497A (en) 2004-06-01
TWI285039B TWI285039B (en) 2007-08-01

Family

ID=9948765

Family Applications (1)

Application Number Title Priority Date Filing Date
TW092117395A TWI285039B (en) 2002-11-29 2003-06-26 Data processing systems and a method and a recording media of transmitting a message in the data processing system

Country Status (9)

Country Link
US (3) US8812606B2 (zh)
EP (1) EP1566028A1 (zh)
JP (1) JP2006508599A (zh)
KR (1) KR20050083861A (zh)
CN (1) CN1703878A (zh)
AU (1) AU2003251057A1 (zh)
GB (1) GB0227871D0 (zh)
TW (1) TWI285039B (zh)
WO (1) WO2004051940A1 (zh)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0227871D0 (en) 2002-11-29 2003-01-08 Ibm DATA processing systems
JP4814617B2 (ja) * 2005-11-01 2011-11-16 株式会社日立製作所 ストレージシステム
US8340108B2 (en) * 2007-04-04 2012-12-25 International Business Machines Corporation Apparatus and method for switch zoning via fibre channel and small computer system interface commands
US8930527B2 (en) * 2009-05-26 2015-01-06 Oracle International Corporation High availability enabler
US8688816B2 (en) * 2009-11-19 2014-04-01 Oracle International Corporation High availability by letting application session processing occur independent of protocol servers
EP3167628B1 (en) 2014-07-10 2020-04-01 Telefonaktiebolaget LM Ericsson (publ) Methods and devices for signalling in a communication network
US10684965B2 (en) * 2017-11-08 2020-06-16 Advanced Micro Devices, Inc. Method to reduce write responses to improve bandwidth and efficiency
US10613996B2 (en) * 2018-05-03 2020-04-07 Arm Limited Separating completion and data responses for higher read throughput and lower link utilization in a data processing network
GR20180100189A (el) * 2018-05-03 2020-01-22 Arm Limited Δικτυο επεξεργασιας δεδομενων με συμπυκνωση ροης για μεταφορα δεδομενων μεσω streaming
US10310760B1 (en) 2018-05-21 2019-06-04 Pure Storage, Inc. Layering communication fabric protocols
US11954220B2 (en) 2018-05-21 2024-04-09 Pure Storage, Inc. Data protection for container storage
JP7074826B2 (ja) * 2020-11-18 2022-05-24 テレフオンアクチーボラゲット エルエム エリクソン(パブル) 通信ネットワークでのシグナリングのための方法およびデバイス

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02142275A (ja) 1988-11-24 1990-05-31 Canon Inc 画像通信方式
US4995056A (en) * 1989-01-13 1991-02-19 International Business Machines Corporation System and method for data communications
US5619544A (en) * 1994-06-03 1997-04-08 Texas Instruments Incorporated Universal asynchronous receive/transmit circuit with flow control
JP3454998B2 (ja) 1995-12-28 2003-10-06 株式会社東芝 通信システム
JP3228182B2 (ja) * 1997-05-29 2001-11-12 株式会社日立製作所 記憶システム及び記憶システムへのアクセス方法
US6345296B1 (en) * 1997-07-02 2002-02-05 Unisys Corporation Method system and computer program product for providing pull model data communication
US6144668A (en) * 1997-11-26 2000-11-07 International Business Machines Corporation Simultaneous cut through and store-and-forward frame support in a network device
US6463498B1 (en) * 1998-10-30 2002-10-08 Agilent Technologies, Inc. Transmission of FCP response in the same loop tenancy as the FCP data with minimization of inter-sequence gap
US6542961B1 (en) * 1998-12-22 2003-04-01 Hitachi, Ltd. Disk storage system including a switch
TW523672B (en) * 1999-04-23 2003-03-11 Via Tech Inc Bus system delayed transaction method and device applying the method
US8051197B2 (en) * 2002-03-29 2011-11-01 Brocade Communications Systems, Inc. Network congestion management systems and methods
US7139240B2 (en) * 2002-04-29 2006-11-21 Brocade Communications Systems, Inc. Frame-pull flow control in a fibre channel network
GB0227871D0 (en) 2002-11-29 2003-01-08 Ibm DATA processing systems

Also Published As

Publication number Publication date
US20140351314A1 (en) 2014-11-27
AU2003251057A1 (en) 2004-06-23
EP1566028A1 (en) 2005-08-24
US20050213607A1 (en) 2005-09-29
US9300730B2 (en) 2016-03-29
GB0227871D0 (en) 2003-01-08
US10044796B2 (en) 2018-08-07
CN1703878A (zh) 2005-11-30
JP2006508599A (ja) 2006-03-09
WO2004051940A1 (en) 2004-06-17
KR20050083861A (ko) 2005-08-26
TWI285039B (en) 2007-08-01
US8812606B2 (en) 2014-08-19
US20160191615A1 (en) 2016-06-30

Similar Documents

Publication Publication Date Title
US10044796B2 (en) Method and system for transmitting an application message between nodes of a clustered data processing system
JP4624110B2 (ja) 2つまたはそれ以上の機械の間でデータベース動作を行なうための直接メモリアクセスの用法
CN106411767B (zh) 通过远程直接存储器访问的传输操作的方法、系统和介质
US7200641B1 (en) Method and system for encoding SCSI requests for transmission using TCP/IP
EP0317466B1 (en) Reverse flow control mechanism and method
US20080155145A1 (en) Discovery of a Bridge Device in a SAS Communication System
CN101827019B (zh) 网络接口设备
JP2002512766A (ja) 第1のプロトコルから第2のプロトコルへのデータ転送方法及び装置
KR20040012876A (ko) 호스트 컴퓨터 시스템과 이더넷 어댑터 사이의 데이터 이송
JP2008086027A (ja) 遠隔要求を処理する方法および装置
JP2002149592A (ja) ネットワーク上でのpciブリッジ
TW583543B (en) Infiniband work and completion queue management via head only circular buffers
US7460531B2 (en) Method, system, and program for constructing a packet
EP0317481B1 (en) Remote storage management mechanism and method
US8065401B2 (en) Systems and methods for frame ordering in wide port SAS connections
US7159010B2 (en) Network abstraction of input/output devices
JPH07168774A (ja) 無接続セッション指向プロトコルの第1メッセージの生成システム及び方法
US7383312B2 (en) Application and verb resource management
JPH0786867B2 (ja) 作業フロー制御方法、作業要求フロー制御方法及び装置、並びに通信管理装置
EP1537700A2 (en) Protocol for accessing a local device of a remote node via infiniband
US7085869B1 (en) Arrangement for managing transmitted packets requiring acknowledgement in a host channel adapter
US20090271802A1 (en) Application and verb resource management
JPH10143486A (ja) 並列計算機におけるデータ送受信方法
SRP Working T10 Draft Project 1415-D

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees