0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

通過利用服務(wù)器端和客戶端實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)的創(chuàng)建

電子設(shè)計(jì) ? 來源:郭婷 ? 作者:電子設(shè)計(jì) ? 2019-10-25 07:56 ? 次閱讀

目前,隨著計(jì)算機(jī)網(wǎng)絡(luò)的廣泛應(yīng)用,無紙辦公和遠(yuǎn)程辦公是人們經(jīng)常談及的話題,為了實(shí)現(xiàn)計(jì)算機(jī)網(wǎng)絡(luò)的這種應(yīng)用,方便人們工作,本文提出了一種遠(yuǎn)程控制系統(tǒng)。為了實(shí)現(xiàn)這個(gè)系統(tǒng),首先從系統(tǒng)所要實(shí)現(xiàn)的功能著手,設(shè)計(jì)出該系統(tǒng)的體系結(jié)構(gòu),并詳細(xì)說明體系結(jié)構(gòu)中各模塊的主要功能;接著從通信效率和網(wǎng)絡(luò)環(huán)境方面考慮,設(shè)計(jì)出適合于該系統(tǒng)的通信協(xié)議;最后以流程圖的方式詳細(xì)說明系統(tǒng)軟件的實(shí)現(xiàn)過程。

1 、引言

隨著計(jì)算機(jī)網(wǎng)絡(luò)的飛速發(fā)展,人們可以很方便地從Internet上獲取和自己工作生活密切相關(guān) 的信息,世界也真正變成一個(gè)地球村,我們可以和世界上其他任何一個(gè)人通過計(jì)算機(jī)網(wǎng)絡(luò)進(jìn)行溝通,信息資源達(dá)到了高度的共享。從這一點(diǎn)得到啟發(fā),希望能夠設(shè)計(jì)一個(gè)遠(yuǎn)程控制系統(tǒng),通過他可以在家里控制辦公室里的計(jì)算機(jī)。如果你是軟件開發(fā)商,你的員工可以通過他在辦公室里遠(yuǎn)程為客戶配置系統(tǒng)、對(duì)產(chǎn)品進(jìn)行維護(hù),如果客戶向你報(bào)告軟件產(chǎn)品出現(xiàn)問題你可以遠(yuǎn)程對(duì)產(chǎn)品進(jìn)行調(diào)試,最終解決問題。這樣員工就不會(huì)因長期的勞苦奔波而抱怨,用戶也不會(huì)因?yàn)槟悴荒芗皶r(shí)解決產(chǎn)品的問題而和你討價(jià)還價(jià),當(dāng)然也為公司節(jié)約了人力和財(cái)力。下面詳述該遠(yuǎn)程控制系統(tǒng)是如何實(shí)現(xiàn)的。

通過利用服務(wù)器端和客戶端實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)的創(chuàng)建

2 、遠(yuǎn)程控制系統(tǒng)的體系結(jié)構(gòu)設(shè)計(jì)

該遠(yuǎn)程控制系統(tǒng)由服務(wù)器端和客戶端2個(gè)部分組成,客戶端可以通過鼠標(biāo)和鍵盤控制服務(wù)器端的計(jì)算機(jī),同時(shí)還可以相互傳輸文件。其體系結(jié)構(gòu)如圖1所示,主要由安全性校驗(yàn)、屏幕控制、鼠標(biāo)控制、鍵盤控制、命令控制、文件傳輸、端口設(shè)置等6個(gè)模塊組成。下面具體說明各個(gè)模塊的功能。

(1)安全性校驗(yàn)?zāi)K

從系統(tǒng)安全性方面考慮,目的是讓客戶端和服務(wù)器端建立可信聯(lián)接,客戶端要想完全控制服務(wù)器端的計(jì)算機(jī),必須先通過服務(wù)器的驗(yàn)證取得服務(wù)器的信任。這樣可以避免一些不懷好意的人通過客戶端竊取服務(wù)器端計(jì)算機(jī)中有用的資料。

(2)屏幕控制模塊

可以讓客戶端用戶實(shí)時(shí)監(jiān)控服務(wù)器端計(jì)算機(jī)的運(yùn)行狀態(tài)??蛻舳艘砸欢l率向服務(wù)器發(fā)送請(qǐng)求,服務(wù)器響應(yīng)客戶端請(qǐng)求將自己的屏幕拷貝下來并將這些信息發(fā)送給客戶端,客戶端接收到這些信息之后以圖形的形式顯示出來,為鼠標(biāo)和鍵盤控制提供圖形化接口。

(3)鼠標(biāo)控制模塊

