瀏覽器客戶端訪問(wèn)設(shè)備的方法、客戶端、服務(wù)器及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及網(wǎng)絡(luò)管理技術(shù)領(lǐng)域,特別是涉及一種瀏覽器客戶端訪問(wèn)設(shè)備的方法、客戶端、服務(wù)器及系統(tǒng)。
【背景技術(shù)】
[0002]網(wǎng)管系統(tǒng)一般都有服務(wù)端和客戶端,也就是通常所說(shuō)的客戶端/服務(wù)端C/S(Client/Server)模式,服務(wù)端直接和設(shè)備進(jìn)行交互,對(duì)設(shè)備進(jìn)行設(shè)置以及從設(shè)備上采集數(shù)據(jù),而客戶端將服務(wù)端采集到的數(shù)據(jù)呈現(xiàn)給網(wǎng)管人員,或者通過(guò)客戶端向服務(wù)端發(fā)送應(yīng)用請(qǐng)求。
[0003]BS網(wǎng)管系統(tǒng)是基于瀏覽器/服務(wù)器模式的網(wǎng)管系統(tǒng),用戶可以通過(guò)瀏覽器訪問(wèn)網(wǎng)管服務(wù)器管理的設(shè)備。通常情況下,網(wǎng)管用戶瀏覽器與網(wǎng)管服務(wù)器建立的是無(wú)連接的通道?,F(xiàn)有的BS網(wǎng)管系統(tǒng)下,網(wǎng)管用戶與設(shè)備隔離在不同的網(wǎng)段,用戶不能直接Telnet到設(shè)備上。而B(niǎo)S模式下,用戶與網(wǎng)管服務(wù)器之間建立的是無(wú)連接的通道,無(wú)連接的通道很難解決需要維持連接的Telnet應(yīng)用。當(dāng)網(wǎng)管用戶與網(wǎng)管服務(wù)器管理的設(shè)備不在同一個(gè)網(wǎng)段,但是又想使用Telnet方式來(lái)遠(yuǎn)程訪問(wèn)網(wǎng)管服務(wù)器管理的設(shè)備時(shí),根據(jù)現(xiàn)有技術(shù)所提供的的技術(shù)方案不能解決這個(gè)問(wèn)題。
[0004]有鑒于此,本發(fā)明實(shí)施例有必要提供一種可以實(shí)現(xiàn)瀏覽器客戶端通過(guò)Telnet方式訪問(wèn)遠(yuǎn)程設(shè)備的方法、客戶端、服務(wù)器及通過(guò)Telnet方式訪問(wèn)遠(yuǎn)程設(shè)備的系統(tǒng)。
【發(fā)明內(nèi)容】
[0005]為了克服上述【背景技術(shù)】的缺陷,本發(fā)明實(shí)施例提供一種瀏覽器客戶端訪問(wèn)設(shè)備的方法、客戶端、服務(wù)器及系統(tǒng),可以解決當(dāng)網(wǎng)管用戶客戶端與網(wǎng)管服務(wù)器管理的設(shè)備不在同一個(gè)網(wǎng)段時(shí),網(wǎng)管用戶客戶端可以使用Telnet方式來(lái)遠(yuǎn)程訪問(wèn)網(wǎng)管服務(wù)器管理的設(shè)備。
[0006]為了解決上述技術(shù)問(wèn)題本發(fā)明實(shí)施例的所采用的技術(shù)方案為:
[0007]—種瀏覽器客戶端訪問(wèn)設(shè)備的方法,包括:
[0008]網(wǎng)管服務(wù)器與瀏覽器客戶端之間建立通信連接;所述網(wǎng)管服務(wù)器分配線程給所述瀏覽器客戶端;
[0009]所述網(wǎng)管服務(wù)器接收所述瀏覽器客戶端發(fā)送的命令;
[0010]所述網(wǎng)管服務(wù)器通過(guò)所述線程向所述命令所指定的設(shè)備發(fā)送所述命令;
[0011]所述網(wǎng)管服務(wù)器接收所述設(shè)備發(fā)送的所述命令的處理結(jié)果并向所述瀏覽器客戶端發(fā)送所述處理結(jié)果,所述處理結(jié)果由所述設(shè)備根據(jù)所述命令處理得到,并通過(guò)所述線程發(fā)送給所述網(wǎng)管服務(wù)器。
[0012]進(jìn)一步地,所述網(wǎng)管服務(wù)器與所述瀏覽器客戶端之間建立通信連接,包括:所述網(wǎng)管服務(wù)器接收所述瀏覽器客戶端發(fā)送的Websocket連接請(qǐng)求與所述網(wǎng)管服務(wù)器建立所述WebSocket 連接的 Websocket 消息;
[0013]所述網(wǎng)管服務(wù)器根據(jù)所述Websocket消息向所述瀏覽器客戶端返回連接成功響應(yīng)消息。
[0014]所述網(wǎng)管服務(wù)器分配線程給所述瀏覽器客戶端,包括:
[0015]所述網(wǎng)管服務(wù)器包括含有至少一對(duì)線程的線程池;
[0016]所述網(wǎng)管服務(wù)器分配一對(duì)線程,所述一對(duì)線程中的一個(gè)線程維持網(wǎng)管服務(wù)器與客戶端之間的通信連接,所述一對(duì)線程中的另一個(gè)線程創(chuàng)建并維持網(wǎng)管服務(wù)器和設(shè)備之間的通信連接。
[0017]進(jìn)一步地,所述網(wǎng)管服務(wù)器通過(guò)所述線程向所述命令所指定的設(shè)備發(fā)送所述命令,包括:
[0018]網(wǎng)管服務(wù)器通過(guò)所述一對(duì)線程中的一個(gè)線程接收所述命令;網(wǎng)管服務(wù)器通過(guò)所述一對(duì)線程中的另一個(gè)線程向所述設(shè)備發(fā)送所述命令;
[0019]所述一對(duì)線程的一個(gè)線程和所述一對(duì)線程的另一個(gè)線程之間建立管道通信。
[0020]—種瀏覽器客戶端訪問(wèn)設(shè)備的方法,包括:
[0021]瀏覽器客戶端與網(wǎng)管服務(wù)器之間建立通信連接,以使得所述網(wǎng)管服務(wù)器分配線程給所述瀏覽器客戶端;
[0022]所述瀏覽器客戶端通過(guò)所述連接向所述網(wǎng)管服務(wù)器發(fā)送命令,以使得所述BS服務(wù)器通過(guò)所述線程向所述命令所指定的設(shè)備發(fā)送所述命令;
[0023]所述瀏覽器客戶端接收所述網(wǎng)管服務(wù)器發(fā)送的所述命令的處理結(jié)果,所述處理結(jié)果由所述設(shè)備根據(jù)所述命令處理得到的,并通過(guò)所述線程發(fā)送給所述網(wǎng)管服務(wù)器。
[0024]進(jìn)一步地,所述瀏覽器客戶端與網(wǎng)管服務(wù)器之間建立通信連接,包括:
[0025]所述瀏覽器客戶端向網(wǎng)管服務(wù)器發(fā)送Websocket消息以請(qǐng)求與所述網(wǎng)管服務(wù)器建立所述WebSocket通信連接;
[0026]所述瀏覽器客戶端接收所述網(wǎng)管服務(wù)器根據(jù)所述Websocket消息返回的連接成功響應(yīng)消息。
[0027]一種網(wǎng)管服務(wù)器,包括:
[0028]服務(wù)端,用于與瀏覽器客戶端之間建立通信連接、接收所述瀏覽器客戶端通過(guò)所述通信連接發(fā)送的命令、并向所述瀏覽器客戶端發(fā)送的所述命令的處理結(jié)果;
[0029]線程池,用于分配線程給所述瀏覽器客戶端、通過(guò)所述線程向所述命令所指定的設(shè)備發(fā)送所述命令、接收所述設(shè)備發(fā)送的處理結(jié)果,其中,所述處理結(jié)果由所述設(shè)備根據(jù)所述命令處理得到,并通過(guò)所述線程發(fā)送給所述線程池。
[0030]進(jìn)一步地,所述服務(wù)端與所述瀏覽器客戶端之間建立通信連接,包括:所述服務(wù)端接收所述瀏覽器客戶端發(fā)送的Websocket連接請(qǐng)求與所述網(wǎng)管服務(wù)器建立所述WebSocket連接的Websocket消息;所述服務(wù)端根據(jù)所述Websocket消息向所述瀏覽器客戶端返回連接成功響應(yīng)消息。
[0031]進(jìn)一步地,所述線程池分配線程給所述瀏覽器客戶端,包括:所述線程池含有至少一對(duì)線程;所述線程池分配一對(duì)線程,所述一對(duì)線程中的一個(gè)線程維持網(wǎng)管服務(wù)器與客戶端之間的通信連接,所述一對(duì)線程中的另一個(gè)線程創(chuàng)建并維持網(wǎng)管服務(wù)器和設(shè)備之間的通信連接。
[0032]進(jìn)一步地,所述服務(wù)端通過(guò)所述線程向所述命令所指定的設(shè)備發(fā)送所述命令,包括:所述服務(wù)端通過(guò)所述一對(duì)線程中的一個(gè)線程接收所述瀏覽器客戶端發(fā)送的所述命令;所述服務(wù)端通過(guò)通過(guò)所述一對(duì)線程中的另一個(gè)線程向所述設(shè)備發(fā)送所述命令;所述一對(duì)線程的一個(gè)線程和所述一對(duì)線程的另一個(gè)線程之間建立管道通信。
[0033]進(jìn)一步地,所述線程池接收所述設(shè)備發(fā)送的所述命令的處理結(jié)果并由所述服務(wù)端通過(guò)所述Websocket通信連接所述瀏覽器客戶端發(fā)送所述處理結(jié)果,包括:所述一對(duì)線程的另一個(gè)線程接收所述設(shè)備發(fā)送的所述命令的處理結(jié)果,并通過(guò)所述管道發(fā)送給所述一對(duì)線程中的一個(gè)線程;所述一對(duì)線程的一個(gè)線程通過(guò)所述通信連接向所述服務(wù)端發(fā)送所述命令的處理結(jié)果;所述服務(wù)端通過(guò)所述Websocket通信連接向所述瀏覽器客戶端發(fā)送所述命令的處理結(jié)果。
[0034]—種瀏覽器客戶端,包括:
[0035]客戶端,用于與網(wǎng)管服務(wù)器之間建立通信連接,以使得所述網(wǎng)管服務(wù)器分配線程給所述瀏覽器客戶端;用于通過(guò)所述通信連接向所述網(wǎng)管服務(wù)器發(fā)送命令,以使得所述網(wǎng)管服務(wù)器通過(guò)所述線程向所述命令所指定的設(shè)備發(fā)送所述命令;
[0036]所述客戶端,用于所述瀏覽器客戶端接收所述網(wǎng)管服務(wù)器通過(guò)所述通信連接發(fā)送的所述命令的處理結(jié)果,所述處理結(jié)果由所述設(shè)備根據(jù)所述命令處理得到的,并通過(guò)所述線程發(fā)送給所述網(wǎng)管服務(wù)器。
[0037]進(jìn)一步地,所述客戶端與網(wǎng)管服務(wù)器之間建立通信連接,包括:所述客戶端向網(wǎng)管服務(wù)器發(fā)送Websocket連接消息以請(qǐng)求與所述網(wǎng)管服務(wù)器建立所述WebSocket連接;所述客戶端接收所述網(wǎng)管服務(wù)器根據(jù)所述Websocket消息返回的連接成功響應(yīng)消息。
[0038]—種瀏覽器客戶端訪問(wèn)設(shè)備的系統(tǒng),包括:
[0039]瀏覽器客戶端與網(wǎng)管服務(wù)器之間建立通信連接;
[0040]所述網(wǎng)管服務(wù)器分配線程給所述瀏覽器客戶端;
[0041 ]所述網(wǎng)管服務(wù)器接收所述瀏覽器客戶端通過(guò)所述通信連接發(fā)送的命令;
[0042]所述網(wǎng)管服務(wù)器通過(guò)所