TWI635720B - Control method of server system - Google Patents

Control method of server system Download PDF

Info

Publication number
TWI635720B
TWI635720B TW105138597A TW105138597A TWI635720B TW I635720 B TWI635720 B TW I635720B TW 105138597 A TW105138597 A TW 105138597A TW 105138597 A TW105138597 A TW 105138597A TW I635720 B TWI635720 B TW I635720B
Authority
TW
Taiwan
Prior art keywords
server
nth
signal
notification signal
host
Prior art date
Application number
TW105138597A
Other languages
Chinese (zh)
Other versions
TW201820822A (en
Inventor
陳嘉祥
Original Assignee
英業達股份有限公司
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 英業達股份有限公司 filed Critical 英業達股份有限公司
Priority to TW105138597A priority Critical patent/TWI635720B/en
Publication of TW201820822A publication Critical patent/TW201820822A/en
Application granted granted Critical
Publication of TWI635720B publication Critical patent/TWI635720B/en

Links

Landscapes

  • Hardware Redundancy (AREA)

Abstract

一種伺服器系統之控制方法,包含一主機伺服器發送一第1重置訊號到一第1伺服器,該第1伺服器發送一第2重置訊號到一第2伺服器,依此類推,直至一第(n-1)伺服器發送一第n重置訊號到一第n伺服器。該第n伺服器執行該第n伺服器的系統啟動,完成後回傳一第1通知訊號到該第(n-1)伺服器;該第(n-1)伺服器收到該第1通知訊號後,執行該第(n-1)伺服器的系統啟動,完成後回傳一第2通知訊號到該第(n-2)伺服器,依此類推,直至該第1伺服器收到一第(n-1)通知訊號後,執行該第1伺服器的系統啟動,完成後回傳一第n通知訊號到該主機伺服器。A method for controlling a server system, comprising: a host server sending a first reset signal to a first server, the first server sending a second reset signal to a second server, and so on, Until an (n-1)th server sends an nth reset signal to an nth server. The nth server executes the system startup of the nth server, and returns a first notification signal to the (n-1)th server after completion; the (n-1)th server receives the first notification After the signal, the system of the (n-1)th server is started, and after returning, a second notification signal is sent back to the (n-2)th server, and so on, until the first server receives a message. After the (n-1)th notification signal, the system executing the first server is started, and after the completion, an nth notification signal is sent back to the host server.

Description

伺服器系統之控制方法Server system control method

本發明係關於一種伺服器系統之控制方法,尤指一種適用於多級數串接結構的伺服器系統的控制方法。The invention relates to a control method of a server system, in particular to a control method of a server system suitable for a multi-stage serial connection structure.

於先前技術中,可允許主機伺服器連接於複數台外接伺服器串接之伺服器系統,以達成鏈狀結構。舉例而言,非刀鋒伺服器之系統常運用此鏈狀結構。第1圖係先前技術中,鏈狀結構的伺服器系統100的示意圖。主機伺服器110可連結外接伺服器120a至120d,其中外接伺服器120a至120d是依序連結為鏈狀結構。In the prior art, the host server can be allowed to connect to a plurality of server systems in which the external servers are serially connected to achieve a chain structure. For example, systems with non-blade servers often use this chain structure. Figure 1 is a schematic illustration of a prior art servo system 100 of chain structure. The host server 110 can be connected to the external servers 120a to 120d, wherein the external servers 120a to 120d are sequentially connected in a chain structure.

主機伺服器110可透過各級外接伺服器120a-120d之介面卡,逐級傳送重置訊號Sa至Sd,使各級外接伺服器120a-120d依序由待機狀態進入操作狀態,例如,將外接伺服器內的功能單元予以啟動。此種操作方式中,由於重置訊號Sa至Sd係於串列中逐級轉發,最後一級的外接伺服器(如120d)將會最後接收到前述之重置訊號(如Sd)。因此,可能發生最後一級之外接伺服器120d尚未接收到重置訊號Sd,亦尚未將其功能單元啟動,但主機伺服器110之偵測時間已達,故主機伺服器110已啟動,從而導致主機伺服器110與外接伺服器無法正常連線。The host server 110 can transmit the reset signals Sa to Sd step by step through the interface cards of the external servers 120a-120d, so that the external servers 120a-120d can sequentially enter the operating state from the standby state, for example, externally. The functional unit in the server is activated. In this mode of operation, since the reset signals Sa to Sd are forwarded in the series, the external server (such as 120d) of the last stage will finally receive the aforementioned reset signal (such as Sd). Therefore, it may happen that the last-stage external server 120d has not received the reset signal Sd, and has not yet started its functional unit, but the detection time of the host server 110 has reached, so the host server 110 has been started, thereby causing the host The server 110 and the external server cannot be properly connected.

當主機伺服器先行偵測外接伺服器之存在,連線時主機伺服器卻偵測不到外接伺服器,可能是因重置訊號之傳送有誤,而使外接伺服器未順利系統啟動,此將導致主機伺服器無法正常執行伺服器系統之開機。When the host server detects the existence of the external server first, the host server does not detect the external server when the connection is made. The reset signal may be sent incorrectly, and the external server does not start successfully. This will cause the host server to fail to boot the server system properly.

因此,本領域實須通用的解決方案,以改善鏈狀結構的伺服器系統之操作問題。Therefore, there is a need in the art for a general solution to improve the operational problems of a chain-like server system.

本發明之一實施例提供一種伺服器系統之控制方法,包含一主機伺服器發送一第1重置訊號至一第1伺服器;當一第i伺服器由一第(i-1)伺服器接收到一第i重置訊號後,該第i伺服器發送一第(i+1)重置訊號到一第(i+1)伺服器;當一第n伺服器接收到一第n重置訊號後,執行該第n伺服器之一系統啟動操作;於完成該第n伺服器之該系統啟動操作後,該第n伺服器回傳一第1通知訊號至該第(n-1)伺服器;當一第(n-k)伺服器從一第(n-k+1)伺服器接收到一第k通知訊號後,執行該第(n-k)伺服器之一系統啟動操作;於完成該第(n-k)伺服器之該系統啟動操作後,該第(n-k)伺服器發送一第(k+1)通知訊號至一第(n-k-1)伺服器;當該第1伺服器從一第2伺服器接收一第(n-1)通知訊號後,執行該第1伺服器之一系統啟動操作;及於完成該第1伺服器之該系統啟動操作後,該第1伺服器發送一第n通知訊號至該主機伺服器;其中1<i<n,0<k<(n-1),且i、k及n係正整數。本發明關聯於一種伺服器系統之操作方法,可有效解決現行物聯網架構中鏈狀多級數串接伺服器控制之缺陷。An embodiment of the present invention provides a method for controlling a server system, including: a host server sends a first reset signal to a first server; and an ith server is provided by an (i-1) server. After receiving an ith reset signal, the i-th server sends an (i+1)th reset signal to an (i+1)th server; when an nth server receives an nth reset After the signal, performing a system startup operation of the nth server; after completing the system startup operation of the nth server, the nth server returns a first notification signal to the (n-1)th servo After a (nk) server receives a kth notification signal from an (n-k+1)th server, performing a system startup operation of the (nk) server; Nk) After the system of the server is started, the (nk) server sends a (k+1) notification signal to a (nk-1) server; when the first server is from a second servo After receiving an (n-1)th notification signal, the system performs a system startup operation of the first server; and after completing the system startup operation of the first server, the first server sends a nth notification News Number to the host server; where 1<i<n, 0<k<(n-1), and i, k, and n are positive integers. The invention relates to a method for operating a server system, which can effectively solve the defects of the chain multi-stage serial server control in the current Internet of Things architecture.

