Communication control device, communication control procedure and communication control program

By implementing a communication control device with an administrative unit that adjusts communication control based on mobile object density, the system addresses high overhead and service quality issues in data transmission for mobile objects, ensuring efficient network performance.

DE112018006898B4Inactive Publication Date: 2025-03-13MITSUBISHI ELECTRIC CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
DE112018006898
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Filing Date
2018-01-19
Publication Date
2025-03-13
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

Existing data transmission systems for mobile objects require constant recording of reception conditions, leading to high communication control overhead and potential service quality deterioration as the number of receiving end devices increases.

Method used

A communication control device is installed in each mobile object, featuring an administrative unit that determines whether communication control is necessary based on the density of mobile objects in the administrative network, adjusting transmission times only when the density is high.

Benefits of technology

This approach minimizes service quality deterioration at the application level by reducing unnecessary communication control operations, thereby optimizing network load and performance.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Communication control device (100, 100a) installed in each of mobile objects forming a management network for communication with each other, wherein the mobile objects acquire content data from a content server, the communication control device comprising: an administrative unit (110) to determine whether communication control should be performed when acquiring the content data, based on a density of mobile objects in the administrative network, wherein the communication control includes exclusive control between the mobile objects; a storage unit (150) to store a semaphore used for exclusive control between the mobile objects; and a control unit (130) to use, when it is determined that communication control is to be carried out, the semaphore stored in the storage unit (150) to acquire a transmission right to transmit a transmission request to the content server to request transmission of the content data, to acquire the content data by transmitting the transmission request, and after acquiring the content data, to use the semaphore stored in the storage unit (150) to return the transmission right.
Need to check novelty before this filing date? Find Prior Art

Description

Technical area

[0001] The present invention relates to a communication control device, a communication control method and a communication control program. State of the art

[0002] Patent Literature 1 discloses a data transmission system for mobile objects. Patent Literature 1 discloses the data transmission system in which a transmitting terminal acquires reception states from receiving terminals via a communication network, and the transmission operation is controlled based on the reception states. In this data transmission system, the packet drop rate is used for transmission prioritization.

[0003] US 2015 / 0 189 065 A1 describes a method for downloading content.

[0004] US 2017 / 0 295 226 A1 describes systems for managing user collaboration on objects stored on a cloud-based service platform. List of cited publicationsPatent literature

[0005] Patent Literature 1: JP 2005-033548 A Summary of the inventionTechnical problem

[0006] The data transmission system for mobile objects in Patent Literature 1 must continuously detect reception states. Therefore, even in situations where communication control is not necessary, a communication control process is performed. As a result, the overhead associated with the control is high. If the number of receiving terminals increases, the load may be concentrated on the transmitting terminal, and service quality may deteriorate.

[0007] The present invention provides a communication control device that adjusts the transmission timing between mobile objects only when the density of mobile objects requiring communication control is high. It is an object of the present invention to minimize the degradation of service quality at an application level by this communication control device. Solution to the problem

[0008] A communication control device according to the present invention is installed in each of the mobile objects forming a management network for communicating with each other, wherein the mobile objects acquire content data from a content server, and the communication control device comprises: a management unit to determine whether to perform communication control when acquiring the content data based on a density of the mobile objects in the management network. Advantageous effects of the invention

[0009] A communication control device according to the present invention is installed in a mobile object. A management unit determines whether communication control should be performed when acquiring content data based on a density of the mobile objects in a management network. Therefore, in the communication control device according to the present invention, communication control is performed only when the density of the mobile objects is high, so that deterioration in service quality at an application level can be minimized. Brief description of the drawings Fig. 1 is a conceptual diagram of a communication control system according to a first embodiment; Fig. 2 is a configuration diagram of a communication control device according to the first embodiment; Fig. 3 is a configuration diagram of a communication management table according to the first embodiment; Fig. 4 is a general flowchart of a communication control process by the communication control device according to the first embodiment; Fig. 5 is a flowchart of a management process according to the first embodiment; Fig. 6 is a flowchart of a metadata acquisition process according to the first embodiment; Fig. 7 is a flowchart of a control process according to the first embodiment; Fig. 8 is a configuration diagram of the communication control device according to a variant of the first embodiment; Fig. 9 is a configuration diagram of a communication control device according to a second embodiment; Fig. 10 is a flowchart of a control process according to the second embodiment; and Fig. 11 is a flowchart of a cache management process according to the second embodiment. Description of embodiments

[0010] Embodiments of the present invention will be explained below with reference to the drawings. Note that like or corresponding parts are designated by like reference numerals throughout the drawings. In the description of the embodiment, the description of like or corresponding parts will be simplified or omitted where appropriate. First embodimentConfiguration description

[0011] The concept of a communication control system 500 according to this embodiment will be explained with reference to Fig. 1 explained.

[0012] The communication control system 500 comprises mobile objects 11. Each mobile object 11 of the mobile objects 11 acquires content data 141 from a content server 14. A communication control device 100 is installed in each mobile object 11 of the mobile objects 11.

[0013] A management network 10 is formed from mobile objects 11. The management network 10 is a logical network configured using a technology such as peer-to-peer (P2P) to exchange control data necessary for communication control between the mobile objects 11. A physical network forming the management network 10 is an ad hoc network 12.

[0014] The ad hoc network 12 is a network composed of the mobile objects 11 that are temporarily connected to each other via a relay function of the mobile objects 11.

