Patent ID: 12231348

DESCRIPTION OF THE EMBODIMENTS

Hereinafter, embodiments will be described in detail with reference to the attached drawings. Note, the following embodiments are not intended to limit the scope of the claimed invention, and limitation is not made to an invention that requires a combination of all features described in the embodiments. Two or more of the multiple features described in the embodiments may be combined as appropriate. Furthermore, the same reference numerals are given to the same or similar configurations, and redundant description thereof is omitted.

FIG.1is a conceptual view of a network100including a plurality of mobile communication apparatuses. Here, a case where each of the mobile communication apparatuses is a vehicle will be described as an example, but the mobile communication apparatus of the present embodiment is not limited to a vehicle, and may be, for example, an on-board device detachable to/from a vehicle, or may be a smartphone. Although five vehicles (vehicles200A,200B,200C,200D, and200E) are illustrated inFIG.1, the number of vehicles is not particularly limited. In the following description, when there is no need to distinguish the vehicles, the vehicles included in the network100are referred to as a vehicle200. A specific configuration of the vehicle200will be described later.

In the description of the present embodiment, the network100is configured as, for example, a mesh network. However, a specific configuration of the network100is not particularly limited, and another type of network configuration that performs routing by multi-hop communication may be adopted. In the present embodiment, it is not essential that a plurality of mobile communication apparatuses (a plurality of vehicles200) constitutes a network. The configuration and operation described below may be applied to an environment in which a plurality of mobile communication apparatuses (a plurality of vehicles200) communicate with each other without forming a network, as long as it is technically possible.

A communication control apparatus300controls communication performed among the vehicles200. Details of the control will be described later. InFIG.1, the communication control apparatus300is illustrated as a block independent of the vehicles200, but a hardware configuration for implementing the communication control apparatus300is not particularly limited. As an example, the communication control apparatus300is configured as a server connected to the Internet, and communicates with the vehicles200via the Internet. As another example, each of the vehicles200may include the communication control apparatus300.

InFIG.1, a solid arrow indicates a flow of data having a vehicle200A as an originating source, and a broken arrow indicates a flow of data having a vehicle200C as an originating source. A routing destination of a vehicle200E may be another vehicle (not illustrated) included in the network100, may be a Wi-Fi access point, or may be another type of network node.

FIG.2is a functional block diagram of the vehicle200. Here, functional blocks mainly related to a function as a mobile communication apparatus are illustrated, and functional blocks (such as an engine) related to a function as a vehicle are not illustrated.

A control unit201includes, for example, a CPU, ROM, RAM, and the like, and controls the entire vehicle200by executing various programs. An operation unit202includes, for example, an input device such as a button and a touch panel, and receives an input operation by a user. A storage unit203includes a recording medium such as an HDD and an SDD, and stores various programs. A display unit204includes, for example, a liquid crystal display, and displays a user interface, various types of information, and the like.

A communication unit205is a communication unit having a communication function for the vehicle200to communicate with an external apparatus (another vehicle200, the communication control apparatus300, and the like). The communication unit205may correspond to a plurality of communication methods such as Dedicated Short Range Communications (DSRC), cellular V2X (C-V2X), Wi-Fi, 4G, and 5G. In this case, the communication unit205may use DSRC or C-V2X to communicate with another vehicle200, and may use 5G to communicate with the communication control apparatus300.

A buffer memory206is a memory for storing data received via the communication unit205. When the vehicle200that has received data plays a role as a repeater in the network100, the vehicle200that has received data transfers the data stored in the buffer memory206to another vehicle200that is a relay destination. When the vehicle200that has received the data is a destination (final receiver) of the data, the vehicle200sequentially moves the data stored in the buffer memory206to the storage unit203.

Note that, inFIG.2, the storage unit203and the buffer memory206are illustrated as separate blocks, but these may be configured as integrated hardware. For example, a part of a storage area of the storage unit203may be used as the buffer memory206.

FIG.3is a functional block diagram of the communication control apparatus300. A control unit301includes, for example, a CPU, ROM, RAM, and the like, and controls the entire communication control apparatus300by executing various programs.

A storage unit303includes a recording medium such as an HDD and an SDD, and stores various programs. In addition, the storage unit303stores a reservation setting of the buffer memory206of the vehicle200. The reservation setting is a setting for managing reservation of a capacity of the buffer memory206. The control unit301can increase or decrease a reserved capacity of the buffer memory206by updating the reservation setting as necessary.

