產生虛擬網絡的方法和控制器的製作方法
2023-05-01 01:33:11 2
專利名稱:產生虛擬網絡的方法和控制器的製作方法
技術領域:
本發明涉及IEEE 1394網絡,並且特別涉及在IEEE 1394網絡基礎上構建虛擬網絡並且各節點檢測該虛擬網絡的IEEE 1394虛擬網絡的產生方法和用於產生該虛擬網絡的控制器。
通常,IEEE 1394網絡包括至少兩個節點,其中每個節點有一特有的節點ID。在此,依次確定各節點的ID。即,當有三個節點時,節點ID確定為0,1和2。當有五個節點時,節點ID確定為0,1,2,3和4。因此,為了使任意的節點具有所需的預定節點,至少需要如同節點ID那麼多的節點。
當獨立執行初始化的不同IEEE 1394網絡通過介質彼此連接時,構建這些網絡的各節點檢測這些網絡為具有不同總線ID的那些網絡。即,當需要讓這些節點檢測不同的IEEE 1394網絡為具有相同總線ID的那些網絡時,這是不可能的。
為了解決上述問題,本發明的一個目的是提供產生IEEE 1394虛擬網絡的方法,其中能夠在一網絡上安裝一任意節點ID,並且各節點檢測通過預定介質連接的不同IEEE 1394網絡為同一網絡。
本發明的另一個目的是提供控制IEEE 1394虛擬網絡產生的虛擬網絡控制器。
因此,為了實現第一目的,提供了一種產生IEEE 1394虛擬網絡的方法,該方法包括步驟連接虛擬網絡控制器到預定的IEEE 1394網絡,該虛擬網絡控制器用於產生一虛擬自身ID分組,該分組包括構建虛擬網絡所需的虛擬節點ID信息;通過執行虛擬總線初始化,各節點和構建IEEE 1394網絡的虛擬網絡控制器確定它們是枝還是葉;通過執行虛擬樹識別,確定關於各節點的埠的父埠和子埠及根節點;並且通過發送預備的虛擬自身ID分組確定各節點的物理節點ID。
虛擬樹識別執行步驟包括以下步驟通過虛擬網絡控制器和葉節點發送parent_notify信號到枝節點,設定葉節點的埠為父節點;當枝節點接收到parent_notify信號時,枝節點傳送child_notify信號到虛擬網絡控制器和葉節點,設定其自己的埠為子埠,並且變成根節點。
確定物理節點ID的步驟包括以下步驟經過連接到根節點的至少一個埠的至少一個虛擬網絡控制器(VNC),重複和傳送如同虛擬節點ID那麼多的自身ID分組;根節點發送其自己的自身ID分組,並且擁有一節點ID。
為了實現第二個目的,提供了一種虛擬網絡控制器,用於產生能夠由在包括根節點的IEEE 1394網絡中的各節點檢測的虛擬網絡,該虛擬網絡控制器包括存儲部分,用於存儲如同包括在該虛擬網絡中的虛擬節點ID那麼多的自身ID分組;主控制器,控制當執行用於產生所述虛擬網絡的總線初始化、樹識別和自身識別時,所產生的總線周期開始和結束時刻處的點,在自身識別期間,主控制器讀出如同存儲在存儲部分中的虛擬節點那麼多的自身ID分組,並且將自身ID分組傳送到IEEE 1394網絡的各節點;數字部分,用於產生包括根節點的IEEE 1394網絡的總線周期所需的parent_notify信號和傳送自身ID分組所需的狀態信號,調節到在總線初始化、樹識別和自身識別期間主控制器的總線周期開始和結束時刻處的點;模擬部分,用於將數字部分的傳送信號轉換成模擬信號,將從IEEE 1394網絡的各節點接收的模擬信號轉換成數位訊號,並且將轉換的信號傳送到數字部分。
通過參照附圖詳細描述優選實施例,本發明的上述目的和優點將變得更清楚,其中
圖1是按照本發明的在IEEE 1394網絡中產生一虛擬網絡的過程的流程圖;圖2示出了包括兩個節點(節點A和節點B)的IEEE 1394網絡;圖3示出了包括九個節點的IEEE 1394網絡的結構;圖4示出了包括虛擬網絡控制器以便一節點檢測圖3的網絡的IEEE 1394虛擬網絡;圖5到圖8示出了形成樹識別的過程;圖9示出了當僅有兩個節點時,樹識別的結果;圖10示出了一枝節點的三個埠中,一個埠不連接而其它兩個埠作為子的網絡;圖11到圖24示出了執行自身ID識別的過程;和圖25示出了按照本發明的、用於產生虛擬網絡的虛擬網絡控制器的結構方框圖,該虛擬網絡由在包括一根節點和至少一個節點的IEEE 1394網絡中的各節點檢測。
參考附圖將描述本發明的優選實施例。圖1是按照本發明的、在IEEE 1394網絡中產生一虛擬網絡的過程的流程圖,該流程圖包括以下步驟準備用於一虛擬網絡的自身ID分組(100)、虛擬總線初始化(110)、虛擬樹識別(120)、虛擬自身識別(130)。
用於虛擬網絡的自身ID分組包括構建該虛擬網絡所需的虛擬節點ID信息,並且由虛擬網絡控制器提供。
在虛擬總線初始化步驟110中,當虛擬網絡控制器連接到預定的IEEE1394時,構建IEEE 1394網絡的各節點確定它們是枝還是葉。
在虛擬樹識別步驟120中,對於各節點的埠確定父埠、子埠和根節點。更具體地說,虛擬網絡控制器和葉節點發送parent_notify(父通知)信號到枝節點,並且設定葉節點的埠為父埠。當枝節點接收到parent_notify信號時,枝節點傳送child_notify(子通知)信號到虛擬網絡控制器和葉節點,設定其自己的埠為子埠,並且變成一根節點。
在自身識別步驟130中,發送虛擬自身ID分組,並且確定各節點的物理節點ID。更具體地說,通過連接到所述根節點的至少一個埠的至少一個虛擬網絡控制器(VNC),重複傳送如同虛擬節點ID那麼多的自身ID分組。然後,根節點通過傳送其自己的自身ID分組,擁有一節點ID。
這個將要通過產生示於圖1的IEEE 1394網絡進行解釋。圖2示出了包括兩個節點(節點A和節點B)的IEEE 1394網絡。圖3示出了包括九個節點的IEEE 1394網絡的結構。圖4示出了包括一虛擬網絡控制器使得所述節點檢測所述虛擬網絡為示於圖3的網絡的IEEE 1394虛擬網絡。
構建示於圖4的網絡,以便檢測示於圖2的網絡中的示於圖3的虛擬網絡。然後,在初始化過程中,示於圖4的網絡象示於圖3的網絡操作。在此,示於圖4的網絡不必與示於圖3的網絡完全相同。當構建示於圖4的網絡具有如同示於圖3中網絡節點那麼多的節點、並且各節點具有所需的節點ID時,各節點檢測示於圖4的網絡為等同於示於圖3的網絡。
以下將更詳細地描述通過在示於圖2的網絡中產生示於圖4的虛擬網絡,來檢測示於圖4的網絡為示於圖3的網絡的各節點的過程。
由於在初始化過程中設定網絡和ID,必須重新構建所述初始化。通過諸如總線初始化、樹識別、和自身識別等三個過程,執行初始化。在執行初始化之前,必須確定如何構建網絡。用於構建虛擬網絡的自身ID分組從外部提供或在自身內構建。此時,當通過接收已經構建的特定IEEE 1394網絡信息,在示於圖2中的IEEE 1394網絡中構建一虛擬網絡時,需要使遠端節點(節點B)擁有預定的所需節點ID、並且檢測已經構建的網絡的節點那麼多的節點,或者要虛擬構建的網絡連接在遠端節點屬於的網絡。因此,如圖4所示,從VNCl發送具有比節點B的ID值(#5)小的ID值的自身ID分組。從VNC2發送比B節點的ID值大的自身ID分組。根節點最後發送其自己的自身ID分組,並且具有最後的節點ID。
1.總線初始化(Bus Initialize)在此過程中,各節點確定它們是枝還是葉。圖2的各節點的物理層晶片(physical layer chips)確定各節點是枝還是葉。節點A是枝或葉。節點B總是葉。除了連接到節點B的埠的兩個埠的狀態必須是『不連接』,使得節點A變成葉。虛擬網絡控制器(用於支持遠端節點以檢測虛擬網絡的控制器)切斷模擬部分,使得PHY(物理層)晶片檢測兩個埠的狀態為『不連接』。
2.樹識別確定各節點的父埠和子埠。如圖4所示,在節點A的PHY晶片中連接到節點B的埠(埠#1)總是變成子埠(節點A總是根節點)。剩下的兩個埠能夠變成子埠。能夠將兩個埠限制到相繼的四種情況。
表
以下將參照圖5到8描述執行樹識別的過程。首先,如圖5所示,VNC1和VNC2準備parent_notify信號,以便作為子。如圖6所示,當葉節點、VNC1和VNC2發出parent_notify信號時,枝節點接收parent_notify信號,並且發出parent_notify信號的葉節點、VNC1和VNC2設定它們的埠為父節點。如圖7所示,枝節點發出child_notify信號到葉節點、VNC1和VNC2,並且設定它自己的埠為子埠,而且變成根。最後,如圖8所示,枝節點總變成根,並且作為IEEE 1394總線周期的周期主控部件(cycle master)操作。
在圖9中,當僅有兩個節點時,VNC1和VNC2的狀態將是『不連接』,僅枝節點的一個埠變成子,葉節點的埠變成父。圖10示出了枝節點的三個埠中一個是『不連接』,並且兩個埠變成子埠的網絡。
3.自身識別確定各節點的物理ID。當每個VNC發出虛擬自身ID分組到根節點時,節點B檢測虛擬網絡。下面將參照圖11列24描述該過程。將描述節點A的所有三個PHY埠(埠0、埠1、埠2)被使用的情況。
由於節點A的物理晶片(PHY晶片)是根,如圖11所示,PHY晶片發出grant(許可)。在此,grant表示所述根節點準備從其計數節點接收自身ID分組。
根節點的PHY晶片向子埠(埠#0)發出grant,並且向剩餘子埠(埠#1和#2)發出data_prefix。如圖12所示,VNC1檢測所述grant並且發出data_prefix(數據前綴)、自身ID分組和data_end(數據結束)。data_prefix和自身ID分組被廣播。如圖13所示,如果有更多的虛擬節點的自身ID分組發送,VNC1變成閒置。如圖14所示,確認VNC1的閒置狀態的根節點的PHY晶片通過埠#0向VNC1再發出grant。VNC1重複圖12到14的過程如同所需節點ID的數日那麼多次。如圖15所示,在通過#4發送所需節點的自身ID分組之後,發送ident_done。然後,如圖16所示,根節點的PHY晶片響應為data_prefix,並且向剩餘埠發送idle(閒置)。
如圖17所示,根節點的PHY晶片向埠#0和#2發送data_prefix,並且向埠#1發送grant。如圖18所示,data_prefix、自身ID分組和data_end從遠端節點傳送到根節點。如圖19所示,當遠端節點發出ident_done時,根節點通過發出data_prefix響應,並且向剩餘埠發出idle。如圖20所示,根節點的PHY晶片從遠端節點接收idle,並且通過埠#0和#1發出dara_prefix,和通過埠#2向VNC2發出grant。
當VNC2接收到grant時,VNC2執行圖21和圖22的處理,並且重複圖20到圖22的處理如同所需ID的數目那麼多次。VNC2發送如同所需節點那麼多的data_prefix、自身ID分組、和data_end,然後如圖23所示,向埠#2發送ident_done。如圖24所示,根節點的PHY晶片通過作為根的每個埠,傳送最後的自身ID分組。然後,PHY晶片向子埠發送idle。由任意的復位間隔保持閒置狀態。
為了構建如圖2所示的IEEE 1394基本網絡,如圖4所示,於是設定與示於圖3中的網絡相同數目的節點和任意的ID,通過圖5到圖9的過程執行樹識別,並且執行圖11到圖24的過程。然後,確定所有節點的節點ID。最後,完成所述虛擬網絡。在上述網絡中,節點b檢測如同圖3的網絡中連接的相同數目的節點,並且具有一特定的節點ID。
圖25是虛擬網絡控制器的結構的方框圖,該虛擬網絡控制器用於產生虛擬網絡,該虛擬網絡由IEEE 1394網絡中的各節點檢測,該IEEE 1394網絡包括按照本發明的根節點和至少一個節點。虛擬網絡控制器包括存儲部分20、主控制器22、數字部分24和28、模擬部分26和30。
位於主控制器中的存儲部分20存儲如同包括在該虛擬網絡中的虛擬節點ID的數目那麼多的自身ID分組。
主控制器22當執行用於產生所述虛擬網絡的總線初始化、樹識別和自身ID識別時,控制所產生的總線周期開始和結束處的定時。主控制器22在自身ID識別期間,從存儲部分20中讀出如同存儲在存儲部分20中的虛擬節點那麼多的自身ID分組,並且將自身ID分組傳送到包括根節點32的IEEE 1394網絡的各節點。
數字部分24和28產生傳送自身ID分組所需的狀態信號和包括根節點的IEEE 1394網絡的總線周期所需的parent_notify信號,調節到在總線初始化、樹識別和自身識別期間主控制器的總線周期開始和結束的時間點;模擬部分26和30將數字部分24和28的傳送信號轉換成模擬信號,將從IEEE 1394網絡的各節點接收的模擬信號轉換成數位訊號,並且將轉換的信號傳送到數字部分24和28。模擬部分26和30不同於IEEE 1394-1995標準僅在於沒有Data_Rx、Sppd_Rx和Strb_Rx功能。由於初始化總是以最小速度執行,不需要速度檢查。由於不需使用分組信息,數據的Rx部分和選通不需要。
按照本發明,能夠在網絡上任意設定節點ID。也能夠物理檢測和操作虛擬網絡。當由某介質連接不同的IEEE 1394網絡(獨立進行初始化)時,各節點檢測IEEE 1394網絡是在同一網絡中。
權利要求
1.一種用於產生IEEE 1394虛擬網絡的方法,包括以下步驟將虛擬網絡控制器連接到預定的IEEE 1394網絡,該虛擬網絡控制器用於產生一虛擬自身ID分組,該分組包括構建一虛擬網絡所需的虛擬節點ID信息;通過執行虛擬總線初始化,各節點和構建IEEE 1394網絡的虛擬網絡控制器確定它們是枝還是葉;通過執行虛擬樹識別,確定關於各節點的埠的父埠和子埠及根節點;和通過發送準備的虛擬自身ID分組,確定各節點的物理節點ID。
2.如權利要求1所述的方法,其中執行虛擬樹識別的步驟包括以下步驟通過虛擬網絡控制器和葉節點發送parent_notify信號到枝節點,設定葉節點的埠為父節點;和當枝節點接收到parent_notify信號時,枝節點傳送child_notify信號到虛擬網絡控制器和葉節點,設定其自己的埠為子埠,並且變成根節點。
3.如權利要求1所述的方法,其中確定物理節點ID的步驟包括以下步驟經過連接到根節點的至少一個埠的至少一個虛擬網絡控制器(VNC),重複和傳送如同虛擬節點ID那麼多的自身ID分組;和根節點發送其自己的自身ID分組,並且擁有一節點ID。
4.一種虛擬網絡控制器,用於產生能夠由在包括根節點的IEEE 1394網絡中的各節點檢測的虛擬網絡,包括存儲部分,用於存儲如同包括在該虛擬網絡中的虛擬節點ID那麼多的自身ID分組;主控制器,控制當執行用於產生所述虛擬網絡的總線初始化、樹識別和自身識別時,所產生的總線周期開始和結束時刻處的點,在自身識別期間,讀出如同存儲在存儲部分中的虛擬節點那麼多的自身ID分組,並且將自身ID分組傳送到IEEE 1394網絡的各節點;數字部分,用於產生包括根節點的IEEE 1394網絡的總線周期所需的parent_notify信號和傳送自身ID分組所需的狀態信號,調節到在總線初始化、樹識別和自身識別期間主控制器的總線周期開始和結束的時間點;模擬部分,用於將數字部分的傳送信號轉換成模擬信號,將從IEEE 1394網絡的各節點接收的模擬信號轉換成數位訊號;並且將轉換的信號傳送到數字部分。
全文摘要
一種產生IEEE1394虛擬網絡和產生該虛擬網絡的控制器,該方法包括:將虛擬網絡控制器連接到預定的IEEE1394網絡;執行虛擬總線初始化,各節點和虛擬網絡控制器確定它們是枝還是葉;執行虛擬樹識別,確定關於各節點的埠的父埠和子埠及根節點;通過發送準備的虛擬自身ID分組,確定各節點的物理節點ID。根據本發明,能夠在網絡上任意設定一節點ID。當由介質連接不同的IEEE1394網絡時,各節點檢測該網絡是在同一網絡上。
文檔編號H04L12/40GK1261232SQ99118199
公開日2000年7月26日 申請日期1999年8月30日 優先權日1998年10月13日
發明者宋禎鎬, 李琪源, 韓東日 申請人:三星電子株式會社