国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法

      文檔序號(hào):7697461閱讀:197來源:國(guó)知局
      專利名稱:一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法
      技術(shù)領(lǐng)域
      本發(fā)明涉及一種遠(yuǎn)程通訊的系統(tǒng)和方法,具體涉及一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿 透能力的系統(tǒng)和方法。
      背景技術(shù)
      目前多數(shù)網(wǎng)絡(luò)通信實(shí)體,都是通過TCP/IP協(xié)議進(jìn)行通信。在TCP/IP協(xié)議的使用 上有很多方式直接使用TCP連接后(或是UDP)進(jìn)行自定的二進(jìn)制協(xié)議通信;使用HTTP協(xié) 議進(jìn)行通信;使用SOAP協(xié)議,或是Web Service之類的基于XML的高級(jí)通信方式。現(xiàn)有技術(shù)主要有兩方面的問題效率和穿透能力。要么效率高,但穿透能力差(如 直接基于TCP的自定二進(jìn)制協(xié)議);要么穿透能力強(qiáng),但效率底(如使用SOAP等高級(jí)的基 于文本和HTTP的協(xié)議)。這里的效率主要指通信實(shí)體進(jìn)行協(xié)議處理的時(shí)間效率和傳輸過程 中的數(shù)據(jù)量帶來的空間效率。穿透能力則指在不同的網(wǎng)絡(luò)拓?fù)洵h(huán)境下,成功與遠(yuǎn)程通訊實(shí) 體進(jìn)行通訊的可能性?,F(xiàn)有穿透能力強(qiáng)的技術(shù)如SOAP (應(yīng)用SOAP協(xié)議的典型應(yīng)用代表為WebServices), 這種技術(shù)使用HTTP協(xié)議傳輸基于XML格式的數(shù)據(jù)。這種技術(shù)問題在于傳輸?shù)臄?shù)據(jù)量大,XML 格式的數(shù)據(jù)在生成和解析時(shí)效率也很低?,F(xiàn)有的效率高的技術(shù)一般是使用自定的二進(jìn)制數(shù)據(jù)格式,直接基于TCP協(xié)議發(fā) 送。這種技術(shù)問題在于網(wǎng)絡(luò)穿透能力差要么連接遠(yuǎn)程通信實(shí)體時(shí)使用的端口號(hào)不是 Well-Kn0wn端口,容易被封;要么使用Well-Known端口連接,但由于發(fā)送的數(shù)據(jù)不符合相 應(yīng)協(xié)議的格式,導(dǎo)致被安全工具攔截。

      發(fā)明內(nèi)容
      本發(fā)明的目的是提供一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,它引入 一種兩者兼顧的方案,使得應(yīng)用能夠使用現(xiàn)有的高效率的通訊方案,又能最大可能的提高 網(wǎng)絡(luò)的穿透能力,做到對(duì)布署環(huán)境的依賴最小化。本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法的目的是通過以下技 術(shù)方案實(shí)現(xiàn)的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,所述的應(yīng)用程序網(wǎng)絡(luò) 包括發(fā)送端實(shí)體及遠(yuǎn)端實(shí)體;所述的發(fā)送端實(shí)體中包括一次連接的HTTP封裝組件、SSL封 裝組件、發(fā)送組件及穿透模塊;遠(yuǎn)端實(shí)體包括相連接的接收組件及判斷POST請(qǐng)求組件。所述的發(fā)送端實(shí)體及遠(yuǎn)端實(shí)體使用TCP協(xié)議傳輸數(shù)據(jù)。所述的遠(yuǎn)端實(shí)體包括端口 80及端口 443。所述的HTTP封裝組件封裝在發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸失敗的數(shù)據(jù),傳輸 到遠(yuǎn)端實(shí)體的80端口。所述的SSL封裝組件封裝在發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸失敗的數(shù)據(jù),傳輸?shù)?遠(yuǎn)端實(shí)體的443端口。上述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其中,所述的發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸?shù)臄?shù)據(jù)是二進(jìn)制數(shù)據(jù)。上述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其中,所述的HTTP封 裝組件及SSL封裝組件封裝后傳輸?shù)臄?shù)據(jù)是二進(jìn)制數(shù)據(jù),作為POST請(qǐng)求的數(shù)據(jù)體,判斷 POST請(qǐng)求組件判斷接收到的數(shù)據(jù)是否有HTTP POST請(qǐng)求或HTTPS POST請(qǐng)求。上述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其中,該方法至少包 括如下步驟步驟1,發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體開始創(chuàng)建連接。步驟2,發(fā)送端實(shí)體向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包。步驟3,遠(yuǎn)端實(shí)體判斷在設(shè)定的時(shí)間內(nèi)是否收到數(shù)據(jù)包步驟3. 1,遠(yuǎn)端實(shí)體判斷在設(shè)定的時(shí)間內(nèi)是否收到數(shù)據(jù)包,若收到數(shù)據(jù)包,則繼續(xù) 發(fā)送;步驟3. 2,接收組件若沒有收到數(shù)據(jù)包,則選擇穿透方案步驟3. 2. 1,應(yīng)用使用TCP協(xié)議連接到遠(yuǎn)端實(shí)體的80端口時(shí),選擇方案一;若不 是,則執(zhí)行步驟3. 2.2 步驟3. 2. 1. 1,HTTP封裝組件將原始的數(shù)據(jù)封裝到一個(gè)HTTP協(xié)議包中,作為POST 請(qǐng)求的數(shù)據(jù)體;步驟3. 2. 1. 2,發(fā)送組件向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包;步驟3. 2. 1. 3,遠(yuǎn)端實(shí)體的判斷POST請(qǐng)求組件識(shí)別數(shù)據(jù)是否有HTTP POST請(qǐng)求封 裝,若有,則執(zhí)行步驟3. 2. 1. 4,若沒有,則重新連接;步驟3. 2. 1. 4,發(fā)送組件繼續(xù)發(fā)送數(shù)據(jù)包;步驟3. 2. 2,應(yīng)用使用TCP協(xié)議連接到遠(yuǎn)端實(shí)體的443端口時(shí),選擇方案二 步驟3. 2. 2. 1,用SSL封裝組件,發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體進(jìn)行的SSL初始化過程,并 完成握手過程;步驟3. 2. 2. 2,發(fā)送組件向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包;步驟3. 2. 2. 3,遠(yuǎn)端實(shí)體的判斷POST請(qǐng)求組件識(shí)別是否有HTTPS POST請(qǐng)求,若是, 則發(fā)送組件根據(jù)SSL協(xié)議繼續(xù)發(fā)送數(shù)據(jù)包,若不是,則重新連接。步驟4,發(fā)送端實(shí)體判斷傳輸是否完成步驟4. 1,發(fā)送端實(shí)體判斷傳輸是否完成,若完成,則執(zhí)行步驟5 ;步驟4. 2,若傳輸沒有完成,則判斷是否啟動(dòng)穿透模塊,若啟動(dòng)穿透模塊,則執(zhí)行步 驟3,若不啟動(dòng)穿透模塊,遠(yuǎn)端實(shí)體向發(fā)送端實(shí)體提示出錯(cuò)信息,發(fā)送失敗后執(zhí)行步驟5。步驟5,結(jié)束傳輸。本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法由于采用了上述方案, 使之與現(xiàn)有技術(shù)相比,具有以下的優(yōu)點(diǎn)和積極效果1、本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法能使用現(xiàn)有的高效 率的通訊方案,又能最大可能的提高網(wǎng)絡(luò)的穿透能力。2、本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法能做到對(duì)不熟環(huán)境 的依賴最小化。3、本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法成本較低,效益大, 易于普及應(yīng)用。


      圖1是本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法的流程圖。圖2是本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法選擇方案一的 流程圖。圖3是本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法選擇方案二的 流程圖。圖4是本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法的模塊圖。
      具體實(shí)施例方式請(qǐng)參見附圖4所示,本發(fā)明用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,應(yīng)用 程序網(wǎng)絡(luò)包括發(fā)送端實(shí)體及遠(yuǎn)端實(shí)體;發(fā)送端實(shí)體中包括一次連接的HTTP封裝組件、SSL 封裝組件、發(fā)送組件及穿透模塊;遠(yuǎn)端實(shí)體包括相連接的接收組件及判斷POST請(qǐng)求組件; 發(fā)送端實(shí)體及遠(yuǎn)端實(shí)體使用TCP協(xié)議傳輸數(shù)據(jù);遠(yuǎn)端實(shí)體包括端口 80及端口 443 ;HTTP封 裝組件封裝在發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸失敗的數(shù)據(jù),傳輸?shù)竭h(yuǎn)端實(shí)體的80端口 ; SSL封裝組件封裝在發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸失敗的數(shù)據(jù),傳輸?shù)竭h(yuǎn)端實(shí)體的443 端口,發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸?shù)臄?shù)據(jù)是二進(jìn)制數(shù)據(jù),HTTP封裝組件及SSL封裝組 件封裝后傳輸?shù)臄?shù)據(jù)是二進(jìn)制數(shù)據(jù),作為POST請(qǐng)求的數(shù)據(jù)體,所述的判斷POST請(qǐng)求組件判 斷接收到的數(shù)據(jù)是否有HTTP POST請(qǐng)求或HTTPSP0ST請(qǐng)求。請(qǐng)參見附圖1所示,本發(fā)明用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,該方 法至少包括如下步驟步驟1,發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體開始創(chuàng)建連接。步驟2,發(fā)送端實(shí)體向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包。步驟3,遠(yuǎn)端實(shí)體判斷在設(shè)定的時(shí)間內(nèi)是否收到數(shù)據(jù)包。步驟4,發(fā)送端實(shí)體判斷傳輸是否完成步驟4. 1,發(fā)送端實(shí)體判斷傳輸是否完成,若完成,則執(zhí)行步驟5 ;步驟4. 2,若傳輸沒有完成,則判斷是否啟動(dòng)穿透模塊,若啟動(dòng)穿透模塊,則執(zhí)行步 驟3,若不啟動(dòng)穿透模塊,遠(yuǎn)端實(shí)體向發(fā)送端實(shí)體提示出錯(cuò)信息,發(fā)送失敗后執(zhí)行步驟5。步驟5,結(jié)束傳輸。請(qǐng)參見附圖2所示,附圖2是本發(fā)明用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方 法的穿透方案一步驟3. 1,遠(yuǎn)端實(shí)體判斷在設(shè)定的時(shí)間內(nèi)是否收到數(shù)據(jù)包,若收到數(shù)據(jù)包,則繼續(xù) 發(fā)送;步驟3. 2,接收組件若沒有收到數(shù)據(jù)包,則選擇穿透方案步驟3. 2. 1,應(yīng)用使用TCP協(xié)議連接到遠(yuǎn)端實(shí)體的80端口時(shí),選擇方案一;若不 是,則執(zhí)行步驟3. 2.2 步驟3. 2. 1. 1,HTTP封裝組件將原始的數(shù)據(jù)封裝到一個(gè)HTTP協(xié)議包中,作為POST 請(qǐng)求的數(shù)據(jù)體;步驟3. 2. 1. 2,發(fā)送組件向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包;
      步驟3. 2. 1. 3,遠(yuǎn)端實(shí)體的判斷POST請(qǐng)求組件識(shí)別數(shù)據(jù)是否有HTTP POST請(qǐng)求封 裝,若有,則執(zhí)行步驟3. 2. 1. 4,若沒有,則重新連接;步驟3. 2. 1. 4,發(fā)送組件繼續(xù)發(fā)送數(shù)據(jù)包。應(yīng)用使用TCP協(xié)議連接到遠(yuǎn)端實(shí)體的80端口,并在這條鏈接上發(fā)送端實(shí)體直接通 過send函數(shù)直接發(fā)送應(yīng)用程序自定的二進(jìn)制通信協(xié)議進(jìn)行通信。但在安裝了一些安全工 具后,可能會(huì)對(duì)連接遠(yuǎn)端實(shí)體80端口進(jìn)行通信的鏈接上發(fā)送的數(shù)據(jù)進(jìn)行檢驗(yàn),如果不符合 HTTP標(biāo)準(zhǔn)協(xié)議,就認(rèn)為是不合法數(shù)據(jù),直接丟棄,導(dǎo)致通訊失敗,接收組件在設(shè)定時(shí)間內(nèi)沒 有接收到相應(yīng)的數(shù)據(jù)包。在這種情況下,本發(fā)明的方案是將原始的二進(jìn)制數(shù)據(jù)用HTTP封裝 組件封裝到一個(gè)HTTP協(xié)議包中,作為POST請(qǐng)求的數(shù)據(jù)體。由于HTTP POST請(qǐng)求數(shù)據(jù)體可 以為二進(jìn)制數(shù)據(jù),因此,這個(gè)協(xié)議包是一個(gè)依法的HTTP請(qǐng)求,將可以通過安全工具的檢驗(yàn)。 另外,由于在原始的數(shù)據(jù)包前只增加了很少的一個(gè)HTTPP0ST請(qǐng)求頭部,只有幾十個(gè)字節(jié), 基本上帶來的開銷可以不計(jì)了。這種情況要求遠(yuǎn)端實(shí)體在處理通訊協(xié)議時(shí),判斷POST請(qǐng)求 組件可以識(shí)別數(shù)據(jù)是否有HTTP POST請(qǐng)求封裝。這可以在通信協(xié)議中指明第一個(gè)字節(jié)是額 外的協(xié)議類別字節(jié),用于指示是否有HTTP封裝。請(qǐng)參見附圖3所示,附圖3是本發(fā)明用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方 法的穿透方案二步驟3. 2. 2,應(yīng)用使用TCP協(xié)議連接到遠(yuǎn)端實(shí)體的443端口時(shí),選擇方案二 步驟3. 2. 2. 1,用SSL封裝組件,發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體進(jìn)行的SSL初始化過程,并 完成握手過程;步驟3. 2. 2. 2,發(fā)送組件向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包;步驟3. 2. 2. 3,遠(yuǎn)端實(shí)體的判斷POST請(qǐng)求組件識(shí)別是否有HTTPS POST請(qǐng)求,若是, 則發(fā)送組件根據(jù)SSL協(xié)議繼續(xù)發(fā)送數(shù)據(jù)包,若不是,則重新連接。應(yīng)用使用TCP協(xié)議連接到遠(yuǎn)端實(shí)體的443端口,并在這條鏈接上發(fā)送端實(shí)體直接 通過send函數(shù)直接發(fā)送應(yīng)用程序自定的二進(jìn)制通信協(xié)議進(jìn)行通信。但在安裝了一些安全 工具后,可能會(huì)對(duì)連接遠(yuǎn)端實(shí)體443端口進(jìn)行通信的鏈接上發(fā)送的數(shù)據(jù)進(jìn)行檢驗(yàn),如果不 符合HTTPS (SSL)標(biāo)準(zhǔn)協(xié)議,就認(rèn)為是不合法數(shù)據(jù),直接丟棄,導(dǎo)致通訊失敗,接收組件在設(shè) 定時(shí)間內(nèi)沒有接收到相應(yīng)的數(shù)據(jù)包。在這種情況下,本發(fā)明的方案是首先與遠(yuǎn)端通信實(shí)體 進(jìn)行標(biāo)準(zhǔn)的SSL初始化過程,得到SSL的會(huì)話公鑰,之后,可以直接在這個(gè)SSL鏈路上發(fā)送 二進(jìn)制數(shù)據(jù),而不會(huì)被安全工具攔截(因?yàn)镠TTPS上傳送的數(shù)據(jù)都是用公鑰加密,沒有私鑰 安全工具也無法解開傳輸?shù)臄?shù)據(jù),也就無法驗(yàn)證是否發(fā)送的是合法的HTTP請(qǐng)求)。這種情 況要求遠(yuǎn)端實(shí)體在處理通訊協(xié)議時(shí),可以識(shí)別第一個(gè)請(qǐng)求是否是前導(dǎo)的SSL標(biāo)準(zhǔn)請(qǐng)求過程 的第一個(gè)請(qǐng)求,判斷POST請(qǐng)求組件判斷是否有HTTPS POST請(qǐng)求,如果是,則進(jìn)行標(biāo)準(zhǔn)的SSL 公鑰分發(fā)流程。這可以在通信協(xié)議中指明第一個(gè)字節(jié)是額外的協(xié)議類別字節(jié),用于指示是 否是SSL請(qǐng)求。本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法還可以針對(duì)其它的網(wǎng) 絡(luò)環(huán)境進(jìn)行穿透,只要這種網(wǎng)絡(luò)環(huán)境下,至少有一種可用的支持傳輸二進(jìn)制內(nèi)容的網(wǎng)絡(luò)協(xié) 議??傮w來說,本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法分為兩部分網(wǎng)絡(luò) 識(shí)別和協(xié)議適配。網(wǎng)絡(luò)識(shí)別部分主要是通過人工或自動(dòng)測(cè)試得到當(dāng)前網(wǎng)絡(luò)支持的,協(xié)議適 配部分可以支持的,可以以某種方式傳輸二進(jìn)制數(shù)據(jù)的協(xié)議。協(xié)議適配部分主要是指針對(duì)特定的幾種協(xié)議,在互相通信的實(shí)體端以一定的標(biāo)識(shí)方式可以識(shí)別協(xié)議種類,并自動(dòng)選擇 合適的協(xié)議交互流程,以相應(yīng)協(xié)議下合法的數(shù)據(jù)包傳輸應(yīng)用自定的數(shù)據(jù)。本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法主要是兼顧了效率和 網(wǎng)絡(luò)穿透能力,使用自定的二進(jìn)制數(shù)據(jù)格式,保證了數(shù)據(jù)生成的解析的高效率,并且得到一 個(gè)緊縮,節(jié)省帶寬的數(shù)據(jù)包。另一方面,本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng) 和方法主要使用基于TCP的Well-Kn0wn端口,并進(jìn)行網(wǎng)絡(luò)識(shí)別,如果沒有特別的協(xié)議格式 限制,會(huì)不做協(xié)議適配,以最少代價(jià)發(fā)送數(shù)據(jù);不然,進(jìn)行協(xié)議適配,以盡可能小的代價(jià),提 升應(yīng)用通訊的網(wǎng)絡(luò)穿透能力。綜上所述,本發(fā)明一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法能使用現(xiàn)有 的高效率的通訊方案,又能最大可能的提高網(wǎng)絡(luò)的穿透能力;本發(fā)明一種用于提高應(yīng)用程 序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法能做到對(duì)不熟環(huán)境的依賴最小化;本發(fā)明一種用于提高應(yīng)用 程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法成本較低,效益大,易于普及應(yīng)用。
      8
      權(quán)利要求
      一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,所述的應(yīng)用程序網(wǎng)絡(luò)包括發(fā)送端實(shí)體及遠(yuǎn)端實(shí)體;其特征在于所述的發(fā)送端實(shí)體中包括一次連接的HTTP封裝組件、SSL封裝組件、發(fā)送組件及穿透模塊;遠(yuǎn)端實(shí)體包括相連接的接收組件及判斷POST請(qǐng)求組件;所述的發(fā)送端實(shí)體及遠(yuǎn)端實(shí)體使用TCP協(xié)議傳輸數(shù)據(jù);所述的遠(yuǎn)端實(shí)體包括端口80及端口443;所述的HTTP封裝組件封裝在發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸失敗的數(shù)據(jù),傳輸?shù)竭h(yuǎn)端實(shí)體的80端口;所述的SSL封裝組件封裝在發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸失敗的數(shù)據(jù),傳輸?shù)竭h(yuǎn)端實(shí)體的443端口。
      2.根據(jù)權(quán)利要求1所述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其特征 在于所述的發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸?shù)臄?shù)據(jù)是二進(jìn)制數(shù)據(jù)。
      3.根據(jù)權(quán)利要求1所述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其特征 在于所述的HTTP封裝組件及SSL封裝組件封裝后傳輸?shù)臄?shù)據(jù)是二進(jìn)制數(shù)據(jù),作為POST請(qǐng) 求的數(shù)據(jù)體,所述的判斷POST請(qǐng)求組件判斷接收到的數(shù)據(jù)是否有HTTP POST請(qǐng)求或HTTPS POST請(qǐng)求。
      4.根據(jù)權(quán)利要求1所述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其特征 在于該方法至少包括如下步驟步驟1,發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體開始創(chuàng)建連接;步驟2,發(fā)送端實(shí)體向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包;步驟3,遠(yuǎn)端實(shí)體判斷在設(shè)定的時(shí)間內(nèi)是否收到數(shù)據(jù)包;步驟4,發(fā)送端實(shí)體判斷傳輸是否完成;步驟5,結(jié)束傳輸。
      5.根據(jù)權(quán)利要求4所述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其特征 在于所述的步驟3中還包括步驟3. 1,遠(yuǎn)端實(shí)體的接收組件判斷在設(shè)定的時(shí)間內(nèi)是否收到數(shù)據(jù)包,若收到數(shù)據(jù)包, 則繼續(xù)發(fā)送;步驟3. 2,接收組件若沒有收到數(shù)據(jù)包,則選擇穿透方案。
      6.根據(jù)權(quán)利要求5所述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其特征 在于所述的步驟3. 2中還包括步驟3. 2. 1,應(yīng)用使用TCP協(xié)議連接到遠(yuǎn)端實(shí)體的80端口時(shí),選擇方案一;若不是,則 執(zhí)行步驟3. 2. 2 ;步驟3. 2. 2,應(yīng)用使用TCP協(xié)議連接到遠(yuǎn)端實(shí)體的443端口時(shí),選擇方案二。
      7.根據(jù)權(quán)利要求6所述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其特征 在于所述的步驟3. 2. 1中還包括步驟3. 2. 1. 1,HTTP封裝組件將原始的數(shù)據(jù)封裝到一個(gè)HTTP協(xié)議包中,作為POST請(qǐng)求 的數(shù)據(jù)體;步驟3. 2. 1. 2,發(fā)送組件向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包;步驟3. 2. 1. 3,遠(yuǎn)端實(shí)體的判斷POST請(qǐng)求組件識(shí)別數(shù)據(jù)是否有HTTP POST請(qǐng)求封裝,若 有,則執(zhí)行步驟3. 2. 1. 4,若沒有,則重新連接;步驟3. 2. 1. 4,發(fā)送組件繼續(xù)發(fā)送數(shù)據(jù)包。
      8.根據(jù)權(quán)利要求6所述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其特征 在于所述的步驟3. 2. 2中還包括步驟3. 2. 2. 1,用SSL封裝組件,發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體進(jìn)行的SSL初始化過程,并完成 握手過程;步驟3. 2. 2. 2,發(fā)送組件向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包;步驟3. 2. 2. 3,遠(yuǎn)端實(shí)體的判斷POST請(qǐng)求組件識(shí)別是否有HTTPS POST請(qǐng)求,若是,則發(fā) 送組件根據(jù)SSL協(xié)議繼續(xù)發(fā)送數(shù)據(jù)包,若不是,則重新連接。
      9.根據(jù)權(quán)利要求5所述的一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,其特征 在于所述的步驟4中還包括步驟4. 1,發(fā)送端實(shí)體判斷傳輸是否完成,若完成,則執(zhí)行步驟5 ; 步驟4. 2,若傳輸沒有完成,則判斷是否啟動(dòng)穿透模塊,若啟動(dòng)穿透模塊,則執(zhí)行步驟 3,若不啟動(dòng)穿透模塊,遠(yuǎn)端實(shí)體向發(fā)送端實(shí)體提示出錯(cuò)信息,發(fā)送失敗后執(zhí)行步驟5。
      全文摘要
      一種用于提高應(yīng)用程序網(wǎng)絡(luò)穿透能力的系統(tǒng)和方法,應(yīng)用程序網(wǎng)絡(luò)包括發(fā)送端實(shí)體及遠(yuǎn)端實(shí)體,發(fā)送端實(shí)體包括HTTP封裝組件、SSL封裝組件及發(fā)送組件,發(fā)送端實(shí)體及遠(yuǎn)端實(shí)體使用TCP協(xié)議傳輸數(shù)據(jù),遠(yuǎn)端實(shí)體包括端口80及端口443,HTTP封裝組件封裝在發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸失敗的數(shù)據(jù),SSL封裝組件封裝在發(fā)送端實(shí)體與遠(yuǎn)端實(shí)體之間傳輸失敗的數(shù)據(jù)。包括步驟1,開始創(chuàng)建連接;2,向遠(yuǎn)端實(shí)體發(fā)送數(shù)據(jù)包;3,遠(yuǎn)端實(shí)體判斷在設(shè)定的時(shí)間內(nèi)是否收到數(shù)據(jù)包;4,判斷傳輸是否完成;5,結(jié)束傳輸。本發(fā)明使得應(yīng)用能夠使用現(xiàn)有的高效率的通訊方案,又能最大可能的提高網(wǎng)絡(luò)的穿透能力,做到對(duì)布署環(huán)境的依賴最小化。
      文檔編號(hào)H04L29/06GK101997817SQ200910056290
      公開日2011年3月30日 申請(qǐng)日期2009年8月12日 優(yōu)先權(quán)日2009年8月12日
      發(fā)明者馮博文, 劉成光, 張偉 申請(qǐng)人:升東網(wǎng)絡(luò)科技發(fā)展(上海)有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1