A communication unit305is a communication unit for the communication control apparatus300to communicate with the vehicle200. As described above, the communication control apparatus300may be configured as a server connected to the Internet. In this case, the communication control apparatus300is connected to the Internet using the communication unit305and communicates with the vehicle200via the Internet. Alternatively, as described above, each of the vehicles200may include the communication control apparatus300. In this case, the functional blocks illustrated inFIG.2may also serve as the functional blocks illustrated inFIG.3(For example, the control unit201may also serve as the control unit301).

Next, data transmission processing executed by the vehicle200and communication control processing executed by the communication control apparatus300will be described with reference toFIGS.4and5.FIG.4is a flowchart of data transmission processing executed by the vehicle200.FIG.5is a flowchart of the communication control processing executed by the communication control apparatus300.

Referring first toFIG.4, in step S401, the control unit201determines whether there is data to be transmitted to another vehicle200. For example, when a user of the vehicle200instructs transmission of data using the operation unit202, when the vehicle200receives data to be relayed as a repeater in the network100, or the like, it is determined that there is data to be transmitted to another vehicle200. The control unit201repeats the determination in step S401until it is determined that there is data to be transmitted to another vehicle200. When it is determined that there is data to be transmitted to another vehicle200, a processing step proceeds to step S402.

In step S402, the control unit201determines a routing destination of data. A method for determining a routing destination is not particularly limited. For example, when the network100is a mesh network, the control unit201can determine a routing destination of data by using any existing routing technique in the mesh network. For example, consider a case where the vehicle200A is a transmitter of data and the vehicle200E is a destination (final receiver) of the data inFIG.1. In this case, since the vehicle200B located between the vehicle200A and the vehicle200E can serve as a repeater, the control unit201can determine the vehicle200B as a routing destination of data.

Hereinafter, a case where a transmitter of data is the vehicle200A and a routing destination of data is the vehicle200B will be described as an example.

In step S403, the control unit201determines whether an amount of data to be transmitted is equal to or larger than a threshold (equal to or larger than a second threshold). When the data amount is equal to or larger than the threshold (equal to or larger than the second threshold), the processing step proceeds to step S404, and when the data amount is less than the threshold (less than the second threshold), the processing step proceeds to step S407.

In step S404, the control unit201of the vehicle200A (first mobile communication apparatus) transmits a request (transmission permission request) for permission of data transmission to the vehicle200B (second mobile communication apparatus) to the communication control apparatus300. The transmission permission request may include information indicating data amount of data to be transmitted.

Here, prior to descriptions after step S405, the communication control processing executed by the communication control apparatus300will be described with reference toFIG.5. In step S501, the control unit301of the communication control apparatus300determines whether a transmission permission request has been received. The control unit301repeats the determination of step S501until it is determined that the transmission permission request has been received. When it is determined that the transmission permission request has been received, the processing step proceeds to step S502. Here, it is assumed that the control unit301receives the transmission permission request for the vehicle200B described in step S404from the vehicle200A.

In step S502, the control unit301determines whether to permit data transmission based on the free capacity of the buffer memory206of the vehicle200B and the reserved capacity indicated by the reservation setting of the buffer memory206. This determination is performed in order to reduce a possibility that data reception fails due to insufficient capacity of the buffer memory206of the vehicle200B. Therefore, when there is a high possibility of insufficient capacity of the buffer memory206, the control unit301determines not to permit data transmission.

A specific determination method in step S502is not particularly limited, and any determination method can be used as long as the possibility that data reception fails due to the insufficient capacity of the buffer memory206can be reduced as much as possible. For example, the control unit301determines to permit data transmission when a capacity obtained by subtracting the reserved capacity from the free capacity is equal to or larger than a threshold, and otherwise determines not to permit data transmission.

Alternatively, the control unit301may determine whether to permit data transmission based on data amount of the requested data transmission in addition to the free capacity and the reserved capacity.

Also in this case, a specific determination method is not particularly limited, and any determination method can be used as long as the possibility that the data reception fails due to the insufficient capacity of the buffer memory206can be reduced as much as possible. For example, the control unit301determines an upper limit (allowable data amount) of the amount of data that can be transmitted by the vehicle200A based on the free capacity and the reserved capacity. Then, the control unit301determines to permit data transmission when the data amount of the requested data transmission does not exceed the allowable data amount, and otherwise determines not to permit data transmission.