第2圖及第3圖是本發明實施例的伺服器系統200的示意圖。此處將伺服器系統200以兩圖表示,係為便於說明下文所述的控制方法。伺服器系統200可包含主機伺服器210,以及外接的伺服器2201至220n,共n部外接的伺服器。伺服器系統200可為串接的鏈狀結構。此處所示的伺服器編號,舉例而言,伺服器2201係指外接的第1伺服器,即最接近主機伺服器210的外接伺服器,2202係指外接的第2伺服器,以此類推。此表示方式於下文同理,不另贅述。2 and 3 are schematic views of a server system 200 in accordance with an embodiment of the present invention. The server system 200 is shown here in two figures for ease of illustration of the control methods described below. The server system 200 can include a host server 210, and external servers 2201 to 220n, a total of n externally connected servers. The server system 200 can be a chain structure that is connected in series. The server number shown here is, for example, the server 2201 refers to the external first server, that is, the external server closest to the host server 210, the 2202 refers to the external second server, and so on. . This representation is similar in the following, and will not be further described.

第4圖係本發明實施例中,伺服器系統200的控制方法400的流程圖。控制方法400可包含:4 is a flow chart of a control method 400 of the server system 200 in an embodiment of the present invention. Control method 400 can include:

步驟402:主機伺服器210可發送第1重置訊號R1至伺服器2201;Step 402: The host server 210 can send the first reset signal R1 to the server 2201;

步驟404:當伺服器220i由伺服器200(i-1)接收到第i重置訊號Ri後,伺服器220i可發送第(i+1)重置訊號R(i+1)到伺服器220(i+1);Step 404: After the server 220i receives the ith reset signal Ri from the server 200(i-1), the server 220i may send the (i+1)th reset signal R(i+1) to the server 220. (i+1);

步驟406:當伺服器220n接收到第n重置訊號Rn後,可執行伺服器220n之系統啟動操作;Step 406: After the server 220n receives the nth reset signal Rn, the system startup operation of the server 220n may be performed;

步驟408:完成伺服器220n之系統啟動操作後,伺服器220n可回傳第1通知訊號A1至伺服器220(n-1);Step 408: After completing the system startup operation of the server 220n, the server 220n may return the first notification signal A1 to the server 220 (n-1);

步驟410:當伺服器220(n-k)從伺服器220(n-k+1)接收到第k通知訊號Ak後,可執行伺服器220(n-k)之系統啟動操作;Step 410: After the server 220 (n-k) receives the kth notification signal Ak from the server 220 (n-k+1), the system startup operation of the server 220 (n-k) may be performed;

步驟412:完成伺服器220(n-k)之系統啟動操作後,伺服器220(n-k) 可發送第(k+1)通知訊號A(k+1)至伺服器220(n-k-1);Step 412: After completing the system startup operation of the server 220 (n-k), the server 220 (n-k) may send the (k+1) notification signal A(k+1) to the server 220 (n-k-1);

步驟414:當伺服器2201從伺服器2202接收第(n-1)通知訊號A(n-1)後,可執行伺服器2201之系統啟動操作;Step 414: After the server 2201 receives the (n-1)th notification signal A(n-1) from the server 2202, the system startup operation of the server 2201 may be performed;

步驟416:完成伺服器2201之系統啟動操作後,伺服器2201可發送第n通知訊號An至主機伺服器210;Step 416: After completing the system startup operation of the server 2201, the server 2201 may send the nth notification signal An to the host server 210;

步驟418:主機伺服器210是否於預定時段內收到第n通知訊號An?若是,進入步驟422;若否,進入步驟420;Step 418: Does the host server 210 receive the nth notification signal An within a predetermined time period? If yes, go to step 422; if no, go to step 420;

步驟420:可重新發送第1重置訊號R1至伺服器2201,進入步驟404;Step 420: The first reset signal R1 can be resent to the server 2201, and the process proceeds to step 404;

步驟422:主機伺服器210可控制伺服器2201至伺服器220n。Step 422: The host server 210 can control the server 2201 to the server 220n.

其中,1<i<n,0<k<(n-1),且i、k及n係正整數。上述的步驟404係敘述伺服器2202至伺服器220(n-1)傳遞重置訊號之操作,且上述的步驟410、412係敘述伺服器220(n-1)至伺服器2202回傳通知訊號之操作。上述的步驟402至406可參照第2圖,步驟408至416可參照第3圖。Where 1<i<n, 0<k<(n-1), and i, k and n are positive integers. The above step 404 is to describe the operation of the server 2202 to the server 220 (n-1) to transmit the reset signal, and the above steps 410 and 412 are to describe the return of the notification signal from the server 220 (n-1) to the server 2202. Operation. The above steps 402 to 406 can refer to FIG. 2, and steps 408 to 416 can refer to FIG.

