專利名稱:消息過濾方法、裝置和系統的制作方法
技術領域:
本發明涉及通信領域,特別是涉及一種消息過濾方法、裝置和系統。
背景技術:
在集中式網絡架構下,消息過濾設置信息通常由用戶或業務提供者進行 配置,并通過消息收發設備根據過濾設置信息對接收或發送的消息進行相應 的處理。在集中式網絡架構下,業務/控制和媒體處理部分是集中控制的,媒 體處理部分可以直接獲得過濾設置信息,根據過濾設置信息對接收或發送的 消息進行相應的過濾操作。但在集中的網絡架構下實現消息過濾的方法并不 能夠應用在分離架構的網絡系統中。
分離架構的網絡系統主要設計思想是業務/控制與承載分離,各個實體 之間通過標準的協議進行連接和通信。其主要特征包括
1、 業務與呼叫控制分離、與網絡分離。控制層的設備負責處理基本呼 叫的接續及控制,業務邏輯一般由應用服務器提供,實現了業務與呼叫控 制分離,使業務真正獨立于網絡。
2、 業務/控制與承載分離。業務提供和承載屬于兩個獨立層面,業務可 以和承載完全分離。用戶可以自行配置和定義自己的業務特征,不必關心承 載業務的網絡形式以及終端類型,使得業務和應用的提供有更大的靈活性。
在分離架構的網絡系統結構中,應用月l務器(Application Server,簡 稱AS )和/或媒體控制器(Media Control ler,簡稱MC )與媒體處理器(Media Processor,簡稱MP)分離,它們之間通過標準協i義(如H.248協議)進行 通信。應用服務器負責業務邏輯管理,傳遞用戶相關操作給媒體控制器;媒 體控制器^^據應用服務器的業務指示進行業務同步處理,指示々某體處理器完 成相關操作。媒體處理器在媒體控制器的控制下,提供相應的承載媒體資源。區別于集中式架構的網絡系統,在分離架構的網絡系統下,過濾設置信
息的生成和應用分別由二個不同的實體實現。例如在分離架構的網絡系統 下,媒體控制器與媒體處理器相分離,媒體處理器無法獲知媒體控制器的過 濾設置信息,從而無法對媒體處理器接收或發送的消息執行相應的過濾操作。
發明內容
本發明實施例要解決的技術問題是提供一種消息過濾方法、裝置和系統, 用以在分離網絡架構下,對接收和/或發送消息的實現過濾處理。
為解決上述技術問題,本發明第一方面實施例提供了 一種消息過濾系統, 包括媒體控制器和媒體處理器;
所述媒體控制器用于根據接收的過濾設置信息封裝協議包,并將包含所 述過濾設置信息的協議包發送給所述媒體處理器;
所述媒體處理器用于解析接收的協議包并獲取所述過濾設置信息,根據 所述過濾設置信息對接收和/或發送的消息執行相應的過濾操作。
本發明第一方面實施例提供的一種消息過濾系統中,通過媒體控制器根 據接收的過濾設置信息封裝協議包后將包含該過濾設置信息的協議包發送給 媒體處理器,媒體處理器對協議包進行解析獲取相應的過濾設置信息,根據 過濾設置信息對收發的消息執行相應的過濾操作,使得業務層的過濾設置信 息能夠通過控制層發送到媒體層,控制層和媒體層的過濾設置信息同步,從 而在分離網絡架構下實現對消息的過濾處理。
為解決上述技術問題,本發明第二方面實施例提供了 一種媒體控制器, 包括
封裝模塊,用于根據接收的過濾設置信息封裝協議包; 發送模塊,用于將包含所述過濾設置信息發送給媒體處理器。 本發明第二方面實施例提供的一種媒體控制器中,通過封裝模塊根據接 收的過濾設置信息封裝協議包,發送模塊將包含過濾設置信息的協議包發送給媒體處理器,使得控制層能夠將業務層的過濾設置信息發送給媒體層的媒 體處理器,有利于控制層和媒體層的過濾設置信息同步,從而在分離網絡架 構下實現對消息的過濾處理。
為解決上述技術問題,本發明第三方面實施例提供了一種々某體處理器,
包括
解析模塊,用于解析接收的協議包并獲取該協議包包含的過濾設置信息;
過濾模塊,用于根據所述過濾設置信息對接收和/或發送的消息執行相應 的過濾操作。
本發明第三方面實施例提供的一種媒體處理器中,通過解析模塊對接收 的協議包進行解析,獲取該協議包包含的過濾設置信息,過濾模塊根據該過 濾設置信息對接收和/或發送的消息進行相應的過濾操作,使得媒體層能夠獲 取控制層發送的過濾設置信息,有利于控制層和媒體層的過濾設置信息同步, 從而在分離網絡架構下實現對消息的過濾處理。
為解決上述技術問題,本發明第四方面實施例提供了一種消息過濾方法,
包括
解析接收的協議包并獲取所述協議包包含的過濾設置信息,根據所述過 濾設置信息對接收和/或發送的消息執行相應的過濾操作。
本發明第四方面實施例提供的一種消息過濾方法中,通過對接收的協議 包進行解析,獲取該協議包包含的過濾設置信息,過濾模塊根據該過濾設置 信息對接收和/或發送的消息進行相應的過濾操作,使得媒體層能夠獲取控制 層發送的過濾設置信息,有利于控制層和媒體層的過濾設置信息同步,從而 在分離網絡架構下實現對消息的過濾處理。
圖l為本發明消息過濾系統第一實施例結構示意圖; 圖2為本發明消息過濾系統第二實施例結構示意圖;圖3為本發明媒體控制器實施例結構示意圖; 圖4為本發明媒體處理器實施例結構示意圖; 圖5為本發明消息過濾方法第一實施例流程圖; 圖6為本發明消息過濾方法第二實施例流程圖。
具體實施例方式
下面通過附圖和實施例,對本發明的技術方案做進一步的詳細描述。本 發明實施例中的協議包即為遵循某種通信協議的數據包或消息,包含過濾設 置信息的協議包即為遵循某種通信協議的包含過濾設置信息的數據包或消 息。根據過濾設置信息進行協議包封裝后,協議包的內容可僅包括過濾設置 信息,或者還可包括過濾設置信息以外的其他信息。通信協議可具體為々某體 網關控制協議,如H. 248/MeGaCo協議、MGCP協議等。
圖1為本發明消息過濾系統第一實施例結構示意圖。如圖1所示,該系 統包括媒體控制器11和媒體處理器12。
媒體控制器11用于根據接收的過濾設置信息封裝協議包,并將包含該過 濾設置信息的協議包發送給々某體處理器12。
媒體處理器12用于解析接收的協議包并獲取過濾設置信息,根據該過濾 設置信息對々某體處理器12接收和/或發送的消息執行相應的過濾操作。
在分離網絡架構的系統中,過濾設置信息來自業務層,可由用戶自主設 置,也可由運營商進行系統設置。媒體控制器11位于控制層,媒體處理器 12位于媒體層。媒體控制器11于媒體處理器12之間通過標準協議進行數據 通信。
本實施例通過媒體控制器根據接收到的過濾設置信息封裝形成包含過濾 設置信息的協議包,并發送給媒體處理器,媒體處理器對協議包進行解析獲 取相應的過濾設置信息,根據過濾設置信息對收發的消息執行相應的過濾操 作,使得業務層的過濾設置信息能夠通過控制層發送到媒體層,控制層和媒 體層的過濾設置信息同步,從而在分離網絡架構下實現對消息的過濾處理。圖2為本發明消息過濾系統第二實施例結構示意圖。圖2所示的消息過 濾系統的一個應用場景為IP多々某體子系統(IP Multimedia Subsystem,以 下簡稱IMS)中一個消息會議業務進行消息過濾的系統。
IMS是由3GPP標準組織在R5版本提出的基于IP網絡提供多媒體業務的 通用網絡架構。IMS的提出為下一代基于IP的移動網絡提供了面向分組協議 包交換的多媒體服務及平臺,它的核心特點是引入會話發起協議(Session InitiationProtocol,以下簡稱SIP協議)作為業務控制協議,通過將業務 控制與承載控制分離,提供多媒體實時通信業務。
具體應用到IMS系統中,本發明實施例的分離網絡架構中的媒體控制器 21即為多J 某體資源功能控制器(Multimedia Resource Function Controller, 簡稱MRFC),本發明實施例的分離網絡架構中的媒體處理器22即為多媒體 資源功能處理器(Multimedia Resource Function Processor,簡稱MRFP)。 消息會議業務允許用戶設備或用戶終端23 (User Equipment,簡稱UE)實時 將消息發送給其他用戶設備或用戶終端23,消息內容可為符合多媒體網絡郵 4牛擴展(Multipurpose Internet Mail Extensions,簡稱、MIME)才各式的寸壬 何類型的消息,如文本、圖片、網頁、視頻片斷等。消息會議業務使用SIP 協議中的邀請(Invite)方法建立會話,經呼叫或會話控制功能24 (Call Session Control Function,簡稱CSCF)進行會話。會話建立后,i某體流通 過消息會話中繼協議(Message Session Relay Protocol,筒稱MSRP)進行 傳輸。
々某體控制器21用于接收過濾設置信息,根據過濾設置信息封裝協議包, 并將包含過濾設置信息的協議包發送給媒體處理器22。
多媒處理器22用于接收來自媒體控制器21的協議包,通過解析協議包 并獲取該協議包中包含的過濾設置信息,根據過濾設置信息對多媒處理器22 接收和/或發送的消息進行相應的過濾操作。經過過濾操作處理后的消息通過 消息會話中繼協議進行傳輸。
本實施例通過々某體控制器根據接收到的過濾設置信息封裝協議包,并將封裝后的包含過濾設置信息的協議包發送給媒體處理器,々某體處理器對協議 包進行解析獲取相應的過濾設置信息,根據過濾設置信息對媒體處理器收發 的消息執行相應的過濾操作,使得業務層的過濾設置信息能夠通過控制層發
送到媒體層,控制層和媒體層的過濾設置信息同步,從而在分離網絡架構IMS 系統下實現對消息的過濾處理。
圖3為本發明媒體控制器實施例結構示意圖。如圖3所示,該媒體控制 器包括接收模塊31、封裝模塊32和發送模塊33。
接收;f莫塊31用于接收過濾設置信息或包含過濾設置信息的過濾腳本。該 過濾設置信息的來源不受限制,例如過濾設置信息可由用戶通過業務層提供 給媒體控制器;也可由用戶提供給控制層的應用服務器,應用服務器將接收 到的過濾設置信息轉發給媒體控制器;或者,應用服務器接收用戶提供的或 運營商系統設置的過濾設置信息,根據過濾設置信息生成過濾腳本,將包含 過濾設置信息的過濾腳本轉發給纟某體控制器。
封裝模塊32用于根據接收模塊31接收的過濾設置信息或包含過濾設置 信息的過濾腳本封裝協議包,封裝后形成包含過濾設置信息或過濾腳本的協 議包。
發送模塊33用于將封裝模塊32形成的協議包發送給媒體層的媒體處理器。
在本實施例技術方案的基礎上,封裝模塊可至少包括第一封裝單元或第 二封裝單元。其中,第一封裝單元用于根據接收模塊接收的過濾設置信息或 包含過濾設置信息的過濾腳本封裝協議包,將封裝后的協議包轉發給發送模 塊。第二封裝單元用于根據接收的過濾設置信息生成包含過濾設置信息的過 濾腳本,根據過濾腳本封裝協議包,將封裝后的協議包轉發給發送模塊。
本實施例通過封裝模塊根據接收模塊接收到的過濾設置信息或包含過濾 設置信息的過濾腳本封裝協議包,發送模塊將包含過濾設置信息后包含過濾 腳本的協議包發送給媒體處理器,使得控制層能夠將業務層的過濾設置信息 發送給媒體層的媒體處理器,有利于控制層和媒體層的過濾設置信息同步,從而在分離網絡架構下實現對消息的過濾處理。本發明媒體控制器實施例可 具體應用到本發明分離網絡架構下的消息過濾系統實施例中。
圖4為本發明媒體處理器實施例結構示意圖。如圖4所示,該媒體處理 器包括解析模塊41和過濾模塊42。
解析模塊41用于解析接收的協議包,并獲取該協議包包含的濾設置信
自
過濾模塊42用于根據解析模塊獲取的過濾設置信息,對接收和/或發送 的消息執行相應的過濾操作。
在本實施例技術方案的基礎上,解析模塊可至少包括第一解析單元、第 二解析單元或第三解析單元。第一解析單元用于在解析接收的協議包的相應 字段解析并獲取過濾設置信息。第二解析單元用于解析接收的協議包并獲取 該協議包含的過濾腳本,讀取過濾腳本,并獲取過濾腳本包含的過濾設置信 息。第三解析單元用于解析接收的協議包并獲取該協議包包含的過濾腳本的 統一資源定位符,根據該統一資源定位符獲取相應的過濾腳本,讀取該過濾 腳本并獲取所述過濾腳本包含的所述過濾設置信息。
過濾設置信息可具體包括過濾條件信息和過濾操作信息,相應的,過濾 模塊可具體為用于在媒體處理器接收和/或發送的消息滿足過濾條件時,對媒 體處理器接收和/或發送的消息執行相應的過濾操作。
在本實施例技術方案的基礎上,媒體處理器還可進一步包括反饋模塊43。 該反饋模塊43用于當過濾模塊42執行過濾操作失敗時,向媒體控制器返回 相應的錯誤代碼。
本實施例通過解析模塊對接收的協議包進行解析,獲取該協議包包含的 過濾設置信息,過濾模塊根據該過濾設置信息對接收和/或發送的消息進行相 應的過濾操作,使得媒體層能夠獲取控制層發送的過濾設置信息,有利于控 制層和i某體層的過濾設置信息同步,從而在分離網絡架構下實現對消息的過 濾處理。本發明々某體處理器實施例可具體應用到本發明分離網絡架構下的消 息過濾系統實施例中。本發明消息過濾方法實施例包括々某體處理器解析接收的協議包并獲取 該協議包包含的過濾設置信息,根據過濾設置信息對媒體處理器接收和/或發 送的消息^執行相應的過濾操作。圖5為本發明消息過濾方法第一實施例流程 圖。為本領域技術人員更好的理解本發明消息過濾方法實施例的技術方案, 圖5以圖2所示消息過濾系統為例子,詳細說明在分離網絡架構下實現消息 過濾的方法。圖2所示的系統中,媒體控制器向媒體處理器下發過濾設置信 息的方法很多,本實施例通過封裝H. 248協議包的方式對過濾設置信息進行 封裝。如圖2和圖5所示,該消息過濾方法包括以下步驟
步驟51、媒體控制器接收模塊接收過濾設置信息,將接收到的過濾設置 信息發送給封裝模塊。
該過濾設置信息的來源不受限制,例如過濾設置信息可由用戶通過業務 層提供給媒體控制器;也可由用戶提供給控制層的應用服務器,應用服務器 將接收到的過濾設置信息轉發給媒體控制器;或者,應用服務器接收用戶提 供的或運營商系統設置的過濾設置信息,根據過濾設置信息生成過濾腳本, 將包含過濾設置信息的過濾腳本轉發給々某體控制器。
該過濾設置信息可具體包括過濾條件信息和過濾操作信息。其中,過濾 條件信息可具體包括消息發送者地址信息、消息大小信息、消息內容類型 信息、消息格式信息、消息主題信息或消息傳輸方向信息等。過濾操作信息 可具體包括丟棄消息、存儲消息或轉發消息等。
消息發送者地址信息的過濾條件信息用于指示媒體處理器根據消息的發 送者地址進行過濾。消息大小用于指示媒體處理器根據消息大小進行過濾; 消息大小可為確定的數值或者是數值范圍。消息內容類型用于指示媒體處理 器對特定媒體類型的消息進行過濾,例如可過濾攜帶音頻或視頻文件的消 息。消息內容格式可用于指示々某體處理器根據指定消息內容的々某體格式進行 過濾,如對消息內容格式為mpeg或jpeg等類型消息進行過濾。消息主題可 用于指示媒體處理器根據特定的消息主題對包含有該特定主題的消息進行過 濾。該消息傳輸方向可用于指示士某體處理器對接收和/或發送方向上的消息進行過濾。
過濾操作信息中,丟棄消息用于指示媒體處理器對收發的消息不作任何 處理,直接丟棄。存儲消息用于指示媒體處理器對過濾消息進行存儲,該消 息的存儲地址可通過媒體控制器下發給纟某體處理器,由媒體處理器根據下發
的存儲地址對消息進行存儲;或者,也可由媒體控制器下發一個用于指示媒
體處理器分配存儲地址的指令,媒體處理器根據該指令進行存儲地址的分配,
將消息存儲到該分配的地址上,并將該存儲地址信息反饋給J 某體控制器;此 外,消息的存儲地址還可預先設置在媒體處理器上,在媒體控制器下發的過 濾操作信息為存儲消息時,媒體處理器將接收和/或發送的消息存儲在預設的
存儲地址上,并可以將該存儲地址信息反饋給媒體控制器。轉發消息用于指 示媒體處理器對消息進行轉發。轉發地址信息可以由媒體控制器下發給媒體 處理器,々某體處理器一艮據該轉發地址信息將消息轉發到相應的轉發地址上; 或者,消息的轉發地址還可預先設置在媒體處理器上,在媒體控制器下發的 過濾操作信息為轉發消息時,士某體處理器將接收和/或發送的消息轉發到預設 的轉發地址上,并可以將該轉發地址信息反々赍給士某體控制器。
過濾條件信息和過濾操作信息組合的過濾設置信息表示在滿足過濾條 件時,對消息執行相應的過濾操作。例如,過濾設置信息中包含的過濾條件 信息為"消息大小大于20M",過濾操作信息為"丟棄信息",則該過濾設 置信息表示當收發的協議包大小大于20M時,丟棄該收發的協議包。
步驟52、媒體控制器封裝才莫塊根據過濾設置信息封裝標準協議的協議包, 將包含有過濾設置信息的協議包發送給媒體處理器的解析模塊。
由于IMS系統為分離架構系統,控制層和媒體層相互分離,控制層的媒 體控制器可獲取業務層的過濾設置信息,但々某體層的媒體處理器無法獲知相 應的過濾設置信息,使得媒體處理器無法根據過濾設置信息對收發的協議包 進^f亍過濾處理。因此,區別于集中式架構的系統,在IMS系統等分離架構系 統下,控制層的媒體控制器和媒體層的媒體處理器之間需要建立新的同步過 濾設置信息的機制。^ 某體網關控制協議(如H. 248/MeGaCo協議、MGCP協議等)是i某體控制 器和媒體處理器之間通信的主要協議。本實施例基于標準協議,例如基于 H. 248協議,媒體控制器接收模塊接收到的過濾設置信息承栽在H. 248協議 包(即遵循H. 248協議的數據包或消息)的相應字段,封裝H. 248協議包, 即生成包含過濾設置信息的H. 248協議包。
基于H. 248協議的通信過程是通過在媒體控制器和媒體處理器之間的命 令(Command )請求和響應來完成。命令類型包括承載(Add )、修改(Modify )、 刪減(Subtract)、移動(Move)、審計值(AuditValue)、審計能力 (AuditCapabilities )、通才艮(Notify)、月良務改變(ServiceChange )。 命令參數,也稱為描述符(Descriptor),被分類為屬性(Property)、信 號(Signal)、事件(Event)、統計(Statistic)。具有業務相關性的參 數邏輯上聚合成為包(Package )。
舉例說明媒體控制器封裝模塊進行H. 248協議包封裝時,可通過在 H. 248協議包中定義的屬性字段進行相應的設置,使得設置后的H. 248協議 包屬性信息攜帶有媒體控制器接收到的過濾設置信息。過濾設置信息中可包 含過濾條件信息和過濾操作信息。
在實際應用中,為便于區分包含不同過濾設置信息的協議包,可根據 過濾操作類型對協議包進行不同的命名,如命名為"過濾丟棄包"、"過 濾存儲包"、"過濾轉發包"等,每種過濾操作類型包根據過濾條件定義 相應的屬性。"過濾丟棄包"、"過濾存儲包"和"過濾轉發包"等每種 操作類型包均至少包括如下屬性消息發送者地址屬性、消息大小屬性、消 息內容類型屬性、消息內容格式屬性、消息主題屬性以及過濾模式屬性。此 外,"過濾存儲包,,還可以包括有存儲地址屬性;"過濾轉發包"還可以 包括有轉發地址屬性。
其中消息發送者地址屬性信息用于指示根據消息的發送者地址進行過 濾。消息大小屬性信息可為確定的數值或者是數值范圍,用于指示根據確定 的數值或數值范圍進行過濾。消息內容類型屬性信息用于指示媒體處理器對特定媒體類型的消息進行過濾,例如可過濾攜帶音頻或視頻文件的消息。 消息內容格式屬性信息用于指示媒體處理器根據指定消息內容的媒體格式進 行過濾,如對消息內容格式為mpeg或jpeg類型的內容進行過濾。消息主題 屬性信息可用于指示媒體處理器根據特定的消息主題對包含有該特定主題的 消息進行過濾。存儲地址屬性信息用于指示存儲地址信息,轉發地址屬性信 息用于指示轉發地址信息。過濾模式屬性信息用于指示過濾模式,過濾模式 屬性參數取值可為二個字節,分別包含入口和出口二個消息傳輸方向信息。 每個字節中的各位(Bit)中有一位用于表示過濾模式,其取值若為1則代 表根據過濾條件對消息進行過濾,若為O則代表停止過濾;其它位分別表示 某種過濾條件是否啟用,取值若為O則代表不啟用該過濾條件;若為1則代 表啟用該過濾條件;多余的位保留以后使用,該位缺省值為0,即不進行過 濾。可以將該字的位從低到高依次定義為
低字節bit0-入口流向根據消息發送者地址過濾
bitl-入口流向才艮據消息大'J、過濾
bit2-入口流向才艮據消息內容過濾
bit3-入口流向根據消息內容格式過濾
bit4-入口流向才艮據消息主題過濾
bit5-保留
bit6-保留
bit7-入口流向過濾才莫式
高字節bitO-出口流向根據消息發送者地址過濾
bitl-出口流向才艮據消息大'J、過濾
bit2-出口流向才艮據消息內容過濾
bit3-出口流向才艮據消息內容格式過濾
bit4-出口流向根據消息主題過濾bit5 -保留 bit6 -保留
b U 7 -出口流向過濾才莫式
在媒體處理器解析出過濾設置信息并根據過濾設置信息進行預配置后, 還可以根據需要更新過濾設置信息,媒體控制器封裝模塊將需要更新的過濾 信息承載在遵循H. 248協議的協議包的相應字段,進行H. 248協議包的封裝。 當媒體處理器接收到包含有過濾更新信息的協議包時,根據過濾更新信息對 媒體處理器先前接收的相應的過濾設置信息進行更新。例如過濾更新信息 為將發送者地址屬性值從A修改為B,媒體處理器接收包含有過濾更新信息 的協議包并解析,獲取該過濾更新信息時,對原接收到過濾設置信息中的發 送者地址屬性值進行更新(將A修改為B),更新后媒體處理器過濾模塊對 發送者地址B進行消息過濾;同樣,根據需要可以刪除指定過濾條件設置如 刪除入口流向根據消息主題過濾的過濾條件,刪除操作可通過設置過濾模式 屬性低字節bit4設置為0,則該字節對應屬性設置即過濾模式設置無效;媒 體控制器還可以控制媒體處理器啟動/停止過濾功能,通過設置過濾模式屬性 低/高字節的bit7為l或0表示,在設置過濾模式屬性低字節的bit7為1時, 入口流向過濾模式啟動;在設置過濾模式屬性低字節的bit7為0時,入口流 向過濾模式關閉;在設置過濾模式屬性高字節的bit7為1時,出口流向過濾 模式啟動;在設置過濾模式屬性高字節的bit7為0時,出口流向過濾模式關 閉,等等。
此外,媒體控制器封裝模塊進行H. 248協議包封裝時,還可通過對H. 248
協議包的事件字段和信號字段進行設置,使得設置后的H. 248協議包屬性信
息攜帶有媒體控制器接收到的過濾設置信息。在H. 2"協議包封裝過程中,
事件字段可用于承載用于指示媒體處理器對消息進行檢測的過濾條件信息,
信號字段可用于承載用于指示媒體處理器對消息進行相應檢測的過濾操作信 自
媒體控制器通過事件內嵌信號的命令指示媒體處理器檢測事件(過濾條件),然后根據指定的信號進行相應的處理(過濾操作)。例如媒體控制 器接收的過濾設置信息為"如果發送者地址是A則丟棄消息",々某體控制器 通過在H. 248協議中設置事件"發送者地址為A",信號"丟棄消息"發送 給媒體處理器,則媒體處理器在檢測到消息的發送者地址為A時執行丟棄該 消息的過濾操作。
在通過對H. 248協議的事件和信號字段進行設置的封裝H. 248協議包的 方式中,同樣可以根據需要更新過濾設置,刪除指定過濾條件設置以及啟動/ 停止過濾功能。更新通過下發新的事件和信號實現,刪除通過設置原來的事 件信號為空實現,啟動/停止可以通過增加獨立的信號實現。
步驟53、媒體處理器解析模塊接收包含有過濾設置信息的協議包,從該 協議包的相應字段提取過濾條件信息和過濾操作信息。
步驟54、媒體處理器過濾模塊提取媒體處理器端口接收和/或發送消息 的消息屬性,根據解析模塊解析出的過濾條件信息和過濾操作信息,判斷媒 體處理器端口接收和/或發送消息屬性是否滿足過濾條件,如果是,執行步驟 55;如果不是,執行步驟56;
其中媒體處理器過濾模塊對媒體處理器端口接收和/或發送的消息屬性 進行判斷過程,具體可為媒體處理器在解析接收或發送的消息后,根據提 取出的過濾設置信息在消息中匹配相應的字段。如發送者地址,消息大小, 消息主題等一般可以從消息頭中對應的關鍵字段進行匹配;消息內容類型和 消息內容格式可能從消息頭中對應的關鍵字段獲取也可能需要在消息內容體 中獲取對應的關鍵字段等等。
步驟55、媒體處理器過濾模塊根據過濾操作信息執行相應的過濾操作, 執行步驟57;
其中,過濾操作可對滿足過濾條件的接收和/或發送的消息執行丟棄消 息、存儲消息、轉發消息等過雄操作。丟棄消息的過濾操作信息用于指示媒 體處理器對收發的消息不作任何處理,直接丟棄。存儲消息的過濾操作信息 用于指示媒體處理器對過濾消息進行存儲,該消息的存儲地址可通過媒體控制器下發給媒體處理器,由媒體處理器根據下發的存儲地址對消息進行存儲; 或者,也可由媒體控制器下發一個用于指示媒體處理器分配存儲地址的指令, 媒體處理器根據該指令進行存儲地址的分配,將消息存儲到該分配的地址上, 并將該存儲地址信息反饋給媒體控制器;此外,消息的存儲地址還可預先設 置在媒體處理器上,在媒體控制器下發的過濾操作信息為存儲消息時,媒體 處理器將接收和/或發送的消息存儲在預設的存儲地址上,并可以將該存儲地 址信息反饋給媒體控制器。轉發消息的過濾操作信息用于指示媒體處理器對 消息進行轉發。轉發地址信息可以由媒體控制器下發給媒體處理器,媒體處 理器根據該轉發地址信息將消息轉發到相應的轉發地址上;或者,消息的轉 發地址還可預先設置在媒體處理器上,在媒體控制器下發的過濾操作信息為 轉發消息時,媒體處理器將接收和/或發送的消息轉發到預設的轉發地址上, 并可以將該轉發地址信息反饋給媒體控制器。
步驟56、纟某體處理器過濾模塊對端口接收和/或發送的消息不進行過濾 處理,以正常流程接收和/或發送消息;
步驟57、過濾流程結束。
本實施例媒體控制器通過封裝協議包的方式,將從業務層接收到的過濾 設置信息承載在協議包中,并將封裝后包含過濾設置信息的協議包發送給媒 體層的媒體處理器,媒體處理器解析該協議包的相應字段,獲取相應的過濾 條件信息和過濾操作信息,對滿足過濾條件的信息執行相應的過濾操作,使 得業務層的過濾設置信息能夠通過控制層發送到媒體層,控制層和媒體層的 過濾設置信息同步,從而在分離網絡架構下實現對消息的過濾處理。
圖6為本發明消息過濾方法第二實施例流程圖。本實施例與本發明分離 網絡架構下消息過濾第 一 實施例的區別之一在于,本發明媒體控制器生成與 過濾設置信息相應的過濾腳本,并根據過濾腳本進行協議包的封裝,從而實 現媒體控制器和々某體處理器之間過濾設置信息的同步。如圖6所示,本實施 例消息過濾方法包括以下步驟
步驟61、媒體控制器接收模塊接收過濾設置信息,將接收到的過濾設置信息生成相應的過濾腳本并將包含有該過濾設置信息的過濾腳本發送給封裝
模塊;或者,應用服務器接收過濾設置信息,根據過濾設置信息生成相應的 包含有該過濾設置信息的過濾腳本,將包含有該過濾設置信息的過濾腳本發 送給封裝模塊。
其中,根據過濾設置信息生成相應的過濾腳本時可采用腳本生成語言(例 如Sieve語言)生成過濾設置信息相應的過濾腳本。Sieve語言是一種因特 網郵件過濾的標準性通用語言,它可以基于各種軟件平臺進行過濾操作。基 于Sieve語言的過濾腳本對郵件或消息進行分析,根據腳本設置的條件對郵 件或消息的屬性進行測試,對滿足過濾條件的郵件或消息執行相應的過濾操 作。該過濾操作可為丟棄(discard)、拒絕(reject)、轉發(redirect)、 保存(fileinto)、終止(stop )或繼續(keep )等操作。以下是基于Sieve
語言生成的包含過濾設置信息的過濾腳本一個示例 /*申明一些可選的特性*/
require [ "fileinto,,, "for_every_part", "mime"]; /*如果發送者包含chenqian5)huawei. com則保存消息至URL*/ if header : contains "from" "chenqianQhuawei.com" { fileinto"URL,,; stop; }
/*如果主題包含sex則丟棄消息*/
if header :contains "subject" "sex" { discard; stop; }
/*如果消息超過1M則丟棄消息*/
if size :over 1M { discard^ st0p5 }
/*如果消息內容包含image/jpeg則轉發消息到URL*/
f or_every—part
if (header : mime : contenttype : is "Content-Type" "image/jpeg") redirect"URL"; stop;步驟62、媒體控制器封裝模塊根據包含過濾設置信息的過濾腳本封裝協 議包(例如H. 248協議包),將包含有過濾腳本的協議包發送給i某體處理 器解析模塊。
步驟63、媒體處理器解析模塊接收包含有過濾腳本的協議包,解析該協 議包并獲取該協議包包含的過濾腳本,讀取該過濾腳本獲得該過濾腳本包含 的過濾設置信息。
例如當生成過濾腳本時采用的腳本語言是Sieve語言,則在i某體處理 器解析模塊也可相應的采用Sieve語言讀取過濾腳本,從而獲得過濾腳本攜 帶的過濾設置信息。
其中,媒體處理器解析模塊接收過濾腳本可為被動接收,如媒體控制 器直接將過濾腳本發送給媒體處理器。々某體處理器解析模塊接收過濾腳本也 可為主動接收,如媒體控制器將過濾腳本的統一資源定位符(Uniform Resource Locator,以下簡稱URL )發送給媒體處理器,媒體處理器根據URL 獲取過濾腳本,解析該過濾腳本并獲取該過濾腳本攜帶的過濾條件信息和過 濾操作信息。
步驟64、媒體處理器過濾模塊提取媒體處理器端口接收和/或發送消息 的消息屬性,根據解析模塊解析出的過濾條件信息和過濾操作信息,判斷媒 體處理器端口接收和/或發送消息屬性是否滿足過濾條件,如果是,執行步驟 65;如果不是,執行步驟66。
步驟65、媒體處理器過濾模塊根據過濾操作信息執行相應的過濾操作, 當媒體處理器過濾模塊執行過濾操作失敗時,媒體處理器過濾模塊向媒體控 制器返回相應的錯誤碼,執行步驟67。
步驟66、媒體處理器過濾模塊對端口接收和/或發送的消息不進行過濾 處理,以正常流程接收和/或發送消息。
步驟67、過濾流程結束。本實施例媒體控制器采用腳本生成語言生成過濾設置信息相應的過濾腳 本或接收包含過濾設置信息的過濾腳本,根據過濾腳本進行協議包的封裝, 媒體處理器接收并解析協議包,獲取過濾腳本,并讀取過濾腳本荻取相應的 過濾條件信息和過濾操作信息,對滿足過濾條件的信息執行相應的過濾操作, 當過濾操作失敗時,向媒體控制器返回相應的錯誤代碼,從而使得業務層的 過濾設置信息能夠通過控制層發送到媒體層,控制層和媒體層的過濾設置信 息同步,從而在分離網絡架構下實現對消息的過濾處理。
本領域普通技術人員可以理解實現上述方法實施例的全部或部分步驟 可以通過程序指令相關的硬件來完成,前述的程序可以存儲于一計算機可讀 取存儲介質中,該程序在執行時,執行包括上述方法實施例的步驟;而前述 的存儲介質包括R0M、 RAM、磁碟或者光盤等各種可以存儲程序代碼的介質。
本領域技術人員可以理解附圖只是一個優選實施例的示意圖,附圖中 的模塊或流程并不一定是實施本發明所必須的。
本領域技術人員可以理解實施例中的裝置中的模塊可以按照實施例描 述分布于實施例的裝置中,也可以進行相應變化位于不同于本實施例的一個 或多個裝置中。上述實施例的模塊可以合并為一個模塊,也可以進一步拆分 成多個子模塊。
上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。 最后應說明的是以上實施例僅用以說明本發明的技術方案,而非對其 限制;盡管參照前述實施例對本發明進行了詳細的說明,本領域的普通技術 人員應當理解其依然可以對前述實施例所記載的技術方案進行修改,或者 對其中部分技術特征進行等同替換;而這些修改或者替換,并不使相應技術 方案的本質脫離本發明實施例技術方案的精神和范圍。
權利要求
1、一種消息過濾系統,其特征在于,包括媒體控制器和媒體處理器;所述媒體控制器用于根據接收的過濾設置信息封裝協議包,并將包含所述過濾設置信息的協議包發送給所述媒體處理器;所述媒體處理器用于解析接收的協議包并獲取所述過濾設置信息,根據所述過濾設置信息對接收和/或發送的消息執行相應的過濾操作。
2、 一種媒體控制器,其特征在于,包括 封裝模塊,用于根據接收的過濾設置信息封裝協議包;發送模塊,用于將包含所述過濾設置信息的協議包發送給媒體處理器。
3、 根據權利要求2所述的媒體控制器,其特征在于,所述封裝模塊至少 包括以下封裝單元之一第一封裝單元,用于根據接收的過濾設置信息或包含過濾設置信息的過濾腳本封裝協議包,將封裝后的協議包轉發給所述發送^t塊;第二封裝單元,用于根據接收的過濾設置信息生成包含所述過濾設置信息的過濾腳本,根據所述過濾腳本封裝協議包,將封裝后的協議包轉發給所述發送模塊。
4、 一種媒體處理器,其特征在于包括解析模塊,用于解析接收的協議包并獲取該協議包包含的過濾設置信息; 過濾模塊,用于根據所述過濾設置信息對接收和/或發送的消息執行相應 的過濾操作。
5、 根據權利要求4所述的媒體處理器,其特征在于,所述解析模塊至少 包括以下解析單元之一第一解析單元,用于在接收的協議包的相應字段解析并獲取所述過濾設置信息;第二解析單元,用于解析接收的協議包并獲取該協議包包含的過濾腳本, 讀取所述過濾腳本并獲取所述過濾腳本包含的所述過濾設置信息;第三解析單元,用于解析接收的協議包并獲取該協議包包含的過濾腳本的統一資源定位符,根據所述統一資源定位符獲取相應的過濾腳本,讀取所 述過濾腳本并獲取所述過濾腳本包含的所述過濾設置信息。
6、 根據權利要求5所述的媒體處理器,其特征在于,所述過濾設置信息 包括過濾條件信息和過濾操作信息;所述過濾模塊用于在所述媒體處理器接收和/或發送的消息滿足所述過 濾條件時,對所述接收和/或發送的消息執行相應的過濾操作。
7、 根據權利要求4-6所述的任一媒體處理器,其特征在于,還包括反饋模塊,用于在所述過濾模塊過濾操作失敗時,向所述媒體控制器返 回相應的^l昔誤碼。
8、 一種消息過濾方法,其特征在于包括解析接收的協議包并獲取所述協議包包含的過濾設置信息,根據所述過 濾設置信息對接收和/或發送的消息執行相應的過濾操作。
9、 根據權利要求8所述的消息過濾方法,其特征在于,解析接收的協議 包并獲取所述協議包包含的過濾設置信息之前,還包括媒體控制器根據所述媒體控制器接收的過濾設置信息封裝協議包并下發 包含所述過濾設置信息的協議包。
10、 根據權利要求8所述的消息過濾方法,其特征在于,所述々某體控制 器根據所述媒體控制器接收的過濾設置信息封裝協議包,具體為所述媒體控制器根據所述媒體控制器接收的過濾設置信息或包含過濾設 置信息的過濾腳本封裝協議包;或者,所述J 某體控制器根據所述媒體控制器接收的過濾設置信息生成包含所述 過濾設置信息的過濾腳本,根據所述過濾腳本封裝協議包。
11、 根據權利要求8-10所述的任一消息過濾方法,其特征在于,所述解 析接收的協議包并獲取所述協議包包含的過濾設置信息,具體為在接收的協議包的相應字段解析并獲取所述過濾設置信息;或者, 解析接收的協議包并獲取該協議包包含的過濾腳本,讀取所述過濾腳本 并獲取所述過濾腳本包含的所述過濾設置信息;或者,解析接收的協議包并獲取該協議包包含的過濾腳本的統一資源定位符, 根據所述統一資源定位符獲取相應的過濾腳本,讀取所述過濾腳本并獲取所 述過濾腳本包含的所述過濾設置信息。
12、 根據權利要求11所述的消息過濾方法,其特征在于,所述過濾設置 信息包括過濾條件信息和過濾才喿作信息;所述根據過濾設置信息對接收和/或發送的消息執行相應的過濾操作,具 體為在接收和/或發送的消息滿足所述過濾條件時,對所述接收和/或發送的消息執行相應的過濾操作。
13、 根據權利要求12所述的消息過濾方法,其特征在于,根據所述過濾設置信息對"^妄收和/或發送的消息執行相應的過濾搮:作之后,還包括當所述過濾操作失敗時,向所述媒體控制器返回相應的錯誤碼。
14、 根據權利要求12所述的消息過濾方法,其特征在于,所述過濾條件 信息至少包括以下信息之一消息發送者的地址、消息大小、消息主題、消 息內容類型、消息內容;f各式、消息傳輸方向。
15、 根據權利要求13所述的消息過濾方法,其特征在于,所述過濾操作 至少包括以下操作之一丟棄消息、存儲消息、或者轉發消息。
16、 根據權利要求15所述的消息過濾方法,其特征在于,所述存儲消息 具體為根據過濾設置信息包含的存儲地址信息存儲消息;或者,根據預設 的或根據過濾設置信息包含的分配指令分配的地址信息存儲消息,并向所述 媒體控制器發送存儲消息的地址信息。
17、 根據權利要求12所述的消息過濾方法,其特征在于, 在所述解析接收的協議包并獲取所述協議包包含的過濾設置信息后,進一步包括在接收到包含有過濾更新信息的協議包時,根據過濾更新信息對 媒體處理器先前接收的相應的過濾設置信息進行更新。
18、 根據權利要求17所述的消息過濾方法,其特征在于,所述過濾更新 信息至少包括以下信息之一修改或刪除至少一個過濾條件、啟動或停止至 少一個過濾才喿作。
全文摘要
本發明涉及了一種消息過濾方法、裝置和系統。該系統包括媒體控制器和媒體處理器;所述媒體控制器用于根據接收的過濾設置信息封裝協議包,并將包含所述過濾設置信息的協議包發送給所述媒體處理器;所述媒體處理器用于解析接收的協議包并獲取所述過濾設置信息,根據所述過濾設置信息對接收和/或發送的消息執行相應的過濾操作。該方法包括解析接收的協議包并獲取過濾設置信息,根據所述過濾設置信息對接收和/或發送的消息執行相應的過濾操作。本發明使得分離網絡架構下業務層的過濾設置信息能夠通過控制層發送到媒體層,控制層和媒體層的過濾設置信息同步,從而在分離網絡架構下實現對消息的過濾處理。
文檔編號H04L12/58GK101547166SQ20081009036
公開日2009年9月30日 申請日期2008年3月28日 優先權日2008年3月28日
發明者騫 陳 申請人:華為技術有限公司