The invention discloses a data transmission method based on UDP protocol, the method comprises: sending and receiving connections through the UDP protocol, the sender will have the same order of the identified data packets into first the queue, with the same order identification packet respectively with said sequence number sent sequentially, the first queue stored with ordered data identified packet; sending the first packet in the queue; the data packet has ordered sign after receiving the data packets into the first packet receiving queue, the packet queue with Yu Cunfang has ordered the identified data packet; according to the sequence number of packets received in the first queue with the same order identifies the data pack, determine the packets with the same order identification are all successfully received. The invention is provided with an orderly sending strategy of the data packet, the receiver determines whether the data packet is successfully received according to the serial number of the data packet, and the reliability of data transmission based on the UDP protocol can be guaranteed to a certain extent.
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)涉及數(shù)據(jù)傳輸領(lǐng)域,具體涉及一種基于UDP協(xié)議的數(shù)據(jù)傳輸方法及系統(tǒng)。
技術(shù)介紹
目前的網(wǎng)絡(luò)游戲一般是基于TCP協(xié)議實(shí)現(xiàn)客戶端與服務(wù)器之間的數(shù)據(jù)傳輸?shù)模琓CP協(xié)議的數(shù)據(jù)傳輸特點(diǎn)是可靠性高,但缺點(diǎn)是延遲性也高。大型MMORPG(多人在線角色扮演)網(wǎng)絡(luò)游戲中,很多游戲功能是對(duì)數(shù)據(jù)包的傳輸即時(shí)性有要求的,即需要低延遲的數(shù)據(jù)傳輸方式進(jìn)行保障。對(duì)于使用TCP協(xié)議的數(shù)據(jù)傳輸方式顯然不能滿足大型MMORPG網(wǎng)絡(luò)游戲的需求。
技術(shù)實(shí)現(xiàn)思路
本專利技術(shù)提供了一種基于UDP協(xié)議的數(shù)據(jù)傳輸方法及系統(tǒng),可以使用低延遲的UDP協(xié)議實(shí)現(xiàn)客戶端與服務(wù)器之間的數(shù)據(jù)傳輸,同時(shí)保證數(shù)據(jù)包傳輸?shù)目煽啃浴1緦@夹g(shù)提供了一種基于UDP協(xié)議的數(shù)據(jù)傳輸方法,發(fā)送方與接收方通過(guò)UDP協(xié)議建立連接,所述方法包括:所述發(fā)送方將具有同一有序標(biāo)識(shí)的數(shù)據(jù)包依次放入第一發(fā)包隊(duì)列中,所述具有同一有序標(biāo)識(shí)的數(shù)據(jù)包分別攜帶表示發(fā)送順序的序列號(hào),所述第一發(fā)包隊(duì)列用于存放具有有序標(biāo)識(shí)的數(shù)據(jù)包;依次發(fā)送所述第一發(fā)包隊(duì)列中的數(shù)據(jù)包;所述接收方在接收到具有有序標(biāo)識(shí)的數(shù)據(jù)包后,將所述數(shù)據(jù)包放入第一收包隊(duì)列中,所述第一收包隊(duì)列用于存放具有有序標(biāo)識(shí)的數(shù)據(jù)包;并根據(jù)所述第一收包隊(duì)列中具有同一有序標(biāo)識(shí)的數(shù)據(jù)包攜帶的序列號(hào),確定具有同一有序標(biāo)識(shí)的數(shù)據(jù)包是否全部成功接收。優(yōu)選地,所述方法還包括:如果在預(yù)設(shè)的時(shí)間閾值內(nèi),所述第一收包隊(duì)列中具有同一有序標(biāo)識(shí)的數(shù)據(jù)包未被全部成功接收,則所述接收方向所述發(fā)送方返回重發(fā)請(qǐng)求,所述重發(fā)請(qǐng)
求用于請(qǐng)求所述發(fā)送方重新發(fā)送未被成功接收的數(shù)據(jù)包。優(yōu)選地,所述方法還包括:所述發(fā)送方在發(fā)送所述具有 ...
【技術(shù)保護(hù)點(diǎn)】
一種基于UDP協(xié)議的數(shù)據(jù)傳輸方法,其特征在于,發(fā)送方與接收方通過(guò)UDP協(xié)議建立連接,所述方法包括:所述發(fā)送方將具有同一有序標(biāo)識(shí)的數(shù)據(jù)包依次放入第一發(fā)包隊(duì)列中,所述具有同一有序標(biāo)識(shí)的數(shù)據(jù)包分別攜帶表示發(fā)送順序的序列號(hào),所述第一發(fā)包隊(duì)列用于存放具有有序標(biāo)識(shí)的數(shù)據(jù)包;依次發(fā)送所述第一發(fā)包隊(duì)列中的數(shù)據(jù)包;所述接收方在接收到具有有序標(biāo)識(shí)的數(shù)據(jù)包后,將所述數(shù)據(jù)包放入第一收包隊(duì)列中,所述第一收包隊(duì)列用于存放具有有序標(biāo)識(shí)的數(shù)據(jù)包;并根據(jù)所述第一收包隊(duì)列中具有同一有序標(biāo)識(shí)的數(shù)據(jù)包攜帶的序列號(hào),確定具有同一有序標(biāo)識(shí)的數(shù)據(jù)包是否全部成功接收。
【技術(shù)特征摘要】
1.一種基于UDP協(xié)議的數(shù)據(jù)傳輸方法,其特征在于,發(fā)送方與接收方通過(guò)UDP協(xié)議建立連接,所述方法包括:所述發(fā)送方將具有同一有序標(biāo)識(shí)的數(shù)據(jù)包依次放入第一發(fā)包隊(duì)列中,所述具有同一有序標(biāo)識(shí)的數(shù)據(jù)包分別攜帶表示發(fā)送順序的序列號(hào),所述第一發(fā)包隊(duì)列用于存放具有有序標(biāo)識(shí)的數(shù)據(jù)包;依次發(fā)送所述第一發(fā)包隊(duì)列中的數(shù)據(jù)包;所述接收方在接收到具有有序標(biāo)識(shí)的數(shù)據(jù)包后,將所述數(shù)據(jù)包放入第一收包隊(duì)列中,所述第一收包隊(duì)列用于存放具有有序標(biāo)識(shí)的數(shù)據(jù)包;并根據(jù)所述第一收包隊(duì)列中具有同一有序標(biāo)識(shí)的數(shù)據(jù)包攜帶的序列號(hào),確定具有同一有序標(biāo)識(shí)的數(shù)據(jù)包是否全部成功接收。2.根據(jù)權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,所述方法還包括:如果在預(yù)設(shè)的時(shí)間閾值內(nèi),所述第一收包隊(duì)列中具有同一有序標(biāo)識(shí)的數(shù)據(jù)包未被全部成功接收,則所述接收方向所述發(fā)送方返回重發(fā)請(qǐng)求,所述重發(fā)請(qǐng)求用于請(qǐng)求所述發(fā)送方重新發(fā)送未被成功接收的數(shù)據(jù)包。3.根據(jù)權(quán)利要求1所述的數(shù)據(jù)傳輸方法,其特征在于,所述方法還包括:所述發(fā)送方在發(fā)送所述具有同一有序標(biāo)識(shí)的數(shù)據(jù)包中的任一數(shù)據(jù)包后開始計(jì)時(shí),并在預(yù)設(shè)的時(shí)間閾值內(nèi)未接收到來(lái)自所述接收方的確認(rèn)響應(yīng)后,重新發(fā)送所述數(shù)據(jù)包。4.根據(jù)權(quán)利要求1-3中任一項(xiàng)所述的數(shù)據(jù)傳輸方法,其特征在于,所述方法還包括:所述發(fā)送方將具有可靠標(biāo)識(shí)的數(shù)據(jù)包放入第二發(fā)包隊(duì)列中,所述第二發(fā)包隊(duì)列用于存放具有可靠標(biāo)識(shí)的數(shù)據(jù)包;發(fā)送所述第二發(fā)包隊(duì)列中的數(shù)據(jù)包;所述接收方在接收到具有可靠標(biāo)識(shí)的數(shù)據(jù)包后,向所述發(fā)送方返回確認(rèn)響應(yīng)。5.根據(jù)權(quán)利要求4所述的數(shù)據(jù)傳輸方法,其特征在于,所述方法還包括:所述發(fā)送方在發(fā)送所述第二發(fā)包隊(duì)列中的任一數(shù)據(jù)包后開始計(jì)時(shí),并在預(yù)設(shè)的時(shí)間閾值內(nèi)未接收到來(lái)自所述接收方的確認(rèn)響應(yīng)后,重新發(fā)送所述數(shù)據(jù)包。6.根據(jù)權(quán)利要求4所述的數(shù)據(jù)傳輸方法,其特征在于,所述發(fā)送方與所
\t述接收方利用通道進(jìn)行數(shù)據(jù)傳輸,所述通道包括第一通道和第二通道,所述第一通道用于傳輸具有有序標(biāo)識(shí)的數(shù)據(jù)包,所述第二通道用于傳輸具有可靠標(biāo)識(shí)的數(shù)據(jù)包;相應(yīng)的,所述發(fā)送方依次發(fā)送所述第一發(fā)包隊(duì)列中的數(shù)據(jù)包,具體為,所述發(fā)送方通過(guò)所述第一通道,依次發(fā)送所述第一發(fā)包隊(duì)列中的數(shù)據(jù)包;相應(yīng)的,所述發(fā)送方發(fā)送所述第二發(fā)包隊(duì)列中的數(shù)據(jù)包,具體為,所述發(fā)送方通過(guò)所述第...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:韋青,李斌,王彬,
申請(qǐng)(專利權(quán))人:北京暢游天下網(wǎng)絡(luò)技術(shù)有限公司,
類型:發(fā)明
國(guó)別省市:北京;11
還沒(méi)有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。