Communication device, control method, and program
By controlling reconnection processing for failed sessions through limited attempts and adjusted timing, the device addresses session establishment failures, reducing processing load and bandwidth usage due to server session limits.
Patent Information
- Application Number
- JP2024009598
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-01-25
- Publication Date
- 2025-09-05
- Estimated Expiration
- 2044-01-25
AI Technical Summary
Existing data transfer methods, such as those described in Patent Document 1, fail to address session establishment failures, leading to unnecessary reconnection processes that increase processing load and bandwidth usage due to server session limits.
The communication device controls reconnection processing for failed sessions less frequently by limiting the number of reconnection attempts and adjusting the time period for reconnection, reducing unnecessary processing.
This approach reduces unnecessary reconnection processing, conserving processing power and bandwidth by minimizing repeated connection attempts when server session limits are exceeded.
Smart Images

Figure 0007734770000001 
Figure 0007734770000002 
Figure 0007734770000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to a technique for transferring data from a communication device to an external device. [Background technology]
[0002] Known data transfer methods for transferring data from a communication device such as a digital camera to an external device such as a server include FTP (File Transfer Protocol), HTTP (Hyper Text Transfer Protocol), RTP (Real-time Transport Protocol), etc. In FTP, the external device is an FTP server that sends and receives files to and from an FTP client in accordance with FTP, and the communication device is connected to the FTP server as an FTP client so as to be able to communicate with the FTP server.
[0003] FTP requires that data be transferred immediately over a network. FTP also establishes multiple sessions (control connections and data connections) between the FTP client and the FTP server, and transfers data using these sessions more efficiently than using a single session.
[0004] Patent Document 1 describes a technique for transferring data between a communication device and an FTP server using multiple sessions. [Prior art documents] [Patent documents]
[0005] [Patent Document 1] Patent No. 7017419 Summary of the Invention [Problem to be solved by the invention]
[0006] The above-mentioned Patent Document 1 does not take into account the case where session establishment fails. If a communication device fails to establish a session, it can perform a reconnection process for the session where the connection failed. If the cause of the connection failure is removed during the reconnection process, the reconnection process will result in a successful connection, but if the cause of the connection failure is not removed, repeated connection failures will occur even when the reconnection process is performed.
[0007] When establishing multiple sessions between a communications device and a server, one of the reasons for connection failures is that the server may limit the number of sessions that the same user can connect to simultaneously. In this case, unless the server limit is changed, the communications device will repeatedly fail to reconnect, resulting in an increase in unnecessary reconnection processes. The reconnection process places a processing load on both the communications device and the server and also uses the communication bandwidth between the communications device and the FTP server, so performing unnecessary reconnection processes is inefficient.
[0008] The present invention has been made in view of the above-mentioned problems, and an object of the present invention is to realize a technology that reduces unnecessary reconnection processing for a session that has failed to connect. [Means for solving the problem]
[0009] In order to solve the above problems and achieve the object, the communication device of the present invention has a communication means capable of communicating with an external device, and a control means that performs connection processing to establish multiple sessions with the external device and performs reconnection processing for sessions that have failed to connect, and the control means performs the reconnection processing less frequently when there is a session that has failed to connect among the multiple sessions than when there is no session that has successfully connected. [Effects of the Invention]
[0010] According to the present invention, it is possible to reduce unnecessary reconnection processing for sessions that have failed to connect. [Brief explanation of the drawings]
[0011] [Figure 1] 1A is a block diagram showing the configuration of a digital camera according to a first embodiment, and FIGS. 1B and 1C are external views thereof. [Figure 2] FIG. 2 is a diagram for explaining a connection configuration between a digital camera and an FTP server according to the first embodiment. [Figure 3] 6 is a flowchart illustrating a process of establishing a session with an FTP server by the digital camera according to the first embodiment. [Figure 4] 10A and 10B are views showing examples of UI screens displayed during a session establishment process with an FTP server by the digital camera according to the first embodiment. [Figure 5] 10 is a flowchart illustrating a process of establishing a session with an FTP server by a digital camera according to a second embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0012] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the scope of the invention claimed. Although multiple features are described in the embodiments, not all of these multiple features are necessarily essential to the invention, and multiple features may be combined arbitrarily. Furthermore, in the accompanying drawings, the same reference numerals are used to designate the same or similar components, and redundant explanations will be omitted.
[0013] An example in which the communication device of the present invention is applied to an imaging device such as a digital camera will be described below. Note that in this embodiment, an example in which the communication device of the present invention is applied to a digital camera will be described, but the present invention is not limited to this example and can be applied to any device that has a communication function. For example, the present invention can be applied to information processing devices such as mobile devices such as personal computers (desktop PCs, notebook PCs), tablet PCs, smartphones, smart watches, and smart glasses, as well as PDAs (Personal Digital Assistants), and media players.
[0014] The digital camera of this embodiment can be connected to an external device and can transfer data such as image files to the external device. The external device of this embodiment is an FTP server that sends and receives files to and from an FTP client in accordance with FTP (File Transfer Protocol). The digital camera of this embodiment is connected to the FTP server as an FTP client so that it can communicate with the FTP server. Note that the communication protocol of this embodiment is not limited to FTP, and may also be FTPS (File Transfer Protocol over SSL / TLS), SFTP (SSH File Transfer Protocol), or the like.
[0015] In this embodiment, when multiple sessions (control connection and data connection) are established between a digital camera and an FTP server, the frequency of reconnection processing for a session that has failed to connect is controlled in order to reduce unnecessary reconnection processing. In this embodiment, an example will be described in which the frequency of reconnection processing is controlled by controlling the number of times reconnection processing is performed or the time period for which reconnection processing is repeated.
[0016] <Configuration of Digital Camera 100> First, the configuration and functions of a digital camera 100 according to this embodiment will be described with reference to FIG.
[0017] The control unit 101 is an arithmetic processing unit (CPU (Central Processing Unit), APU (Accelerated Processing Unit)) that controls the entire digital camera 100, and performs communication processing and control processing, which will be described later, by executing programs stored in a nonvolatile memory 103, which will be described later. Note that instead of the control unit 101 controlling the entire device, the entire device may be controlled by having multiple pieces of hardware share the processing.
[0018] The control unit 101 includes a system timer that measures the time used for various controls and the time of an internal clock.
[0019] The imaging unit 102 includes a group of lenses including a zoom lens and a focus lens, and a shutter with an aperture function. The imaging unit 102 also includes an imaging element configured with a CCD, CMOS element, or the like that converts a subject image into an electrical signal, and an A / D converter that converts an analog image signal output from the imaging element into a digital signal. Under the control of the control unit 101, the imaging unit 102 converts the subject image light formed by the lens included in the imaging unit 102 into an electrical signal using the imaging element, performs noise reduction processing, and outputs image data consisting of a digital signal.
[0020] The control unit 101 performs resizing processes such as pixel interpolation and reduction, and color conversion processes on image data captured by the imaging unit 102. The control unit 101 also compresses and encodes the processed still image data using JPEG or other compression methods, and encodes video data using video compression methods such as MPEG2 and H.264 to create image files, which are then stored on the recording medium 110. In the digital camera 100 of this embodiment, image data is stored on the recording medium 110 in accordance with the DCF (Design Rule for Camera File system) standard. The control unit 101 also performs predetermined arithmetic processing using the captured image data, and controls the focus lens, aperture, and shutter of the imaging unit 102 based on the obtained arithmetic results, thereby performing autofocus (AF) processing and autoexposure (AE) processing. The nonvolatile memory 103 is an electrically erasable and storable memory, such as an EEPROM. The nonvolatile memory 103 stores constants, programs, and the like for the operation of the control unit 101. The program referred to here refers to a program for executing control processing, which will be described later in this embodiment.
[0021] The working memory 104 is used as a working area for expanding constants and variables for the operation of the control unit 101, programs read from the nonvolatile memory 103, etc. The working memory 104 is also used as a buffer memory for temporarily storing image data captured by the imaging unit 102 and audio data generated by the audio input unit 107, and as an image display memory for the display unit 106.
[0022] The operation unit 105 is made up of operation members such as various switches, buttons, and a touch panel that accept various operations from the user. For example, as shown in FIGS. 1(b) and 1(c), the operation unit 105 includes a shutter button 105a for capturing an image, a playback button 105b for playing back the captured image, and a four-way key 105c consisting of up, down, left, and right buttons for configuring various camera settings. The operation unit 105 also includes a touch panel 105d that is integrally formed with the display unit 106 (described later). The operation unit 105 also includes operation members such as a dedicated connection button for starting communication with an external device via the communication unit 111 (described later).
[0023] The shutter button 105a is turned on during operation when it is pressed halfway (a shooting preparation instruction) and generates a first shutter switch signal SW1. In response to the first shutter switch signal SW1, the control unit 101 controls the imaging unit 102 to start operations such as AF processing and AE processing. In addition, when the shutter button operation is completed, in other words, when it is pressed all the way (a shooting instruction), the shutter button is turned on and generates a second shutter switch signal SW2. In response to the second shutter switch signal SW2, the control unit 101 starts a series of shooting processing operations, from reading image data from the imaging unit 102 to writing an image file to the recording medium 110.
[0024] The display unit 106 displays live view images, captured images, and text for interactive operation. The display unit 106 is, for example, a display device such as a liquid crystal display or an organic EL display. The display unit 106 may be integrated with the digital camera 100 or may be an external device connected to the digital camera 100. The digital camera 100 only needs to be able to connect to the display unit 106 and control the display on the display unit 106.
[0025] The audio input unit 107 is one or more microphones built into the digital camera 100 or connected via an audio terminal. The audio input unit 107 collects audio from around the digital camera 100, converts the generated analog audio signal into a digital signal, and outputs the digital signal to the control unit 101. The control unit 101 performs various audio processes on the digital audio signal generated by the audio input unit 107 to generate audio data. When capturing a video, the control unit 101 generates an audio-accompanying video file from the audio data generated by the audio input unit 107 and the image data generated by the imaging unit 102. When capturing a still image, the control unit 101 uses an audio memo function to associate the audio data generated by the audio input unit 107 with the image data generated by the imaging unit 102 and add the audio file to the image file. Note that the process of generating audio data by the audio input unit 107 may be partially shared and executed by other hardware (e.g., the control unit 101).
[0026] The audio output unit 108 is a speaker that converts audio data generated by the audio input unit 107, electronic sound data stored in the nonvolatile memory 103, and audio data associated with a video file into analog audio signals and plays them back as audio. The electronic sounds are, for example, music, warning sounds, focusing sounds, electronic shutter sounds, or operation sounds, and are stored as audio data in the nonvolatile memory 103. By listening to the electronic sounds output by the audio output unit 108, the user can, for example, become aware that the subject has been focused on or that an error has occurred in the digital camera 100.
[0027] The power supply unit 109 is controlled by the control unit 101 to supply power to each component of the digital camera 100. The power supply unit 109 is a primary battery such as an alkaline battery or a lithium battery, or a secondary battery such as a NiCd battery, a NiMH battery, or a lithium ion battery.
[0028] The recording medium 110 records image files and audio files created by the control unit 101. Furthermore, the control unit 101 reads out image files and audio files stored on the recording medium 110 in playback mode. The recording medium 110 may be a memory card or hard disk drive that is attached to the digital camera 100, or may be a flash memory or hard disk drive built into the digital camera 100. It is sufficient that the digital camera 100 is at least able to access the recording medium 110.
[0029] The communication unit 111 includes a communication interface for wirelessly communicating with an external device such as an FTP server 200 (described later). The digital camera 100 of this embodiment can exchange data with an external device via the communication unit 111. For example, image files and audio files can be transferred to the external device via the communication unit 111. In this embodiment, the communication unit 111 includes an antenna and a communication circuit for communicating with the external device via a wireless LAN in accordance with the IEEE 802.11 standard, or a communication circuit for communicating via a wired LAN in accordance with the Ethernet standard. The control unit 101 realizes wireless communication with the external device by controlling the communication unit 111. The communication unit 111 does not necessarily have to be built into the digital camera 100; the digital camera 100 can be connected to a built-in or external communication unit 111 and only needs to have at least the function of controlling the communication unit 111.
[0030] It should be noted that the communication device of this embodiment is a digital camera 100 and therefore includes an image capturing unit 102, but the communication device does not necessarily have to include an image capturing unit 102.
[0031] <Connection type> Next, the connection between the digital camera 100 and the FTP server 200 in this embodiment will be described with reference to FIG.
[0032] The digital camera 100 of this embodiment transmits and receives files to and from the FTP server 200 in accordance with FTP.
[0033] 2A and 2B are diagrams illustrating a connection configuration between the digital camera 100 and the FTP server 200 of this embodiment. 2A shows an example of a connection configuration in which the digital camera 100 and the FTP server 200 are connected via an access point 201.
[0034] In the example of Fig. 2(a), the digital camera 100 and the FTP server 200 join a wireless LAN network formed by an access point 201, which is an example of an external relay device, and the digital camera 100 specifies and connects to the FTP server 200, thereby enabling the digital camera 100 and the FTP server 200 to communicate via FTP. Fig. 2(b) illustrates a connection configuration in which the digital camera 100 and the FTP server 200 are connected via a hub 202.
[0035] In the example of Figure 2(b), the digital camera 100 is connected to a wired LAN hub 202, which is an example of an external relay device, by a wired LAN cable, and the digital camera 100 specifies and connects to the FTP server 200, thereby enabling the digital camera 100 and the FTP server 200 to communicate via FTP.
[0036] In this embodiment, an example in which the digital camera 100 is connected to the FTP server 200 will be described, but the present invention is not limited to this. Also, in this embodiment, an example in which the digital camera 100 and the FTP server 200 are connected to a wired LAN hub via a wired LAN cable will be described, but the present invention is not limited to this. For example, it is also possible to connect to an AP via a wired LAN cable, or to connect directly to the FTP server 200 via a wired LAN cable.
[0037] <Session establishment process> Next, the process of establishing a session between the digital camera 100 and the FTP server 200 will be described.
[0038] First, the digital camera 100 transmits a connection request to the FTP server 200 , and the FTP server 200 transmits a response to the connection request received from the digital camera 100 .
[0039] Next, the digital camera 100 transmits the user name and password to the FTP server 200. The FTP server 200 transmits a response to the user name and password received from the digital camera 100.
[0040] As described above, the digital camera 100 exchanges data for logging in to the FTP server 200, and when login becomes possible, the digital camera 100 successfully connects to the FTP server 200 and establishes a session.
[0041] If the communication path between the digital camera 100 and the FTP server 200 is interrupted or if the FTP server 200 is not running, the digital camera 100 cannot receive a response from the FTP server 200 in response to the connection request from the digital camera 100, and therefore cannot connect to the FTP server 200. If the digital camera 100 does not receive a response within a certain time period after sending a connection request to the FTP server 200, it determines that the connection to the FTP server 200 has failed.
[0042] Furthermore, if the user name or password used for login is incorrect, or if a communication error occurs and the user name or password cannot be properly authenticated by the FTP server 200, the FTP server 200 sends a login failure response to the digital camera 100. When the digital camera 100 receives the login failure response from the FTP server 200, it determines that the connection with the FTP server 200 has failed.
[0043] If the digital camera 100 fails to connect to the FTP server 200, it performs a reconnection process. The reconnection process may be performed after a predetermined waiting time (for example, 10 seconds) has elapsed since the digital camera 100 determined that the connection to the FTP server 200 has failed. Alternatively, an exponential backoff mechanism may be used to exponentially increase the waiting time each time the reconnection process is performed, from 1 second, to 2 seconds, to 4 seconds, to 8 seconds. When the reconnection process is performed, if the communication path has been resolved, the FTP server 200 has been restarted, or a communication error has not occurred and the user name and password can be correctly authenticated by the FTP server 200, the connection to the FTP server 200 is successful.
[0044] If the digital camera 100 fails to connect to the FTP server 200 even after the reconnection process, the digital camera 100 performs the reconnection process again. In this embodiment, the total number of attempts for the initial connection process and the reconnection process is referred to as the number of connection attempts. For example, if three reconnection processes are performed after the initial connection process, the total number of connection attempts is four. A predetermined upper limit may be set for the number of connection attempts. In this embodiment, the upper limit for the number of connection attempts is referred to as the maximum number of connection attempts. If the digital camera 100 continues to fail in the connection process, it will repeatedly perform the reconnection process until the maximum number of connection attempts is reached. For example, if the maximum number of connection attempts is 10, the digital camera 100 will perform the reconnection process a maximum of nine times after the initial connection process. Repeating the reconnection process when it is unable to connect to the FTP server 200 will use the processing power and communication bandwidth of the digital camera 100, which sends the connection request, and the FTP server 200, which sends a response to the connection request. In this embodiment, setting an upper limit on the number of reconnection processes makes it possible to reduce the processing power and communication bandwidth usage of the digital camera 100 and the FTP server 200.
[0045] Through the above-described processing, the digital camera 100 connects to the FTP server 200. The digital camera 100 can also simultaneously establish multiple sessions with the FTP server 200. The digital camera 100 establishes multiple sessions with the FTP server 200 by performing connection processing for multiple sessions. Once multiple sessions have been established with the FTP server 200, the digital camera 100 can simultaneously transfer multiple image files to the FTP server 200 using the multiple sessions.
[0046] <Session establishment process in the first embodiment> Next, with reference to FIGS. 3 and 4, a process will be described in which the digital camera 100 establishes a session with the FTP server 200 that limits the number of sessions that the same user can connect to simultaneously.
[0047] 3 is a flowchart illustrating a process of establishing a session with the FTP server 200 by the digital camera 100 according to the first embodiment. FIG. 4 shows an example of a UI screen displayed in the session establishment process according to the first embodiment.
[0048] 3 is realized by the control unit 101 expanding a program stored in the nonvolatile memory 103 into the work memory 104, executing the program, and controlling each component of the digital camera 100. The same applies to FIG. 5, which will be described later.
[0049] FIG. 4A illustrates a connection setting screen 400 for inputting setting items for the FTP server 200 to be connected. The control unit 101 displays the connection setting screen 400 on the display unit 106 in response to a user operating the operation unit 105. The input field 401 is a field in which the user inputs the IP address of the FTP server 200 to be connected. The input field 402 is a field in which the user inputs the port number of the FTP server 200 to be connected. The “Cancel” button 403, when selected by the user, cancels the setting input and transitions to the previous screen. The “OK” button 404, when selected by the user, confirms the setting input and transitions to the next screen. The user operates the operation unit 105 to input the IP address and port number of the FTP server 200 to be connected in the input field 401 and input field 402, respectively. The control unit 101 stores the IP address and port number of the FTP server 200 to be connected input by the user in the non-volatile memory 103.
[0050] Next, when the user operates the operation unit 105 to select the "OK" button 404, the control unit 101 displays a user name setting screen 410 shown in FIG. 4(b) on the display unit 106 based on the user's selection accepted via the operation unit 105. The input field 411 is a field where the user inputs a user name to be used to log in to the FTP server 200 to be connected. The "Cancel" button 412 is a button that, when selected by the user, cancels the setting input and transitions to the previous screen. The "OK" button 413 is a button that, when selected by the user, confirms the setting input and transitions to the next screen. The user operates the operation unit 105 to input a user name to be used to log in to the FTP server 200 to be connected in the input field 411. The control unit 101 stores the user name to be used to log in to the FTP server 200 to be connected, input based on the user's input, in the non-volatile memory 103.
[0051] Next, when the user operates the operation unit 105 to select the "OK" button 413, the control unit 101 displays a password setting screen 420 shown in FIG. 4(c) on the display unit 106 based on the user's selection accepted via the operation unit 105. The input field 421 is a field where the user inputs a password to be used to log in to the FTP server 200 to be connected. The "Cancel" button 422 is a button that, when selected by the user, cancels the setting input and transitions to the previous screen. The "OK" button 423 is a button that, when selected by the user, confirms the setting input and transitions to the next screen. The user operates the operation unit 105 to input the password to be used to log in to the FTP server 200 to be connected in the input field 421. The control unit 101 stores the password to be used to log in to the FTP server 200 to be connected, which has been input based on the user's input, in the non-volatile memory 103.
[0052] Next, when the user operates the operation unit 105 to select the "OK" button 423, the control unit 101 displays a connection confirmation screen 430 with the FTP server 200 shown in FIG. 4(d) on the display unit 106 based on the user's selection accepted via the operation unit 105. The "Cancel" button 431 is a button that, when selected by the user, cancels the connection with the FTP server 200 and transitions to the previous screen. The "OK" button 433 is a button that, when selected by the user, starts the connection with the FTP server 200.
[0053] Next, when the user operates the operation unit 105 to select the “OK” button 432, the control unit 101 starts the session establishment process with the FTP server 200 for all sessions based on the user operation received via the operation unit 105.
[0054] In an operation example of this embodiment, the digital camera 100 establishes two sessions with the FTP server 200, and the username and password used to establish each session are stored in the non-volatile memory 103. The two sessions established between the digital camera 100 and the FTP server 200 are referred to as session 1 and session 2, and there is no restriction on the order in which the processes for establishing session 1 and session 2 are performed. The initial maximum number of connection attempts for session 1 and session 2 is set to 10.
[0055] <Example 1> First, as an operational example 1, a case where both session 1 and session 2 are successfully connected to the FTP server 200 will be described.
[0056] The control unit 101 performs the process of step S301 based on the selection of the "OK" button 432 by the user accepted via the operation unit 105.
[0057] In step S301, the control unit 101 initializes the number of connection attempts, the maximum number of connection attempts, and the connection status of each session. The connection status is the connection status with the FTP server 200 of each session, and includes an unconnected state in which the connection process of step S302 has not been completed. The connection status also includes a successful connection state in which the connection process of step S302 has been completed one or more times and the connection has been successful. The connection status also includes a failed connection state in which the connection process of step S302 has been completed one or more times and the connection has failed. The control unit 101 initializes the number of connection attempts for each session to 0, the maximum number of connection attempts to 10, and the connection status to an unconnected state, and saves each of these in the working memory 104.
[0058] In step S302, the control unit 101 performs connection processing with the FTP server 200 for each session via the communication unit 111. The connection processing with the FTP server 200 uses the IP address, port number, user name, and password of the FTP server 200 stored in the nonvolatile memory 103. The control unit 101 performs connection processing with the FTP server 200 via the communication unit 111, and determines whether the connection status of each session is a connection success state or a connection failure state. Here, it is assumed that both session 1 and session 2 are in a connection success state. It is also assumed that the connection processing of step S302 for session 1 is completed before the connection processing of step S302 for session 2.
[0059] In step S303, the control unit 101 saves the connection state of the session determined in step S302 in the working memory 104. Here, the connection success state is saved in the working memory 104 as the connection state of session 1.
[0060] In step S304, the control unit 101 increments the number of connection attempts for the session by 1. Here, the number of connection attempts for session 1 is set to 1. The control unit 101 saves the new number of connection attempts for session 1 in the working memory 104.
[0061] In step S305, the control unit 101 determines whether the connection status of the session stored in the working memory 104 is a successful connection status. If the control unit 101 determines that the connection status is a successful connection status, it terminates the process, and if the control unit 101 determines that the connection status is a failed connection status, it proceeds to step S306. Here, the control unit 101 determines that the connection status of session 1 is a successful connection status, and terminates the connection process for session 1.
[0062] The above is the process for establishing session 1.
[0063] When the connection process in step S302 for session 2 is completed, the control unit 101 proceeds to the process in step S303 for session 2.
[0064] In steps S303 to S305, the control unit 101 performs the same processing for session 2 as for session 1, and stores a connection success status as the connection status of session 2 in the working memory 104. Next, the control unit 101 stores the number of connection attempts for session 2 as 1 in the working memory 104, determines that the connection status of session 2 is a connection success status, and terminates the connection processing for session 2.
[0065] This completes the process for establishing session 2.
[0066] When the process of establishing session 1 and session 2 is completed according to the above-described procedure, the control unit 101 displays a connection completion notification screen 440 with the FTP server 200 shown in FIG. 4(e) on the display unit 106 if there is a session in a connection success state. The connection completion notification screen 440 displays an "OK" button 441 for transitioning to the next screen. By displaying the connection completion notification screen 440 on the display unit 106, the control unit 101 notifies the user that the connection with the FTP server 200 has been completed. When the user selects the "OK" button 441, the control unit 101 performs the next process after the session establishment process with the FTP server 200, for example, an image transfer process.
[0067] By the above-described process of establishing a session with the FTP server 200, session 1 and session 2 have successfully connected to the FTP server 200, and transfer using the two sessions is now possible. When transferring image files based on a user operation, the control unit 101 can transfer up to two image files simultaneously using these two sessions.
[0068] <Example 2> Next, as an operational example 2, a case where both session 1 and session 2 fail to connect to the FTP server 200 will be described.
[0069] The process of step S301 is the same as that in the first operational example.
[0070] In step S302, the control unit 101 performs connection processing with the FTP server 200 for each session via the communication unit 111. Here, it is assumed that both session 1 and session 2 fail to connect to the FTP server 200. It is also assumed that the connection processing in step S302 for session 1 is completed before the connection processing in step S302 for session 2.
[0071] In step S303, the control unit 101 stores the connection failure state as the connection state of the session 1 in the working memory 104.
[0072] In step S304, the control unit 101 stores the number of connection attempts for session 1 as 1 in the working memory 104.
[0073] In step S305, control unit 101 determines that the connection state of session 1 is a connection failure state, and proceeds to step S306.
[0074] In step S306, the control unit 101 compares the number of connection attempts for the session with the maximum number of connection attempts, and determines whether the number of connection attempts is less than the maximum number of connection attempts. If the control unit 101 determines that the number of connection attempts is less than the maximum number of connection attempts, it proceeds to step S307. If the control unit 101 determines that the number of connection attempts is equal to or greater than the maximum number of connection attempts, it terminates the process. Here, the control unit 101 determines that the number of connection attempts for session 1 is less than the maximum number of connection attempts, and proceeds to step S307. If the determination process in step S306 determines that the number of connection attempts for the session is equal to or greater than the maximum number of connection attempts, the control unit 101 controls so that no further reconnection processing is performed.
[0075] In step S307, the control unit 101 checks the connection status of all sessions other than the session currently undergoing connection processing. Here, the control unit 101 checks the connection status of session 2 other than session 1. In this case, session 2 is in an unconnected state, where the connection processing of step S302 has not been completed.
[0076] In step S308, the control unit 101 determines whether or not there is a session in a connection successful state among all the sessions confirmed in step S307. If the control unit 101 determines that there is a session in a connection successful state, the process proceeds to step S309, and if the control unit 101 determines that there is no session in a connection successful state, the process returns to step S302. Here, the control unit 101 determines that there is no session in a connection successful state, and returns the process to step S302, where connection processing for session 1 is performed again.
[0077] When the connection process in step S302 for session 2 is completed, control unit 101 proceeds to the process in step S303 for session 2.
[0078] In steps S303 to S308, the control unit 101 performs the same process for session 2 as for session 1, and returns the process for session 2 to step S302 as for session 1, and connection processing is performed again.
[0079] If the connection to the FTP server 200 has failed for both session 1 and session 2 according to the above-described procedure, the connection process of step S302 is repeatedly performed as long as the number of connection attempts for each session is less than the maximum number of connection attempts, and once the number of connection attempts reaches the maximum number of connection attempts, no further connection process is performed. Here, the control unit 101 performs the connection process of step S302 for each session up to the maximum number of connection attempts of 10.
[0080] When the process of establishing session 1 and session 2 is completed according to the above-described procedure, if there is no session in the connection success state, the control unit 101 displays a connection failure notification screen 450 with the FTP server 200 shown in FIG. 4(f) on the display unit 106. The connection failure notification screen 450 displays an "OK" button 451 for transitioning to the next screen. By displaying the connection failure notification screen 450 on the display unit 106, the control unit 101 notifies the user that the connection with the FTP server 200 has failed. When the user selects the "OK" button 451, the control unit 101 performs the next process in the process of establishing a session with the FTP server 200.
[0081] <Example 3> Next, as a third operational example, a process will be described in which the digital camera 100 connects to the FTP server 200 when the number of sessions that the same user can connect to simultaneously is limited to one in the FTP server 200.
[0082] The FTP server 200 determines whether the connection requests are from the same user based on the user name. If the digital camera 100 attempts to connect with a number of sessions that exceeds the limit of the FTP server 200, it will be unable to log in to the FTP server 200 and the connection will fail. Here, due to the limit of the FTP server 200, it will be assumed that the connection for session 1 is successful, but the connection for session 2 fails.
[0083] The process of step S301 is the same as that in the first operational example.
[0084] In step S302, the control unit 101 performs connection processing with the FTP server 200 for each session. Here, it is assumed that the connection is successful for session 1 and unsuccessful for session 2. It is also assumed that the connection processing of step S302 for session 1 is completed before the connection processing of step S302 for session 2.
[0085] The process for session 1 from step S303 onwards is the same as the process for session 1 from step S303 onwards in operation example 1. The control unit 101 first saves a connection success state as the connection state of session 1 in the working memory 104. Next, the control unit 101 saves the number of connection attempts for session 1 as 1 in the working memory 104. Next, it determines that the connection state of session 1 is a connection success state, and ends the process of establishing session 1.
[0086] When the connection process in step S302 for session 2 is completed, control unit 101 proceeds to the process in step S303 for session 2.
[0087] The processing for session 2 in steps S303 to S306 is the same as the processing for session 2 in steps S303 to S306 in operation example 2. The control unit 101 saves a connection failure state as the connection state of session 2 in the working memory 104, and saves the number of connection attempts for session 2 as 1 in the working memory 104. The control unit 101 determines that the connection state of session 2 is a connection failure state, determines that the number of connection attempts for session 2 is less than the maximum number of connection attempts, and proceeds to step S307.
[0088] In step S307, the control unit 101 checks the connection status of session 1 other than session 2. In this case, session 1 is in a successful connection state.
[0089] In step S308, the control unit 101 determines that there is a session in a successful connection state, and proceeds to step S309.
[0090] In step S309, the control unit 101 limits the maximum number of session connection attempts and returns the process to step S302. From the processes up to this point, when the process of step S309 is performed, it is determined that the currently connected session, i.e., session 2, has failed to connect as determined in step S305, and the session other than the currently connected session, i.e., session 1, has successfully connected as determined in step S308. Therefore, at least one or more sessions have successfully connected, and at least one or more sessions have failed to connect. Normally, if the digital camera 100, the FTP server 200, and the communication path are operating normally, and the FTP server 200 does not limit the number of sessions that the same user can connect to simultaneously, all sessions will connect successfully. Conversely, if a problem occurs in the digital camera 100, the FTP server 200, or the communication path, it is likely that all sessions will fail to connect. Therefore, if at least one or more sessions have successfully connected and at least one or more sessions have failed to connect, it is assumed that the FTP server 200 limits the number of sessions that the same user can connect to simultaneously. In the case of a connection failure due to a limit on the number of sessions, even if reconnection processing is repeatedly performed up to the maximum number of connection attempts, the connection will continue to fail unless the limit on the FTP server 200 is changed. Therefore, by limiting the maximum number of connection attempts and making it less than the original maximum number of connection attempts, the number of unnecessary reconnection processing can be reduced. Here, the new maximum number of connection attempts is set to the current number of connection attempts for the session plus one. As determined in step S306, the current number of connection attempts for the session is less than the maximum number of connection attempts, so the new maximum number of connection attempts is always equal to or less than the maximum number of connection attempts. In this embodiment, the control unit 101 sets the new maximum number of connection attempts for session 2 to 2, which is obtained by adding one to the current number of connection attempts for session 2 (1). As a result, the maximum number of connection attempts for session 2 is limited from 10 to 2.
[0091] In step S302, the control unit 101 performs connection processing for session 2 again, and the connection fails again due to the restrictions imposed by the FTP server 200.
[0092] The processing for session 2 in steps S303 to S305 is the same as the processing for the first session 2 in steps S303 to S305 in operation example 3. The control unit 101 saves a connection failure state as the connection state of session 2 in the working memory 104. Next, the number of connection attempts for session 2 is saved as 2 in the working memory 104. Next, the connection state of session 2 is determined to be a connection failure state, and the processing proceeds to step S306.
[0093] In step S306, control unit 101 compares the number of connection attempts for session 2 with the maximum number of connection attempts. In this case, the number of connection attempts for session 2 is 2, and the maximum number of connection attempts is also 2, so it determines that the number of connection attempts is equal to or greater than the maximum number of connection attempts, and terminates the process of establishing session 2.
[0094] In the connection process for session 2 described above, if the maximum number of connection attempts is not limited in step S309, the connection process for session 2 would be performed 10 times, which is the original maximum number of connection attempts. In contrast, by limiting the maximum number of connection attempts in step S309, the connection process for session 2 is completed after two attempts, making it possible to reduce unnecessary connection processes.
[0095] The maximum number of connection attempts limited in step S309 may be set to zero, and image files may be transferred using a session that has successfully connected without performing reconnection processing for the session that has failed to connect.
[0096] When the process of establishing session 1 and session 2 is completed according to the above-described procedure, if there is a session in a connection successful state, the control unit 101 displays a connection completion notification screen 440 with the FTP server 200 shown in Fig. 4(e) on the display unit 106. The connection completion notification screen 440 may display a message notifying the user that the connections of some sessions have been successful and the connections of other sessions have failed.
[0097] Through the above-described procedure, the connection of session 1 with the FTP server 200 is successful, the connection of session 2 is unsuccessful, and data transfer using one session is now possible. When image transfer is performed based on a user operation, the control unit 101 transfers the image file using the session in the successful connection state.
[0098] [Embodiment 2] Next, the session establishment process of the second embodiment will be described.
[0099] The configuration and functions of the digital camera 100 of the second embodiment are the same as those of the first embodiment.
[0100] If the digital camera 100 fails to connect to the FTP server 200, it performs a reconnection process. If the reconnection process also fails to connect to the FTP server 200, the digital camera 100 performs the reconnection process again. In this embodiment, the time that has elapsed since the start of the initial connection process is called the connection attempt time. A predetermined upper limit may be set for the connection attempt time. The upper limit for the connection attempt time is called the maximum connection attempt time. As long as the connection process continues to fail, the digital camera 100 will repeatedly perform the reconnection process until the connection attempt time reaches the maximum connection attempt time. By setting an upper limit on the period for performing the reconnection process, it is possible to reduce the processing power and communication bandwidth usage of the digital camera 100 and the FTP server 200 required for the reconnection process.
[0101] Next, with reference to FIGS. 4 and 5, a method for the digital camera 100 to connect to the FTP server 200 that limits the number of sessions that can be simultaneously connected by the same user will be described.
[0102] FIG. 5 is a flowchart illustrating a session establishment process according to the second embodiment.
[0103] When the user operates the operation unit 105 to select the “OK” button 432, the control unit 101 starts connection processing with the FTP server 200 for each session based on the user's operation accepted via the operation unit 105.
[0104] In the second embodiment, the digital camera 100 establishes two sessions with the FTP server 200, and the username and password used to establish each session are stored in the non-volatile memory 103. The two sessions established between the digital camera 100 and the FTP server 200 are referred to as session 1 and session 2, and there is no restriction on the order in which the processes for establishing session 1 and session 2 are performed. The initial maximum connection attempt time for session 1 and session 2 is set to 100 seconds.
[0105] In the operation example of the second embodiment, a process in which the digital camera 100 connects to the FTP server 200 when the number of sessions that the same user can connect to simultaneously is limited to one will be described.
[0106] The FTP server 200 determines whether the connection requests are from the same user based on the user name. If the digital camera 100 attempts to connect with a number of sessions that exceeds the limit of the FTP server 200, it will be unable to log in to the FTP server 200 and the connection will fail. Here, due to the limit of the FTP server 200, it will be assumed that the connection for session 1 is successful, but the connection for session 2 fails.
[0107] The control unit 101 performs the process of step S501 based on the selection of the "OK" button 432 by the user accepted via the operation unit 105.
[0108] In step S501, control unit 101 initializes the connection attempt time and maximum connection attempt time and connection status of each session. Control unit 101 initializes the connection attempt time of each session to 0 seconds, the maximum connection attempt time to 100 seconds, and the connection status to unconnected, and saves these in working memory 104. Control unit 101 starts measuring time at the same time as setting the connection attempt time of each session to 0 seconds, and saves the elapsed time since the start of connection processing in working memory 104 as the connection attempt time.
[0109] The processing in step S502 is the same as the processing in step S302 in Fig. 3. Here, the connection for session 1 is successful, but the connection for session 2 fails. Also, it is assumed that the connection processing in step S502 for session 1 is completed before the connection processing in step S502 for session 2.
[0110] The process of step S503 is the same as the process of step S303 in Fig. 3. Here, the control unit 101 stores the connection success state in the working memory 104 as the connection state of session 1.
[0111] The process of step S504 is the same as the process of step S305 in Fig. 3. If control unit 101 determines that the connection status of the session is a successful connection status, it ends the process, and if it determines that the connection is unsuccessful, it proceeds to step S505. Here, control unit 101 determines that the connection status of session 1 is a successful connection, and ends the process of establishing session 1.
[0112] The above is the process for establishing session 1.
[0113] Next, when the connection process in step S502 for session 2 is completed, the control unit 101 proceeds to the process in step S503 for session 2.
[0114] In steps S503 and S504, control unit 101 performs the same processing on session 2 as on session 1. Control unit 101 saves a connection failure state as the connection state of session 2 in working memory 104. Next, control unit 101 determines that the connection state of session 2 is a connection failure state, and proceeds to step S505.
[0115] In step S505, control unit 101 compares the connection attempt time of the session with the maximum connection attempt time, and determines whether the connection attempt time is less than the maximum connection attempt time. If control unit 101 determines that the connection attempt time is less than the maximum connection attempt time, it proceeds to step S506. If control unit 101 determines that the connection attempt time is equal to or greater than the maximum connection attempt time, it terminates the process. Here, the connection attempt time of session 2 is assumed to be 30 seconds. In this case, control unit 101 determines that the connection attempt time of session 2 is less than the maximum connection attempt time, and proceeds to step S506. By the process of step S505, if the connection attempt time of the session is equal to or greater than the maximum connection attempt time, control is exercised so that further reconnection processing is not performed.
[0116] The process of step S506 is the same as the process of step S307. Control unit 101 checks the connection state of session 1, which is a session other than session 2. In this case, session 1 is in a connection successful state.
[0117] The process of step S507 is the same as the process of step S308. The control unit 101 determines that there is a session in a successful connection state, and proceeds to step S508.
[0118] In step S508, control unit 101 limits the maximum connection attempt time for a session. Here, 50 seconds is set as the new maximum connection attempt time. As a result, the maximum connection attempt time for session 2 is limited from 100 seconds to 50 seconds. After step S508, the connection process of step S502 is performed again.
[0119] In step S502, the control unit 101 performs connection processing for session 2 again, and the connection fails again due to restrictions imposed by the FTP server 200.
[0120] The processing for session 2 in steps S503 to S504 is the same as the processing for the first session 2 in steps S503 to S504. Here, control unit 101 saves a connection failure state as the connection state of session 2 in working memory 104. Next, control unit 101 determines that the connection state of session 2 is a connection failure state, and proceeds to step S505.
[0121] In step S505, control unit 101 compares the connection attempt time for session 2 with the maximum connection attempt time. Here, it is assumed that the connection attempt time for session 2 is 60 seconds. In this case, since the connection attempt time for session 2 is 60 seconds and the maximum connection attempt time is 50 seconds, it is determined that the connection attempt time is equal to or greater than the maximum connection attempt time, and connection processing for session 2 is terminated.
[0122] In the connection process for session 2, if the time required for each connection process is 30 seconds, then if the maximum connection attempt time is not limited in step S508, the connection process for session 2 will be performed four times. If the maximum connection attempt time is limited in step S508, the connection process for session 2 will be completed in two attempts, making it possible to reduce unnecessary connection processes.
[0123] The maximum connection attempt time limit set in step S508 may be set to zero, and the image file may be transferred using a session that has successfully connected without performing reconnection processing for the session that has failed to connect.
[0124] When the connection processing for session 1 and session 2 is completed according to the above-described procedure, if there is a session in the connection successful state, the control unit 101 displays a connection completion notification screen 440 with the FTP server 200 shown in FIG. 4(e) on the display unit 106.
[0125] As described above, when connecting to an FTP server that limits the number of sessions that the same user can connect to simultaneously, the digital camera 100 can reduce unnecessary reconnection processing. If a connection attempt for one session fails but another connection attempt is successful, the digital camera 100 limits the maximum number of connection attempts and performs the connection processing again (step S302). Alternatively, if a connection attempt for one session fails but another connection attempt is successful, the digital camera 100 limits the maximum connection attempt time and performs the connection processing again (step S502). This reduces the processing load on both the digital camera 100 and the FTP server 200 and reduces the use of the communication bandwidth between the digital camera 100 and the FTP server 200.
[0126] In each of the above-described embodiments, an example has been described in which the digital camera 100 establishes two sessions with the FTP server 200. However, even when the digital camera 100 connects to the FTP server 200 with any number of sessions greater than or equal to two, the same connection processing with the FTP server 200 as in this embodiment can be applied.
[0127] Furthermore, in each of the above-described embodiments, an example has been described in which connection processing for all sessions is completed before proceeding to the next processing, for example, image transfer processing. However, if a connection is successfully established through connection processing for one session, it is also possible to proceed to the next processing, for example, image transfer processing, using the session that has been successfully connected, without waiting for the connection processing for other sessions to be completed.
[0128] Furthermore, in each of the above-described embodiments, an example has been described in which the number of sessions that can be simultaneously connected from the same user to the FTP server 200 is limited to one. However, even if the number of sessions that can be simultaneously connected from the same user to the FTP server 200 is set to any number greater than or equal to one, the digital camera 100 can apply the same connection processing to the FTP server 200 as in this embodiment.
[0129] Furthermore, in each of the above-described embodiments, it is possible that after the session establishment process with the FTP server 200 is completed, the limit on the number of sessions that the same user can simultaneously connect to in the FTP server 200 is changed, and the session that failed to connect becomes connectable. In this case, the control unit 101 may perform a predetermined process after completing the session establishment process with the FTP server 200, and then perform connection processing for the session that failed to connect. After performing the predetermined process, for example, this refers to after performing transfer processing for one file, or after performing transfer of a series of files selected by a user operation.
[0130] Furthermore, in each of the above-described embodiments, the FTP server 200 has been described as limiting the number of sessions that can be simultaneously connected by the same user by determining the user name that requests connection, but the number of simultaneously connected sessions may also be limited by using other information that identifies the digital camera 100, such as the IP address or MAC address of the digital camera 100.
[0131] In addition, in each of the above-described embodiments, an example has been described in which the number of sessions that can be simultaneously connected from the same user is limited in the FTP server 200, but the FTP server 200 may also limit the total number of sessions of all users connected to the FTP server 200.
[0132] Furthermore, in each of the above-described embodiments, an example has been described in which the FTP server 200 limits the number of sessions, but the number of sessions may also be limited by a firewall installed on the communication path between the digital camera 100 and the FTP server 200.
[0133] [Other embodiments] The present invention can also be realized by supplying a program that realizes one or more functions of each embodiment to a system or device via a network or storage medium, and having one or more processors in the computer of the system or device read and execute the program. The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions.
[0134] The invention is not limited to the above-described embodiments, and various changes and modifications can be made without departing from the spirit and scope of the invention. Accordingly, the following claims are appended to apprise the public of the scope of the invention.
[0135] The disclosure of this specification includes the following communication device, control method, and program. [Configuration 1] A communication means capable of communicating with an external device; a control means for performing a connection process for establishing a plurality of sessions with the external device and performing a reconnection process for a session that has failed to connect; The control means is characterized in that the frequency of performing the reconnection process when there is a session among the multiple sessions that has failed to connect is lower than the frequency of performing the reconnection process when there is no session that has successfully connected. [Configuration 2] 2. The communication device according to configuration 1, wherein the frequency is an upper limit of the number of times the reconnection process is performed. [Configuration 3] the control means, when there is a session that has been successfully connected among the plurality of sessions, limits the number of times that the reconnection process for the session that has failed to be performed to less than a predetermined number of times; The communication device according to configuration 2, wherein if there is no session that has been successfully connected among the plurality of sessions, the number of times is not limited to less than the predetermined number. [Configuration 4] the control means, when there is a session that has been successfully connected among the plurality of sessions, sets the number of times that the reconnection process for the session that has failed to be performed to zero; 3. The communication device according to claim 2, wherein, when there is no session that has been successfully connected among the plurality of sessions, the number of times that the reconnection process is performed for the session that has failed to be connected is set to a predetermined number. [Configuration 5] The communication device according to any one of configurations 2 to 4, characterized in that the control means performs connection processing to establish multiple sessions with the external device, and after performing the reconnection processing for the session that failed to connect up to a predetermined number of times, starts a transfer processing to the external device. [Configuration 6] The communication device according to configuration 5, wherein the control means performs connection processing to establish multiple sessions with the external device, and after performing the reconnection processing for the session that failed to connect a predetermined number of times, if there is a session that failed to connect, performs a predetermined processing and then performs a reconnection processing for the session that failed to connect. [Configuration 7] 2. The communication device according to configuration 1, wherein the frequency is a time period during which the reconnection process of the session that has failed to connect is repeatedly performed after the connection process is started. [Configuration 8] the control means, when there is a session that has been successfully connected among the plurality of sessions, limits the time for which the reconnection process for the session that has failed to be repeatedly performed to less than a predetermined time; 8. The communication device according to configuration 7, wherein if there is no session that has been successfully connected among the plurality of sessions, the time limit is not set to any longer than the predetermined time. [Configuration 9] the control means, when there is a session that has been successfully connected among the plurality of sessions, sets a time period for repeatedly performing the reconnection process for the session that has failed to connect to zero; 8. The communication device according to claim 7, wherein, if there is no session that has been successfully connected among the plurality of sessions, the time for repeatedly performing the reconnection process for the session that has failed to connect is set to a predetermined time. [Configuration 10] The communication device according to any one of configurations 7 to 9, characterized in that the control means performs connection processing to establish multiple sessions with the external device, and after performing the reconnection processing for the session that failed to connect for a predetermined time period, starts a transfer processing to the external device. [Configuration 11] The communication device according to configuration 10, characterized in that the control means performs connection processing to establish multiple sessions with the external device, and after performing the reconnection processing for the session that failed to connect for a predetermined time period, if there is a session that failed to connect, performs the reconnection processing for the session that failed to connect after performing a predetermined processing. [Configuration 12] A control method for a communication device capable of communicating with an external device, comprising: a step of performing a connection process for establishing a plurality of sessions with the external device, and performing a reconnection process for a session that has failed to connect; A control method characterized in that, in the step, the frequency of performing the reconnection process when there is a session among the multiple sessions that has failed to connect is made lower than the frequency of performing the reconnection process when there is no session that has successfully connected. [Configuration 13] 12. A program for causing a computer to function as the communication device according to any one of claims 1 to 11. [Explanation of symbols]
[0136] 100... digital camera, 101... control unit, 111... communication unit, 200... FTP server
Claims
1. A communication means capable of communicating with an external device; a control means for performing a connection process for establishing a plurality of sessions with the external device and performing a reconnection process for a session that has failed to connect; The control means is characterized in that the frequency of performing the reconnection process when there is a session among the multiple sessions that has failed to connect is lower than the frequency of performing the reconnection process when there is no session that has successfully connected.
2. The communication device according to claim 1 , wherein the frequency is an upper limit of the number of times the reconnection process is performed.
3. the control means, when there is a session that has been successfully connected among the plurality of sessions, limits the number of times that the reconnection process for the session that has failed to be performed to less than a predetermined number of times; 3. The communication device according to claim 2, wherein if there is no session that has been successfully connected among the plurality of sessions, the number of times is not limited to less than the predetermined number.
4. the control means, when there is a session that has been successfully connected among the plurality of sessions, sets the number of times that the reconnection process for the session that has failed to be performed to zero; 3. The communication device according to claim 2, wherein, when there is no session that has been successfully connected among the plurality of sessions, the number of times that the reconnection process is performed for the session that has failed to be connected is set to a predetermined number.
5. The communication device described in claim 2, characterized in that the control means performs connection processing to establish multiple sessions with the external device, and after performing the reconnection processing for the session that failed to connect a predetermined number of times, starts a transfer processing to the external device.
6. The communication device according to claim 5, characterized in that the control means performs connection processing to establish multiple sessions with the external device, and after performing the reconnection processing for the session that failed to connect a predetermined number of times, if there is a session that failed to connect, performs the reconnection processing for the session that failed to connect after performing a predetermined processing.
7. 2. The communication device according to claim 1, wherein the frequency is a time period during which the reconnection process of the session that has failed to connect is repeatedly performed after the start of the connection process.
8. the control means, when there is a session that has been successfully connected among the plurality of sessions, limits the time for which the reconnection process for the session that has failed to be repeatedly performed to less than a predetermined time; 8. The communication device according to claim 7, wherein if there is no session that has been successfully connected among the plurality of sessions, the communication device does not limit the time beyond the predetermined time.
9. the control means, when there is a session that has been successfully connected among the plurality of sessions, sets a time period for repeatedly performing the reconnection process for the session that has failed to connect to zero; 8. The communication device according to claim 7, wherein, when there is no session that has been successfully connected among the plurality of sessions, a time period for repeatedly performing the reconnection process for the session that has failed to be connected is set to a predetermined time period.
10. The communication device according to claim 7, characterized in that the control means performs connection processing to establish multiple sessions with the external device, and after performing the reconnection processing for the session that failed to connect for a predetermined time period, starts a transfer processing to the external device.
11. The communication device according to claim 10, characterized in that the control means performs connection processing to establish multiple sessions with the external device, and after performing the reconnection processing for the session that failed to connect for a predetermined time period, if there is a session that failed to connect, performs the reconnection processing for the session that failed to connect after performing a predetermined processing.
12. A control method for a communication device capable of communicating with an external device, comprising: a step of performing a connection process for establishing a plurality of sessions with the external device, and performing a reconnection process for a session that has failed to connect; A control method characterized in that, in the step, the frequency of performing the reconnection process when there is a session among the multiple sessions that has failed to connect is made lower than the frequency of performing the reconnection process when there is no session that has successfully connected.
13. A program for causing a computer to function as the communication device according to any one of claims 1 to 11.
Citation Information
Patent Citations
Program, access control method, and information processing device
JP2014112270A
Information processing terminal, program and control method
JP2016033765A
Programmable logic controllers, data loggers and control methods
JP7017419B2
JPP7017419B