[0015] The mobile objects 11 also communicate with a base station 15 to acquire content data from the content server 14 provided over a wide area network 13.

[0016] Wide area network 13 refers to a network such as the Internet, a public network, or a dedicated network.

[0017] The content server 14 is an existing server that transmits content data 141, such as video, HyperText Markup Language (HTML) documents or programs.

[0018] The base station 15 is a connection point, such as a cellular base station or a wireless wide area local area network (LAN) access point. The base station 15 is the first connection point for the mobile objects 11 for acquiring content data 141.

[0019] A configuration of the communication control device 100 according to this embodiment will be described with reference to Fig. 2 described.

[0020] As in Fig. 2, the mobile object 11 has the communication control device 100.

[0021] The communication control device 100 is a computer. The communication control device 100 includes a processor 910 and also includes other hardware components, such as a storage device 920 and a communication device 950. The storage device 920 includes a memory and an auxiliary storage device. The processor 910 is connected to other hardware components via signal lines and controls these other hardware components.

[0022] The communication control device 100 includes, as functional elements, a management unit 110, a metadata acquisition unit 120, a control unit 130, an external communication unit 140, and a storage unit 150. The storage unit 150 stores shared data 151. The shared data 151 includes a semaphore 512 and a communication management table 511.

[0023] The functions of the management unit 110, the metadata acquisition unit 120 and the control unit 130 are realized by software.

[0024] The external communication unit 140 is included in the communication device 950.

[0025] The storage unit 150 is provided in the storage device 920.

[0026] The processor 910 is a device that executes a communication control program. The communication control program is a program for implementing the functions of the management unit 110, the metadata acquisition unit 120, and the control unit 130.

[0027] Processor 910 is an integrated circuit (IC) that performs arithmetic processing. Specific examples of processor 910 include a CPU, a digital signal processor (DSP), and a graphics processing unit (GPU).

[0028] Memory is a storage device used to temporarily store data. Specific examples of memory include static random-access memory (SRAM) and dynamic random-access memory (DRAM).

[0029] An auxiliary storage device is a storage device for storing data. A specific example of an auxiliary storage device is an HDD. Alternatively, the auxiliary storage device can be a portable storage medium, such as an SD (registered trademark) memory card, CF, NAND Flash, flexible disk, optical disk, compact disk, Blu-ray (registered trademark) disc, or DVD. HDD is an abbreviation for Hard Disk Drive. SD (registered trademark) is an abbreviation for Secure Digital. CF is an abbreviation for CompactFlash (registered trademark). DVD is an abbreviation for Digital Versatile Disk.

[0030] The communication device 950 communicates with other devices via a network. The communication device 950 includes a receiver and a transmitter. The communication device 950 is wirelessly connected to a communication network, such as a LAN, the Internet, or a telephone line. In particular, the communication device 950 is a communication chip or a network interface card (NIC). The communication control device 100 transmits and receives messages to and from the content server 14 via the communication device 950.

[0031] The communication control program is loaded into the processor 910 and executed by the processor 910. The memory stores not only the communication control program but also an operating system (OS). The processor 910 executes the communication control program while executing the OS. The communication control program and the OS may be stored in the auxiliary storage device. The communication control program and the OS stored in the auxiliary storage device are loaded into the memory and executed by the processor 910. Note that part or all of the communication control program may be embedded in the OS.

[0032] The communication control device 100 may include a plurality of processors as an alternative to processor 910. These processors share the execution of the communication control program. Each of the processors, like processor 910, is a device that executes the communication control program.

[0033] Data, information, signal values, and variable values ​​used, processed, or output by the communication control program are stored in the memory or auxiliary storage device, or stored in a register or cache memory in the processor 910.

[0034] The “unit” of each unit of the management unit 110, the metadata acquisition unit 120, and the control unit 130 may be interpreted as a “process,” “procedure,” or “step.”

[0035] The communication control program causes a computer to execute each process, operation, or step, where the "unit" of each of the above-mentioned units is interpreted as the "process," the "operation," or the "step." A communication control method is a method performed by the execution of the communication control program by the communication control device 100.

[0036] The communication control program may be stored and provided on a computer-readable recording medium. Alternatively, the communication control program may be provided as a program product.

[0037] Note that the mobile object 11 includes an application execution unit that executes an application program to provide services to a user. In this embodiment, the application execution unit exists outside the communication control device 100. Note that the application execution unit may be present in the communication control device 100. Brief description of the functions of the component elements

[0038] The management unit 110 performs joining and leaving the management network 10 and also acquires, updates, and notifies the shared data 151. The management unit 110 is also referred to as a management network management unit.

[0039] The shared data 151 is data to be shared between the mobile objects 11. The shared data 151 includes information such as the communication management table 511 and the semaphore 512. The shared data 151 is used by the control unit 130 for communication control. Communication control includes exclusive control between the mobile objects. Communication control also includes transmission control of a delivery request for requesting the delivery of content data. Communication control also includes timing control of a processing time for acquiring content data. The semaphore 512 is used for exclusive control, which is performed when each of the mobile objects acquires the content data 141. The communication management table 511 is used for transmission control of the delivery request and timing control of the processing time.

[0040] The communication management table 511 according to this embodiment will be described with reference to Fig. 3 described.

[0041] In the communication management table 511, a priority 515, a waiting time 516, and a maximum communication time 517 for acquiring content data are associated with each other. Priority 515 indicates a level of a data communication request. Priority 515 is also referred to as a data communication request level.

