本發(fā)明涉及無線通信技術(shù)領(lǐng)域,特別涉及一種電子郵件傳輸方法和系統(tǒng)。
背景技術(shù):
電子郵件是無線信道上提供的最主要的應(yīng)用服務(wù),無論短波、超短波,還是衛(wèi)星信道等,都會提供相應(yīng)的電子郵件應(yīng)用。不同的無線信道有不同的通信特點,但大多存在質(zhì)量不穩(wěn)定、干擾嚴重、帶寬有限的現(xiàn)象。如果直接將有線網(wǎng)絡(luò)中廣泛應(yīng)用的商用電子郵件系統(tǒng)應(yīng)用于所有無線信道,將導致這些系統(tǒng)在大部分情況下都會效率低下,甚至很多時候這些系統(tǒng)使用的基于TCP/IP(英文:Transmission Control Protocol/Internet Protocol,中文:傳輸控制協(xié)議/因特網(wǎng)互聯(lián)協(xié)議)的SMTP/POP3(英文:Simple Mail Transfer Protocol/Post Office Protocol-Version 3,中文:簡單郵件傳輸協(xié)議/郵局協(xié)議版本3)等郵件傳輸協(xié)議則根本無法運行?;诖耍F(xiàn)在廣泛使用的無線信道電子郵件通信方法,均是為用戶提供簡化的、專用的郵件傳輸客戶端軟件和服務(wù)器軟件,客戶端和服務(wù)器直接與無線信道傳輸設(shè)備連接,由無線信道傳輸設(shè)備實現(xiàn)郵件報文的無線傳輸。
但在實現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)至少存在以下問題:
客戶端和服務(wù)器系統(tǒng)均為專用軟件,可操作性和穩(wěn)定性與商用軟件有差距,從而用戶體驗較差;不同無線信道的電子郵件通信系統(tǒng)很難兼容;另外,由于在有線環(huán)境中,用戶都使用基于TCP/IP協(xié)議的SMTP/POP3等郵件傳輸協(xié)議的商用電子郵件系統(tǒng),所以專用無線信道電子郵件系統(tǒng)與有線環(huán)境中的電子郵件系統(tǒng)很難實現(xiàn)互通。
技術(shù)實現(xiàn)要素:
為了解決現(xiàn)有技術(shù)中無線信道的客戶端和服務(wù)器系統(tǒng)為專用軟件帶來的問題,本發(fā)明實施例提供了一種電子郵件傳輸方法和系統(tǒng)。所述技術(shù)方案如下:
第一方面,本發(fā)明實施例提供了一種電子郵件傳輸方法,所述方法由設(shè)置在客戶端與服務(wù)器之間的客戶端郵件服務(wù)代理執(zhí)行,所述方法包括:
通過簡單郵件傳輸協(xié)議SMTP協(xié)議接收所述客戶端發(fā)送的第一電子郵件,并記錄SMTP交互信息,所述SMTP交互信息包括服務(wù)器名稱、客戶端名稱、發(fā)件人地址、收件人地址和抄送人地址;
將所述電子郵件封裝成為第一郵件數(shù)據(jù)包,將所述SMTP交互信息封裝成認證數(shù)據(jù)包;
確定傳輸信道類型,所述傳輸信道類型包括短波、超短波、衛(wèi)星和有線;
確定與所述傳輸信道類型對應(yīng)的幀長度,采用所述幀長度對所述認證數(shù)據(jù)包進行分幀處理,得到第一數(shù)據(jù)幀,并將所述第一數(shù)據(jù)幀發(fā)送至服務(wù)器,以進行認證;
認證成功時,接收到所述服務(wù)器發(fā)送的第二數(shù)據(jù)幀,根據(jù)所述第二數(shù)據(jù)幀合并得到認證成功數(shù)據(jù)包;
采用所述幀長度對所述第一郵件數(shù)據(jù)包進行分幀處理,得到第三數(shù)據(jù)幀,并將所述第三數(shù)據(jù)幀發(fā)送至所述服務(wù)器,以使所述服務(wù)器將所述第一電子郵件傳輸至收件人對應(yīng)的客戶端。
在本發(fā)明實施例的一種實現(xiàn)方式中,所述確定傳輸信道類型,包括:
按照優(yōu)先級順序依次選擇信道類型;按照選擇的信道類型傳輸測試數(shù)據(jù)包;如果所述測試數(shù)據(jù)包傳輸失敗,則選擇下一優(yōu)先級的信道類型進行傳輸,直到選擇出能夠進行數(shù)據(jù)包傳輸?shù)男诺李愋蜑橹梗徊捎媚軌蜻M行數(shù)據(jù)包傳輸?shù)男诺李愋妥鳛榇_定出的傳輸信道類型。
在本發(fā)明實施例的另一種實現(xiàn)方式中,所述確定與所述傳輸信道類型對應(yīng)的幀長度,包括:
確定所述傳輸信道在一段時間內(nèi)的傳輸速度均值;
確定與所述傳輸信道類型對應(yīng)的幀長度因子;
采用如下公式計算所述傳輸信道類型對應(yīng)的幀長度A:A=S/B,S為所述傳輸速度均值,B為所述傳輸信道類型對應(yīng)的幀長度因子。
在本發(fā)明實施例的另一種實現(xiàn)方式中,所述方法還包括:
接收所述服務(wù)器發(fā)送的第四數(shù)據(jù)幀,根據(jù)所述第四數(shù)據(jù)幀合并得到第二郵件數(shù)據(jù)包,對所述第二郵件數(shù)據(jù)包進行解封裝得到第二電子郵件,以使所述客戶端通過郵局協(xié)議版本3POP3協(xié)議從所述客戶端郵件服務(wù)代理獲取所述第二電子郵件。
第二方面,本發(fā)明實施例還提供了一種電子郵件傳輸方法,所述方法由設(shè)置在服務(wù)器與客戶端之間的服務(wù)器郵件服務(wù)代理執(zhí)行,所述方法包括:
接收客戶端發(fā)送的第一數(shù)據(jù)幀,根據(jù)所述第一數(shù)據(jù)幀合并得到認證數(shù)據(jù)包;對所述認證數(shù)據(jù)包進行解封裝得到認證數(shù)據(jù)包,所述認證數(shù)據(jù)包包括SMTP交互信息,所述SMTP交互信息包括服務(wù)器名稱、客戶端名稱、發(fā)件人地址、收件人地址和抄送人地址;
根據(jù)所述認證數(shù)據(jù)包對所述客戶端進行認證;當認證成功時,生成認證成功數(shù)據(jù)包;
確定所述客戶端對應(yīng)的幀長度,采用所述幀長度對所述認證數(shù)據(jù)包進行分幀處理,得到第二數(shù)據(jù)幀,并將所述第二數(shù)據(jù)幀發(fā)送所述客戶端;
接收所述客戶端發(fā)送的第三數(shù)據(jù)幀,根據(jù)所述第三數(shù)據(jù)幀合并得到第一郵件數(shù)據(jù)包;對所述第一郵件數(shù)據(jù)包進行解封裝得到第一電子郵件,并將所述第一電子郵件發(fā)送至服務(wù)器。
在本發(fā)明實施例的一種實現(xiàn)方式中,所述確定所述客戶端對應(yīng)的幀長度,包括:
確定傳輸信道類型,所述傳輸信道類型包括短波、超短波、衛(wèi)星和有線;確定與所述傳輸信道類型對應(yīng)的幀長度;或者,
所述確定所述客戶端對應(yīng)的幀長度,包括:確定所述第一數(shù)據(jù)幀的長度作為所述幀長度;或者,
獲取存儲的與所述客戶端對應(yīng)的幀長度。
在本發(fā)明實施例的另一種實現(xiàn)方式中,所述確定傳輸信道類型,包括:
按照優(yōu)先級順序依次選擇信道類型;按照選擇的信道類型傳輸測試數(shù)據(jù)包;如果所述測試數(shù)據(jù)包傳輸失敗,則選擇下一優(yōu)先級的信道類型進行傳輸,直到選擇出能夠進行數(shù)據(jù)包傳輸?shù)男诺李愋蜑橹?;采用能夠進行數(shù)據(jù)包傳輸?shù)男诺李愋妥鳛榇_定出的傳輸信道類型。
在本發(fā)明實施例的另一種實現(xiàn)方式中,所述確定與所述傳輸信道類型對應(yīng)的幀長度,包括:
確定所述傳輸信道在一段時間內(nèi)的傳輸速度均值;
確定與所述傳輸信道類型對應(yīng)的幀長度因子;
采用如下公式計算所述傳輸信道類型對應(yīng)的幀長度A:A=S/B,S為所述傳輸速度均值,B為所述傳輸信道類型對應(yīng)的幀長度因子。
在本發(fā)明實施例的另一種實現(xiàn)方式中,所述方法還包括:
當通過SMTP協(xié)議接收到所述服務(wù)器發(fā)送至所述客戶端的第二電子郵件時,將所述第二電子郵件封裝成為第二郵件數(shù)據(jù)包;
采用所述幀長度對所述第二郵件數(shù)據(jù)包進行分幀處理,得到第四數(shù)據(jù)幀,并將所述第四數(shù)據(jù)幀發(fā)送至所述客戶端,以使所述客戶端得到所述第二電子郵件。
第三方面,本發(fā)明實施例還提供了一種電子郵件傳輸系統(tǒng),所述系統(tǒng)包括客戶端和服務(wù)器,所述系統(tǒng)還包括:客戶端郵件服務(wù)代理和服務(wù)器郵件服務(wù)代理,所述客戶端、所述客戶端郵件服務(wù)代理、所述服務(wù)器郵件服務(wù)代理和所述服務(wù)器依次相連;
所述客戶端郵件服務(wù)代理用于執(zhí)行權(quán)利要求1-3任一項所述的電子郵件傳輸方法,所述服務(wù)器郵件服務(wù)代理用于執(zhí)行權(quán)利要求4-7任一項所述的電子郵件傳輸方法。
本發(fā)明實施例提供的技術(shù)方案帶來的有益效果是:
通過在客戶端與服務(wù)器之間設(shè)置客戶端郵件服務(wù)代理來轉(zhuǎn)發(fā)客戶端的電子郵件,客戶端不需要使用專用軟件,即可實現(xiàn)在無線信道進行電子郵件傳輸,可操作性和穩(wěn)定性大大增強,提高了用戶體驗,且能夠與基于TCP/IP協(xié)議的SMTP/POP3等郵件傳輸協(xié)議的實現(xiàn)互通;另外,客戶端郵件服務(wù)代理可以兼容用于不同無線信道及有線信道。
附圖說明
為了更清楚地說明本發(fā)明實施例中的技術(shù)方案,下面將對實施例描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
圖1A是本發(fā)明實施例提供的一種電子郵件傳輸系統(tǒng)的結(jié)構(gòu)示意圖;
圖1B是本發(fā)明實施例提供的另一種電子郵件傳輸系統(tǒng)的結(jié)構(gòu)示意圖;
圖2是本發(fā)明實施例提供的一種電子郵件傳輸方法的流程圖;
圖3是本發(fā)明實施例提供的另一種電子郵件傳輸方法的流程圖;
圖4是本發(fā)明實施例提供的另一種電子郵件傳輸方法的流程圖;
圖5是本發(fā)明實施例提供的另一種電子郵件傳輸方法的流程圖。
具體實施方式
為使本發(fā)明的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合附圖對本發(fā)明實施方式作進一步地詳細描述。
圖1A是本發(fā)明實施例提供的電子郵件傳輸系統(tǒng)的結(jié)構(gòu)示意圖,參見圖1A,該電子郵件傳輸系統(tǒng)包括客戶端10、服務(wù)器20,客戶端郵件服務(wù)代理30和服務(wù)器郵件服務(wù)代理40,客戶端10、客戶端郵件服務(wù)代理30、服務(wù)器郵件服務(wù)代理40和服務(wù)器20依次相連。
其中,客戶端郵件服務(wù)代理30設(shè)置在客戶端10和服務(wù)器20之間,且距離客戶端10較近,二者可以通過有線連接。服務(wù)器郵件服務(wù)代理40設(shè)置在客戶端10和服務(wù)器20之間,且距離服務(wù)器20較近,二者可以通過有線連接。
進一步地,客戶端郵件服務(wù)代理30可以集成在客戶端10上;服務(wù)器郵件服務(wù)代理40可以集成在服務(wù)器20上。
客戶端郵件服務(wù)代理30和服務(wù)器郵件服務(wù)代理40之間的連接方式包括但不限于短波連接、超短波連接、衛(wèi)星連接和有線連接。當客戶端郵件服務(wù)代理30和服務(wù)器郵件服務(wù)代理40分別集成在客戶端10和服務(wù)器20上時,也即客戶端10和服務(wù)器20之間采用上述方式連接。
在圖1A所示的實現(xiàn)方式中,每個客戶端10(如圖所示客戶端C1和C2)均配置有一個客戶端郵件服務(wù)代理30(如圖所示客戶端P1和P2)。在另一種實現(xiàn)方式中,具體參見圖1B,還可以只在客戶端10和服務(wù)器20之間采用無線鏈路傳輸時,配置客戶端郵件服務(wù)代理30,而采用有線方式傳輸郵件的客戶端10(如圖所示客戶端C3和C4)直接與服務(wù)器20連接,此時服務(wù)器20配置的服務(wù)器郵件服務(wù)代理40也不用處理這部分客戶端發(fā)送的郵件。
在本發(fā)明實施例中,客戶端郵件服務(wù)代理用于執(zhí)行圖2和圖4所示的電子郵件傳輸方法,服務(wù)器郵件服務(wù)代理用于執(zhí)行圖3和圖4所示的電子郵件傳輸方法。
在上述兩種實現(xiàn)方式中,客戶端10、客戶端郵件服務(wù)代理30和服務(wù)器郵件服務(wù)代理40所執(zhí)行的動作均相同。而服務(wù)器20執(zhí)行的動作略有不同,在圖1A所示的系統(tǒng)中,服務(wù)器20在接收到郵件后直接轉(zhuǎn)發(fā);而在圖1B所示的系統(tǒng)中,服務(wù)器20需要根據(jù)收件人對應(yīng)的客戶端確定是否需要轉(zhuǎn)發(fā),具體地,如果收件人對應(yīng)的客戶端需要通過服務(wù)器郵件服務(wù)代理40轉(zhuǎn)發(fā)(無線網(wǎng)絡(luò)),則發(fā)送該郵件,如果收件人對應(yīng)的客戶端可以通過POP3直接從服務(wù)器20上獲取(有線網(wǎng)絡(luò)),則不需要發(fā)送該郵件。
其中,客戶端C1、C2、C3、C4均可以采用免費郵件客戶端軟件outlook,服務(wù)器可以采用免費軟件hMailServer,客戶端C1中“發(fā)送服務(wù)器”配置為客戶端郵件服務(wù)代理P1的IP地址,客戶端C2中“接收服務(wù)器”配置為客戶端郵件服務(wù)代理P2的IP地址,服務(wù)器中“轉(zhuǎn)發(fā)服務(wù)器”配置為服務(wù)器郵件服務(wù)代理40的IP地址。
客戶端與客戶端郵件服務(wù)代理之間采用標準的SMTP/POP3協(xié)議進行郵件傳輸,服務(wù)器與服務(wù)器郵件服務(wù)代理之間采用標準的SMTP協(xié)議進行郵件傳輸,因此客戶端和服務(wù)器均可以采用通用的商用客戶端和服務(wù)器,使用通過的軟件客戶端,使得用戶不必采用專用的郵件系統(tǒng),不僅便于用戶操作,并且實現(xiàn)了不同的無線信道下郵件傳輸?shù)耐ㄓ眯?;另外,服?wù)器郵件服務(wù)代理能夠使無線網(wǎng)絡(luò)與有線網(wǎng)絡(luò)融合,保證了在不影響有線網(wǎng)絡(luò)電子郵件用戶的原有使用習慣的同時,實現(xiàn)了實時移動的無線網(wǎng)絡(luò)節(jié)點與固定的有線網(wǎng)絡(luò)節(jié)點間的郵件交互。
圖2是本發(fā)明實施例提供的一種電子郵件傳輸方法的流程圖,該方法由前述客戶端郵件服務(wù)代理執(zhí)行,參見圖2,該方法包括:
步驟101:通過SMTP協(xié)議接收客戶端發(fā)送的第一電子郵件,并記錄SMTP交互信息,SMTP交互信息包括服務(wù)器名稱、客戶端名稱、發(fā)件人(E-mail)地址、收件人(E-mail)地址和抄送人(E-mail)地址。
具體地,客戶端郵件服務(wù)代理根據(jù)接收到的第一電子郵件中攜帶的信息即可獲取到SMTP交互信息,記錄獲取到的SMTP交互信息。
步驟102:將電子郵件封裝成為第一郵件數(shù)據(jù)包,將SMTP交互信息封裝成認證數(shù)據(jù)包。
具體地,第一郵件數(shù)據(jù)包是直接在電子郵件的基礎(chǔ)上封裝而成的。認證數(shù)據(jù)包為全ascii碼的數(shù)據(jù)包。認證數(shù)據(jù)包的內(nèi)容由關(guān)鍵字和對應(yīng)的內(nèi)容組成。其中,關(guān)鍵字包括發(fā)件人、收件人、抄送人、主題和客戶端發(fā)送時間等。
通過上述數(shù)據(jù)包封裝,保證電子郵件能夠發(fā)送到服務(wù)器。
步驟103:確定傳輸信道類型,所述傳輸信道類型包括短波、超短波、衛(wèi)星和有線。
其中,確定傳輸信道類型,包括:
按照優(yōu)先級順序依次選擇信道類型,然后按照該信道類型傳輸測試數(shù)據(jù)包;如果測試數(shù)據(jù)包傳輸失敗,則依次選擇下一優(yōu)先級的信道類型進行傳輸,直到能夠進行數(shù)據(jù)包傳輸為止,采用能夠進行數(shù)據(jù)包傳輸?shù)男诺李愋妥鳛榇_定出的傳輸信道類型。上述優(yōu)先級順序可以由用戶指定,也可以采用默認設(shè)置,如有線信道優(yōu)先級最高,衛(wèi)星信道優(yōu)先級其次,超短波信道優(yōu)先級再次,短波信道優(yōu)先級最低。
傳輸信道類型可以在開機時執(zhí)行,然后存儲在客戶端郵件服務(wù)代理中,在后續(xù)執(zhí)行過程中,確定傳輸信道類型時,直接獲取存儲的傳輸信道類型即可。
步驟104:確定與傳輸信道類型對應(yīng)的幀長度,采用幀長度對認證數(shù)據(jù)包進行分幀處理,得到第一數(shù)據(jù)幀,并將第一數(shù)據(jù)幀發(fā)送至服務(wù)器,以進行認證。
其中,確定與傳輸信道類型對應(yīng)的幀長度,包括:
確定傳輸信道在一段時間內(nèi)的傳輸速度均值;
確定與傳輸信道類型對應(yīng)的幀長度因子;
采用如下公式計算傳輸信道類型對應(yīng)的幀長度A:A=S/B,S為傳輸速度均值,B為傳輸信道類型對應(yīng)的幀長度因子。其中,幀長度因子為可調(diào)參數(shù),對于同一種信道類型,多個設(shè)備設(shè)置的值可以不同。原則上,各種信道類型對應(yīng)的幀長度因子可以以各個設(shè)備在理想環(huán)境中,在該類型信道上傳輸達到最大傳輸速度時的幀長為依據(jù),進行調(diào)整。比如在短波信道中,幀長度因子可以為10;在超短波信道中,幀長度因子可以為100。
其中,傳輸信道在一段時間內(nèi)的傳輸速度均值可以根據(jù)上次郵件傳輸時的速度進行計算。
由于服務(wù)器和客戶端之間還設(shè)置有服務(wù)器郵件服務(wù)代理,因此實際第一數(shù)據(jù)幀由服務(wù)器郵件服務(wù)代理接收。
步驟105:認證成功時,接收到服務(wù)器發(fā)送的第二數(shù)據(jù)幀,根據(jù)第二數(shù)據(jù)幀合并得到認證成功數(shù)據(jù)包。
客戶端郵件服務(wù)代理合并得到認證成功數(shù)據(jù)包后,確定認證成功,此時向服務(wù)器發(fā)送郵件數(shù)據(jù)包。
而當認證失敗時,客戶端郵件服務(wù)代理根據(jù)第二數(shù)據(jù)幀合并得到認證失敗數(shù)據(jù)包;或者不會接收到第二數(shù)據(jù)幀。
當認證失敗時,客戶端郵件服務(wù)代理重新發(fā)送第一數(shù)據(jù)幀發(fā)送至服務(wù)器。
由于服務(wù)器和客戶端之間還設(shè)置有服務(wù)器郵件服務(wù)代理,因此實際第二數(shù)據(jù)幀是由服務(wù)器郵件服務(wù)代理發(fā)送的。
步驟106:采用幀長度對第一郵件數(shù)據(jù)包進行分幀處理,得到第三數(shù)據(jù)幀,并將第三數(shù)據(jù)幀發(fā)送至服務(wù)器,以使所述服務(wù)器將所述第一電子郵件傳輸至收件人對應(yīng)的客戶端。
由于服務(wù)器和客戶端之間還設(shè)置有服務(wù)器郵件服務(wù)代理,因此實際第三數(shù)據(jù)幀由服務(wù)器郵件服務(wù)代理接收。
進一步地,該方法還包括:接收服務(wù)器發(fā)送的確認數(shù)據(jù)幀,根據(jù)確認數(shù)據(jù)幀合并得到郵件確認數(shù)據(jù)包,郵件確認數(shù)據(jù)包用于指示服務(wù)器是否收到該第一郵件數(shù)據(jù)包。
步驟107:接收服務(wù)器發(fā)送的第四數(shù)據(jù)幀,根據(jù)第四數(shù)據(jù)幀合并得到第二郵件數(shù)據(jù)包,對第二郵件數(shù)據(jù)包進行解封裝得到第二電子郵件,以使客戶端通過POP3協(xié)議從客戶端郵件服務(wù)代理獲取第二電子郵件。
在本發(fā)明實施例中,第二電子郵件可以是收件人對第一電子郵件的回信,也可以是其他用戶發(fā)送的電子郵件。
本發(fā)明通過在客戶端與服務(wù)器之間設(shè)置客戶端郵件服務(wù)代理來轉(zhuǎn)發(fā)客戶端的電子郵件,客戶端不需要使用專用軟件,即可實現(xiàn)在無線信道進行電子郵件傳輸,可操作性和穩(wěn)定性大大增強,提高了用戶體驗,且能夠與基于TCP/IP協(xié)議的SMTP/POP3等郵件傳輸協(xié)議的實現(xiàn)互通;另外,客戶端郵件服務(wù)代理可以兼容用于不同無線信道及有線信道。
圖3是本發(fā)明實施例提供的另一種電子郵件傳輸方法的流程圖,該方法由前述服務(wù)器郵件服務(wù)代理執(zhí)行,參見圖3,該方法包括:
步驟201:接收客戶端發(fā)送的第一數(shù)據(jù)幀,根據(jù)第一數(shù)據(jù)幀合并得到認證數(shù)據(jù)包;對認證數(shù)據(jù)包進行解封裝得到認證數(shù)據(jù)包,認證數(shù)據(jù)包包括SMTP交互信息,SMTP交互信息包括服務(wù)器名稱、客戶端名稱、發(fā)件人地址、收件人地址和抄送人地址。
步驟202:根據(jù)認證數(shù)據(jù)包對客戶端進行認證;當認證成功時,生成認證成功數(shù)據(jù)包。
而當認證失敗時,生成認證失敗數(shù)據(jù)包;或者不生成數(shù)據(jù)包。
其中,認證包括:第一項檢查,檢查服務(wù)器名稱、客戶端名稱、發(fā)件人地址、收件人地址、抄送人地址等信息是否符合拼寫及其它規(guī)范。第二項檢查,檢查服務(wù)器名稱是否為該服務(wù)器郵件服務(wù)代理的名稱,或者該服務(wù)器名稱是否在該服務(wù)器郵件服務(wù)代理的轉(zhuǎn)發(fā)表中。如果上述兩項檢查有一項或兩項錯誤,則認證失敗,如果兩項檢查都沒有錯誤,則認證成功。第二項檢查錯誤是指服務(wù)器名稱既不是該服務(wù)器郵件服務(wù)代理的名稱,也不存在于轉(zhuǎn)發(fā)表中。
步驟203:確定客戶端對應(yīng)的幀長度,采用幀長度對認證數(shù)據(jù)包進行分幀處理,得到第二數(shù)據(jù)幀,并將第二數(shù)據(jù)幀發(fā)送客戶端。
其中,確定客戶端對應(yīng)的幀長度,包括:
確定傳輸信道類型,所述傳輸信道類型包括短波、超短波、衛(wèi)星和有線;確定與傳輸信道類型對應(yīng)的幀長度;或者,
確定客戶端對應(yīng)的幀長度,包括:確定第一數(shù)據(jù)幀的長度作為幀長度;或者,
獲取存儲的與客戶端對應(yīng)的幀長度。
進一步地,確定傳輸信道類型,包括:
按照優(yōu)先級順序依次選擇信道類型;按照選擇的信道類型傳輸測試數(shù)據(jù)包;如果測試數(shù)據(jù)包傳輸失敗,則選擇下一優(yōu)先級的信道類型進行傳輸,直到選擇出能夠進行數(shù)據(jù)包傳輸?shù)男诺李愋蜑橹梗徊捎媚軌蜻M行數(shù)據(jù)包傳輸?shù)男诺李愋妥鳛榇_定出的傳輸信道類型。
其中,在采用選擇的信道類型傳輸測試數(shù)據(jù)包時,可以采用該選擇的信道類型對應(yīng)的幀長度對測試數(shù)據(jù)包進行分幀處理,然后進行傳輸。
進一步地,確定與傳輸信道類型對應(yīng)的幀長度,包括:
確定傳輸信道在一段時間內(nèi)的傳輸速度均值;
確定與傳輸信道類型對應(yīng)的幀長度因子;
采用如下公式計算傳輸信道類型對應(yīng)的幀長度A:A=S/B,S為傳輸速度均值,B為傳輸信道類型對應(yīng)的幀長度因子。
步驟204:接收客戶端發(fā)送的第三數(shù)據(jù)幀,根據(jù)第三數(shù)據(jù)幀合并得到第一郵件數(shù)據(jù)包;對第一郵件數(shù)據(jù)包進行解封裝得到第一電子郵件,并將第一電子郵件發(fā)送至服務(wù)器。
步驟205:當通過SMTP協(xié)議接收到服務(wù)器發(fā)送至客戶端的第二電子郵件時,將第二電子郵件封裝成為第二郵件數(shù)據(jù)包。
如果該第二郵件數(shù)據(jù)包也是通過客戶端郵件服務(wù)代理發(fā)送到服務(wù)器的,則在接收第二電子郵件封裝之前,服務(wù)器郵件服務(wù)代理會執(zhí)行與步驟201~204相同的步驟。如果該第二郵件數(shù)據(jù)包是客戶端直接通過有線信道發(fā)送給服務(wù)器的,則在該第二郵件數(shù)據(jù)包的接收過程中,無需服務(wù)器郵件服務(wù)代理參與。
步驟206:采用幀長度對第二郵件數(shù)據(jù)包進行分幀處理,得到第四數(shù)據(jù)幀,并將第四數(shù)據(jù)幀發(fā)送至客戶端,以使客戶端得到第二電子郵件。
本發(fā)明通過在客戶端與服務(wù)器之間設(shè)置服務(wù)器郵件服務(wù)代理來轉(zhuǎn)發(fā)客戶端的電子郵件,服務(wù)器不需要使用專用軟件,即可實現(xiàn)在無線信道進行電子郵件傳輸,且能夠與基于TCP/IP協(xié)議的SMTP/POP3等郵件傳輸協(xié)議的實現(xiàn)互通;另外,服務(wù)器郵件服務(wù)代理可以兼容用于不同無線信道及有線信道。
圖4是本發(fā)明實施例提供的另一種電子郵件傳輸方法的流程圖,該方法由前述系統(tǒng)執(zhí)行,該方法以客戶端C1向客戶端C2發(fā)送郵件為例,參見圖4,該方法包括以下步驟:
S301、客戶端郵件服務(wù)代理P1通過SMTP協(xié)議接收到客戶端C1向服務(wù)器發(fā)送的電子郵件。
S302、客戶端郵件服務(wù)代理P1記錄SMTP交互信息,SMTP交互信息包括服務(wù)器名稱、客戶端名稱、發(fā)件人地址、收件人地址和抄送人地址。
S303、客戶端郵件服務(wù)代理P1將SMTP交互信息和郵件分別封裝成為認證數(shù)據(jù)包和郵件數(shù)據(jù)包。
S304、客戶端郵件服務(wù)代理P1確定幀長度,并采用該幀長度對認證數(shù)據(jù)包進行分幀處理,得到第一數(shù)據(jù)幀。
S305、客戶端郵件服務(wù)代理P1將第一數(shù)據(jù)幀發(fā)送至服務(wù)器郵件服務(wù)代理。
S306、服務(wù)器郵件服務(wù)代理收到第一數(shù)據(jù)幀后,將第一數(shù)據(jù)幀合并為認證數(shù)據(jù)包,提取SMTP交互信息進行郵件發(fā)送認證,認證為對服務(wù)器名稱、客戶端名稱、發(fā)件人地址、收件人地址、抄送人地址信息進行有效性檢查。認證成功時,服務(wù)器郵件服務(wù)代理生成認證成功數(shù)據(jù)包。
S307、服務(wù)器郵件服務(wù)代理確定幀長度,并采用該幀長度對認證成功數(shù)據(jù)包進行分幀處理,得到第二數(shù)據(jù)幀。
S308、服務(wù)器郵件服務(wù)代理將第二數(shù)據(jù)幀發(fā)送至客戶端郵件服務(wù)代理P1。
S309、客戶端郵件服務(wù)代理P1接收到第二數(shù)據(jù)幀后,組包成認證成功數(shù)據(jù)包,然后采用該幀長度對郵件數(shù)據(jù)包進行分幀處理,得到第三數(shù)據(jù)幀,并將數(shù)據(jù)幀發(fā)送至服務(wù)器。
S310、服務(wù)器郵件服務(wù)代理收到第三數(shù)據(jù)幀后,將其合并為郵件數(shù)據(jù)包,從中提取出電子郵件,將電子郵件發(fā)送至服務(wù)器。
S311、服務(wù)器郵件服務(wù)代理通過SMTP協(xié)議接收到服務(wù)器向客戶端C2發(fā)送的電子郵件時,將電子郵件封裝成為第二郵件數(shù)據(jù)包。
S312、服務(wù)器郵件服務(wù)代理采用幀長度對第二郵件數(shù)據(jù)包進行分幀處理,得到第四數(shù)據(jù)幀,并將第四數(shù)據(jù)幀發(fā)送至客戶端C2。
S313、客戶端郵件服務(wù)代理P2接收服務(wù)器發(fā)送的第四數(shù)據(jù)幀,根據(jù)第四數(shù)據(jù)幀合并得到第二郵件數(shù)據(jù)包,對第二郵件數(shù)據(jù)包進行解封裝得到電子郵件。
S314、客戶端C2通過POP3協(xié)議從客戶端郵件服務(wù)代理獲取電子郵件。
圖5是本發(fā)明實施例提供的另一種電子郵件傳輸方法的流程圖,該方法由前述系統(tǒng)執(zhí)行,與圖4提供的方法的區(qū)別在于該方法以客戶端C1向客戶端C3發(fā)送郵件為例,參見圖5,該方法包括以下步驟:
在該方法中,客戶端C1將郵件發(fā)送中服務(wù)器的過程與前述步驟S301-S310相同。
S411、客戶端C3通過POP3協(xié)議從服務(wù)器獲取電子郵件。
以上所述僅為本發(fā)明的較佳實施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進等,均應(yīng)包含在本發(fā)明的保護范圍之內(nèi)。