DAV数字音视工程网_会议系统、指挥调度、演艺科技、智能楼宇等音视频工程信息行业门户

DAV首頁
數字音視工程網

微信公眾號

數字音視工程網

手機DAV

null
null
null
卓華,
招商,
null
null
null
快捷,
null

我的位置:

share

數字視頻監控應用中要注意的網絡問題

來源:慧聰安防網        編輯:windy    2012-02-24 10:10:55     加入收藏    咨詢

咨詢
所在單位:*
姓名:*
手機:*
職位:
郵箱:*
其他聯系方式:
咨詢內容:
驗證碼:
不能為空 驗證碼錯誤
確定

數字視頻監控應用中,必須用到網絡通訊,就網絡通訊需要注意的幾個問題在這里表達下自己的看法。

  數字視頻監控應用中,必須用到網絡通訊,就網絡通訊需要注意的幾個問題在這里表達下自己的看法。

  第一:網絡通訊中的收發效率

  視頻監控中需要傳輸視頻流,視頻流是比較大的數據,所以對于網絡通訊的中的收發效率提高是比較關鍵的。

  在網絡通訊中TCP通訊包括send寫數據和recv讀數據。

  讀本質來說其實不能是讀,在實際中,具體的接收數據不是由這些調用來進行,是由于系統底層自動完成的,read也好,recv也好只負責把數據從底層緩沖copy到我們指定的位置.對于讀來說(read,或者recv),在阻塞條件下如果沒有發現數據在網絡緩沖中會一直等待,當發現有數據的時候會把數據讀到用戶指定的緩沖區,但是如果這個時候讀到的數據量比較少,比參數中指定的長度要小,read并不會一直等待下去,而是立刻返回。read的原則是數據在不超過指定的長度的時候有多少讀多少,沒有數據就會一直等待。所以一般情況下我們讀取數據都需要采用循環讀的方式讀取數據,一次read完畢不能保證讀到我們需要長度的數據,read完一次需要判斷讀到的數據長度再決定是否還需要再次讀取。在非阻塞的情況下,read的行為是如果發現沒有數據就直接返回,如果發現有數據那么也是采用有多少讀多少的進行處理.對于讀而言,阻塞和非阻塞的區別在于沒有數據到達的時候是否立刻返回.recv中有一個MSG_WAITALL的參數recv(sockfd,buff,buff_size,MSG_WAITALL),在正常情況下recv是會等待直到讀取到buff_size長度的數據,但是這里的WAITALL也只是盡量讀全,在有中斷的情況下recv還是可能會被打斷,造成沒有讀完指定的buff_size的長度。所以即使是采用recv+WAITALL參數還是要考慮是否需要循環讀取的問題,在實驗中對于多數情況下recv還是可以讀完buff_size,所以相應的性能會比直接read進行循環讀要好一些。不過要注意的是這個時候的sockfd必須是處于阻塞模式下,否則WAITALL不能起作用。

  盡量使用非阻塞模式

  寫的本質也不是進行發送操作,而是把用戶態的數據copy到系統底層去,然后再由系統進行發送操作,返回成功只表示數據已經copy到底層緩沖,而不表示數據以及發出,更不能表示對端已經接收到數據.對于write(或者send)而言,在阻塞的情況是會一直等待直到write完全部的數據再返回.這點行為上與讀操作有所不同,究其原因主要是讀數據的時候我們并不知道對端到底有沒有數據,數據是在什么時候結束發送的,如果一直等待就可能會造成死循環,所以并沒有去進行這方面的處理;而對于write,由于需要寫的長度是已知的,所以可以一直再寫,直到寫完.不過問題是write是可能被打斷造成write一次只write一部分數據,所以write的過程還是需要考慮循環write,只不過多數情況下一次write調用就可能成功。

  非阻塞寫的情況下,是采用可以寫多少就寫多少的策略.與讀不一樣的地方在于,有多少讀多少是由網絡發送的那一端是否有數據傳輸到為標準,但是對于可以寫多少是由本地的網絡堵塞情況為標準的,在網絡阻塞嚴重的時候,網絡層沒有足夠的內存來進行寫操作,這時候就會出現寫不成功的情況,阻塞情況下會盡可能(有可能被中斷)等待到數據全部發送完畢,對于非阻塞的情況就是一次寫多少算多少,沒有中斷的情況下也還是會出現write到一部分的情況.

  所以基于socket讀和寫的本質,我們可以得出結論,不是每次收發越大越好,也不是每次收發越小越好,需要根據網絡的實際情況得出這樣一個臨界值。

  第二:盡量使用非阻塞模式

  在這里有必要對阻塞的概念作一解釋:一個socket可以處于"阻塞模式"或"非阻塞模式",當一個套接字處于阻塞模式(即同步操作)時,它的阻塞函數直到操作完成才會返回控制權,之所以稱為阻塞是因為此套接字的阻塞函數在完成操作返回之前什么也不能做。如果一個socket處于非阻塞模式(即異步操作),則會被調用函數立即返回。可以用GetLastError成員函數查詢最后的錯誤。微軟建議盡量使用非阻塞模式,通過網絡事件的發生而通知應用程序進行相應的處理。

  在視頻數據傳輸部分為了不影響其他的業務,所以建議都使用線程在線程中用非阻塞模式的socket來收發數據,這樣既不會影響其他業務的正常運作,還不會導致如果是阻塞模式下阻塞情況下線程退出不及時的問題。