[0042] The waiting time is assumed to be Xn ≤ ... ≤ X1. The maximum communication time is assumed to be Y1 ≤ ... ≤ Yn. By setting the waiting time and the maximum communication time in this way, the acquisition of a transmission right for the mobile object whose priority 515 is high is facilitated. The data download throughput of the mobile object whose priority 515 is high can also be increased. The maximum communication time can be replaced by the amount of download data.

[0043] The metadata acquisition unit 120 acquires metadata from the application execution unit that requires communication with the content server 14. Metadata is information that indicates a property of content data to be acquired from the content server. A concrete example of metadata is information such as the amount of buffered data for video or the time remaining until the map data is used for map data. This information may be estimated values. The metadata acquisition unit 120 may determine metadata based on the protocol of a data packet.

[0044] Fig. Figure 3 illustrates a concrete example where the content data is a video. The amount of pre-acquired data is acquired as metadata. The amount of pre-acquired data is the amount of download data, counted based on a playback point. In the concrete example in Fig. 3, the communication management table 511 is set based on the amount of data acquired in advance.

[0045] The control unit 130 controls the timing and communication time for downloading content data from the content server 14. The control unit 130 is also referred to as a communication control unit.

[0046] When the management unit 110 determines that communication control should be performed, the control unit 130 uses the semaphore 512 stored in the storage unit 150 to acquire the transmission right for transmitting a transmission request to the content server 14 to request the transmission of content data. The control unit 130 acquires the content data by transmitting the transmission request. After acquiring the content data, the control unit 130 uses the semaphore 512 stored in the storage unit 150 to return the transmission right. Upon acquiring the transmission right or returning the transmission right, the control unit 130 transmits the semaphore 512 stored in the storage unit 150 to other mobile objects 11.

[0047] The external communication unit 140 performs the encoding and decoding necessary for exchanging communication data over the network. The external communication unit 140 also communicates with other mobile objects 11 to exchange control data via the ad hoc network 12. The external communication unit 140 also communicates with the base station 15 to download content data from the content server 14.

[0048] The storage unit 150 stores the semaphore 512 used for exclusive control. The storage unit 150 also stores the waiting time 516 for waiting for transmission of a delivery request and the maximum communication time 517, which is the maximum processing time for acquiring content data. In this embodiment, the storage unit 150 stores the communication management table 511 in which the priority 515, the waiting time 516, and the maximum communication time 517 for acquiring content data are associated with each other. Description of the company

[0049] An overview of the general flow of a communication control process S100 by the communication control device 100 according to this embodiment will be described with reference to Fig. 4 described. <Verwaltungsprozess: Schritte S110, S111, S112, und S116>

[0050] In step S110, upon receiving a request to connect to the content server 14, the management unit 110 performs a joining process to join the ad hoc network 12. Specifically, the management unit 110 performs the joining process when the application execution unit generates a request to connect to the content server 14. At this time, the mobile objects that already constitute the management network 10 are to be the other mobile objects. The other mobile objects constitute the management network 10, specifically the ad hoc network 12, for communication with each other.

[0051] The management unit 110 determines whether to perform communication control when acquiring content data based on the density of mobile objects 11 in the management network 10. The management unit 110 determines whether to perform communication control using the number of mobile objects 11 as the density of mobile objects 11. That is, after successfully participating in the ad hoc network 12, the management unit 110 determines whether to perform communication control based on the number of mobile objects 11. The determination of whether to perform communication control is made based on the number of mobile objects 11, that is, whether the density of mobile objects 11 is high.

[0052] In step S111, the management unit 110 determines whether the participation is successful and the number of mobile objects participating in the management network 10 is greater than or equal to a predetermined threshold. Note that a mobile object participating in the management network 10 is referred to as a participating mobile object. If the participation is unsuccessful or the number of participating mobile objects is less than the threshold, the management unit 110 terminates the communication control process.

[0053] If the number of participating mobile objects is smaller than the threshold, the mobile object 11 downloads the content data through a regular process. This means that communication control is not necessary, so the mobile object 11 aborts the communication control process and connects directly to the content server 14. After downloading the content data, the mobile object 11 leaves the management network 10 if it participated in the management network 10.

[0054] If the participation is successful and the number of participating mobile objects is greater than or equal to the threshold, the process proceeds to step S112 to perform communication control using exclusive control. The state in which the number of participating mobile objects is greater than or equal to the threshold is also described as "the density of mobile objects is high."

[0055] In step S112, the management unit 110 acquires shared data. After successfully participating in the ad hoc network 12, the management unit 110 performs a shared data acquisition process to acquire the shared data 151, including the semaphore 512 and the communication management table 511, from one of the other mobile objects. If the shared data cannot be acquired from any of the other mobile objects, the management unit 110 generates the shared data and initializes the semaphore 512 and the communication management table 511 with predetermined values. The process of step S112 will be explained in detail later. <Metadaten-Erwerbungsprozess: Schritt S113>

[0056] In step S113, the metadata acquisition unit 120 acquires metadata from communication data. <Steuerungsprozess: Schritte S114 und S115>

[0057] In step S114, the control unit 130 performs the communication control.

[0058] In step S115, the control unit 130 determines whether control data cannot be exchanged via the management network 10 or a content delivery request no longer exists. A case where the control data cannot be exchanged via the management network 10 occurs particularly when the quality of the ad hoc communication is poor. If the control data cannot be exchanged via the management network 10 or there is no longer a content delivery request, the process proceeds to step S116. If the control data can be exchanged via the management network 10 and a content delivery request exists, the process returns to step S112 and is repeated.

