欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

主節(jié)點支持從節(jié)點上不同協(xié)議類型從單元設(shè)備的方法

文檔序號:7587885閱讀:291來源:國知局
專利名稱:主節(jié)點支持從節(jié)點上不同協(xié)議類型從單元設(shè)備的方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種通信協(xié)議技術(shù),特別是涉及主節(jié)點支持從節(jié)點上不同協(xié)議類型從單元設(shè)備的方法。
背景技術(shù)
完成特定功能的系統(tǒng)一般由多個具有相對獨立功能的子系統(tǒng)單元組合構(gòu)成,這些子系統(tǒng)單元在系統(tǒng)中的地位是不同的,一般有一個居于主要地位的主單元和多個居于從屬地位的從單元。主單元是系統(tǒng)中居于控制地位的子系統(tǒng),完成系統(tǒng)的主要功能,并控制其它子系統(tǒng);從單元是系統(tǒng)中居于被控制地位的子系統(tǒng),完成系統(tǒng)的輔助功能,并接受主單元的控制。
圖1是主、從節(jié)點的關(guān)系示意圖。參見圖1,一般系統(tǒng)中有一個主節(jié)點和一個或者多個從節(jié)點,主節(jié)點和從節(jié)點之間通過通信通道相互聯(lián)系,并通過主從通信協(xié)議進行通信,通信通道時分復(fù)用。
主從通信協(xié)議是系統(tǒng)中主單元設(shè)備和從單元設(shè)備相互通信時遵從的通信協(xié)議。在主從通信協(xié)議中,主單元對應(yīng)主節(jié)點概念,從單元對應(yīng)從節(jié)點概念,節(jié)點是邏輯概念,而單元是物理概念,是指完成特定功能的子系統(tǒng)。
系統(tǒng)中存在不同類型的從單元設(shè)備,從單元設(shè)備類型不同不是指從單元設(shè)備的功能不同,而是指從單元設(shè)備和主單元設(shè)備進行報文交互時所遵從的協(xié)議類型不同,以及和這些協(xié)議相對應(yīng)的不同的上層應(yīng)用程序。
在現(xiàn)有的主從通信協(xié)議中,主節(jié)點通過從節(jié)點標識來識別遵從不同協(xié)議類型的從單元設(shè)備,進而找到從節(jié)點上從單元設(shè)備的上層應(yīng)用程序,完成對從單元設(shè)備的支持。
現(xiàn)有技術(shù)實現(xiàn)主節(jié)點支持從節(jié)點上不同協(xié)議類型從單元設(shè)備的方法為
方法一設(shè)定從節(jié)點號與協(xié)議類型的對應(yīng)關(guān)系,主節(jié)點通過從節(jié)點號識別遵從不同協(xié)議類型的從單元設(shè)備。設(shè)備的從節(jié)點號由硬件決定,每個設(shè)備上都有撥碼開關(guān),通過撥碼開關(guān)設(shè)定設(shè)備的從節(jié)點號。例如有遵從不同協(xié)議類型的從單元設(shè)備A與從單元設(shè)備B,設(shè)定設(shè)備A遵從的協(xié)議類型一對應(yīng)的從節(jié)點號為1,那么在安裝設(shè)備A的時候,將設(shè)備A的撥碼開關(guān)撥到1的位置,當設(shè)備A所在的從節(jié)點1向主節(jié)點發(fā)送報文后,主節(jié)點通過報文中的從節(jié)點號1識別設(shè)備A,并找到設(shè)備A的上層應(yīng)用程序,完成對設(shè)備A的支持。
如果設(shè)備A的撥碼開關(guān)沒有撥到1的位置,即設(shè)備A的從節(jié)點號與設(shè)備A遵從的協(xié)議類型一不存在對應(yīng)關(guān)系,那么設(shè)備A不會被支持;如果將遵從協(xié)議類型二的設(shè)備B的撥碼開關(guān)撥到1的位置,因為設(shè)備B遵從的協(xié)議類型二與從節(jié)點號1不存在對應(yīng)關(guān)系,那么設(shè)備B不會被支持。可見,在這種方法中,從節(jié)點號和協(xié)議類型的對應(yīng)關(guān)系是固定的,所以,當設(shè)備所撥的從節(jié)點號與該設(shè)備所遵從協(xié)議對應(yīng)的從節(jié)點號不存在對應(yīng)關(guān)系時,該設(shè)備不會被支持。
方法二設(shè)定從節(jié)點波特率與協(xié)議類型的對應(yīng)關(guān)系,主節(jié)點通過從節(jié)點波特率識別遵從不同協(xié)議類型的從單元設(shè)備。例如有遵從不同協(xié)議類型的從單元設(shè)備A與設(shè)備B,設(shè)定設(shè)備A遵從的協(xié)議類型一對應(yīng)的從節(jié)點波特率為15000,當設(shè)備A所在的從節(jié)點向主節(jié)點發(fā)送報文后,主節(jié)點通過該從節(jié)點的波特率15000識別出設(shè)備A,并找到設(shè)備A的上層應(yīng)用程序,完成對設(shè)備A的支持。
如果在實際傳輸時,設(shè)備A的波特率為9600,即設(shè)備A的從節(jié)點波特率與設(shè)備A遵從的協(xié)議類型一不存在對應(yīng)關(guān)系,那么設(shè)備A不會被支持;如果遵從協(xié)議類型二的設(shè)備B的傳輸波特率為15000,因為設(shè)備B遵從的協(xié)議類型二與從節(jié)點波特率15000之間不存在對應(yīng)關(guān)系,那么設(shè)備B不會被支持。可見,在這種方法中,從節(jié)點波特率與協(xié)議類型的對應(yīng)關(guān)系是固定的,所以,當某設(shè)備的實際傳輸波特率與該設(shè)備所遵從協(xié)議對應(yīng)的從節(jié)點波特率不存在對應(yīng)關(guān)系時,該設(shè)備不會被支持??梢?,在現(xiàn)有的主從通信協(xié)議中,主節(jié)點通過從節(jié)點標識實現(xiàn)對不同協(xié)議類型從單元設(shè)備的支持。但是,由于從節(jié)點標識與協(xié)議類型的對應(yīng)關(guān)系是固定的,所以當從節(jié)點的實際標識與協(xié)議類型不存在對應(yīng)關(guān)系時,主節(jié)點不能支持從節(jié)點上的從單元設(shè)備,從而導(dǎo)致主節(jié)點對從單元設(shè)備的支持率低,無法適應(yīng)從單元設(shè)備的改變和擴展。
可見,在現(xiàn)有技術(shù)中,即使從單元設(shè)備所遵從的協(xié)議類型沒有改變,但只要從節(jié)點標識改變,就會導(dǎo)致主節(jié)點無法支持從節(jié)點上從單元設(shè)備。
并且,在主從通信協(xié)議中,主節(jié)點與從節(jié)點進行報文交互的過程分作主節(jié)點側(cè)和從節(jié)點側(cè)兩個部分,主節(jié)點側(cè)和從節(jié)點側(cè)分別維護著一個狀態(tài)機,通過狀態(tài)機完成報文的發(fā)送和接收。
圖2是主節(jié)點的主從通信狀態(tài)機示意圖。參見圖2,現(xiàn)有的主從通信協(xié)議中,主節(jié)點狀態(tài)機共有五個狀態(tài),其中,空閑狀態(tài)201是數(shù)據(jù)發(fā)送和接收流程公用的狀態(tài);等待查詢應(yīng)答狀態(tài)202和等待接收數(shù)據(jù)狀態(tài)203用于數(shù)據(jù)接收流程;等待傳輸應(yīng)答狀態(tài)204和等待接收應(yīng)答狀態(tài)205用于數(shù)據(jù)發(fā)送流程。主節(jié)點狀態(tài)機的普通狀態(tài)為空閑狀態(tài)201,空閑狀態(tài)201具有周期屬性,該周期屬性有兩個值查詢周期和傳輸周期。
在現(xiàn)有的主節(jié)點報文接收流程中,主節(jié)點在空閑狀態(tài)201的查詢周期向從節(jié)點發(fā)送查詢命令;在等待查詢應(yīng)答狀態(tài)202接收從節(jié)點發(fā)回的查詢應(yīng)答;在等待接收數(shù)據(jù)狀態(tài)203中接收從節(jié)點發(fā)來的數(shù)據(jù)報文。
在現(xiàn)有的主節(jié)點報文發(fā)送流程中,主節(jié)點在空閑狀態(tài)201的傳輸周期向從節(jié)點發(fā)送傳輸命令;在等待傳輸應(yīng)答狀態(tài)204中向從節(jié)點發(fā)送數(shù)據(jù)報文;在等待接收應(yīng)答狀態(tài)205中接收從節(jié)點發(fā)來的接收報文應(yīng)答。
圖3是從節(jié)點的主從通信狀態(tài)機示意圖。參見圖3,現(xiàn)有的主從通信協(xié)議中,從節(jié)點狀態(tài)機共有四個狀態(tài),其中,等待命令狀態(tài)301是數(shù)據(jù)發(fā)送和接收流程公用的狀態(tài);等待接收命令狀態(tài)302和等待接收應(yīng)答狀態(tài)303用于數(shù)據(jù)發(fā)送流程;等待接收數(shù)據(jù)狀態(tài)304用于數(shù)據(jù)接收流程。從節(jié)點狀態(tài)機的普通狀態(tài)為等待命令狀態(tài)301,等待命令狀態(tài)301具有周期屬性,其周期屬性與主節(jié)點狀態(tài)機的空閑狀態(tài)201的周期屬性相反。
在現(xiàn)有的從節(jié)點報文發(fā)送流程中,從節(jié)點在等待命令狀態(tài)301向主節(jié)點發(fā)送查詢應(yīng)答;在等待接收命令狀態(tài)302中向主節(jié)點發(fā)送數(shù)據(jù)報文;在等待接收應(yīng)答狀態(tài)303中接收主節(jié)點發(fā)來的接收報文應(yīng)答。
在現(xiàn)有的從節(jié)點報文接收中,從節(jié)點在等待命令狀態(tài)301接收到主節(jié)點的傳輸命令;在等待接收數(shù)據(jù)狀態(tài)304中接收主節(jié)點發(fā)來的數(shù)據(jù)報文。