免責聲明:本文來源于慧聰安防網,本文僅代表作者個人觀點,本站不作任何保證和承諾,若有任何疑問,請與本文作者聯系或有侵權行為聯系本站刪除。(原創稿件未經許可,不可轉載,轉載請注明來源)
掃一掃關注數字音視工程網公眾號

相關閱讀related

評論comment

 
驗證碼:
您還能輸入500
    主站蜘蛛池模板: 铸铁平台-铸铁平板平台厂家-加工优质高精度检验划线装配T型槽平台-尺寸规格全供应-建新铸造 | 辽宁大卯新能源供热设备制造有限公司官方网站,大卯新能源,大卯新能源供热设备 | 数字多媒体展厅设计,智慧科技互动企业展馆展厅设计公司-深圳炫之风 | 泊头市鸿海泵业有限公司--导热油泵,高温油泵,沥青保温泵,圆弧泵,齿轮油泵,高粘度泵,自吸离心油泵,罗茨油泵为主的专业生产厂家 | 湖南长沙智能实验室规划设计、整体建设、净化装修、改造施工公司-福临建设 | 江西省屹诚建筑装饰工程有限公司 | 呼吸家官网|肺功能检测仪生产厂家|国产肺功能仪知名品牌|肺功能检测仪|肺功能测试仪|婴幼儿肺功能仪|弥散残气肺功能仪|肺功能测试系统|广州红象医疗科技有限公司|便携式肺功能仪|大肺功能仪|呼吸康复一体机|儿童肺功能仪|肺活量计|医用简易肺功能仪|呼吸康复系统|肺功能仪|弥散肺功能仪(大肺)|便携式肺功能检测仪|肺康复|呼吸肌力测定肺功能仪|肺功能测定仪|呼吸神经肌肉刺激仪|便携式肺功能 | 液力耦合器,摩擦型液力耦合器生产厂家-河南省华升矿机有限公司 | 金蝶软件_金蝶湖南公司_长沙金蝶软件_精斗云软件_财务软件_进销存软件_云ERP软件_金蝶软件销售电话 | 真空上料机_加料机_天津自动上料机_投料站_包装机加料_吸料机_粉体称重-天津市飞云粉体设备有限公司 | 石材雕刻机_墓碑雕刻机_木工雕刻机_雕刻机厂家-合肥沃力数控设备有限责任公司 | 河北高新技术企业认定,沧州商标注册,沧州9001质量管理体系认证,沧州高新技术企业认定,沧州体系认证,沧州商标续展,沧州版权登记,河北国瑞企业管理咨询有限公司 | 装盒机_全自动装盒机-温州凯祥包装机械有限公司 | 西安汉信丨条码打印机,条码扫码枪,条码标签,条码仓库管理系统专业供应商 | 南京三维动画制作公司,企业视频制作,视频拍摄,FLASH动画设计,宣传片拍摄,广告片制作 | 气动球阀-气动蝶阀-电动蝶阀「厂家」-恒信流体控制有限公司 | 碳化硅微粉_超细碳化硅微粉_潍坊凯华碳化硅微粉有限公司 | 疲劳试验机|电子万能试验机|摩擦磨损试验机|冲击试验机|济南全力测试技术有限公司 | 截止阀,电动,气动,手动,化工截止阀-上海申弘阀门有限公司 | 液体灌装机-酱料灌装机-全自动灌装机-旋盖机-铝箔封口机-贴标机厂家-迈特威自动化设备(天津)有限公司" | 消防服_防化服_灭火防护服_消防装备生产厂家-泰州市华通消防装备厂有限公司 | 淘客联盟平台_网络电话系统-河南英邦软件科技有限公司官网 | 宁波雷豹机电科技有限公司|雷豹冷风机|雷豹工业大风扇|MFC18000|MFC16000|MFC6000|EF3622|EF4222|EF4822|移动工业蒸发式冷风机空气冷却器|大型工业空调扇|雷豹移动式工业大风扇|雷豹大风扇|生产厂家|公司官网 | 家电|想认识品茶妹子?这份攻略手把手教你 | 金华美凡文化传媒有限公司| 中国焊接协会网站—中国焊接信息网;焊接行业最权威访问量最大的专业网站:焊接信息、焊接材料,焊接机器,焊接设备,焊机,焊材,辅助设备,焊机配件,仪器仪表,电动工具,钎焊,送丝机,表面处理,自动化专机,焊锡丝,助焊剂 | 济南德固机械|膨化食品生产线|早餐谷物玉米片生产线|拉丝蛋白生产线|速食米饭生产线 | 液体灌装机-酱料灌装机-全自动灌装机-旋盖机-铝箔封口机-贴标机厂家-迈特威自动化设备(天津)有限公司" | 南京三维动画制作公司,企业视频制作,视频拍摄,FLASH动画设计,宣传片拍摄,广告片制作 | 驾驶扫地机-手推洗地机-吸尘器-清洁设备厂家-荣事达官网 | 炸鸡汉堡设备厂家-开汉堡炸鸡店需要的设备全套-广州英迪尔电器有限公司 | 京建鹏达_商用无烟烧烤设备多少钱|开店商用自助旋转烧烤炉价格|无烟电烧烤炉批发厂家|无烟烧烤桌定做厂商-京建鹏达烧烤设备网 | 今日北斗 | 北斗最新动态 | 小字符喷码机,激光喷码机,喷码机厂家_山东闪创电子设备有限公司 小型生活污水处理设备_MBR膜生物反应器_口腔医院/脱脂污水处理设备_酸洗磷化/喷涂废水处理设备-上海台江环保 | 塑料检查井_双扣聚氯乙烯增强管_双壁波纹管-河南中盈塑料制品有限公司 | 江苏圣博莱自动化科技有限公司| 江苏德邦化学工业集团有限公司| 九江市石化塑业有限公司| 欧派板材官网 | 全屋定制板材 专业供应商 | 世界地图,卫星地图,99地图网,微笑如歌 - www.99ditu.com | 上海浩斌信息科技有限公司RFID读写器,IC卡读卡器,手持机,数据采集终端,电力仓库管理软件开发,固定资产软件,纱管标签,试剂管理,RFID试剂柜,档案管理,档案柜,智能货架 |