The allowable data amount may be data amount corresponding to a capacity obtained by subtracting the reserved capacity from the free capacity, or may be data amount corresponding to a capacity obtained by subtracting the reserved capacity and a predetermined margin capacity from the free capacity. By considering the predetermined margin capacity as in the latter case, it is possible to reduce a possibility that the buffer memory206is completely full. This can reduce a possibility that the vehicle200B cannot receive other important data.

When the data amount of the requested data transmission is less than a threshold (less than a first threshold), it is considered that the possibility that data reception fails due to the insufficient capacity of the buffer memory206is relatively low regardless of the free capacity and the reserved capacity of the buffer memory206. Therefore, when the data amount of the requested data transmission is less than the threshold (less than the first threshold), the control unit301may determine to permit data transmission regardless of the free capacity and the reserved capacity of the buffer memory206.

In step S503, the control unit301determines whether to permit data transmission based on the determination result in step S502. When data transmission is permitted, the processing step proceeds to step S504, and otherwise the processing step proceeds to step S506.

In step S504, the control unit301updates the reservation setting of the buffer memory206of the vehicle200B such that the capacity for the received data corresponding to the data transmission to be permitted is added to the reserved capacity. Therefore, when a subsequent transmission permission request with the vehicle200B as a data transmission destination is received, the determination of step S502for the subsequent transmission permission request is performed based on the reservation setting updated in step S504.

A size of a capacity to be added to the reserved capacity is not particularly limited. For example, the control unit301determines the size of the capacity to be added to the reserved capacity based on the data amount of the requested data transmission. For example, the control unit301may add a capacity corresponding to the data amount of the requested data transmission to the reserved capacity. Alternatively, the control unit301may add a certain capacity to the reserved capacity without considering the data amount of the requested data transmission.

In step S505, the control unit301transmits a response (transmission permission response) indicating that the data transmission is permitted to the vehicle200A. Thereafter, the processing step returns to step S501, and the control unit301waits for a subsequent transmission permission request.

When the processing step proceeds from step S503to step S506, the control unit301transmits a response (transmission rejection response) indicating that the data transmission is rejected. The transmission rejection response may include information indicating the allowable data amount (the upper limit of the amount of data that can be transmitted by the vehicle200A). Thereafter, the processing step returns to step S501, and the control unit301waits for a subsequent transmission permission request.

Here, processing after step S405of the vehicle200A will be described with reference toFIG.4again. In step S405, the control unit201of the vehicle200A receives a response to the transmission permission request transmitted in step S404from the communication control apparatus300. The response received here is the response transmitted in step S505or step S506, that is, the transmission permission response or the transmission rejection response. Further, as described above, the transmission rejection response may include information indicating the allowable data amount.

In step S406, the control unit201of the vehicle200A determines whether data transmission is permitted based on the response received in step S405. When data transmission is permitted, the processing step proceeds to step S407, and otherwise the processing step proceeds to step S408.

In step S407, the control unit201transmits data to the vehicle200B as a routing destination. Thereafter, the processing step returns to step S401, and the control unit201waits for generation of subsequent data to be transmitted.

Note that, as can be understood fromFIG.4, when it is determined in step S403that the data amount is less than a threshold value (less than the second threshold value), the control unit201transmits the data in step S407without transmitting a transmission permission request to the communication control apparatus300. This is because, when the amount of data to be transmitted is small, it is considered that there is a relatively low possibility that the capacity of the buffer memory206becomes insufficient in the vehicle200B that receives the data.

When the processing step proceeds from step S406to step S408, the control unit201divides original data to be transmitted into data to be transmitted to the vehicle200B and remaining data to be transmitted based on the allowable data amount indicated by the information included in the transmission rejection response. This division is performed so that the amount of data to be transmitted to the vehicle200B does not exceed the allowable data amount. Thereafter, the control unit201performs the processing after step S402for each of the data to be transmitted to the vehicle200B and the remaining data to be transmitted. At that time, the control unit201determines the vehicle200B as the routing destination for the data to be transmitted to the vehicle200B, and determines another vehicle as the routing destination for the remaining data to be transmitted.

Next, a modified example of the communication control processing executed by the communication control apparatus300will be described with reference toFIG.6. InFIG.6, steps in which processing identical or similar to those inFIG.5are denoted by reference numerals identical to those inFIG.5. In this modified example, the reservation setting of the buffer memory206defines temporal changes in reserved capacity. Therefore, the control unit301can know a reserved capacity at a specific time by referring to a reservation setting.

