TeamViewer連接的主要原理分為三個部分,分別是:如何根據ID找到要連接的電腦;找到電腦之后如何內網間互聯;如何能操作對方的電腦。
一、如何根據ID找到要連接的電腦
1.運行TeamViewer之后,電腦會先連接到TeamViewer的服務器,然后服務器對這台電腦分配一個唯一的ID。這個ID主要是以網卡的MAC地址為依據生成的,所以如果想要給電腦換ID,只要修改一下MAC地址就行了。
圖1:TeamViewer ID
以上操作個人免費用戶可以使用。小編提示:如果是商用TeamViewer的用戶,建議還是購買TeamViewer正版,維護正版權益。
2.當一個TeamViewer連接到另一個的時候,會先連接到服務器,通過ID與電腦的對應關系找到這台要連接的電腦。
二、找到電腦后如何內網互聯
如果連接的其中任一方是有公網IP的網絡環境,雙方的連接就啟用P2P連接。如果雙方都是內網的話,TeamViewer數據就會通過TeamViewer自己的服務器進行中轉。
圖2:電腦互聯
這也是TeamViewer內網互通會在網絡高峰期比較慢的原因。
三、如何能操作對方的電腦
原理和遠程控制木馬是一樣的。這里的終端指被控制的電腦。
連接建立之后,終端的電腦圖像壓縮后發回本地,這樣本地就能看到畫面,本地進行鍵鼠操作的動作封裝成數據包發送給終端解開后還原成動作進行遠程的模擬操作。終端反饋的畫面通過壓縮后繼續發回給控制端。
圖3:TeamViewer控制電腦
就終端的圖像傳輸來說,早年終端都是直接進行JPEG截圖后傳輸,所以速度不太理想。之后各種高手延伸出很多很厲害的基於截圖的方式的屏幕傳輸的算法,傳輸效率進一步提高,通常是先加載一個虛擬屏幕驅動,然后對屏幕做逐行掃描,然后計算變化的部分,之后只傳輸變化的部分。
本文為原創,轉載請注明網址:http://www.yuanchengxiezuo.com/zhishi/gzyl-tv.html。