有位網友求助說,網絡監控攝像機的圖像會卡頓,但是自己算了帶寬,一臺網絡攝像機占8M帶寬,交換機百兆,接入11臺,理論上100÷8=12.5臺,一共接11臺那么網絡帶寬是不是夠了,但還會網絡卡頓,問到底是什么原因呢?
關于卡頓的原因,我們前面已經寫過相關文章了,感興趣的可以翻翻歷史文章。通常都能在外部找到原因,但是如果排除了外部因素,你應該怎么辦呢?
針對這些困惑,我們要先了解網絡監控與涉及設備的基礎概念。
什么是視頻碼流和幀率?
視頻碼流是視頻文件編碼后在單位時間內使用的數據流量。也稱為視頻碼率。是視頻畫面質量的最重要部分(摘自百度百科)。
我們監控視頻中碼流的單位時間是1秒。1秒=1000毫秒(這個下面用)。
那么視頻圖像會不會像流水一樣勻速地流過呢?肯定不是的。是通過幀來經過,幀是數據傳輸單位,每秒鐘幀數 (用fps表示) 愈多,所顯示的動作就會愈流暢。高的幀率可以得到更流暢、更逼真的視頻動畫。
如果視頻是每秒25幀,那每幀之間就有時間間隔。時間間隔可以計算為40毫秒。
那我們可以得知,發送和發送間隔的平均碼率要小于發送視頻幀時候的碼率。
幀,也分I幀,P幀,B幀。I幀通常是每個視頻片段的第一幀,它的占量是最大的,可用示意圖理解如下。
什么是全雙工和半雙工?
全雙工傳輸是指交換機在發送數據的同時也能夠接收數據,兩者同步進行,這好像一條東西走向的寬闊馬路,可允許兩輛馬車迎面通過,當馬車A自東向西行駛,馬車B自西向東行駛時,兩車可以同時行進,互不影響,這個例子中寬闊的馬路代表的就是全雙工鏈路。目前的交換機都支持全雙工。全雙工的好處在于遲延小,速度快。
半雙工就是指一個時間段內只有一個動作發生,舉個簡單例子,一根獨木橋,同時只能允許一個人通過,當有甲、乙兩人從河岸兩端迎面走過來時,這種情況下就只能是一個人在橋頭先停下來,等待另外一個人走過來后,再繼續走過去,這個例子中獨木橋代表的就是半雙工鏈路。早期的對講機、以及早期集線器等設備都是實行半雙工的產品。當數據流量較大時,工作在半雙工模式的鏈路就會出現沖突、錯包,最終影響了工作性能。因此半雙工已逐漸退出歷史舞臺。
全雙工模式和半雙工模式在網卡中的區別
1、在全雙工模式下,8網根線都要分別接到水晶頭相應的線序位置上;
2、在半雙工模式下,只需接4根線,參照T568B標準,一般使用1 、2、3、6 線序位置上的四根線,即:橙白、橙、綠白、綠這四根線。橙白、橙 用于發送數據 ,綠白、綠 用于接收數據。
3、全雙工模式下,網線最大可以達到100兆以上的速度。在半雙工模式下,網線能達到的速度通常為10兆左右。
4、全雙工模式的網線既可以工作于全雙工模式,也可以工作于半雙工模式;但半雙工模式的網線不能工作于全雙工模式。
5、在半雙工模式下,多出來的兩組線可以用來接電話線,比如:把“白藍、藍” 這組線分出來當電話線使用。在局域網網絡布線中,用這種方式可以節省布線成本,一根雙絞線同時當網線和電話線使用。
什么是網口速率?
我們現今正在使用的網絡接口都為以太網接口。網口接口速率決定了接口傳輸數據的帶寬,一般用到的接口有10Mbps、100 Mbps、1000 Mbps等速率類型。
常見的以太網接口類型有RJ-45接口,RJ-11接口,SC光纖接口,FDDI接口,AUI接口,BNC接口,Console接口。但是我們通常說的網口速率都是RJ-45接口,就是網線水晶頭。
不同速率的接口也是可能對接成功的,其工作速率最終需要協商一致。如果100 Mbps自協商接口和10 Mbps自協商接口對接,協商出來的工作速率是10 Mbps。所以,接口速率不一定就是其工作速率,一般工作速率會小于或等于接口速率。