[0059] In step S116, the management unit 110 performs an exit process to exit the management network 10 and terminates the communication control process.

[0060] The management process according to this embodiment will be described with reference to Fig. 5 described in detail.

[0061] In step S010, the management unit 110 determines through step S110 according to Fig. 4, whether a participation request exists. If a participation request exists, the process proceeds to step S011. If no participation request exists, the process proceeds to step S016.

[0062] In step S011, the management unit 110 performs a participation process to participate in the management network 10.

[0063] In step S111, the management unit 110 determines whether the participation is successful and the number of participating mobile objects is greater than or equal to the predetermined threshold. The process of step S111 is similar to the process of step S111 of Fig. 4 equal.

[0064] In step S112, the management unit 110 attempts to acquire the shared data 151 from one of the participating mobile objects in the management network 10. The process of step S112 is similar to the process of step S112 of Fig. 4 equal.

[0065] In step S012, the management unit 110 determines whether the acquisition of the shared data has failed. If none of the participating mobile objects has the shared data 151 and the acquisition of the shared data has failed, the management unit 110 proceeds to step S013. If the acquisition of the shared data is successful, the management unit 110 proceeds to step S014. Note that the following two cases are conceivable when the shared data cannot be acquired by any of the other mobile objects. The first case is when the other mobile objects have participated in the management network but have never communicated with the content server. The second case is when the mobile object itself is a participating mobile object in the management network and is the first mobile object to communicate with the content server.In both cases, the shared data has not been generated and therefore needs to be generated.

[0066] In step S013, the management unit 110 regenerates shared data. The shared data 151 generated at this time is data in which the communication management table 511 and the semaphore 512 are initialized to predetermined values.

[0067] In step S014, the management unit 110 stores the acquired or generated shared data 151 in the storage unit 150.

[0068] In step S015, the management unit 110 notifies the control unit 130 that the shared data 151 has been stored in the storage unit 150.

[0069] In step S016, the management unit 110 determines whether there is a leave request from the control unit 130. If there is a leave request, the process proceeds to step S017. If there is no leave request, the process proceeds to step S018.

[0070] In step S017, the management unit 110 performs an exit process to exit the management network 10.

[0071] In step S018, the management unit 110 determines whether there is a notification request from the control unit 130. If there is a notification request, the process proceeds to step S019. If there is no notification request, the process proceeds to step S0112. Note that the notification request is a request for notification of the shared data 151 through a semaphore P operation and a semaphore V operation by the control unit 130. The semaphore P operation decrements the semaphore of the shared data 151 and acquires the transmission right. The semaphore V operation decrements the semaphore of the shared data 151 and returns the transmission right.

[0072] In step S019, the management unit 110 locks the shared data of each participating mobile object. If the shared data 151 cannot be locked immediately, the management unit 110 waits until the shared data 151 can be locked.

[0073] In step S0110, the management unit 110 transmits the shared data to the participating mobile objects.

[0074] Then, in step S0111, the management unit 110 unlocks the shared data of each participating mobile object.

[0075] Note that if a request to acquire the shared data 151 from step S112 is received from one of the other mobile objects, a process in response to this acquisition request is substantially the same as that described above. However, the acquired or generated shared data is transmitted only to the mobile object that requested the acquisition.

[0076] In step S0112, the management unit 110 of each mobile object determines whether the shared data should be updated. Upon receiving the shared data 151 transmitted in step S0110 in one of the other mobile objects, the management unit 110 of each mobile object determines that the shared data 151 should be updated. If it is determined that the shared data 151 should be updated, the process proceeds to step S0113. If the shared data 151 should not be updated, the process is aborted.

[0077] In step S0113, the management unit 110 receives the shared data transmitted from one of the other mobile objects.

[0078] In step S0114, the management unit 110 stores the received shared data in the storage unit 150. That is, the management unit updates the semaphore stored in the storage unit with the semaphore received from another mobile object of the mobile objects.

[0079] However, if the number of participating mobile objects is one, the management unit 110 communicates with the content server 14 after generating the communication management table 511 without performing the semaphore operations of the communication control by the control unit 130. If the number of participating mobile objects is two or more, the semaphore operations are performed. The semaphore operations of the communication control by the control unit 130 are the processes of steps S302 and S304 of Fig. 7.

[0080] The metadata acquisition process according to this embodiment will be described with reference to Fig. 6 described in detail.

[0081] In step S201, upon receiving a metadata acquisition request from the control unit 130, the metadata acquisition unit 120 extracts metadata from the application execution unit.

[0082] In step S202, the metadata acquisition unit 120 notifies the control unit 130 of the metadata extracted from the application execution unit.

[0083] The control process according to this embodiment will be described with reference to Fig. 7 described in detail.

[0084] In step S300, the control unit 130 acquires the metadata from the metadata acquisition unit 120. The control unit 130 calculates the priority 515 based on the metadata.

[0085] In step S301, the control unit 130 refers to the waiting time corresponding to the priority 515 in the communication management table 511 and waits for the duration of this time. For example, if the priority 515 is 2, the waiting time is X2. The control unit 130 acquires the transmission right in step S302 after the waiting time has elapsed, after the management unit 110 has determined that exclusive control should be performed.