步驟404中,藉由調整變數i的值,可表示逐級地從伺服器2201發送第2重置訊號R2到伺服器2202,從伺服器2202發送第3重置訊號R3到伺服器2203…直至從伺服器220(n-1)發送第n重置訊號Rn到伺服器220n。其中,伺服器220i 係接收到第i重置訊號Ri後,才對應地發送第(i+1)重置訊號R(i+1)。步驟406中,因伺服器220n係鏈狀結構的最末級,故於接收到重置訊號Rn後,可執行伺服器220n的系統啟動操作。關於系統啟動操作之細節,將述於後文。步驟408至414中,係描述伺服器220n至伺服器2202中的一伺服器,可於接收到後一級伺服器回傳的通知訊號後,執行系統啟動操作,並於完成系統啟動操作後,回傳通知訊號至前一級伺服器。舉例而言,當伺服器2205完成伺服器2205之系統啟動操作後,伺服器2205可往前回傳通知訊號A(n-4)至伺服器2204,以通知伺服器2204執行伺服器2204之系統啟動操作,此例中提及的通知訊號A(n-4),其計算方式可參考上述的步驟312為,算式可為:n-k=5,故(k+1) = (n-5+1) = (n-4),再予以代入。換言之,當伺服器執行系統啟動操作完成後,會通知較接近主機伺服器之前一級伺服器執行系統啟動操作,以此類推。因此,當伺服器2201的系統啟動操作完成,伺服器2201可發送通知訊號An至主機伺服器210。於步驟418,若主機伺服器210於預定時段內可確收到通知訊號An,則主機伺服器210可確認外接的伺服器2201到220n皆已完成系統啟動操作,可進入步驟422由主機伺服器210控制伺服器2201至220n,從而控制伺服器系統200。根據本發明實施例,於步驟422,主機伺服器210可執行系統啟動操作,及控制伺服器2201至220n的系統啟動操作之狀態,例如控制伺服器2201至220n的重置腳位之解除狀態、外設組件互連快捷(Peripheral Component Interconnect Express;PCIe)介面卡之狀態等。於步驟418,若主機伺服器210於預定時段內並無收到通知訊號An,則可判定外接的伺服器2201至220n中,至少一伺服器的系統啟動操作失敗,故主機伺服器210可執行步驟420、步驟404及其後續步驟,以重新觸發伺服器2201至220n的系統啟動操作。In step 404, by adjusting the value of the variable i, it can be expressed that the second reset signal R2 is sent from the server 2201 to the server 2202 step by step, and the third reset signal R3 is sent from the server 2202 to the server 2203. The nth reset signal Rn is sent from the server 220 (n-1) to the server 220n. The server 220i receives the (i+1)th reset signal R(i+1) correspondingly after receiving the ith reset signal Ri. In step 406, since the server 220n is the last stage of the chain structure, after receiving the reset signal Rn, the system startup operation of the server 220n can be performed. Details on the system startup operation will be described later. Steps 408 to 414 describe a server in the server 220n to the server 2202, and after receiving the notification signal sent back by the server of the latter stage, perform a system startup operation, and after completing the system startup operation, return Send the notification signal to the previous level server. For example, after the server 2205 completes the system startup operation of the server 2205, the server 2205 can forward the notification signal A(n-4) to the server 2204 to notify the server 2204 to execute the system of the server 2204. Start operation, the notification signal A(n-4) mentioned in this example, the calculation method can refer to the above step 312, the formula can be: nk=5, so (k+1) = (n-5+1 ) = (n-4), then substituting. In other words, when the server performs the system startup operation, it will notify the first-level server to perform the system startup operation before the host server is closer, and so on. Therefore, when the system startup operation of the server 2201 is completed, the server 2201 can send the notification signal An to the host server 210. In step 418, if the host server 210 can receive the notification signal An within the predetermined time period, the host server 210 can confirm that the external servers 2201 to 220n have completed the system startup operation, and can proceed to step 422 by the host server. The servers 2201 to 220n are controlled to control the server system 200. According to an embodiment of the present invention, in step 422, the host server 210 can perform a system startup operation, and control the state of the system startup operation of the servers 2201 to 220n, for example, the release status of the reset pins of the control servers 2201 to 220n, Peripheral Component Interconnect Express (PCIe) interface card status. In step 418, if the host server 210 does not receive the notification signal An within the predetermined time period, it can be determined that at least one of the external servers 2201 to 220n fails to start the system, so the host server 210 can execute Step 420, step 404, and subsequent steps thereof, to re-trigger the system startup operations of the servers 2201 through 220n.

步驟418提及的預定時段,可使用計時器於步驟402開始計時,該預定時段可為一較長的時段,故當超過該預定時段仍尚未收到通知訊號An,可較為確定伺服器2201至220n並未成功執行系統啟動操作。根據本發明實施例,所述的計時器可為看門狗(watch dog)計時器,或其他適宜的計時電路。The predetermined time period mentioned in step 418 may be started using a timer in step 402. The predetermined time period may be a longer time period. Therefore, when the notification signal An has not been received yet, the server 2201 may be determined to be more 220n did not successfully perform the system startup operation. According to an embodiment of the invention, the timer may be a watch dog timer, or other suitable timing circuit.

