(57)【要約】【課題】送信端末からのデータ転送状況が悪く、かつ、自端末からの通信電波が届く範囲において、自端末が送信端末から受信するデータと同じデータを同じタイミングでその送信端末から受信している隣接端末が存在しない場合でも、自端末が送信端末から受信できなかったデータを回復することのできる機能を備えた受信端末を提供する。【解決手段】受信端末において送信端末からのデータ受信状況が悪く、同じデータを同じタイミングで受信している端末が当該受信端末の通信範囲に存在していない場合、近隣に、送信端末が送信しているデータと同一のデータを記憶しているデータ通信支援端末がいるかどうか探索し、存在する場合に該データ通信支援端末からデータを受信する。【選択図】図１
2010148029.tif 000002
【特許請求の範囲】
【請求項１】
送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ支援端末からの送信を受諾するかどうかを決定するデータ通信支援受入部と、
前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定める確認応答頻度制御部と、
前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、
前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、
を備えることを特徴とする受信端末。
【請求項２】
前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの前記データ支援端末からの送信を受諾すると決定する
ことを特徴とする請求項１に記載の受信端末。
【請求項３】
前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データの未受信に基づいて自端末が一定数以上の否定的確認応答を送信したと検知した場合、前記データの前記データ支援端末からの送信を受諾すると決定する
ことを特徴とする請求項１に記載の受信端末。
【請求項４】
前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信した前記データ全体の一定量以下しか自端末で受信できていないと判定した場合、前記データの前記データ支援端末からの送信を受諾すると決定する
ことを特徴とする請求項１に記載の受信端末。
【請求項５】
前記確認応答頻度制御部は、前記データ通信支援端末数の増加に伴い、前記送信端末へ否定的確認応答を送信する確率を減少させる
ことを特徴とする請求項１〜請求項４に記載の受信端末。
【請求項６】
前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定する
ことを特徴とする請求項１〜請求項４に記載の受信端末。
【請求項７】
送信端末から送信されたデータを受信する受信端末の通信を傍受する他端末通信検知部と、
前記傍受した通信における否定的確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定するデータ通信支援判定部と、
前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせるデータ通信支援部と、
前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する支援通信制御部と、
を備えることを特徴とするデータ通信支援端末。
【請求項８】
前記データ通信支援判定部は、前記受信状況の判定において、前記送信端末が送信する否定的確認応答を傍受し、一定数以上の否定的確認応答を検知した場合、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定する
ことを特徴とする請求項７に記載のデータ通信支援端末。
【請求項９】
前記データ通信支援判定部は、前記受信状況の判定において、前記送信端末が送信する否定的確認応答を傍受し、当該否定的確認応答に含まれるシーケンス番号から取得できるパケットロス数が一定数以上あると判定した場合、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定する
ことを特徴とする請求項７に記載のデータ通信支援端末。
【請求項１０】
前記支援通信制御部は、他の通信端末と通信をしてない場合、前記受信端末への前記データの送信を開始すると決定する
ことを特徴とする請求項７〜請求項９に記載のデータ通信支援端末。
【請求項１１】
送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定するデータ通信支援要請部と、
前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定める確認応答頻度制御部と、
前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、
前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、
を備えることを特徴とする受信端末。
【請求項１２】
前記データ通信支援要請部は、前記受信状況として、前記送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項１１に記載の受信端末。
【請求項１３】
前記データ通信支援要請部は、前記受信状況として、前記送信端末が送信する前記データの未受信に基づいて自端末が一定数以上の否定的確認応答を送信したと検知した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項１１に記載の受信端末。
【請求項１４】
前記データ通信支援要請部は、前記受信状況として、前記送信端末が送信した前記データ全体の一定量以下しか自端末で受信できていないと判定した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項１１に記載の受信端末。
【請求項１５】
前記確認応答頻度制御部は、前記データ通信支援端末数の増加に伴い、前記送信端末へ否定的確認応答を送信する確率を減少させる
ことを特徴とする請求項１１〜請求項１４に記載の受信端末。
【請求項１６】
前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定する
ことを特徴とする請求項１１〜請求項１５に記載の受信端末。
【請求項１７】
送信端末から送信されたデータを受信する受信端末からの、当該データの送信要請を示す送信要請情報の受信に基づいて、その送信要請情報で示される前記データの全てまたは一部を自端末の記憶部に保持しているかを確認し、保持している場合であって、その送信要請情報で示される前記データの送信要請を受諾すると決定した場合には、前記送信要請情報の受信に要請受諾を示す送信要請応答情報を送信するデータ通信支援部と、
前記送信要請応答情報の送信に基づいて、前記受信端末へのデータ送信開始タイミングを決定する支援通信制御部と、
を備えることを特徴とするデータ通信支援端末。
【請求項１８】
前記データ通信支援部は、前記受信端末から送信された送信要請情報で示される前記データを一定量以上、自端末の記憶部に保持していると判定した場合に、前記データの送信要請を受諾すると決定する
ことを特徴とする請求項１７に記載のデータ通信支援端末。
【請求項１９】
前記支援通信制御部は、他の通信端末と通信をしてない場合、前記受信端末への前記データの送信を開始すると決定する
ことを特徴とする請求項７〜請求項９に記載のデータ通信支援端末。
【請求項２０】
送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ通信支援端末からの送信を受諾するかどうかを決定するデータ通信支援受入部と、
前記データの前記データ通信支援端末からの送信を受諾すると決定した場合に、前記送信端末との通信セッション切断指示を行うセッション切断指示部と、
前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、
前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、
を備えることを特徴とする受信端末。
【請求項２１】
前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの前記データ支援端末からの送信を受諾すると決定する
ことを特徴とする請求項２０に記載の受信端末。
【請求項２２】
前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データの未受信に基づいて、自端末が同一の確認応答番号を格納した確認応答を一定数以上重複して送信したと検知した場合、前記データの前記データ支援端末からの送信を受諾すると決定する
ことを特徴とする請求項２０に記載の受信端末。
【請求項２３】
前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データを一定量以上受信していない場合、前記データの前記データ支援端末からの送信を受諾すると決定する
ことを特徴とする請求項２０に記載の受信端末。
【請求項２４】
前記セッション切断指示部は、前記データ通信支援端末からの前記データの送信提案情報を受信したことを契機に、前記送信端末とのセッションを切断する
ことを特徴とする請求項２０〜請求項２３に記載の受信端末。
【請求項２５】
前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定する
ことを特徴とする請求項２０〜請求項２４に記載の受信端末。
【請求項２６】
送信端末から送信されたデータを受信する受信端末の通信を傍受する他端末通信検知部と、
前記傍受した通信における確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定するデータ通信支援判定部と、
前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせるデータ通信支援部と、
前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する支援通信制御部と、
を備えることを特徴とするデータ通信支援端末。
【請求項２７】
前記データ通信支援判定部は、前記受信状況として、前記傍受した通信における確認応答に格納されている確認応答番号が、単位時間当たりに一定値以上更新されていないと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定する
ことを特徴とする請求項２６に記載のデータ通信支援端末。
【請求項２８】
前記データ通信支援判定部は、前記受信状況として、前記傍受した通信において同一の確認応答番号が格納された確認応答を一定数以上重複して観測したと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定する
ことを特徴とする請求項２６に記載のデータ通信支援端末。
【請求項２９】
前記データ通信支援判定部は、前記受信状況として、前記傍受した通信のうちの確認応答に格納される確認応答番号に基づいて、前記受信端末が前記送信端末の送信した前記データを一定量以上受信していないと判定した場合、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定する
ことを特徴とする請求項２６に記載のデータ通信支援端末。
【請求項３０】
前記支援通信制御部は、他の通信端末と通信をしてない場合、前記受信端末への前記データの送信を開始すると決定する
ことを特徴とする請求項２６〜請求項２９に記載のデータ通信支援端末。
【請求項３１】
送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定するデータ通信支援要請部と、
前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記送信端末との通信セッション切断指示を行うセッション切断指示部と、
前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、
前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、
を備えることを特徴とする受信端末。
【請求項３２】
前記データ通信支援要請部は、前記受信状況として、前記送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項３１に記載の受信端末。
【請求項３３】
前記データ通信支援要請部は、前記受信状況として、前記送信端末と自端末との通信において同一の確認応答番号が格納された確認応答を一定数以上重複して送信した場合に、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項３１に記載の受信端末。
【請求項３４】
前記データ通信支援要請部は、前記受信状況として、前記送信端末と自端末との通信のうちの確認応答に格納される確認応答番号に基づいて、自端末が前記送信端末の送信した前記データを一定量以上受信していないと判定した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項３１に記載の受信端末。
【請求項３５】
前記セッション切断指示部は、前記データ通信支援端末から前記送信要請に応じたデータ送信開始要求を受信したことを契機に、前記送信端末とのセッションを切断する
ことを特徴とする請求項３１〜請求項３４に記載の受信端末。
【請求項３６】
前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定する
ことを特徴とする請求項３１〜請求項３５に記載の受信端末。
【請求項３７】
自端末の通信圏外の第１の送信端末が送信しているデータを受信し、当該データの全てまたは一部を保持しているデータ通信支援端末の前記第１の送信端末との通信を傍受する他端末通信検知部と、
前記第１の送信端末の通信圏外に存在する第２の送信端末が送信しているデータの自端末での受信状況と、前記データ通信支援端末の前記第１の送信端末からの前記データの受信状況とに基づいて、前記データ通信支援端末に対して該データの送信要請を示す送信要請情報を送信すべきか否かを決定するデータ通信支援要請部と、
前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記第２の送信端末との通信セッション切断指示を行うセッション切断指示部と、
前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、
前記第１の送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、
を備えることを特徴とする受信端末。
【請求項３８】
前記データ通信支援要請部は、前記受信状況として、前記第１の送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項３７に記載の受信端末。
【請求項３９】
前記データ通信支援要請部は、前記受信状況として、前記第１の送信端末と自端末との通信において同一の確認応答番号が格納された確認応答を一定数以上重複して送信した場合に、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項３７に記載の受信端末。
【請求項４０】
前記データ通信支援要請部は、前記受信状況として、前記第１の送信端末と自端末との通信のうちの確認応答に格納される確認応答番号に基づいて、自端末が前記第１の送信端末の送信した前記データを一定量以上受信していないと判定した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項３７に記載の受信端末。
【請求項４１】
前記データ通信支援要請部は、前記データ通信支援端末の前記第２の送信端末からの前記データの受信状況として、当該データ通信支援端末と前記第２の送信端末との通信の傍受に基づいて、その通信の確認応答に格納される確認応答番号から、前記データのうちの一定量以上を受信していると確認できた場合に、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定する
ことを特徴とする請求項３７〜請求項４０に記載の受信端末。
【請求項４２】
前記セッション切断指示部は、前記データ通信支援端末から前記送信要請に応じたデータ送信開始要求を受信したことを契機に、前記送信端末とのセッションを切断する
ことを特徴とする請求項３７〜請求項４１に記載の受信端末。
【請求項４３】
前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定する
ことを特徴とする請求項３７〜請求項４２に記載の受信端末。
【請求項４４】
受信端末における処理方法であって、
前記受信端末のデータ通信支援受入部が、送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ支援端末からの送信を受諾するかどうかを決定し、
前記受信端末の確認応答頻度制御部が、前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定め、
前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、
前記受信端末のデータ受信部が、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する
ことを特徴とする処理方法。
【請求項４５】
受信端末における処理方法であって、
前記受信端末のデータ通信支援要請部が、送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定し、
前記受信端末の確認応答頻度制御部が、前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定め、
前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、
前記受信端末のデータ受信部が、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する
ことを特徴とする処理方法。
【請求項４６】
受信端末における処理方法であって、
前記受信端末のデータ通信支援受入部が、送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ通信支援端末からの送信を受諾するかどうかを決定し、
前記受信端末のセッション切断指示部が、前記データの前記データ通信支援端末からの送信を受諾すると決定した場合に、前記送信端末との通信セッション切断指示を行い、
前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、
前記受信端末のデータ受信部が、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する
ことを特徴とする処理方法。
【請求項４７】
受信端末における処理方法であって、
前記受信端末のデータ通信支援要請部が、送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定し、
前記受信端末のセッション切断指示部が、前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記送信端末との通信セッション切断指示を行い、
前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、
前記受信端末のデータ受信部が、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する
ことを特徴とする処理方法。
【請求項４８】
受信端末における処理方法であって、
前記受信端末の他端末通信検知部が、自端末の通信圏外の第１の送信端末が送信しているデータを受信し、当該データの全てまたは一部を保持しているデータ通信支援端末の前記第１の送信端末との通信を傍受し、
前記受信端末のデータ通信支援要請部が、前記第１の送信端末の通信圏外に存在する第２の送信端末が送信しているデータの自端末での受信状況と、前記データ通信支援端末の前記第１の送信端末からの前記データの受信状況とに基づいて、前記データ通信支援端末に対して該データの送信要請を示す送信要請情報を送信すべきか否かを決定し、
前記受信端末のセッション切断指示部が、前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記第２の送信端末との通信セッション切断指示を行い、
前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、
前記受信端末のデータ受信部が、前記第１の送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する
ことを特徴とする処理方法。
【請求項４９】
受信端末のコンピュータを、
送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ支援端末からの送信を受諾するかどうかを決定する手段、
前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定める手段、
前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、
前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、
として機能させるプログラム。
【請求項５０】
受信端末のコンピュータを、
送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定する手段、
前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定める手段、
前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、
前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、
として機能させるプログラム。
【請求項５１】
受信端末のコンピュータを、
送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ通信支援端末からの送信を受諾するかどうかを決定する手段、
前記データの前記データ通信支援端末からの送信を受諾すると決定した場合に、前記送信端末との通信セッション切断指示を行う手段、
前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、
前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、
として機能させるプログラム。
【請求項５２】
受信端末のコンピュータを、
送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定する手段、
前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記送信端末との通信セッション切断指示を行う手段、
前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、
前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、
として機能させるプログラム。
【請求項５３】
受信端末のコンピュータを、
自端末の通信圏外の第１の送信端末が送信しているデータを受信し、当該データの全てまたは一部を保持しているデータ通信支援端末の前記第１の送信端末との通信を傍受する手段、
前記第１の送信端末の通信圏外に存在する第２の送信端末が送信しているデータの自端末での受信状況と、前記データ通信支援端末の前記第１の送信端末からの前記データの受信状況とに基づいて、前記データ通信支援端末に対して該データの送信要請を示す送信要請情報を送信すべきか否かを決定する手段、
前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記第２の送信端末との通信セッション切断指示を行う手段、
前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、
前記第１の送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、
として機能させるプログラム。
【請求項５４】
データ通信支援端末における処理方法であって、
前記データ通信支援端末の他端末通信検知部が、送信端末から送信されたデータを受信する受信端末の通信を傍受し、
前記データ通信支援端末のデータ通信支援判定部が、前記傍受した通信における否定的確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定し、
前記データ通信支援端末のデータ通信支援部が、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせ、
前記データ通信支援端末の支援通信制御部が、前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する
ことを特徴とする処理方法。
【請求項５５】
データ通信支援端末における処理方法であって、
前記データ通信支援端末のデータ通信支援部が、送信端末から送信されたデータを受信する受信端末からの、当該データの送信要請を示す送信要請情報の受信に基づいて、その送信要請情報で示される前記データの全てまたは一部を自端末の記憶部に保持しているかを確認し、保持している場合であって、その送信要請情報で示される前記データの送信要請を受諾すると決定した場合には、前記送信要請情報の受信に要請受諾を示す送信要請応答情報を送信し、
前記データ通信支援端末の支援通信制御部が、前記送信要請応答情報の送信に基づいて、前記受信端末へのデータ送信開始タイミングを決定する
ことを特徴とする処理方法。
【請求項５６】
データ通信支援端末における処理方法であって、
前記データ通信支援端末の他端末通信検知部が、送信端末から送信されたデータを受信する受信端末の通信を傍受し、
前記データ通信支援端末のデータ通信支援判定部が、前記傍受した通信における確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定し、
前記データ通信支援端末のデータ通信支援部が、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせ、
前記データ通信支援端末の支援通信制御部が、前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する
ことを特徴とする処理方法。
【請求項５７】
データ通信支援端末のコンピュータを、
送信端末から送信されたデータを受信する受信端末の通信を傍受する手段、
前記傍受した通信における否定的確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定する手段、
前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせる手段、
前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する手段、
として機能させるプログラム。
【請求項５８】
データ通信支援端末のコンピュータを、
送信端末から送信されたデータを受信する受信端末からの、当該データの送信要請を示す送信要請情報の受信に基づいて、その送信要請情報で示される前記データの全てまたは一部を自端末の記憶部に保持しているかを確認し、保持している場合であって、その送信要請情報で示される前記データの送信要請を受諾すると決定した場合には、前記送信要請情報の受信に要請受諾を示す送信要請応答情報を送信する手段、
前記送信要請応答情報の送信に基づいて、前記受信端末へのデータ送信開始タイミングを決定する手段、
として機能させるプログラム。
【請求項５９】
データ通信支援端末のコンピュータを、
送信端末から送信されたデータを受信する受信端末の通信を傍受する手段、
前記傍受した通信における確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定する手段、
前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせる手段、
前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する手段、
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信側におけるデータの受信精度を上げることができる受信端末及びその処理方法とプログラム、データ通信支援端末及びその処理方法とプログラムに関する。
【背景技術】
【０００２】
移動可能な無線端末で構成されるネットワークでの通信において、当該無線端末の移動、無線端末の発信する電波強度、無線端末が位置する周辺の障害物等の影響で、宛先端末までの通信経路が確保できない状況が発生する場合がある。このように、通信しようとしたときに宛先端末までの通信経路が確立できないことを想定して設計されたプロトコルとして、Delay-Tolerant Network Architecture（非特許文献１）が提案されている（以下、ＤＴＮと呼ぶ）。
【０００３】
ＤＴＮでの特徴について図１９を用いて説明する。
図１９は、送信端末、中継端末１、中継端末２、受信端末で構成されている。このネットワークにおいて、送信端末から中継端末１、中継端末２を経由して受信端末に対してデータを送信するものとする。このとき、送信端末からデータを受信した中継端末１は、データを次の転送先である中継端末２へ転送するため、受信部１−１からデータ転送部１−２へデータを渡す。また、受信部１−１はデータ蓄積部１−３にデータを蓄積する。そして、転送部１−２は中継端末２へデータを転送する。また中継端末２も同様にデータ蓄積部２−３にデータを蓄積して、データを受信端末へデータを転送する。このように中継端末１，２においてデータを蓄積しながらそのデータを転送することで、リンクが切断されても、宛先へのデータ転送が見込める端末が近づいてリンク接続できれば、再度、データ転送することが可能となる。
【０００４】
また、このようなネットワークにおいてブロードキャスト通信、マルチキャスト通信においても同様にデータを蓄積しながら転送し宛先まで送信する。
図２０は、送信端末、中継端末１〜４、受信端末１〜６で構成されているネットワークでマルチキャスト通信を行っている様子を表している。この図で示すように、送信端末は、各受信端末に対して、矢印で示した経路でデータを送信し、各中継端末を受信したデータを蓄積させながら各受信端末へデータ配信を行う。そして、図２０において、中継端末２は、受信端末２、中継端末４、中継端末５と複数の端末に対してデータを転送している。このように複数のデータを受信する無線端末が存在する場合、中継端末２と通信を行う受信端末２、中継端末４、中継端末５においては中継端末２との通信リンクの品質はすべて同じであるとは限らない。前述でも述べたが、移動、電波強度、障害物等の影響でロスが頻発し、受信品質が悪い無線端末も存在すれば、パケットロスなどがなく、品質のよい通信が実現できる無線端末も存在する。これに対して特許文献１では、同報通信を行っている中で、ある端末において受信パケットロスが発生すると、同じデータを受信している隣接の受信端末が、再送を行う方法が示されている。
【非特許文献１】V. Serf et al. “RFC4838: Delay-Tolerant Network Architecture,” IETF, April 2007.
【特許文献１】特開２００７−２６６８７６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ここで、特許文献１の技術では、同報配信において受信側の端末で受信データのロスが発生した場合に、同じデータを受信している隣接の端末が再送を行っている。しかしながら、この特許文献１の技術では、自端末からの通信電波の届く範囲に同じタイミングで同じデータを送信端末から受信している端末が存在すればその端末からデータを受信することが可能であるが、自端末からの通信電波の届く範囲に同じタイミングで同じデータを送信端末から受信している端末が存在しない場合もあり、このようなときには、受信端末における受信データのロスに対しては、送信端末がそのデータを再送しなければ受信端末における受信データのロスを回復することはできない。
【０００６】
また、受信端末の移動、電波強度、障害物等の影響により、送信端末からほぼデータを受信できない状況が発生する場合がある。この場合、特許文献１の技術では受信端末における受信データのロスを回復することはできない。したがって、送信端末からのデータ転送状況が悪く、かつ、自端末からの通信電波が届く範囲において、自端末が送信端末から受信するデータと同じデータを同じタイミングで受信している隣接端末が存在しない場合のデータ通信をどのように行うかが課題となっている。
【０００７】
そこでこの発明は、送信端末からのデータ転送状況が悪く、かつ、自端末からの通信電波が届く範囲において、自端末が送信端末から受信するデータと同じデータを同じタイミングでその送信端末から受信している隣接端末が存在しない場合でも、自端末が送信端末から受信できなかったデータを回復することのできる機能を備えた受信端末及びその処理方法とプログラム、データ通信支援端末及びその処理方法とプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、本発明は、送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ支援端末からの送信を受諾するかどうかを決定するデータ通信支援受入部と、前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定める確認応答頻度制御部と、前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、を備えることを特徴とする受信端末である。
【０００９】
また本発明は、上述の受信端末において、前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの前記データ支援端末からの送信を受諾すると決定することを特徴とする。
【００１０】
また本発明は、上述の受信端末において、前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データの未受信に基づいて自端末が一定数以上の否定的確認応答を送信したと検知した場合、前記データの前記データ支援端末からの送信を受諾すると決定することを特徴とする。
【００１１】
また本発明は、上述の受信端末において、前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信した前記データ全体の一定量以下しか自端末で受信できていないと判定した場合、前記データの前記データ支援端末からの送信を受諾すると決定することを特徴とする。
【００１２】
また本発明は、上述の受信端末において、前記確認応答頻度制御部は、前記データ通信支援端末数の増加に伴い、前記送信端末へ否定的確認応答を送信する確率を減少させることを特徴とする。
【００１３】
また本発明は、上述の受信端末において、前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定することを特徴とする。
【００１４】
また本発明は、送信端末から送信されたデータを受信する受信端末の通信を傍受する他端末通信検知部と、前記傍受した通信における否定的確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定するデータ通信支援判定部と、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせるデータ通信支援部と、前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する支援通信制御部と、を備えることを特徴とするデータ通信支援端末である。
【００１５】
また本発明は、上述のデータ通信支援端末において、前記データ通信支援判定部は、前記受信状況の判定において、前記送信端末が送信する否定的確認応答を傍受し、一定数以上の否定的確認応答を検知した場合、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定することを特徴とする。
【００１６】
また本発明は、上述のデータ通信支援端末において、前記データ通信支援判定部は、前記受信状況の判定において、前記送信端末が送信する否定的確認応答を傍受し、当該否定的確認応答に含まれるシーケンス番号から取得できるパケットロス数が一定数以上あると判定した場合、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定することを特徴とする。
【００１７】
また本発明は、上述のデータ通信支援端末において、前記支援通信制御部は、他の通信端末と通信をしてない場合、前記受信端末への前記データの送信を開始すると決定することを特徴とする。
【００１８】
また本発明は、送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定するデータ通信支援要請部と、前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定める確認応答頻度制御部と、前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、を備えることを特徴とする受信端末である。
【００１９】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記受信状況として、前記送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００２０】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記受信状況として、前記送信端末が送信する前記データの未受信に基づいて自端末が一定数以上の否定的確認応答を送信したと検知した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００２１】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記受信状況として、前記送信端末が送信した前記データ全体の一定量以下しか自端末で受信できていないと判定した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００２２】
また本発明は、上述の受信端末において、前記確認応答頻度制御部は、前記データ通信支援端末数の増加に伴い、前記送信端末へ否定的確認応答を送信する確率を減少させることを特徴とする。
【００２３】
また本発明は、上述の受信端末において、前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定することを特徴とする。
【００２４】
また本発明は、送信端末から送信されたデータを受信する受信端末からの、当該データの送信要請を示す送信要請情報の受信に基づいて、その送信要請情報で示される前記データの全てまたは一部を自端末の記憶部に保持しているかを確認し、保持している場合であって、その送信要請情報で示される前記データの送信要請を受諾すると決定した場合には、前記送信要請情報の受信に要請受諾を示す送信要請応答情報を送信するデータ通信支援部と、前記送信要請応答情報の送信に基づいて、前記受信端末へのデータ送信開始タイミングを決定する支援通信制御部と、を備えることを特徴とするデータ通信支援端末である。
【００２５】
また本発明は、上述のデータ通信支援端末において、前記データ通信支援部は、前記受信端末から送信された送信要請情報で示される前記データを一定量以上、自端末の記憶部に保持していると判定した場合に、前記データの送信要請を受諾すると決定することを特徴とする。
【００２６】
また本発明は、上述のデータ通信支援端末において、前記支援通信制御部は、他の通信端末と通信をしてない場合、前記受信端末への前記データの送信を開始すると決定することを特徴とする。
【００２７】
また本発明は、送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ通信支援端末からの送信を受諾するかどうかを決定するデータ通信支援受入部と、前記データの前記データ通信支援端末からの送信を受諾すると決定した場合に、前記送信端末との通信セッション切断指示を行うセッション切断指示部と、前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、を備えることを特徴とする受信端末である。
【００２８】
また本発明は、上述の受信端末において、前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの前記データ支援端末からの送信を受諾すると決定することを特徴とする。
【００２９】
また本発明は、上述の受信端末において、前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データの未受信に基づいて、自端末が同一の確認応答番号を格納した確認応答を一定数以上重複して送信したと検知した場合、前記データの前記データ支援端末からの送信を受諾すると決定することを特徴とする。
【００３０】
また本発明は、上述の受信端末において、前記データ通信支援受入部は、前記受信状況として、前記送信端末が送信する前記データを一定量以上受信していない場合、前記データの前記データ支援端末からの送信を受諾すると決定することを特徴とする。
【００３１】
また本発明は、上述の受信端末において、前記セッション切断指示部は、前記データ通信支援端末からの前記データの送信提案情報を受信したことを契機に、前記送信端末とのセッションを切断することを特徴とする。
【００３２】
また本発明は、上述の受信端末において、前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定することを特徴とする。
【００３３】
また本発明は、送信端末から送信されたデータを受信する受信端末の通信を傍受する他端末通信検知部と、前記傍受した通信における確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定するデータ通信支援判定部と、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせるデータ通信支援部と、前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する支援通信制御部と、を備えることを特徴とするデータ通信支援端末である。
【００３４】
また本発明は、上述のデータ通信支援端末において、前記データ通信支援判定部は、前記受信状況として、前記傍受した通信における確認応答に格納されている確認応答番号が、単位時間当たりに一定値以上更新されていないと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定することを特徴とする。
【００３５】
また本発明は、上述のデータ通信支援端末において、前記データ通信支援判定部は、前記受信状況として、前記傍受した通信において同一の確認応答番号が格納された確認応答を一定数以上重複して観測したと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定することを特徴とする。
【００３６】
また本発明は、上述のデータ通信支援端末において、前記データ通信支援判定部は、前記受信状況として、前記傍受した通信のうちの確認応答に格納される確認応答番号に基づいて、前記受信端末が前記送信端末の送信した前記データを一定量以上受信していないと判定した場合、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定することを特徴とする。
【００３７】
また本発明は、上述のデータ通信支援端末において、前記支援通信制御部は、他の通信端末と通信をしてない場合、前記受信端末への前記データの送信を開始すると決定することを特徴とする。
【００３８】
また本発明は、送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定するデータ通信支援要請部と、前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記送信端末との通信セッション切断指示を行うセッション切断指示部と、前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、を備えることを特徴とする受信端末である。
【００３９】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記受信状況として、前記送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００４０】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記受信状況として、前記送信端末と自端末との通信において同一の確認応答番号が格納された確認応答を一定数以上重複して送信した場合に、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００４１】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記受信状況として、前記送信端末と自端末との通信のうちの確認応答に格納される確認応答番号に基づいて、自端末が前記送信端末の送信した前記データを一定量以上受信していないと判定した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００４２】
また本発明は、上述の受信端末において、前記セッション切断指示部は、前記データ通信支援端末から前記送信要請に応じたデータ送信開始要求を受信したことを契機に、前記送信端末とのセッションを切断することを特徴とする。
【００４３】
また本発明は、上述の受信端末において、前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定することを特徴とする。
【００４４】
また本発明は、自端末の通信圏外の第１の送信端末が送信しているデータを受信し、当該データの全てまたは一部を保持しているデータ通信支援端末の前記第１の送信端末との通信を傍受する他端末通信検知部と、前記第１の送信端末の通信圏外に存在する第２の送信端末が送信しているデータの自端末での受信状況と、前記データ通信支援端末の前記第１の送信端末からの前記データの受信状況とに基づいて、前記データ通信支援端末に対して該データの送信要請を示す送信要請情報を送信すべきか否かを決定するデータ通信支援要請部と、前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記第２の送信端末との通信セッション切断指示を行うセッション切断指示部と、前記データ通信支援端末からのデータ受信開始タイミングを決定する支援通信制御部と、前記第１の送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信するデータ受信部と、を備えることを特徴とする受信端末である。
【００４５】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記受信状況として、前記第１の送信端末が送信する前記データの一定数以上のパケットロスを検知した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００４６】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記受信状況として、前記第１の送信端末と自端末との通信において同一の確認応答番号が格納された確認応答を一定数以上重複して送信した場合に、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００４７】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記受信状況として、前記第１の送信端末と自端末との通信のうちの確認応答に格納される確認応答番号に基づいて、自端末が前記第１の送信端末の送信した前記データを一定量以上受信していないと判定した場合、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００４８】
また本発明は、上述の受信端末において、前記データ通信支援要請部は、前記データ通信支援端末の前記第２の送信端末からの前記データの受信状況として、当該データ通信支援端末と前記第２の送信端末との通信の傍受に基づいて、その通信の確認応答に格納される確認応答番号から、前記データのうちの一定量以上を受信していると確認できた場合に、前記データの送信要請を示す送信要請情報を前記データ通信支援端末へ送信すべきと決定することを特徴とする。
【００４９】
また本発明は、上述の受信端末において、前記セッション切断指示部は、前記データ通信支援端末から前記送信要請に応じたデータ送信開始要求を受信したことを契機に、前記送信端末とのセッションを切断することを特徴とする。
【００５０】
また本発明は、上述の受信端末において、前記支援通信制御部は、他の通信端末と通信をしてない場合、前記データ通信支援端末からデータを受信開始すると決定することを特徴とする。
【００５１】
また本発明は、受信端末における処理方法であって、前記受信端末のデータ通信支援受入部が、送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ支援端末からの送信を受諾するかどうかを決定し、前記受信端末の確認応答頻度制御部が、前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定め、前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、前記受信端末のデータ受信部が、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信することを特徴とする処理方法である。
【００５２】
また本発明は、受信端末における処理方法であって、前記受信端末のデータ通信支援要請部が、送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定し、前記受信端末の確認応答頻度制御部が、前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定め、前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、前記受信端末のデータ受信部が、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する
ことを特徴とする処理方法である。
【００５３】
また本発明は、受信端末における処理方法であって、前記受信端末のデータ通信支援受入部が、送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ通信支援端末からの送信を受諾するかどうかを決定し、前記受信端末のセッション切断指示部が、前記データの前記データ通信支援端末からの送信を受諾すると決定した場合に、前記送信端末との通信セッション切断指示を行い、前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、前記受信端末のデータ受信部が、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信することを特徴とする処理方法である。
【００５４】
また本発明は、受信端末における処理方法であって、前記受信端末のデータ通信支援要請部が、送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定し、前記受信端末のセッション切断指示部が、前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記送信端末との通信セッション切断指示を行い、前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、前記受信端末のデータ受信部が、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信することを特徴とする処理方法である。
【００５５】
また本発明は、受信端末における処理方法であって、前記受信端末の他端末通信検知部が、自端末の通信圏外の第１の送信端末が送信しているデータを受信し、当該データの全てまたは一部を保持しているデータ通信支援端末の前記第１の送信端末との通信を傍受し、前記受信端末のデータ通信支援要請部が、前記第１の送信端末の通信圏外に存在する第２の送信端末が送信しているデータの自端末での受信状況と、前記データ通信支援端末の前記第１の送信端末からの前記データの受信状況とに基づいて、前記データ通信支援端末に対して該データの送信要請を示す送信要請情報を送信すべきか否かを決定し、前記受信端末のセッション切断指示部が、前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記第２の送信端末との通信セッション切断指示を行い、前記受信端末の支援通信制御部が、前記データ通信支援端末からのデータ受信開始タイミングを決定し、前記受信端末のデータ受信部が、前記第１の送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信することを特徴とする処理方法である。
【００５６】
また本発明は、受信端末のコンピュータを、送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ支援端末からの送信を受諾するかどうかを決定する手段、前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定める手段、前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、として機能させるプログラムである。
【００５７】
また本発明は、受信端末のコンピュータを、送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定する手段、前記データ通信支援端末の数に応じて、前記送信端末へ否定的確認応答を送信する確率を定める手段、前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、として機能させるプログラムである。
【００５８】
また本発明は、受信端末のコンピュータを、送信端末が送信するデータを記憶するとともに当該記憶するデータの全てまたは一部を前記送信端末の代わりに送信するデータ通信支援端末から、前記データの送信提案情報を受信したことを契機に、前記送信端末からの前記データの受信状況に基づいて、前記データの前記データ通信支援端末からの送信を受諾するかどうかを決定する手段、前記データの前記データ通信支援端末からの送信を受諾すると決定した場合に、前記送信端末との通信セッション切断指示を行う手段、前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、として機能させるプログラムである。
【００５９】
また本発明は、受信端末のコンピュータを、送信端末が送信しているデータの受信状況に基づいて、当該送信端末が送信しているデータの全てまたは一部を保持しているデータ通信支援端末へ、該データの送信要請を示す送信要請情報を送信すべきか否かを決定する手段、前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記送信端末との通信セッション切断指示を行う手段、前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、前記送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、として機能させるプログラムである。
【００６０】
また本発明は、受信端末のコンピュータを、自端末の通信圏外の第１の送信端末が送信しているデータを受信し、当該データの全てまたは一部を保持しているデータ通信支援端末の前記第１の送信端末との通信を傍受する手段、前記第１の送信端末の通信圏外に存在する第２の送信端末が送信しているデータの自端末での受信状況と、前記データ通信支援端末の前記第１の送信端末からの前記データの受信状況とに基づいて、前記データ通信支援端末に対して該データの送信要請を示す送信要請情報を送信すべきか否かを決定する手段、前記データ通信支援端末へ前記データの送信要請を示す送信要請情報を送信すべきと決定した場合に、前記第２の送信端末との通信セッション切断指示を行う手段、前記データ通信支援端末からのデータ受信開始タイミングを決定する手段、前記第１の送信端末から送信される前記データの受信に代えて、前記データ通信支援端末から送信された前記データを受信する手段、として機能させるプログラムである。
【００６１】
また本発明は、データ通信支援端末における処理方法であって、前記データ通信支援端末の他端末通信検知部が、送信端末から送信されたデータを受信する受信端末の通信を傍受し、前記データ通信支援端末のデータ通信支援判定部が、前記傍受した通信における否定的確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定し、前記データ通信支援端末のデータ通信支援部が、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせ、前記データ通信支援端末の支援通信制御部が、前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定することを特徴とする処理方法である。
【００６２】
また本発明は、データ通信支援端末における処理方法であって、前記データ通信支援端末のデータ通信支援部が、送信端末から送信されたデータを受信する受信端末からの、当該データの送信要請を示す送信要請情報の受信に基づいて、その送信要請情報で示される前記データの全てまたは一部を自端末の記憶部に保持しているかを確認し、保持している場合であって、その送信要請情報で示される前記データの送信要請を受諾すると決定した場合には、前記送信要請情報の受信に要請受諾を示す送信要請応答情報を送信し、前記データ通信支援端末の支援通信制御部が、前記送信要請応答情報の送信に基づいて、前記受信端末へのデータ送信開始タイミングを決定することを特徴とする処理方法である。
【００６３】
また本発明は、データ通信支援端末における処理方法であって、前記データ通信支援端末の他端末通信検知部が、送信端末から送信されたデータを受信する受信端末の通信を傍受し、前記データ通信支援端末のデータ通信支援判定部が、前記傍受した通信における確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定し、前記データ通信支援端末のデータ通信支援部が、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせ、前記データ通信支援端末の支援通信制御部が、前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定することを特徴とする処理方法である。
【００６４】
また本発明は、データ通信支援端末のコンピュータを、送信端末から送信されたデータを受信する受信端末の通信を傍受する手段、前記傍受した通信における否定的確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定する手段、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせる手段、前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する手段、として機能させるプログラムである。
【００６５】
また本発明は、データ通信支援端末のコンピュータを、送信端末から送信されたデータを受信する受信端末からの、当該データの送信要請を示す送信要請情報の受信に基づいて、その送信要請情報で示される前記データの全てまたは一部を自端末の記憶部に保持しているかを確認し、保持している場合であって、その送信要請情報で示される前記データの送信要請を受諾すると決定した場合には、前記送信要請情報の受信に要請受諾を示す送信要請応答情報を送信する手段、前記送信要請応答情報の送信に基づいて、前記受信端末へのデータ送信開始タイミングを決定する手段、として機能させるプログラムである。
【００６６】
また本発明は、データ通信支援端末のコンピュータを、送信端末から送信されたデータを受信する受信端末の通信を傍受する手段、前記傍受した通信における確認応答に基づいて、前記受信端末が受信しているデータの全てまたは一部を自端末に保持している場合であって、前記受信端末の前記データの受信状況が前記受信端末と前記送信端末の通信の傍受に基づいて悪いと判定した場合に、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定する手段、前記自端末に保持している前記データの、前記受信端末への送信を提案すべきと判定した場合に、前記受信端末に対して前記データを送信すべきかを問い合わせる手段、前記問い合わせの応答に基づいて、前記受信端末へのデータ送信開始タイミングを決定する手段、として機能させるプログラムである。
【発明の効果】
【００６７】
本発明によれば、受信端末において送信端末からのデータ受信状況が悪く、同じデータを同じタイミングで受信している端末が当該受信端末の通信範囲に存在していない場合、正常なデータ受信をあきらめざるを得なかったが、近隣に、送信端末が送信しているデータと同一のデータを記憶しているデータ通信支援端末がいるかどうか探索し、存在する場合に該データ通信支援端末からデータを受信できるようになる。
【００６８】
また本発明によれば、受信端末が、データ通信支援端末からデータ受信すると決定した場合、送信端末に対してのセッション切断により送信端末へのデータの再送要求を遮断させるため、これにより送信端末からの受信端末への再送が減少し、他のパッケトロスなくデータが受信できている受信端末にとっての通信効率を向上させることができる。
【発明を実施するための最良の形態】
【００６９】
以下、本発明の一実施形態による通信システムを図面を参照して説明する。
【実施例１】
【００７０】
まず、本発明の第１の実施例について図面を利用して説明する。
本発明の第１の実施例では、移動する無線端末で構成される通信システムにおけるデータの到達性を保証する無線通信の仕組みについて説明する。
図１は、実施例１における通信システムの概要を示す図である。
この図で示すように、本実施例における通信システムでは、送信端末１が、複数の受信端末（受信端末１０ａ〜１０ｃ）に対して、データをブロードキャスト配信する。送信端末１と受信端末１０ａ〜１０ｃの各間では、信頼性のある通信を実現するために受信確認応答として、ＮＡＣＫ（Negative Acknowledgment；否定的確認応答）を利用している。また、データ通信支援端末１００は、送信端末１が受信端末１０ａ〜１０ｃへ配信しているデータを予め保持している。データ通信支援端末１００は、受信端末１０ａとの通信圏内（電波到達範囲内）に存在しており、受信端末１０ａから一定数以上のＮＡＣＫが送信されていることを通信傍受により検知し、受信端末１０ａが送信端末１からのデータ受信が困難であると判定した場合には、受信端末１０ａへデータ送信の提案を行う。その場合、受信端末１０ａは提案を受諾し、データ通信支援端末１００からデータを受信する。
【００７１】
（構成の説明）
図２は送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
次に図２を用いて送信端末１の構成について説明する。
図２で示すように送信端末１は、セッション制御部１−１、データ送信部１−２、データ確認応答処理部１−３、データ蓄積部１−４の処理部や記憶部を備える。
セッション制御部１−１は、データ通信開始時にデータを要求する受信端末１０に対してデータ送信を実施するため、問い合わせメッセージを送信する処理部である。本問い合わせメッセージには、データを一意に識別する情報、データサイズに関する情報が格納される。また、問い合わせメッセージ送信後に、問い合わせメッセージに対する応答として受信端末１０よりデータ要求メッセージを受信すれば、それをデータ送信部１−２に通知する。
また、データ送信部１−２は、セッション制御部１−１からの指示に基づいて、セッションデータ蓄積部１−４からデータを取り出してパケット化し、該パケットにシーケンス番号、データを一意に識別する情報を含めて送信する。また、データ送信部１−２は、データ確認応答処理部１−３から再送要求の指示がある場合に該当するパケットを再送する処理を行う。
また、データ確認応答処理部１−３は、受信端末１０（受信端末１０ａ〜１０ｃを一まとめにした場合、受信端末１０と呼ぶこととする）から返信されるＮＡＣＫのシーケンス番号をデータ送信部１−２へ通知し再送を要求する。
また、データ蓄積部１−４は送信するデータを蓄積している。
【００７２】
次に、図２を用いて受信端末の構成について説明する。
図２で示すように受信端末１０は、セッション制御部１０−１、データ確認応答部１０−２、データ蓄積部１０−３、確認応答頻度制御部１０−４、データ通信支援受入部１０−５、支援端末リスト記憶部１０−６、支援通信制御部１０−７の各処理部や記憶部を備える。
セッション制御部１０−１は、送信端末１からの問い合わせメッセージを受信すると、該メッセージ含まれるデータを一意に識別する情報を参照し、取得すべきデータを判断した場合にデータ要求メッセージを送信端末１へ返信し、データ確認応答部１０−２へ送信端末１とのセッション開設を通知する処理を行う。このときセッション制御部１０−１は、データ確認応答部１０−２へ、データを一意に識別する情報、データサイズを通知する。またセッション制御部１０−１は、支援通信制御１０−７からデータ通信支援端末１００とのセッション開設指示を受けた場合に、データ通信支援端末１００とのセッション開設のため、データ要求メッセージを送信する処理を行う。
【００７３】
データ確認応答部１０−２は、送信端末１に対してデータ要求メッセージを送信した旨の通知をセッション制御部１０−１から受け、データパケットの待ち受け状態に移行する。このとき、データ確認応答部１０−２は、セッション制御部１０−１よりデータを一意に識別する情報とデータサイズの通知を受ける。またデータ確認応答部１０−２は、送信端末１からのデータパケットを受信すると当該送信端末１へ確認応答を返信する。確認応答の方法は、送信されてくるデータパケット内に含まれているシーケンス番号を参照し、パケットロスがあった場合にロスしたパケットのシーケンス番号、データ内容を識別する情報を含むＮＡＣＫを送信端末１へ送信し再送要求を行う。そしてデータ確認応答部１０−２は、受信したデータを、データ蓄積部１０−３へ蓄積する。また、確認応答頻度制御部１０−４からの通知されるＮＡＣＫ送信確率にしたがって、送信端末１へＮＡＣＫを返信する。
【００７４】
データ蓄積部１０−３は、データ確認応答部１０−２が送信端末１から受信したデータパケットを蓄積する。
確認応答頻度制御部１０−４は、データ通信支援受入部１０−５から通知されるデータ通信支援端末数に応じて、送信端末１へ返信するＮＡＣＫ送信確率を計算し、データ確認応答部１０−２へ通知する処理部である。
【００７５】
＜ＮＡＣＫ送信確率の計算について＞
図３はＮＡＣＫ送信確率の計算方法の概要を示す図である。
ここで、確認応答頻度制御部１０−４におけるＮＡＣＫ送信確率の計算について説明する。
受信端末１０が要求するデータを保持しているデータ通信支援端末が受信端末１０との通信範囲内に数多く存在するにつれて、データ通信支援端末１００からのデータ転送、再送による受信端末１０でのデータパケットロスの回復の可能性が高くなる。そのため、データ通信支援端末１００の増加に伴い、送信端末１へのＮＡＣＫ送信確率を減少させ、送信端末1に対する再送要求を減少させる。ＮＡＣＫ送信確率の求め方は、図３に示すように、データ通信支援端末１００が１台増加する毎に０．２ずつ減少させ、５台以上になるとその確率を０とする。また、ＮＡＣＫ送信確率の決定については、上記記載方法だけでなく、データ通信支援端末１００の数の増加に伴い、ＮＡＣＫ送信確率を減少させる関数を用いて決定すればよい。なおデータ通信支援端末１００の増減については、例えば、データ通信支援端末１００から送信された通信を傍受して、その傍受した通信に格納されている端末の識別情報などによって増減を判定するなどが考えられる。
【００７６】
データ通信支援受入部１０−５は、データ確認応答部１０−２を監視し、送信端末１から送信されるデータのパケットロスの情報を取得する。一定数以上のパケットロスが確認できれば他の端末（データ通信支援端末１００）からデータを受信すべきと判断する。他の端末からデータを受信すべきと判断している場合であって、かつデータ通信支援端末１００からのデータ送信の提案であるデータ通信支援メッセージを受信したときには、データ送信を受諾するデータ通信支援応答メッセージをデータ通信支援端末１００へ送信する。ここで、データ通信支援受入部１０−５は、データ送信を受諾したデータ通信支援端末１００の識別情報を、支援端末リスト記憶部１０−６に記録する。またデータ通信支援受入部１０−５は、支援端末リスト記憶部１０−６に記載されている端末数の情報を確認応答頻度制御部１０−４へ通知する。またデータ通信支援受入部１０−５は、支援通信制御１０−７に対してデータ通信支援端末１００からデータを受信開始するタイミングを制御するように指示する。データ確認応答部１０−２の監視では、送信端末１から送信されるデータのパケットロスの情報を基に他の端末（データ通信支援端末１００）からデータを受信すべきか判定しているが、ＮＡＣＫの送信数、シーケンス番号からデータ全体に対する受信量の割合、シーケンス番号の進捗から取得できる受信速度等を用いてもよい。
【００７７】
図４は支援端末リストのデータ例を示す図である。
支援端末リスト記憶部１０−６は、図４で示すような、データ通信支援受入部１０−５から通知されるデータ通信支援端末の識別情報が書き込まれたリストのデータを記憶する。
支援通信制御部１０−７は、データ通信支援受入部１０−５を介してデータ通信支援端末１００からのデータ受信開始タイミング制御の指示を受けると、セッション制御部１０−１を監視する。また支援通信制御部１０−７は、送信端末１との通信終了を確認すると、データ通信支援端末１００に対して、データを送信開始してもらうように支援通信開始要求メッセージを送信する。データ通信支援端末１００からデータ送信開始を受諾した旨を示す支援通信開始応答メッセージを受信すると、セッション制御部１０−１に対して、データ通信支援端末１００とセッションを開設するよう指示する。また、逆にデータ通信支援端末１００からデータ送信開始要求メッセージを受信した場合、セッション制御部１０−１に問い合わせ、他の端末と通信していなければ、データ送信開始を受諾してデータ送信開始応答メッセージをデータ通信支援端末１００へ送信する。他の端末と通信していない状況でデータ送信開始を受諾する理由としては、データの衝突によるパケットロスを回避するためである。
【００７８】
次に、図２を用いてデータ通信支援端末の構成について説明する。
図２で示すように、データ通信支援端末１００は、セッション制御部１００−１、データ送信部１００−２、データ確認応答処理部１００−３、データ蓄積部１００−４、他端末通信検知部１００−５、データ通信支援判定部１００−６、データ通信支援部１００−７、支援通信制御部１００−８を備える。
ここで、セッション制御部１００−１は、支援通信制御部１００−８からセッション開設の指示を受け、受信端末１０からのデータ要求メッセージを受信するとセッションを開設し、データ送信部１００−２へデータ送信開始の指示を行う。
データ送信部１００−２は、セッション制御部１００−１からデータ転送開始の指示を受けると、データ蓄積部１００−４からデータを取り出してパケット化し、該パケットにデータを一意に識別する情報とシーケンス番号を含めて送信する。また、データ確認応答処理部１００−３から再送要求の指示がある場合には再送を実施する。
【００７９】
データ確認応答処理部１００−３は、受信側から返信されるＮＡＣＫのシーケンス番号をデータ送信部１００−２へ通知し再送を要求する。データ蓄積部１００−４は、データ確認応答処理部１００−３から受信したデータを蓄積する。他端末通信検知部１００−５は、他の端末間での通信を傍受して、傍受内容をデータ通信支援判定部１００−６へ通知する。
データ通信支援判定部１００−６は、他端末通信検知部１００−５から通知される他の端末の通信内容を参照し、ＮＡＣＫの場合、ＮＡＣＫに含まれるデータを一意に識別する情報を参照し、該当するデータのすべてまたは一部を保持しているかどうか確認するためにデータ蓄積部１００−４を参照する。該当するデータが存在する場合、ＮＡＣＫを送信している端末のＮＡＣＫ送信状況を観測し、一定数以上のＮＡＣＫを送信している場合には、送信端末からのデータ受信が困難で、ＮＡＣＫを送信している端末に対してデータを送信すべきと判定し、データ通信支援部１００−７へ通知する。また、支援決定の条件として、ＮＡＣＫの数だけではなく、ＮＡＣＫに記載されるシーケンス番号から判断できるロス数を利用しても良い。
【００８０】
データ通信支援部１００−７は、データ通信支援判定部１００−６から通知された受信端末１０に対してデータ送信を行うために、それら受信端末１０へデータ通信支援メッセージを送信する。また、受信端末１０からのデータ通信支援メッセージに対する応答が返信されたときに支援通信制御１００−８に対して受信端末１０へのデータ送信開始タイミングを制御するように指示する。
支援通信制御部１００−８は、データ通信支援部１００−７からの指示を受け受信端末１０とのデータ転送開始タイミングを決定するための交渉を行う。受信端末１０からのデータ送信開始要求があると、セッション制御部１００−１に他の端末と通信していないか問い合わせ、他の端末と通信していなければ、データ送信を受諾し、データ送信開始応答メッセージを返信し、セッション制御部１００−１に対してセッション開設の指示を行う。
【００８１】
（動作の説明）
＜データ通信支援端末１００による受信パケットロスの多い受信端末１０の発見＞
送信端末１と受信端末１０とはデータ通信を行っており、移動、電波強度、障害物等の影響で受信端末１０において受信パケットのロスが発生する。このとき、受信端末１０の通信電波が届く範囲に位置するデータ通信支援端末１００が、受信端末１０の送信端末１へのＮＡＣＫを傍受する。このＮＡＣＫは受信端末１０が送信端末１に対して、パケットロスによる再送を要求する際などに送信される情報である。そして、データ通信支援端末１００は、受信端末１０へデータ送信の提案であるデータ通信支援メッセージを送信してデータ送信に備える。データ支援メッセージを受信した受信端末１０は、データ通信支援応答メッセージを返信して、データ通信支援端末１００にパケットロスに対する支援を要請する。
【００８２】
＜送信端末１と受信端末１０のフィードバック制御について＞
受信端末１０は、送信端末１からデータを受信することが困難であると判断した場合、ＮＡＣＫ返信を確率的に減少させる。
【００８３】
＜データ通信支援端末１００と受信端末１０との通信＞
受信端末１０は、送信端末１がデータ送信を終了してから、データ通信支援端末１００に対してデータ通信開始を要求し、データ通信を行う。送信端末１がデータ送信を終了してからデータ通信支援端末１００と通信を開始する理由としては、送信端末１と送信端末１００が受信端末１０にデータを送信した場合、衝突が発生し、パケットロスが発生する可能性があるためである。
【００８４】
図５は実施例１における送信端末と受信端末との間の通信の処理フローを示す図である。
次に、送信端末１と受信端末１０との間の通信処理の詳細について説明する。
「セッション開設動作」
まず、図５より、送信端末１のセッション開設部１−１が、データを一意に識別する情報とデータサイズ等、送信するデータに関する情報を含んだ問い合わせメッセージを送信する（ステップＳ１０１）。すると、問い合わせメッセージを受信した受信端末１０（受信端末１０ａ〜１０ｃそれぞれ）のセッション開設部１０−１は、問い合わせメッセージのデータに関する情報を参照して、受信すべきデータと判断して、データ確認応答部１０−２へデータを受信することを通知し、データ要求メッセージを返信する（ステップＳ１０２）。送信端末１のセッション制御部１０−１は、受信端末１０（受信端末１０ａ〜１０ｃそれぞれ）からのデータ要求メッセージを受信すると、データ送信部１−２へデータ転送開始の指示し、データ送信部１−２はデータ蓄積部１−４からデータを取り出してデータ送信を開始する（ステップＳ１０３）。このとき送信するデータに格納するシーケンス番号は１から開始し、データ送信部１−２は、蓄積していたデータの先頭からどこまで送信したかわかるものとする。
【００８５】
「ＮＡＣＫ頻発観測→データ通信支援決定」
図６は実施例１による通信システム内の各端末間の通信の処理フローを示す図である。
そして、送信端末１が受信端末１０ａ〜１０ｃへデータ転送中、受信端末１０ａにおいてパケットロスが発生したとする。このとき、受信端末１０ａは、次に受信すべきデータがパケットロスの影響により受信できないため送信端末１へＮＡＣＫを送信する。このとき、データ通信支援端末１００は、受信端末１０ａの通信電波が届く距離に位置しているものとする。そして、データ通信支援端末１００の他端末通信検知部１００−５は、受信端末１０ａからの送信端末１へのＮＡＣＫを検知すると、データ通信支援判定部１００−６へ通知する。また、データ通信支援部１００−７は、ＮＡＣＫに含まれているデータを一意に識別する情報から、データ蓄積部１００−４に該当するデータが蓄積されているか確認する。
【００８６】
データ通信支援端末１００のデータ通信支援判定部１００−６は、該当するデータが存在する場合であって、さらに、ＮＡＣＫの検知を繰り返すことにより一定数以上ＮＡＣＫが受信端末１０より送出されていることを当該ＮＡＣＫのシーケンス番号に基づいて検出すると（図６のステップＳ６０１）、受信品質（受信状況）の悪化により受信端末１０ａは送信端末１からのデータ受信が困難であり、その受信端末１０ａに対してＮＡＣＫによって受信端末１０ａが送信端末１へ要求しているデータ代わりに送信すべきと判断し、データ通信支援部１００−７に受信端末１０ａへデータ送信すべきと通知する。すると、データ通信支援部１００−７は、受信端末１０ａへデータ送信の提案を示す、データ通信支援メッセージを送信する（図６のステップＳ６０２）。受信端末１０ａは、データ送信の提案を示す、データ通信支援メッセージを受信すると、データ通信支援受入部１０−５がデータパケットのロス情報を確認する。例えば、受信できたデータパケット量から、受信できなかったデータパケット量を差し引けば、データパケットのロスのデータ量を確認することができる。そして、一定数以上のパケットロスを確認して送信端末１以外の他の端末からデータを受信すべきと判断している場合、データ通信支援受入部１０−５は、データ送信の提案を受諾するデータ通信支援応答メッセージをデータ通信支援端末１００へ送信する（図６のステップＳ６０３）。このとき、データ通信支援受入部１０−５は、支援通信制御部１０−７へデータ通信支援端末１００との通信開始タイミングを決定するよう指示する。
【００８７】
「受信端末１０と送信端末１とのフィードバック制御について」
受信端末１０ａは、自端末からの通信信号が届く範囲にデータ通信支援端末１００が存在し、送信端末１との通信状況が劣悪でロスが多い場合、データ通信支援端末１００からのデータ受信の確率が高くなる。また、データ通信支援端末１００が増加すればさらにデータ受信の確率は高くなる。そこで、データ通信支援端末１００の自端末からの通信信号が届く範囲における数の増加に伴い、データ受信の確率が低い送信端末１へのＮＡＣＫによる再送要求を行う確率を減少させる処理を行う。図６の処理フローにおいては、受信端末１０ａ〜１０ｃに対してデータを送信するデータ通信支援端末１００の１台なので図１に示すように、パケットロスが発生した際に受信端末１０ａ〜ｃが送信端末１へＮＡＣＫを送信する確率である、ＮＡＣＫ送信確率を０．８とする。そして受信端末１０ａはＮＡＣＫを送信する際には、ＮＡＣＫ送信確率０．８の情報に基づいて、そのＮＡＣＫの送信を制御する処理を行う（例えば１０回のＮＡＣＫの送信のうち２回の送信を中止するなど）。
【００８８】
「データ通信支援端末１００からデータ転送」
受信端末１０ａは、送信端末１からのデータ送信完了後にデータ通信支援端末１００との通信を開始する。送信端末１からのデータ送信終了の検知は、支援通信制御部１０−７がセッション制御部１０−１を監視し、セッション終了メッセージを受信して通信終了していることを検知することにより行う（図６のステップＳ６０４）。その後、支援通信制御部１０−７は、セッション制御部１０−１へデータ通信支援端末１００からデータを受信するためにセッション開設を指示し、データ通信支援端末１００に対して支援通信開始要求メッセージを送信する（図６のステップＳ６０５）。そして、支援通信開始要求メッセージを受信したデータ通信支援端末１００の支援端末通信制御部１００−８は、その支援通信開始要求メッセージを受諾して、当該支援通信開始応答メッセージを受信端末１０ａへ返信し（図６のステップＳ６０６）、セッション制御部１００−１へ受信端末１０ａにデータ送信するようにセッション開設を指示する。するとセッション開設後、データ通信支援端末１００のセッション制御部１００−１は、受信端末１０ａへデータ転送を開始する（図６のステップＳ６０７）。
【実施例２】
【００８９】
次に、本発明の実施例２について図面を利用して説明する。
図７は、実施例２における通信システムの概要を示す図である。
本実施例は実施例１と同様に、送信端末２は、受信端末２０ａ、受信端末２０ｂ、受信端末２０ｃに対して、データをブロードキャストしている。また、実施例１と同様に、受信端末２０ａ〜２０ｃは、信頼性のある通信を実現するために受信確認応答として送信端末２へＮＡＣＫを送信する。受信端末２０ａ〜２０ｃは、自端末における一定数以上の送信端末２へのＮＡＣＫ送信を検知した場合、送信端末２からのデータ受信が困難であると判定する。そして受信端末２０ａ〜２０ｃのそれぞれは、近隣の端末に対してデータを送信してもらえるかどうか問い合わせる。データ通信端末２００は、受信端末２０ａが受信すべきデータを保持しており、受信端末２０ａの要求に応じてデータを送信する端末である。
【００９０】
（構成の説明）
図８は送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
本実施例において、図８で示す送信端末２は、実施例１の送信端末１と同じ構成で同じ動作を行うため、説明を省略する。
また図８で示す受信端末２０（受信端末２０ａ〜２０ｃを一まとめにした場合、受信端末２０と呼ぶこととする）は、実施例１の受信端末１０のデータ通信支援受入部１０−５の構成が、データ通信支援要請部２０−５に置き換えられた構成となっている。データ通信支援要請部２０−５以外の各処理部の構成につては、実施例１の受信端末１０と同じため、データ通信支援要請部２０−５についてのみ説明する。データ通信支援要請部２０−５は、実施例１のデータ通信支援受入部１０−５の処理とほぼ同じ動作を行うが、データ通信支援受入部１０−５との違いは、自端末における送信端末２から送信されるデータの一定以上の受信のパケットロスを検知して、他の端末からデータを受信すべきと判断した場合、データを保持している端末からデータ送信してもらうように要求するデータ通信支援要請メッセージを送信する点である。
【００９１】
次に図８を用いて実施例２におけるデータ通信支援端末２００について説明する。
データ通信支援端末２００は、実施例１の構成から、他端末通信検知部１００−５、データ通信支援判定部１００−６が除かれた構成になっている。またデータ通信支援端末２００は、データ通信支援部２００−５（実施例１においてはデータ通信支援部１００−７と表記）の動作のみが実施例１と異なる。データ通信支援部２００−５は、実施例１のデータ通信支援部１００−７とほぼ同じ動作をするが、データ通信支援部１００−７との違いは、受信端末２０からデータ通信支援要請メッセージを受信したときに、データ蓄積部２００−４に、受信端末２０から要求されているデータの全体および一部が存在しているかどうか確認する。データ全体および一部の存在を確認した場合、データ送信を受諾してデータ通信支援応答メッセージを送信する処理を行う。
【００９２】
（動作の説明）
図９は実施例２における通信システム内の各端末間の通信の処理フローを示す図である。
次に、図９を用いて、実施例２における各端末の動作について説明する。
実施例１との差分は、受信端末２０が自ら近隣の端末に対してデータ通信の支援要請を行う点である。その差分点について図９を用いて説明する。
図９は、受信端末２０ａ〜ｃが送信端末２からデータを受信している中、受信端末２０ａで一定数以上のＮＡＣＫ送信を検出し、データ通信支援端末２００へデータ転送の要請を行ない。当該受信端末２０ａがデータ通信支援端末２００からデータを受信している場合の処理フローの例を示している。
【００９３】
ここで、実施例１との違いは、受信端末２０ａから近隣の端末に対して、データ送信を要求するデータ通信支援要請メッセージを送信する点である。受信端末２０ａにおいて、送信端末２から送信されるデータの一定数以上のパケットロスを観測すると（ステップＳ９０１）、受信端末２０ａは、データ送信を要求するデータ通信支援要請メッセージを近隣の端末へ送信する（ステップＳ９０２）。そして、データ通信支援要請メッセージを受信したデータ通信支援端末２００は、データ通信支援要請メッセージに格納されているデータの識別情報に基づいて、当該メッセージによって受信端末２０ａが要求するデータを保持しているかどうかデータ蓄積部２００−４を確認する。そして、保持している場合には、データ通信支援要請応答メッセージを受信端末２０ａへ返信する（ステップＳ９０３）。これにより、受信端末２０ａは送信端末２からの通信の終了を検知後、実施例１と同様のステップＳ９０４〜Ｓ９０７の処理を行い、データ通信支援端末２００からデータを受信する。
【実施例３】
【００９４】
次に、本発明の実施例３について図面を利用して説明する。
図１０は、実施例３における通信システムの概要を示す図である。
本実施例は、送信端末３、受信端末３０ａ〜３０ｃ、データ通信支援端末３００から構成されている。送信端末３は、受信端末３０ａ〜３０ｃに対してデータをブロードキャストしている。また本実施例では、データの受信確認としてＡＣＫを用いる点が実施例１及び実施例２と異なる。ＡＣＫの場合、ＮＡＣＫの場合と異なり、受信端末３０（受信端末３０ａ〜３０ｃを一まとめにした場合、受信端末３０と呼ぶこととする）はデータ受信がどこまで進んでいるかという情報をＡＣＫに含んで送信端末３へ返信する。例えば、１番から１００番までのデータを受信端末３０が受信しているとき、次に受信を期待するシーケンス番号１０１番をＡＣＫ番号として返信する。データ通信支援端末３００は、受信端末３０のＡＣＫを傍受し、このＡＣＫに格納されているＡＣＫ番号が一定値以下しか進んでいないことを観測した場合に、送信端末３からのデータ受信が困難であると判定し、受信端末３０へデータ送信の提案を行う。受信端末３０が提案を受諾すると、データ通信支援端末３００はデータ送信を行う。
【００９５】
（構成の説明）
図１１は送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
本実施例の送信端末３は、実施例１及び実施例２の送信端末１、送信端末２と同じ構成であるため説明を省略する。
また、受信端末３０は、実施例１の受信端末１０の確認応答頻度制御１０−４が、セッション切断指示部３０−４に置き換えられた構成である。また本実施例の受信端末３０のデータ通信支援受入部３０−５の処理は、実施例１のデータ通信支援受入部１０−５における受入判断の処理と異なっている。
ここで、セッション切断指示部３０−４は、支援通信制御部３０−７からデータ通信支援端末３００と通信を開始するという通知を受けると、セッション制御部３０−１に対して送信端末３とのセッションを切断するよう指示する。セッション切断が確認できれば支援通信制御部３０−７へ送信端末３とのセッションが切断されたことを通知する。
また、データ通信支援受入部３０−５は、実施例１のデータ通信支援受入部１０−５と同様、データ確認応答部３０−２を監視し、送信端末３から送信されるデータ受信において、一定数のパケットロスを確認した場合に、他の端末からのデータ送信を受け入れると決定する。ここで、受入の基準としてパケットロスを用いたが、データ受信開始時からのある一定時間内にデータ全体に対して受信しているデータ量が閾値以上かの判定や、データパケットのロスが発生しときに同じＡＣＫ番号のＡＣＫを重複して複数回送信したことを検知し、その重複ＡＣＫの数が閾値以上かどうか等によって判定するようにしてもよい。
【００９６】
次に、データ通信支援端末３００について説明する。
データ通信支援端末３００は、実施例１のデータ通信支援端末１００と同じ構成であるが、違いは、データ通信支援判定部３００−６における、データを送信すべきかどうかの判定方法である。データ通信支援判定部３００−６は、他端末通信検知部３００−５から通知される通信内容のうち、ＡＣＫパケットに含まれるデータを一意に識別する識別情報を参照し、一致しているかどうかにより、同じデータの通信において発生したＡＣＫを観測する。そのとき、一定値以下しかＡＣＫ番号が進まないとき（傍受した通信における確認応答に格納されているＡＣＫ番号が、単位時間当たりに一定値以上更新されていないと判定した場合）、データを送信する判定して、データ通信支援部３００−７へ通知する。データを送信する判定条件として、ＡＣＫ番号の進み方を利用したが、ＡＣＫ番号を利用してデータ全体に対して一定量以下のデータしか受信していない（送信端末が送信する前記データをデータ受信開始時からのある一定時間内に一定量以上受信していない場合）と検知できた場合、また、パケットロス時に発生する重複ＡＣＫ数を条件としてもよい。
【００９７】
（動作の説明）
実施例３の通信システムの処理概要としては、データ通信支援端末３００が、受信端末３０のＡＣＫ番号が進まないことを検知して、受信端末３０にデータ転送を行うことを提案し、受信端末３０がその提案に応じる。すると受信端末３０は、送信端末３とのセッションを切断して、データ通信支援端末３００からデータを受信するものである。
【００９８】
図１２は実施例３における通信システム内の各端末間の通信の処理フローを示す図である。
ここで、本実施例３は、実施例１の処理フローと同様の動作をする点が多いため、図１２を用いて差分を説明する。
図１２より、送信端末３が、受信端末３０ａ〜ｃへデータ送信中、受信端末３０ａにおいて、シーケンス番号２０１のパケット、シーケンス番号２０１の再送パケット、シーケンス番号３０１のパケットの、各パケットロスが発生しているものとする。このとき、データ通信支援端末３００のデータ通信支援判定部３００−６は、他端末通信検知部３００−５の受信端末３０のＡＣＫの傍受に基づいて、ＡＣＫ番号が一定値以下しか進んでいないことを判定した（傍受した通信における確認応答に格納されているＡＣＫ番号が、単位時間当たりに一定値以上更新されていないと判定した）とすると（ステップＳ１２０１）、データ通信支援端末３００のデータ通信支援部３００−７は、受信端末３０ａへデータ送信の提案を示す、データ通信支援メッセージを送信する（ステップＳ１２０２）。受信端末３０ａは、データ送信の提案を示す、データ通信支援メッセージを受信すると、データ通信支援受入部３０−５がデータパケットのロス情報を確認する。例えば、受信できたデータパケット量から、受信できなかったデータパケット量を差し引けば、データパケットのロスのデータ量を確認することができる。そして、一定数以上のパケットロスを確認して送信端末３以外の他の端末からデータを受信すべきと判断している場合、データ通信支援受入部３０−５は、データ送信の提案を受諾するデータ通信支援応答メッセージをデータ通信支援端末３００へ送信する（ステップＳ１２０３）。このとき、データ通信支援受入部３０−５は、支援通信制御部３０−７へデータ通信支援端末３００との通信開始タイミングを決定するよう指示する。
【００９９】
そして、データ通信支援端末３００のデータ通信支援部３００−８が、支援通信開始要求メッセージを受信端末３０ａへ送信すると（ステップＳ１２０４）、受信端末３０ａのセッション切断指示部３０−４が、セッション制御部３０−１へ送信端末３との通信セッション切断を要求し、セッション制御部３０−１がセッション切断を送信端末３へ通知する（ステップＳ１２０５）。そして、セッションが切断されると受信端末３０の支援通信制御部３０−７はデータ通信支援端末３００へデータ通信支援要請応答メッセージを送信する（ステップＳ１２０６）。これにより、支援通信制御部３００−８はセッション制御部３００−１へ受信端末３０ａにデータ送信するようにセッション開設を指示する。するとセッション開設後、データ通信支援端末３００のセッション制御部３００−１は、受信端末３０ａへデータ転送を開始する（ステップＳ１２０７）。
【０１００】
つまり、実施例１と実施例３の差異は、データ通信支援端末３００が、受信端末３０ａのＡＣＫを傍受して受信端末３０ａへデータを送信すべきかどうか判定する方法である。受信端末３０ａにおいて、シーケンス番号２０１のパケット、シーケンス番号２０１の再送パケット、シーケンス番号３０１のパケットの、各パケットロスが発生しているとき、送信端末３へＡＣＫ番号２０１のＡＣＫを送信している。このＡＣＫを傍受したデータ通信支援端末３００は、ＡＣＫ番号の進み具合が、例えば単位時間当たりに一定値以下である場合には、データ通信支援判定部３００−６においてデータ送信すべきと判定し（図１２のステップＳ１２０１）、データ通信支援部３００−７へ通知する。通知を受けたデータ通信支援部３００−７は、データ送信を提案するデータ通信支援メッセージを送信する（図１２のステップＳ１２０２）。データ通信支援メッセージを受信した受信端末３０ａにおいては、データ通信支援受入部３０−５がデータ確認応答部３０−２を監視しており、一定以上のパケットロスが発生していると検知している場合、データ通信支援端末３００からのデータ送信の提案を受け入れてデータ通信支援応答メッセージを送信する処理を行っている。
【実施例４】
【０１０１】
次に、本発明の実施例４について図面を利用して説明する。
図１３は、実施例４における通信システムの概要を示す図である。
実施例４は、図１３に示すように、送信端末４、受信端末４０ａ〜４０ｃ、データ通信支援端末４００から構成されている。送信端末４は、受信端末４０ａ〜４０ｃに対してデータをブロードキャストしている。受信端末４０ａ〜４０ｃは、送信端末４に送信するＡＣＫに格納されているＡＣＫ番号の進みを検出し、そのＡＣＫ番号の進み具合が、例えば単位時間当たりに一定値以下である場合には、近隣の端末にデータ送信してもらうよう要請する。受信端末４０（受信端末４０ａ〜４０ｃを一まとめにした場合、受信端末４０と呼ぶこととする）が要求するデータを保持しているデータ通信支援端末４００は、要請に応じてデータを送信することとなる。
【０１０２】
（構成の説明）
図１４は送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
ここで、送信端末４は、実施例１〜実施例３における送信端末１，送信端末２，送信端末３と同じ構成であるため説明を省略する。また、受信端末４０の構成は、実施例３と同様に、実施例１，２との違いがあり、その違いは、データ確認応答部４０−２における確認応答方法にある。つまり、実施例４では確認応答方法としてＡＣＫを利用している。ＡＣＫの場合、ＮＡＣＫの場合と異なり、データ受信がどこまで進んでいるかという情報をＡＣＫに含んで返信することとなる。例えば、１番から１００番までのデータを受信しているとき、次に受信を期待するシーケンス番号１０１番をＡＣＫ番号として送信端末４へ返信する。
【０１０３】
そして、実施例４における受信端末４０は、実施例２の受信端末２０の確認応答頻度制御部２０−４をセッション切断指示部４０−４に置き換えた構成である。また、このセッション切断部４０−４は、実施例３のセッション切断指示部３０−４と同じ動作を行う。また、実施例４におけるデータ通信支援端末４００は、実施例２のデータ通信支援端末２００と同じ動作を行う。また本実施例におけるデータ通信支援端末４００は、実施例２のデータ通信支援端末２００と同様の処理を行う。
【０１０４】
本実施例４は実施例３と比較して異なるのは、受信端末４０におけるデータ通信支援要請部４０−５の処理である。よって、受信端末４０のデータ通信支援要請部４０−５について説明する。
データ通信支援要請部４０−５は、データ確認応答部４０−２を監視することによる自身のデータ受信品質（受信状況）を観測し、ＡＣＫ番号の進み具合が、例えば単位時間当たりに一定値以下である場合には、送信端末４との通信状況が劣悪であると判断し、支援要請を行うと決定する。そして支援要請を行うと決定した場合には、データ通信支援要請部４０−５は、支援通信制御部４０−７に対して、データ転送してもらえる端末を探索するよう指示する。ここで、支援要請の基準は、ＡＣＫ番号の進み具合だけでなく、ＡＣＫ番号情報から取得できる受信すべきデータ量全体に対して受信した割合のデータ量や、パケットロス数、パケットロスが発生した場合に発生する重複ＡＣＫ数等の情報を利用して判断してもよい。
【０１０５】
また、実施例４におけるデータ通信支援端末４００は、実施例３のデータ通信支援端末３００に対して、他端末通信検知部３００−６、データ通信支援判定部３００−６、データ通信支援部３００−７を除いたものである。また実施例４におけるデータ通信支援端末４００は、実施例３のデータ通信支援端末３００に対して、データ通信支援部４００−５（実施例３においてはデータ通信支援部３００−７と表記）の動作が異なるものである。よって、データ通信支援部４００−５について説明する。
データ通信支援部４００−５は、受信端末４０からのデータ通信支援要請メッセージを受信すると、受信端末４０が要求するデータを保持しているかデータ蓄積部４００−４を確認する。そして、データ通信支援部４００−５は、データが存在すれば、受信端末４０に対してデータ通信支援要請応答メッセージを返信する。また、データ通信支援部４００−５は、支援通信制御部４００−６へデータ通信開始タイミングを受信端末４０と交渉するよう指示する。
【０１０６】
（動作の説明）
図１５は実施例４における通信システム内の各端末間の通信の処理フローを示す図である。
次に、図１５を用いて、実施例４における各端末の動作について説明する。
ここで、本実施例の動作は、実施例３の処理とは、受信端末４０とデータ通信支援端末４００との間で、データ転送開始のタイミングを決定する動作以降の処理が異なる点である。
本実施例においては、図１５より、送信端末４が、受信端末４０ａ〜４０ｃへデータ送信中、受信端末４０ａにおいて、シーケンス番号２０１のパケット、シーケンス番号２０１の再送パケット、シーケンス番号３０１のパケットの、各パケットロスが発生しているものとする。このとき、受信端末４０のデータ通信支援要請部３０−５は、自端末のデータ確認応答部４０−２が送信するＡＣＫのＡＣＫ番号が一定値以下しか進んでいないことを判定した（送信端末４との通信における確認応答に格納されているＡＣＫ番号が、単位時間当たりに一定値以上更新されていないと判定した）とすると（ステップＳ１５０１）データ送信を要求するデータ通信支援要請メッセージを近隣の端末へ送信する（ステップＳ１５０２）。そして、データ通信支援要請メッセージを受信したデータ通信支援端末４００は、データ通信支援要請メッセージに格納されているデータの識別情報に基づいて、当該メッセージによって受信端末４０ａが要求するデータを保持しているかどうかデータ蓄積部４００−４を確認する。そして、保持している場合には、データ通信支援要請応答メッセージを受信端末４０ａへ返信する（ステップＳ１５０３）。またデータ通信支援端末４００は、支援通信開始要求メッセージを受信端末４０ａへ送信する（ステップＳ１５０４）。
【０１０７】
これにより、受信端末４０ａのセッション切断指示部４０−４が、セッション制御部４０−１へ送信端末４との通信セッション切断を要求し、セッション制御部４０−１がセッション切断を送信端末４へ通知する（ステップＳ１５０５）。そして、セッションが切断されると受信端末４０ａの支援通信制御部４０−７はデータ通信支援端末４００へデータ通信支援要請応答メッセージを送信する（ステップＳ１５０６）。これにより、支援通信制御部４００−６はセッション制御部４００−１へ受信端末４０ａにデータ送信するようにセッション開設を指示する。するとセッション開設後、データ通信支援端末４００のセッション制御部４００−１は、受信端末４０ａへデータ転送を開始する（ステップＳ１５０７）。
【実施例５】
【０１０８】
次に、本発明の実施例５について図面を利用して説明する。
図１６は、実施例５における通信システムの概要を示す図である。
本実施例は、図１６に示すように、送信端末５、送信端末５０１、受信端末５０ａ〜５０ｃ、データ通信支援端末５００から構成されている。送信端末５は、受信端末５０ａ〜５０ｃに対してデータをブロードキャストしており、送信端末５０１は、データ通信支援端末５００に対してデータを送信している。送信端末５と送信端末５０１は同じデータを送信しているものとする。また受信端末５０は、送信端末５から送信されるデータの自端末での受信において、一定数以上のパケットロスを検知し、また、データ通信支援端末５００のＡＣＫを傍受して、一定量以上のデータを受信していること検知した場合には、データ通信支援端末５００へ、データ送信を要求する。これにより、データ送信支援端末５００はデータ送信を受諾して受信端末５０へデータを送信する。なお、図１６で示すように、前提として、受信端末５０ａからの電波到達範囲内に送信端末５とデータ通信支援端末５００が存在し、送信端末５０１の電波到達範囲内にはデータ通信支援端末５００のみが存在し、またデータ通信支援端末５００の電波到達範囲内に受信端末５０と送信端末５０１のみが存在しているものとする。
【０１０９】
（構成の説明）
図１７は送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
次に、本実施例の構成について、図１７を用いて説明する。
本実施例５の送信端末５、送信端末５０１は、実施例４の送信端末４と同じ構成で、同じ動作を行う。
また受信端末５０は、実施例４の受信端末４０に対して、他端末通信検知部５０−５が加えられた構成である。また、受信端末５０のデータ通信支援要請部５０−６は、実施例４における受信端末４０のデータ通信支援部４０−５と比較してその動作が異なる。ここではその差分を説明する。
【０１１０】
受信端末５０の他端末通信検知部５０−５は、他の端末（データ通信支援端末５００）の通信を傍受し、データ通信支援要請部５０−６へ通知する。また受信端末５０のデータ通信支援要請部５０−６は、データ確認応答部５０−２を監視して、パケットロスの情報を取得するだけでなく、他端末通信検知部５０−５から通知される通信内容のうち、ＡＣＫの場合、ＡＣＫに含まれるデータを一意に識別する情報を参照し、送信端末５からデータを受信しているか確認する。また、ＡＣＫ番号から、他の端末（データ通信支援端末５００）が、送信端末５より送信されたデータ全体のうちの受信しているデータ量を算出する。受信端末５０は、自身が一定数以上のパケットロスし、かつ、他の端末が一定量以上のデータを受信していれば、その端末に対してデータ送信を要請するデータ通信要請メッセージを送信する。
【０１１１】
また、データ通信支援端末５００は、実施例４の構成に対して、データ確認応答部５００−５が加えられた構成である。データ確認応答部５００−５は、受信端末５０のデータ確認応答部５０−２と同じ動作を行う処理部であり、送信端末５０１から送信されるデータパケットに対してＡＣＫを送信する処理を行う。
【０１１２】
（動作の説明）
図１８は実施例５における通信システム内の各端末間の通信の処理フローを示す図である。
次に、図１８を用いて、実施例５における各端末の動作について説明する。
なお、本実施例の動作は、実施例４の動作と同様の処理が多いため、差分についてのみ説明する。この差分の処理は、受信端末５０が、データ通信支援端末５００のＡＣＫを傍受してデータ通信支援要請メッセージを送信する処理と、データ通信開始タイミングを決定する処理である。まず、受信端末５０は、データ確認応答部５０−２を監視し、送信端末１から送信されたデータの一定数以上のパケットロスを確認する（ステップＳ１８０１）。また、データ通信支援端末５００のＡＣＫを傍受し、当該ＡＣＫに含まれるデータを一意に識別する情報を確認し、送信端末５が送信しているデータを受信していると確認できると、そのデータ通信支援端末５００の送信したＡＣＫ番号やデータを一意に識別するための識別情報から当該データ通信支援端末５００が一定量以上データを受信したかを確認する。そして、一定量以上データをデータ通信支援端末５００で受信できていれば、そのデータ通信支援端末５００へ、データ送信を要請するデータ通信支援要請メッセージを送信する（ステップＳ１８０２）。
【０１１３】
そして、データ通信支援要請メッセージを受信したデータ通信支援端末５００は、データ通信支援要請メッセージに格納されているデータの識別情報に基づいて、当該メッセージによって受信端末５０ａが要求するデータを保持しているかどうかデータ蓄積部５００−４を確認する。そして、保持している場合には、データ通信支援要請応答メッセージを受信端末５０ａへ返信する（ステップＳ１８０３）。
【０１１４】
ここで、送信端末５または送信端末５０１の送信するデータ全体のサイズを６００００ｂｙｔｅとする。また、データ通信支援端末５００がそのデータのうちの９０％以上のデータを受信していれば、受信端末５０は、送信端末５から受信できなかったデータの送信を、データ通信端末５００に対して要請するとする。受信端末５０が傍受したＡＣＫのＡＣＫ番号が、５８０１であるとすると、約９７％（＝５８０００／６００００×１００）のデータを受信していることがわかり、データ通信支援要請メッセージを送信する。
また、データ通信開始タイミングを決定する処理については、データ通信支援端末５００の支援通信制御部５００−７は、送信端末５０１からのデータ受信終了を確認し、データ通信開始要求メッセージを送信する（ステップＳ１８０４）。
【０１１５】
これにより、受信端末５０ａのセッション切断指示部５０−４が、セッション制御部５０−１へ送信端末５との通信セッション切断を要求し、セッション制御部５０−１がセッション切断を送信端末５へ通知する（ステップＳ１８０５）。そして、セッションが切断されると受信端末５０ａの支援通信制御部５０−８はデータ通信支援端末５００へデータ通信支援要請応答メッセージを送信する（ステップＳ１８０６）。これにより、支援通信制御部５００−７はセッション制御部５００−１へ受信端末５０ａにデータ送信するようにセッション開設を指示する。するとセッション開設後、データ通信支援端末５００のセッション制御部５００−１は、受信端末５０ａへデータ転送を開始する（ステップＳ１８０７）。
【０１１６】
以上、本発明の実施例について説明したが、上述の実施例では、送信端末から送信されたデータのパケットロスを頻発してデータ受信品質が悪くなった無線端末は、近隣に、他の端末からデータを受信して既にデータを保持している、もしくは、データ全体のうち一定量以上受信して保持している端末がいるかどうか探索し、見つかった場合に該当する端末からデータを受信している。
また、既にデータを保持している、もしくは、データ全体のうち一定量以上受信して保持している端末が、パケットロスを頻発している端末を発見して、該端末へデータを転送している（「既にデータを保持している、もしくは、データ全体のうち一定量以上受信して蓄積している端末」をデータ通信支援端末と呼ぶ。）。そして、データ通信支援端末が存在する場合、送信端末から送信されてデータを受信する無線端末である受信端末は、元の送信端末に対して再送要求を行う確率をデータ通信支援端末数に依存して決定、もしくは通信セッションを切断する。そして、代わりにデータ通信支援端末からデータを受信している。
【０１１７】
このような処理により、受信端末において送信端末からのデータ受信状況が悪く、同じデータを同じタイミングで受信している端末が当該受信端末の通信範囲に存在していない場合、正常なデータ受信をあきらめざるを得なかったが、近隣に、送信端末が送信しているデータと同一のデータを記憶しているデータ通信支援端末がいるかどうか探索し、存在する場合に該データ通信支援端末からデータを受信できるようになる。
【０１１８】
また上述のような処理により、受信端末が、データ通信支援端末からデータ受信すると決定した場合、送信端末に対してのセッション切断により送信端末へのデータの再送要求を遮断させるため、これにより送信端末からの受信端末への再送が減少し、他のパッケトロスなくデータが受信できている受信端末にとっての通信効率を向上させることができる。
【０１１９】
なお、上述の各端末は内部に、コンピュータシステムを有している。そして、上述した各処理の過程は、プログラムの形式でコンピュータ読み取り可能な記録媒体に記憶されており、このプログラムをコンピュータが読み出して実行することによって、上記処理が行われる。ここでコンピュータ読み取り可能な記録媒体とは、磁気ディスク、光磁気ディスク、ＣＤ−ＲＯＭ、ＤＶＤ−ＲＯＭ、半導体メモリ等をいう。また、このコンピュータプログラムを通信回線によってコンピュータに配信し、この配信を受けたコンピュータが当該プログラムを実行するようにしても良い。
【０１２０】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。さらに、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であっても良い。
【図面の簡単な説明】
【０１２１】
【図１】実施例１における通信システムの概要を示す図である。
【図２】送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
【図３】ＮＡＣＫ送信確率の計算方法の概要を示す図である。
【図４】支援端末リストのデータ例を示す図である。
【図５】実施例１における送信端末と受信端末との間の通信の処理フローを示す図である。
【図６】実施例１における通信システム内の各端末間の通信の処理フローを示す図である。
【図７】実施例２における通信システムの概要を示す図である。
【図８】実施例２における送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
【図９】実施例２における通信システム内の各端末間の通信の処理フローを示す図である。
【図１０】実施例３における通信システムの概要を示す図である。
【図１１】実施例３における送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
【図１２】実施例３における通信システム内の各端末間の通信の処理フローを示す図である。
【図１３】実施例４における通信システムの概要を示す図である。
【図１４】実施例４における送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
【図１５】実施例４における通信システム内の各端末間の通信の処理フローを示す図である。
【図１６】実施例５における通信システムの概要を示す図である。
【図１７】実施例５における送信端末、受信端末、データ通信支援端末の機能構成を示すブロック図である。
【図１８】実施例５における通信システム内の各端末間の通信の処理フローを示す図である。
【図１９】従来のDelay-Tolerant Network Architectureを示す図である。
【図２０】従来の送信端末、中継端末、受信端末で構成されているネットワークを示す図である。
【符号の説明】
【０１２２】
１，２，３，４，５，５０１・・・送信端末
１０ａ〜１０ｃ，２０ａ〜２０ｃ，３０ａ〜３０ｃ，４０ａ〜４０ｃ，５０ａ〜５０ｃ・・・受信端末
１００，２００，３００，４００，５００・・・データ通信支援端末
【図１】
2010148029.tif 000003
【図２】
2010148029.tif 000004
【図３】
2010148029.tif 000005
【図４】
2010148029.tif 000006
【図５】
2010148029.tif 000007
【図６】
2010148029.tif 000008
【図７】
2010148029.tif 000009
【図８】
2010148029.tif 000010
【図９】
2010148029.tif 000011
【図１０】
2010148029.tif 000012
【図１１】
2010148029.tif 000013
【図１２】
2010148029.tif 000014
【図１３】
2010148029.tif 000015
【図１４】
2010148029.tif 000016
【図１５】
2010148029.tif 000017
【図１６】
2010148029.tif 000018
【図１７】
2010148029.tif 000019
【図１８】
2010148029.tif 000020
【図１９】
2010148029.tif 000021
【図２０】
2010148029.tif 000022