全國服務熱線 : 4000-020-230

當前位置:首頁 > 技術支持(chí) > 技(jì)術文章

技術文章(zhāng) 產品(pǐn)知識 下載中心(xīn)

技術文章

如何在(zài)歐視邁(OZEAM)全數字可視對講中實現internet校時
發布日期:2012-01-18 11:58:03     作者:    已有  閱讀過本文

    摘要:本文闡述了在歐視邁(OZEAM)全數字可視(shì)對講係統中進行internet校(xiào)時的必要性和實現途徑

    關鍵詞:internet校時全數字可視對講(jiǎng)係統歐視邁OZEAMRFC-868

    Abstract:Thispaperexplainedthenecessityandtheimplementationtosynchronizethesystemclockoftheoutdoorunitandtheindooruintinthedigitalvideointercomsystem(brand:OZEAM)usinganNTP(networktimeprotocol)server.

    Keywords:timesynchronizing,NTP(networktimeprotocol),digitalvideointercomsystem,OZEAM.

    1.全數字可視對講係統(tǒng)校時的(de)現狀

    目(mù)前全數字可視對講係統主要通過以下方法進行校時:

    (1)在安裝有管理中心的(de)情況(kuàng)下,管理中心充當時間服務器,門口機和室(shì)內機與管理中心通(tōng)訊,獲取當(dāng)前(qián)時(shí)間來(lái)設置本機時間。

    (2)在沒有安裝管理中心的情況下,隻能(néng)在門口機和室內機上手動設置(zhì)本機時間。但一旦斷電,又恢複到初始時間。這(zhè)給用戶帶來不便,特別是單家(jiā)獨戶(hù)的別墅用戶,一般是不可能(néng)安裝管理中(zhōng)心的。

    沒有安裝管理中心(xīn)但全數字可視對講門口機和室內機已連接互聯網(wǎng),能不能(néng)通過(guò)互聯網進行自動校時?答案是肯定的。

    2.RFC-868時間協議

    本RFC規範了一個(gè)ARPAInternetcommunity上的標準。在ARPAInternet上的所有(yǒu)主機(jī)應當采用和(hé)實現這(zhè)個標準。

    此協議提供了一個獨立於站點的,機器可讀的日期和時間信息。時間服務返回的是以秒數,是從1900年1月1日(rì)午夜到現(xiàn)在的(de)秒數。

    設計這個協議的一個重要目的在於,網絡上的許多主(zhǔ)機並沒有(yǒu)時間的觀念,在分布式的係統上,我們可以想一想,北京的時(shí)間和東京的時間如何分呢?主機的時間往往可以人為改變,而(ér)且因為機器時鍾內的(de)誤差(chà)而變得不(bú)一致(zhì),因此需要使用時間服務器通過選舉方式(shì)得到網絡時間,讓服務器有一個(gè)準(zhǔn)確(què)的時間觀(guān)念。不要小看(kàn)時間,這對於(yú)一些以時間為標準的分布運行的程序簡單是太重要(yào)了。

    這個協議可以工作在TCP和UDP協議下。下麵是通過TCP協議工作的時間協議(yì)的工作過程(chéng):這裏S代表服務器,C代表客戶。

    S:檢測端(duān)口37

    U:連接(jiē)到端口37

    S:以32位二(èr)進製(zhì)數發送時間

    U:接收時間

    U:關閉連接

    S:關閉連接

    服務器在端口37上監聽(tīng)連接。當連接建立後,服務器(qì)返回一個32位的時間(jiān)值(zhí),然後關閉連接。這個(gè)過程也不難,如果服務器不能決定現在是什麽時間,服(fú)務器會拒絕連接或(huò)不發送任何數據而直接關閉連接。

    下麵我們看看使(shǐ)用(yòng)UDP協議(yì)的情況:這裏S代(dài)表服務器(qì),C代表客戶。

    S:檢測端口37

    U:發送一個空數據報到端口37

    S:接(jiē)收這個空數據報

    S:發送包含32位(wèi)二進製數(shù)(用於表示(shì)時(shí)間)的(de)數據報

    U:接收時間數據報

    服務器在端口37上監聽數據包。當一個數據(jù)包來後,服(fú)務器返回一個包含32位的時間的數據包。這個過(guò)程(chéng)也不難,如果服務器不(bú)能決定現在是(shì)什麽時間,服務器會拋棄接(jiē)收到的數(shù)據報而不作出任何應答。

    *時間

    時間是由32位表示的,是自1900年1月1日0時到當前的秒數,我們可以(yǐ)計算一下,這個協議隻能表示到2036年就不能用(yòng)了(le)。(但是我們也知(zhī)道計算機發展速度這(zhè)麽快,可能到時候就會有更(gèng)好的協議代替這個協議,或者(zhě)有(yǒu)已經想出有效的解決(jué)辦法(fǎ)了。)

    下麵是些例子:

    thetime2,208,988,800correspondsto00:001Jan1970GMT,

    2,398,291,200correspondsto00:001Jan1976GMT,

    2,524,521,600correspondsto00:001Jan1980GMT,

    2,629,584,000correspondsto00:001May1983GMT,

    以及(jí)-1,297,728,000correspondsto00:0017Nov1858GMT. 

    3.Internet校時的程序實現

    下麵是使用TCP協議的實現Internet校時的部分代(dài)碼。

    voidtime_internet_to_local(void*recv_buf)//接到的數據轉換為本地時(shí)間

    {

    assert(recv_buf);

    charp[4],*precv=((char*)recv_buf)+3;

    for(inti=0;i<4;i++)< p="">

    p[i]=*precv--;

    *(long*)p-=2208988800;

    SYSTEMTIMEst;

    tm*ptm=gmtime((time_t*)p);

    st.wYear=ptm->tm_year+1900;

    st.wMonth=ptm->tm_mon+1;

    st.wDay=ptm->tm_mday;

    st.wHour=ptm->tm_hour;

    st.wMinute=ptm->tm_min;

    st.wSecond=ptm->tm_sec;

    st.wMilliseconds=0;

    SetSystemTime(&st);

    }

    BOOLGetTimeFromServer(DWORD*lpdwTime)//TCP方式

    {

    *lpdwTime=0;

    BOOLbReturn=FALSE;

    SOCKETsSock=socket(AF_INET,SOCK_STREAM,0);

    if(INVALID_SOCKET!=sSock)

    {

    structsockaddr_insin;

    memcpy(&sin.sin_addr,&NISTSVRSARY[choice].addr,sizeof(in_addr));

    sin.sin_family=AF_INET;

    sin.sin_port=htons(IPPORT_TIMESERVER);

    wprintf(L"\n...waitingtolink...\n");

    if(0!=connect(sSock,(structsockaddr*)&sin,sizeof(structsockaddr_in)))

    {

    wprintf(L"Linked.Receivingdata...\n");

    intiResult;

    iResult=recv(sSock,(char*)lpdwTime,4,0);

    if(iResult==4)

    {

    *lpdwTime=ntohl(*lpdwTime);

    bReturn=TRUE;

      }

    else

    {

    wprintf(L"Failtogettime!iResult=%d\n",iResult);

    }

    }else

    wprintf(L"Failtolink,overtime!\n");

    closesocket(sSock);

    }

    returnbReturn;

    }

    4.結束語

    程序在EVC4.0編寫(xiě)調試正確,並在WinCE5.0下運(yùn)行正確(què)。隻要門口機或室內機連接Internet,則自動進行校時,無需手動設置,也無(wú)需安裝管理中心。

    Internet自(zì)動校時為歐視邁(OZEAM)全數字可視對講(jiǎng)係(xì)統增色不少(shǎo)。


返回
上一篇  
【推薦(jiàn)閱(yuè)讀(dú)】

24小時全國服務熱線:4000-020-230

關注我們(men):
©2016 廣州市(shì)红桃视频app最新版下载安装-红桃视频2025最新版免费版下载-红桃视频智能科技有(yǒu)限公司(sī) 版權所有.All Rights Reserved.      粵ICP備10043508號-1
網(wǎng)絡支持:艾迪品牌策劃設計
業務服務
客服電話

4000-020-230

红桃视频app最新版下载安装-红桃视频2025最新版免费版下载-红桃视频