基于UDP實(shí)現(xiàn)E-Mail傳輸
工作過程描述:
客戶端描述:
1. Client(以下簡(jiǎn)稱C端)端將郵件以規(guī)定的大小封裝為符合要求的UDP包。
2. 將封裝好的UDP包發(fā)出,并等待Server(以下簡(jiǎn)稱S端)端收到相應(yīng)的UDP包后返回的回應(yīng)Acknowledge(以下簡(jiǎn)稱為ACK)。若收到的為Positive ACK,則繼續(xù)發(fā)包;若收到的為Negtive ACK,則將應(yīng)發(fā)的包重發(fā)。
3. 直到C端將所有要發(fā)的包都發(fā)完,并都已經(jīng)收到S端的回應(yīng),最后發(fā)一個(gè)End包,直接關(guān)閉此進(jìn)程。
服務(wù)器端描述:
1. S端啟動(dòng)服務(wù)進(jìn)程,并監(jiān)聽相應(yīng)端口。
2. 若收到C端發(fā)出的有關(guān)請(qǐng)求,按如下情況給出相應(yīng)的反映:
a. 將收到的包進(jìn)行檢測(cè),若收到的包有錯(cuò)則拋棄(discard),并發(fā)給C端一個(gè)negtive ACK。
b. 將收到的包進(jìn)行檢測(cè),若收到的包正常,則將此包進(jìn)行解包,將內(nèi)容輸出至一臨時(shí)文件;并發(fā)給C端一個(gè)positive ACK。
3.依次收到來自C斷的包,直到收到end為止,并關(guān)閉此進(jìn)程,轉(zhuǎn)回監(jiān)聽狀態(tài)。
標(biāo)簽:
UDP
E-Mail
Client
封裝
上傳時(shí)間:
2014-12-08
上傳用戶:sxdtlqqjl