可以讓客戶端用戶通過鼠標(biāo)控制服務(wù)器端的計(jì)算機(jī)。其實(shí)現(xiàn)過程是客戶端軟件先捕捉鼠標(biāo)在圖形化接口(屏幕控制模塊所提供的)中的動(dòng)作,再將這些信息發(fā)送到服務(wù)器端,最后服務(wù)器端的服務(wù)程序向操作系統(tǒng)發(fā)送這個(gè)動(dòng)作的消息,這樣就如同在服務(wù)器端的操作系統(tǒng)上進(jìn)行了相應(yīng)的鼠標(biāo)操作。如果動(dòng)作是在“Microsoft Word”圖標(biāo)上雙擊,則遠(yuǎn)程控制系統(tǒng)服務(wù)器端的“Microsoft Word”被打開。

(4)鍵盤控制模塊

可以讓客戶端用戶通過鍵盤控制服務(wù)器端計(jì)算機(jī)的輸入,其實(shí)現(xiàn)過程是客戶端軟件先捕捉鍵盤在圖形化接口(屏幕控制模塊所提供的)中的動(dòng)作,再將這些信息發(fā)送到服務(wù)器端,服務(wù)器端的服務(wù)程序向操作系統(tǒng)發(fā)送這個(gè)動(dòng)作的消息,這樣就如同在服務(wù)器端的操作系統(tǒng)上進(jìn)行了相應(yīng)的鍵盤輸入。如果服務(wù)器端的“Microsoft Word”為當(dāng)前的活動(dòng)窗口,則客戶端的鍵盤操作就如同有人在服務(wù)器端利用“Microsoft Word”進(jìn)行文字編輯一樣。屏幕控制、鍵盤控制和鼠標(biāo)控制模塊是在網(wǎng)絡(luò)狀況較好的情況下才會(huì)有較快的響應(yīng)速度,如果網(wǎng)絡(luò)狀況不好將采用命令控制模塊進(jìn)行遠(yuǎn)程控制。這種控制方式有較多的限制,需要根據(jù)具體的需求進(jìn)行設(shè)計(jì)。

(5)文件傳輸模塊

可以方便客戶端和服務(wù)器端進(jìn)行文件傳輸,他由文件上傳和文件下載2個(gè)部分組成。文件上傳可以把客戶端的文件上傳到服務(wù)器端的計(jì)算機(jī)上;文件下載可以把服務(wù)器端的文件下載到客戶端的計(jì)算機(jī)上。

(6)端口設(shè)置模塊

配置雙方進(jìn)行通信的端口。

3 、遠(yuǎn)程控制系統(tǒng)軟件的實(shí)現(xiàn)

3.1通信協(xié)議的設(shè)計(jì)

3.1.1系統(tǒng)控制協(xié)議

當(dāng)客戶端需要向服務(wù)器端發(fā)送控制信息時(shí)將采用如下的格式:

通過利用服務(wù)器端和客戶端實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)的創(chuàng)建

其中信息格式中各參數(shù)的值和含義如表1所示。

3.1.2圖片傳輸協(xié)議

圖片信息的傳輸采用Byte的方式,其格式如圖2所示。

通過利用服務(wù)器端和客戶端實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)的創(chuàng)建

若控制信息轉(zhuǎn)換成字符串后為“0123456789”則表示圖片傳輸開始,長度轉(zhuǎn)換成數(shù)字后表示圖片信息總長度;若控制信息轉(zhuǎn)換成字符串后為“9876543210”則表示圖片傳輸結(jié)束;否則表示傳輸?shù)臑閳D片內(nèi)容信息,長度轉(zhuǎn)換成數(shù)字后表示本次發(fā)送信息的長度,后面為實(shí)際內(nèi)容。

通過利用服務(wù)器端和客戶端實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)的創(chuàng)建

3.1.3文件傳輸協(xié)議

文件傳輸也采用Byte方式,其傳輸協(xié)議由以下幾步組成:

(1)如果是文件上傳則發(fā)送信息轉(zhuǎn)換成字符串后為“#_CMDFileUp_#”;如果是文件下載則發(fā)送信息轉(zhuǎn)換成字符串后為“#_CMDFileDown_#”。

(2)發(fā)送源文件名,轉(zhuǎn)換后的字符串為“#_SourceFileName_#”。

(3)發(fā)送目的文件名,轉(zhuǎn)換后的字符串為“#_DestinationFileName_#”。

(4)發(fā)送文件開始標(biāo)志,轉(zhuǎn)換后的字符串為“#_Start_#”。

(5)發(fā)送文件內(nèi)容,直到發(fā)送完畢。

(6)發(fā)送文件結(jié)束標(biāo)志,轉(zhuǎn)換后的字符串為“#_End_#”。

3.2服務(wù)器端軟件的實(shí)現(xiàn)

服務(wù)器端軟件的實(shí)現(xiàn)過程是當(dāng)客戶端要和服務(wù)器建立連接時(shí),如果合法則允許建立連接,如果不合法則拒絕建立連接。建立連接后服務(wù)器啟動(dòng)服務(wù),監(jiān)聽客戶端發(fā)送過來的控制信息,然后和客戶端協(xié)作完成相應(yīng)的任務(wù)。如圖4所示。