[0086] In step S302, the control unit 130 performs the semaphore P operation to decrement the semaphore of the shared data 151 and acquire the transmission right. The shared data notification process by the management unit 110, that is, step S018 according to Fig. 5, is performed for the participating mobile objects (other mobile objects) in the management network 10. Upon receiving the shared data 151 through the shared data notification process, each participating mobile object performs a shared data update process through the management unit 110 (step S0112). Then, each participating mobile object replaces its own shared data 151 with the received shared data. If the semaphore P operation is successful, the process proceeds to step S303. If the semaphore P operation is unsuccessful, the process proceeds to step S305.

[0087] In step S303, the control unit 130 acquires content data within the maximum communication time limit corresponding to the calculated priority. Specifically, the control unit 130 refers to the maximum communication time corresponding to the priority 515 obtained in the communication management table 511 in step S300. Then, the control unit 130 downloads the content data from the content server 14 for the period of time whose upper limit is the maximum communication time. For example, if the priority 515 is 2, the maximum communication time is Y2.

[0088] After downloading, the control unit 130 performs the semaphore V operation in step S304 to increment the semaphore of the shared data 151 and return the transmission right. The shared data notification process by the management unit 110, that is, step S018 according to Fig. 5, is performed for the participating mobile objects (other mobile objects) in the management network 10. Upon receiving the shared data 151 through the shared data notification process, each participating mobile object performs a shared data update process through the management unit 110 (step S0112). Then, each participating mobile object replaces its own shared data 151 with the received shared data. If the semaphore P operation is successful, the process proceeds to step S115. If the semaphore P operation is unsuccessful, the process proceeds to step S305.

[0089] The process of step S115 is similar to the process of step S115 of Fig. 4 equal.

[0090] If in step S305 the semaphore V operation is successful and there is no content delivery request from the application execution unit, or if the semaphore P or V operation is unsuccessful, the control unit 130 makes a request for the exit process to the management unit 110. If the semaphore P operation is successful and there is a subsequent content delivery request from the application execution unit, the process is executed again from step S300. Description of the effects of this embodiment

[0091] In the communication control device 100 according to this embodiment, an ad hoc network is established between mobile objects located in proximity to each other, and the timing of connecting to the content server and the download amount are set autonomously. Therefore, the communication control device 100 according to this embodiment can minimize the degradation of service quality at the application level.

[0092] The communication control device 100 according to this embodiment waits for the waiting time based on the priority before acquiring the transmission right. Therefore, the communication control device 100 according to this embodiment facilitates the acquisition of the transmission right for the mobile object whose content transmission request level is high.

[0093] The communication control device 100 according to this embodiment uses a distributed transaction, such as a semaphore, to limit the number of mobile objects that can simultaneously transmit a content transmission request, that is, the maximum number of transmission rights that can be granted. Therefore, the communication control device 100 according to this embodiment can perform communication control adapted to the available network bandwidth.

[0094] The communication control device 100 according to this embodiment determines whether communication control is required based on whether an ad hoc network can be established or the threshold value for the number of participating mobile objects. Therefore, the communication control device 100 according to this embodiment can implement control only in an area where communication control is required, thus reducing the processing load.

[0095] The communication control device 100 according to this embodiment essentially eliminates the need to install a central server, thus reducing maintenance and operating costs. *** Other configurations ***<Erste Variante>

[0096] In this embodiment, communication control is implemented only in an area where communication control is required. However, the initial value of the semaphore or the information in the communication management table can be dynamically adjusted based on the results of monitoring communication traffic.

[0097] This means that the management unit monitors the communication traffic between the mobile objects. The management unit can then dynamically determine the waiting time and maximum communication time based on the monitoring results.

[0098] This enables highly adaptive communication control depending on the communication status of the base station. <Zweite Variante>

[0099] In this embodiment, communication control is implemented only in an area where communication control is required. However, in order to prevent synchronization between the mobile objects when acquiring the transmission right, a random value may be added to the waiting time set in the communication management table. That is, the control unit may be adapted to acquire the transmission right after the time resulting from the sum of the waiting time and the random value has elapsed after the management unit has determined that exclusive control is to be used. Specifically, the control unit 130 may, in step S301 of the control process of Fig. 7 add a random value δ such that 0 < δ < 1, to the waiting time and wait for the duration of the waiting time with the added δ.

[0100] This allows the waiting times between the mobile objects to be varied, so that synchronization between the mobile objects when acquiring the transmission right can be prevented. Therefore, a blocking waiting time in the semaphore P operation in step S302 of the control process of Fig. 7 can be reduced. <Dritte Variante>

[0101] In this embodiment, communication control is implemented only in an area where communication control is required. However, the shared data may contain authentication information for authenticating mobile objects that will participate in the management network. The management unit may use the authentication information contained in the shared data to authenticate a mobile object that will newly participate in the management network. Specifically, the authentication information required for authenticating mobile objects is written into the shared data to authenticate a mobile object that will newly participate in the ad hoc network.Specifically, the authentication information required for the authentication of mobile objects is data such as digital certificates of mobile objects for communication with each other or a list of user names and hash values ​​of passwords.

[0102] This allows only authorized mobile objects to use services, thus preventing unauthorized use. <Vierte Variante>

[0103] In this embodiment, communication control is implemented only in an area where communication control is required. However, a content server to which each mobile object is to be connected may be limited. Limiting the content server to which each mobile object is to be connected means that, for each of the mobile objects, the Internet Protocol (IP) address of a content server to which connection is permitted is specified, from among a plurality of content servers. Typically, the content server to be a communication destination of a mobile object may vary. However, limiting the communication destination to a specific content server is equivalent to performing a connection allocation process in the mobile object, so the upper limit is the maximum number of simultaneous connections that is normally performed in the content server.Limiting the communication destination to a specific content server is limiting the communication destination to the server with the same IP address. During the connection allocation process, load balancing or connection priority control is performed. Therefore, load balancing or control of the maximum number of connections, which is normally performed in the content server, can be performed in the mobile object.