根據本發明的實施例,上述的伺服器之系統啟動操作,可例如為將伺服器的重置腳位(reset pin)由致能準位調整為失能準位(例如由1調整為0,或反之),以使伺服器220n由待機模式進入操作模式。此設定亦可稱為重置解除(reset release)或重置(reset de-assertion)。舉例而言,所述的待機模式可為伺服器內的控制單元以待機(stand-by)電源維持操作,但伺服器內的功能單元暫無法存取;所述的操作模式可為伺服器內的控制單元及功能單元可以操作電源供電,且啟動一組功能單元使其可正常執行存取、操作。此處所述的伺服器內之控制單元可例如(但不限於)為複雜可程式邏輯裝置(Complex Programmable Logic Device; CPLD),所述的功能單元可例如(但不限於)為外設組件互連快捷(Peripheral Component Interconnect Express;PCIe)單元、平台控制器(Platform Controller Hub;PCH)單元,及/或中央處理單元(central processing unit;CPU)。當一伺服器無法於系統啟動操作時啟動功能單元,可根據供電順序(power sequence)重新供電,以藉由電源重啟,啟動功能單元,從而完成該伺服器的系統啟動操作。According to the embodiment of the present invention, the system startup operation of the server may be, for example, adjusting the reset pin of the server from the enable level to the disabling level (for example, from 1 to 0, Or vice versa, to cause the server 220n to enter the operational mode from the standby mode. This setting can also be called reset release or reset de-assertion. For example, the standby mode may be that the control unit in the server maintains a standby-by-power supply, but the functional unit in the server is temporarily unavailable; the operation mode may be in the server. The control unit and the functional unit can operate the power supply and activate a set of functional units to enable normal access and operation. The control unit in the server described herein may be, for example but not limited to, a Complex Programmable Logic Device (CPLD), and the functional unit may be, for example but not limited to, a peripheral component A Peripheral Component Interconnect Express (PCIe) unit, a Platform Controller Hub (PCH) unit, and/or a central processing unit (CPU). When a server cannot start the function unit during the system startup operation, it can be re-powered according to the power sequence to restart the function unit by the power supply restart, thereby completing the system startup operation of the server.

根據本發明一實施例,於步驟408中,當伺服器220n完成伺服器220n之系統啟動操作,可為於伺服器220n收到重置訊號Rn時,再經過一段對應於伺服器220n的預定時間(可稱之為第n預定時段),伺服器220n才傳送第1通知訊號A1到伺服器220(n-1)。此第n預定時段可等於、或長於伺服器220n執行系統啟動操作預計所須的時間長度,故可確保伺服器220(n-1)收到通知訊號A1時,伺服器220n已完成其系統啟動操作。根據本發明另一實施例,步驟408可包含伺服器220n接收到第n重置訊號Rn時,再經過前述的第n預定時段,且完成伺服器n之系統啟動操作(例如,將所有功能單元予以啟動,並以數位電路控制產生檢查訊號)後,伺服器n才回傳第1通知訊號A1至伺服器220(n-1)。此可更確保伺服器220n已完成其系統啟動操作。According to an embodiment of the present invention, in step 408, when the server 220n completes the system startup operation of the server 220n, the server 220n may receive a reset signal Rn and then pass a predetermined time corresponding to the server 220n. (It may be referred to as the nth predetermined time period), and the server 220n transmits the first notification signal A1 to the server 220 (n-1). The nth predetermined time period may be equal to, or longer than, the length of time required by the server 220n to perform the system startup operation, thereby ensuring that the server 220n has completed its system startup when the server 220(n-1) receives the notification signal A1. operating. According to another embodiment of the present invention, step 408 may include the server 220n receiving the nth reset signal Rn, passing the aforementioned nth predetermined time period, and completing the system startup operation of the server n (for example, all functional units) After being activated and the check signal is generated by the digital circuit control, the server n returns the first notification signal A1 to the server 220 (n-1). This can further ensure that the server 220n has completed its system startup operation.

同理,根據本發明實施例,於步驟412,可為伺服器220(n-k)接收到第k通知訊號Ak時,再經過一對應於伺服器220(n-k)的預定時間(可稱之為第(n-k)預定時段),伺服器220(n-k)才回傳第(k+1)通知訊號A(k+1),以確保伺服器(n-k-1)收到第(k+1)通知訊號A(k+1)時,伺服器220(n-k)已完成其系統啟動操作。第(n-k)預定時段可設定為比伺服器220(n-k)的系統啟動操作所預計的時段更長。根據本發明另一實施例,步驟412可包含於伺服器220 (n-k)接收到第k通知訊號Ak時,再經過第(n-k)預定時段,且完成伺服器220 (n-k)之系統啟動操作後(例如透過檢查訊號予以確認),伺服器220 (n-k)才發送回傳第(k+1)通知訊號A(k+1)至伺服器220(n-k-1)。此可更確保伺服器220(n-k)的系統啟動操作確已完成。此處所述的伺服器220(n-k)可包含第2-3圖所示的伺服器2202至220(n-1)。In the same manner, in step 412, when the server 220 (nk) receives the kth notification signal Ak, it may pass a predetermined time corresponding to the server 220 (nk) (may be called the first (nk) the predetermined time period), the server 220 (nk) returns the (k+1) notification signal A(k+1) to ensure that the server (nk-1) receives the (k+1) notification signal. At A(k+1), the server 220 (nk) has completed its system startup operation. The (n-k)th predetermined period may be set to be longer than the period expected by the system startup operation of the server 220 (n-k). According to another embodiment of the present invention, step 412 may include when the server 220 (nk) receives the kth notification signal Ak, and then passes the (nk) predetermined time period, and after the system startup operation of the server 220 (nk) is completed. (For example, by checking the signal to confirm), the server 220 (nk) sends the return (k+1) notification signal A(k+1) to the server 220 (nk-1). This makes it possible to ensure that the system startup operation of the server 220 (n-k) is indeed completed. The server 220 (n-k) described herein may include the servers 2202 to 220(n-1) shown in FIGS. 2-3.

同理,根據本發明實施例,於步驟416,可為於伺服器2201接收到第(n-1)通知訊號A(n-1)時再經過對應於伺服器2201的第1預定時段,伺服器2201才發送第n通知訊號An至主機伺服器210。根據本發明另一實施例,步驟416可為於伺服器2201接收到第(n-1)通知訊號A(n-1)時再經過對應於伺服器2201的第1預定時段,且伺服器2201確認完成其系統啟動操作(例如產生一檢查訊號,或其他電路可實現的確認方式),伺服器2201才傳送第n通知訊號An到主機伺服器210。In the same manner, in step 416, the server may receive the (n-1)th notification signal A(n-1) and then pass the first predetermined time period corresponding to the server 2201. The device 2201 sends the nth notification signal An to the host server 210. According to another embodiment of the present invention, step 416 may be when the server 2201 receives the (n-1)th notification signal A(n-1) and then passes the first predetermined time period corresponding to the server 2201, and the server 2201 The server 2201 transmits the nth notification signal An to the host server 210 after confirming that its system startup operation is completed (for example, a check signal is generated, or a confirmation mode achievable by other circuits).

上述的第n預定時段、第(n-k)預定時段及第1預定時段,可於伺服器內設置看門狗計時器予以計時。The nth predetermined time period, the (n-k)th predetermined time period, and the first predetermined time period may be set in the server to be timed.

第5圖及第6圖係本發明另一實施例的伺服器系統200的示意圖,用以配合第7圖之敘述。第7圖是本發明實施例的控制方法400可另包含的步驟流程圖。5 and 6 are schematic views of a server system 200 in accordance with another embodiment of the present invention for use in conjunction with the description of FIG. FIG. 7 is a flow chart of steps that may be further included in the control method 400 of the embodiment of the present invention.

控制方法400可另包含下列步驟:Control method 400 can additionally include the following steps:

步驟710:主機伺服器210發送級數計算訊號S1至伺服器2201;Step 710: The host server 210 sends the number of stages calculation signal S1 to the server 2201;

步驟712:當伺服器220i接收到伺服器220(i-1)傳來之級數計算訊號Si後,伺服器220i發送級數計算訊號S(i+1)到伺服器220(i+1);Step 712: After the server 220i receives the series calculation signal Si from the server 220 (i-1), the server 220i sends the series calculation signal S(i+1) to the server 220 (i+1). ;

步驟714:當伺服器220n接收到伺服器220(n-1)傳來之級數計算訊號Sn後,伺服器220n發送級數回覆訊號C1到第(n-1)伺服器;Step 714: After the server 220n receives the series calculation signal Sn from the server 220 (n-1), the server 220n sends the level reply signal C1 to the (n-1)th server;

步驟716:當伺服器220(n-k)接收到伺服器220(n-k+1)傳來之級數回覆訊號Ck後,發送級數回覆訊號C(k+1)至伺服器220(n-k-1);Step 716: After the server 220 (nk) receives the level reply signal Ck from the server 220 (n-k+1), it sends a series reply signal C(k+1) to the server 220 (nk- 1);

步驟718:當伺服器2201接收到伺服器2202傳來之級數回覆訊號C(n-1)後,發送級數回覆訊號Cn至主機伺服器210;Step 718: After the server 2201 receives the level reply signal C(n-1) sent from the server 2202, the level reply signal Cn is sent to the host server 210;

步驟720:伺服器220(n-k)根據級數回覆訊號Ck產生伺服器220(n-k)應接收到通知訊號Ak的時間T(n-k);Step 720: The server 220 (n-k) generates a time T(n-k) that the server 220 (n-k) should receive the notification signal Ak according to the level reply signal Ck;

步驟722:伺服器2201根據級數回覆訊號C(n-1)產生伺服器2201應接收到通知訊號A(n-1)的時間T1;Step 722: The server 2201 generates a time T1 when the server 2201 should receive the notification signal A(n-1) according to the series reply signal C(n-1);

步驟724:主機伺服器210根據級數回覆訊號Cn產生主機伺服器210應接收到通知訊號An的時間Th;Step 724: The host server 210 generates a time Th when the host server 210 should receive the notification signal An according to the level reply signal Cn.

步驟726:主機伺服器210於應接收到通知訊號An的時間內,已接收到通知訊號An?若是,進入步驟422;若否,進入步驟402 。Step 726: The host server 210 has received the notification signal An within the time when the notification signal An should be received. If yes, go to step 422; if no, go to step 402.

步驟710至712可參照第5圖,步驟714至726可參照第6圖。其中,1<i<n,0<k<(n-1),且i、k及n係正整數,故步驟720所述的伺服器220(n-k)可包含第6圖、第7圖所示的伺服器2202至220(n-1)。Steps 710 to 712 can refer to FIG. 5, and steps 714 to 726 can refer to FIG. Wherein, 1<i<n, 0<k<(n-1), and i, k, and n are positive integers, so the server 220 (nk) described in step 720 may include FIG. 6 and FIG. The servers 2202 to 220 (n-1) are shown.

根據本發明實施例,上述步驟710可於步驟402前/後執行,或透過與第1重置訊號R1相異的路徑(例如另一匯流排或輸入輸出埠)傳送級數計算訊號S1,以使步驟710與步驟402同步執行。步驟710至726,係用以使各級伺服器確認其係鏈狀結構伺服器系統中的相對級數。According to the embodiment of the present invention, the foregoing step 710 may be performed before/after the step 402, or by transmitting a series calculation signal S1 through a path different from the first reset signal R1 (for example, another bus or input/output port). Step 710 is performed in synchronization with step 402. Steps 710 to 726 are used to cause the various stages of the server to confirm the relative number of stages in the chained structure server system.

第8圖係第5、6圖的伺服器系統200於n=5之示意圖。第8圖係用以便於說明。舉例而言,當共有5部外接伺服器(對應於上文,即n=5),則主機伺服器210可外接於伺服器2201至2205,根據第7圖的流程,可依序發送級數計算訊號S1至S5到伺服器2201至2205,再由伺服器2205逐級回傳級數回覆訊號C1至C5,以使主機伺服器220收到級數回覆訊號C5。逐級回傳的級數回覆訊號C1至C5,其格式可例如為一組數碼,且於檔頭執行逐級加1之操作,從而使收到級數回覆訊號C2的伺服器2203,可由伺服器2203內的控制單元(如CPLD)得知伺服器2203係5級外接伺服器中的倒數第3級。因此,伺服器2203內的控制單元可預估伺服器2203收到通知訊號A2的合理時間長度,可為發送重置訊號R4之時點,加上伺服器2204、2205執行系統啟動操作所須的時間,再加上一合理的緩衝值,故可求得伺服器2203應接收到通知訊號A2的時間T3,其中T3可為一時點。Figure 8 is a schematic diagram of server system 200 of Figures 5 and 6 at n=5. Figure 8 is for ease of explanation. For example, when there are 5 external servers (corresponding to the above, ie, n=5), the host server 210 can be externally connected to the servers 2201 to 2205, and the number of stages can be sequentially transmitted according to the flow of FIG. The signals S1 to S5 are calculated to the servers 2201 to 2205, and the server 2205 returns the series reply signals C1 to C5 step by step, so that the host server 220 receives the series reply signal C5. The step-by-step number of times of replying signals C1 to C5 can be, for example, a set of numbers, and the step of adding 1 to the step is performed, so that the server 2203 that receives the number of times to reply the signal C2 can be served by the servo. The control unit (e.g., CPLD) in the device 2203 knows that the server 2203 is the third to last in the five-stage external server. Therefore, the control unit in the server 2203 can estimate the reasonable length of time that the server 2203 receives the notification signal A2, which can be the time when the reset signal R4 is sent, plus the time required for the server 2204, 2205 to perform the system startup operation. With a reasonable buffer value, the time T3 at which the server 2203 should receive the notification signal A2 can be obtained, where T3 can be a moment.

根據本發明實施例,若伺服器220(n-k)於應接收到第k通知訊號Ak的時間(可表示為T(n-k))尚未接收到第k通知訊號Ak,伺服器220(n-k)可執行伺服器220(n-k)之系統啟動操作。以第8圖舉例而言,若伺服器2203於時間T3已達,卻仍未收到通知訊號A2,則可推測伺服器2204及/或2205的系統啟動操作未成功,根據本發明實施例,伺服器2203雖未收到通知訊號A2,仍可自行執行系統啟動操作,並於伺服器2203的系統啟動操作完成後,發送通知訊號A3至伺服器2202。若伺服器2202、2201的系統啟動操作成功且訊號傳輸順利,可成功傳送通知訊號A5至主機伺服器210,則可使主機伺服器210伺服器確認外接的伺服器2203、2202、2201已順利執行系統啟動操作。於此示例中,主機伺服器210可僅使用已確認可用的伺服器2203、2202、2201,執行後續工作,例如執行平台重置(platform reset)以進行伺服器系統的開機程序,及執行後續的資料運算等。至於伺服器2203之後的其餘伺服器(如2204、2205),在此例中則可不予使用。According to the embodiment of the present invention, if the server 220 (nk) has not received the kth notification signal Ak at the time when the kth notification signal Ak should be received (which can be expressed as T(nk)), the server 220 (nk) can execute The system of server 220 (nk) initiates operation. For example, in the eighth diagram, if the server 2203 has reached the time T3 but has not received the notification signal A2, it can be inferred that the system startup operation of the server 2204 and/or 2205 is unsuccessful, according to an embodiment of the present invention, Although the server 2203 does not receive the notification signal A2, the system startup operation can be performed by itself, and after the system startup operation of the server 2203 is completed, the notification signal A3 is sent to the server 2202. If the system startup operation of the servers 2202 and 2201 is successful and the signal transmission is successful, the notification signal A5 can be successfully transmitted to the host server 210, so that the host server 210 server can confirm that the external servers 2203, 2202, and 2201 have been successfully executed. The system starts the operation. In this example, the host server 210 may perform subsequent operations using only the servers 2203, 2202, 2201 that have been confirmed to be available, such as performing a platform reset to perform the boot process of the server system, and performing subsequent operations. Data calculations, etc. The remaining servers (such as 2204, 2205) after the server 2203 may not be used in this example.

經採用本發明實施例提供的伺服器系統及控制方法,可有效使主機伺服器確保其外接的伺服器串列之各伺服器已正常執行系統啟動操作(例如已暖開機),故可避免伺服器系統執行開機或其他控制操作時,外接的伺服器之功能單元尚未預備完成。本發明實施例提供的控制方法可適用於菊狀鏈(daisy chain)結構或類似結構的伺服器系統,對於改善先前技術的缺失,及減少主機伺服器控制的失敗率,實有助益。 以上所述僅為本發明之較佳實施例,凡依本發明申請專利範圍所做之均等變化與修飾,皆應屬本發明之涵蓋範圍。By using the server system and the control method provided by the embodiment of the present invention, the host server can effectively ensure that each server of the external server serial array has normally performed a system startup operation (for example, warm boot), thereby avoiding the servo. When the system is powered on or other control operations, the functional unit of the external server is not ready. The control method provided by the embodiment of the present invention can be applied to a daisy chain structure or a similarly structured server system, which is helpful for improving the lack of prior art and reducing the failure rate of host server control. The above are only the preferred embodiments of the present invention, and all changes and modifications made to the scope of the present invention should be within the scope of the present invention.

100、200‧‧‧伺服器系統
110、210‧‧‧主機伺服器
120a、120b、120c、120d‧‧‧外接伺服器
Sa、Sb、Sc、Sd、R1、R2、R3、R4、R5、R(i-1)、Ri、R(i+1)、R(n-1)、Rn‧‧‧重置訊號
2201、2202、220(i-1)、220i、220(i+1)、220(n-1)、220n、220(n-k+1)、220(n-k)、220(n-k-1)‧‧‧伺服器
A1、A2、A3、A4、A5、Ak、A(k+1)、A(k+2)、A(n-1)、An‧‧‧通知訊號
S1、S2、S3、S4、S5、Si、S(i+1)、Sn‧‧‧級數計算訊號
C1、C2、C3、C4、C5、Ck、C(k+1)、C(k+2)、 C(n-1)、Cn‧‧‧級數確認訊號
Th、T1、T2、T3、T(n-k)、T(n-1)‧‧‧時間
400‧‧‧控制方法
402至422、710至720‧‧‧步驟
100, 200‧‧‧ server system
110, 210‧‧‧ host server
120a, 120b, 120c, 120d‧‧‧ external server
Sa, Sb, Sc, Sd, R1, R2, R3, R4, R5, R(i-1), Ri, R(i+1), R(n-1), Rn‧‧‧ reset signal
2201, 2202, 220 (i-1), 220i, 220 (i+1), 220 (n-1), 220n, 220 (n-k+1), 220 (nk), 220 (nk-1) ‧ ‧‧server
A1, A2, A3, A4, A5, Ak, A(k+1), A(k+2), A(n-1), An‧‧‧ notification signals
S1, S2, S3, S4, S5, Si, S(i+1), Sn‧‧ ‧ series calculation signals
C1, C2, C3, C4, C5, Ck, C(k+1), C(k+2), C(n-1), Cn‧‧‧ series number confirmation signals
Th, T1, T2, T3, T(nk), T(n-1) ‧ ‧ hours
400‧‧‧Control method
402 to 422, 710 to 720 ‧ ‧ steps

第1圖是先前技術之鏈狀結構的伺服器系統的示意圖。 第2圖及第3圖是本發明實施例的伺服器系統的示意圖。 第4圖係第2圖及第3圖伺服器系統的控制方法的流程圖。 第5圖及第6圖是本發明另一實施例的伺服器系統的示意圖。 第7圖是第4圖的控制方法可另包含的步驟之流程圖。 第8圖是第5、6圖的伺服器系統,於n=5之示意圖。Figure 1 is a schematic illustration of a servo system of a prior art chain structure. 2 and 3 are schematic views of a server system according to an embodiment of the present invention. Fig. 4 is a flow chart showing the control method of the server system of Figs. 2 and 3. 5 and 6 are schematic views of a server system according to another embodiment of the present invention. Fig. 7 is a flow chart showing the steps that can be additionally included in the control method of Fig. 4. Figure 8 is a schematic diagram of the servo system of Figures 5 and 6, at n=5.

Claims (8)

一種伺服器系統之控制方法,包含:一主機伺服器發送一第1重置訊號至一第1伺服器;當一第i伺服器由一第(i-1)伺服器接收到一第i重置訊號後,該第i伺服器發送一第(i+1)重置訊號到一第(i+1)伺服器;當一第n伺服器接收到一第n重置訊號後,執行該第n伺服器之一系統啟動操作;於完成該第n伺服器之該系統啟動操作後,該第n伺服器回傳一第1通知訊號至該第(n-1)伺服器;當一第(n-k)伺服器從一第(n-k+1)伺服器接收到一第k通知訊號後,執行該第(n-k)伺服器之一系統啟動操作;於完成該第(n-k)伺服器之該系統啟動操作後,該第(n-k)伺服器發送一第(k+1)通知訊號至一第(n-k-1)伺服器;當該第1伺服器從一第2伺服器接收一第(n-1)通知訊號後,執行該第1伺服器之一系統啟動操作;於完成該第1伺服器之該系統啟動操作後,該第1伺服器發送一第n通知訊號至該主機伺服器;發送一第1級數計算訊號至該第1伺服器;當該第i伺服器接收到該第(i-1)伺服器傳來之一第i級數計算訊號後,該第i伺服器發送一第(i+1)級數計算訊號到該第(i+1)伺服器;當該第n伺服器接收到該第(n-1)伺服器傳來之一第n級數計算訊號後,該第n伺服器發送一第1級數回覆訊號到該第(n-1)伺服器;當該第(n-k)伺服器接收到該第(n-k+1)伺服器傳來之一第k級數回覆訊號後,發送一第(k+1)級數回覆訊號至該第(n-k-1)伺服器; 當該第1伺服器接收到該第2伺服器傳來之一第(n-1)級數回覆訊號後,發送一第n級數回覆訊號至該主機伺服器;該第(n-k)伺服器根據該第k級數回覆訊號產生該第(n-k)伺服器應接收到該第k通知訊號的時間;該第1伺服器根據該第(n-1)級數回覆訊號產生該第1伺服器應接收到該第(n-1)通知訊號的時間;及該主機伺服器根據該第n級數回覆訊號產生該主機伺服器應接收到該第n通知訊號的時間;其中1<i<n,0<k<(n-1),且i、k及n係正整數。 A method for controlling a server system includes: a host server sends a first reset signal to a first server; and an ith server receives an i-th weight from an (i-1) server After the signal is sent, the i-th server sends an (i+1)th reset signal to an (i+1)th server; when an nth server receives an nth reset signal, the first n one of the servers starts the operation; after completing the system startup operation of the nth server, the nth server returns a first notification signal to the (n-1)th server; Nk) after receiving a kth notification signal from an (n-k+1)th server, the server performs a system startup operation of the (nk) server; upon completion of the (nk) server After the system starts the operation, the (nk) server sends a (k+1) notification signal to a (nk-1) server; when the first server receives a message from a second server (n) -1) after the notification signal, performing a system startup operation of the first server; after completing the system startup operation of the first server, the first server sends an nth notification signal to the host server; hair Sending a first-order number calculation signal to the first server; when the i-th server receives one of the i-th level calculation signals transmitted by the (i-1)th server, the i-th server sends An (i+1)th level calculation signal is sent to the (i+1)th server; when the nth server receives the nth series of calculation signals transmitted by the (n-1)th server The nth server sends a first level reply signal to the (n-1)th server; when the (nk) server receives the first (n-k+1) server, After the kth level replies the signal, a (k+1)th level reply signal is sent to the (nk-1)th server; After receiving the (n-1)th level reply signal from the second server, the first server sends an nth level reply signal to the host server; the (nk) server Generating, according to the kth level reply signal, a time when the (k)th server should receive the kth notification signal; the first server generates the first server according to the (n-1)th level reply signal Receiving the time of the (n-1)th notification signal; and the host server generates a time when the host server should receive the nth notification signal according to the nth level reply signal; wherein 1<i<n , 0 < k < (n-1), and i, k, and n are positive integers. 如請求項1所述之控制方法,另包含若該主機伺服器於一預定時段內收到該第n通知訊號,該主機伺服器控制該第1至n伺服器。 The control method of claim 1, further comprising: if the host server receives the nth notification signal within a predetermined time period, the host server controls the first to nth servers. 如請求項1所述之控制方法,另包含若該主機伺服器於一預定時段內未收到該第n通知訊號,重新發送該第1重置訊號至該第1伺服器。 The control method according to claim 1, further comprising: if the host server does not receive the nth notification signal within a predetermined period of time, resending the first reset signal to the first server. 如請求項1所述的控制方法,其中每一伺服器之一系統啟動操作包含:若無法啟動一組功能單元,根據一供電順序(power sequence)執行一電源重啟。 The control method of claim 1, wherein one of the system startup operations of each of the servers comprises: if a group of functional units cannot be activated, performing a power restart according to a power sequence. 如請求項1所述的控制方法,其中每一伺服器之一系統啟動操作包含:啟動一外設組件互連快捷(Peripheral Component Interconnect Express; PCle)單元、一平台控制器(Platform Controller Hub;PCH)單元,及/或一中央處理單元(central processing unit;CPU)。 The control method of claim 1, wherein one of the system startup operations of each server comprises: starting a peripheral component interconnection fast (Peripheral Component Interconnect Express; PCle) unit, a Platform Controller Hub (PCH) unit, and/or a central processing unit (CPU). 如請求項1所述的控制方法,其中:於完成該第n伺服器之該系統啟動操作後,該第n伺服器回傳該第1通知訊號至該第(n-1)伺服器,係於該第n伺服器接收到該第n重置訊號時再經過一第n預定時段後,該第n伺服器回傳該第1通知訊號至該第(n-1)伺服器;於完成該第(n-k)伺服器之該系統啟動操作後,該第(n-k)伺服器發送該第(k+1)通知訊號至該第(n-k-1)伺服器,係於該第(n-k)伺服器接收到該第k通知訊號時再經過一第(n-k)預定時段後,該第(n-k)伺服器發送該第(k+1)通知訊號至該第(n-k-1)伺服器;及於完成該第1伺服器之該系統啟動操作後,該第1伺服器發送該第n通知訊號至該主機伺服器,係於該第1伺服器接收到該第(n-1)通知訊號時再經過一第1預定時段後,該第1伺服器發送該第n通知訊號至該主機伺服器。 The control method of claim 1, wherein after the system startup operation of the nth server is completed, the nth server returns the first notification signal to the (n-1)th server. After the nth server receives the nth reset signal and then passes the nth predetermined time period, the nth server returns the first notification signal to the (n-1)th server; After the system of the (nk) server starts the operation, the (nk) server sends the (k+1)th notification signal to the (nk-1)th server, and the (nk) server is attached to the (nk) server. Receiving the (k) predetermined period of time after receiving the kth notification signal, the (nk)th server sends the (k+1)th notification signal to the (nk-1)th server; and completing After the system of the first server starts the operation, the first server sends the nth notification signal to the host server, and the first server receives the (n-1)th notification signal. After the first predetermined time period, the first server sends the nth notification signal to the host server. 如請求項1所述的控制方法,另包含:若該主機伺服器於應接收到該第n通知訊號的時間尚未接收到該第n通知訊號,發送另一第1級數計算訊號至該第1伺服器。 The control method of claim 1, further comprising: if the host server has not received the nth notification signal at the time when the nth notification signal is received, sending another first level calculation signal to the first 1 server. 如請求項1所述的控制方法,另包含若該第(n-k)伺服器於應接收到該第k通知訊號的時間尚未接收到該第k通知訊號,該第(n-k)伺服器執行該第(n-k)伺服器之該系統啟動操作。The control method of claim 1, further comprising: if the (nk) server has not received the kth notification signal at the time when the kth notification signal should be received, the (nk) server executes the (nk) The system starts the operation of the server.
TW105138597A 2016-11-24 2016-11-24 Control method of server system TWI635720B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW105138597A TWI635720B (en) 2016-11-24 2016-11-24 Control method of server system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW105138597A TWI635720B (en) 2016-11-24 2016-11-24 Control method of server system