In step S601, the control unit301predicts time required for data transmission. A prediction method is not particularly limited, but for example, the control unit301can predict the required time according to the following formula (1).
SendTime=DataAmount/min(Bitrate_Tx,Bitrate_Rx)  (1)

provided that

SendTime: estimated required time [sec]

DataAmount: amount of data to be transmitted [bit]

Bitrate Tx: available bandwidth of the vehicle200on a transmission side [bps]

Bitrate Rx: available bandwidth of the vehicle200on a receiving side [bps]

In step S602, the control unit301predicts start time of data transmission. The reason for making this prediction is that, for example, even if the vehicle200B is selected as a routing destination of the vehicle200A, the vehicle200A and the vehicle200B are not necessarily in a communicable positional relationship at a time of the selection. A prediction method is not particularly limited, but the control unit301can predict, as the start time of data transmission, a time at which the vehicle200A and the vehicle200B are in a positional relationship in which direct communication is possible based on, for example, information indicating a scheduled moving route of the vehicle200A (first route information) and information indicating a scheduled moving route of the vehicle200B (second route information).

Note that a method by which the control unit301acquires the first route information and the second route information is also not particularly limited. For example, a configuration can be adopted in which a server that manages the network100acquires and stores route information of each vehicle200from each vehicle200, and the control unit301acquires necessary route information from this server.

In step S603, the control unit301determines whether to permit data transmission. As a determination method in step S603, as in step S502inFIG.5, various determination methods using the free capacity and the reserved capacity (In addition, the data amount of the requested data transmission in some cases) of the buffer memory206can be used. However, the determination method in step S603is different from the determination method in step S502in that the reserved capacity at the start time predicted in step S602is used.

In step S604, the control unit301updates, as in step S504ofFIG.5, the reservation setting of the buffer memory206of the vehicle200B such that the capacity for the received data corresponding to the data transmission to be permitted is added to the reserved capacity. However, unlike step S504, the updating in step S604is performed in consideration of the required time predicted in step S601.

For example, the control unit301can update the reservation setting such that the reserved capacity includes the capacity for the received data over the required time. As a result, the buffer memory206can be reserved for a time zone in which data transmission from the vehicle200A to the vehicle200B is actually performed.

Furthermore, the control unit301may update the reservation setting in consideration of the start time predicted in step S602in addition to the required time predicted in step S601. For example, the control unit301can update the reservation setting such that the reserved capacity includes the capacity for the received data over the required time from the start time. The buffer memory206can be reserved so as to more accurately cover a time zone in which data transmission from the vehicle200A to the vehicle200B is actually performed.

Alternatively, the control unit301may determine a completion time of the data transmission based on the start time and the required time, and update the reservation setting such that the reserved capacity includes the capacity for the received data over a time from a current time to the completion time. In this case, the capacity for the received data is also reserved for a time zone before the start time of data transmission (a time zone from the current time to the start time). As a result, before the start of data transmission from the vehicle200A to the vehicle200B, another vehicle200(for example, the vehicle200C) transmits data to the vehicle200B, and it is possible to reduce the possibility that the capacity of the buffer memory206becomes insufficient at the start time of data transmission from the vehicle200A to the vehicle200B.

As described above, the possibility that the capacity of the buffer memory206becomes insufficient can be further reduced by considering the start time of data transmission when determining whether to permit data transmission or considering the required time (or the required time and the start time) of data transmission when updating the reservation setting.

Summary of Embodiments

The foregoing embodiments disclose at least the following communication control apparatus, communication system, communication control method, and storage medium.

[Item 1]

A communication control apparatus comprising a processor configured to:receive, from a first mobile communication apparatus, a request for permission of data transmission to a second mobile communication apparatus, the second mobile communication apparatus including a buffer memory to store received data;determine whether to permit the data transmission based on a free capacity of the buffer memory and a reserved capacity indicated by a reservation setting of the buffer memory;update, when the data transmission is determined to be permitted, the reservation setting such that a capacity for received data corresponding to the data transmission is added to the reserved capacity; andtransmit, when the data transmission is determined to be permitted, a response indicating that the data transmission is permitted to the first mobile communication apparatus.

