由mpeg容錯技術想到的

2021-04-03 01:59:55 字數 832 閱讀 9441

1.ip,tcp,udp都有16位的校驗和,其中ip包的校驗和針對ip包頭的20個位元組檢錯,tcp則是針對tcp的20個包頭和整個資料段來檢錯,udp的校驗和字段大多數應用並未使用該欄位.對於tcp協議而言,如果由校驗和字段發現傳輸錯誤,則會要求底層重傳,而udp包只要被接收到,就不會去驗錯.這樣就無法保證udp包的資料正確性.當然我們可以讓udp包開啟真正的校驗功能,但演算法會降低傳輸的效率,尤其當傳輸的有效載荷比較多時.

2.校驗和不同於crc校驗,要簡單很多.且也不能百分之百的保證完全檢錯.這點可以參閱相關文獻.所以說tcp的傳輸資料也不是真的完全是正確的.但是一般情況下都可以檢錯.無法檢錯的機率非常的低.

3.在資料鏈路層也有檢錯的功能,甚至有差錯重傳,那麼是不是它就保證了上層的tcp應用無效,udp也可以被可靠的傳輸呢?答案是否定的.資料鏈路層是點對點的,tcp或udp是端對端的應用。資料鏈路層保證兩個中轉節點間的資料是正確的,但是當資料被拆包到上層時,例如路由器,如果此時路由器繁忙,沒有緩衝區空閒或者其他原因,就會丟包,這樣就造成了資料的不可靠傳輸。現代的有線網路,大部分是架設的光纖網,對於由於線路故障造成的錯誤是很少的,大部分不可靠傳輸是由於丟包造成的,即線路繁忙所致。無線網路另當別論了。

依照上述分析,就不難理解mpeg容錯技術的必要性。由於現代有線通訊線路的穩定性,真正的線路干擾造成的差錯很少。幾乎都是由於線路繁忙丟包造成的。所以即便讓udp開啟了校驗功能,也無法重傳丟失的包。容錯其實容的是丟包的錯。而對於無線網路而言,容錯就不僅僅是容的丟包,這時候最主要的錯誤就是線路干擾了。

另外,對無線網路協議我不太了解。不過我想在無線環境下,tcp和udp一樣,可能單純的校驗和碼無法保證其傳輸質量,也就是說檢錯效果不會太理想。也許有其他更合適的演算法吧。 

跟風 由技術跟風所想到的

人們的生活總被風潮包圍,它可以使人進步也可以使人落後,所以跟風還是適度為宜。坐在電腦前,忽然想起了那個6年前的自己,這才恍然大悟到原來自己也是一名跟風者,然而令我欣慰的是自己恰卻缺少了現在跟風者的盲目。盲目的跟風成就了現在 it 群體的如此龐大,以至於平均水平令人可嘆。回想過去 20年前的中國,從事...

由PageRank想到的

首先來看看什麼是pagerank pagerank 技術 通過對由超過 50,000 萬個變數和 20 億個詞彙組成的方程進行計算,pagerank 能夠對網頁的重要性做出客觀的評價。pagerank 並不計算直接鏈結的數量,而是將從網頁 a 指向網頁 b 的鏈結解釋為由網頁 a 對網頁 b 所投的...

由Cannot find file 想到的

記錄一下 今天除錯程式,單步真機除錯,我日,程式一步一步走,盡然和程式根本就對不上號。特別奇怪。思考一下,應該是工程太多太雜,自己有不小心,讓它們混在一起打架了。於是繼續,把其它所有工程都關了,只開啟乙個,清理了所有工程。與此工程有關的直接搜尋清理,一直以來覺得沒有必要,但這次是為了保險起見。編譯工...