發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供主節(jié)點支持從節(jié)點上不同協(xié)議類型從單元設(shè)備的方法,通過從單元設(shè)備所遵從的協(xié)議類型,使主節(jié)點查找到從單元設(shè)備的上層應(yīng)用程序。
為了達到上述目的,本發(fā)明的技術(shù)方案是這樣實現(xiàn)的主節(jié)點支持從節(jié)點上不同協(xié)議類型從單元設(shè)備的方法,預(yù)先在主從通信協(xié)議中設(shè)定各協(xié)議類型從單元設(shè)備的報文內(nèi)容鍵值和報文內(nèi)容掩碼,并建立同一協(xié)議類型從單元設(shè)備的報文內(nèi)容掩碼、報文內(nèi)容鍵值和上層應(yīng)用程序三者之間的對應(yīng)關(guān)系,該方法包括以下步驟A、主節(jié)點接收從節(jié)點發(fā)來的報文;B、選取未選用過的一個協(xié)議類型的報文內(nèi)容掩碼,并通過選取的報文內(nèi)容掩碼獲得報文中的報文內(nèi)容鍵值;C、將獲得的報文內(nèi)容鍵值與步驟B所述協(xié)議類型的報文內(nèi)容鍵值進行比較,如果獲得的報文內(nèi)容鍵值與步驟B所述協(xié)議類型的報文內(nèi)容鍵值相同,則執(zhí)行步驟E,如果獲得的報文內(nèi)容鍵值與步驟B所述協(xié)議類型的報文內(nèi)容鍵值不同,且存在未被選用過的報文內(nèi)容掩碼,則返回步驟B,如果獲得的報文內(nèi)容鍵值與步驟B所述協(xié)議類型的報文內(nèi)容鍵值不同,且所有協(xié)議類型的報文內(nèi)容掩碼均被選用過,則執(zhí)行步驟D;
D、主節(jié)點將報文丟棄,提示告警信息,并結(jié)束本流程;E、選取步驟B所述協(xié)議類型的報文內(nèi)容鍵值對應(yīng)的上層應(yīng)用程序為從節(jié)點上從單元設(shè)備的上層應(yīng)用程序。
所述設(shè)定報文內(nèi)容鍵值的步驟包括設(shè)定報文中能夠唯一標識從單元設(shè)備與主單元設(shè)備通信時所遵從協(xié)議類型的報文內(nèi)容為該協(xié)議類型的報文內(nèi)容鍵值。
所述設(shè)定報文內(nèi)容掩碼的步驟包括設(shè)定報文內(nèi)容掩碼由地址偏移量和掩碼值組成,并根據(jù)報文內(nèi)容鍵值設(shè)定報文內(nèi)容掩碼的地址偏移量和掩碼值。
所述根據(jù)報文內(nèi)容鍵值設(shè)定報文內(nèi)容掩碼的地址偏移量的步驟包括設(shè)定報文內(nèi)容掩碼的地址偏移量為報文內(nèi)容鍵值在報文中所處的字節(jié)位減一。
所述根據(jù)報文內(nèi)容鍵值設(shè)定報文內(nèi)容掩碼的掩碼值的步驟包括設(shè)定掩碼值的字節(jié)數(shù)為報文內(nèi)容鍵值的字節(jié)數(shù),并設(shè)定掩碼值的各個字節(jié)位為十六進制的全一值。
步驟B所述通過選取的報文內(nèi)容掩碼獲得報文中的報文內(nèi)容鍵值的步驟包括將用于確定報文內(nèi)容鍵值的指針進行偏移,指針的偏移量為報文內(nèi)容掩碼中地址偏移量的值,然后選取指針所指字節(jié)位為當前報文中報文內(nèi)容鍵值的起始位,并選取報文內(nèi)容掩碼中掩碼值的字節(jié)位數(shù)為當前報文中報文內(nèi)容鍵值的字節(jié)位數(shù),然后將選取的報文內(nèi)容鍵值與報文內(nèi)容掩碼的掩碼值相與,獲得報文中的報文內(nèi)容鍵值。
該方法進一步包括主節(jié)點在所述步驟A接收到從節(jié)點發(fā)來的報文后,先查找報文中的從節(jié)點號,并判斷是否有該從節(jié)點號的保存記錄,如果沒有該從節(jié)點號的保存記錄,則將該報文作為首報文,并保存該首報文中的從節(jié)點號,再進行所述步驟B至步驟E,然后建立保存的首報文從節(jié)點號與所述步驟E選取的上層應(yīng)用程序的對應(yīng)關(guān)系,如果有該從節(jié)點號的保存記錄,則不進行所述步驟B至步驟E,直接選取與該從節(jié)點號對應(yīng)的上層應(yīng)用程序。
所述步驟A包括以下步驟a、主節(jié)點在空閑狀態(tài)的查詢周期中向從節(jié)點發(fā)送查詢命令,然后遷移到等待查詢應(yīng)答狀態(tài);b、從節(jié)點在等待命令狀態(tài)接收到主節(jié)點發(fā)來的查詢命令,并且有數(shù)據(jù)報文,則向主節(jié)點發(fā)送該數(shù)據(jù)報文,然后遷移到等待接收應(yīng)答狀態(tài);c、主節(jié)點在等待查詢應(yīng)答狀態(tài)中,如果接收到錯誤的數(shù)據(jù)報文,則向從節(jié)點發(fā)出發(fā)送錯誤應(yīng)答,并保持在等待查詢應(yīng)答狀態(tài),如果主節(jié)點接收到正確的數(shù)據(jù)報文,則向從節(jié)點發(fā)出發(fā)送成功應(yīng)答;d、從節(jié)點在等待接收應(yīng)答狀態(tài)中,如果等待應(yīng)答超時或接收到發(fā)送錯誤應(yīng)答,則重發(fā)數(shù)據(jù)報文,并保持在等待接收應(yīng)答狀態(tài),如果從節(jié)點接收到發(fā)送成功應(yīng)答,則遷移到等待命令狀態(tài)。
步驟d所述從節(jié)點重發(fā)數(shù)據(jù)報文,并保持在等待接收應(yīng)答狀態(tài)的步驟進一步包括從節(jié)點重發(fā)數(shù)據(jù)報文的次數(shù)達到上限,則遷移到等待命令狀態(tài)。
所述數(shù)據(jù)報文的重發(fā)次數(shù)根據(jù)報文的重要性預(yù)先設(shè)定。
可見,本發(fā)明方法通過對主節(jié)點報文接收流程和從節(jié)點報文發(fā)送流程進行簡化,省去從節(jié)點返回查詢應(yīng)答與主節(jié)點發(fā)送數(shù)據(jù)接收命令的命令交互過程,提高了主節(jié)點與從節(jié)點之間的通信速率,并減少了通信時的出錯概率。本發(fā)明方法通過建立同一協(xié)議類型從單元設(shè)備的報文內(nèi)容掩碼、報文內(nèi)容鍵值和上層應(yīng)用程序三者之間的一一對應(yīng)關(guān)系,實現(xiàn)主節(jié)點對不同協(xié)議類型從單元設(shè)備的支持,避免了從節(jié)點標識改變而導(dǎo)致主節(jié)點不支持從節(jié)點上的從單元設(shè)備的缺點。根據(jù)本發(fā)明提出的方法,通過對主從通信控制塊中從單元設(shè)備的報文內(nèi)容掩碼、報文內(nèi)容鍵值和上層應(yīng)用程序及其對應(yīng)關(guān)系進行相應(yīng)的增加或更改操作,還可及時適應(yīng)從節(jié)點上從單元設(shè)備的增加和改變。


