本發(fā)明涉及免流代理技術(shù),特別涉及一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng)與方法。
背景技術(shù):
免流代理技術(shù)之前采用的是vpn技術(shù),但是在實(shí)際應(yīng)用過(guò)程中存在連接不穩(wěn)定的情況,雖然做了斷線重連等處理,但是終究用戶體驗(yàn)較差。接入流程較為復(fù)雜,cp廠商需要提供免流ip,并在服務(wù)端部署流量監(jiān)控、防盜鏈等相應(yīng)的技術(shù)改造來(lái)防止發(fā)生盜用流量的情況。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明是為了解決上述問(wèn)題而進(jìn)行的,目的在于提供一種可靠性高、實(shí)用性高、外延性強(qiáng)的基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng)與方法。
本發(fā)明提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng),具有這樣的特征,包括:aap應(yīng)用,注冊(cè)參數(shù)信息,發(fā)送鑒權(quán)請(qǐng)求;鑒權(quán)服務(wù)器,對(duì)用戶定向流量套餐進(jìn)行鑒權(quán),判定是否有權(quán)限開啟免流服務(wù),若鑒權(quán)成功,aap應(yīng)用則針對(duì)數(shù)據(jù)傳輸層的tcp協(xié)議處理方法、udp協(xié)議處理方法分別進(jìn)行數(shù)據(jù)包定向分流處理,開啟免流服務(wù),若鑒權(quán)失敗,不做任何處理,將請(qǐng)求數(shù)據(jù)包直接發(fā)送至目的服務(wù)器;以及socks5代理服務(wù)器集群,接收來(lái)自客戶端的數(shù)據(jù)包,并與目的服務(wù)器進(jìn)行數(shù)據(jù)通信,其中,socks5代理服務(wù)器集群有用戶流量統(tǒng)計(jì)功能,流量數(shù)據(jù)將作為下一次鑒權(quán)的依據(jù),流量溢出時(shí),用戶的請(qǐng)求將不再通過(guò)socks5代理服務(wù)器集群進(jìn)行轉(zhuǎn)發(fā)。
本發(fā)明提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng),還具有這樣的特征:其中,aap應(yīng)用,具有:代理sdk,則針對(duì)數(shù)據(jù)傳輸層的tcp協(xié)議處理方法、udp協(xié)議處理方法分別進(jìn)行數(shù)據(jù)包定向分流處理,開啟免流服務(wù)。
本發(fā)明提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng),還具有這樣的特征:其中,tcp協(xié)議處理方法為通過(guò)hook的方式劫持app應(yīng)用中“socket”的“connect”方法,建立流式socket,并將socket的目的地址指向socks5代理服務(wù)器集群,然后將數(shù)據(jù)包發(fā)送至socks5代理服務(wù)器集群,由代理服務(wù)器實(shí)現(xiàn)與原目的服務(wù)器的數(shù)據(jù)通信。目前此種實(shí)現(xiàn)方式可支持http、https、rtmp,hls,hdl等大部分基于tcp的應(yīng)用層網(wǎng)絡(luò)協(xié)議。
本發(fā)明提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng),還具有這樣的特征:其中,tcp協(xié)議處理方法可支持基于tcp的應(yīng)用層網(wǎng)絡(luò)協(xié)議的http、https、rtmp,hls,hdl。
本發(fā)明提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng),還具有這樣的特征:其中,udp協(xié)議處理方法為采用修改數(shù)據(jù)包包頭的方式,將目的地址寫入包頭,然后將數(shù)據(jù)包發(fā)送至socks5代理服務(wù)器集群,由socks5代理服務(wù)器集群完成與目的服務(wù)器之間的數(shù)據(jù)通信。
本發(fā)明還提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理方法,具有這樣的特征,包括以下步驟:
步驟a,在啟動(dòng)app應(yīng)用時(shí)注冊(cè)參數(shù)信息,發(fā)送鑒權(quán)請(qǐng)求;
步驟b,鑒權(quán)服務(wù)器對(duì)用戶定向流量套餐進(jìn)行鑒權(quán),判定是否有權(quán)限開啟免流服務(wù);
步驟c,若鑒權(quán)成功,則針對(duì)數(shù)據(jù)傳輸層的tcp協(xié)議處理方法、udp協(xié)議處理方法分別進(jìn)行數(shù)據(jù)包定向分流處理,開啟免流服務(wù);以及
步驟d,若鑒權(quán)失敗,不做任何處理,將請(qǐng)求數(shù)據(jù)包直接發(fā)送至目的服務(wù)器,
其中,socks5代理服務(wù)器集群有用戶流量統(tǒng)計(jì)功能,流量數(shù)據(jù)將作為下一次鑒權(quán)的依據(jù),流量溢出時(shí),用戶的請(qǐng)求將不再通過(guò)socks5代理服務(wù)器集群進(jìn)行轉(zhuǎn)發(fā)。
本發(fā)明還提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理方法,還具有這樣的特征:其中,aap應(yīng)用,具有:代理sdk,則針對(duì)數(shù)據(jù)傳輸層的tcp協(xié)議處理方法、udp協(xié)議處理方法分別進(jìn)行數(shù)據(jù)包定向分流處理,開啟免流服務(wù)。
本發(fā)明還提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理方法,還具有這樣的特征:其中,tcp協(xié)議處理方法為通過(guò)hook的方式劫持app應(yīng)用中“socket”的“connect”方法,建立流式socket,并將socket的目的地址指向socks5代理服務(wù)器集群,然后將數(shù)據(jù)包發(fā)送至socks5代理服務(wù)器集群,由代理服務(wù)器實(shí)現(xiàn)與原目的服務(wù)器的數(shù)據(jù)通信。
本發(fā)明還提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理方法,還具有這樣的特征:其中,tcp協(xié)議處理方法可支持基于tcp的應(yīng)用層網(wǎng)絡(luò)協(xié)議的http、https、rtmp、hls、hdl。
本發(fā)明還提供的一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理方法,還具有這樣的特征:其中,udp協(xié)議處理方法為采用修改數(shù)據(jù)包包頭的方式,將目的地址寫入包頭,然后將數(shù)據(jù)包發(fā)送至socks5代理服務(wù)器集群,由socks5代理服務(wù)器集群完成與目的服務(wù)器之間的數(shù)據(jù)通信。
發(fā)明作用和效果
根據(jù)本發(fā)明所涉及一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng)與方法,將手機(jī)客戶端app內(nèi)發(fā)生的網(wǎng)絡(luò)流量全部轉(zhuǎn)發(fā)至代理服務(wù)器,由代理服務(wù)器實(shí)現(xiàn)轉(zhuǎn)發(fā)客戶端請(qǐng)求,接收響應(yīng)結(jié)果后返回給客戶端。該代理sdk可對(duì)接各類直播等手機(jī)客戶端app應(yīng)用,接入方式更快捷、性能更可靠;連接更加穩(wěn)定,不存在斷線重連的情況;手機(jī)客戶端研發(fā)成本更低,只需少量代碼改動(dòng)即可嵌入代理sdk,實(shí)現(xiàn)免流功能;業(yè)務(wù)更加清晰,降低雙方溝通成本;應(yīng)用場(chǎng)景廣泛,可對(duì)接app市場(chǎng)上大部分直播、點(diǎn)播類應(yīng)用軟件。
附圖說(shuō)明
圖1是本發(fā)明在實(shí)施例中的基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng)tcp協(xié)議的系統(tǒng)框圖;
圖2是本發(fā)明在實(shí)施例中的基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng)udp協(xié)議的流程圖;以及
圖3是本發(fā)明在實(shí)施例中的基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理方法的流程圖。
具體實(shí)施方式
以下參照附圖實(shí)及施例對(duì)本發(fā)明所涉及的基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng)與方法作詳細(xì)的描述。
實(shí)施例
如圖1和圖2所示,基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng)具有:aap應(yīng)用1、鑒權(quán)服務(wù)器2和socks5代理服務(wù)器集群3。
aap應(yīng)用1在啟動(dòng)時(shí)注冊(cè)已申請(qǐng)的cpid、appid等參數(shù)信息,并發(fā)送鑒權(quán)請(qǐng)求。aap應(yīng)用1具有代理sdk1-1。
鑒權(quán)服務(wù)器2對(duì)用戶定向流量套餐進(jìn)行鑒權(quán),判定是否有權(quán)限開啟免流服務(wù)。
若鑒權(quán)成功,代理sdk1-1則針對(duì)數(shù)據(jù)傳輸層的tcp協(xié)議處理方法、udp協(xié)議處理方法分別進(jìn)行數(shù)據(jù)包定向分流處理,開啟免流服務(wù),若鑒權(quán)失敗,不做任何處理,將請(qǐng)求數(shù)據(jù)包直接發(fā)送至目的服務(wù)器。
socks5代理服務(wù)器集群3接收來(lái)自客戶端的數(shù)據(jù)包,并與目的服務(wù)器進(jìn)行數(shù)據(jù)通信。
socks5代理服務(wù)器集群3有用戶流量統(tǒng)計(jì)功能,流量數(shù)據(jù)將作為下一次鑒權(quán)的依據(jù),流量溢出時(shí),用戶的請(qǐng)求將不再通過(guò)socks5代理服務(wù)器集群3進(jìn)行轉(zhuǎn)發(fā)。
tcp協(xié)議處理方法為通過(guò)hook的方式劫持app應(yīng)用中“socket”的“connect”方法,建立流式socket,并將socket的目的地址指向socks5代理服務(wù)器集群,然后將數(shù)據(jù)包發(fā)送至socks5代理服務(wù)器集群3,由代理服務(wù)器實(shí)現(xiàn)與原目的服務(wù)器的數(shù)據(jù)通信。目前此種實(shí)現(xiàn)方式可支持http、https、rtmp,hls,hdl等大部分基于tcp的應(yīng)用層網(wǎng)絡(luò)協(xié)議。目前此種實(shí)現(xiàn)方式可支持http、https、rtmp、hls、hdl等大部分基于tcp的應(yīng)用層網(wǎng)絡(luò)協(xié)議。
udp協(xié)議處理方法為采用修改數(shù)據(jù)包包頭的方式,將目的地址寫入包頭,然后將數(shù)據(jù)包發(fā)送至socks5代理服務(wù)器集群3,由socks5代理服務(wù)器集群3完成與目的服務(wù)器之間的數(shù)據(jù)通信。
如圖3所示,基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理方法具有以下步驟:
步驟a:在啟動(dòng)app應(yīng)用1時(shí)注冊(cè)已申請(qǐng)的cpid、appid等參數(shù)信息,并發(fā)送鑒權(quán)請(qǐng)求,進(jìn)入步驟b。
步驟b:鑒權(quán)服務(wù)器2對(duì)用戶定向流量套餐進(jìn)行鑒權(quán),判定是否有權(quán)限開啟免流服務(wù),進(jìn)入步驟c或步驟d。
步驟c:若鑒權(quán)成功,啟動(dòng)app應(yīng)用1的代理sdk1-1則針對(duì)數(shù)據(jù)傳輸層的tcp協(xié)議處理方法、udp協(xié)議處理方法分別進(jìn)行數(shù)據(jù)包定向分流處理,開啟免流服務(wù)。
步驟d:若鑒權(quán)失敗,不做任何處理,將請(qǐng)求數(shù)據(jù)包直接發(fā)送至目的服務(wù)器。
實(shí)施例的作用與效果
根據(jù)本實(shí)施例所涉及一種基于hook方式實(shí)現(xiàn)的移動(dòng)客戶端定向流量代理系統(tǒng)與方法,將手機(jī)客戶端app內(nèi)發(fā)生的網(wǎng)絡(luò)流量全部轉(zhuǎn)發(fā)至代理服務(wù)器,由代理服務(wù)器實(shí)現(xiàn)轉(zhuǎn)發(fā)客戶端請(qǐng)求,接收響應(yīng)結(jié)果后返回給客戶端。該代理sdk可對(duì)接各類直播等手機(jī)客戶端app應(yīng)用,接入方式更快捷、性能更可靠;連接更加穩(wěn)定,不存在斷線重連的情況;手機(jī)客戶端研發(fā)成本更低,只需少量代碼改動(dòng)即可嵌入代理sdk,實(shí)現(xiàn)免流功能;業(yè)務(wù)更加清晰,降低雙方溝通成本;應(yīng)用場(chǎng)景廣泛,可對(duì)接app市場(chǎng)上大部分直播、點(diǎn)播類應(yīng)用軟件。
上述實(shí)施方式為本發(fā)明的優(yōu)選案例,并不用來(lái)限制本發(fā)明的保護(hù)范圍。