專利名稱:一種對用戶終端主動掃描的反饋方法及接入點的制作方法
技術領域:
本發明涉及通信領域,尤其涉及一種對用戶終端主動掃描的反饋方法及接入點。
背景技術:
在無線局域網絡(WirelessLocal Area Networks,WLAN)中,基本服務集(BasicService Set,BSS)為無線局域網絡的基本組成部分,當用戶終端需要接入基本服務集網絡時,需要通過掃描發現基本服務集網絡和其接入點(Access Point,AP)。掃描方法分為主動掃描和被動掃描兩種模式,其中當用戶終端處于主動掃描模式,在信道上通過單播或廣播向接入點發送試探請求消息,然后在一定的時間內等待相應的、由接入點發送的試探響應信息,通過這種方式主動發現基本服務集網絡并獲取該基本服務集網絡的相關聯屬性。用戶終端發送的所述試探請求消息中包含服務集標識符(Service Set Identifier7SSID)及基本服務集標識符(Basic Service Set Identifier, BSSID),接入點在接收到該試探請求消息后,如果滿足如下條件即向用戶終端反饋相應的試探響應消息:若所述SSID為通配符SSID或與擴展服務集(Extended Service Set, ESS)的SSID相匹配,并且所述BSSID是通配符BSSID或者為接入點的BSSID。然而,在現有技術中,接入點向用戶終端反饋試探響應消息時,并不是立刻向用戶終端發送試探響應消息,而是將所述試探消息排列在傳輸隊列中的,然后通過分布式競爭的方式獲取發送消息的機會。但是用戶終端等待響應的時間一定,當用戶終端結束本信道掃描后,由于接入點不知道用戶已經離開,可能仍然繼續向用戶終端發送試探消息,導致信道資源浪費。
發明內容
本發明的實施例提供一種對用戶終端主動掃描的反饋方法及接入點,能夠通過在接入點中設置計時器,在計時器達到預設時間后清除緩存的試探響應信息,進一步地,減少了信道資源的開銷。為達到上述目的,本發明的實施例采用如下技術方案:一方面,本發明實施例提供一種對用戶終端主動掃描的反饋方法,包括:接收來自用戶終端的試探請求消息,所述試探請求消息包括所述用戶終端預設的掃描時間;生成并緩存對所述試探請求消息的試探響應消息;根據接收到的所述用戶終端預設的掃描時間,設置并開啟對應于所述用戶終端的計時器;在判斷所述計時器達到所述預設的掃描時間,且所述試探響應消息未發送至所述用戶終端后,清除緩存的所述試探響應消息。一方面,本發明實施例提供一種接入點,包括:接收器,用于接收來自用戶終端的試探請求消息,所述試探請求消息包括所述用戶終端預設的掃描時間;緩存器,用于生成并緩存對所述試探請求消息的試探響應消息;計時器設置單元,用于根據接收到的所述用戶終端預設的掃描時間,設置并開啟對應于所述用戶終端的計時器;處理器,用于在判斷所述計時器達到所述預設的掃描時間時,且所述試探請求消息未發送至所述用戶終端后,清除緩存的所述試探響應消息。本發明實施例提供的一種對用戶終端主動掃描的反饋方法及接入點,通過接收到來自用戶終端的、包括用戶終端預設的掃描時間的試探請求消息,在生成并緩存對該試探請求消息的試探響應消息的同時,根據用戶終端預設的掃描時間,設置并開啟對應于用戶終端的計時器,進而,在判斷計時器達到預設的掃描時間時,且試探請求消息未發送至用戶終端后,清除緩存的試探響應消息。通過該方案,接入點能夠通過設置對應于用戶終端的計時器,并在計時器達到預設時間后,取消向用戶終端傳輸試探響應消息,清除緩存的試探響應信息,進一步地,減少了信道資源的開銷。
為了更清楚地說明本發明實施例或現有技術中的技術方案,下面將對實施例或現有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發明的一些實施例,對于本領域普通技術人員來講,在不付出創造性勞動的前提下,還可以根據這些附圖獲得其他的附圖。圖1為本發明實施例提供的對用戶終端主動掃描的反饋方法流程示意圖一;圖2為本發明實施例提供的對用戶終端主動掃描的反饋方法流程示意圖二 ;圖3為本發明實施例提供的接入點。
具體實施例方式以下描述中,為了說明而不是為了限定,提出了諸如特定系統結構、接口、技術之類的具體細節,以便透切理解本發明。然而,本領域的技術人員應當清楚,在沒有這些具體細節的其它實施例中也可以實現本發明。在其它情況中,省略對眾所周知的裝置、電路以及方法的詳細說明,以免不必要的細節妨礙本發明的描述。本文中描述的各種技術可用于各種無線通信系統,例如當前2G,3G通信系統和下一代通信系統,例如全球移動通信系統,碼分多址系統,時分多址系統,寬帶碼分多址,頻分多址系統,正交頻分多址系統,單載波系統,通用分組無線業務系統,長期演進系統,以及其他此類通信系統。本文中結合終端和/或基站和/或基站控制器來描述各種方面。用戶設備,可以是無線終端也可以是有線終端,無線終端可以是指向用戶提供語音和/或數據連通性的設備,具有無線連接功能的手持式設備、或連接到無線調制解調器的其他處理設備。無線終端可以經無線接入網與一個或多個核心網進行通信,無線終端可以是移動終端,如移動電話(或稱為“蜂窩”電話)和具有移動終端的計算機,例如,可以是便攜式、袖珍式、手持式、計算機內置的或者車載的移動裝置,它們與無線接入網交換語言和/或數據。例如,個人通信業務電話、無繩電話、會話發起協議話機、無線本地環路站、個人數字助理等設備。無線終端也可以稱為系統、訂戶單元、訂戶站,移動站、移動臺、遠程站、接入點、遠程終端、接入終端、用戶終端、用戶代理、用戶設備、或用戶裝備。基站(例如,接入點)可以是指接入網中在空中接口上通過一個或多個扇區與無線終端通信的設備。基站可用于將收到的空中幀與IP分組進行相互轉換,作為無線終端與接入網的其余部分之間的路由器,其中接入網的其余部分可包括網際協議(IP)網絡。基站還可協調對空中接口的屬性管理。另外,本文中術語“系統”和“網絡”在本文中常被可互換使用。本文中術語“和/或”,僅僅是一種描述關聯對象的關聯關系,表示可以存在三種關系,例如,A和/或B,可以表示:單獨存在A,同時存在A和B,單獨存在B這三種情況。另外,本文中字符“/”,一般表示前后關聯對象是一種“或”的關系。本發明實施例提供一種對用戶終端主動掃描的反饋方法,如圖1所示,該方法包括:S101、接入點接收來自用戶終端的試探請求消息,試探請求消息包括用戶終端預設的掃描時間。在WLAN中,BSS為無線局域網絡的基本組成部分,當用戶終端需接入基本服務集網絡時,首先通過掃描機制發現基本服務集網絡和其對應的接入點,這種場景被稱之為AP探測。當用戶終端啟動AP探測時,用戶終端首先在管理實體(Station Management Entity,SME)生成掃描請求原語,MAC層管理實體(MAC Layer Management Entity,MLME)接收到所述掃描請求原語后,根據掃描請求原語的指示信息確定掃描模式和掃描內容,例如,用戶終端為主動掃描或被動掃描,以及用戶終端掃描的信道列表,以及最大和最小信道掃描時間等。進而,若掃描模式設定為主動模式,則用戶終端的MLME會在所述原語確定的信道上發送試探請求消息,開始探測工作在該信道上的接入點AP ;若該信道上存在工作的所述接入點時,則接入點接收來自用戶終端的試探請求消息,所述試探請求消息中可以包括用戶終端的信道掃描時間信息,具體地,所述信道掃描時間指示用戶終端剩余的信道掃描時間,可以是所述掃描請求原語中指示的最大信道掃描時間,該試探請求消息還可以包括SSID和BSSIDo示例性的,用戶終端預設的掃描時間可以設置在試探請求消息的信息元素(Information Element, IE)中,或者,用戶終端預設的掃描時間也可以設置在試探請求消息的時域字段。S102、接入點生成并緩存對試探請求消息的試探響應消息。接入點在接收到來自用戶終端的試探請求消息后,需要對試探請求消息進行判斷,具體地,可以判斷試探請求消息的SSID和BSSID等。如果所述SSID為通配符SSID或與ESS的SSID相匹配,并且所述BSSID是通配符BSSID或者為接入點的BSSID,那么接入點會生成對應于試探請求消息的試探響應消息,并將所述試探響應消息排列在傳輸隊列中以等待發送。示例性的,該試探響應消息可以為單播或者組播方式的試探響應消息。接入點在判斷響應條件成立時,會開啟對應于該用戶終端的計時器,所述計時器可以根據試探請求消息中攜帶的掃描時間進行設置。S103、接入點根據接收到的用戶終端預設的掃描時間,設置并開啟對應于用戶終端的計時器。
接入點在生成并緩存對試探請求消息的試探響應消息的同時,會根據試探響應消息中用戶終端預設的掃描時間,設置并開啟對應于該用戶終端的計時器,具體地,可以使用用戶終端標識符來設置對應于用戶終端的計時器,進一步地,用戶終端標識符可以為MAC (Medium/Media Access Control,介質訪問控制)地址,并且,該計時器可以為試探響應計時器。S104、接入點在判斷計時器達到預設的掃描時間,且試探響應消息未發送至用戶終端后,清除緩存的試探響應消息。計時器開始計時,接入點會在判斷計時器到達預設的掃描時間,并且緩存的試探響應消息還未發送至用戶終端后,清除緩存的試探響應消息。示例性的,計時器的計時方式可以有很多,其起始值可以設置為零,進而采用遞增計數的方式,當計時器的計時值達到用戶終端預設的掃描時間,且試探響應消息未發送至用戶終端后,清除緩存的試探響應消息;其起始值也可以設置為用戶終端預設的掃描時間,進而采用遞減計數的方式,當計時器的計時值耗盡,即計時值為零時,且試探響應消息未發送至用戶終端后,清除緩存的試探響應消息。本發明實施例提供的一種對用戶終端主動掃描的反饋方法,通過接收到來自用戶終端的、包括用戶終端預設的掃描時間的試探請求消息,在生成并緩存對該試探請求消息的試探響應消息的同時,根據用戶終端預設的掃描時間,設置并開啟對應于用戶終端的計時器,進而,在判斷計時器達到預設的掃描時間時,且試探請求消息未發送至用戶終端后,清除緩存的試探響應消息。通過該方案,接入點能夠通過設置對應于用戶終端的計時器,并在計時器達到預設時間后,取消向用戶終端傳輸試探響應消息,清除緩存的試探響應信息,進一步地,減少了信道資源的開銷。本發明實施例提供一種對用戶終端主動掃描的反饋方法,如圖2所示,該方法包括:S201、用戶終端在信道上發送試探請求消息,該試探請求消息包括用戶終端預設的掃描時間,并開啟試探計時器。用戶終端發送的試探請求消息中包括的用戶終端預設的掃描時間,可以用于指示用戶終端在該信道上掃描的最大時間,該預設的掃描時間可以是但不限于最大信道掃描時間,也可以是用戶終端預先設置的時間,該預設的掃描時間可以在試探請求消息的信息元素中指示,也可以在試探請求消息MAC幀頭的時域/ID字段指示,其位置不限。需要補充的是,用戶終端對該信道進行掃描時,用戶終端的物理層會對該信道進行偵聽,若該信道上出現其他站點發送的消息,則會生成信道忙的原語;當用戶終端開啟試探計時器后,當試探計時器的計時值達到最小信道掃描時間時,若用戶終端的物理層沒有生成信道忙的原語,則意味著該信道上不存在工作的接入點,那么用戶終端則結束對該信道的掃描,若用戶終端的物理層生成了信道忙的原語,那么用戶終端則繼續對該信道進行掃描。S202、接入點接收來自用戶終端的試探請求消息。需要補充的是,用戶終端的試探請求消息中,不但可以包括用戶終端預設的掃描時間,還可以包括SSID和BSSID。其中,SSID是服務集標識,SSID技術可以將一個無線局域網分為幾個需要不同身份驗證的子網絡,每一個子網絡都需要獨立的身份驗證,只有通過身份驗證的用戶終端才可以進入相應的子網絡,防止未被授權的用戶進入本網絡。BSSID是基本服務集標識符,是指用戶終端的MAC地址在一個接入點在一個基礎架構模式BSS是由無線局域網規范定義的。這個區域唯一地定義了每個BSS。S203、接入點生成并緩存對所述試探請求消息的試探響應消息。接入點在接收到來自用戶終端的試探請求消息后,可以對試探請求消息進行判斷,具體地,可以判斷試探請求消息的SSID和BSSID。如果該SSID為通配符SSID或該SSID與ESS的SSID相匹配,并且該BSSID是通配符BSSID或者該BSSID為接入點的BSSID,那么接入點會生成對該試探請求消息的試探響應消息,并緩存該試探響應消息,具體地緩存形式可以為排列在傳輸隊列中。示例性的,該試探響應消息為單播或組播的試探響應消息。S204、接入點根據接收到的用戶終端預設的掃描時間,設置并開啟對應于用戶終端的計時器。接入點在生成并緩存對試探請求消息的試探響應消息的同時,會根據試探響應消息中用戶終端預設的掃描時間,設置并開啟對應于該用戶終端的計時器,具體地,可以使用用戶終端標識符來設置對應于用戶終端的計時器,進一步地,用戶終端標識符可以為MAC地址。S205、接入點在判斷計時器達到預設的掃描時間,且試探響應消息未發送至用戶終端后,清除緩存的試探響應消息。接入點遵循分布式競爭機制,發送傳輸隊列中的試探響應消息,直到計時器達到用戶終端預設的掃描時間,計時器開始計時,若計時器未達到預設的掃描時間,則緩存在傳輸隊列中試探響應消息等待發送至用戶終端,若接入點在判斷計時器到達預設的掃描時間,并且緩存的試探響應消息還未發送至用戶終端后,接入點取消向用戶終端發送試探響應消息,并清除緩存的試探響應消息。對于用戶終端的試探計時器,當達到預設的掃描時間時,該掃描時間可以是最大信道掃描時間,用戶終端會處理接收到的試探響應消息,并結束信道掃描。示例性的,計時器的計時方式可以有很多,其起始值可以設置為零,進而采用遞增計數的方式,當計時器的計時值達到用戶終端預設的掃描時間,且試探響應消息未發送至用戶終端后,清除緩存的試探響應消息;其起始值也可以設置為用戶終端預設的掃描時間,進而采用遞減計數的方式,當計時器的計時值耗盡,即計時值為零時,且試探響應消息未發送至用戶終端后,清除緩存的試探響應消息。同樣的,試探計時器的計時方式可以有很多,其起始值可以設置為零,進而采用遞增計數的方式,當試探計時器的計時值達到用戶終端預設的掃描時間,用戶終端處理接收到的試探響應消息,并結束該信道的掃描;其起始值也可以設置為用戶終端預設的掃描時間,進而采用遞減計數的方式,當試探計時器的計時值耗盡,即計時值為零時,用戶終端處理接收到的試探響應消息,并結束該信道的掃描。本發明實施例提供的一種對用戶終端主動掃描的反饋方法,通過接收到來自用戶終端的、包括用戶終端預設的掃描時間的試探請求消息,在生成并緩存對該試探請求消息的試探響應消息的同時,根據用戶終端預設的掃描時間,設置并開啟對應于用戶終端的計時器,進而,在判斷計時器達到預設的掃描時間時,且試探請求消息未發送至用戶終端后,清除緩存的試探響應消息。通過該方案,接入點能夠通過設置對應于用戶終端的計時器,并在計時器達到預設時間后,取消向用戶終端傳輸試探響應消息,清除緩存的試探響應信息,進一步地,減少了信道資源的開銷。本發明實施例提供一種接入點1,如圖3所示,包括:接收器10,用于接收來自用戶終端的試探請求消息,所述試探請求消息包括所述用戶終端預設的掃描時間;緩存器11,用于生成并緩存對所述試探請求消息的試探響應消息;計時器設置單元12,用于根據接收到的所述用戶終端預設的掃描時間,設置并開啟對應于所述用戶終端的計時器;處理器13,用于在判斷所述計時器達到所述預設的掃描時間時,且所述試探請求消息未發送至所述用戶終端后,清除緩存的所述試探響應消息。進一步地,用戶終端預設的掃描時間為最大信道掃描時間。進一步地,用戶終端預設的掃描時間設置在試探請求消息的信息元素,或用戶終端預設的掃描時間設置在試探請求消息的時域字段。進一步地,試探響應消息為單播或組播的試探響應消息。進一步地,計時器設置單元12具體用于,使用用戶終端標識符設置對應于所述用戶終端的所述計時器,將所述計時器的初始值設置為所述預設的掃描時間,并且將所述計時器的計時方式設置為遞減計時,具體地,用戶終端標識符可以為MAC地址。進一步地,處理器13具體用于在判斷所述計時器的計時值耗盡,且所述試探響應消息未發送至所述用戶終端后,清除緩存的所述試探響應消息。本發明實施例提供的一種接入點,通過接收到來自用戶終端的、包括用戶終端預設的掃描時間的試探請求消息,在生成并緩存對該試探請求消息的試探響應消息的同時,根據用戶終端預設的掃描時間,設置并開啟對應于用戶終端的計時器,進而,在判斷計時器達到預設的掃描時間時,且試探請求消息未發送至用戶終端后,清除緩存的試探響應消息。通過該方案,接入點能夠通過設置對應于用戶終端的計時器,并在計時器達到預設時間后,取消向用戶終端傳輸試探響應消息,清除緩存的試探響應信息,進一步地,減少了信道資源的開銷。所屬領域的技術人員可以清楚地了解到,為描述的方便和簡潔,僅以上述各功能模塊的劃分進行舉例說明,實際應用中,可以根據需要而將上述功能分配由不同的功能模塊完成,即將裝置的內部結構劃分成不同的功能模塊,以完成以上描述的全部或者部分功能。上述描述的系統,裝置和單元的具體工作過程,可以參考前述方法實施例中的對應過程,在此不再贅述。在本申請所提供的幾個實施例中,應該理解到,所揭露的系統,裝置和方法,可以通過其它的方式實現。例如,以上所描述的裝置實施例僅僅是示意性的,例如,所述模塊或單元的劃分,僅僅為一種邏輯功能劃分,實際實現時可以有另外的劃分方式,例如多個單元或組件可以結合或者可以集成到另一個系統,或一些特征可以忽略,或不執行。另一點,所顯示或討論的相互之間的耦合或直接耦合或通信連接可以是通過一些接口,裝置或單元的間接耦合或通信連接,可以是電性,機械或其它的形式。所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網絡單元上。可以根據實際的需要選擇其中的部分或者全部單元來實現本實施例方案的目的。另外,在本發明各個實施例中的各功能單元可以集成在一個處理單元中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個單元中。上述集成的單元既可以采用硬件的形式實現,也可以采用軟件功能單元的形式實現。所述集成的單元如果以軟件功能單元的形式實現并作為獨立的產品銷售或使用時,可以存儲在一個計算機可讀取存儲介質中。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分或者該技術方案的全部或部分可以以軟件產品的形式體現出來,該計算機軟件產品存儲在一個存儲介質中,包括若干指令用以使得一臺計算機設備(可以是個人計算機,服務器,或者網絡設備等)或處理器(processor)執行本發明各個實施例所述方法的全部或部分步驟。而前述的存儲介質包括:U盤、移動硬盤、只讀存儲器(ROM, Read-Only Memory)、隨機存取存儲器(RAM, Random Access Memory)、磁碟或者光盤等各種可以存儲程序代碼的介質。以上所述,僅為本發明的具體實施方式
,但本發明的保護范圍并不局限于此,任何熟悉本技術領域的技術人員在本發明揭露的技術范圍內,可輕易想到變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應以所述權利要求的保護范圍為準。
權利要求
1.一種對用戶終端主動掃描的反饋方法,其特征在于,包括: 接收來自用戶終端的試探請求消息,所述試探請求消息包括所述用戶終端預設的掃描時間; 生成并緩存對所述試探請求消息的試探響應消息; 根據接收到的所述用戶終端預設的掃描時間,設置并開啟對應于所述用戶終端的計時器; 在判斷所述計時器達到所述預設的掃描時間,且所述試探響應消息未發送至所述用戶終端后,清除緩存的所述試探響應消息。
2.根據權利要求1所述的對用戶終端主動掃描的反饋方法,其特征在于,所述用戶終端預設的掃描時間為最大信道掃描時間。
3.根據權利要求1所述的對用戶終端主動掃描的反饋方法,其特征在于,所述用戶終端預設的掃描時間設置在所述試探請求消息的信息元素中,或所述用戶終端預設的掃描時間設置在所述試探請求消息的時域字段。
4.根據權利要求1所述的對用戶終端主動掃描的反饋方法,其特征在于,所述試探響應消息為單播或組播的試探響應消息。
5.根據權利要求1所述的對用戶終端主動掃描的反饋方法,其特征在于,所述根據接收到的所述用戶終端預設的掃描時間,設置并開啟對應于所述用戶終端的計時器,包括: 使用用戶終端標識符設置對應于所述用戶終端的所述計時器,將所述計時器的初始值設置為所述預設的掃描時間, 并且將所述計時器的計時方式設置為遞減計時。
6.根據權利要求5所述的對用戶終端主動掃描的反饋方法,其特征在于,所述用戶終端標識符為介質訪問控制(MAC)地址。
7.根據權利要求1或4所述的對用戶終端主動掃描的反饋方法,其特征在于,在判斷所述計時器達到所述預設的掃描時間,且所述試探響應消息未發送至所述用戶終端后,清除緩存的所述試探響應消息,包括: 在判斷所述計時器的計時值耗盡,且所述試探響應消息未發送至所述用戶終端后,清除緩存的所述試探響應消息。
8.一種接入點,其特征在于,包括: 接收器,用于接收來自用戶終端的試探請求消息,所述試探請求消息包括所述用戶終端預設的掃描時間; 緩存器,用于生成并緩存對所述試探請求消息的試探響應消息; 計時器設置單元,用于根據接收到的所述用戶終端預設的掃描時間,設置并開啟對應于所述用戶終端的計時器; 處理器,用于在判斷所述計時器達到所述預設的掃描時間時,且所述試探請求消息未發送至所述用戶終端后,清除緩存的所述試探響應消息。
9.根據權利要求8所述的接入點,其特征在于,所述用戶終端預設的掃描時間為最大信道掃描時間。
10.根據權利要求8所述的接入點,其特征在于,所述用戶終端預設的掃描時間設置在所述試探請求消息的信息元素,或所述用戶終端預設的掃描時間設置在所述試探請求消息的時域字段。
11.根據權利要求8所述的接入點,其特征在于,所述試探響應消息為單播或組播的試探響應消息。
12.根據權利要求8所述的接入點,其特征在于,所述計時器設置單元具體用于,使用用戶終端標識符設置對應于所述用戶終端的所述計時器,將所述計時器的初始值設置為所述預設的掃描時間,并且將所述計時器的計時方式設置為遞減計時。
13.根據權利要求12所述的接入點,其特征在于,所述用戶終端標識符為介質訪問控制(MAC)地址。
14.根據權利要求8或12所述的接入點,其特征在于,所述處理器具體用于在判斷所述計時器的計時值耗盡,且所 述試探響應消息未發送至所述用戶終端后,清除緩存的所述試探響應消息。
全文摘要
本發明實施例提供的一種對用戶終端主動掃描的反饋方法及接入點,涉及通信領域,能夠通過在接入點中設置計時器,在計時器達到預設時間后清除緩存的試探響應信息,進一步地,減少了信道資源的開銷。本實施例的對用戶終端主動掃描的反饋方法包括接收來自用戶終端的試探請求消息,所述試探請求消息包括所述用戶終端預設的掃描時間;生成并緩存對所述試探請求消息的試探響應消息;根據接收到的所述用戶終端預設的掃描時間,設置并開啟對應于所述用戶終端的計時器;在判斷所述計時器達到所述預設的掃描時間,且所述試探響應消息未發送至所述用戶終端后,清除緩存的所述試探響應消息。
文檔編號H04W72/04GK103200685SQ201210004700
公開日2013年7月10日 申請日期2012年1月9日 優先權日2012年1月9日
發明者楊國瑞, 姚宗明 申請人:華為技術有限公司