專利名稱:電纜傳輸數據中簡化終端處理的方法
技術領域:
本發明涉及一種電纜傳輸數據中簡化終端處理的方法,特別涉及一種在電纜傳輸數據中利用MPEG包傳輸協議數據包時簡化終端處理的方法。
在寬帶網絡上傳輸音頻/視頻數據時,通常將音頻/視頻數據打成MPEG包。當使用寬帶網絡傳輸協議數據包(如Ethernet包,IP包等)時,通常也與音頻、視頻數據一樣,將協議數據包打成MPEG包,然后再傳輸。MPEG包的格式如
圖1所示,每個MPEG包的長度為188字節。
在圖1中,MPEG包同步字節109為8位;.傳輸錯誤指示108為1位,如果MPEG包在傳輸過程中出現了錯誤,則該位被置1;負載開始指示107為1位,該位若為1,則說明在這個MPEG包中指示域102存在,MPEG包的有效載荷為183字節,若該位為0,則說明指示域102在這個MPEG包中不存在,MPEG包的有效載荷為184字節;傳輸優先級106在用MPEG包傳輸協議數據包時不用,為保留位;PID105為13位載荷標識,指示該MPEG包中數據的標識,終端可用來判斷此MPEG包中的數據是協議數據還是音頻/視頻數據;保留域104有4位,這些位在用MPEG包傳輸協議數據時不用;計數器103有4位,為PID等于當前PID的MPEG包的循環記數。指示域102為1字節指示,該域只有在負載開始指示107為1時存在,它指示在這個MPEG包中新協議數據包的開始位置。
在傳送協議數據包時,一般將所有的協議數據包打成MPEG包,然后通過電纜等寬帶傳輸介質傳輸。這些MPEG包是以廣播形式傳輸的,連接在電纜上的所有終端在解開MPEG包、并重新組織成協議數據包之前,無法知道這個MPEG包是否是傳輸給自己的。所以終端必須解開所有的MPEG包,重新組織成協議數據包,檢查協議數據包中的目的地址,判斷是否是發送給自己的,如果是,則接收下來,否則丟棄。由于許多終端共享一個物理信道,終端必須處理所有的MPEG包,重新生成協議數據包,判斷目的地址,接收發送給自己的包。終端把大量的處理時間浪費在處理不是給自己的數據上,降低了處理的效率。
本發明的目的是為了克服上協議數據傳輸過程中,數據接收效率低的問題,提出一種在電纜傳輸數據中利用MPEG包傳輸協議數據時,簡化終端處理的方法。
本發明是通過以下方案實現的本發明提供一種在電纜傳輸數據中利用MPEG包傳輸協議數據包時的簡化終端處理的方法,在數據傳輸端,在MPEG包中開辟一個目的地址域,將協議數據包中的目的地址放到MPEG包的目的地址域中;在數據接收端,當收到MPEG包時,檢查目的地址域中的目的地址是否與自己的目的地址相同,如果是,終端接收這個MPEG包,否則丟棄。
所述目的地址域位于原MPEG包的負載區域中。
所述目的地址可以映射為身份識別碼,存放到MPEG的目的地址域中,將所述目的地址與身份識別碼的關系通知每個終端,然后進行上述數據接收端的接收處理。
所述身份識別碼的字節長度小于所述目的地址的字節長度。
當所述終端數量少于MPEG的保留域的容量所能表示的范圍時,可將映射后的身份識別碼存放在MPEG的保留域中。
當前端服務器對終端的類型進行判別,判別出終端不能識別所述開辟了目的地址域的新的格式的MPEG包時,則按傳統格式對數據打包。
以下結合附圖及實施例對本發明作進一步的描述。
圖1是MPEG包的結構。
圖2是本發明的對MPEG包進行打包的流程圖。
圖3是本發明的對MPEG包進行解包的流程圖。
圖4是本發明的向終端發送IP包時的包的結構圖。
圖5是本發明的向終端發送Ethernet包時的包的結構圖。
圖6是本發明的向終端發送IP包并將IP地址放在MPEG包的保留域時的包的結構圖。
為了降低終端接收數據時的處理工作量,本發明提出了一種使終端不用解開MPEG包就可以知道這個MPEG包中的數據是否是發給自己的方法。
一般地,在MPEG包中,協議數據包都有自己的目的地址。如果用MPEG包傳送的是Ethernet包,則目的地址就是16位或48位的Ethernet地址;如果傳送的是IP包,則目的地址就是32位IP地址。在本發明中,將原有的MPEG包結構進行修改,在MPEG包中開辟一個目的地址域,或利用MPEG中的保留域,將協議數據包中的目的地址或能夠唯一標識目的地址的數據放到MPEG的開辟的目的地址域中,或放到MPEG的保留域中。
終端收到一個MPEG包后,檢查目的地址,如果目的地址與自己的地址相同或者是廣播目的地址,終端就接受這個MPEG包并處理它,否則簡單丟棄。
Ethernet地址或IP地址都比較長,Ethernet地址為48位,IP地址為32位,這樣就降低了MPEG包中的有效載荷長度。另一方面,由于在一個利用MPEG傳輸協議數據包的系統中,終端的數目一般是有限的,我們可以將Ethernet地址或IP地址映射為系統內部的可唯一標識終端身份的識別碼SID,這個識別碼占用較少的比特數,在MPEG包中用這個識別碼取代目的地址,從而可以使占用的有效載荷長度減少。而且如果終端數目足夠少,識別碼就足夠短,我們可以將識別碼直接放到MPEG頭的保留域中(由于保留域一般為4位,所以上述情況一般適用于終端數目在14以下時),不必占用MPEG包負載的空間。
修改后的MPEG結構如下表1
在上述結構中,MPEG頭(201)對應于原有的MPEG結構中的從指示域至MPEG包同步字節(102~109)的部分。而目的地址(202)及有效載荷(203)對應于原有的MPEG結構中的負載101(當指示域為0時包括指示域),即目的地址(202)加上有效載荷(203)的字節長度等于原有的MPEG結構中的負載101的長度。當終端數目較少,將識別碼直接放到MPEG頭的保留域時,表1中目的地址可以作為有效載荷,寫入協議數據。
為了與原始的MPEG包兼容,可以利用MPEG頭中的保留位傳輸優先級106作為目的地址或標識碼是否存在的指示位。終端收到MPEG包后,檢測這個指示位,如果該位為1,則說明MPEG載荷字段的第一個域為目的地址或標識碼。對于不能識別改進方案MPEG包的終端,用這種MPEG包重新生成協議數據包時,會由于格式不同而產生錯誤協議數據包,終端最終會丟棄錯誤包,不會影響終端收取正確的數據。
當在系統中存在有不能識別本發明的新的MPEG包格式的終端時,前端服務器應能識別終端類型。這可以通過下列方式來實現當終端在服務商處注冊時,將終端類型加入數據庫,從而前端可維護識別碼SID和終端類型的映射表。這樣,當終端向前端發送信息時,前端可根據此映射表得知終端類型。因此,當判別出終端的類型為能夠識別本發明描述的MPEG包,則前端按本發明的格式打包,否則按傳統格式打包。這樣就可以做到兩種MPEG包格式的兼容。因而對于那些不能識別改進方案MPEG包的終端,當用這種MPEG包重新生成協議數據包時,這些終端最終會丟棄因格式不同而產生的錯誤協議數據包,而只接收發給自己的按傳統格式打包的協議數據包。所以不會影響終端收取正確的數據。
具有不同SID的包不能打到同一個MPEG包中,否則第二個IP包的目的終端無法檢測到這個MPEG包是發給自己的。
在MPEG中加入目的地址或身份識別碼后,可大大簡化終端的處理,終端首先根據目的地址或身份識別碼判斷這個MPEG包是否是發給自己的,這只作簡單比較即可完成。用軟件或硬件均可快速實現。如果這個MPEG包中的目的地址或識別碼與自己的地址或識別碼相同,就接收這個MPEG,否則丟棄而不作任何處理。這樣,終端不必重新生成所有的協議數據包,即可知道某MPEG包中的數據是否是給自己的。
以下說明對MPEG包進行打包和解包過程。
首先在發送端,將Ethernet地址或IP地址等目標地址映射為系統內部的可唯一標識終端身份的識別碼SID,并將該表示該映射關系的表通知服務器方。
當服務器有一個協議數據包發送給終端時,其處理過程如圖2所示。它先取出待發的協議數據包,獲得目的地址,然后根據目的地址,從映射表中查出識別碼SID。服務器在生成MPEG包時,將這個識別碼SID寫入目的地址,然后將協議數據寫入。如果一個數據包中寫不完協議數據,則再構造另一個MPEG包,繼續寫入協議數據,如果剩余數據填不滿MPEG,則用填充字節進行填充。
另一方面,終端收到MPEG包時,其處理過程如圖3所示。首先獲取識別碼SID,然后檢查目的地址域中的識別碼SID是否與自己的識別碼SID相同,如果是,終端接收這個MPEG包,否則丟棄。
以下用具體的例子說明上述過程
某服務器通過廣播信道向100個終端發送IP數據包,100個終端的IP地址分別為192.168.152.1~192.168.152.100。服務器希望向地址為192.168.152.87的終端發送一個長度為500的IP包,服務器輸出的MPEG包如圖4所示,在這里,目的地址放在了新開辟的目的地址中。由于在610之后,還剩余39個字節,所以用39字節的填充字節。
對于IP地址為192.168.152.87的終端,收到每一個MPEG數據包后,檢查地址并與自己的IP地址比較,相等則收下來,重新恢復成PDU。否則丟棄。
某服務器通過廣播信道向100個終端發送Ethernet包,這100個終端的Ethernet地址為000012340001~000012340100;服務器先將這些Ethernet地址映射到內部的身份識別碼分別為1~100,然后將這些識別碼通知每個終端,如果這時Server需向Ethernet地址為000012340050的終端發送一個長度為300的Ethernet包,于是Server生成圖5所示MPEG包。
server通過廣播信道向10個終端發送IP包,IP地址為192.168.152.11~192.168.152.20,由于終端數量較少,Server將這些地址映射為內部4位識別碼0001~1010,Server使用MPEG保留域104存放識別碼。
Server向IP地址為192.168.152.15的終端發送IP包長度100,然后生成一個MPEG包如圖6所示。
以上對本發明在電纜傳輸數據中的應用進行了說明,應該指出,本發明并不限定于此,凡是在利用MPEG包傳輸協議數據包時,應用本發明的方法原理終端處理進行簡化,均應視為本發明的保護范圍。
權利要求
1.一種在電纜傳輸數據中利用MPEG包傳輸協議數據包時的簡化終端處理的方法,其特征在于,在數據傳輸端,在MPEG包中開辟一個目的地址域,將協議數據包中的目的地址放到MPEG包的目的地址域中;在數據接收端,當收到MPEG包時,檢查目的地址域中的目的地址是否與自己的目的地址相同,如果是,終端接收這個MPEG包,否則丟棄。
2.根據權利要求1所述的方法,其特征在于,所述目的地址域位于原MPEG包的負載區域中。
3.根據權利要求1所述的方法,其特征在于,所述目的地址可以映射為身份識別碼,存放到MPEG的目的地址域中,將所述目的地址與身份識別碼的關系通知每個終端,然后進行上述數據接收端的接收處理。
4.根據權利要求3所述的方法,其特征在于,所述身份識別碼的字節長度小于所述目的地址的字節長度。
5.根據權利要求3所述的方法,其特征在于,當所述終端數量少于MPEG的保留域的容量所能表示的范圍時,可將映射后的身份識別碼存放在MPEG的保留域中。
6.根據權利要求1所述的方法,其特征在于,當前端服務器對終端的類型進行判別,判別出終端不能識別所述開辟了目的地址域的新的格式的MPEG包時,則按傳統格式對數據打包。
全文摘要
一種在電纜傳輸數據中利用MPEG包傳輸協議數據包時的簡化終端處理的方法,在數據傳輸端,在MPEG包中開辟一個目的地址域,將協議數據包中的目的地址放到MPEG包的目的地址域中;在數據接收端,當收到MPEG包時,檢查目的地址域中的目的地址是否與自己的目的地址相同,如果是,終端接收這個MPEG包,否則丟棄。本發明能使簡化終端的數據處理。對于不能識別本發明的MPEG包格式的終端也具有兼容性。
文檔編號H04N7/10GK1334680SQ0012132
公開日2002年2月6日 申請日期2000年7月19日 優先權日2000年7月19日
發明者王濱, 張勤 申請人:北京華諾信息技術有限公司