According to this embodiment, when the requested data transmission is permitted, the capacity for the received data is added to the reserved capacity of the buffer memory. Then, whether to permit the requested data transmission is determined based on the free capacity and the reserved capacity of the buffer memory. Therefore, according to this embodiment, in an environment where a plurality of mobile communication apparatuses may desire to select an identical mobile communication apparatus as a data transmission destination, it is possible to reduce the possibility that the capacity of the buffer memory of the second mobile communication apparatus that receives data becomes insufficient.

[Item 2]

The communication control apparatus according to item 1, whereinthe request for permission of the data transmission includes information indicating data amount of the data transmission, andthe processor determines a size of the capacity for the received data to be added to the reserved capacity based on the data amount of the data transmission.

According to this embodiment, since it is possible to add different capacities to the reserved capacity according to the data amount of the requested data transmission, it is possible to further reduce the possibility that the capacity of the buffer memory of the second mobile communication apparatus that receives the data becomes insufficient.

[Item 3]

The communication control apparatus according to item 2, whereinthe processor determines whether to permit the data transmission based on the free capacity and the reserved capacity of the buffer memory, and the data amount of the data transmission.

According to this embodiment, it is possible to further reduce the possibility that the capacity of the buffer memory of the second mobile communication apparatus that receives data becomes insufficient.

[Item 4]

The communication control apparatus according to item 3, whereinthe processor determines to permit the data transmission when the data amount of the data transmission does not exceed allowable data amount determined based on the free capacity and the reserved capacity of the buffer memory.

According to this embodiment, it is possible to further reduce the possibility that the capacity of the buffer memory of the second mobile communication apparatus that receives data becomes insufficient.

[Item 5]

The communication control apparatus according to item 4, whereinthe allowable data amount is a data amount corresponding to a capacity obtained by subtracting the reserved capacity and a predetermined margin capacity from the free capacity of the buffer memory.

According to this embodiment, it is possible to reduce the possibility that the buffer memory is completely full due to the requested data transmission. This can reduce a possibility that the second mobile communication apparatus cannot receive other important data.

[Item 6]

The communication control apparatus according to item 4, whereinwhen the data transmission is determined not to be permitted, the processor transmits a response including information indicating the allowable data amount to the first mobile communication apparatus.

According to this embodiment, the first mobile communication apparatus can know the amount of data that can be transmitted, and for example, can appropriately divide and transmit data.

[Item 7]

The communication control apparatus according to item 2, whereinwhen the data amount of the data transmission is less than a first threshold, the processor determines to permit the data transmission regardless of the free capacity and the reserved capacity of the buffer memory.

According to this embodiment, it is possible to reduce a possibility that data transmission is rejected although the possibility that the buffer memory becomes insufficient is relatively low.

[Item 8]

The communication control apparatus according to item 1, wherein the processor is further configured topredict a required time for the data transmission, whereinthe reservation setting is configured to define temporal changes of the reserved capacity, andthe processor updates the reservation setting such that the reserved capacity includes the capacity for the received data over the required time.

According to this embodiment, the buffer memory can be reserved for a time zone in which data transmission from the first mobile communication apparatus to the second mobile communication apparatus is actually performed.

[Item 9]

The communication control apparatus according to item 8, wherein the processor is further configured topredict a start time of the data transmission, whereinthe processor updates the reservation setting such that the reserved capacity includes the capacity for the received data over the required time from the start time.

According to this embodiment, it is possible to reserve the buffer memory so as to more accurately cover the time zone in which the data transmission from the first mobile communication apparatus to the second mobile communication apparatus is actually performed.

[Item 10]

The communication control apparatus according to item 8, wherein the processor is further configured topredict a start time of the data transmission, whereinthe processor updates the reservation setting such that the reserved capacity includes the capacity for the received data over a time from a current time to a completion time of the data transmission determined based on the start time and the required time.

According to this embodiment, it is possible to reduce the possibility that the capacity of the buffer memory becomes insufficient at the start of data transmission from the first mobile communication apparatus to the second mobile communication apparatus, when another mobile communication apparatus transmits data to the second mobile communication apparatus before the start of data transmission from the first mobile communication apparatus to the second mobile communication apparatus.

[Item 11]

The communication control apparatus according to item 9, wherein the processor is further configured toacquire first route information indicating a scheduled moving route of the first mobile communication apparatus and second route information indicating a scheduled moving route of the second mobile communication apparatus, whereinthe processor predicts, as the start time, a time at which the first mobile communication apparatus and the second mobile communication apparatus are in a positional relationship in which direct communication is possible, based on the first route information and the second route information.