[0104] This results in a distribution of the timing of content data requests to the content server, allowing the load on the content server to be balanced and the required peak performance to be reduced. As a result, a reduction in content server costs is expected. <Fünfte Variante>

[0105] The communication control device 100 may include an input interface and an output interface. The input interface is a port to be connected to an input device, such as a mouse, a keyboard, or a touch panel. Specifically, the input interface is a Universal Serial Bus (USB) port. Note that the input interface may be a port to be connected to a LAN.

[0106] The output interface is a port connected to a cable of an output device, such as a display. Specifically, the output interface is a USB port or a High-Definition Multimedia Interface (HDMI, registered trademark) port. Specifically, the display is a liquid crystal display (LCD). <Sechste Variante>

[0107] In this embodiment, the functions of the management unit 110, the metadata acquisition unit 120, and the control unit 130 are implemented by software. As a variant, the functions of the management unit 110, the metadata acquisition unit 120, and the control unit 130 may be implemented by hardware.

[0108] Fig. 8 is a diagram illustrating a configuration of the communication control device 100 according to a variant of this embodiment.

[0109] The communication control device 100 comprises an electronic circuit 909, the memory device 920 and the communication device 950.

[0110] The electronic circuit 909 is a dedicated electronic circuit that realizes the functions of the management unit 110, the metadata acquisition unit 120, and the control unit 130.

[0111] The electronic circuit 909 is specifically a single-chip circuit, a multi-chip circuit, a programmed processor, a parallel-programmed processor, a logic IC, a GA, an ASIC, or an FPGA. GA stands for gate array. ASIC stands for application-specific integrated circuit. FPGA stands for field-programmable gate array.

[0112] The functions of the management unit 110, the metadata acquisition unit 120, and the control unit 130 may be realized by one electronic circuit, or may be distributed among and realized by a plurality of electronic circuits.

[0113] As a further variant, some of the functions of the management unit 110, the metadata acquisition unit 120 and the control unit 130 may be realized by the electronic circuit, while the remaining functions may be realized by software.

[0114] The shared data 151 may be stored in the memory or in the auxiliary storage device of the storage device 920 or may be stored in dedicated hardware.

[0115] Each of the processor and the electronic circuit is also referred to as a processing circuit. That is, in the communication control device 100, the functions of the management unit 110, the metadata acquisition unit 120, and the control unit 130 are realized by the processing circuit.

[0116] In the communication control device 100, the "unit" of each of the management unit, the metadata acquisition unit, the control unit, and the storage unit may be interpreted as a "step" or "process." The "process" in each of the management process, the data acquisition process, the control process, and the storage process may be interpreted as a "program," "program product," or "computer-readable storage medium for recording a program." Second embodiment

[0117] The differences from the first embodiment are described in this embodiment.

[0118] Note that components that are the same as those of the first embodiment are denoted by the same reference numerals, and description of these components is omitted.

[0119] In this embodiment, an embodiment is described in which the management network 10 is used for caching content data. Configuration description

[0120] A configuration of the communication control device 100a according to this embodiment will be described with reference to Fig. 9 described.

[0121] The communication control device 100a contains, in addition to the Fig. 2, the functional elements of the communication control device 100 include a cache management unit 160. The cache management unit 160 can be implemented by the processor 910 or by dedicated hardware, as in the first embodiment.

[0122] The cache management unit 160 acquires a file name of content data from metadata and uses the file name to search for a cached file in the mobile objects. If the cached file cannot be acquired by any of the mobile objects, the cache management unit 160 publishes the content data acquired from the content server 14 as cached data to the mobile objects. The cache management unit 160 searches for or acquires cached data based on a request from the control unit 130. The cache management unit 160 publishes a file downloaded from the content server 14 as cached data if publication is permitted for the file. That is, the cache management unit 160 permits the search for or acquisition of cached data from other mobile objects. Description of the company

[0123] Fig. 10 is a flowchart illustrating a control process according to this embodiment. Fig. Fig. 11 is a flowchart illustrating a cache management process according to this embodiment. For convenience of description, Fig. 10 only differences to the one in Fig. 7 control process described in the first embodiment.

[0124] Steps S306 and S307 are processes that occur before step S300 in the control process of Fig. 7. In step S306, the control unit 130 acquires metadata from the metadata acquisition unit 120 and acquires a file name for downloading from the metadata.

[0125] In step S307, the control unit 130 makes a request to the cache management unit 160 for a cache download process to download cached data based on the acquired file name for downloading.

[0126] In step S308, it is determined whether the download of the cached data is successful.

[0127] If the download of the cached data is successful, the control unit 130 executes step S115 of the control process of Fig. 7 to check whether a content delivery request exists. If the download of the cached data is unsuccessful, the control unit 130 executes steps S300 to S304 of the control process. Fig. 7 to download the content data or part of the content data from the content server 14.

[0128] Then, in step S309, the control unit 130 makes a request to the cache management unit 160 for a cache publishing process to publish the content data as cache data. Then, the control unit 130 proceeds to step 115 of the control process of Fig. 7 to check if there is a content delivery request.

