<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 手機與無(wú)線(xiàn)通信 > 設計應用 > 談播出網(wǎng)絡(luò )利用串口傳輸已播出文件

談播出網(wǎng)絡(luò )利用串口傳輸已播出文件

作者: 時(shí)間:2017-06-13 來(lái)源:網(wǎng)絡(luò ) 收藏
 一 開(kāi)發(fā)背景

  當前,隨著(zhù)電視播控數字化和網(wǎng)絡(luò )化的發(fā)展,多家電視臺的電視播控系統采用了網(wǎng)絡(luò )化的播出結構,但是當該系統需要與外界交換數據時(shí)又存在著(zhù)播出網(wǎng)絡(luò )中的如何預防病毒的問(wèn)題,如何實(shí)現電視播控中心的播出網(wǎng)絡(luò )與外界進(jìn)行安全的數據交換是一個(gè)重要的問(wèn)題。

  唐山電視臺采用的是如圖1所示結構的網(wǎng)絡(luò )化自動(dòng)播出系統,它由主備數據服務(wù)器、準備站、主備播出站及網(wǎng)絡(luò )組成,每一部分各自完成獨立的任務(wù),在此不在贅述。

本文引用地址:http://dyxdggzs.com/article/201706/357768.htm

  在唐山電視臺電視播控中心,每天每套的節目播出結束后,當天所有的已播出素材分別在相應的播出站的本地硬盤(pán)保存成PARADOX數據表,為使廣告管理部門(mén)能夠對各個(gè)頻道當天的所有播出廣告節目進(jìn)行內容和時(shí)間的統計,需要將各個(gè)頻道已播出的PARADOX數據表傳輸給廣告管理部門(mén),但是這些已播數據表如何從播出網(wǎng)絡(luò )傳輸給廣告管理部門(mén)的呢?通過(guò)軟盤(pán)等移動(dòng)存儲設備或通過(guò)網(wǎng)絡(luò )傳輸是我們首先想到的辦法,但考慮到網(wǎng)絡(luò )化自動(dòng)播出系統要求較高的安全性,同時(shí)各種安全隱患中計算機病毒的危害表現最為嚴重,因為播出網(wǎng)絡(luò )一旦感染計算機病毒,它將導致整個(gè)播出系統無(wú)法正常工作、播出數據遭到破壞、網(wǎng)絡(luò )阻塞等,這對電視臺的安全播出來(lái)說(shuō)將是致命的。對網(wǎng)絡(luò )化播出系統而言,計算機病毒感染的途徑主要有兩種,一種是通過(guò)受感染的軟盤(pán)或其他存儲介質(zhì)讀寫(xiě)感染,這是最古老也是最有效的攻擊手段,通過(guò)受感染的軟盤(pán)啟動(dòng)系統引導病毒進(jìn)入系統引導區或系統分區表,對于存儲介質(zhì)的長(cháng)期使用不可避免地會(huì )帶來(lái)計算機病毒的感染。另一種的病毒感染途徑就是通過(guò)網(wǎng)絡(luò )共享感染,如果靠網(wǎng)絡(luò )實(shí)現資源共享,而受病毒感染的文件共享所造成的惡果是傳統的病毒力所不及的,所以我們否決了采用軟盤(pán)或其他移動(dòng)存儲設備拷貝已播播出表和將廣告管理部門(mén)的計算機與網(wǎng)絡(luò )化播出系統聯(lián)網(wǎng)的方法。

  基于對現有的運行狀況的分析,考慮到系統運行的要求,我們提出了基于串口通信傳輸數據的方案,設計獨立的數據傳輸協(xié)議,開(kāi)發(fā)獨立的串口數據傳輸系統,將網(wǎng)絡(luò )化播出系統的播后信息經(jīng)過(guò)串口線(xiàn)傳送到廣告管理部門(mén)的計算機。由于串口通信傳輸數據的協(xié)議都是特定的,自己根據系統特點(diǎn)設計,不是標準協(xié)議,并且串口通訊采用單向傳輸方式,只能從播出網(wǎng)絡(luò )向網(wǎng)外傳輸數據,而網(wǎng)外數據不能向播出網(wǎng)絡(luò )內部傳輸數據,而且目前也沒(méi)有發(fā)現基于串口傳輸的計算機病毒的出現,因此可以很好的保證網(wǎng)絡(luò )化播出系統的安全。

  二 實(shí)現串口傳輸文件的基本原理

  串行端口的本質(zhì)功能是作為CPU和串行設備間的編碼轉換器。當數據從 CPU經(jīng)過(guò)串行端口發(fā)送出去時(shí),字節數據轉換為串行的位;在接收數據時(shí),串行的位被轉換為字節數據。Delphi語(yǔ)言是新一代可視化開(kāi)發(fā)工具,它具有功能強大、簡(jiǎn)便易用和代碼執行速度快等特點(diǎn),用Delphi開(kāi)發(fā)串口通信軟件一般有兩種方法:一是利用Windows的通信API函數,另一種是采用Microsoft的SPCCOM控件。這里我們采用了通過(guò)控件SPCCOM開(kāi)發(fā)了串口傳輸已播數據表的應用程序。

  * 進(jìn)行程序設計時(shí)首先要設置好控件SPCCOM的各種屬性,SPCCOM包括以下屬性:CommName是用來(lái)填寫(xiě)COM1、COM2…等串口的名字,在打開(kāi)串口前,必須填寫(xiě)好此值。設定BaudRate波特率9600,4800等,根據實(shí)際需要來(lái)定,在串口打開(kāi)后也可更改波特率,實(shí)際波特率隨之更改。字節長(cháng)度ByteSize可根據實(shí)際情況設定5/6/7/8等、Parity為奇偶校驗位、PBits為停止位、SendDataEmpty是一個(gè)布爾屬性,為true時(shí)表示發(fā)送緩存為空,或者發(fā)送隊列里沒(méi)有信息,為False時(shí)表示表示發(fā)送緩存不為空,或者發(fā)送隊列里有信息。

  * 開(kāi)發(fā)串口傳輸應用程序時(shí),應用程序若要使用串口進(jìn)行通信,必須在使用之前向操作系統提出資源申請要求(打開(kāi)串口),通信完成后必須釋放資源(關(guān)閉串口)。使用Startcomm過(guò)程用于打開(kāi)串口,當打開(kāi)失敗時(shí)通常會(huì )報錯,錯誤主要有如下7種:第一,串口已經(jīng)打開(kāi);第二,打開(kāi)串口錯誤;第三,文件句柄不是通訊句;第四,不能夠安裝通訊緩存;第五,不能產(chǎn)生事件;第六,不能產(chǎn)生讀進(jìn)程;第七,不能產(chǎn)生寫(xiě)進(jìn)程。StopComm過(guò)程用于關(guān)閉串口,沒(méi)有返回值。函數WriteCommData(pDataToWrite: PChar;dwSizeofDataToWrite:Word ): boolean 用于發(fā)送一個(gè)字符串到寫(xiě)線(xiàn)程,發(fā)送成功返回true,發(fā)送失敗返回false, 執行此函數將立即得到返回值,發(fā)送操作隨后執行。函數有兩個(gè)參數,其中 pDatatowrite是要發(fā)送的字符串,dwSizeofDatatoWrite 是發(fā)送的長(cháng)度。還有OnReceiveData,當輸入緩存有數據時(shí)將觸發(fā)該事件,在這里可以對從串口收到的數據進(jìn)行處理。Buffer中是收到的數據,bufferlength是收到的數據長(cháng)度。OnReceiveError 是當接受數據時(shí)出現錯誤將觸發(fā)該事件。

  根據系統的特點(diǎn),我們設計了應用層的通訊協(xié)議,接收數據的一般處理方法,最基本的思路就是通過(guò)協(xié)議進(jìn)行分析,所以協(xié)議的制定是至關(guān)重要的:

  首先要確定指令的起始點(diǎn),從大量的數據流中將指令分離出來(lái),沒(méi)有起始標志的話(huà),結果就是一串無(wú)效的數據。然后就是指令結束識別點(diǎn),可以利用指令的長(cháng)度(如果長(cháng)度一定或有表示長(cháng)度的數據)或結束標志來(lái)確定,當然還可以利用下一條指令的指令頭。頭尾都明確之后,還有一種情況就是數據錯誤是的容錯,即發(fā)現不符合格式的指令,就將其拋掉或如要求重發(fā)。有效數據中如果增加一些冗余校驗,傳輸通訊將會(huì )更加可靠。保證每條數據能夠準確的識別與傳輸。

  數據字段包括:類(lèi)型|播出時(shí)間|標識|標題|節目長(cháng)度|狀態(tài)|實(shí)播時(shí)間等,按照上述的數據格式封裝,進(jìn)行數據的傳輸。系統包括了兩個(gè)部分,一個(gè)是發(fā)送端,另一個(gè)是接收端,安裝時(shí)發(fā)送端裝在源計算機上,接收端安裝在目的計算機。其中發(fā)送端運行于播出網(wǎng)絡(luò )中的一臺準備站上,主要包括兩個(gè)主要模塊:其一是數據庫操作模塊。該模塊通過(guò)播出系統實(shí)現對播后數據信息的識別并取出并打包封裝;其二是發(fā)送模塊。將打包封裝的數據發(fā)送到發(fā)送數據緩沖區,發(fā)送數據,包括起始位 、數據位 、校驗位 、停止位。接收端運行于播出網(wǎng)絡(luò )外的任一臺電腦上,主要實(shí)現接收串口緩沖區數據,并根據數據封裝協(xié)議,拆分數據包,將數據存儲在指定類(lèi)型的數據字段之中,以便廣告管理部門(mén)人員使用。

  三 實(shí)際應用

  目前較為常用的RS232串口有9針串口和25針串口,數據傳輸速率最大可到20Kbps,通信距離較近小于15m時(shí),可以用線(xiàn)直接連接標準RS232串口,若距離較遠,需附加調制解調器。RS232串口最為簡(jiǎn)單且常用的是三線(xiàn)制接法,即地、接收數據和發(fā)送數據三腳相連,同一個(gè)串口的接收腳和發(fā)送腳直接用線(xiàn)相連,對9針串口和25針串口,均是2與3直接相連,當源計算機端和目標計算機端用RS232串口線(xiàn)連接好后,再分別在播出網(wǎng)絡(luò )的一臺準備站即源計算機端安裝軟件的發(fā)送端,在播出網(wǎng)絡(luò )外的任意一臺計算機上安裝軟件的接收端,通過(guò)點(diǎn)擊發(fā)送端軟件和接收端軟件的設置鍵可以對計算機的串口號進(jìn)行選擇,并且對已播PARADOX數據文件表的存儲路徑進(jìn)行相應的設置,如圖2所示,然后就可以傳輸播出站上的播后數據表文件了。在使用該應用軟件傳輸播后數據表時(shí)應同時(shí)打開(kāi)接收端和發(fā)送端軟件,發(fā)送端位于播出網(wǎng)絡(luò )系統中,安裝發(fā)送端軟件的計算機可通過(guò)映射網(wǎng)絡(luò )驅動(dòng)器的方式連接到各個(gè)播出站的存放播后PARADOX數據表的驅動(dòng)器。在發(fā)送端選擇要傳輸的播后數據表文件,并且接收到發(fā)送端給接收端的接收請求信號后,就可進(jìn)行已播播出表文件的傳輸了,圖3顯示的是已播數據表文件的傳輸過(guò)程。這樣就實(shí)現了播后數據表的安全傳輸,充分保障了網(wǎng)絡(luò )化播出系統的安全。


圖2 文件接收設置



圖3 文件接收狀態(tài)


  總之,基于串口傳輸已播數據表文件使得唐山電視臺在播出和已播數據共享之間得到了很好得結合,應用一年多來(lái)取得了良好的效果,該種文件傳輸形式也將應用到涉及計算機安全的其他方面。


評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>