WO2019224860A1 - 通信装置、通信方法及び通信プログラム - Google Patents
通信装置、通信方法及び通信プログラム Download PDFInfo
- Publication number
- WO2019224860A1 WO2019224860A1 PCT/JP2018/019434 JP2018019434W WO2019224860A1 WO 2019224860 A1 WO2019224860 A1 WO 2019224860A1 JP 2018019434 W JP2018019434 W JP 2018019434W WO 2019224860 A1 WO2019224860 A1 WO 2019224860A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- transmission
- data
- time slot
- retransmission
- time
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 143
- 238000000034 method Methods 0.000 title claims description 34
- 230000005540 biological transmission Effects 0.000 claims abstract description 691
- 238000012790 confirmation Methods 0.000 claims description 21
- 238000012545 processing Methods 0.000 claims description 21
- 238000007726 management method Methods 0.000 description 84
- 238000013523 data management Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/189—Transmission or retransmission of more than one copy of a message
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1887—Scheduling and prioritising arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1642—Formats specially adapted for sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
- H04L1/1867—Arrangements specially adapted for the transmitter end
- H04L1/1874—Buffer management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/003—Arrangements for allocating sub-channels of the transmission path
- H04L5/0053—Allocation of signaling, i.e. of overhead other than pilot signals
- H04L5/0055—Physical resource allocation for ACK/NACK
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W60/00—Affiliation to network, e.g. registration; Terminating affiliation with the network, e.g. de-registration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/28—Flow control; Congestion control in relation to timing considerations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/34—Flow control; Congestion control ensuring sequence integrity, e.g. using sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/04—Wireless resource allocation
- H04W72/044—Wireless resource allocation based on the type of the allocated resource
- H04W72/0446—Resources in time domain, e.g. slots or frames
Definitions
- the present invention relates to data transmission control.
- Time Sensitive Networking (TSN) technology such as IEEE802.1Qbv and IEEE802.1AS is being applied to communication performed in a control network.
- TSN Time Sensitive Networking
- the TSN transmits data by switching the data type in units of TS.
- TS is often assigned for each protocol. For example, it is conceivable that time slot 0 (TS0) is assigned to TCP / IP (Transmission Control Protocol / Internet Protocol) communication, and time slot 1 (TS1) is assigned to FA (Factory Automation) communication.
- FIG. 16 shows an example of a communication sequence in TSN.
- data is stored in the transmission queue of the corresponding TS (transmission queue is provided by IEEE802.1Qbv), and when the start time of the TS arrives, the data stored in the transmission queue of the TS is sequentially transmitted. Is done.
- the receiving side passes the data to the receiving application without storing it in the receiving queue.
- periodic communication for 30 seconds is performed. In FIG. 16, this period is divided into three TSs. That is, 10 seconds is allocated to each TS.
- the data of the transmission application 0 is transmitted by TS0.
- the transmission application 0 inserts data 0 into the transmission queue for TS0 at time “00:00:06”.
- time “00:00:06” is the time in TS0
- data 0 is transmitted in TS0 without waiting time.
- the data of the transmission application 1 is transmitted by TS1.
- the transmission application 1 inserts data 1 into the transmission queue for TS1 at time “00:00:31”. Since the time “00:00:31” is the time in TS0, data 1 is made to wait in the transmission queue for TS1. Then, after the time “00:00:40” arrives and TS1 is started, data 1 is transmitted.
- the TSN is also applied to communications that are required on the control network such as TCP / IP communications and that require certainty.
- TCP / IP communication when a packet arrives at a communication device on the reception side, a reception confirmation (ACK data) is transmitted to the communication device on the transmission side of the packet.
- ACK data reception confirmation
- TCP / IP communication when the transmitting communication device does not receive ACK data within a specified time, the transmitting communication device retransmits the packet.
- TSN is applied to TCP / IP communication, the following problems occur when the TS of TCP / IP communication and the transmission timing of ACK data do not match.
- Patent Document 1 discloses a technique for setting a sufficiently long time from retransmission of a packet to retransmission.
- the retransmission time is calculated based on the time when the transmission application stores the data in the transmission queue.
- TNS data cannot be transmitted unless a time slot corresponding to the type of data arrives. For this reason, when it takes time until the corresponding time slot arrives, the time when the transmission application stores the data in the transmission queue and the time when the data transmission is actually completed are significantly different. For this reason, even when the receiving communication device is receiving data, the retransmission time may arrive before the ACK data arrives at the transmitting communication device, and unnecessary data retransmission may occur.
- the present invention has been made in view of such circumstances, and realizes efficient data transmission in a configuration in which data is transmitted by switching the type of data transmitted in units of time slots, such as TSN. Is the main purpose.
- the communication device is A communication device that transmits data by switching the type of data to be transmitted in units of time slots, A transmission unit for transmitting transmission data in a time slot corresponding to the type of transmission data; A retransmission time determination unit that determines a retransmission time for performing retransmission of the transmission data on the basis of a time at which the transmission unit completes transmission of the transmission data.
- efficient data transmission can be realized in a configuration in which data is transmitted by switching the type of data transmitted in units of time slots.
- FIG. 2 shows a configuration example of a data communication system according to the first embodiment.
- 3 is a diagram illustrating a functional configuration example of a communication device according to Embodiment 1.
- FIG. FIG. 6 shows a configuration example of a retransmission data list according to the first embodiment.
- FIG. 6 shows an example of a retransmission data list according to the first embodiment.
- 5 is a flowchart showing an operation example of a transmission control unit according to the first embodiment. 6 is a flowchart showing an operation example of a time slot management unit according to the first embodiment. 6 is a flowchart illustrating an operation example of a data transmission unit according to the first embodiment.
- 5 is a flowchart showing an operation example of a retransmission management unit according to the first embodiment.
- FIG. 5 is a flowchart illustrating an operation example of a data receiving unit according to the first embodiment.
- 5 is a flowchart illustrating an operation example of an ACK data generation unit according to the first embodiment.
- FIG. 4 is a diagram illustrating a functional configuration example of a communication apparatus according to a second embodiment.
- 10 is a flowchart illustrating an operation example of a transmission control unit according to the second embodiment.
- 9 is a flowchart illustrating an operation example of a retransmission management unit according to the second embodiment.
- 10 is a flowchart illustrating an operation example of a transmission control unit according to the third embodiment.
- 10 is a flowchart illustrating an operation example of a transmission control unit according to the fourth embodiment. The figure which shows the communication sequence in TNS.
- FIG. *** Explanation of configuration *** FIG. 1 shows a configuration example of a communication system according to the present embodiment.
- the communication device 101, the communication device 102, and the communication device 103 are connected to the network 5.
- the communication system includes the communication device 101, the communication device 102, and the communication device 103, but the number of communication devices included in the communication system may be three or more.
- the communication device 101, the communication device 102, and the communication device 103 transmit and receive data according to TSN.
- the hardware configuration of the communication apparatus 101 is shown.
- the communication device 102 and the communication device 103 are assumed to have the same hardware configuration as the communication device 101.
- the communication device 101, the communication device 102, and the communication device 103 are computers.
- the communication apparatus 101 includes a processor 2, a memory 3, and a network interface 4 as hardware.
- the memory 3 stores a transmission application 15 and a reception application 16 shown in FIG. Further, the memory 3 stores programs that realize the functions of the data transmission unit 6, time slot management unit 7, data reception unit 8, ACK data generation unit 9, retransmission management unit 11, and transmission control unit 12 shown in FIG. Has been.
- the processor 2 executes the transmission application 15 and the reception application 16 in the memory 3.
- the processor 2 executes a program that realizes the functions of the data transmission unit 6, the time slot management unit 7, the data reception unit 8, the ACK data generation unit 9, the retransmission management unit 11, and the transmission control unit 12, and transmits the data.
- the operations of the unit 6, the time slot management unit 7, the data reception unit 8, the ACK data generation unit 9, the retransmission management unit 11, and the transmission control unit 12 are performed.
- FIG. 2 shows a functional configuration example of the communication apparatus 101.
- the communication device 102 and the communication device 103 also have the same functional configuration as the communication device 101.
- the data transmission unit 6 transmits data by switching the type of data to be transmitted in units of time slots (TS). More specifically, the data transmission unit 6 transmits the transmission data stored in the transmission queue 14 in the transmission data management unit 10 in a time slot corresponding to the type of transmission data. In addition, the data transmission unit 6 determines a retransmission time at which transmission data is retransmitted based on the time at which transmission of transmission data is completed. Further, the data transmission unit 6 retransmits the transmission data when an instruction to retransmit the transmission data is given.
- the data transmission unit 6 corresponds to a transmission unit and a retransmission time determination unit. The processing performed by the data transmission unit 6 corresponds to transmission processing and retransmission time determination processing.
- the time slot management unit 7 holds the current time, notifies the data transmission unit 6 of the transmission queue 14 corresponding to the current time slot when the time for switching the time slot arrives, and transmits the transmission data to the data transmission unit 6. Instruct.
- the data receiving unit 8 receives data transmitted from the communication device 102 or the communication device 103.
- the data receiving unit 8 passes the received data to the receiving application 16. Further, the data reception unit 8 instructs the ACK data generation unit to transmit a reception confirmation (ACK data) for the received data.
- ACK data reception confirmation
- the ACK data generation unit 9 stores the ACK data in the corresponding transmission queue 14 of the transmission data management unit 10 according to the instruction from the data reception unit 8.
- the transmission data management unit 10 has an entry for each time slot. Each entry has a transmission queue 14. In the transmission queue 14, a memory address of transmission data or a memory address of ACK data is held.
- the retransmission management unit 11 manages retransmission of transmission data transmitted by the data transmission unit 6. Specifically, the retransmission management unit 11 registers the transmission data transmitted by the data transmission unit 6 and the retransmission time determined by the data transmission unit 6 in the retransmission data list 13.
- FIG. 3 shows a configuration example of the retransmission data list 13. Each entry of the retransmission data list 13 stores a retransmission time, a memory address of transmission data to be retransmitted, and a sequence number that is an identifier of the transmission data. The entries in the retransmission data list 13 are arranged in order from the earliest retransmission time.
- FIG. 4 shows a specific example of the retransmission data list 13.
- the retransmission management unit 11 determines retransmission of transmission data when ACK data for transmission data is not received by the retransmission time.
- the process performed by the retransmission management unit 11 corresponds to a retransmission management process.
- the transmission control unit 12 generates transmission data based on an instruction from the transmission application 15. Further, the transmission control unit 12 stores the transmission data in the transmission queue 14 of the corresponding time slot. The process performed by the transmission control unit 12 corresponds to a transmission control process.
- the transmission application 15 instructs the transmission control unit 12 to generate transmission data.
- the transmission application 15 outputs content to be transmitted to the transmission control unit 12 and instructs generation of transmission data.
- the receiving application 16 acquires the data received by the data receiving unit 8 from the data receiving unit 8.
- the type of transmission data is the transmission data protocol. That is, in this embodiment, it is assumed that a time slot is assigned for each protocol of transmission data.
- the time slot allocated to the transmission data protocol is hereinafter referred to as a transmission time slot. That is, transmission data is not transmitted in time slots other than the transmission time slot, but is transmitted only in the transmission time slot.
- the ACK data for the transmission data is transmitted only in the transmission time slot. That is, when the time slot (transmission time slot) corresponding to the transmission data is time slot 0, the ACK data for the transmission data is transmitted only in time slot 0. If the ACK data is not transmitted in the time slot 0 where the transmission data is transmitted, the ACK data is transmitted in the next time slot 0.
- step S1 the transmission control unit 12 acquires content from the transmission application 15 and generates transmission data.
- step S2 the transmission control unit 12 stores the memory address of the transmission data generated in step S1 in the corresponding transmission queue 14. That is, the transmission control unit 12 stores the transmission data generated in step S1 in the transmission queue 14 of the time slot entry corresponding to the transmission data protocol among the plurality of transmission queues 14 managed by the transmission data management unit 10. Stores memory addresses.
- the transmission control unit 12 waits for a specified time in step S3.
- the transmission control unit 12 confirms whether or not a data transmission completion notification has been received from the data transmission unit 6 in step S4. If the data transmission completion notification has not arrived, the transmission control unit 12 repeats steps S3 and S4 until the data transmission completion notification arrives. When the data transmission completion notification arrives, the transmission control unit 12 ends the process.
- step S6 the time slot management unit 7 checks whether or not the time slot switching time has come. If the time slot switching time has arrived, the time slot management unit 7 proceeds to step S7. In step S7, the time slot management unit 7 instructs the data transmission unit 6 to transmit transmission data. Thereafter, the time slot management unit 7 returns to Step S5. More specifically, the time slot management unit 7 notifies the data transmission unit 6 of the transmission queue 14 corresponding to the current time slot, and instructs the data transmission unit 6 to transmit transmission data. If the time slot switching time has not arrived, the time slot management unit 7 repeats steps S5 and S6 until the time slot switching time has arrived.
- step S9 the data transmission unit 6 confirms whether or not a transmission data transmission instruction has arrived. There are cases where a transmission instruction arrives from the time slot management unit 7 and a transmission instruction arrives from the retransmission management unit 11. If the transmission instruction has not arrived, the data transmission unit 6 repeats step S8 and step S9 until the transmission instruction arrives. If the transmission instruction has arrived, the data transmission unit 6 proceeds to step S10.
- step S ⁇ b> 10 the data transmission unit 6 transmits the transmission data to the network 5.
- the data transmission unit 6 acquires transmission data from the corresponding transmission queue 14 of the transmission data management unit 10 and transmits the acquired transmission data to the network 5.
- the data transmission unit 6 transmits the transmission data received from the retransmission management unit 11 to the network 5 together with the transmission instruction. Note that transmission of transmission data based on a transmission instruction from the retransmission management unit 11 corresponds to retransmission of transmission data.
- the data transmission unit 6 calculates the retransmission time of the transmission data on the basis of the time when the transmission of the transmission data is completed in step S11, the calculated retransmission time, and the memory address of the transmission data And the sequence number are notified to the retransmission management unit 11.
- the data transmission unit 6 determines the time in the transmission time slot as the retransmission time. For example, it is assumed that the data transmission unit 6 completes transmission of transmission data at 0: 0: 0. Here, it is assumed that the setting is such that retransmission is performed 10 seconds after the time when transmission of transmission data is completed.
- the data transmission unit 6 determines 0: 0: 10 as the retransmission time.
- the data transmitting unit 6 determines the time in the transmission time slot that arrives earliest after 0:00:10 as the retransmission time. Thereafter, the data transmission unit 6 returns to Step S8.
- the retransmission management unit 11 waits for a specified time in step S12.
- step S13 the retransmission management unit 11 checks whether or not the retransmission time of the first entry in the retransmission data list 13 has arrived. If the retransmission time has arrived, the retransmission management unit 11 proceeds to step S14. On the other hand, if the retransmission time has not arrived, the retransmission management unit 11 proceeds to step S15.
- step S14 the retransmission management unit 11 acquires transmission data based on the memory address indicated in the first entry of the retransmission data list 13, and instructs the data transmission unit 6 to transmit the transmission data. More specifically, the retransmission management unit 11 outputs a transmission data transmission instruction and the transmission data to the data transmission unit 6. As a result of outputting the transmission instruction and the transmission data in step S14, YES is obtained in step S9 of FIG. 7, and the data transmission unit 6 retransmits the transmission data in step S10.
- step S ⁇ b> 15 the retransmission management unit 11 confirms whether a notification has been received from the data transmission unit 6 or the data reception unit 8. If the notification has arrived, the retransmission management unit 11 proceeds to step S16. On the other hand, if the notification has not arrived, the retransmission management unit 11 returns to step S12.
- step S ⁇ b> 16 the retransmission management unit 11 confirms which of the notification from the data transmission unit 6 and the notification from the data reception unit 8 has arrived. If the notification from the data transmission unit 6 has arrived, the retransmission management unit 11 proceeds to step S17. On the other hand, when the notification from the data receiving unit 8 has arrived, the retransmission management unit 11 proceeds to step S18.
- step S ⁇ b> 17 the retransmission management unit 11 adds a new entry to the retransmission data list 13.
- the notification from the data transmission unit 6 is the notification of the retransmission time, the memory address of the transmission data, and the sequence number shown in step S11 of FIG.
- step S17 the retransmission management unit 11 adds a new entry indicating the retransmission time, the memory address of the transmission data, and the sequence number notified from the data transmission unit 6 to the retransmission data list 13.
- the retransmission management unit 11 adds a new entry to the retransmission data list 13 according to the retransmission time order. As a result, retransmission of the transmission data is registered.
- the retransmission management unit 11 returns to step S15.
- step S ⁇ b> 18 the retransmission management unit 11 deletes the entry from the retransmission data list 13.
- the notification from the data receiving unit 8 is a notification that the ACK data has been received from the transmission destination of the transmission data.
- the notification from the data receiving unit 8 indicates the sequence number of the transmission data from which the ACK data has been received. For this reason, the retransmission management unit 11 deletes the entry for the transmission data for which the ACK data has been received from the entries in the retransmission data list 13 based on the sequence number indicated in the notification from the data reception unit 8.
- the retransmission management unit 11 returns to step S15.
- the retransmission management unit 11 repeats steps S16 to S18 until all notifications from the data transmission unit 6 and notifications from the data reception unit 8 are processed. When the notification from the data transmission unit 6 and the notification from the data reception unit 8 are all processed, the retransmission management unit 11 returns to step S12.
- step S19 the data receiving unit 8 waits for a data arrival notification from the network interface 4.
- the data arrival notification is realized by a hardware interrupt, for example.
- the data receiving unit 8 When the data arrival notification arrives, the data receiving unit 8 confirms the type of the received data in step S20. That is, the data receiving unit 8 confirms whether the received data is transmission data transmitted from the communication device 102 or the communication device 103 or ACK data transmitted from the communication device 102 or the communication device 103. . If the received data is transmission data, the data receiving unit 8 proceeds to step S21. On the other hand, if the received data is ACK data, the data receiving unit 8 proceeds to step S23.
- step S ⁇ b> 21 the data reception unit 8 passes the transmission data to the reception application 16.
- step S22 the data reception unit 8 instructs the ACK data generation unit 9 to transmit the ACK data of the received transmission data to the transmission data transmission source. Then, the data receiving unit 8 returns to step S19 and waits for the arrival of the next data arrival notification.
- step S23 the data reception unit 8 notifies the retransmission management unit 11 that ACK data has been received. More specifically, the data receiving unit 8 notifies the sequence number of transmission data from which ACK data has been received. Then, the data receiving unit 8 returns to step S19 and waits for the arrival of the next data arrival notification.
- the ACK data generation unit 9 generates ACK data in accordance with an instruction from the data reception unit 8 in step S24.
- the ACK data generation unit 9 stores the memory address of the ACK data generated in step S24 in the corresponding transmission queue 14 in step S25. That is, the ACK data generation unit 9 generates the ACK data generated in step S24 in the transmission queue 14 of the time slot entry corresponding to the ACK data protocol among the plurality of transmission queues 14 managed by the transmission data management unit 10. Stores the memory address.
- the ACK data generation unit 9 waits for a specified time in step S26.
- the ACK data generation unit 9 confirms whether or not a data transmission completion notification has arrived from the data transmission unit 6 in step S27. If the data transmission completion notification has not arrived, the ACK data generation unit 9 repeats steps S26 and S27 until the data transmission completion notification arrives. When the data transmission completion notification is received, the ACK data generation unit 9 ends the process.
- the operation of the transmission application 15 only outputs the content of the transmission control unit 12.
- the operation of the reception application 16 only acquires the received data from the data reception unit 8 and performs a process unique to the reception application 16 on the data. For this reason, description of the processing procedures of the transmission application 15 and the reception application 16 is omitted.
- the retransmission time is determined based on the time when the transmission control unit 12 stores the memory address of the transmission data in the transmission queue 14 (the time at step S2 in FIG. 5). For this reason, when transmission data is stored in the transmission queue 14 in a time slot that is not a transmission time slot, the retransmission time arrives before the transmission time slot arrives, and transmission is performed simultaneously with the first transmission of transmission data. There is a possibility that data will be resent. Further, even when the retransmission time arrives after the first transmission of the transmission data, if the retransmission time arrives immediately after the first transmission of the transmission data, the reception side communication apparatus transmits the ACK data.
- the transmitted data is retransmitted at the same time. In either case, transmission data will be retransmitted wastefully even though the transmission data reaches the receiving communication device.
- the retransmission time is determined based on the time at which the data transmission unit 6 has completed transmission of transmission data (the time at step S10 in FIG. 7) (step S11 in FIG. 7). Therefore, in this embodiment, retransmission of transmission data is not performed simultaneously with the first transmission of transmission data. In the present embodiment, the retransmission time does not arrive immediately after the first transmission of transmission data. Thus, in the present embodiment, useless retransmission can be prevented in a configuration in which data is transmitted by switching the type of data to be transmitted in units of time slots, such as TSN.
- Embodiment 2 when the current time slot is not a transmission time slot and the waiting time until the next transmission time slot is equal to or shorter than the threshold time, the communication apparatus 101 transmits the same as in the first embodiment. Send data.
- the communication apparatus 101 transmits the transmission data in a procedure for retransmitting the transmission data.
- the retransmission interval is treated as a threshold time.
- the retransmission interval is a default value defined in the communication apparatus 101 as an interval between the first transmission of transmission data and the retransmission.
- FIG. 11 shows a functional configuration example of the communication apparatus 101 according to the present embodiment.
- the functional configuration example of the communication apparatus 101 illustrated in FIG. 11 is the same as that illustrated in FIG. 2, but in the present embodiment, the data transmission unit 6 corresponds to a transmission unit and a retransmission unit.
- the processing performed by the data transmission unit 6 corresponds to transmission processing and retransmission processing.
- FIG. 12 shows an operation example of the transmission control unit 12 according to the present embodiment.
- step S101 the transmission control unit 12 generates transmission data. Since step S101 is the same as step S1 described in the first embodiment, detailed description thereof is omitted.
- step S102 the transmission control unit 12 confirms whether or not the current time slot is a transmission time slot. That is, the transmission control unit 12 determines whether or not the current time slot is a time slot in which transmission of transmission data is permitted. If the current time slot is a transmission time slot, the transmission control unit 12 proceeds to step S105. On the other hand, if the current time slot is not a transmission time slot, the transmission control unit 12 proceeds to step S103.
- step S103 the transmission control unit 12 acquires a waiting time until the next transmission time slot. Specifically, the transmission control unit 12 uses the time slot allocation time (specified value) and the elapsed time from the start of the current time slot to obtain the waiting time until the next transmission time slot. To do.
- step S104 the transmission control unit 12 compares the waiting time until the next transmission time slot acquired in step S103 with the retransmission interval. When the waiting time until the next transmission time slot is equal to or shorter than the retransmission interval, the transmission control unit 12 proceeds to step S105. On the other hand, when the waiting time until the next transmission time slot is longer than the retransmission interval, the transmission control unit 12 proceeds to step S106.
- step S105 the transmission control unit 12 performs the processing from step S2 to step S4 in FIG. That is, the transmission control unit 12 stores the memory address of the transmission data generated in step S101 in the corresponding transmission queue 14 (step S2). Further, the transmission control unit 12 waits for a specified time (step S3), and confirms whether or not a data transmission completion notification has arrived from the data transmission unit 6 (step S4). If the data transmission completion notification has not arrived, the transmission control unit 12 repeats steps S3 and S4 until the data transmission completion notification arrives. When the data transmission completion notification arrives, the transmission control unit 12 ends the process.
- the transmission control unit 12 When the transmission control unit 12 performs step S2 to step S4, the data transmission unit 6 transmits transmission data in the next transmission time slot, and determines a retransmission time in the next transmission time slot (FIG. 7).
- the retransmission management unit 11 registers transmission data retransmission at the retransmission time in the next transmission time slot (FIG. 13 to be described later).
- the transmission control unit 12 transmits the transmission data to the data transmission unit 6 in the next transmission time slot when the waiting time until the next transmission time slot is equal to or shorter than the retransmission interval.
- the data transmission unit 6 determines the retransmission time in the next transmission time slot, and the retransmission management unit 11 registers the retransmission of the transmission data at the retransmission time in the next transmission time slot.
- Such control of the transmission control unit 12 is referred to as first transmission control.
- step S106 the transmission control unit 12 calculates the retransmission time of the transmission data, and notifies the retransmission management unit 11 of the calculated retransmission time, the memory address of the transmission data, and the sequence number.
- the transmission control unit 12 determines the time in the next transmission time slot as the retransmission time.
- the retransmission management unit 11 registers the retransmission time, the memory address of the transmission data, and the sequence number notified in step S105 in the retransmission data list 13 as new entries.
- the data transmission unit 6 transmits the transmission data in the next transmission time slot according to the retransmission data list 13.
- the transmission control unit 12 instructs the retransmission management unit 11 to retransmit transmission data in the next transmission time slot when the waiting time until the next transmission time slot is longer than the retransmission interval. Registration is performed, and the data transmission unit 6 is caused to transmit transmission data in the next transmission time slot. Such control of the transmission control unit 12 is referred to as second transmission control.
- step S106 the data transmission unit 6 is instructed not to determine the retransmission time in step S11.
- FIG. 13 shows an operation example of the retransmission management unit 11 according to the present embodiment.
- step S151 and step S161 processes other than step S151 and step S161 are the same as those shown in FIG. For this reason, only step S151 and step S161 will be described below.
- step S151 the retransmission management unit 11 checks whether a notification has been received from the data transmission unit 6, the transmission control unit 12, or the data reception unit 8. If the notification has arrived, the retransmission management unit 11 proceeds to step S161. On the other hand, if the notification has not arrived, the retransmission management unit 11 returns to step S12.
- step S161 the retransmission management unit 11 confirms whether a notification from the data transmission unit 6 or the transmission control unit 12 or a notification from the data reception unit 8 has arrived.
- the retransmission management unit 11 proceeds to step S17.
- the notification from the data receiving unit 8 has arrived, the retransmission management unit 11 proceeds to step S18.
- the notification from the transmission control unit 12 is the notification in step S106 in FIG. That is, even when the notification of step S106 has arrived from the transmission control unit 12, the retransmission management unit 11 performs the retransmission data list based on the notification from the transmission control unit 12, similarly to the notification from the data transmission unit 6. A new entry is added to 13.
- the first transmission of transmission data is performed in the retransmission procedure. Is done. Therefore, according to the present embodiment, when the waiting time until the next transmission time slot is longer than the threshold time (retransmission interval), a procedure such as storing transmission data in the transmission queue 14 may be omitted. And the processing load can be reduced. That is, according to the present embodiment, more efficient data transmission can be realized. In addition, data retransmission processing can be performed at a time closer to the retransmission time in the prior art. In the above, the threshold time is the retransmission interval, but the threshold time may not be the retransmission interval.
- Embodiment 3 when the current time slot is a transmission time slot and the remaining time of the current time slot is longer than the threshold time, the communication apparatus 101 transmits transmission data in the current time slot. Select. On the other hand, when the remaining time of the current time slot is equal to or less than the threshold time, the communication apparatus 101 selects transmission data in the next transmission time slot. In this embodiment, the required transmission time is treated as a threshold time. The transmission required time is a time required for the data transmission unit 6 to transmit transmission data.
- FIG. 14 shows an operation example of the transmission control unit 12 according to the present embodiment.
- step S201 the transmission control unit 12 generates transmission data. Since step S201 is the same as step S1 described in the first embodiment, detailed description thereof is omitted.
- step S202 the transmission control unit 12 compares the retransmission interval with the time slot allocation time. If the time slot allocation time is longer than the retransmission interval, the transmission control unit 12 proceeds to step S203. On the other hand, if the time slot allocation time is equal to or shorter than the retransmission interval, the transmission control unit 12 proceeds to step S207.
- step S203 the transmission control unit 12 confirms whether or not the current time slot is a transmission time slot. That is, the transmission control unit 12 determines whether or not the current time slot is a time slot in which transmission of transmission data is permitted. If the current time slot is a transmission time slot, the transmission control unit 12 proceeds to step S204. On the other hand, if the current time slot is not a transmission time slot, the transmission control unit 12 proceeds to step S208.
- step S204 the transmission control unit 12 obtains the required transmission time. That is, the transmission control unit 12 confirms the time required for the processing of Step S10 and Step S11 of FIG. For example, it is conceivable that the data transmission unit 6 measures the time required for step S10 and step S11 and holds it as the required transmission time, and the data transmission unit 6 notifies the transmission control unit 12 of the required transmission time.
- step S205 the transmission control unit 12 obtains the remaining time of the current time slot.
- step S206 the transmission control unit 12 compares the required transmission time with the remaining time of the current time slot. If the remaining time of the current time slot is longer than the required transmission time, the transmission control unit 12 proceeds to step S207. On the other hand, if the remaining time of the current time slot is less than the required transmission time, the transmission control unit 12 proceeds to step S208.
- step S207 the transmission control unit 12 performs the processing from step S2 to step S4 in FIG. That is, the transmission control unit 12 stores the memory address of the transmission data generated in step S101 in the corresponding transmission queue 14 (step S2). Further, the transmission control unit 12 waits for a specified time (step S3), and confirms whether or not a data transmission completion notification has arrived from the data transmission unit 6 (step S4). If the data transmission completion notification has not arrived, the transmission control unit 12 repeats steps S3 and S4 until the data transmission completion notification arrives. When the data transmission completion notification arrives, the transmission control unit 12 ends the process.
- the transmission control unit 12 When the transmission control unit 12 performs step S2 to step S4, the data transmission unit 6 transmits transmission data in the next transmission time slot, and determines a retransmission time in the next transmission time slot (FIG. 7).
- the retransmission manager 11 registers transmission data retransmission at the retransmission time in the next transmission time slot (FIG. 13).
- the transmission control unit 12 causes the data transmission unit 6 to transmit transmission data in the next transmission time slot if the remaining time of the current time slot is longer than the required transmission time. Then, the data transmission unit 6 determines the retransmission time in the next transmission time slot, and the retransmission management unit 11 registers the retransmission of transmission data at the retransmission time in the next transmission time slot.
- Such control of the transmission control unit 12 is referred to as first transmission control.
- step S208 the transmission control unit 12 calculates the retransmission time of the transmission data, and notifies the retransmission management unit 11 of the calculated retransmission time, the memory address of the transmission data, and the sequence number.
- the transmission control unit 12 determines the time in the next transmission time slot as the retransmission time.
- the retransmission management unit 11 registers the retransmission time, the memory address of the transmission data, and the sequence number notified in step S208 in the retransmission data list 13 as new entries.
- the data transmission unit 6 transmits the transmission data in the next transmission time slot according to the retransmission data list 13.
- the transmission control unit 12 registers the retransmission of transmission data in the next transmission time slot in the retransmission management unit 11 if the remaining time of the current time slot is equal to or shorter than the required transmission time.
- the data transmission unit 6 is caused to transmit transmission data in the next transmission time slot.
- Such control of the transmission control unit 12 is referred to as second transmission control.
- step S208 the data transmission unit 6 is instructed not to determine the retransmission time in step S11.
- the communication apparatus 101 performs transmission data transmission processing even when the current time slot is a transmission time slot and the remaining time of the current time slot is equal to or shorter than the required transmission time.
- the transmission processing performed within the current time slot is wasted. Therefore, in the present embodiment, when the remaining time of the current time slot is equal to or shorter than the required transmission time, communication apparatus 101 does not transmit transmission data in the current time slot, but transmits to the next transmission time slot. Send data. As a result, according to the present embodiment, efficient data transmission can be performed.
- Embodiment 4 FIG. Also in the present embodiment, as in the third embodiment, when the current time slot is a transmission time slot and the remaining time of the current time slot is longer than the threshold time, the communication device 101 Select transmission of transmission data in time slot. On the other hand, when the remaining time of the current time slot is equal to or less than the threshold time, the communication apparatus 101 selects transmission data in the next transmission time slot.
- the reception confirmation required time is treated as a threshold time.
- the reception confirmation required time is the time required from the transmission of transmission data to the reception confirmation (ACK data) of the transmission data from the transmission data transmission destination.
- FIG. 15 shows an operation example of the transmission control unit 12 according to the present embodiment.
- step S301 the transmission control unit 12 generates transmission data. Since step S301 is the same as step S1 described in the first embodiment, detailed description thereof is omitted.
- step S302 the transmission control unit 12 compares the retransmission interval with the time slot allocation time. If the time slot allocation time is longer than the retransmission interval, the transmission control unit 12 proceeds to step S303. On the other hand, if the time slot allocation time is less than or equal to the retransmission interval, the transmission control unit 12 proceeds to step S307.
- step S303 the transmission control unit 12 confirms whether or not the current time slot is a transmission time slot. That is, the transmission control unit 12 determines whether or not the current time slot is a time slot in which transmission of transmission data is permitted. If the current time slot is a transmission time slot, the transmission control unit 12 proceeds to step S304. On the other hand, if the current time slot is not a transmission time slot, the transmission control unit 12 proceeds to step S308.
- step S304 the transmission control unit 12 obtains the time required for reception confirmation.
- the data transmission unit 6 transmits the transmission data, and measures the time from when the transmission data is transmitted to when the ACK data is received from the receiving communication device within the same time slot as the reception confirmation required time. Then, it is conceivable that the data transmission unit 6 notifies the transmission control unit 12 of the reception confirmation required time.
- the data transmission unit 6 may notify the transmission control unit 12 of the time required for reception confirmation measured in the past.
- step S305 the transmission control unit 12 obtains the remaining time of the current time slot.
- step S306 the transmission control unit 12 compares the reception confirmation required time with the remaining time of the current time slot. If the remaining time of the current time slot is longer than the time required for reception confirmation, the transmission control unit 12 proceeds to step S307. On the other hand, if the remaining time of the current time slot is equal to or shorter than the time required for reception confirmation, the transmission control unit 12 proceeds to step S308.
- step S307 the transmission control unit 12 performs the processing from step S2 to step S4 in FIG. That is, the transmission control unit 12 stores the memory address of the transmission data generated in step S101 in the corresponding transmission queue 14 (step S2). Further, the transmission control unit 12 waits for a specified time (step S3), and confirms whether or not a data transmission completion notification has arrived from the data transmission unit 6 (step S4). If the data transmission completion notification has not arrived, the transmission control unit 12 repeats steps S3 and S4 until the data transmission completion notification arrives. When the data transmission completion notification arrives, the transmission control unit 12 ends the process.
- the transmission control unit 12 When the transmission control unit 12 performs step S2 to step S4, the data transmission unit 6 transmits transmission data in the next transmission time slot, and determines a retransmission time in the next transmission time slot (FIG. 7).
- the retransmission manager 11 registers transmission data retransmission at the retransmission time in the next transmission time slot (FIG. 13).
- the transmission control unit 12 transmits the transmission data to the data transmission unit 6 in the next transmission time slot if the remaining time of the current time slot is longer than the time required for reception confirmation.
- the data transmission unit 6 determines the retransmission time in the next transmission time slot, and the retransmission management unit 11 registers the retransmission of transmission data at the retransmission time in the next transmission time slot.
- Such control of the transmission control unit 12 is referred to as first transmission control.
- step S308 the transmission control unit 12 calculates the retransmission time of the transmission data, and notifies the retransmission management unit 11 of the calculated retransmission time, the memory address of the transmission data, and the sequence number.
- the transmission control unit 12 determines the time in the next transmission time slot as the retransmission time.
- the retransmission management unit 11 registers the retransmission time notified in step S308, the memory address of the transmission data, and the sequence number in the retransmission data list 13 as new entries.
- the data transmission unit 6 transmits the transmission data in the next transmission time slot according to the retransmission data list 13.
- the transmission control unit 12 registers the retransmission of transmission data in the next transmission time slot in the retransmission management unit 11 if the remaining time of the current time slot is equal to or shorter than the time required for confirmation of reception. And the data transmission unit 6 transmits transmission data in the next transmission time slot.
- Such control of the transmission control unit 12 is referred to as second transmission control. If step S308 is performed, the data transmission unit 6 is instructed not to determine the retransmission time in step S11.
- the communication device 101 transmits transmission data even when the current time slot is a transmission time slot and the remaining time of the current time slot is equal to or shorter than the time required for reception confirmation.
- the ACK data does not reach the communication apparatus 101 in the current time slot.
- the retransmission time arrives before the ACK data arrives at the communication apparatus 101, and the communication apparatus 101 retransmits the transmission data even though the transmission data has arrived at the receiving communication apparatus. Therefore, in the present embodiment, when the remaining time of the current time slot is equal to or shorter than the required time for reception confirmation, the communication apparatus 101 does not transmit transmission data in the current time slot, but enters the next transmission time slot. Send transmission data. As a result, in this embodiment, useless retransmission can be prevented.
- the method for measuring the time from when transmission data is transmitted until ACK data returns is described as a method for obtaining the time required for reception confirmation. This is because, in TCP / IP, the time when the transmission data arrives at the receiving communication device cannot be stored in the ACK data, so the example of actually measuring the reception confirmation required time has been described above.
- the transmission control unit 12 stores the time stored in the ACK data from the time when the communication device 101 received the ACK data ( If the time obtained by subtracting the time when the transmission data arrives at the receiving communication device is doubled, and if the processing time at the receiving communication device is added to the time obtained by the double, the reception is performed. Confirmation time can be obtained.
- the processor 2 is an IC (Integrated Circuit) that performs processing.
- the processor 2 is a CPU (Central Processing Unit), a DSP (Digital Signal Processor), or the like.
- the memory 3 is a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, a HDD (Hard Disk Drive), or the like.
- the network interface 4 is an electronic circuit that transmits and receives data.
- the network interface 4 is, for example, a communication chip or a NIC (Network Interface Card).
- the memory 3 also stores an OS (Operating System). Then, at least a part of the OS is executed by the processor 2. The processor 2 executes at least a part of the OS and realizes the functions of the data transmission unit 6, the time slot management unit 7, the data reception unit 8, the ACK data generation unit 9, the retransmission management unit 11, and the transmission control unit 12. Execute. In addition, information, data, signal values, or variable values indicating the processing results of the data transmission unit 6, time slot management unit 7, data reception unit 8, ACK data generation unit 9, retransmission management unit 11, and transmission control unit 12, It is stored in the memory 3 or a register or cache memory in the processor 2.
- OS Operating System
- the programs for realizing the functions of the data transmission unit 6, the time slot management unit 7, the data reception unit 8, the ACK data generation unit 9, the retransmission management unit 11 and the transmission control unit 12 are a magnetic disk, a flexible disk, an optical disk, a compact You may memorize
- the communication device 101 may be realized by an electronic circuit such as a logic IC (Integrated Circuit), a GA (Gate Array), an ASIC (Application Specific Integrated Circuit), or an FPGA (Field-Programmable Gate Array).
- the processor and the electronic circuit are also collectively referred to as a processing circuit.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Communication Control (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
通信装置(101)は、送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する。データ送信部(6)は、送信データを、送信データの種類に対応するタイムスロットにおいて送信する。また、データ送信部(6)は、送信データの再送を行う再送時刻を、送信データの送信を完了した時刻を基準にして決定する。
Description
本発明は、データの送信制御に関する。
近年、制御ネットワークで行われる通信にIEEE802.1Qbv、IEEE802.1ASなどのTime Sensitive Networking(TSN)技術が適用されつつある。
TSNでは、通信周期が複数のタイムスロット(TS)に分割される。そして、TSNでは、TSの単位でデータの種類を切り替えてデータを送信する。また、TSNでは、プロトコルごとにTSが割り当てられることが多い。例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)の通信にタイムスロット0(TS0)が割り当てられ、FA(Factory Automation)用の通信にタイムスロット1(TS1)が割り当てられることが考えられる。
TSNでは、通信周期が複数のタイムスロット(TS)に分割される。そして、TSNでは、TSの単位でデータの種類を切り替えてデータを送信する。また、TSNでは、プロトコルごとにTSが割り当てられることが多い。例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)の通信にタイムスロット0(TS0)が割り当てられ、FA(Factory Automation)用の通信にタイムスロット1(TS1)が割り当てられることが考えられる。
図16は、TSNにおける通信シーケンスの例を示す。
TSNでは、データは、対応するTSの送信キュー(送信キューはIEEE802.1Qbvが提供)に格納され、TSの開始時刻が到来した際に、当該TSの送信キューに格納されているデータが順次送信される。受信側では、データを受信すると、データを受信キューに格納することなく受信アプリケーションに渡す。
図16では、30秒の周期通信が行われている。そして、図16では、この周期が3つのTSに分割されている。つまり、各TSには10秒が割り当てられている。
また、図16では、送信アプリケーション0のデータはTS0で送信される。送信アプリケーション0は、時刻「00:00:06」にデータ0をTS0用の送信キューに挿入している。時刻「00:00:06」はTS0内の時刻であるため、データ0は待ち時間なくTS0において送信される。
一方、送信アプリケーション1のデータはTS1で送信される。送信アプリケーション1は、時刻「00:00:31」にデータ1をTS1用の送信キューに挿入している。時刻「00:00:31」はTS0内の時刻であるため、データ1はTS1用の送信キュー内で待機させられる。そして、時刻「00:00:40」が到来して、TS1が開始された後に、データ1が送信される。
TSNでは、データは、対応するTSの送信キュー(送信キューはIEEE802.1Qbvが提供)に格納され、TSの開始時刻が到来した際に、当該TSの送信キューに格納されているデータが順次送信される。受信側では、データを受信すると、データを受信キューに格納することなく受信アプリケーションに渡す。
図16では、30秒の周期通信が行われている。そして、図16では、この周期が3つのTSに分割されている。つまり、各TSには10秒が割り当てられている。
また、図16では、送信アプリケーション0のデータはTS0で送信される。送信アプリケーション0は、時刻「00:00:06」にデータ0をTS0用の送信キューに挿入している。時刻「00:00:06」はTS0内の時刻であるため、データ0は待ち時間なくTS0において送信される。
一方、送信アプリケーション1のデータはTS1で送信される。送信アプリケーション1は、時刻「00:00:31」にデータ1をTS1用の送信キューに挿入している。時刻「00:00:31」はTS0内の時刻であるため、データ1はTS1用の送信キュー内で待機させられる。そして、時刻「00:00:40」が到来して、TS1が開始された後に、データ1が送信される。
制御ネットワーク上で行われる、TCP/IP通信などの確達性が求められる通信にもTSNは適用される。TCP/IP通信では、受信側の通信装置にパケットが届くと、パケットの送信側の通信装置に受信確認(ACKデータ)が送信される。また、TCP/IP通信では、規定時間内に送信側の通信装置がACKデータを受信しない場合は、送信側の通信装置がパケットを再送する。
TSNをTCP/IP通信に適用する場合は、TCP/IP通信のTSとACKデータの送信タイミングとが一致しないと、以下のような問題が生じる。
受信側の通信装置がACKデータを送信しようとした際に現在のTSがTCP/IP通信用のTSではない場合は、受信側の通信装置はTCP/IP通信用のTSが到来するまでACKデータの送信を保留する。この結果、規定時間内に送信側の通信装置にACKデータが届かず、このため、送信側の通信装置はパケットを再送するという事態が生じる。このように、TSNをTCP/IP通信に適用すると、受信側の通信装置にパケットが届いているにもかかわらず、送信側の通信装置からパケットが再送され、結果的に、ネットワークの帯域を浪費することになる。
このような事態に対処するために、例えば、特許文献1では、パケットの送信後、再送までの時間を十分に長く設定する技術が開示されている。
TSNをTCP/IP通信に適用する場合は、TCP/IP通信のTSとACKデータの送信タイミングとが一致しないと、以下のような問題が生じる。
受信側の通信装置がACKデータを送信しようとした際に現在のTSがTCP/IP通信用のTSではない場合は、受信側の通信装置はTCP/IP通信用のTSが到来するまでACKデータの送信を保留する。この結果、規定時間内に送信側の通信装置にACKデータが届かず、このため、送信側の通信装置はパケットを再送するという事態が生じる。このように、TSNをTCP/IP通信に適用すると、受信側の通信装置にパケットが届いているにもかかわらず、送信側の通信装置からパケットが再送され、結果的に、ネットワークの帯域を浪費することになる。
このような事態に対処するために、例えば、特許文献1では、パケットの送信後、再送までの時間を十分に長く設定する技術が開示されている。
特許文献1の手法をTSNに適用した場合に、実際には受信側の通信装置にデータが届いているにも関わらず再送が発生するという事態が生じる。
特許文献1の手法をTSNに適用した場合は、送信アプリケーションがデータを送信キューに格納した時刻をもとに再送時刻が計算される。TNSでは、前述したように、データの種類に対応したタイムスロットが到来しないとデータを送信することができない。このため、該当するタイムスロットの到来までに時間を要する場合は、送信アプリケーションがデータを送信キューに格納した時刻と実際にデータの送信が完了した時刻とが大幅に異なことになる。このため、受信側の通信装置がデータを受信している場合でも、送信側の通信装置にACKデータが届く前に再送時刻が到来し、無駄なデータの再送が発生することがある。
特許文献1の手法をTSNに適用した場合は、送信アプリケーションがデータを送信キューに格納した時刻をもとに再送時刻が計算される。TNSでは、前述したように、データの種類に対応したタイムスロットが到来しないとデータを送信することができない。このため、該当するタイムスロットの到来までに時間を要する場合は、送信アプリケーションがデータを送信キューに格納した時刻と実際にデータの送信が完了した時刻とが大幅に異なことになる。このため、受信側の通信装置がデータを受信している場合でも、送信側の通信装置にACKデータが届く前に再送時刻が到来し、無駄なデータの再送が発生することがある。
本発明は、このような事情に鑑みたものであり、TSNのように、タイムスロットの単位で送信するデータの種類を切り替えてデータを送信する構成において、効率的なデータの送信を実現することを主な目的とする。
本発明に係る通信装置は、
送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する通信装置であって、
送信データを、前記送信データの種類に対応するタイムスロットにおいて送信する送信部と、
前記送信データの再送を行う再送時刻を、前記送信部が前記送信データの送信を完了した時刻を基準にして決定する再送時刻決定部とを有する。
送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する通信装置であって、
送信データを、前記送信データの種類に対応するタイムスロットにおいて送信する送信部と、
前記送信データの再送を行う再送時刻を、前記送信部が前記送信データの送信を完了した時刻を基準にして決定する再送時刻決定部とを有する。
本発明によれば、タイムスロットの単位で送信するデータの種類を切り替えてデータを送信する構成において、効率的なデータの送信を実現することができる。
以下、本発明の実施の形態について、図を用いて説明する。以下の実施の形態の説明及び図面において、同一の符号を付したものは、同一の部分又は相当する部分を示す。
実施の形態1.
***構成の説明***
図1は、本実施の形態に係る通信システムの構成例を示す。
本実施の形態に係る通信システムでは、通信装置101、通信装置102及び通信装置103がネットワーク5に接続されている。
図1では、通信システムには、通信装置101、通信装置102及び通信装置103が含まれているが、通信システムに含まれる通信装置の台数は3台以上であってもよい。
通信装置101、通信装置102及び通信装置103は、TSNに従って、データを送受信する。
***構成の説明***
図1は、本実施の形態に係る通信システムの構成例を示す。
本実施の形態に係る通信システムでは、通信装置101、通信装置102及び通信装置103がネットワーク5に接続されている。
図1では、通信システムには、通信装置101、通信装置102及び通信装置103が含まれているが、通信システムに含まれる通信装置の台数は3台以上であってもよい。
通信装置101、通信装置102及び通信装置103は、TSNに従って、データを送受信する。
図1では、通信装置101のハードウェア構成が示されている。通信装置102及び通信装置103でも、通信装置101と同じハードウェア構成を備えるものとする。
通信装置101、通信装置102及び通信装置103は、コンピュータである。
図1に示すように、通信装置101は、ハードウェアとして、プロセッサ2、メモリ3、ネットワークインタフェース4を備える。
メモリ3には、図2に示す送信アプリケーション15及び受信アプリケーション16が記憶されている。また、メモリ3には、図2に示すデータ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の機能を実現するプログラムが記憶されている。
プロセッサ2は、メモリ3内の送信アプリケーション15及び受信アプリケーション16を実行する。また、プロセッサ2は、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の機能を実現するプログラムを実行して、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の動作を行う。
通信装置101、通信装置102及び通信装置103は、コンピュータである。
図1に示すように、通信装置101は、ハードウェアとして、プロセッサ2、メモリ3、ネットワークインタフェース4を備える。
メモリ3には、図2に示す送信アプリケーション15及び受信アプリケーション16が記憶されている。また、メモリ3には、図2に示すデータ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の機能を実現するプログラムが記憶されている。
プロセッサ2は、メモリ3内の送信アプリケーション15及び受信アプリケーション16を実行する。また、プロセッサ2は、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の機能を実現するプログラムを実行して、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の動作を行う。
図2は、通信装置101の機能構成例を示す。図2では、通信装置101の機能構成例のみが示されているが、通信装置102及び通信装置103でも、通信装置101と同じ機能構成を備えるものとする。
データ送信部6は、タイムスロット(TS)の単位で送信するデータの種類を切り替えてデータを送信する。
より具体的には、データ送信部6は、送信データ管理部10内の送信キュー14に格納されている送信データを、当該送信データの種類に対応するタイムスロットにおいて送信する。
また、データ送信部6は、送信データの再送を行う再送時刻を、送信データの送信を完了した時刻を基準にして決定する。
更に、データ送信部6は、送信データの再送が指示された場合は、送信データを再送する。
データ送信部6は、送信部及び再送時刻決定部に相当する。また、データ送信部6により行われる処理は、送信処理及び再送時刻決定処理に相当する。
より具体的には、データ送信部6は、送信データ管理部10内の送信キュー14に格納されている送信データを、当該送信データの種類に対応するタイムスロットにおいて送信する。
また、データ送信部6は、送信データの再送を行う再送時刻を、送信データの送信を完了した時刻を基準にして決定する。
更に、データ送信部6は、送信データの再送が指示された場合は、送信データを再送する。
データ送信部6は、送信部及び再送時刻決定部に相当する。また、データ送信部6により行われる処理は、送信処理及び再送時刻決定処理に相当する。
タイムスロット管理部7は、現在時刻を保持し、タイムスロットを切り替える時刻が到来したら現在のタイムスロットに対応する送信キュー14をデータ送信部6に通知し、データ送信部6に送信データを送信するよう指示する。
データ受信部8は、通信装置102又は通信装置103から送信されたデータを受信する。また、データ受信部8は、受信したデータを受信アプリケーション16に渡す。更に、データ受信部8は、受信したデータに対する受信確認(ACKデータ)を送信するようACKデータ生成部に指示する。
ACKデータ生成部9は、データ受信部8から指示に従い、ACKデータを送信データ管理部10の対応する送信キュー14に格納する。
送信データ管理部10は、タイムスロットごとにエントリを持つ。各エントリには、送信キュー14が設けられている。送信キュー14では、送信データのメモリアドレス又はACKデータのメモリアドレスが保持される。
再送管理部11は、データ送信部6により送信された送信データの再送を管理する。
具体的には、再送管理部11は、データ送信部6により送信された送信データ及びデータ送信部6により決定された再送時刻を再送データリスト13に登録する。
図3は、再送データリスト13の構成例を示す。再送データリスト13の各エントリには再送時刻と、再送対象の送信データのメモリアドレスと、送信データの識別子であるシーケンス番号が格納されている。再送データリスト13のエントリは再送時刻の早い順に並べられる。図4は、再送データリスト13の具体例を示す。なお、本実施の形態では、再送データリスト13において送信データのメモリアドレスが登録されている例を示しているが、メモリアドレスではなく送信データの実体が再送データリスト13に登録されるようにしてもよい。
再送管理部11は、再送時刻までに送信データに対するACKデータが受信されていない場合に、送信データの再送を決定する。
再送管理部11により行われる処理は、再送管理処理に相当する。
具体的には、再送管理部11は、データ送信部6により送信された送信データ及びデータ送信部6により決定された再送時刻を再送データリスト13に登録する。
図3は、再送データリスト13の構成例を示す。再送データリスト13の各エントリには再送時刻と、再送対象の送信データのメモリアドレスと、送信データの識別子であるシーケンス番号が格納されている。再送データリスト13のエントリは再送時刻の早い順に並べられる。図4は、再送データリスト13の具体例を示す。なお、本実施の形態では、再送データリスト13において送信データのメモリアドレスが登録されている例を示しているが、メモリアドレスではなく送信データの実体が再送データリスト13に登録されるようにしてもよい。
再送管理部11は、再送時刻までに送信データに対するACKデータが受信されていない場合に、送信データの再送を決定する。
再送管理部11により行われる処理は、再送管理処理に相当する。
送信制御部12は、送信アプリケーション15の指示に基づき、送信データを生成する。また、送信制御部12は、送信データを該当するタイムスロットの送信キュー14に格納する。
送信制御部12により行われる処理は、送信制御処理に相当する。
送信制御部12により行われる処理は、送信制御処理に相当する。
送信アプリケーション15は、送信制御部12に送信データの生成を指示する。送信アプリケーション15は、例えば、送信すべきコンテンツを送信制御部12に出力して、送信データの生成を指示する。
受信アプリケーション16は、データ受信部8で受信されたデータをデータ受信部8から取得する。
なお、本実施の形態では、送信データの種類を送信データのプロトコルとする。つまり、本実施の形態では、送信データのプロトコルごとにタイムスロットが割り当てられているものとする。送信データのプロトコルに割り当てられたタイムスロットを、以下では送信タイムスロットという。つまり、送信データは送信タイムスロット以外のタイムスロットでは送信されず、送信タイムスロットでのみ送信される。
送信データに対するACKデータは、送信タイムスロットでのみ送信される。つまり、送信データに対応するタイムスロット(送信タイムスロット)がタイムスロット0である場合は、当該送信データに対するACKデータは、タイムスロット0でのみ送信される。送信データが送信されたタイムスロット0内にACKデータが送信されない場合は、ACKデータは次に到来するタイムスロット0で送信される。
送信データに対するACKデータは、送信タイムスロットでのみ送信される。つまり、送信データに対応するタイムスロット(送信タイムスロット)がタイムスロット0である場合は、当該送信データに対するACKデータは、タイムスロット0でのみ送信される。送信データが送信されたタイムスロット0内にACKデータが送信されない場合は、ACKデータは次に到来するタイムスロット0で送信される。
***動作の説明***
本実施の形態における通信装置101の動作例を説明する。
以下では、通信装置101の動作として説明するが、通信装置102及び通信装置103の動作も同じである。
なお、以下で説明する動作手順は、本願の通信方法及び通信プログラムに相当する。
本実施の形態における通信装置101の動作例を説明する。
以下では、通信装置101の動作として説明するが、通信装置102及び通信装置103の動作も同じである。
なお、以下で説明する動作手順は、本願の通信方法及び通信プログラムに相当する。
まず、本実施の形態に係る送信制御部12の動作例を図5を参照して説明する。
ステップS1では、送信制御部12は、送信アプリケーション15からコンテンツを取得し、送信データを生成する。
次に、ステップS2では、送信制御部12は、ステップS1で生成した送信データのメモリアドレスを該当する送信キュー14に格納する。
つまり、送信制御部12は、送信データ管理部10で管理されている複数の送信キュー14のうち、送信データのプロトコルに対応するタイムスロットのエントリの送信キュー14にステップS1で生成した送信データのメモリアドレスを格納する。
つまり、送信制御部12は、送信データ管理部10で管理されている複数の送信キュー14のうち、送信データのプロトコルに対応するタイムスロットのエントリの送信キュー14にステップS1で生成した送信データのメモリアドレスを格納する。
次に、送信制御部12は、ステップS3で規定時間待機する。
次に、送信制御部12は、ステップS4で、データ送信部6からデータ送信完了通知が届いたかどうかを確認する。
データ送信完了通知が届いていない場合は、送信制御部12は、ステップS3及びステップS4をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、送信制御部12は、処理を終了する。
次に、送信制御部12は、ステップS4で、データ送信部6からデータ送信完了通知が届いたかどうかを確認する。
データ送信完了通知が届いていない場合は、送信制御部12は、ステップS3及びステップS4をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、送信制御部12は、処理を終了する。
次に、図6を参照して、タイムスロット管理部7の動作例を説明する。
先ず、タイムスロット管理部7は、ステップS5で規定時間待機する。
次に、タイムスロット管理部7は、ステップS6において、タイムスロットの切り替え時刻が到来したか否かを確認する。タイムスロットの切り替え時刻が到来している場合は、タイムスロット管理部7はステップS7に進む。
ステップS7では、タイムスロット管理部7はデータ送信部6に送信データの送信を指示する。その後、タイムスロット管理部7はステップS5に戻る。より具体的には、タイムスロット管理部7はデータ送信部6に現在のタイムスロットに対応する送信キュー14を通知して、データ送信部6に送信データの送信を指示する。
タイムスロットの切り替え時刻が到来していない場合は、タイムスロット管理部7は、タイムスロットの切り替え時刻が到来するまで、ステップS5及びステップS6を繰り返す。
次に、タイムスロット管理部7は、ステップS6において、タイムスロットの切り替え時刻が到来したか否かを確認する。タイムスロットの切り替え時刻が到来している場合は、タイムスロット管理部7はステップS7に進む。
ステップS7では、タイムスロット管理部7はデータ送信部6に送信データの送信を指示する。その後、タイムスロット管理部7はステップS5に戻る。より具体的には、タイムスロット管理部7はデータ送信部6に現在のタイムスロットに対応する送信キュー14を通知して、データ送信部6に送信データの送信を指示する。
タイムスロットの切り替え時刻が到来していない場合は、タイムスロット管理部7は、タイムスロットの切り替え時刻が到来するまで、ステップS5及びステップS6を繰り返す。
次に、図7を参照して、データ送信部6の動作例を説明する。
先ず、データ送信部6は、ステップS8で規定時間待機する。
次に、データ送信部6は、ステップS9において、送信データの送信指示が届いた否かを確認する。
タイムスロット管理部7から送信指示が届く場合と、再送管理部11から送信指示が届く場合がある。
送信指示が届いていない場合は、データ送信部6は、送信指示が届くまで、ステップS8及びステップS9を繰り返す。
送信指示が届いている場合は、データ送信部6はステップS10に進む。
次に、データ送信部6は、ステップS9において、送信データの送信指示が届いた否かを確認する。
タイムスロット管理部7から送信指示が届く場合と、再送管理部11から送信指示が届く場合がある。
送信指示が届いていない場合は、データ送信部6は、送信指示が届くまで、ステップS8及びステップS9を繰り返す。
送信指示が届いている場合は、データ送信部6はステップS10に進む。
ステップS10では、データ送信部6は、送信データをネットワーク5に送信する。
タイムスロット管理部7から送信指示が届いている場合は、データ送信部6は、送信データ管理部10の該当する送信キュー14から送信データを取得し、取得した送信データをネットワーク5に送信する。
一方、再送管理部11から送信指示が届いている場合は、データ送信部6は、送信指示とともに再送管理部11から届いている送信データをネットワーク5に送信する。なお、再送管理部11からの送信指示に基づく送信データの送信は、送信データの再送に該当する。
タイムスロット管理部7から送信指示が届いている場合は、データ送信部6は、送信データ管理部10の該当する送信キュー14から送信データを取得し、取得した送信データをネットワーク5に送信する。
一方、再送管理部11から送信指示が届いている場合は、データ送信部6は、送信指示とともに再送管理部11から届いている送信データをネットワーク5に送信する。なお、再送管理部11からの送信指示に基づく送信データの送信は、送信データの再送に該当する。
送信データの送信が完了したら、データ送信部6は、ステップS11において、送信データの送信が完了した時刻を基準にして送信データの再送時刻を算出し、算出した再送時刻と、送信データのメモリアドレスとシーケンス番号を再送管理部11に通知する。
データ送信部6は、送信タイムスロット内の時刻を再送時刻に決定する。例えばデータ送信部6が0時0分0秒に送信データの送信を完了した場合を想定する。また、ここでは、送信データの送信が完了した時刻から10秒後に再送するような設定となっているものとする。この場合に、データ送信部6は、0時0分10秒が送信タイムスロット内の時刻であれば、0時0分10秒を再送時刻に決定する。一方、0時0分10秒が送信タイムスロット内の時刻でなければ、データ送信部6は、0時0分10秒より後に最も早く到来する送信タイムスロット内の時刻を再送時刻に決定する。
その後、データ送信部6はステップS8に戻る。
データ送信部6は、送信タイムスロット内の時刻を再送時刻に決定する。例えばデータ送信部6が0時0分0秒に送信データの送信を完了した場合を想定する。また、ここでは、送信データの送信が完了した時刻から10秒後に再送するような設定となっているものとする。この場合に、データ送信部6は、0時0分10秒が送信タイムスロット内の時刻であれば、0時0分10秒を再送時刻に決定する。一方、0時0分10秒が送信タイムスロット内の時刻でなければ、データ送信部6は、0時0分10秒より後に最も早く到来する送信タイムスロット内の時刻を再送時刻に決定する。
その後、データ送信部6はステップS8に戻る。
次に、図8を参照して、再送管理部11の動作例を説明する。
先ず、再送管理部11は、ステップS12で規定時間待機する。
次に、ステップS13で、再送管理部11は、再送データリスト13の先頭のエントリの再送時刻が到来したか否かを確認する。
再送時刻が到来している場合は、再送管理部11はステップS14に進む。一方、再送時刻が到来していない場合は、再送管理部11はステップS15に進む。
次に、ステップS13で、再送管理部11は、再送データリスト13の先頭のエントリの再送時刻が到来したか否かを確認する。
再送時刻が到来している場合は、再送管理部11はステップS14に進む。一方、再送時刻が到来していない場合は、再送管理部11はステップS15に進む。
ステップS14では、再送管理部11は、再送データリスト13の先頭エントリに示されるメモリアドレスに基づいて送信データを取得し、データ送信部6に、送信データの送信を指示する。
より具体的には、再送管理部11は、送信データの送信指示と、送信データをデータ送信部6に出力する。
ステップS14で送信指示と送信データが出力された結果、図7のステップS9でYESとなり、データ送信部6は、ステップS10において、送信データを再送する。
より具体的には、再送管理部11は、送信データの送信指示と、送信データをデータ送信部6に出力する。
ステップS14で送信指示と送信データが出力された結果、図7のステップS9でYESとなり、データ送信部6は、ステップS10において、送信データを再送する。
ステップS15では、再送管理部11は、データ送信部6またはデータ受信部8から通知が届いたか否かを確認する。
通知が届いていれば、再送管理部11はステップS16に進む。一方、通知が届いていない場合は、再送管理部11はステップS12に戻る。
通知が届いていれば、再送管理部11はステップS16に進む。一方、通知が届いていない場合は、再送管理部11はステップS12に戻る。
ステップS16では、再送管理部11は、データ送信部6からの通知及びデータ受信部8からの通知のいずれが届いたのかを確認する。
データ送信部6からの通知が届いている場合は、再送管理部11はステップS17に進む。一方、データ受信部8からの通知が届いている場合は、再送管理部11はステップS18に進む。
データ送信部6からの通知が届いている場合は、再送管理部11はステップS17に進む。一方、データ受信部8からの通知が届いている場合は、再送管理部11はステップS18に進む。
ステップS17では、再送管理部11は、再送データリスト13に新たなエントリを追加する。
データ送信部6から通知は、図7のステップS11で示された、再送時刻と送信データのメモリアドレスとシーケンス番号の通知である。再送管理部11は、ステップS17において、データ送信部6から通知された再送時刻と送信データのメモリアドレスとシーケンス番号が示される新たなエントリを再送データリスト13に追加する。再送管理部11は、再送時刻順に従って、新たなエントリを再送データリスト13に追加する。これにより送信データの再送が登録される。
新たなエントリを再送データリスト13に追加したら、再送管理部11はステップS15に戻る。
データ送信部6から通知は、図7のステップS11で示された、再送時刻と送信データのメモリアドレスとシーケンス番号の通知である。再送管理部11は、ステップS17において、データ送信部6から通知された再送時刻と送信データのメモリアドレスとシーケンス番号が示される新たなエントリを再送データリスト13に追加する。再送管理部11は、再送時刻順に従って、新たなエントリを再送データリスト13に追加する。これにより送信データの再送が登録される。
新たなエントリを再送データリスト13に追加したら、再送管理部11はステップS15に戻る。
ステップS18では、再送管理部11は、再送データリスト13からエントリを削除する。
データ受信部8からの通知は、送信データの送信先からACKデータを受信した旨の通知である。データ受信部8からの通知には、ACKデータが受信された送信データのシーケンス番号が示される。このため、再送管理部11は、データ受信部8からの通知に示されるシーケンス番号に基づいて、再送データリスト13のエントリのうち、ACKデータが受信された送信データについてのエントリを削除する。
エントリを再送データリスト13から削除したら、再送管理部11はステップS15に戻る。
データ受信部8からの通知は、送信データの送信先からACKデータを受信した旨の通知である。データ受信部8からの通知には、ACKデータが受信された送信データのシーケンス番号が示される。このため、再送管理部11は、データ受信部8からの通知に示されるシーケンス番号に基づいて、再送データリスト13のエントリのうち、ACKデータが受信された送信データについてのエントリを削除する。
エントリを再送データリスト13から削除したら、再送管理部11はステップS15に戻る。
再送管理部11は、データ送信部6からの通知及びデータ受信部8からの通知を全て処理するまで、ステップS16~S18を繰り返す。データ送信部6からの通知及びデータ受信部8からの通知が全て処理されたら、再送管理部11はステップS12に戻る。
次に、図9を参照して、データ受信部8の動作例を説明する。
先ず、ステップS19で、データ受信部8は、ネットワークインタフェース4からのデータ到着通知を待つ。データ到着通知は例えばハードウェア割り込みによって実現される。
データ到着通知が届くと、データ受信部8は、ステップS20において、受信されたデータの種別を確認する。つまり、データ受信部8は、受信されたデータが、通信装置102又は通信装置103から送信された送信データであるか、通信装置102又は通信装置103から送信されたACKデータであるかを確認する。
受信されたデータが送信データであれば、データ受信部8はステップS21に進む。一方、受信されたデータがACKデータであれば、データ受信部8はステップS23に進む。
受信されたデータが送信データであれば、データ受信部8はステップS21に進む。一方、受信されたデータがACKデータであれば、データ受信部8はステップS23に進む。
ステップS21では、データ受信部8は、受信アプリケーション16に送信データを渡す。
また、データ受信部8は、ステップS22において、ACKデータ生成部9に、受信した送信データのACKデータを、送信データの送信元に送信するよう指示する。
そして、データ受信部8はステップS19に戻り、次のデータ到着通知の到着を待つ。
また、データ受信部8は、ステップS22において、ACKデータ生成部9に、受信した送信データのACKデータを、送信データの送信元に送信するよう指示する。
そして、データ受信部8はステップS19に戻り、次のデータ到着通知の到着を待つ。
ステップS23では、データ受信部8は、再送管理部11にACKデータを受信した旨を通知する。より具体的には、データ受信部8は、ACKデータが受信された送信データのシーケンス番号を通知する。
そして、データ受信部8はステップS19に戻り、次のデータ到着通知の到着を待つ。
そして、データ受信部8はステップS19に戻り、次のデータ到着通知の到着を待つ。
次に、図10を参照して、ACKデータ生成部9の動作例を説明する。
先ず、ACKデータ生成部9は、ステップS24において、データ受信部8からの指示に従い、ACKデータを生成する。
次に、ACKデータ生成部9は、ステップS25において、ステップS24で生成したACKデータのメモリアドレスを該当する送信キュー14に格納する。
つまり、ACKデータ生成部9は、送信データ管理部10で管理されている複数の送信キュー14のうち、ACKデータのプロトコルに対応するタイムスロットのエントリの送信キュー14にステップS24で生成したACKデータのメモリアドレスを格納する。
次に、ACKデータ生成部9は、ステップS25において、ステップS24で生成したACKデータのメモリアドレスを該当する送信キュー14に格納する。
つまり、ACKデータ生成部9は、送信データ管理部10で管理されている複数の送信キュー14のうち、ACKデータのプロトコルに対応するタイムスロットのエントリの送信キュー14にステップS24で生成したACKデータのメモリアドレスを格納する。
次に、ACKデータ生成部9は、ステップS26で規定時間待機する。
次に、ACKデータ生成部9は、ステップS27で、データ送信部6からデータ送信完了通知が届いたかどうかを確認する。
データ送信完了通知が届いていない場合は、ACKデータ生成部9は、ステップS26及びステップS27をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、ACKデータ生成部9は、処理を終了する。
次に、ACKデータ生成部9は、ステップS27で、データ送信部6からデータ送信完了通知が届いたかどうかを確認する。
データ送信完了通知が届いていない場合は、ACKデータ生成部9は、ステップS26及びステップS27をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、ACKデータ生成部9は、処理を終了する。
なお、送信アプリケーション15の動作は送信制御部12コンテンツを出力するだけである。
また、受信アプリケーション16の動作は、受信されたデータをデータ受信部8から取得し、受信アプリケーション16独自の処理を当該データに対して行うだけである。
このため、送信アプリケーション15及び受信アプリケーション16の処理手順の説明は省略する。
また、受信アプリケーション16の動作は、受信されたデータをデータ受信部8から取得し、受信アプリケーション16独自の処理を当該データに対して行うだけである。
このため、送信アプリケーション15及び受信アプリケーション16の処理手順の説明は省略する。
***実施の形態の効果の説明***
従来の手法であれば、送信制御部12が送信キュー14に送信データのメモリアドレスを格納した時刻(図5のステップS2の時刻)を基準して再送時刻が決定される。このため、送信タイムスロットではないタイムスロットで送信キュー14に送信データが格納された場合は、送信タイムスロットが到来するまでに再送時刻が到来してしまい、送信データの1回目の送信と同時に送信データの再送が行われてしまう可能性がある。また、送信データの1回目の送信の後に再送時刻が到来する場合であっても、送信データの1回目の送信の直後に再送時刻が到来すると、受信側の通信装置がACKデータを送信する前に送信データが再送されることになる。いずれのケースにおいても、送信データは受信側の通信装置に到達するにも関わらず、無駄に送信データの再送が発生することになる。
本実施の形態では、データ送信部6が送信データの送信を完了した時刻(図7のステップS10の時刻)を基準にして再送時刻が決定される(図7のステップS11)。従って、本実施の形態では、送信データの1回目の送信と同時に送信データの再送が行われることはない。また、本実施の形態では、送信データの1回目の送信の直後に再送時刻が到来することもない。
このように、本実施の形態では、TSNのように、タイムスロットの単位で送信するデータの種類を切り替えてデータを送信する構成において、無駄な再送を防止することができる。
従来の手法であれば、送信制御部12が送信キュー14に送信データのメモリアドレスを格納した時刻(図5のステップS2の時刻)を基準して再送時刻が決定される。このため、送信タイムスロットではないタイムスロットで送信キュー14に送信データが格納された場合は、送信タイムスロットが到来するまでに再送時刻が到来してしまい、送信データの1回目の送信と同時に送信データの再送が行われてしまう可能性がある。また、送信データの1回目の送信の後に再送時刻が到来する場合であっても、送信データの1回目の送信の直後に再送時刻が到来すると、受信側の通信装置がACKデータを送信する前に送信データが再送されることになる。いずれのケースにおいても、送信データは受信側の通信装置に到達するにも関わらず、無駄に送信データの再送が発生することになる。
本実施の形態では、データ送信部6が送信データの送信を完了した時刻(図7のステップS10の時刻)を基準にして再送時刻が決定される(図7のステップS11)。従って、本実施の形態では、送信データの1回目の送信と同時に送信データの再送が行われることはない。また、本実施の形態では、送信データの1回目の送信の直後に再送時刻が到来することもない。
このように、本実施の形態では、TSNのように、タイムスロットの単位で送信するデータの種類を切り替えてデータを送信する構成において、無駄な再送を防止することができる。
実施の形態2.
本実施の形態では、現在のタイムスロットが送信タイムスロットではなく、また、次の送信タイムスロットまでの待ち時間が閾値時間以下である場合に、通信装置101が、実施の形態1と同様に送信データを送信する。一方、次の送信タイムスロットまでの待ち時間が閾値時間よりも長い場合は、通信装置101は、送信データを再送する手順にて送信データを送信する。
以下では、再送間隔を閾値時間として扱う。再送間隔は、送信データの1回目の送信から再送までの間の間隔として通信装置101において規定されているデフォルト値である。
本実施の形態では、現在のタイムスロットが送信タイムスロットではなく、また、次の送信タイムスロットまでの待ち時間が閾値時間以下である場合に、通信装置101が、実施の形態1と同様に送信データを送信する。一方、次の送信タイムスロットまでの待ち時間が閾値時間よりも長い場合は、通信装置101は、送信データを再送する手順にて送信データを送信する。
以下では、再送間隔を閾値時間として扱う。再送間隔は、送信データの1回目の送信から再送までの間の間隔として通信装置101において規定されているデフォルト値である。
***構成の説明***
本実施の形態においても、通信システムの構成例は図1に示すものと同様である。
図11は、本実施の形態に係る通信装置101の機能構成例を示す。
図11に示す通信装置101の機能構成例は、図2に示すものと同じであるが、本実施の形態では、データ送信部6は、送信部及び再送部に相当する。また、データ送信部6により行われる処理は、送信処理及び再送処理に相当する。
本実施の形態においても、通信システムの構成例は図1に示すものと同様である。
図11は、本実施の形態に係る通信装置101の機能構成例を示す。
図11に示す通信装置101の機能構成例は、図2に示すものと同じであるが、本実施の形態では、データ送信部6は、送信部及び再送部に相当する。また、データ送信部6により行われる処理は、送信処理及び再送処理に相当する。
***動作の説明***
次に、本実施の形態に係る通信装置101の動作例を説明する。本実施の形態でも、通信装置102及び通信装置103は、通信装置101と同じ動作を行う。
本実施の形態では、主に実施の形態1との差異を説明する。
なお、以下で説明していない事項は、実施の形態1と同様である。
次に、本実施の形態に係る通信装置101の動作例を説明する。本実施の形態でも、通信装置102及び通信装置103は、通信装置101と同じ動作を行う。
本実施の形態では、主に実施の形態1との差異を説明する。
なお、以下で説明していない事項は、実施の形態1と同様である。
図12は、本実施の形態に係る送信制御部12の動作例を示す。
ステップS101では、送信制御部12は、送信データを生成する。
ステップS101は、実施の形態1で説明したステップS1と同じであるため、詳細な説明は省略する。
ステップS101は、実施の形態1で説明したステップS1と同じであるため、詳細な説明は省略する。
次に、ステップS102で、送信制御部12は、現在のタイムスロットが送信タイムスロットであるか否かを確認する。つまり、送信制御部12は、現在のタイムスロットが、送信データの送信が許可されるタイムスロットであるか否かを判定する。
現在のタイムスロットが送信タイムスロットであれば、送信制御部12はステップS105に進む。
一方、現在のタイムスロットが送信タイムスロットでなければ、送信制御部12はステップS103に進む。
現在のタイムスロットが送信タイムスロットであれば、送信制御部12はステップS105に進む。
一方、現在のタイムスロットが送信タイムスロットでなければ、送信制御部12はステップS103に進む。
ステップS103では、送信制御部12は、次の送信タイムスロットまでの待ち時間を取得する。具体的には、送信制御部12は、タイムスロットの割当て時間(規定値)と、現在のタイムスロットが開始してからの経過時間とを用いて、次の送信タイムスロットまでの待ち時間を取得する。
ステップS104では、送信制御部12は、ステップS103で取得した次の送信タイムスロットまでの待ち時間と、再送間隔とを比較する。
次の送信タイムスロットまでの待ち時間が再送間隔以下である場合に、送信制御部12はステップS105に進む。
一方、次の送信タイムスロットまでの待ち時間が再送間隔よりも長い場合に、送信制御部12はステップS106に進む。
次の送信タイムスロットまでの待ち時間が再送間隔以下である場合に、送信制御部12はステップS105に進む。
一方、次の送信タイムスロットまでの待ち時間が再送間隔よりも長い場合に、送信制御部12はステップS106に進む。
ステップS105では、送信制御部12は図5のステップS2からステップS4の処理を行う。
つまり、送信制御部12は、ステップS101で生成した送信データのメモリアドレスを該当する送信キュー14に格納する(ステップS2)。
また、送信制御部12は、規定時間待機し(ステップS3)、データ送信部6からデータ送信完了通知が届いたかどうかを確認する(ステップS4)。
データ送信完了通知が届いていない場合は、送信制御部12は、ステップS3及びステップS4をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、送信制御部12は、処理を終了する。
送信制御部12がステップS2からステップS4を行うと、データ送信部6は次の送信タイムスロットにおいて送信データの送信を行い、また、次の送信タイムスロット内の再送時刻を決定し(図7)、再送管理部11が次の送信タイムスロット内の再送時刻での送信データの再送の登録を行う(後述の図13)。
このように、本実施の形態では、送信制御部12は、次の送信タイムスロットまでの待ち時間が再送間隔以下である場合は、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせ、データ送信部6に次の送信タイムスロット内の再送時刻を決定させ、再送管理部11に次の送信タイムスロット内の再送時刻での送信データの再送の登録を行わせる。送信制御部12のこのような制御は、第1の送信制御という。
つまり、送信制御部12は、ステップS101で生成した送信データのメモリアドレスを該当する送信キュー14に格納する(ステップS2)。
また、送信制御部12は、規定時間待機し(ステップS3)、データ送信部6からデータ送信完了通知が届いたかどうかを確認する(ステップS4)。
データ送信完了通知が届いていない場合は、送信制御部12は、ステップS3及びステップS4をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、送信制御部12は、処理を終了する。
送信制御部12がステップS2からステップS4を行うと、データ送信部6は次の送信タイムスロットにおいて送信データの送信を行い、また、次の送信タイムスロット内の再送時刻を決定し(図7)、再送管理部11が次の送信タイムスロット内の再送時刻での送信データの再送の登録を行う(後述の図13)。
このように、本実施の形態では、送信制御部12は、次の送信タイムスロットまでの待ち時間が再送間隔以下である場合は、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせ、データ送信部6に次の送信タイムスロット内の再送時刻を決定させ、再送管理部11に次の送信タイムスロット内の再送時刻での送信データの再送の登録を行わせる。送信制御部12のこのような制御は、第1の送信制御という。
ステップS106では、送信制御部12は、送信データの再送時刻を算出し、算出した再送時刻と、送信データのメモリアドレスとシーケンス番号を再送管理部11に通知する。
送信制御部12は、次の送信タイムスロット内の時刻を再送時刻に決定する。
後述するように、再送管理部11は、ステップS105で通知された再送時刻と送信データのメモリアドレスとシーケンス番号を、新たなエントリとして再送データリスト13に登録する。この結果、データ送信部6は、再送データリスト13に従い、次の送信タイムスロットにおいて送信データの送信を行う。
このように、本実施の形態では、送信制御部12は、次の送信タイムスロットまでの待ち時間が再送間隔よりも長い場合は、再送管理部11に次の送信タイムスロットにおける送信データの再送の登録を行わせ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせる。送信制御部12のこのような制御は、第2の送信制御という。
なお、ステップS106が行われた場合は、データ送信部6にステップS11にて再送時刻を決定しないように指示する。
送信制御部12は、次の送信タイムスロット内の時刻を再送時刻に決定する。
後述するように、再送管理部11は、ステップS105で通知された再送時刻と送信データのメモリアドレスとシーケンス番号を、新たなエントリとして再送データリスト13に登録する。この結果、データ送信部6は、再送データリスト13に従い、次の送信タイムスロットにおいて送信データの送信を行う。
このように、本実施の形態では、送信制御部12は、次の送信タイムスロットまでの待ち時間が再送間隔よりも長い場合は、再送管理部11に次の送信タイムスロットにおける送信データの再送の登録を行わせ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせる。送信制御部12のこのような制御は、第2の送信制御という。
なお、ステップS106が行われた場合は、データ送信部6にステップS11にて再送時刻を決定しないように指示する。
図13は、本実施の形態に係る再送管理部11の動作例を示す。
図13において、ステップS151及びステップS161以外の処理は、図8に示すものと同じである。このため、以下では、ステップS151及びステップS161のみを説明する。
ステップS151では、再送管理部11は、データ送信部6、送信制御部12またはデータ受信部8から通知が届いたか否かを確認する。
通知が届いていれば、再送管理部11はステップS161に進む。一方、通知が届いていない場合は、再送管理部11はステップS12に戻る。
通知が届いていれば、再送管理部11はステップS161に進む。一方、通知が届いていない場合は、再送管理部11はステップS12に戻る。
ステップS161では、再送管理部11は、データ送信部6または送信制御部12からの通知、データ受信部8からの通知のいずれが届いたのかを確認する。
データ送信部6または送信制御部12からの通知が届いている場合は、再送管理部11はステップS17に進む。一方、データ受信部8からの通知が届いている場合は、再送管理部11はステップS18に進む。
送信制御部12からの通知は、図12のステップS106の通知である。つまり、送信制御部12からステップS106の通知が届いている場合にも、再送管理部11は、データ送信部6からの通知と同様に、送信制御部12からの通知に基づいて、再送データリスト13に新たなエントリを追加する。
データ送信部6または送信制御部12からの通知が届いている場合は、再送管理部11はステップS17に進む。一方、データ受信部8からの通知が届いている場合は、再送管理部11はステップS18に進む。
送信制御部12からの通知は、図12のステップS106の通知である。つまり、送信制御部12からステップS106の通知が届いている場合にも、再送管理部11は、データ送信部6からの通知と同様に、送信制御部12からの通知に基づいて、再送データリスト13に新たなエントリを追加する。
***実施の形態の効果の説明***
本実施の形態では、現在のタイムスロットが送信タイムスロットではなく、次の送信タイムスロットまでの待ち時間が閾値時間(再送間隔)よりも長い場合は、再送手順にて送信データの1回目の送信が行われる。このため、本実施の形態によれば、次の送信タイムスロットまでの待ち時間が閾値時間(再送間隔)よりも長い場合は、送信キュー14への送信データの格納等の手順を省略することができ、処理負荷を軽減することができる。つまり、本実施の形態により、より効率的なデータ送信を実現することができる。
また、従来技術での再送時刻により近い時刻でデータの再送処理が可能となる。
なお、以上では、閾値時間を再送間隔としているが、閾値時間は再送間隔でなくてもよい。
本実施の形態では、現在のタイムスロットが送信タイムスロットではなく、次の送信タイムスロットまでの待ち時間が閾値時間(再送間隔)よりも長い場合は、再送手順にて送信データの1回目の送信が行われる。このため、本実施の形態によれば、次の送信タイムスロットまでの待ち時間が閾値時間(再送間隔)よりも長い場合は、送信キュー14への送信データの格納等の手順を省略することができ、処理負荷を軽減することができる。つまり、本実施の形態により、より効率的なデータ送信を実現することができる。
また、従来技術での再送時刻により近い時刻でデータの再送処理が可能となる。
なお、以上では、閾値時間を再送間隔としているが、閾値時間は再送間隔でなくてもよい。
実施の形態3.
本実施の形態では、現在のタイムスロットが送信タイムスロットであり、また、現在のタイムスロットの残り時間が閾値時間よりも長い場合に、通信装置101が、現在のタイムスロットでの送信データの送信を選択する。一方、現在のタイムスロットの残り時間が閾値時間以下である場合は、通信装置101は、次の送信タイムスロットでの送信データを選択する。
本実施の形態では、送信所要時間を閾値時間として扱う。送信所要時間は、データ送信部6が送信データを送信するのに要する時間である。
本実施の形態では、現在のタイムスロットが送信タイムスロットであり、また、現在のタイムスロットの残り時間が閾値時間よりも長い場合に、通信装置101が、現在のタイムスロットでの送信データの送信を選択する。一方、現在のタイムスロットの残り時間が閾値時間以下である場合は、通信装置101は、次の送信タイムスロットでの送信データを選択する。
本実施の形態では、送信所要時間を閾値時間として扱う。送信所要時間は、データ送信部6が送信データを送信するのに要する時間である。
***構成の説明***
本実施の形態においても、通信システムの構成例は図1に示すものと同様である。
また、本実施の形態においても通信装置101の機能構成は図11に示すものと同様である。
本実施の形態においても、通信システムの構成例は図1に示すものと同様である。
また、本実施の形態においても通信装置101の機能構成は図11に示すものと同様である。
***動作の説明***
次に、本実施の形態に係る通信装置101の動作例を説明する。本実施の形態でも、通信装置102及び通信装置103は、通信装置101と同じ動作を行う。
本実施の形態では、主に実施の形態1との差異を説明する。
なお、以下で説明していない事項は、実施の形態1と同様である。
次に、本実施の形態に係る通信装置101の動作例を説明する。本実施の形態でも、通信装置102及び通信装置103は、通信装置101と同じ動作を行う。
本実施の形態では、主に実施の形態1との差異を説明する。
なお、以下で説明していない事項は、実施の形態1と同様である。
図14は、本実施の形態に係る送信制御部12の動作例を示す。
ステップS201では、送信制御部12は、送信データを生成する。
ステップS201は、実施の形態1で説明したステップS1と同じであるため、詳細な説明は省略する。
ステップS201は、実施の形態1で説明したステップS1と同じであるため、詳細な説明は省略する。
次に、ステップS202では、送信制御部12は、再送間隔とタイムスロットの割り当て時間とを比較する。
再送間隔よりもタイムスロットの割り当て時間が長い場合は、送信制御部12はステップS203に進む。一方、タイムスロットの割り当て時間が再送間隔以下であれば、送信制御部12はステップS207に進む。
再送間隔よりもタイムスロットの割り当て時間が長い場合は、送信制御部12はステップS203に進む。一方、タイムスロットの割り当て時間が再送間隔以下であれば、送信制御部12はステップS207に進む。
ステップS203では、送信制御部12は、現在のタイムスロットが送信タイムスロットであるか否かを確認する。つまり、送信制御部12は、現在のタイムスロットが、送信データの送信が許可されるタイムスロットであるか否かを判定する。
現在のタイムスロットが送信タイムスロットであれば、送信制御部12はステップS204に進む。
一方、現在のタイムスロットが送信タイムスロットでなければ、送信制御部12はステップS208に進む。
現在のタイムスロットが送信タイムスロットであれば、送信制御部12はステップS204に進む。
一方、現在のタイムスロットが送信タイムスロットでなければ、送信制御部12はステップS208に進む。
ステップS204では、送信制御部12は、送信所要時間を求める。すなわち、送信制御部12は、図7のステップS10とステップS11の処理に要する時間を確認する。例えば、データ送信部6が、ステップS10とステップS11に要する時間を計測して送信所要時間として保持しておき、データ送信部6が送信制御部12に送信所要時間を通知することが考えられる。
ステップS205では、送信制御部12は、現在のタイムスロットの残り時間を求める。
ステップS206では、送信制御部12は、送信所要時間と現在のタイムスロットの残り時間を比較する。
現在のタイムスロットの残り時間が送信所要時間よりも長ければ、送信制御部12はステップS207に進む。一方、現在のタイムスロットの残り時間が送信所要時間以下であれば、送信制御部12はステップS208に進む。
現在のタイムスロットの残り時間が送信所要時間よりも長ければ、送信制御部12はステップS207に進む。一方、現在のタイムスロットの残り時間が送信所要時間以下であれば、送信制御部12はステップS208に進む。
ステップS207では、送信制御部12は図5のステップS2からステップS4の処理を行う。
つまり、送信制御部12は、ステップS101で生成した送信データのメモリアドレスを該当する送信キュー14に格納する(ステップS2)。
また、送信制御部12は、規定時間待機し(ステップS3)、データ送信部6からデータ送信完了通知が届いたかどうかを確認する(ステップS4)。
データ送信完了通知が届いていない場合は、送信制御部12は、ステップS3及びステップS4をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、送信制御部12は、処理を終了する。
送信制御部12がステップS2からステップS4を行うと、データ送信部6は次の送信タイムスロットにおいて送信データの送信を行い、また、次の送信タイムスロット内の再送時刻を決定し(図7)、再送管理部11が次の送信タイムスロット内の再送時刻での送信データの再送の登録を行う(図13)。
このように、本実施の形態では、送信制御部12は、現在のタイムスロットの残り時間が送信所要時間よりも長ければ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせ、データ送信部6に次の送信タイムスロット内の再送時刻を決定させ、再送管理部11に次の送信タイムスロット内の再送時刻での送信データの再送の登録を行わせる。送信制御部12のこのような制御は、第1の送信制御という。
つまり、送信制御部12は、ステップS101で生成した送信データのメモリアドレスを該当する送信キュー14に格納する(ステップS2)。
また、送信制御部12は、規定時間待機し(ステップS3)、データ送信部6からデータ送信完了通知が届いたかどうかを確認する(ステップS4)。
データ送信完了通知が届いていない場合は、送信制御部12は、ステップS3及びステップS4をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、送信制御部12は、処理を終了する。
送信制御部12がステップS2からステップS4を行うと、データ送信部6は次の送信タイムスロットにおいて送信データの送信を行い、また、次の送信タイムスロット内の再送時刻を決定し(図7)、再送管理部11が次の送信タイムスロット内の再送時刻での送信データの再送の登録を行う(図13)。
このように、本実施の形態では、送信制御部12は、現在のタイムスロットの残り時間が送信所要時間よりも長ければ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせ、データ送信部6に次の送信タイムスロット内の再送時刻を決定させ、再送管理部11に次の送信タイムスロット内の再送時刻での送信データの再送の登録を行わせる。送信制御部12のこのような制御は、第1の送信制御という。
ステップS208では、送信制御部12は、送信データの再送時刻を算出し、算出した再送時刻と、送信データのメモリアドレスとシーケンス番号を再送管理部11に通知する。
送信制御部12は、次の送信タイムスロット内の時刻を再送時刻に決定する。
本実施の形態でも、再送管理部11は、ステップS208で通知された再送時刻と送信データのメモリアドレスとシーケンス番号を、新たなエントリとして再送データリスト13に登録する。この結果、データ送信部6は、再送データリスト13に従い、次の送信タイムスロットにおいて送信データの送信を行う。
このように、本実施の形態では、送信制御部12は、現在のタイムスロットの残り時間が送信所要時間以下であれば、再送管理部11に次の送信タイムスロットにおける送信データの再送の登録を行わせ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせる。送信制御部12のこのような制御は、第2の送信制御という。
なお、ステップS208が行われた場合は、データ送信部6にステップS11にて再送時刻を決定しないように指示する。
送信制御部12は、次の送信タイムスロット内の時刻を再送時刻に決定する。
本実施の形態でも、再送管理部11は、ステップS208で通知された再送時刻と送信データのメモリアドレスとシーケンス番号を、新たなエントリとして再送データリスト13に登録する。この結果、データ送信部6は、再送データリスト13に従い、次の送信タイムスロットにおいて送信データの送信を行う。
このように、本実施の形態では、送信制御部12は、現在のタイムスロットの残り時間が送信所要時間以下であれば、再送管理部11に次の送信タイムスロットにおける送信データの再送の登録を行わせ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせる。送信制御部12のこのような制御は、第2の送信制御という。
なお、ステップS208が行われた場合は、データ送信部6にステップS11にて再送時刻を決定しないように指示する。
本実施の形態でも、再送管理部11の動作は図13に示す通りである。
***実施の形態の効果の説明***
実施の形態1の方法では、現在のタイムスロットが送信タイムスロットであり、現在のタイムスロットの残り時間が送信所要時間以下であっても、通信装置101は送信データの送信処理を行う。しかし、この場合は、通信装置101は現在のタイムスロット内で送信データを送信することはできないので、現在のタイムスロット内で行った送信処理が無駄になる。
そこで、本実施の形態では、現在のタイムスロットの残り時間が送信所要時間以下である場合は、通信装置101は、現在のタイムスロットでは送信データを送信せずに、次の送信タイムスロットに送信データを送信する。この結果、本実施の形態によれば、効率的なデータ送信を行うことができる。
実施の形態1の方法では、現在のタイムスロットが送信タイムスロットであり、現在のタイムスロットの残り時間が送信所要時間以下であっても、通信装置101は送信データの送信処理を行う。しかし、この場合は、通信装置101は現在のタイムスロット内で送信データを送信することはできないので、現在のタイムスロット内で行った送信処理が無駄になる。
そこで、本実施の形態では、現在のタイムスロットの残り時間が送信所要時間以下である場合は、通信装置101は、現在のタイムスロットでは送信データを送信せずに、次の送信タイムスロットに送信データを送信する。この結果、本実施の形態によれば、効率的なデータ送信を行うことができる。
実施の形態4.
本実施の形態でも、実施の形態3と同様に、現在のタイムスロットが送信タイムスロットであり、また、現在のタイムスロットの残り時間が閾値時間よりも長い場合に、通信装置101が、現在のタイムスロットでの送信データの送信を選択する。一方、現在のタイムスロットの残り時間が閾値時間以下である場合は、通信装置101は、次の送信タイムスロットでの送信データを選択する。
本実施の形態では、受信確認所要時間を閾値時間として扱う。受信確認所要時間は、送信データの送信から、送信データの送信先から送信データについての受信確認(ACKデータ)を受信するまでに要する時間である。
本実施の形態でも、実施の形態3と同様に、現在のタイムスロットが送信タイムスロットであり、また、現在のタイムスロットの残り時間が閾値時間よりも長い場合に、通信装置101が、現在のタイムスロットでの送信データの送信を選択する。一方、現在のタイムスロットの残り時間が閾値時間以下である場合は、通信装置101は、次の送信タイムスロットでの送信データを選択する。
本実施の形態では、受信確認所要時間を閾値時間として扱う。受信確認所要時間は、送信データの送信から、送信データの送信先から送信データについての受信確認(ACKデータ)を受信するまでに要する時間である。
***構成の説明***
本実施の形態においても、通信システムの構成例は図1に示すものと同様である。
また、本実施の形態においても通信装置101の機能構成は図11に示すものと同様である。
本実施の形態においても、通信システムの構成例は図1に示すものと同様である。
また、本実施の形態においても通信装置101の機能構成は図11に示すものと同様である。
***動作の説明***
次に、本実施の形態に係る通信装置101の動作例を説明する。本実施の形態でも、通信装置102及び通信装置103は、通信装置101と同じ動作を行う。
本実施の形態では、主に実施の形態1との差異を説明する。
なお、以下で説明していない事項は、実施の形態1と同様である。
次に、本実施の形態に係る通信装置101の動作例を説明する。本実施の形態でも、通信装置102及び通信装置103は、通信装置101と同じ動作を行う。
本実施の形態では、主に実施の形態1との差異を説明する。
なお、以下で説明していない事項は、実施の形態1と同様である。
図15は、本実施の形態に係る送信制御部12の動作例を示す。
ステップS301では、送信制御部12は、送信データを生成する。
ステップS301は、実施の形態1で説明したステップS1と同じであるため、詳細な説明は省略する。
ステップS301は、実施の形態1で説明したステップS1と同じであるため、詳細な説明は省略する。
次に、ステップS302では、送信制御部12は、再送間隔とタイムスロットの割り当て時間とを比較する。
再送間隔よりもタイムスロットの割り当て時間が長い場合は、送信制御部12はステップS303に進む。一方、タイムスロットの割り当て時間が再送間隔以下であれば、送信制御部12はステップS307に進む。
再送間隔よりもタイムスロットの割り当て時間が長い場合は、送信制御部12はステップS303に進む。一方、タイムスロットの割り当て時間が再送間隔以下であれば、送信制御部12はステップS307に進む。
ステップS303では、送信制御部12は、現在のタイムスロットが送信タイムスロットであるか否かを確認する。つまり、送信制御部12は、現在のタイムスロットが、送信データの送信が許可されるタイムスロットであるか否かを判定する。
現在のタイムスロットが送信タイムスロットであれば、送信制御部12はステップS304に進む。
一方、現在のタイムスロットが送信タイムスロットでなければ、送信制御部12はステップS308に進む。
現在のタイムスロットが送信タイムスロットであれば、送信制御部12はステップS304に進む。
一方、現在のタイムスロットが送信タイムスロットでなければ、送信制御部12はステップS308に進む。
ステップS304では、送信制御部12は、受信確認所要時間を求める。例えば、データ送信部6が、送信データを送信し、送信データを送信してから、同じタイムスロット内で受信側の通信装置からACKデータを受信するまでの時間を受信確認所要時間として計測する。そして、データ送信部6が送信制御部12に受信確認所要時間を通知することが考えられる。データ送信部6は、過去に計測した受信確認所要時間を送信制御部12に通知してもよい。
ステップS305では、送信制御部12は、現在のタイムスロットの残り時間を求める。
ステップS306では、送信制御部12は、受信確認所要時間と現在のタイムスロットの残り時間を比較する。
現在のタイムスロットの残り時間が受信確認所要時間よりも長ければ、送信制御部12はステップS307に進む。一方、現在のタイムスロットの残り時間が受信確認所要時間以下であれば、送信制御部12はステップS308に進む。
現在のタイムスロットの残り時間が受信確認所要時間よりも長ければ、送信制御部12はステップS307に進む。一方、現在のタイムスロットの残り時間が受信確認所要時間以下であれば、送信制御部12はステップS308に進む。
ステップS307では、送信制御部12は図5のステップS2からステップS4の処理を行う。
つまり、送信制御部12は、ステップS101で生成した送信データのメモリアドレスを該当する送信キュー14に格納する(ステップS2)。
また、送信制御部12は、規定時間待機し(ステップS3)、データ送信部6からデータ送信完了通知が届いたかどうかを確認する(ステップS4)。
データ送信完了通知が届いていない場合は、送信制御部12は、ステップS3及びステップS4をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、送信制御部12は、処理を終了する。
送信制御部12がステップS2からステップS4を行うと、データ送信部6は次の送信タイムスロットにおいて送信データの送信を行い、また、次の送信タイムスロット内の再送時刻を決定し(図7)、再送管理部11が次の送信タイムスロット内の再送時刻での送信データの再送の登録を行う(図13)。
このように、本実施の形態では、送信制御部12は、現在のタイムスロットの残り時間が受信確認所要時間よりも長ければ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせ、データ送信部6に次の送信タイムスロット内の再送時刻を決定させ、再送管理部11に次の送信タイムスロット内の再送時刻での送信データの再送の登録を行わせる。送信制御部12のこのような制御は、第1の送信制御という。
つまり、送信制御部12は、ステップS101で生成した送信データのメモリアドレスを該当する送信キュー14に格納する(ステップS2)。
また、送信制御部12は、規定時間待機し(ステップS3)、データ送信部6からデータ送信完了通知が届いたかどうかを確認する(ステップS4)。
データ送信完了通知が届いていない場合は、送信制御部12は、ステップS3及びステップS4をデータ送信完了通知が届くまで繰り返す。
データ送信完了通知が届いたら、送信制御部12は、処理を終了する。
送信制御部12がステップS2からステップS4を行うと、データ送信部6は次の送信タイムスロットにおいて送信データの送信を行い、また、次の送信タイムスロット内の再送時刻を決定し(図7)、再送管理部11が次の送信タイムスロット内の再送時刻での送信データの再送の登録を行う(図13)。
このように、本実施の形態では、送信制御部12は、現在のタイムスロットの残り時間が受信確認所要時間よりも長ければ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせ、データ送信部6に次の送信タイムスロット内の再送時刻を決定させ、再送管理部11に次の送信タイムスロット内の再送時刻での送信データの再送の登録を行わせる。送信制御部12のこのような制御は、第1の送信制御という。
ステップS308では、送信制御部12は、送信データの再送時刻を算出し、算出した再送時刻と、送信データのメモリアドレスとシーケンス番号を再送管理部11に通知する。
送信制御部12は、次の送信タイムスロット内の時刻を再送時刻に決定する。
本実施の形態でも、再送管理部11は、ステップS308で通知された再送時刻と、送信データのメモリアドレスとシーケンス番号を、新たなエントリとして再送データリスト13に登録する。この結果、データ送信部6は、再送データリスト13に従い、次の送信タイムスロットにおいて送信データの送信を行う。
このように、本実施の形態では、送信制御部12は、現在のタイムスロットの残り時間が受信確認所要時間以下であれば、再送管理部11に次の送信タイムスロットにおける送信データの再送の登録を行わせ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせる。送信制御部12のこのような制御は、第2の送信制御という。
なお、ステップS308が行われた場合は、データ送信部6にステップS11にて再送時刻を決定しないように指示する。
送信制御部12は、次の送信タイムスロット内の時刻を再送時刻に決定する。
本実施の形態でも、再送管理部11は、ステップS308で通知された再送時刻と、送信データのメモリアドレスとシーケンス番号を、新たなエントリとして再送データリスト13に登録する。この結果、データ送信部6は、再送データリスト13に従い、次の送信タイムスロットにおいて送信データの送信を行う。
このように、本実施の形態では、送信制御部12は、現在のタイムスロットの残り時間が受信確認所要時間以下であれば、再送管理部11に次の送信タイムスロットにおける送信データの再送の登録を行わせ、データ送信部6に次の送信タイムスロットにおいて送信データの送信を行わせる。送信制御部12のこのような制御は、第2の送信制御という。
なお、ステップS308が行われた場合は、データ送信部6にステップS11にて再送時刻を決定しないように指示する。
本実施の形態でも、再送管理部11の動作は図13に示す通りである。
***実施の形態の効果の説明***
実施の形態1の方法では、現在のタイムスロットが送信タイムスロットであり、現在のタイムスロットの残り時間が受信確認所要時間以下であっても、通信装置101は送信データを送信する。しかし、この場合は、ACKデータは現在のタイムスロットでは通信装置101に届かない。このため、通信装置101にACKデータが届く前に再送時刻が到来し、通信装置101は、送信データが受信側の通信装置に届いているにも関わらず、送信データを再送することになる。
そこで、本実施の形態では、現在のタイムスロットの残り時間が受信確認所要時間以下である場合は、通信装置101は、現在のタイムスロットでは送信データを送信せずに、次の送信タイムスロットに送信データを送信する。この結果、本実施の形態では、無駄な再送を防止することができる。
実施の形態1の方法では、現在のタイムスロットが送信タイムスロットであり、現在のタイムスロットの残り時間が受信確認所要時間以下であっても、通信装置101は送信データを送信する。しかし、この場合は、ACKデータは現在のタイムスロットでは通信装置101に届かない。このため、通信装置101にACKデータが届く前に再送時刻が到来し、通信装置101は、送信データが受信側の通信装置に届いているにも関わらず、送信データを再送することになる。
そこで、本実施の形態では、現在のタイムスロットの残り時間が受信確認所要時間以下である場合は、通信装置101は、現在のタイムスロットでは送信データを送信せずに、次の送信タイムスロットに送信データを送信する。この結果、本実施の形態では、無駄な再送を防止することができる。
なお、上記では、受信確認所要時間の取得方法として、送信データを送信してからACKデータが戻るまでの時間を計測する方法を説明した。これは、TCP/IPでは、ACKデータに、送信データが受信側の通信装置に到達した時刻が格納できないため、上記では、実際に受信確認所要時間を計測する例を説明している。送信データが受信側の通信装置に到達した時刻をACKデータに格納できるプロトコルが用いられる場合は、送信制御部12は、通信装置101がACKデータを受信した時刻からACKデータに格納された時刻(送信データが受信側の通信装置に到達した時刻)を減算して得られる時間を2倍し、更に、2倍により得られた時間に受信側の通信装置での処理時間を加算すれば、受信確認所要時間を得ることができる。
以上、本発明の実施の形態について説明したが、これらの実施の形態のうち、2つ以上を組み合わせて実施しても構わない。
あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
あるいは、これらの実施の形態のうち、1つを部分的に実施しても構わない。
あるいは、これらの実施の形態のうち、2つ以上を部分的に組み合わせて実施しても構わない。
なお、本発明は、これらの実施の形態に限定されるものではなく、必要に応じて種々の変更が可能である。
***ハードウェア構成の説明***
最後に、通信装置101のハードウェア構成の補足説明を行う。
プロセッサ2は、プロセッシングを行うIC(Integrated Circuit)である。
プロセッサ2は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)等である。
メモリ3は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)等である。
ネットワークインタフェース4は、データを送受信する電子回路である。
ネットワークインタフェース4は、例えば、通信チップ又はNIC(Network Interface Card)である。
最後に、通信装置101のハードウェア構成の補足説明を行う。
プロセッサ2は、プロセッシングを行うIC(Integrated Circuit)である。
プロセッサ2は、CPU(Central Processing Unit)、DSP(Digital Signal Processor)等である。
メモリ3は、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、HDD(Hard Disk Drive)等である。
ネットワークインタフェース4は、データを送受信する電子回路である。
ネットワークインタフェース4は、例えば、通信チップ又はNIC(Network Interface Card)である。
また、メモリ3には、OS(Operating System)も記憶されている。
そして、OSの少なくとも一部がプロセッサ2により実行される。
プロセッサ2はOSの少なくとも一部を実行しながら、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の機能を実現するプログラムを実行する。
また、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の処理の結果を示す情報、データ、信号値又は変数値が、メモリ3、又は、プロセッサ2内のレジスタ又はキャッシュメモリに記憶される。
また、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記録媒体に記憶されてもよい。
そして、OSの少なくとも一部がプロセッサ2により実行される。
プロセッサ2はOSの少なくとも一部を実行しながら、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の機能を実現するプログラムを実行する。
また、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の処理の結果を示す情報、データ、信号値又は変数値が、メモリ3、又は、プロセッサ2内のレジスタ又はキャッシュメモリに記憶される。
また、データ送信部6、タイムスロット管理部7、データ受信部8、ACKデータ生成部9、再送管理部11及び送信制御部12の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記録媒体に記憶されてもよい。
また、通信装置101は、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)といった電子回路により実現されてもよい。
なお、プロセッサ及び上記の電子回路を総称してプロセッシングサーキットリーともいう。
なお、プロセッサ及び上記の電子回路を総称してプロセッシングサーキットリーともいう。
2 プロセッサ、3 メモリ、4 ネットワークインタフェース、5 ネットワーク、101 通信装置、102 通信装置、103 通信装置、6 データ送信部、7 タイムスロット管理部、8 データ受信部、9 ACKデータ生成部、10 送信データ管理部、11 再送管理部、12 送信制御部、13 再送データリスト、14 送信キュー、15 送信アプリケーション、16 受信アプリケーション。
Claims (15)
- 送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する通信装置であって、
送信データを、前記送信データの種類に対応するタイムスロットにおいて送信する送信部と、
前記送信データの再送を行う再送時刻を、前記送信部が前記送信データの送信を完了した時刻を基準にして決定する再送時刻決定部とを有する通信装置。 - 前記再送時刻決定部は、
前記送信データの種類に対応するタイムスロット内の時刻を前記再送時刻に決定する請求項1に記載の通信装置。 - 送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する送信部と、
データの再送の登録を行う再送管理部と、
前記再送管理部により再送の登録が行われたデータを再送する再送部と、
送信データが発生した際に、現在のタイムスロットが前記送信データの種類に対応するタイムスロットである送信タイムスロットであるか否かを判定し、現在のタイムスロットが送信タイムスロットでない場合に、次の送信タイムスロットまでの待ち時間と閾値時間とを比較し、比較結果に基づき、前記送信部に次の送信タイムスロットにおいて前記送信データの送信を行わせ前記再送管理部に前記送信データの再送の登録を行わせる第1の送信制御と、前記再送管理部に次の送信タイムスロットにおける前記送信データの再送の登録を行わせ前記再送部に次の送信タイムスロットにおいて前記送信データの送信を行わせる第2の送信制御とのいずれかを選択し、選択した送信制御を行う送信制御部とを有する通信装置。 - 前記送信制御部は、
前記閾値時間として、前記再送部によりデータが再送される場合の再送間隔を、次の送信タイムスロットまでの待ち時間と比較し、
前記待ち時間が前記再送間隔以下である場合に、前記第1の送信制御を選択し、
前記待ち時間が前記再送間隔よりも長い場合に、前記第2の送信制御を選択する請求項3に記載の通信装置。 - 送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する送信部と、
送信データが発生した際に、現在のタイムスロットが前記送信データの種類に対応するタイムスロットである送信タイムスロットであるか否かを判定し、現在のタイムスロットが送信タイムスロットである場合に、現在のタイムスロットの残り時間と閾値時間とを比較し、現在のタイムスロットの残り時間が前記閾値時間よりも長い場合に、現在のタイムスロットでの前記送信データの送信を選択し、現在のタイムスロットの残り時間が前記閾値時間以下である場合に、次の送信タイムスロットでの前記送信データの送信を選択する送信制御部とを有する通信装置。 - 前記送信制御部は、
前記閾値時間として、前記送信部が前記送信データを送信するのに要する送信所要時間を現在のタイムスロットの残り時間と比較する請求項5に記載の通信装置。 - 前記送信制御部は、
前記閾値時間として、前記送信データの送信先から前記送信データについての受信確認を受信するまでの受信確認所要時間を現在のタイムスロットの残り時間と比較する請求項5に記載の通信装置。 - 前記通信装置は、更に、
データの再送の登録を行う再送管理部と、
前記再送管理部により再送の登録が行われたデータを再送する再送部とを有し、
前記送信制御部は、
現在のタイムスロットの残り時間が前記閾値時間よりも長い場合に、前記送信部に現在のタイムスロットにおいて前記送信データの送信を行わせ前記再送管理部に前記送信データの再送の登録を行わせる第1の送信制御を選択し、
現在のタイムスロットの残り時間が前記閾値時間以下である場合に、前記再送管理部に次の送信タイムスロットにおける前記送信データの再送の登録を行わせ前記再送部に次の送信タイムスロットにおいて前記送信データの送信を行わせる第2の送信制御を選択し、
選択した送信制御を行う請求項5に記載の通信装置。 - 前記送信制御部は、
現在のタイムスロットが送信タイムスロットでない場合に、前記第2の送信制御を行う請求項8に記載の通信装置。 - 送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する通信装置が、
送信データを、前記送信データの種類に対応するタイムスロットにおいて送信し、
前記送信データの再送を行う再送時刻を前記送信データの送信を完了した時刻を基準にして決定する通信方法。 - 送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する送信部と、
前記送信部により送信されたデータの再送の登録を行う再送管理部と、
前記再送管理部により再送の登録が行われたデータを再送する再送部とを有する通信装置が、
送信データが発生した際に、現在のタイムスロットが前記送信データの種類に対応するタイムスロットである送信タイムスロットであるか否かを判定し、
現在のタイムスロットが送信タイムスロットでない場合に、次の送信タイムスロットまでの待ち時間と閾値時間とを比較し、
比較結果に基づき、前記送信部に次の送信タイムスロットにおいて前記送信データの送信を行わせ前記再送管理部に前記送信データの再送の登録を行わせる第1の送信制御と、前記再送管理部に次の送信タイムスロットにおける前記送信データの再送の登録を行わせ前記再送部に次の送信タイムスロットにおいて前記送信データの送信を行わせる第2の送信制御とのいずれかを選択し、選択した送信制御を行う通信方法。 - 送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する通信装置が、
送信データが発生した際に、現在のタイムスロットが前記送信データの種類に対応するタイムスロットである送信タイムスロットであるか否かを判定し、
現在のタイムスロットが送信タイムスロットである場合に、現在のタイムスロットの残り時間と閾値時間とを比較し、
現在のタイムスロットの残り時間が前記閾値時間よりも長い場合に、現在のタイムスロットでの前記送信データの送信を選択し、現在のタイムスロットの残り時間が前記閾値時間以下である場合に、次の送信タイムスロットでの前記送信データの送信を選択する通信方法。 - 送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する通信装置に、
送信データを、前記送信データの種類に対応するタイムスロットにおいて送信する送信処理と、
前記送信データの再送を行う再送時刻を、前記送信処理が前記送信データの送信を完了した時刻を基準にして決定する再送時刻決定処理とをコンピュータに実行させる通信プログラム。 - 送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する送信処理と、
前記送信処理により送信されたデータの再送の登録を行う再送管理処理と、
前記再送管理処理により再送の登録が行われたデータを再送する再送処理と、
送信データが発生した際に、現在のタイムスロットが前記送信データの種類に対応するタイムスロットである送信タイムスロットであるか否かを判定し、現在のタイムスロットが送信タイムスロットでない場合に、次の送信タイムスロットまでの待ち時間と閾値時間とを比較し、比較結果に基づき、前記送信部に次の送信タイムスロットにおいて前記送信データの送信を行わせ前記再送管理部に前記送信データの再送の登録を行わせる第1の送信制御と、前記再送管理部に次の送信タイムスロットにおける前記送信データの再送の登録を行わせ前記再送部に次の送信タイムスロットにおいて前記送信データの送信を行わせる第2の送信制御とのいずれかを選択し、選択した送信制御を行う送信制御処理とを通信装置に実行させる通信プログラム。 - 送信するデータの種類をタイムスロットの単位で切り替えてデータを送信する通信装置に、
送信データが発生した際に、現在のタイムスロットが前記送信データの種類に対応するタイムスロットである送信タイムスロットであるか否かを判定し、現在のタイムスロットが送信タイムスロットである場合に、現在のタイムスロットの残り時間と閾値時間とを比較し、現在のタイムスロットの残り時間が前記閾値時間よりも長い場合に、現在のタイムスロットでの前記送信データの送信を選択し、現在のタイムスロットの残り時間が前記閾値時間以下である場合に、次の送信タイムスロットでの前記送信データの送信を選択する送信制御処理を実行させる通信プログラム。
Priority Applications (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/019434 WO2019224860A1 (ja) | 2018-05-21 | 2018-05-21 | 通信装置、通信方法及び通信プログラム |
CN201880093480.7A CN112204934B (zh) | 2018-05-21 | 2018-05-21 | 通信装置、通信方法以及计算机可读取记录介质 |
DE112018007489.7T DE112018007489B4 (de) | 2018-05-21 | 2018-05-21 | Kommunikationsvorrichtung, kommunikationsverfahren und kommunikationsprogramm |
JP2020520861A JP6800375B2 (ja) | 2018-05-21 | 2018-05-21 | 通信装置、通信方法及び通信プログラム |
TW107126097A TW202005348A (zh) | 2018-05-21 | 2018-07-27 | 通訊裝置、通訊方法及通訊程式產品 |
US17/028,065 US11677515B2 (en) | 2018-05-21 | 2020-09-22 | Retransmission control device, method, and computer readable medium for time sensitive network communications |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2018/019434 WO2019224860A1 (ja) | 2018-05-21 | 2018-05-21 | 通信装置、通信方法及び通信プログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US17/028,065 Continuation US11677515B2 (en) | 2018-05-21 | 2020-09-22 | Retransmission control device, method, and computer readable medium for time sensitive network communications |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019224860A1 true WO2019224860A1 (ja) | 2019-11-28 |
Family
ID=68616650
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2018/019434 WO2019224860A1 (ja) | 2018-05-21 | 2018-05-21 | 通信装置、通信方法及び通信プログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US11677515B2 (ja) |
JP (1) | JP6800375B2 (ja) |
CN (1) | CN112204934B (ja) |
DE (1) | DE112018007489B4 (ja) |
TW (1) | TW202005348A (ja) |
WO (1) | WO2019224860A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11463369B2 (en) * | 2018-08-23 | 2022-10-04 | Mitsubishi Electric Corporation | Communication device, communication method and computer readable medium |
WO2022264230A1 (ja) * | 2021-06-14 | 2022-12-22 | 日本電信電話株式会社 | 通信制御装置、通信制御方法、及びプログラム |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11564123B2 (en) * | 2020-09-30 | 2023-01-24 | Kabushiki Kaisha Toshiba | Virtual time-sensitive networking bridge over a 5G wireless system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10290353A (ja) * | 1997-04-15 | 1998-10-27 | Ricoh Co Ltd | ファクシミリ装置 |
WO2018087927A1 (ja) * | 2016-11-14 | 2018-05-17 | 三菱電機株式会社 | ネットワークシステム、通信装置および通信方法 |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5530700A (en) * | 1994-07-29 | 1996-06-25 | Motorola, Inc. | Method and device for controlling time slot contention to provide fairness between a plurality of types of subscriber units in a communication system |
JP3001435B2 (ja) | 1996-10-24 | 2000-01-24 | 日本電気移動通信株式会社 | 確認形情報転送におけるデータ再送方法 |
JPH1174946A (ja) | 1997-08-27 | 1999-03-16 | Nippon Denki Ido Tsushin Kk | データ送信方式 |
JP3645230B2 (ja) | 2001-09-28 | 2005-05-11 | 三菱電機株式会社 | データパケット送信装置、データパケット受信装置、データパケット伝送システムおよびデータパケット再送制御方法 |
JP2003188937A (ja) * | 2001-12-20 | 2003-07-04 | Nef:Kk | 回線エラー保護方式 |
JP3977803B2 (ja) * | 2003-12-17 | 2007-09-19 | 株式会社日立製作所 | バックアップシステム及び方法並びにプログラム |
CN101507188A (zh) * | 2006-09-13 | 2009-08-12 | 松下电器产业株式会社 | 通信装置 |
JP2008306551A (ja) | 2007-06-08 | 2008-12-18 | Sanden Corp | 通信機器用の接続装置 |
WO2011074454A1 (ja) | 2009-12-14 | 2011-06-23 | 日本電気株式会社 | パケット再送制御システム、方法、及びプログラム |
US9942846B2 (en) * | 2013-12-05 | 2018-04-10 | Qualcomm Incorporated | Delaying radio link control retransmissions |
JP2016119556A (ja) * | 2014-12-19 | 2016-06-30 | 三菱電機株式会社 | ゲートウェイ、通信端末および衛星通信システム |
EP3057273B1 (en) * | 2015-02-13 | 2019-03-27 | Mitsubishi Electric R&D Centre Europe B.V. | Method for a traffic shaping in a network |
CN106411443B (zh) * | 2015-07-28 | 2018-09-25 | 长城汽车股份有限公司 | 报文传输的方法、车载网络系统及车辆 |
US10594527B2 (en) * | 2015-08-07 | 2020-03-17 | Mitsubishi Electric Corporation | Transmitting apparatus, receiving apparatus, transmitting method, and receiving method |
US20190322298A1 (en) * | 2018-04-20 | 2019-10-24 | General Electric Company | Locomotive control system |
-
2018
- 2018-05-21 CN CN201880093480.7A patent/CN112204934B/zh active Active
- 2018-05-21 JP JP2020520861A patent/JP6800375B2/ja active Active
- 2018-05-21 DE DE112018007489.7T patent/DE112018007489B4/de active Active
- 2018-05-21 WO PCT/JP2018/019434 patent/WO2019224860A1/ja active Application Filing
- 2018-07-27 TW TW107126097A patent/TW202005348A/zh unknown
-
2020
- 2020-09-22 US US17/028,065 patent/US11677515B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10290353A (ja) * | 1997-04-15 | 1998-10-27 | Ricoh Co Ltd | ファクシミリ装置 |
WO2018087927A1 (ja) * | 2016-11-14 | 2018-05-17 | 三菱電機株式会社 | ネットワークシステム、通信装置および通信方法 |
Non-Patent Citations (1)
Title |
---|
INES ALVAREZ ET AL.: "Towards a time redundancy mechanism for critical frames in time-sensitive networking", IEEE INTERNATIONAL CONFERENCE ON EMERGING TECHNOLOGIES AND FACTORY AUTOMATION (ETFA), 15 September 2017 (2017-09-15), pages 1 - 4, XP033293055, ISSN: 1946-0759, DOI: 10.1109/ETFA.2017.8247721 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11463369B2 (en) * | 2018-08-23 | 2022-10-04 | Mitsubishi Electric Corporation | Communication device, communication method and computer readable medium |
WO2022264230A1 (ja) * | 2021-06-14 | 2022-12-22 | 日本電信電話株式会社 | 通信制御装置、通信制御方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
TW202005348A (zh) | 2020-01-16 |
JPWO2019224860A1 (ja) | 2020-10-22 |
CN112204934B (zh) | 2023-10-17 |
CN112204934A (zh) | 2021-01-08 |
DE112018007489B4 (de) | 2022-03-31 |
DE112018007489T5 (de) | 2020-12-31 |
US11677515B2 (en) | 2023-06-13 |
JP6800375B2 (ja) | 2020-12-16 |
US20210006359A1 (en) | 2021-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109936510B (zh) | 多路径rdma传输 | |
RU2540815C2 (ru) | Прерывание, по меньшей мере частичное, передачи кадра | |
JP5696854B2 (ja) | パケット再送制御装置とパケット再送制御方法 | |
US11677515B2 (en) | Retransmission control device, method, and computer readable medium for time sensitive network communications | |
US8583831B2 (en) | Thin client discovery | |
JP5935940B2 (ja) | 通信方法、通信装置、および、通信プログラム | |
US20170033992A1 (en) | METHOD FOR PROCESSING VxLAN DATA UNITS | |
CN104052684A (zh) | 动态适配计算机网络中的最大传输单元大小的方法和系统 | |
US7969977B2 (en) | Processing apparatus and method for processing IP packets | |
US8838782B2 (en) | Network protocol processing system and network protocol processing method | |
JP6808104B2 (ja) | 通信装置、通信方法及び通信プログラム | |
JP2018064187A (ja) | 通信装置、通信方法およびプログラム | |
JP6464768B2 (ja) | 応答装置及びプログラム | |
US11172053B2 (en) | Transfer apparatus, transfer method, and program for transporting data from a single source to sinks with different communication requirements | |
US6961777B1 (en) | Systems and methods for predicting fields in a data packet | |
JP2019114947A (ja) | 通信装置、通信装置の制御方法およびプログラム | |
JP6452573B2 (ja) | データ送信装置及びデータ受信装置及びデータ送信方法及びデータ受信方法及びデータ送信プログラム及びデータ受信プログラム | |
JP4746672B2 (ja) | 経路確認装置、経路確認システム、経路確認方法およびそのプログラム | |
WO2017183088A1 (ja) | パケット中継装置、パケット中継方法及びパケット中継プログラム | |
JP2007267249A (ja) | データ送信装置、データ送信方法、およびデータ送信プログラム | |
JP6800514B2 (ja) | 通信装置、その制御方法、およびプログラム | |
US20150295957A1 (en) | Data transmitting device, data transmitting method, and communication device | |
JP2005064673A (ja) | プロトコル処理装置 | |
JP2006086687A (ja) | 情報処理装置、通信処理装置、情報処理システム、情報処理方法、及び通信処理方法 | |
WO2002009370A1 (en) | Systems and methods for transmitting data packets |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 18920067 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2020520861 Country of ref document: JP Kind code of ref document: A |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 18920067 Country of ref document: EP Kind code of ref document: A1 |