通過利用服務(wù)器端和客戶端實(shí)現(xiàn)遠(yuǎn)程控制系統(tǒng)的創(chuàng)建

3.3客戶端軟件的實(shí)現(xiàn)

客戶端軟件的實(shí)現(xiàn)過程是首先向服務(wù)器端發(fā)送身份信息,請(qǐng)求和服務(wù)器建立連接,如果通過驗(yàn)證則定時(shí)發(fā)送屏幕控制信息,同時(shí)接受用戶的輸入并把其轉(zhuǎn)換成相應(yīng)的控制信息,然后發(fā)送到服務(wù)器。如果請(qǐng)求被服務(wù)器拒絕則退出應(yīng)用程序。

4 、結(jié)語

開發(fā)這種系統(tǒng)具有實(shí)際應(yīng)用價(jià)值,用戶可以通過他進(jìn)行遠(yuǎn)程辦公,軟件公司可以通過他對(duì)自己的產(chǎn)品進(jìn)行遠(yuǎn)程配置以及在線診斷和維護(hù),為公司節(jié)約人力、財(cái)力和物力。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 控制系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    6642

    瀏覽量

    110721
  • 計(jì)算機(jī)
    +關(guān)注

    關(guān)注

    19

    文章

    7525

    瀏覽量

    88317
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9255

    瀏覽量

    85752
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    使用lwip socket udp功能,開發(fā)板為客戶端時(shí)不能夠接收服務(wù)器端發(fā)送過來的數(shù)據(jù) ?

    請(qǐng)教下,使用 lwip socket udp 功能,開發(fā)板為客戶端時(shí)不能夠接收服務(wù)器端發(fā)送過來的數(shù)據(jù) ? 1,如果開發(fā)板為 服務(wù)器端,收發(fā)都可以 2,如果開發(fā)板為 客戶端,不能夠接
    發(fā)表于 04-16 06:01

    用隊(duì)列實(shí)現(xiàn)的1對(duì)N的TCP服務(wù)器端,自動(dòng)回復(fù)信息總發(fā)錯(cuò)客戶端

    本帖最后由 kaneiqi1210 于 2014-7-17 12:43 編輯 如題,我仿照教材用隊(duì)列做的TCP一對(duì)多的服務(wù)器端,在1對(duì)1時(shí),沒問題,而在1對(duì)多時(shí),就出現(xiàn),自動(dòng)回復(fù)信息至不正確的客戶端(即非發(fā)送信息的客戶端
    發(fā)表于 07-17 09:31

    qt tcp程序在服務(wù)器端發(fā)送數(shù)據(jù)之前能接收客戶端發(fā)送的數(shù)據(jù)嗎?

    寫了一個(gè)tcp的客戶端服務(wù)器端,是服務(wù)器端客戶端發(fā)送文件,但是我想在服務(wù)器端發(fā)送之前先讓客戶端
    發(fā)表于 04-22 20:06

    labview怎么實(shí)現(xiàn)服務(wù)器端一直等待客戶端發(fā)送數(shù)據(jù)啊

    我現(xiàn)在在做labview的服務(wù)器端,但是當(dāng)客戶端發(fā)送數(shù)據(jù)結(jié)束后,我的服務(wù)器端會(huì)報(bào)錯(cuò)。報(bào)錯(cuò)的意思就是說客戶端關(guān)閉,我想知道怎么實(shí)現(xiàn)才可以讓
    發(fā)表于 08-12 14:34

    為什么LWIP的TCP客戶端服務(wù)器端斷開后繼續(xù)發(fā)送數(shù)據(jù)就無法檢測(cè)到連接狀態(tài)?

    發(fā)現(xiàn)LWIP的TCP客戶端有個(gè)BUG,當(dāng)服務(wù)器端開之后,如果還繼續(xù)發(fā)送數(shù)據(jù),那就不能檢測(cè)到連接狀態(tài)。求助求助
    發(fā)表于 10-29 20:26

    4412開發(fā)板Qt網(wǎng)絡(luò)編程-TCP實(shí)現(xiàn)服務(wù)器客戶端

    更改組件名稱注釋,完成后如圖 : 步驟三:服務(wù)器端編程:1.創(chuàng)建 QTcpServer 對(duì)象2.創(chuàng)建監(jiān)聽端口,使得客戶端可以使用這個(gè)端口訪問服務(wù)器
    發(fā)表于 04-28 15:33

    基于嵌入式ARM平臺(tái)實(shí)現(xiàn)遠(yuǎn)程桌面服務(wù)器端客戶端應(yīng)用示例

    實(shí)現(xiàn)遠(yuǎn)程桌面服務(wù)器端客戶端應(yīng)用示例。本文演示所使用的ARM平臺(tái)來自Toradex基于NXP iMX6Q SoC平臺(tái)的Apalis iMX6 ARM核心板。2).準(zhǔn)備...
    發(fā)表于 12-14 06:10

    監(jiān)控系統(tǒng)客戶端服務(wù)端設(shè)計(jì)

    項(xiàng)目開發(fā)報(bào)告1 項(xiàng)目簡介1.1 概述1.2 開發(fā)環(huán)境1.3 其他支持1.4 應(yīng)用界面1.4.1 服務(wù)器端1.4.2 客戶端1.5 程序使用2 項(xiàng)目開發(fā)2.1 搭建基于實(shí)驗(yàn)平臺(tái)數(shù)據(jù)庫2.1.1 數(shù)據(jù)庫
    發(fā)表于 12-21 07:02

    基于因特網(wǎng)的智能遠(yuǎn)程控制系統(tǒng)的設(shè)計(jì)

    本文首先介紹了基于因特網(wǎng)的智能遠(yuǎn)程控制系統(tǒng)的體系結(jié)構(gòu)和使用于系統(tǒng)中的網(wǎng)絡(luò)數(shù)據(jù)庫關(guān)鍵技術(shù),對(duì)多用戶同時(shí)操作問題、Web 客戶端/服務(wù)器端動(dòng)態(tài)交互的實(shí)現(xiàn)
    發(fā)表于 05-26 10:42 ?13次下載

    基于因特網(wǎng)的智能遠(yuǎn)程控制系統(tǒng)的設(shè)計(jì)

    本文首先介紹了基于因特網(wǎng)的智能遠(yuǎn)程控制系統(tǒng)的體系結(jié)構(gòu)和使用于系統(tǒng)中的網(wǎng)絡(luò)數(shù)據(jù)庫關(guān)鍵技術(shù),對(duì)多用戶同時(shí)操作問題、Web 客戶端/服務(wù)器端動(dòng)態(tài)交互的實(shí)現(xiàn)
    發(fā)表于 06-19 10:20 ?13次下載

    淘寶商品推廣系統(tǒng)服務(wù)器端軟件的設(shè)計(jì)與實(shí)現(xiàn)

    本文基于淘寶商品推廣系統(tǒng)服務(wù)器端軟件的設(shè)計(jì)與實(shí)現(xiàn)的目的,通過對(duì)淘寶商品推廣系統(tǒng)服務(wù)器端軟件中的各
    發(fā)表于 12-24 15:43 ?12次下載

    網(wǎng)絡(luò)調(diào)試和串口調(diào)試集合UDP TCP客戶端和TCP服務(wù)器端應(yīng)用程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是網(wǎng)絡(luò)調(diào)試和串口調(diào)試集合UDP TCP客戶端和TCP服務(wù)器端應(yīng)用程序免費(fèi)下載。
    發(fā)表于 08-30 08:00 ?16次下載
    網(wǎng)絡(luò)調(diào)試和串口調(diào)試集合UDP TCP<b class='flag-5'>客戶端</b>和TCP<b class='flag-5'>服務(wù)器端</b>應(yīng)用程序免費(fèi)下載

    STM32+LWIP服務(wù)器實(shí)現(xiàn)客戶端連接

    (UCOSIII版本) 的基礎(chǔ)上進(jìn)行修改,實(shí)現(xiàn)客戶端連接的一個(gè)方法。1、TCP服務(wù)器創(chuàng)建過程建立一個(gè)TCP服務(wù)器需要經(jīng)過
    發(fā)表于 12-23 19:59 ?61次下載
    STM32+LWIP<b class='flag-5'>服務(wù)器</b><b class='flag-5'>實(shí)現(xiàn)</b>多<b class='flag-5'>客戶端</b>連接

    數(shù)據(jù)是怎么樣保證準(zhǔn)確的從客戶端發(fā)送到服務(wù)器端

    你有想過嗎,在計(jì)算機(jī)網(wǎng)絡(luò)當(dāng)中,數(shù)據(jù)是怎么樣保證準(zhǔn)確的從客戶端發(fā)送到服務(wù)器端的?中間涉及到了哪些理論?
    的頭像 發(fā)表于 07-01 10:09 ?2121次閱讀

    Linux下TCP網(wǎng)絡(luò)編程-創(chuàng)建服務(wù)器客戶端

    這篇文章介紹在Linux下的socket編程,完成TCP服務(wù)器、客戶端創(chuàng)建,實(shí)現(xiàn)數(shù)據(jù)通信。
    的頭像 發(fā)表于 08-14 09:26 ?2520次閱讀
    Linux下TCP網(wǎng)絡(luò)編程-<b class='flag-5'>創(chuàng)建</b><b class='flag-5'>服務(wù)器</b>與<b class='flag-5'>客戶端</b>