[0129] The cache management process according to this embodiment will now be described with reference to Fig. 11. The cache management process by the cache management unit 160 includes the cache download process and the cache management process. <cache-download-prozess>

[0130] In step S400, the cache management unit 160 receives a request from the control unit 130 for downloading the cached data.

[0131] In step S401, the cache management unit 160 performs a search for a cached file in the participating mobile objects in the management network 10.

[0132] In step S402, the cache management unit 160 determines whether a mobile object that has the cached file exists. If a mobile object that has the cached file exists, the process proceeds to step S403. If no mobile object that has the cached file exists, the process is terminated.

[0133] In step S403, the cache management unit 160 downloads the cached file and terminates the process. <Cache-Veröffentlichungsprozess>

[0134] In step S404, the cache management unit 160 receives a request to publish the cached data from the control unit 130.

[0135] In step S405, the cache management unit 160 determines whether publication is permitted for the cached data. If publication is permitted, the process proceeds to step S406. If publication is not permitted, the process terminates.

[0136] In step S406, the cache management unit 160 publishes the cached data to the participating mobile objects on the management network 10.

[0137] The criteria used to determine whether publication is permitted include personal information, whether copyright protection is applied, and whether the publication is restricted. At any point during the publication of cached data, the user may be asked via a pop-up whether to allow publication.

[0138] Note that publishing refers to a "state where downloading from another mobile object is permitted." The mobile object that wants content data makes a request to other participating mobile objects using index information of the desired content data. If a participating mobile object exists that has the desired content data, the mobile object that wants the content data communicates directly with that participating mobile object to download the content data. The index information can be information such as an identifier of the content data or a file name of the content data. Description of the effects of this embodiment

[0139] The communication control device 100a according to this embodiment caches content data between mobile objects located in proximity to each other. Therefore, the communication control device 100a according to this embodiment can be spared the labor of downloading content data or part of the content data from the content server. In particular, with regard to firmware updates and transmission of data such as map data and advertising data for information dissemination, the load on the content server can be reduced and fast downloading can be realized. Furthermore, by appropriately setting the criteria for permitting publication as cache data, both security and caching can be achieved. *** Other configurations ***<Siebte Variante>

[0140] In this embodiment, content data caching occurs between mobile objects that are in proximity to each other. If the ad hoc network, which is the management network, disappears, the cached data typically disappears as well. However, the cache management unit can temporarily store the cached data in a base station or roadside facility when the management network disappears. The cache management unit can then receive the cached data from the base station or roadside facility and republish the cached data when the management network is reconfigured.

[0141] This can increase the probability of a cache hit. <Achte Variante>

[0142] In the first and second embodiments above, the ad hoc network is used as the management network. However, a network such as the Internet, a cellular network, or a wireless wide-area LAN can be used temporarily or permanently as the management network.

[0143] This can prevent a collapse of the communication control system due to temporary fluctuations in the quality of communication, which is typical for the ad hoc network.

[0144] In the first and second embodiments, each unit of the communication control device is described as an independent functional block. However, the configuration of the communication control device is not limited to the configurations described in the above embodiments. The functional blocks of the communication control device can be implemented in any configuration, provided that the functions described in the above embodiments can be realized.

[0145] Parts of the first and second embodiments described above may be implemented in combination. Alternatively, some of these embodiments may be implemented. Alternatively, these embodiments may be implemented in whole or in part in any combination.

[0146] It should be noted that the above-described embodiments are essentially preferred examples and do not limit the scope of the present invention, the range of application of the present invention, or the scope of intended uses of the present invention. Various modifications can be made to the above-described embodiments as needed. List of reference symbols

[0147] 10: Management network; 11: Mobile object; 12: Ad hoc network; 13: Wide area network; 14: Content server; 15: Base station; 141: Content data; 100, 100a: Communication control device; 110: Management unit; 120: Metadata acquisition unit; 130: Control unit; 140: External communication unit; 150: Storage unit; 151: Shared data; 511: Communication management table; 512: Semaphore; 515: Priority; 516: Waiting time; 517: Maximum communication time; 500: Communication control system; 160: Cache management unit; 909: Electronic circuit; 910: Processor; 920: Storage unit; 950: Communication device; S100: Communication control process

Claims