According to this embodiment, it is possible to more accurately predict the start time of data transmission.

[Item 12]

The communication control apparatus according to item 9, whereinthe processor determines whether to permit the data transmission based on the free capacity of the buffer memory and the reserved capacity at the start time indicated by the reservation setting.

According to this embodiment, it is possible to further reduce the possibility that the capacity of the buffer memory of the second mobile communication apparatus that receives data becomes insufficient.

[Item 13]

The communication control apparatus according to item 1, whereinthe communication control apparatus is included in the second mobile communication apparatus.

According to this embodiment, the communication control apparatus and the second mobile communication apparatus can be integrated.

[Item 14]

The communication control apparatus according to item 1, whereinthe first mobile communication apparatus and the second mobile communication apparatus are on-board devices.

According to this embodiment, the first mobile communication apparatus and the second mobile communication apparatus can be mounted on a vehicle.

[Item 15]

A communication system comprising:the communication control apparatus according to item 1; andthe first mobile communication apparatus, whereinthe first mobile communication apparatus comprises a processor configured to:determine whether data amount of the data transmission to the second mobile communication apparatus is equal to or larger than a second threshold;transmit, to the communication control apparatus, the request for permission of the data transmission to the second mobile communication apparatus when the data amount of the data transmission is equal to or larger than the second threshold;receive the response indicating that the data transmission is permitted in response to the request for permission of the data transmission; andexecute the data transmission to the second mobile communication apparatus when the response indicating that the data transmission is permitted is received or the data amount of the data transmission is less than the second threshold.

According to this embodiment, the first mobile communication apparatus can quickly start transmitting relatively small data. In addition, processing loads of the communication control apparatus and the first mobile communication apparatus are reduced.

[Item 16]

A communication control method executed by a communication control apparatus, comprising:receiving, from a first mobile communication apparatus, a request for permission of data transmission to a second mobile communication apparatus, the second mobile communication apparatus including a buffer memory to store received data;determining whether to permit the data transmission based on a free capacity of the buffer memory and a reserved capacity indicated by a reservation setting of the buffer memory;updating, when the data transmission is determined to be permitted, the reservation setting such that a capacity for received data corresponding to the data transmission is added to the reserved capacity; andtransmitting, when the data transmission is determined to be permitted, a response indicating that the data transmission is permitted to the first mobile communication apparatus.

According to this embodiment, when the requested data transmission is permitted, the capacity for the received data is added to the reserved capacity of the buffer memory. Then, whether to permit the requested data transmission is determined based on the free capacity and the reserved capacity of the buffer memory. Therefore, according to this embodiment, in an environment where a plurality of mobile communication apparatuses may desire to select an identical mobile communication apparatus as a data transmission destination, it is possible to reduce the possibility that the capacity of the buffer memory of the second mobile communication apparatus that receives data becomes insufficient.

[Item 17]

A non-transitory computer-readable storage medium which stores a program for causing a computer to execute a communication control method comprising:receiving, from a first mobile communication apparatus, a request for permission of data transmission to a second mobile communication apparatus, the second mobile communication apparatus including a buffer memory to store received data;determining whether to permit the data transmission based on a free capacity of the buffer memory and a reserved capacity indicated by a reservation setting of the buffer memory;updating, when the data transmission is determined to be permitted, the reservation setting such that a capacity for received data corresponding to the data transmission is added to the reserved capacity; andtransmitting, when the data transmission is determined to be permitted, a response indicating that the data transmission is permitted to the first mobile communication apparatus.

According to this embodiment, when the requested data transmission is permitted, the capacity for the received data is added to the reserved capacity of the buffer memory. Then, whether to permit the requested data transmission is determined based on the free capacity and the reserved capacity of the buffer memory. Therefore, according to this embodiment, in an environment where a plurality of mobile communication apparatuses may desire to select an identical mobile communication apparatus as a data transmission destination, it is possible to reduce the possibility that the capacity of the buffer memory of the second mobile communication apparatus that receives data becomes insufficient.

Note that no particular limitation is intended with regard to the specific configurations of software and hardware for implementing various types of functions that have been described in the foregoing embodiments. Arbitrary software, arbitrary hardware, and an arbitrary combination of arbitrary software and arbitrary hardware are encompassed within the scope of the foregoing embodiments, as long as they are technically possible.

Although the embodiments of the invention have been described above, the invention is not limited to the foregoing embodiments, and various variations/changes are possible within the spirit of the invention.