Publications (2)

Publication Number Publication Date
TW201820822A TW201820822A (en) 2018-06-01
TWI635720B true TWI635720B (en) 2018-09-11

Family

ID=63257991

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105138597A TWI635720B (en) 2016-11-24 2016-11-24 Control method of server system

Country Status (1)

Country Link
TW (1) TWI635720B (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030088655A1 (en) * 2001-11-02 2003-05-08 Leigh Kevin B. Remote management system for multiple servers
TW201403334A (en) * 2012-07-03 2014-01-16 Acer Inc Route switching system for daisy-chained apparatuses and interface apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030088655A1 (en) * 2001-11-02 2003-05-08 Leigh Kevin B. Remote management system for multiple servers
TW201403334A (en) * 2012-07-03 2014-01-16 Acer Inc Route switching system for daisy-chained apparatuses and interface apparatus

Also Published As

Publication number Publication date
TW201820822A (en) 2018-06-01

Similar Documents

Publication Publication Date Title
US20190272252A1 (en) Method of processing deadlock of i2c bus, electronic device and communication system
TWI410793B (en) Computer, and method for error-detecting and booting of bios thereof
JP2011192068A5 (en) Programmable controller and master communication circuit
RU2614569C2 (en) Rack with automatic recovery function and method of automatic recovery for this rack
JP2013164842A (en) Electronic device having restoration function of bmc firmware and restoration method of the same
CN110502369B (en) Method and device for recovering equipment crash and storage medium
TWI635720B (en) Control method of server system
CN102770851B (en) Recover the stability of unstable bus
US10133326B2 (en) Information processing apparatus, method for controlling information processing apparatus, and storage medium for establishing link-up between communication devices
CN114172803A (en) Multi-FPGA version control and configuration system and method based on Ethernet switching technology
US20030105992A1 (en) Control apparatus and self-diagnostic method for electronic control system
JP6903645B2 (en) Communication devices, communication methods, programs, and communication systems
US10303485B2 (en) Control method for controlling a server system by means of a set of reset signals and a set of notification signals
JP7324637B2 (en) Computer device and restart method
CN101188503B (en) Blade server and detection of link status in blade systems
CN112433968A (en) Controller sharing synchronization method and device
TWI505101B (en) Data transmitting apparatus and method
US20190020724A1 (en) Link-training auto-negotiation protocol with three-way handshake
CN110941510B (en) Online reloading circuit and method for FPGA
TWI654524B (en) Rack server system and signal communication frequency adjustment method thereof
TWI697766B (en) Electronic device and reset method thereof
JP5299443B2 (en) I2C bus communication control system and I2C bus communication control method
CN117762707B (en) Device, method, medium and electronic equipment for verifying serial port communication
JP4977324B2 (en) Bus system, bus connection device, and reset method
CN116955261A (en) PCIe link training method and equipment