專利名稱::通過有線網絡存取接口控制無線網絡存取的方法
技術領域:
:本發明涉及一種存取無線網絡的方法,特別涉及一種通過一有線網絡存取接口來控制無線網絡存取的方法。背景說明在現代化的信息社會中,網絡能將大量的數據、信息、影音信息及知識,以數字電子訊號的形式快速地交換傳播,促進人際交流、經驗累積、知識交流以及技術的提升,所以網絡已成為現代資運社會的重要基礎之一。繼有線網絡基礎建設廣泛普及后,無線網絡的建設發展也已經蓬勃展開。有線網絡數據傳輸較為穩定,數據的安全及隱私有較佳的保障;無線網絡則能擺脫網絡傳輸線的束縛,讓使用者能以機動(mobile)、便攜(portable)的方式,隨時隨地經由無線網絡存取各種網絡資源。由于有線網絡、無線網絡各具特色,如何讓使用者以較低成本及終端機資源來有效地存取兩種不同的網絡,也成為信息業者研發的重點。請參考圖1。圖1為一已知電腦10的功能方塊圖。電腦10中設有中央處理器CPU0、北橋電路NB0、南橋電路SB0、存儲器12、繪圖加速卡16、顯示器18、外設裝置P0、儲存裝置M0。為了存取有線網絡22A以及無線網絡22B,電腦10中可裝設有線網絡卡20A及無線網絡卡20B。中央處理器CPU0用來主控電腦10的操作;北橋電路NB0電連于中央處理器CPU0以及存儲器12、繪圖加速卡16之間,用來管理三者間的高速的數據往來傳輸。存儲器12用來以揮發性的方式儲存中央處理器CPU0運作時所需的數據或程序。中央處理器CPU0要顯示于使用者的圖形數據,由繪圖加速卡16處理后傳輸至顯示器18,由顯示器18將其顯示出來。南橋電路SB0則連接于北橋電路NB0以及一總線24(像是PCI總線,peripheralcommunicationsinterface總線)之間,而總線上則連接有外設裝置P0(像是鍵盤、鼠標等的輸入裝置,或是音效卡等等)、用來以非揮發性的方式儲數據的儲存裝置M0(像是硬盤、光盤機等等),以及有線網絡卡20A、無線網絡卡20B。南橋電路SB0用來管理總線24上各裝置與中央處理器CPU0間較低速的數據傳輸。在電腦10的網絡存取裝置中,有線網絡卡20A可以是遵循IEEE802.3有線區域網絡(LAN,LocalAreaNetwork)規格的有線網絡卡;做為一有線網絡電路,有線網絡卡20A中設有一介質存取(MediumAccess)電路MAC1以及一實際層電路PHY1。無線網絡卡20B則可以是遵循IEEE802.11無線區域網絡(WLAN,wirelessLocalAreaNetwork)的無線網絡電路,同樣也設有介質存取電路MAC2以及實體層電路PHY2。在開放系統互連(OSI,OpenSystemInterconnection)的網絡架構下,介質存取電路MAC1以及MAC2分別用來實現有線網絡以及無線網絡中介質存取控制層(MAClayer,MediumAccessControllayer)的功能。當電腦10要存取網絡資源時,介質存取電路可由其相關的實際層電路取得數字型式的數據,予以處理并上傳至電腦主機;電腦10要傳輸至網絡的數據,由介質存取電路加以打包、安排網絡存取的實體地址,并將打包后的數據傳輸至對應的實體層電路;同樣地,網絡通過對應實體層電路傳來的數據,也由介質存取電路將其解包等等。各網絡卡中的實體層電路PHY1、PHY2,則是分別用來實現有線網絡及無線網絡中的實體層(Physicallayer)功能,要傳輸至網絡的數據在經過介質存取電路的處理后,傳輸至對應的實體層電路,由實體層電路將其編碼調制為適合傳輸的訊號以傳輸出去;實體層電路也可接收網絡傳來的訊號并將其解編解調,以將訊號中的數據取出,回傳至對應的介質存取電路。有線網絡存取中的實體層電路PHY1是以傳輸線23連接于有線網絡22A(譬如說是有線網絡中另一終端機或伺服器);無線網絡存取中的實體層電路PHY2還包含有基頻電路、射頻電路(未圖示)等等電路,基頻電路可將介質存取電路MAC2傳來的數據進行基頻處理,再由射頻電路將其以無線電方式發射出去;無線網絡傳來的射頻無線電訊號也會由射頻電路接收,由基頻電路將其解調后轉換為電子數據以回傳至介質存取電路MAC2。在電腦10要實際存取網絡資源時,各網絡卡都會配合一載入至存儲器12的驅動程序,來管理電腦10與網絡間往來的數據。以有線網絡卡20A為例,當電腦10開始要存取有線網絡22A時,載入至存儲器12中的有線網絡驅動程序26A會在存儲器12中建立多個順序排列的描述符(descriptor)TxA(不同的描述符分別標示為TxA(1)...至TxA(n1)),以及依序排列的描述符RxA(不同的描述符分別標示為RxA(1)...至RxA(m1));并在存儲器中配置存儲空間,例如傳輸存儲空間DTA及接收存儲空間DRA。各描述符用來記錄一對應存儲空間的地址,以做為一指針(pointer)指向該對應的存儲空間。當電腦10要將一筆數據傳輸至有線網絡22A時,會通過有線網絡驅動程序26A將該筆數據存至存儲空間DTA,并安排一描述符TxA(譬如說是描述符TxA(1))指向該存儲空間。有線網絡卡20A中的介質存取電路MAC1要開始將該筆數據傳輸至有線網絡22A時,就會從存儲器12中的描述符TxA(1)中找到該筆數據存在那個存儲空間DTA中,并由該存儲空間DTA中取得該筆數據;接下來介質存取電路MAC1就可將該筆數據加上標頭(header)及標尾(如像幀檢查序列FCS,FrameCheckSequence)以打包該筆數據,并通過實際層電路PHY1將其傳輸至有線網絡22A上。若一個存儲空間DTA無法完全記錄該筆數據,則該筆數據會被分段儲存在多個不同的存儲空間DTA中,并安排多個描述符TxA來分別對應至這些存儲空間DTA。舉例來說,若該筆數據要存放在三個不同的存儲空間DTA中,有線網絡驅動程序26A會安排三個連續的描述符TxA(1)、TxA(2)及TxA(3)來指向這三個存儲空間,并在描述符TxA(1)、TxA(2)中標記“繼續存取”的記號,以便讓介質存取電路MAC1知道在存取完這兩個描述符所指向的存儲空間DTA后,還要循序繼續存取下一個描述符指向的存儲空間DTA。而在最后一個描述符TxA(3)中,就會標記有“停止存取”的記號,讓介質存取電路MAC1不再存取后續描述符(也就是描述符TxA(4)以后)所指向的存儲空間DTA。經由上述的安排,介質存取電路MAC1就能正確存取描述符TxA(1)、TxA(2)及TxA(3)所指向的存儲空間DTA,完整取得存儲器12中要傳輸至有線網絡22A的數據。在實際實施時,介質存取電路MAC1會具有直接存儲存取機制(DirectMemoryAccessengine,DMAengine),讓介質存取電路MAC1能直接存取存儲器12中的數據,以節省中央處理器CPU0的資源,加速數據的存取效率。類似于上述用來管理傳輸數據的機制,有線網絡驅動程序26A也會在存儲器12中建立用來管理接收數據的描述符RxA;各描述符RxA具有一指針,指向一對應的存儲空間DRA。當有線網絡卡20A由有線網絡22A接收到要傳輸至電腦10的數據時,也會配合有線網絡驅動程序26A將解包后的數據儲存于一存儲空間DRA中,并對應地設定指向該存儲空間的描述符RxA(譬如說是描述符RxA(1))。這樣一來,中央處理器CPU0就能由描述符RxA(1)指向的存儲空間DBA取得由有線網絡22A傳來的數據。類似于傳輸數據的管理機制,若有線網絡卡20A接收到的數據要存在多個不同的存儲空間,有線網絡卡20A也會配合有線網絡驅動程序26A安排多個對應的描述符RxA來指向這些存儲空間。在較佳的情況下,不論是描述符TxA或是描述符RxA,都被設定為環狀的數據結構。以描述符TxA為例,隨著要傳輸至有線網絡22A的數據逐筆被存入不同的存儲空間DTA,有線網絡驅動程序26A會依照描述符TxA(1)、TxA(2)等等的順序來將各描述符指向不同的存儲空間,有線網絡卡20A也會依照描述符TxA(1)、TxA(2)等等的順序來存取各指針裝置指向的存儲空間,等到用到最后一個描述符TxA(n1),有線網絡驅動程序26A就會循環遞回至頭一個描述符TxA(1),繼續以描述符TxA(1)、TxA(2)的順序來指向后續傳輸數據儲存的存儲空間;而有線網絡介質存取電路MAC1也會依照描述符的循環順序,存取各描述符指向的存儲空間。同理,描述符RxA也是依照上述的方式被循環利用。類似于上述有線網絡存取的原理,已知電腦10中也是以無線網絡驅動程序26B配合無線網絡卡20B建立多個描述符TxB(不同的描述符TxB分別標示為TxB(1)至TxB(n2))及描述符RxB(不同的描述符RxB分別標示為RxB(1)至RxB(m2)),分別用來指向存儲空間DTB及DRB。要傳輸至無線網絡22B的數據會存在描述符TxB所指向的存儲空間DTB中,由無線網絡22B接收到的數據則會存在描述符RxB所指向的存儲空間DRB中。利用描述符TxB及RxB,介質存取電路MAC2以及中央處理器CPU0就能由存儲器12中取得要傳輸至無線網絡的數據,以及由無線網絡傳來的數據,實現電腦10存取無線網絡22B的目的。雖然有線網絡卡20A和無線網絡卡20B都是以描述符來管理網絡存取的相關數據,但有線網絡存取所使用的描述符(也就是描述符TxA及RxA),和無線網絡存取所使用的描述符(也就是描述符TxB及RxB)兩者的數據結構并不相同。為了適應無線網絡的特殊需要,無線網絡存取的描述符還要另外指示無線網絡存取的特殊狀態。舉例來說,因為無線網絡22B和電腦10之間沒有實際網絡傳輸線連接,當電腦10要傳輸一筆無線通訊數據至無線網絡22B時,電腦10也無法確定該筆由無線網絡卡20B以無線方式傳輸出去的無線通訊數據是否已經被無線網絡22B另一端的終端機順利接收,此時中央處理器CPU0可要求無線網絡22B在接收到這筆無線網絡數據后,回傳一確認收悉的回應(acknowledge)數據至電腦10。在實際實施時,當中央處理器CPU0通過無線網絡驅動程序26B將該筆無線通訊數據儲存至一存儲空間DTB,會安排一描述符TxB來指向該存儲空間DTB時,并在該描述符TxB中特別指示要向無線網絡22B要求對該筆無線通訊數據的確認回應;當無線網絡卡20B中的介質存取電路MAC2根據該描述符TxB來取得該筆無線通訊數據時,就會由該描述符TxB得到要對無線網絡要求回應。這樣一來,當介質存取電路MAC2將該筆無線通訊數據打包時,就會在標頭處加上要求回應的相關數據,再將打包之后的無線通訊數據傳輸至實體層電路PHY2,由實體層PHY2將其以無線的方式傳輸至無線網絡22B。事實上,在諸如IEEE802.11的無線網絡架構下,除了上述的回應要求外,還有許多有別于有線網絡的設定。像是無線網絡是以無線的方式傳輸數據,除了收送數據的雙方外,任何能接收無線訊號的第三方都能截獲無線傳輸的數據。為了確保數據內容不外泄,IEEE802.11無線網絡架構下就訂定了基本的有線等效隱私(WEP,Wired-EquivalentPrivacy)模式,讓收送數據的雙方將無線傳輸的數據加密,維持基本的數據隱私;而中央處理器CPU0也是以無線網絡驅動程序26B下的描述符TxB、RxB來控制介質存取電路MAC2是否要以有線等效隱私的模式來存取無線網絡資源。另外,為了要適應無線網絡架構下終端機機動可攜的特性,在無線網絡架構下,各終端機是以一存取站(accesspoint,或稱基臺)為網絡的中繼站。更明確地說,當一終端機(像是電腦10)要存取無線網絡22B的資源時,該終端機會以無線聯系的方式加入一個由一存取站組織的基本服務集合(BSS,BasicServiceSet);同一基本服務集合下可有多個終端機,都以無線的方式與該基本服務集合的存取站聯系,該存取站的無線網絡實體地址就可當作該基本服務集合的地址(BSSID,BSSidentity)。當一隸屬于一第一基本服務集合的第一終端機要聯系上屬于另一第二基本服務集合的第二終端機時,第一終端機會先聯系第一基本服務集合的存取站,由該存取站通過該無線網絡下的分布系統服務(DSS,DistributionSystemService)聯系第二基本服務集合的存取站,再由該第二基本服務集合的存取站聯系至第二終端機,完成第一終端機與第二終端機間的聯系。在上述的無線網絡聯系過程中,各終端機要與各存取站取得聯系,加入/退出一基本服務集合,通過存取站存取分布系統服務等等事項,都要通過終端機與存取站之間以特定管理(management)、控制(cortrol)幀數據相互聯系,如像數據傳輸時基本服務集合的地址、確認(acknowledge)、信標(beacon)...等等;如圖1的已知結構,電腦內各硬件之間必須產生許多內部的控管訊號或者狀態信息,都是通過描述符TxB、RxB而為中央處理器CPU0以及介質存取電路MAC2所知悉。相較之下,在有線網絡存取中,因為數據傳輸的途徑有實體網絡傳輸線的保障,其存取控管的機制相對地就較為簡化,有線網絡存取所使用的描述符不像無線網絡存取中的描述符那樣繁雜,因此,已知技術中兩者所使用的描述符并不相同,也無法共享軟硬件資源。由于有線網絡22A及無線網絡22B的存取有上述的差異,無線網絡存取所用的描述符(TxB及RxB)和有線網絡存取的描述符(TxA、RxA)并不相同也不能相容。而當已知技術中電腦10要同時存取有線及無線網絡資源時,有線網絡驅動程序26A與無線網絡驅動程序26B也要各自建立有線及無線網絡所用的相異描述符。在現代高度網絡化的信息社會,網絡連接能力已經變成電腦的基本需求;有效整合有線無線網絡的存取能力,簡化有線無線網絡存取控制機制,也是信息業界致力研發的重點。然而,在已知技術中,因為有線無線描述符格式的不同,使得有線、無線網絡驅動程序也無法整合;同理,既然有線、無線驅動程序建立的描述符并不相容,要由描述符中取得網絡存取相關信息的介質存取電路MAC1、MAC2,也不易在硬件方面整合以簡化電路結構。
發明內容因此,本發明的主要目的,在于提供一種通過有線網絡存取接口控制無線網絡存取的方法和相關裝置,以整合電腦終端機中有線、無線網絡存取的能力,精簡網絡存取的配置。有已知技術中,有線網絡卡、無線網絡卡都要分別配合各自的驅動程序,在電腦的存儲器中占用不同的存儲空間,網絡存取的數據也是分別通過格式相異的描述符來存取;由于有線、無線網絡存取中描述符格式不能相容,使有線、無線網絡驅動程序無法整合,有線、無線網絡存取所用的硬件網絡卡,其運作構造也無法進一步精簡。在本發明的較佳實施例中,是將無線網絡存取的驅動程序整合于有線網絡存取的驅動程序中,以統一利用有線網絡存取的描述符及該等描述符指向的存儲空間來控制有線、無線網絡存取。在硬件方面,則是將有線網絡存取的介質存取電路整合于南橋電路,使得有線網絡卡中僅需設置有線網絡存取的實體層電路;而無線網絡卡是連接于有線網絡的介質存取電路。當電腦要控制無線網絡存取時,是將原先要記錄于無線網絡描述符中的控管數據當作一筆控制數據,連同存取無線網絡的數據一并儲存于有線網絡描述符所指向的存儲空間。有線網絡的介質存取電路會配合有線網絡存取的驅動程序,由有線網絡描述符中取得無線網絡存取的控制數據及存取無線網絡的數據并傳輸至無線網絡卡,讓無線網絡卡能依據控制數據來將存取無線網絡的數據傳輸至無線網絡。當無線網絡卡接收到無線網絡傳來的數據及控管的回應時,也可將其寫入至有線網絡描述符指向的存儲空間,讓電腦中的中央處理器能配合有線網絡驅動程序來存取無線網絡傳來的數據。本發明還披露了一種電腦系統,該電腦系統包含中央處理器;存儲器,用來暫存該中央處理器運作時所需的數據;整合有線網絡介質存取電路的芯片組,耦接于該中央處理器以及該存儲器;該電腦系統可以低成本擴充一無線網絡卡,其具有無線網絡介質存取電路以及實體層電路。無線網絡介質存取電路耦接該實體層電路,通過MII接口耦接于該芯片組,用來與該有線網絡介質存取電路通訊(communicate);其中該有線網絡介質存取電路的有線網絡驅動程序會于開機過程中要求該電腦于存儲器配置存儲空間,較佳地包含一傳輸存儲空間及一接收存儲空間;而該無線網絡介質存取電路通過該接口及該有線網絡介質存取電路存取該存儲空間的控管數據及包數據。由于本發明披露的技術可整合有線、無線網絡存取的軟硬件資源,精簡有線、無線網絡存取的軟硬件配置,并增加電腦終端機存取有線、無線網絡的效能。圖1為一已知電腦系統有線、無線網絡存取的功能方塊圖。圖2為本發明中電腦系統的功能方塊圖。圖3為圖2中電腦無線網絡存取時存儲器中相關數據的示意圖。具體實施例方式請參考圖2。圖2為本發明中電腦30較佳實施例的功能方塊圖。電腦30中設有中央處理器CPU1、北橋電路NB1、南橋電路SB1、繪圖加速卡36、顯示器38、存儲器32、儲存裝置M1、外設裝置P1;要存取有線網絡42A,電腦30中可加裝有線網絡卡40A;要存取無線網絡42B,電腦30中可加裝無線網絡卡40B。中央處理器CPU1用來主控電腦30的運作,存儲器32用來揮發性地儲存中央處理器CPU1運作時需要的數據及程序;電腦30要顯示于使用者的圖形畫面,則經由繪圖加速卡36的圖形處理后,再傳輸至顯示器38顯示出來。北橋電路NB1電連于存儲器32、中央處理器CPU1、繪圖加速卡36之間,用來協調這些裝置間的高速數據交換。用來做非揮發性數據儲存的儲存裝置M1(像是硬盤、光盤機等等),以及外設裝置P1(像是鼠標、鍵盤等的輸入裝置,或是音效卡等等)則通過一總線44(例如是USB、PCI總線)連接于南橋電路SB1,由南橋電路SB1來控制這些裝置與北橋電路NB1間的低速數據傳輸。在圖2的本發明的較佳實施例中,有線網絡存取(譬如說是IEEE802.3協定下的有線區域網絡)所用的介質存取電路MAC3可與南橋電路SB1整合于同一南橋芯片41中。這樣一來,有線網絡卡40A中僅需設置有線網絡的實體層電路PHY3,以傳輸線43連接于有線網絡42A。介質存取電路MAC3做為一有線網絡電路,配合有線網絡卡40A中的有線網絡實體層電路PHY3,就能分別完成開放系統互連網絡架構下的介質存取控制層與實體層的功能,讓電腦30能存取有線網絡資源。類似于圖1中有線網絡存取的情形,當電腦30要存取有線網絡42A時,中央處理器CPU1會在存儲器32中載入并執行一有線網絡驅動程序46A,并在存儲器32中建立有線網絡的描述符TxC及RxC(不同的描述符TxC、RxC分別標示為TxC(1)...TxC(n3),以及RxC(1)...RxC(m3));各描述符都指向對應的存儲空間傳輸存儲空間DTC及接收存儲空間DRC。當電腦30要將一筆數據傳輸至有線網絡42A時,則配合有線網絡驅動程序46A將該筆數據儲存于一個(或多個)存儲空間DTC,并安排描述符TxC來指向該筆數據所在的存儲空間DTC。而有線網絡介質存取電路MAC3,就能依據存儲器32中的描述符TxC,以介質存取電路MAC3本身的直接存儲存取機制(DMAengine),由存儲器32中取得該筆要傳輸至有線網絡42A上的數據。在有線網絡介質存取MAC3將該筆數據打包后,就能將其傳輸至有線網絡實體層電路PHY3,由實體層電路PHY3將其編碼調制后傳輸至有線網絡42A。同理,有線網絡42A通過傳輸線43傳至電腦30的數據,也會由有線網絡實體層電路PHY3接收并解碼解調后,回傳至有線網絡介質存取電路MAC3。有線網絡存取電路MAC3將該筆數據解包后,就可通過有線網絡驅動程序46A將解包后的數據儲存于一個(或多個)存儲空間DRC,并安裝對應的描述符RxC來指向這些存儲空間。這樣一來,中央處理器CPU1就能通過描述符RxC指向的存儲空間DRC中,取得這筆由有線網絡42B傳來的數據。在本發明圖2所示的較佳實施例中,無線網絡存取所使用的無線網絡卡40B中,設有介質存取電路MAC4以及實體層電路PHY4,分別用來實現無線網絡中介質存取控制層以及實體層的功能。本發明與已知技術不同之處,在于本發明是將無線網絡的介質存取電路MAC4連接于有線網絡的介質存取電路MAC3,使得有線網絡介質存取電路MAC3將無線網絡介質存取電路MAC4視為一實體層電路(類似于實體層電路PHY3),以使無線網絡傳輸可以使用有線網絡介質存取電路MAC3的軟硬件資源;而有線網絡介質存取電路MAC3可統一通過一傳輸接口(譬如說是介質獨立接口,MII,MediumIndependentInterface)而將直接存儲存取機制取得的數據傳輸至有線網絡卡40A(以便利用有線網絡),或傳輸至無線網絡卡40B,以利用無線網絡傳輸。配合這樣的硬件架構,無線網絡驅動程序46B也被整合入有線網絡驅動程序46A,有線網絡驅動程序46A檢測介質存取電路MAC3運作的對象是有線網絡卡40B中的實體層電路PHY3,或是無線網絡卡40C中被當作另一實體層電路的網絡存取電路MAC4,并選擇是否啟動無線網絡驅動程序46B。這樣一來,就能通過有線網絡介質存取電路MAC3以及有線網絡驅動程序46A所提供的有線網絡存取接口,來控制電腦30對無線網絡的存取。如前所述,已知技術在無線網絡存取中所使用的專屬描述符不僅用來指向對應的存儲空間,也用來記錄特別為無線網絡存取所設計的內部控管數據;電腦內各硬件之間必須產生許多內部的控管(control)訊號或者狀態(status)信息,而這些信息是無法共同記錄于有線網絡存取所使用的描述符的。所以,當本發明要通過有線網絡存取接口來控制無線網絡存取時,將上述相關訊息匯整為一控管數據,存在有線網絡存取的描述符指向的存儲空間中。請參考圖3(并一并參考圖2),圖3示出了本發明利用有線網絡存取接口控制無線網絡存取時,存儲器32中相關數據結構的示意圖。當電腦30要將一筆數據傳輸至無線網絡42B時,有線網絡驅動程序46A中的無線網絡驅動程序46B將該筆數據打包(encapsulate)為數據包50A。數據包50A可分為若干區段,其中該筆要傳輸至無線網絡的數據被當作一數據有效負載,記錄于數據有效負載(datapayload)區DP中;而無線網絡卡存取的相關內部控管數據,則匯整于數據包50A中的控制數據區CTx。在本發明的較佳實施例中,無線驅動程序46B對不同的數據有效負載,產生不同的識別碼,使得各筆要傳輸至無線網絡的數據都具有一獨特的識別碼,而控制數據區CTx中還另外辟有一識別碼欄位ID0,用來記錄此識別碼。另外,如前所述,不論在有線或無線網絡存取中,對應的有線或無線驅動程序都會將要傳輸至網絡的數據加上一標頭以打包該筆數據,再由對應的實體層電路將打包后的數據傳輸至網絡。在本發明中,對應于記錄在數據有效負載區DP中要傳輸至無線網絡的數據,則是由無線網絡驅動程序46B決定無線網絡存取所使用的標頭,并將這個對應數據有效負載的標頭一并記錄于數據包50A中的標頭區H。當無線網絡驅動程序46B將數據有效負載連同其他無線網絡存取的控管數據一并打包于數據包50A后,數據包50A就能通過有線網絡驅動程序46A的管理,存入一(或多個)存儲空間DTC,并安排對應的有線網絡描述符TxC來指向這些存儲空間DTC,如圖3所示。換句話說,盡管數據包50A中的數據是要傳輸至無線網絡的,但在本發明中,數據包50A會被暫時當作是一筆要傳輸至有線網絡的數據,暫存在有線網絡描述符TxC指向的存儲空間中。配合有線驅動程序46A及有線網絡存取的描述符TxC,有線網絡的介質存取電路MAC3就能以存儲直接存取機制(DMA)取得存儲器32中的數據包50A,并將數據包50A傳輸至無線網絡卡40B中;而無線網絡介質存取電路MAC4在接收數據包50A后,就能由其中的控制數據區CTx中取出無線網絡存取所使用的控管數據,由標頭區H取出無線網絡傳輸所用的標頭,再由數據有效負載區DP中取出數據有效負載,也就是要傳輸至無線網絡42B的數據。然后無線網絡介質存取電路MAC4就能利用標頭來將數據有效負載打包,并依循無線網絡存取的控管數據控制無線網絡介質存取電路MAC4及實體層電路PHY4,將打包好的數據有效負載利用無線的方式傳輸至無線網絡42B。當無線網絡卡40B由無線網絡42B接收到由無線網絡42B傳來的數據后,無線網絡的介質存取電路MAC4將該數據中的標頭、數據有效負載以及所產生的相關無線網絡存取控管數據,分別打包于一數據包50B的標頭區H2、數據有效負載區DP2以及控制數據區CRx,并將數據包50B傳輸至有線網絡的介質存取電路MAC3。而有線網絡介質存取電路MAC3會利用直接存儲存取機制來將該數據包50B儲存于一個(或多個)數據空間DRC,并安排對應的有線網絡描述符RxC來指向此數據空間,如圖3所示。這樣一來,中央處理器CPU1就能通過描述符RxC來取得無線網絡42B傳來的數據了。如前所述,當電腦30要與一無線網絡中的存取站互動時,會互相以相關的管理、控制幀(managementframeandcontrolframe)數據來回聯系;而電腦內各硬件之間必須產生許多內部的控管(control)訊號或者狀態(status)信息,當無線網絡卡40B產生控管數據,就能將相關控管事項記載于數據包50B的控制數據區CRx中,舉例來說,無線網絡卡40B對于接收進來的包,進行檢驗以判斷包本身是否在傳輸過程發生錯誤,以產生包接收狀態(status),而無線驅動程序46B亦通過有線驅動程序46A的有機網絡指針RxC來取得數據包50B其中的控管數據,并做進一步的回應。更進一步,相似于數據包50A中的配置,介質存取電路MAC4針對無線網絡傳來的數據而產生的數據包50B,也會在控制數據區CRx中設置有一識別碼欄位ID1。如前所述,當電腦30將一筆初始數據傳輸至無線網絡42B時,會產生一對應該筆初始數據的識別碼,并能要求無線網絡42B回傳一確認收悉的回應數據;當無線網絡介質存取電路MAC4接收到無線網絡42B針對該初始數據傳回來的回應數據時,就能將該數據傳輸狀態、與目前包的接收狀態連同其相關的識別碼一并打包于接收(Rx)數據包的控制數據區,無線驅動程序46B可通過有線驅動程序46A;或者,當無線網絡卡40B每傳出一包之后,會期待對方于一預定時間內傳回前述的確認收悉的回應數據(Ackframe),當超出該預定時間未收到該確認收悉的回應數據,無線網絡卡40B會試著重傳(retry),經過數次失敗,無線網絡卡40B本身會產生相應的內部控管數據,經過有線網絡介質存取電路MAC3,利用直接存儲器存取(DMA)將此內部控管數據存放至描述符所指向的存儲器中,以將此傳輸失敗的訊息回報給電腦主機。換句話說,若圖3數據包50B中的數據有效負載是無線網絡42B針對數據包50A中數據有效負載所回傳的回應數據,則無線網絡的介質存取電路MAC4在數據包50B的欄位ID1里所記載的識別碼,就和數據包50A于欄位ID0所記載的識別碼一樣。這樣一來,當中央處理器CPU1根據描述符RxC取得無線網絡42B傳來的數據后,就能由識別碼中判斷該數據是否對應于一已傳輸至無線網絡的數據。另一方面,如像無線網絡卡40B是否已將數據成功傳輸至無線網絡,或是由無線網絡卡40B接收的包是否有錯誤等等關于網絡傳輸、接收狀態的訊息,也可配合識別碼一并記載于控管數據中。藉由這種方方式,無線網絡卡40B對無線網絡42B存取的回應,就能通過有線網絡存取接口而由中央處理器CPU1得知。另一方面,無線驅動程序46B可通過有線驅動程序46A,利用直接存儲器存取(DMA)將傳送(Tx)數據包,送達有線網絡介質存取電路MAC3,再至無線網絡卡40B端,無線網絡卡40B將數據包中控管數據取出,以對無線網絡介質存取電路MAC4以及實體層電路PHY4進行硬件控制,例如所使用的速率、功率電平(powerlevel)、以及調制方式,以IEEE802.11來說,可以采用CCK調制或PBCC調制。綜合以上所述,可知本發明中是通過有線網絡存取的接口來控制無線網絡的存取。控制無線網絡介質存取電路MAC4的控制指令以及數據有效負載,會以數據包的模式存在有線網絡存取所利用的存儲空間中,以通過有線網絡存取接口傳輸至無線網絡介質存取電路MAC4,而無線網絡介質存取電路MAC4就能依據控制指令對無線網絡進行對應的存取。而無線網絡的回應也會由無線網絡介質存取電路MAC4通過有線網絡存取接口,以數據包的方式回存至有線網絡存取所利用的存儲空間,讓電腦30能通過有線網絡的描述符來管理無線網絡存取的回應(像是數據傳輸、接收的狀態)。本發明的優點可敘述如下。首先,本發明不論是有線或無線網絡存取,都能經由有線網絡存取的接口(也就是有線網絡驅動程序46A及有線網絡介質存取電路MAC3)來控制,能精簡存儲器32中存儲空間的配置,將有線、無線網絡存取的驅動程序整合為一,簡化軟件的結構。此外,為了以控管數據的方式通過有線網絡存取接口控制無線網絡的存取,原本由無線網絡介質存取電路MAC4硬件處理的相關控管數據,在本發明中則是以中央處理器CPU1執行軟件的無線網絡驅動程序46B來處理相關的控管數據。換句話說,對無線網絡數據傳輸所需的控管數據,會先由無線網絡驅動程序46B準備好,再以控管數據的方式通過有線網絡存取接口傳至無線網絡介質存取電路MAC4;而無線網絡回應的控管數據,則以控管數據的方式通過有線網絡存取接口回傳至存儲器32中,再由無線網絡驅動程序46B決定后續聯系的方式。這樣一來,無線網絡介質存取電路MAC4的硬件電路功能就由有線網絡介質存取電路MAC3與驅動程序來分擔,從而簡化無線網絡介質存取電路MAC4的電路,以降低無線網絡卡40B設計生產制造的成本。再者,在本發明的較佳實施例中,是以介質獨立接口(MII,MediumIndependentInterface)來連接于有線網絡介質存取電路MAC3以及無線網絡介質存取電路MAC4之間,介質獨立接口的硬件規格比PCI總線精簡,使得無線網絡介質存取電路MAC4不必藉由構造復雜的PCI總線連接于南橋芯片41,也能進一步精簡無線網絡介質存取電路MAC4的電路結構。簡化的介質獨立接口具有一傳輸數據的高傳輸率總線以及一傳輸控制指令的低傳輸率途徑,但在本發明中,由于電腦30對無線網絡介質存取電路MAC4的控管都是以數據包中的控管數據來實現,也就使得控管數據可通過介質獨立接口傳輸數據的高傳輸率總線控制無線網絡存取電路MAC4,不僅能利用介質獨立接口規格精簡的優點,也不會犧牲對介質存取電路MAC4的控管效率。另一方面,雖然介質獨立接口因規格較為簡化而無法提供中斷,以供中央處理器處理由無線網絡卡傳來的內部控管數據,本發明是將無線網絡數據傳輸的狀態匯整為控管數據(如像圖3中的控制數據CRx),讓中央處理器CPU1可藉由MII接口的高的帶寬取得無線網絡數據存取的相關狀態,或者進行相關的硬件控制。綜上所述,本發明披露了一種運用于一電腦以存取無線網絡的方法。該電腦內具有一有線網絡介質存取電路通過MII接口耦接無線網絡卡,無線網絡卡上具有無線網絡介質存取電路以及實體層電路,該無線網絡介質存取電路耦接該實體層電路,該有線網絡介質存取電路的有線網絡驅動程序會于開機過程中要求該電腦于一存儲器中配置一存儲空間,較佳地包含一傳輸存儲空間及一接收存儲空間。該無線網絡介質存取電路自無線網絡接收包數據,并產生一控管數據,包含一識別碼、一與識別碼相關(associated)的先前包數據傳輸狀態以及該目前包數據的接收狀態(Rxstatus);該無線網絡介質存取電路利用直接存取存儲器通過MII接口,根據一描述符將該包數據以及該控管數據儲存至該接收存儲空間。另一方面,該無線網絡介質存取電路根據一描述符從傳輸存儲空間取得控管數據,以控制該無線網絡介質存取電路以及該實體層電路,以存取該無線網絡,舉例而言,該無線網絡介質存取電路根據該控管數據控制一存取速率、一功率電平、以及一調制方式。本發明還披露了一種電腦系統,該電腦系統包含中央處理器;存儲器,用來暫存該中央處理器運作時所需的數據;整合有線網絡介質存取電路的芯片組,耦接于該中央處理器以及該存儲器;該電腦系統可以低成本擴充一無線網絡卡,其具有無線網絡介質存取電路以及實體層電路。無線網絡介質存取電路耦接該實體層電路,通過MII接口耦接于該芯片組,用來與該有線網絡介質存取電路通訊(communicate);其中該有線網絡介質存取電路的有線網絡驅動程序會于開機過程中要求該電腦在存儲器中配置存儲空間,最好是包含一傳輸存儲空間及一接收存儲空間;而該無線網絡介質存取電路通過該接口及該有線網絡介質存取電路存取該存儲空間的控管數據及包數據。在已知技術中,有線無線網絡存取在軟硬件方面均無法相容,使得有線、無線網絡存取無法有效整合,造成軟硬件資源的重復浪費。相較之下,本發明的較佳實施例是以整合于南橋芯片的有線網絡存取電路與有線網絡驅動程序形成有線網絡存取接口,并能通過這樣的有線網絡存取接口來控制有線、無線網絡存取,以有效整合有線、無線網絡存取所需的軟硬件資源,精簡有線、無線網絡存取的軟硬件結構,使電腦能以更簡潔的方式兼備有線、無線網絡的存取能力,使網絡資源能為大眾分享。以上所述僅為本發明的較佳實施例,凡依本發明權利要求所做的均等變化與修飾,均應屬本發明專利的涵蓋范圍。權利要求1.一種運用于一電腦以存取一無線網絡的方法,該電腦具有一有線網絡介質存取電路通過一接口耦接一無線網絡介質存取電路,該方法包含有下列步驟該有線網絡介質存取電路的一有線網絡驅動程序要求該電腦于一存儲器配置一存儲空間;以及該無線網絡介質存取電路通過該接口及該有線網絡介質存取電路存取該存儲空間的一控管數據及一包數據。2.如權利要求1的方法,其中該接口是為一專屬接口。3.如權利要求2的方法,其中該接口是為一介質獨立接口。4.如權利要求2的方法,其中該存儲空間包含一傳輸存儲空間及一接收存儲空間。5.如權利要求4的方法,其中該無線網絡介質存取電路耦接至一實體層電路,該無線網絡介質存取電路是自該無線網絡接收該包數據,并產生該控管數據,以將該包數據以及該控管數據儲存至該存儲空間中。6.如權利要求5的方法,其中該控管數據包含一識別碼、一與該識別碼相關的包數據傳輸狀態以及該包數據的接收狀態。7.如權利要求6的方法,其中該無線網絡介質存取電路是根據一描述符而將該控管數據以及該包數據儲存至該接收存儲空間。8.如權利要求4的方法,其中該無線網絡介質存取電路耦接至一實體層電路,該無線網絡介質存取電路根據該控管數據控制該無線網絡介質存取電路以及該實際層電路,以存取該無線網絡。9.如權利要求8的方法,其中該無線網絡介質存取電路是根據一描述符而將該控管數據以及該包數據從該傳輸存儲空間讀取出來。10.如權利要求8的方法,其中該無線網絡介質存取電路根據該控管數據控制一存取速率、一功率電平、以及一調制方式。全文摘要本發明提供一種運用于一電腦以存取一無線網絡的方法。該電腦中包含有一存儲器;一用來存取一有線網絡的有線網絡介質存取電路;以及藉由一專屬接口連接于該有線網絡介質存取電路、并可存取一無線網絡的無線網絡介質存取電路。該存儲器中配置有一傳輸存儲空間及一接收存儲空間。該無線網絡介質存取電路根據一描述符存取配置的存儲空間中的控管數據以及包數據,該控管數據可用以控制無線網絡介質存取電路,并可用以回報傳輸包以及接收包的狀態信息。文檔編號H04Q3/00GK1469610SQ0214072公開日2004年1月21日申請日期2002年7月15日優先權日2002年7月15日發明者陳建村申請人:威盛電子股份有限公司