圖1是主、從節(jié)點的關(guān)系示意圖;圖2是現(xiàn)有技術(shù)中主節(jié)點的主從通信狀態(tài)機示意圖;
圖3是現(xiàn)有技術(shù)中從節(jié)點的主從通信狀態(tài)機示意圖;圖4是本發(fā)明方法的流程圖;圖5是本發(fā)明方法中主節(jié)點的主從通信狀態(tài)機示意圖;圖6是本發(fā)明方法中從節(jié)點的主從通信狀態(tài)機示意圖。
具體實施例方式
為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面結(jié)合附圖及實施例對本發(fā)明作進一步地詳細描述。
預(yù)先設(shè)定各個協(xié)議類型從單元設(shè)備的報文內(nèi)容鍵值和報文內(nèi)容掩碼,并建立同一協(xié)議類型從單元設(shè)備的報文內(nèi)容掩碼、報文內(nèi)容鍵值和上層應(yīng)用程序三者之間的對應(yīng)關(guān)系,其中,報文內(nèi)容鍵值為唯一標識從單元設(shè)備與主單元設(shè)備進行報文交互時所遵從協(xié)議類型的報文內(nèi)容;報文內(nèi)容掩碼由地址偏移量和掩碼值組成,設(shè)定報文內(nèi)容掩碼的地址偏移量為與該報文內(nèi)容掩碼對應(yīng)的報文內(nèi)容鍵值在報文中所處的字節(jié)位減一,設(shè)定報文內(nèi)容掩碼的掩碼值的字節(jié)數(shù)為與該報文內(nèi)容掩碼對應(yīng)的報文內(nèi)容鍵值的字節(jié)數(shù),且掩碼值的各個字節(jié)位為十六進制的全一值。
在主從通信協(xié)議中規(guī)定通過報文內(nèi)容掩碼獲得從節(jié)點報文的報文內(nèi)容鍵值,在主從通信控制塊中查找與獲得的報文內(nèi)容鍵值相同的報文內(nèi)容鍵值及與查找到的報文內(nèi)容鍵值對應(yīng)的從節(jié)點上的從單元設(shè)備的上層應(yīng)用程序。
因為握手字符可唯一標識協(xié)議類型,所以在本實施例中將握手字符設(shè)定為報文內(nèi)容鍵值。
例如,有遵從協(xié)議類型①的從單元設(shè)備C,協(xié)議類型①的握手字符為“HD”,將握手字符“HD”設(shè)定為協(xié)議類型①的報文內(nèi)容鍵值。握手字符“HD”在報文中位于第3個字節(jié)位,那么根據(jù)該握手字符“HD”設(shè)定協(xié)議類型①的報文內(nèi)容掩碼,將握手字符“HD”在報文中所處的字節(jié)位減一,得到報文內(nèi)容掩碼的地址偏移量2,握手字符“HD”的字節(jié)數(shù)為2,所以報文內(nèi)容掩碼的掩碼值為字節(jié)數(shù)為2的十六進制的全一值,即0xFFFF。
圖4是本發(fā)明方法的流程圖。參見圖4,實現(xiàn)主節(jié)點支持協(xié)議類型①的從單元設(shè)備C的方法具體包括以下步驟步驟401從節(jié)點接收到主節(jié)點發(fā)來的查詢命令后,向主節(jié)點發(fā)送報文。
步驟402主節(jié)點接收到從節(jié)點發(fā)來的報文。
步驟403主節(jié)點查找到報文中的從節(jié)點號,并判斷該從節(jié)點號是否有保存記錄,如果有保存記錄,則執(zhí)行步驟404,如果沒有保存記錄,則執(zhí)行步驟405。
步驟404主節(jié)點則根據(jù)從節(jié)點號查找到與該從節(jié)點號對應(yīng)的從單元設(shè)備的上層應(yīng)用程序,并結(jié)束本流程。
步驟405主節(jié)點將接收到的報文作為首報文,并保存該首報文中的從節(jié)點號。
步驟406在主從通信控制塊中,選取未選用過的一個協(xié)議類型的報文內(nèi)容掩碼,并根據(jù)選取的報文內(nèi)容掩碼獲得首報文中的報文內(nèi)容鍵值,例如選取到協(xié)議類型①的報文內(nèi)容掩碼,該報文內(nèi)容掩碼的地址偏移量為2,將用于確定報文中報文內(nèi)容鍵值的指針進行偏移,指針的偏移量為報文內(nèi)容掩碼中地址偏移量的值2,然后選取指針所指的第3個字節(jié)位為該首報文中報文內(nèi)容鍵值的起始位,因為報文內(nèi)容掩碼中掩碼值0xFFFF的字節(jié)位數(shù)為2,則設(shè)定該報文中報文內(nèi)容鍵值的字節(jié)位數(shù)為2,然后將選取的報文內(nèi)容鍵值與報文內(nèi)容掩碼的掩碼值0xFFFF相與,獲得該首報文的報文內(nèi)容鍵值。
步驟407將首報文的報文內(nèi)容鍵值與協(xié)議類型①的報文內(nèi)容鍵值“HD”進行比較,并判斷該首報文的報文內(nèi)容鍵值與協(xié)議類型①的報文內(nèi)容鍵值“HD”是否相同,如果不相同,則執(zhí)行步驟408,如果相同,則執(zhí)行步驟410。
步驟408判斷主從通信控制塊中是否存在未被選用過協(xié)議類型的報文內(nèi)容掩碼,如果存在,則返回步驟406,如果不存在,則執(zhí)行步驟409。
步驟409主節(jié)點將從節(jié)點報文丟棄,并提示告警信息,然后結(jié)束本流程。
步驟410選取與協(xié)議類型①的報文內(nèi)容鍵值對應(yīng)的上層應(yīng)用程序為從節(jié)點上的從單元設(shè)備C的上層應(yīng)用程序,并建立首報文中的從節(jié)點號與選取的從節(jié)點上的從單元設(shè)備C的上層應(yīng)用程序之間的對應(yīng)關(guān)系。
為了提高主節(jié)點與從節(jié)點之間的通信速率,并減少了通信時的出錯概率,一個較佳實施例是將步驟401中主節(jié)點向從節(jié)點發(fā)送查詢命令,從節(jié)點接收到查詢命令后,向主節(jié)點發(fā)送報文的過程進行簡化,即把主節(jié)點報文接收流程和從節(jié)點報文發(fā)送流程進行簡化,省去主節(jié)點與從節(jié)點的二次命令交互過程。
圖5是本發(fā)明方法中主節(jié)點的主從通信狀態(tài)機示意圖,圖6是本發(fā)明方法中從節(jié)點的主從通信狀態(tài)機示意圖,下面結(jié)合圖5和圖6介紹簡化后的主節(jié)點報文接收流程和從節(jié)點報文發(fā)送流程。
在主節(jié)點報文接收流程中,去掉主節(jié)點狀態(tài)機的等待接收數(shù)據(jù)狀態(tài)203,同時取消主節(jié)點向從節(jié)點發(fā)送的數(shù)據(jù)接收命令。
主節(jié)點報文接收流程為主節(jié)點在空閑狀態(tài)201的查詢周期中向從節(jié)點發(fā)送查詢命令,然后遷移到等待查詢應(yīng)答狀態(tài)202,等待自從節(jié)點發(fā)回的應(yīng)答;在等待查詢應(yīng)答狀態(tài)202中,如果主節(jié)點等待應(yīng)答超時或者自從節(jié)點發(fā)回的應(yīng)答是表明沒有數(shù)據(jù)要發(fā)送的無事應(yīng)答,那么主節(jié)點遷移到空閑狀態(tài)201,且周期屬性遷移到傳輸周期,如果主節(jié)點接收到錯誤的數(shù)據(jù)報文,則向從節(jié)點發(fā)出發(fā)送錯誤應(yīng)答,同時,主節(jié)點保持在等待查詢應(yīng)答狀態(tài)202,等待從節(jié)點重發(fā)數(shù)據(jù)報文,如果主節(jié)點接收到正確的數(shù)據(jù)報文,則向從節(jié)點發(fā)出發(fā)送成功應(yīng)答,然后主節(jié)點遷移到空閑狀態(tài)201,且周期屬性遷移到傳輸周期。
相應(yīng)地,在從節(jié)點報文發(fā)送流程中,去掉從節(jié)點狀態(tài)機的等待接收命令狀態(tài)302,取消從節(jié)點向主節(jié)點發(fā)送的有事應(yīng)答。
從節(jié)點報文發(fā)送流程為從節(jié)點在等待命令狀態(tài)301接收到主節(jié)點發(fā)來的查詢命令,如果從節(jié)點沒有數(shù)據(jù)報文要發(fā)送到主節(jié)點,則向主節(jié)點發(fā)送無事應(yīng)答,同時,從節(jié)點保持在等待命令狀態(tài)301,如果從節(jié)點有數(shù)據(jù)報文要發(fā)送到主節(jié)點,則向主節(jié)點發(fā)送該數(shù)據(jù)報文,然后從節(jié)點遷移到等待接收應(yīng)答狀態(tài)303;在等待接收應(yīng)答狀態(tài)303中,如果從節(jié)點等待應(yīng)答超時或者接收到發(fā)送錯誤應(yīng)答,則重發(fā)數(shù)據(jù)報文,數(shù)據(jù)報文的重發(fā)次數(shù)可預(yù)先設(shè)定,同時,從節(jié)點保持在等待接收應(yīng)答狀態(tài)303,如果從節(jié)點接收到發(fā)送成功應(yīng)答或者數(shù)據(jù)報文的重發(fā)次數(shù)超過上限,那么從節(jié)點遷移到等待命令狀態(tài)301。
總之,以上所述,僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。
權(quán)利要求
1.主節(jié)點支持從節(jié)點上不同協(xié)議類型從單元設(shè)備的方法,其特征在于,預(yù)先在主從通信協(xié)議中設(shè)定各協(xié)議類型從單元設(shè)備的報文內(nèi)容鍵值和報文內(nèi)容掩碼,并建立同一協(xié)議類型從單元設(shè)備的報文內(nèi)容掩碼、報文內(nèi)容鍵值和上層應(yīng)用程序三者之間的對應(yīng)關(guān)系,該方法包括以下步驟A、主節(jié)點接收從節(jié)點發(fā)來的報文;B、選取未選用過的一個協(xié)議類型的報文內(nèi)容掩碼,并通過選取的報文內(nèi)容掩碼獲得報文中的報文內(nèi)容鍵值;C、將獲得的報文內(nèi)容鍵值與步驟B所述協(xié)議類型的報文內(nèi)容鍵值進行比較,如果獲得的報文內(nèi)容鍵值與步驟B所述協(xié)議類型的報文內(nèi)容鍵值相同,則執(zhí)行步驟E,如果獲得的報文內(nèi)容鍵值與步驟B所述協(xié)議類型的報文內(nèi)容鍵值不同,且存在未被選用過的報文內(nèi)容掩碼,則返回步驟B,如果獲得的報文內(nèi)容鍵值與步驟B所述協(xié)議類型的報文內(nèi)容鍵值不同,且所有協(xié)議類型的報文內(nèi)容掩碼均被選用過,則執(zhí)行步驟D;D、主節(jié)點將報文丟棄,提示告警信息,并結(jié)束本流程;E、選取步驟B所述協(xié)議類型的報文內(nèi)容鍵值對應(yīng)的上層應(yīng)用程序為從節(jié)點上從單元設(shè)備的上層應(yīng)用程序。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述設(shè)定報文內(nèi)容鍵值的步驟包括設(shè)定報文中能夠唯一標識從單元設(shè)備與主單元設(shè)備通信時所遵從協(xié)議類型的報文內(nèi)容為該協(xié)議類型的報文內(nèi)容鍵值。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述設(shè)定報文內(nèi)容掩碼的步驟包括設(shè)定報文內(nèi)容掩碼由地址偏移量和掩碼值組成,并根據(jù)報文內(nèi)容鍵值設(shè)定報文內(nèi)容掩碼的地址偏移量和掩碼值。
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述根據(jù)報文內(nèi)容鍵值設(shè)定報文內(nèi)容掩碼的地址偏移量的步驟包括設(shè)定報文內(nèi)容掩碼的地址偏移量為報文內(nèi)容鍵值在報文中所處的字節(jié)位減一。
5.根據(jù)權(quán)利要求3或4所述的方法,其特征在于,所述根據(jù)報文內(nèi)容鍵值設(shè)定報文內(nèi)容掩碼的掩碼值的步驟包括設(shè)定掩碼值的字節(jié)數(shù)為報文內(nèi)容鍵值的字節(jié)數(shù),并設(shè)定掩碼值的各個字節(jié)位為十六進制的全一值。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,步驟B所述通過選取的報文內(nèi)容掩碼獲得報文中的報文內(nèi)容鍵值的步驟包括將用于確定報文內(nèi)容鍵值的指針進行偏移,指針的偏移量為報文內(nèi)容掩碼中地址偏移量的值,然后選取指針所指字節(jié)位為當前報文中報文內(nèi)容鍵值的起始位,并選取報文內(nèi)容掩碼中掩碼值的字節(jié)位數(shù)為當前報文中報文內(nèi)容鍵值的字節(jié)位數(shù),然后將選取的報文內(nèi)容鍵值與報文內(nèi)容掩碼的掩碼值相與,獲得報文中的報文內(nèi)容鍵值。
7.根據(jù)權(quán)利要求1所述的方法,其特征在于,該方法進一步包括主節(jié)點在所述步驟A接收到從節(jié)點發(fā)來的報文后,先查找報文中的從節(jié)點號,并判斷是否有該從節(jié)點號的保存記錄,如果沒有該從節(jié)點號的保存記錄,則將該報文作為首報文,并保存該首報文中的從節(jié)點號,再進行所述步驟B至步驟E,然后建立保存的首報文從節(jié)點號與所述步驟E選取的上層應(yīng)用程序的對應(yīng)關(guān)系,如果有該從節(jié)點號的保存記錄,則不進行所述步驟B至步驟E,直接選取與該從節(jié)點號對應(yīng)的上層應(yīng)用程序。
8.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述步驟A包括以下步驟a、主節(jié)點在空閑狀態(tài)的查詢周期中向從節(jié)點發(fā)送查詢命令,然后遷移到等待查詢應(yīng)答狀態(tài);b、從節(jié)點在等待命令狀態(tài)接收到主節(jié)點發(fā)來的查詢命令,并且有數(shù)據(jù)報文,則向主節(jié)點發(fā)送該數(shù)據(jù)報文,然后遷移到等待接收應(yīng)答狀態(tài);c、主節(jié)點在等待查詢應(yīng)答狀態(tài)中,如果接收到錯誤的數(shù)據(jù)報文,則向從節(jié)點發(fā)出發(fā)送錯誤應(yīng)答,并保持在等待查詢應(yīng)答狀態(tài),如果主節(jié)點接收到正確的數(shù)據(jù)報文,則向從節(jié)點發(fā)出發(fā)送成功應(yīng)答;d、從節(jié)點在等待接收應(yīng)答狀態(tài)中,如果等待應(yīng)答超時或接收到發(fā)送錯誤應(yīng)答,則重發(fā)數(shù)據(jù)報文,并保持在等待接收應(yīng)答狀態(tài),如果從節(jié)點接收到發(fā)送成功應(yīng)答,則遷移到等待命令狀態(tài)。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,步驟d所述從節(jié)點重發(fā)數(shù)據(jù)報文,并保持在等待接收應(yīng)答狀態(tài)的步驟進一步包括從節(jié)點重發(fā)數(shù)據(jù)報文的次數(shù)達到上限,則遷移到等待命令狀態(tài)。
10.根據(jù)權(quán)利要求9所述的方法,其特征在于,所述數(shù)據(jù)報文的重發(fā)次數(shù)根據(jù)報文的重要性預(yù)先設(shè)定。
全文摘要
本發(fā)明公開了主節(jié)點支持從節(jié)點上不同協(xié)議類型從單元設(shè)備的方法,在主從通信協(xié)議中,預(yù)先設(shè)定各個協(xié)議類型從單元設(shè)備的報文內(nèi)容鍵值和報文內(nèi)容掩碼,并建立同一協(xié)議類型從單元設(shè)備的報文內(nèi)容掩碼、報文內(nèi)容鍵值與上層應(yīng)用程序的對應(yīng)關(guān)系,該方法包括以下步驟主節(jié)點接收到從節(jié)點發(fā)來的報文后,逐一選取未選用過的一個協(xié)議類型的報文內(nèi)容掩碼,并通過選取的報文內(nèi)容掩碼獲得報文內(nèi)容鍵值;將獲得的報文內(nèi)容鍵值與所述協(xié)議類型的報文內(nèi)容鍵值進行比較,若相同,則選取所述協(xié)議類型的報文內(nèi)容鍵值對應(yīng)的上層應(yīng)用程序,若不相同,則將從節(jié)點報文丟棄。本發(fā)明方法實現(xiàn)了對不同協(xié)議類型從單元設(shè)備的支持,并且能夠靈活適應(yīng)從節(jié)點上不同協(xié)議類型從單元設(shè)備的改變和增減。
文檔編號H04L29/06GK1642167SQ20041000017
公開日2005年7月20日 申請日期2004年1月8日 優(yōu)先權(quán)日2004年1月8日
發(fā)明者陳剛 申請人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
尖扎县| 兴化市| 绍兴市| 凭祥市| 平遥县| 儋州市| 涟源市| 阜康市| 营山县| 南康市| 怀来县| 千阳县| 永顺县| 射洪县| 长葛市| 三江| 阳西县| 长沙市| 介休市| 边坝县| 饶阳县| 朝阳区| 乌审旗| 乳源| 嘉鱼县| 郧西县| 古田县| 崇文区| 宿松县| 安图县| 玉田县| 镇原县| 普安县| 长乐市| 锡林浩特市| 织金县| 平顶山市| 安顺市| 宁津县| 台州市| 崇仁县|