含塊切片結構310的確認響應消息的情況下可以設定用于將其重新傳送的時間段(timeper1d)。在該塊切片結構310所表示的數據包全部由數據接收器120得到接收的情況下,設定的時間段可以被解除。例如,時間段的設定以及時間段的解除可分別伴隨計時器(timer)的驅動以及去除。當塊切片結構310的位6被設定為I時(對應于塊切片結構310的子塊的數據包全部丟失的情況),確認響應消息傳送單元127可以用包含位O到位7為止的8位的確認響應消息代替塊切片結構310的所有位(64位)而發送。
[0088]數據發送器110的重新傳送處理單元117構成為接收確認響應消息。并且,重新傳送處理單元117可基于包含在接收的確認響應消息中的包接收與否信息而從數據包集合內的數據包中識別出新丟失的數據包。例如,當包含有片段位被設定為I的塊切片結構310的確認響應消息被重新傳送處理單元117接收時,重新傳送處理單元117可基于塊切片結構310而識別出丟失的數據包是什么。這種識別可通過與識別在包丟失確認單元125中丟失的數據包的方式相同的方式(例如,與圖4相關而在前面說明過的利用位運算的方式)執行。
[0089]當在重新傳送處理單元117中識別出丟失的數據包時,該數據包將通過包傳送單元115而被重新傳送。并且,重新傳送處理單元117響應于對丟失的數據包的識別而設定可利用于丟失數據的重新傳送的時間段。例如,時間段的設定可伴隨計時器的驅動。在這種示例性實施例中,用于重新傳送的計時器可針對識別為已丟失的數據包設定,而不用對所有數據包設定。丟失的數據包可以由包傳送單元115在設定的時間段內反復地重新傳送。例如,丟失的數據包可以在包傳送單元115中得到周期性的重新傳送,其周期可以是在數據通信系統100的往返時間(Round Trip Time)上加上預定值(可根據數據包的傳送環境和/或數據通信系統100的特性而設定)的值。
[0090]接著,當在數據接收器120的包接收單元121中接收到通過數據發送器110的包傳送單元115重新傳送的數據包時,包丟失確認單元125根據接收重新傳送的數據包而更新包接收與否信息,而確認響應消息傳送單元127將包含有更新的包接收與否信息的確認響應消息發送給數據發送器110。例如,響應于重新傳送的數據包的接收而由確認響應消息傳送單元127發送的確認響應消息可包括片段位被設定為O的塊切片結構310。該確認響應消息具有與前述的響應于存在丟失的數據包的判定而發送的確認響應消息不同的類型,這樣的兩種類型的確認響應消息將借助于塊切片結構310的片段位而得到區分。
[0091]另外,還可以有又一不同類型的確認響應消息從確認響應消息傳送單元127發送到數據發送器110,如果塊切片結構310所覆蓋的子塊的所有數據包都被接收,則可以將包含有表示該內容的位(塊切片結構310的位5)被設定為I的64位塊切片結構310的確認響應消息發送給數據發送器110,且作為替代方案,塊切片結構310中可以用包含位O至位7為止的8位的確認響應消息代替64位而發送給數據發送器110。這種確認響應消息是為了防止不必要的數據包重新傳送而發送。
[0092]當響應于重新傳送的數據包的接收而發送的確認響應消息被數據發送器110的重新傳送處理單元117接收時(例如,重新傳送處理單元117接收到包含有片段位被設定為O的塊切片結構310的確認響應消息的情況),重新傳送處理單元117解除對用于重新傳送該數據包的時間段的設定,從而防止雖然在之前曾經丟失卻已在重新傳送之后由數據接收器120接收到的數據包的不必要的反復的重新傳送。在時間段的設定伴隨計時器的驅動的實施例中,時間段設定的解除伴隨計時器的去除。
[0093]圖5為用于說明根據本發明的實施例而從數據發送器向數據接收器傳遞數據包的步驟的圖。
[0094]數據發送器110傳送包O (501)。數據接收器120接收包0,并根據包O的接收而更新包接收與否信息(502)。
[0095]數據發送器110傳送包I (503)。然而,在圖5所示的例中,包I沒有被數據接收器120接收而丟失。
[0096]數據發送器110傳送包2 (505)。數據接收器120接收包2,且根據包2的接收而更新包接收與否信息,并判定已發生包的丟失(504)。進而,數據接收器120可識別出包I已丟失。例如,這種判定和識別可利用與圖4相關而記載的位運算。響應于存在丟失的包的判定,數據接收器120將包含有更新的包接收與否信息的確認響應消息O發送給數據發送器110 (506)。更新的包接收與否信息表示包O和包2被數據接收器120接收而包I沒有被數據接收器120接收。然而,在圖5所示的例中,確認響應消息O卻沒有傳遞至數據發送器110而丟失。
[0097]數據發送器110傳送包3(507)。然而,在圖5的例中,包3沒有被數據接收器120接收而丟失。
[0098]數據發送器110傳送包4 (509)。數據接收器120接收包4,且根據包4的接收而更新包接收與否信息,并基于包接收與否信息而判定已發生包的丟失(508)。進而,數據接收器120可識別出包4已丟失。響應于存在丟失的包的判定,數據接收器120將包含有更新的包接收與否信息的確認響應消息I發送給數據發送器110 (510)。更新的包接收與否信息表示包O、包2、以及包4在數據接收器120中已被接收而包I和包3在數據接收器120中沒有被接收。
[0099]另外,數據發送器110執行包5的傳送(511)、包6的傳送(513)、以及包7的傳送(515)。數據接收器120在分別接收包5、包6、以及包7時依次更新包接收與否信息(512、514 以及 516)。
[0100]當確認響應消息I被數據發送器110所接收時,數據發送器110設定用于重新傳送通過確認響應消息I而識別為丟失的包的包I的計時器(517),并重新傳送包I (519)。并且,數據發送器110設定用于重新傳送通過確認響應消息I而同樣被識別為丟失的包的包3的計時器(521),并重新傳送包3 (523)。
[0101]數據接收器120接收重新傳送的包1,且根據包I的接收而更新包接收與否信息,并確認重新傳送的包已被接收(518)。接著,數據接收器120將包含有更新的包接收與否信息的確認響應消息2發送給數據發送器110 (520)。更新的包接收與否信息表示包O?包2以及包4?包7已被數據接收器120接收而包3在數據接收器120中沒有被接收。然而在圖5所示的例中,確認響應消息2沒有傳遞至數據發送器110而丟失。
[0102]數據接收器120接收重新傳送的包3,且根據包3的接收而更新包接收與否信息,并確認重新傳送的包已被接收(522)。接著,數據接收器120將包含有更新的包接收與否信息的確認響應消息3發送給數據發送器110 (524)。更新的包接收與否信息表示包O至包7已被數據接收器120接收。
[0103]當確認響應消息3被數據發送器110接收時,數據發送器110基于包含在確認響應消息3中的包接收與否信息而確認已設定計時器的包I和包3在數據接收器120中已被接收,并除去對應于包I的計時器以及對應于包3的計時器。
[0104]另外,本發明的實施例中可以包括記錄有用于在計算機上執行本說明書中記載的方法的程序的計算機可讀存儲介質。所述計算機可讀存儲介質可將程序命令、本地數據文件、本地數據結構等單獨或組合起來包含在內。所述介質可以是為了本發明而特別設計并構成的。計算機可讀存儲介質中例如包括:硬盤、軟盤以及磁帶之類的磁介質;只讀光盤(⑶-ROM)、DVD之類的光記錄介質;光磁光盤(floptical disc)之類的磁光介質以及只讀存儲器(R OM)、隨機存儲器(RAM)、閃存(Flash Memory)等為了存儲并執行程序命令而特別構成的硬件裝置。程序命令的例中不僅可以包括通過編譯器制作的機器語言代碼,而且還可以包括能夠利用解釋器等而在計算機上執行的高級語言代碼。
[0105]以上已通過代表性實施例而對本發明進行了詳細說明,然而應當能夠理解如果是本發明所屬技術領域中具有普通知識的人員即可在不脫離本發明范圍的限度內對所述的實施例進行多種變形。
[0106]因此不應局限于所述的實施例而確定本發明的權利范圍,而應當根據權利要求書及其等價內容來確定。
【主權項】
1.一種數據通信方法,利用面向非連接的協議,包括如下步驟: 隨著從數據發送器接收到多個數據包中的至少一個數據包,針對構成為分別表示所述多個數據包中對應的數據包的接收與否的標志位而執行至少一個按位運算,從而判定所述多個數據包中是否存在丟失的數據包; 進行所述判定的結果,如果判定為存在丟失的數據包,便將包含所述標志位的確認響應消息發送給所述數據發送器。
2.如權利要求1所述的數據通信方法,其中,還