[1] Communication control device (100, 100a) installed in each of mobile objects forming a management network for communication with each other, wherein the mobile objects acquire content data from a content server, the communication control device comprising: an administrative unit (110) to determine whether communication control should be performed when acquiring the content data, based on a density of mobile objects in the administrative network, wherein the communication control includes exclusive control between the mobile objects; a storage unit (150) to store a semaphore used for exclusive control between the mobile objects; and a control unit (130) to use, when it is determined that communication control is to be carried out, the semaphore stored in the storage unit (150) to acquire a transmission right to transmit a transmission request to the content server to request transmission of the content data, to acquire the content data by transmitting the transmission request, and after acquiring the content data, to use the semaphore stored in the storage unit (150) to return the transmission right. [2] Communication control device (100, 100a) according to claim 1, where the communication control includes transmission control of a transmission request to request transmission of the content data, wherein the storage unit (150) stores a waiting time for the transmission of the transmission request, wherein the waiting time is used for the transmission control of the transmission request, and wherein the control unit (130) acquires the right to transmit immediately after the waiting period has expired, after the management unit (110) has determined that the communication control is to be carried out. [3] Communication control device (100, 100a) according to claim 1 or 2, where the communication control includes time control of a processing time for acquiring the content data, wherein the storage unit (150) stores a maximum communication time, which is a maximum processing time for acquiring the content data, wherein the maximum communication time is used for timing the processing time, and wherein the control unit (130) acquires the content data within a limit of the maximum communication time when the management unit (110) determines that communication control is to be carried out. [4] Communication control device (100, 100a) according to claim 3, wherein the storage unit (150) stores a communication management table in which a priority, a wait time and the maximum communication time for acquiring the content data are mapped to each other, wherein the wait time is a time of waiting for transmission of the transmission request and is used for transmission control of the transmission request, and wherein the control unit (130) calculates a priority based on metadata specifying a feature of content data to be acquired from the content server, acquires the right to transmit after the waiting time has elapsed according to the calculated priority, and acquires the content data within a limit of the maximum communication time according to the calculated priority. [5] Communication control device (100, 100a) according to one of claims 1 to 4, wherein the control unit (130) transfers the semaphore stored in the storage unit (150) to another mobile object or mobile objects upon acquiring the right of transfer or returning the right of transfer, and wherein the management unit (110) updates the semaphore stored in the storage unit (150) with a semaphore received from another mobile object of the mobile objects. [6] Communication control device (100, 100a) according to one of claims 1 to 5, wherein the management unit (110) upon receiving a request to connect to the content server performs a participation process to join the management network and, if the participation in the management network is successful, determines whether to perform communication control based on the density of the mobile objects. [7] Communication control device (100, 100a) according to any one of claims 1 to 6, wherein the management unit (110) determines whether the communication control should be carried out, using the number of mobile objects as the density of the mobile objects. [8] Communication control device (100, 100a) according to claim 4, wherein, if participation in the management network is successful, the management unit (110) performs a shared data acquisition process to acquire shared data including the semaphore and the communication management table from another mobile object of the mobile objects, and if the shared data cannot be acquired from any of the mobile objects, shared data is regenerated and the newly generated shared data is transferred to another mobile object or other mobile objects of the mobile objects. [9] Communication control device (100, 100a) according to claim 4, wherein the management unit (110) monitors the communication traffic between the mobile objects and determines the waiting time and the maximum communication time based on a monitoring result. [10] Communication control device (100, 100a) according to one of claims 2 to 4, wherein, when the management unit (110) determines that exclusive control is to be used, the control unit (130) acquires the right to transmit after the expiry of a time which is the sum of a waiting time and a random value, after the management unit (110) has determined that exclusive control is to be used, wherein the waiting time is a time of waiting for transmission of the transmission request and is used for transmission control of the transmission request. [11] Communication control device (100, 100a) according to claim 8, wherein the shared data includes authentication information for authenticating a mobile object that will participate in the management network, and wherein the administrative unit (110) uses the authentication information contained in the shared data to authenticate a mobile object that will newly join the administrative network. [12] Communication control device (100a) according to claim 4, further comprising: a cache management unit (160) to acquire a filename of the content data from the metadata, and uses the filename to search for a cached file in the mobile objects. [13] Communication control device (100a) according to claim 12, wherein, if the cached file cannot be acquired by at least one of the mobile objects, the cache management unit (160) publishes content data acquired from the content server to the mobile objects as cached data. [14] Communication control device (100a) according to claim 12 or 13, wherein the cache management unit (160) temporarily stores cached data in a base station or a roadside facility when the management network disappears, and receives the cached data from the base station or the roadside facility and republishes the cached data when the management network is reconfigured. [15] Communication control device (100, 100a) according to one of claims 1 to 14, wherein the management network comprises an ad-hoc network, the Internet, a mobile network or a wide area wireless local network (LAN = Local Area Network). [16] Communication control device (100, 100a) according to one of claims 1 to 15, wherein for each of the mobile objects an Internet Protocol (IP) address of a content server to which a connection is permitted is determined from a plurality of content servers. [17] Communication control method of a communication control device (100, 100a) installed in each of mobile objects forming a management network for communication with each other, wherein the mobile objects acquire content data from a content server, the communication control method comprising: Determine whether communication control should be performed when acquiring content data, based on a density of mobile objects in the administrative network, by an administrative unit (110), wherein the communication control includes exclusive control between the mobile objects; Storing a semaphore used for exclusive control between mobile objects by means of a storage unit (150); and Use, when it is determined that communication control is to be carried out, of the semaphore stored in the storage unit (150) to acquire a transmission right to transmit a transmission request to request transmission of the content data to the content server, acquire the content data by transmitting the transmission request, and after acquiring the content data, use of the semaphore stored in the storage unit (150) to return the transmission right, by a control unit (130). [18] Communication control program of a communication control device installed in each of the mobile objects that form a management network for communication with each other, wherein the mobile objects acquire content data from a content server, and wherein the communication control program causes a computer to execute: a communication control process to determine whether communication control should be performed when acquiring the content data, based on a density of mobile objects in the management network, wherein the communication control includes exclusive control between the mobile objects; a storage process to store a semaphore used for exclusive control between the mobile objects; and a control process to, when it is determined that communication control is to be carried out, use the semaphore stored by the storage process to acquire a transmission right to transmit a transmission request to request transmission of the content data to the content server, to acquire the content data by transmitting the transmission request, and after acquiring the content data, to use the semaphore stored by the storage process to return the transmission right.

Citation Information

Patent Citations

  • Distribution system

    JP2005033548A

  • Content download method, related device, and system

    US20150189065A1

  • Collaborator network creation using cloud-based metadata

    US20170295226A1