Sign In to Follow Application
View All Documents & Correspondence

Method For File Transfer To Heterogeneous Environments And System Thereof

Abstract: The present invention provides a method and a system to find heterogeneous environments available on a system and transfer files to selected interested environments. This is implemented by a simple GUI interaction like a click of a button. In the present invention, the user can find the heterogeneous environments with simple GUI interactions, select few among them, and transfer files to those selected environments without requiring any scripting knowledge. Advantageously, the present invention acts as a single tool to transfer files to the heterogeneous environments.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
31 March 2021
Publication Number
40/2022
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
info@krishnaandsaurastri.com
Parent Application

Applicants

Bharat Electronics Limited
Outer Ring Road, Nagavara, Bangalore - 560045, Karnataka, India

Inventors

1. Venkata Krishna Kota
Central Research Laboratory, Bharat Electronics Limited, Jalahalli P.O., Bangalore - 560013, Karnataka, India
2. V Raj Kumar
Central Research Laboratory, Bharat Electronics Limited, Jalahalli P.O., Bangalore - 560013, Karnataka, India

Specification

DESC:FIELD OF INVENTION
[0001] The present invention relates generally to electronic devices and particularly to file transfer in electronic devices.

BACKGROUND
[0002] Files are a basic format to store data in various environments available on computing platforms like file systems, containers, virtual machines, data stores like Hadoop Distributed File System (HDFS) etc. Transfer of files among such heterogeneous environments is a common need. There are various types of file transfer mechanisms available specific to their corresponding environments.
[0003] To transfer files to heterogeneous environments, a user needs to know their corresponding methods, tools, or commands. There is no single method to transfer files to heterogeneous environments. Therefore, transfer of files to heterogenous environments, which is a common requirement, involves various challenges.
[0004] Firstly, identifying heterogeneous environments is a tough task. For example, to find running docker containers, the user needs to run corresponding scripts, to find the running data store applications like HDFS, MongoDB. There is no single tool, application, or server to find such heterogeneous environments. In order to find the heterogeneous environments available on a system, the user needs to run all such scripts. For that, the user needs to possess the knowledge about those scripts.
[0005] Secondly, to transfer files to an environment, corresponding scripts need to be run. For example, to transfer a file to a docker container, a script with “docker cp” commands has to be used. To transfer files to HDFS, a script with “HDFS DFS put” or “HDFS DFS copyFromLocal” has to be used. Other kinds of scripts are required to transfer files to other kinds of environments. If the user has to transfer files to heterogeneous environments, the user has to write and run the corresponding scripts. For that, the user needs to possess the knowledge about those scripts. There is no single tool, application, or server which can transfer files to heterogeneous environments.
[0006] Therefore, there is a need for a technique to perform file transfers to heterogenous environments.

SUMMARY
[0007] This summary is provided to introduce concepts related to a method for transferring files from a host file system to one or more heterogenous environments, and a first system to transfer files from a host file system to one or more heterogenous environments. This summary is neither intended to identify essential features of the present invention nor is it intended for use in determining or limiting the scope of the present invention.
[0008] In an embodiment of the present invention, a method for transferring files from a host file system to one or more heterogenous environments is provided. The method includes displaying a Graphical User Interface (GUI) on a display for transferring files. The method includes receiving a selection of one or more files stored in the host file system of a first system by a processor. The files are selected by a user through the GUI. The method includes receiving a selection of the first system and/or one or more remote systems by the processor. The first system and/or the remote systems are selected by the user through the GUI. The method includes exploring a plurality of heterogenous environments in the selected first system and/or the selected remote systems by the processor. The method includes displaying the explored heterogenous environments on the display for selection by the user. The method includes receiving a selection of one or more displayed heterogenous systems by the processor from the user through the GUI. The method includes receiving a file transfer command by the processor from the user through the GUI. The method includes executing a plurality of scripts by the processor in background for transferring the selected files from the host file system to the selected heterogenous environments after receiving the file transfer command.
[0009] In another embodiment of the present invention, a first system to transfer files from a host file system to one or more heterogenous environments is provided. The first system includes a display and a processor. The display is configured to display a Graphical User Interface (GUI) for transferring files. The processor is configured to receive a selection of one or more files stored in a host file system of a first system. The files are selected by a user through the GUI. The processor is configured to receive a selection of the first system and/or one or more remote systems. The first system and/or the remote systems are selected by the user through the GUI. The processor is configured to explore the heterogenous environments in the selected first system and/or the selected remote systems. The explored heterogenous environments are displayed on the display for selection by the user. The processor is configured to receive a selection of one or more displayed heterogenous systems from the user through the GUI. The processor is configured to receive a file transfer command from the user through the GUI. The processor is configured to execute a plurality of scripts in background to transfer the selected files from the host file system to the selected heterogenous environments after receiving the file transfer command.
[0010] In an embodiment, the heterogenous environment is within the first system.
[0011] In an embodiment, the heterogenous environment is in a first remote system connected to the first system.
[0012] In an embodiment, the plurality of scripts include one or more scripts for every type of heterogenous environment.
[0013] In an embodiment, the types of heterogenous environments include one or more of: a plurality of docker containers, a plurality of virtual machines, a Hadoop Distributed File System (HDFS), and a MongoDB.
[0014] In an embodiment, the processor is configured to authenticate the first remote system using a predetermined identifier and a predetermined password.
[0015] In an embodiment, the GUI shows IP addresses of the plurality of remote systems that include the heterogenous environments.
[0016] In an embodiment, the GUI shows a soft-button clickable by the user for providing the file transfer command.

BRIEF DESCRIPTION OF ACCOMPANYING DRAWINGS
[0017] The detailed description is described with reference to the accompanying figures.
[0018] Figure 1 illustrates a schematic block diagram of an architecture of a file transfer system in accordance with an embodiment of the present invention.
[0019] Figure 2 illustrates a schematic block diagram of heterogenous environments available on a system in accordance with an embodiment of the present invention.
[0020] Figure 3 illustrates a schematic block diagram of a system to transfer files to heterogenous environments available on a host system in accordance with an embodiment of the present invention.
[0021] Figure 4 illustrates a schematic block diagram of a system to transfer files to heterogenous environments available on a remote system in accordance with an embodiment of the present invention.
[0022] Figure 5 illustrates a schematic block diagram of a system to transfer files to heterogenous environments available on a host system and a remote system in accordance with an embodiment of the present invention.
[0023] Figure 6 illustrates a schematic block diagram of a system to transfer files to heterogenous environments available on a host system and multiple remote systems in accordance with an embodiment of the present invention.
[0024] Figure 7 illustrates a flow chart depicting a method of file transfer in accordance with an embodiment of the present invention.
[0025] It should be appreciated by those skilled in the art that any block diagrams herein represent conceptual views of illustrative methods embodying the principles of the present disclosure. Similarly, it will be appreciated that any flow charts, flow diagrams, and the like represent various processes which may be substantially represented in computer readable medium and so executed by a computer or processor, whether or not such computer or processor is explicitly shown.

DETAILED DESCRIPTION
[0026] The various embodiments of the present invention provide a method for transferring files from a host file system to heterogenous file system(s) and a first system to transfer files from a host file system to heterogenous file system(s).
[0027] In the following description, for purpose of explanation, specific details are set forth in order to provide an understanding of the present invention. It will be apparent, however, to one skilled in the art that the present invention may be practiced without these details.
[0028] One skilled in the art will recognize that embodiments of the present invention, some of which are described below, may be incorporated into a number of systems.
[0029] However, the systems and methods are not limited to the specific embodiments described herein. Further, structures and devices shown in the figures are illustrative of exemplary embodiments of the present invention and are meant to avoid obscuring of the present invention.
[0030] Furthermore, connections between components and/or modules within the figures are not intended to be limited to direct connections. Rather, these components and modules may be modified, re-formatted or otherwise changed by intermediary components and modules.
[0031] The appearances of the phrase “in an embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
[0032] Files are integral parts of various environments like file systems, docker containers, virtual machines, data stores like HDFS, MongoDB etc. File transfer mechanisms differ from environment to environment. There are two main drawbacks in conventional file transfer systems and methods: (i) a user needs to possess knowledge about the file transfer mechanisms (for e.g.: tools usage like WinSCP, commands like “scp” and “docker cp”), and (ii) lack of single method to perform file transfer to heterogeneous environments makes it complex when the files are needed to be transferred to various heterogeneous environments. The file transfer method of the present invention addresses these drawbacks.
[0033] One aspect of the present invention provides a method to explore the available environments on host machine or on a remote machine.
[0034] Another aspect of the present invention provides a method to transfer files from a host file system to selected environments using a common user interface.
[0035] In an embodiment of the present invention, a method and system is provided to (i) find heterogeneous environments available on a system and (ii) transfer files to selected interested environments. Both these technical functionalities are implemented by a simple GUI interaction like a click of a button. In the method of the present invention, the user need not have any scripting knowledge. With simple GUI interactions, the user can find the heterogeneous environments, select few among them, and transfer files to those selected environments. That is, the present invention acts as a single tool to transfer files to the heterogeneous environments. In order to transfer the files using this tool, the user need not to have the knowledge about any scripts, thereby making the user’s task simpler.
[0036] In an embodiment of the present invention, a method of file transfers to heterogenous environments is provided. The method executes on hardware including memory, processor(s), and display. The method provides a user interface for the user to interact with. The user interacts using the user interface to browse the files by browsing the file system. The user clicks the button to find the heterogeneous environments available on the system. The processor runs the script in the background and finds the available environments. After exploring, the processor displays the environments to the user though a display device. The user may select few environments from the displayed environments. Thereafter, the user initiates the file transfer through the user interface (for e.g., a button click). Thereafter, the processor executes the corresponding scripts in the background and transfers the files to the selected environments.
[0037] The method of file transfer of the present invention explores the heterogenous environments available on a host machine or on a remote machine. The method provides a GUI with the available heterogeneous environments. The method supports an easy data transfer from source to any heterogeneous environments selected by the user.
[0038] Referring now to Figure 1, a schematic block diagram of an architecture of a file transfer system (100) is shown in accordance with an embodiment of the present invention. The file transfer system (100) includes a host file system (102), a data transfer gateway (104), and heterogenous environments (106). The heterogenous environments (106) include docker containers (108), virtual machines (110), and data stores (112). The docker containers (108) include a plurality of docker containers (108a-108n). The virtual machines (110) include a plurality of virtual machines (110a-110n). The data stores (112) include Hadoop Distributed File System (HDFS) (114) and MongoDB (116). The data transfer gateway (104) is a system with processors, memory, operating system, and display.
[0039] Referring now to Figure 2, a schematic block diagram of heterogenous environments available on a system (200) is shown in accordance with an embodiment of the present invention. The heterogenous environments (202) include docker containers (204), virtual machines (206), and data stores (208). The docker containers (204) include a plurality of containers (204). The virtual machines (206) include a plurality of virtual machines (206a-206n). The data stores (208) include HDFS (210) and MongoDB (212).
[0040] Referring now to Figure 3, a schematic block diagram of a first system (302) to transfer files to heterogenous environments available on a host file system is shown in accordance with an embodiment of the present invention. The first system (302) includes heterogenous environments (304), a file transfer application (306), and hardware (308). The hardware (308) includes a memory (310), a display (311), a processor (312), and a storage (314).
[0041] Referring now to Figure 4, a schematic block diagram of a first system (402) to transfer files to heterogenous environments available on a first remote system (404) is shown in accordance with an embodiment of the present invention. The first system (402) includes a file transfer application (405) and hardware (408). The hardware (408) includes a memory (410), a display (411), a processor (412), and a storage (414). The first remote system (404) includes heterogenous environments (416) and hardware (418). The hardware (418) includes a memory (420), a display (421), a processor (422), and a storage (424).
[0042] Referring now to Figure 5, a schematic block diagram of a system (500) to transfer files to heterogenous environments available on a first system (502) and a first remote system (504) is shown in accordance with an embodiment of the present invention. The first system (502) includes heterogenous environments (506), file transfer application (508), and hardware (510). The hardware (510) includes a memory (512), a display (513), a processor (514), and a storage (516). The first remote system (518) includes heterogenous environments (518) and hardware (520). The hardware (520) includes a memory (522), a display (523), a processor (524), and a storage (526).
[0043] Referring now to Figure 6, a schematic block diagram of a system (600) to transfer files to heterogenous environments available on a first system (602) and multiple remote systems (604 and 606) is shown in accordance with an embodiment of the present invention. The first system (602) includes heterogenous environments (608), a file transfer application (610), and hardware (612). The hardware (612) includes a memory (614), a display (615), a processor (616), and a storage (618). A first remote system (604) includes heterogenous environments (620) and hardware (622). The hardware (622) includes a memory (624), a display (625), a processor (626), and a storage (628). The Nth remote system (606) includes heterogenous environments (620) and hardware (622). The hardware (622) includes a memory (634), a display (635), a processor (636), and a storage (638).
[0044] The first system (602) transfers files from the host file system of the first system (602) to the heterogenous environments. The display (615) displays the GUI for transferring files. The GUI lists or displays the files stored in the host file system available for transferring. The user selects one or more of these files to transfer. The GUI also displays the remote systems (604) into which the files can be transferred.
[0045] The user may choose to transfer the files into the heterogenous environment (608) of the first system (602) itself or the heterogenous environments (620, 630) of any of the remote systems (604). The user first selects the first system (602) or one or more of the remote systems (604) to transfer the files. In an example, the GUI displays the IP addresses of the first system (602) or the remote systems (604) for selection by the user.
[0046] The processor (616) explores the heterogenous environments (608, 620, 630) in the selected first system (602) and/or the selected remote systems (604). The explored heterogenous environments (608, 620, 630) are displayed on the display (615). The user selects one or more of the displayed heterogenous environments (608, 620, 630) to transfer the selected files into.
[0047] In an example, “transfer” of the selected files includes cut, move, copy, or paste actions on the selected files. In an example, the GUI displays a clickable file transfer soft-button. After making the selections, the user clicks the file transfer button to send a file transfer command to the processor (616).
[0048] The processor (616) receives the file transfer command from the user and thereafter executes scripts in background to transfer the selected files from the host file system to the selected heterogenous environments (608, 620, 630).
[0049] When the remote systems (604) require authentication, the processor (616) performs authentication before transferring the files from the host file system to the heterogenous environments (620, 630) on the remote systems (604).
[0050] In an example, exploring the running containers and transferring files to the containers is implemented by following steps: Running the command “docker ps” to know the running containers. Getting the container ids and names of the containers to the user. Once the user chooses few of them as target environments, running “docker exec -it /bin/bash pwd” to get the working directory. After getting the working directory copying the file using “docker cp ”. For exploring the containers running on a remote pc, running such commands using “ssh” with a remote pc. Thus, it is possible to explore the containers running on remote pc.
[0051] Similarly, there are various commands to explore and copy files to virtual machines, data stores (like HDFS, MongoDB etc.). By running those command scripts on host machine or on remote machine with “ssh” support, file can be transferred from host file system to heterogeneous environments (like virtual machines and data stores) available on host machine or on remote machine.
[0052] The file transfer system of the present invention runs all the scripts in the background and provides a simple GUI. The file transfer system displays the heterogeneous environments available on the host machine or on the remote machine. It prompts the user to select the files from the host file system. It prompts the user to select the target environments into which user wants the selected files to be transferred. Then the file transfer system runs the corresponding scripts in the background to transfer the files to the heterogeneous environments to the target environments. Thus, the user need not to know the commands and scripts to transfer the files to the heterogeneous environments, thereby facilitating easier file transfer to the user.
[0053] Figure 7 illustrates a flow chart depicting a method of file transfer in accordance with an embodiment of the present invention.
[0054] At step 702, the GUI is displayed to the user.
[0055] At step 704, the user selects the files that need to be transferred on the host file system.
[0056] At step 706, the user selects the machine, which could be the host machine or the remote machine.
[0057] At step 708, the file transfer system explores the heterogenous environments on the selected machine.
[0058] At step 710, the available heterogenous environments are displayed to the users on the GUI.
[0059] At step 712, the user selects one or more target environments from the displayed environments.
[0060] At step 714, the user initiates the file transfer by clicking on a button on the displayed GUI.
[0061] At step 716, the file transfer system transfers the selected files to the target environments.
[0062] In operation, the present invention provides a file transfer method and a file transfer system to transfer of files to heterogeneous environments. The file transfer system explores the heterogeneous environments available on host machine by running the appropriate environment exploration commands and scripts in background. The heterogenous environments can be running docker containers, active virtual machines, data stores like HDFS, MongoDB etc.
[0063] The file transfer method includes providing a user interface to the user to select files to copy from the host system. The method includes displaying heterogeneous environments available on the selected system to the user. The method includes allowing the users to select the target environments. The method includes transferring the selected files to the target environments using corresponding file transfer mechanisms.
[0064] In an embodiment, the file transfer system and the file transfer method may be used to explore the heterogeneous environments available on the remote systems wherein the user first provides connection details of remote systems like IP address, username, password etc. The file transfer system uses these details to run appropriate environment exploration commands and scripts on the remote systems through “ssh” or other approaches.
[0065] In an embodiment, the file transfer system and the file transfer method may be used to copy files to the heterogeneous environments available on the remote systems wherein the user first provides connection details of remote systems like IP address, username, password etc. The file transfer system uses these details to run appropriate file transfer commands and scripts on the remote systems through “ssh” or other approaches.
[0066] The foregoing description of the invention has been set merely to illustrate the invention and is not intended to be limiting. Since modifications of the disclosed embodiments incorporating the spirit and substance of the invention may occur to person skilled in the art, the invention should be construed to include everything within the scope of the invention.
,CLAIMS:
1. A method for transferring files from a host file system (102) to one or more heterogenous environments (106,608,620,630), comprising:
displaying, on a display (615), a Graphical User Interface (GUI) for transferring files;
receiving, by a processor (616), a selection of one or more files stored in the host file system (102) of a first system (602), said files selected by a user through the GUI;
receiving, by the processor (616), a selection of the first system (602) and/or one or more remote systems (604), said first system (602) and/or said remote systems (604) selected by the user through the GUI;
exploring, by the processor (616), a plurality of heterogenous environments (106,608,620,630) in the selected first system (602) and/or the selected remote systems (604);
displaying, on the display (615), the explored heterogenous environments (106,608,620,630) for selection by the user;
receiving, by the processor (616), a selection of one or more displayed heterogenous systems (106,608,620,630) from the user through the GUI;
receiving, by the processor (616), a file transfer command from the user through the GUI; and
executing, by the processor (616), a plurality of scripts in background for transferring the selected files from the host file system (102) to the selected heterogenous environments (106,608,620,630) after receiving the file transfer command.

2. The method as claimed in claim 1, wherein the heterogenous environment (106,608) is within the first system (602).

3. The method as claimed in claim 1, wherein the heterogenous environment (620) is in a first remote system (604a) connected to the first system (602).

4. The method as claimed in claim 1, wherein the plurality of scripts include one or more scripts for every type of heterogenous environment (108,110,112).

5. The method as claimed in claim 4, wherein the types of heterogenous environments (108,110,112) include one or more of: a plurality of docker containers (108a-108n), a plurality of virtual machines (110a-110n), a Hadoop Distributed File System (HDFS) (114), and a MongoDB (116).

6. The method as claimed in claim 3, including authenticating, by the processor (616), the first remote system (604a) using a predetermined identifier and a predetermined password.

7. The method as claimed in claim 1, wherein the GUI shows IP addresses of the plurality of remote systems (604) that include the heterogenous environments (620,630).

8. The method as claimed in claim 1, wherein the GUI shows a soft-button clickable by the user for providing the file transfer command.

9. A first system (602) to transfer files from a host file system (102) to one or more heterogenous environments (106,608,620,630), comprising:
a display (615) configured to display a Graphical User Interface (GUI) for transferring files; and
a processor (616) configured to:
receive a selection of one or more files stored in a host file system (102) of a first system (602), said files selected by a user through the GUI,
receive a selection of the first system (602) and/or one or more remote systems (604), said first system (602) and/or said remote systems (604) selected by the user through the GUI,
explore the heterogenous environments (106,608,620,630) in the selected first system (602) and/or the selected remote systems (604), wherein the explored heterogenous environments (106,608,620,630) are displayed on the display (615) for selection by the user,
receive a selection of one or more displayed heterogenous systems (106,608,620,630) from the user through the GUI,
receive a file transfer command from the user through the GUI, and
execute a plurality of scripts in background to transfer the selected files from the host file system (102) to the selected heterogenous environments (106,608,620,630) after receiving the file transfer command.

10. The first system (602) as claimed in claim 9, wherein the heterogenous environment (106,608) is within the first system (602).

11. The first system (602) as claimed in claim 9, wherein the heterogenous environment (620) is in a first remote system (604a) connected to the first system (602).

12. The first system (602) as claimed in claim 9, wherein the plurality of scripts include one or more scripts for every type of heterogenous environment (108,110,112).

13. The first system (602) as claimed in claim 12, wherein the types of heterogenous environments (108,110,112) include one or more of: a plurality of docker containers (108a-108n), a plurality of virtual machines (110a-110n), a Hadoop Distributed File System (HDFS) (114), and a MongoDB (116).

14. The first system (602) as claimed in claim 11, wherein the processor (616) is configured to authenticate the first remote system (604a) using a predetermined identifier and a predetermined password.

15. The first system (602) as claimed in claim 9, wherein the GUI shows IP addresses of the plurality of remote systems (604) that include the heterogenous environments (620,630).

16. The first system (602) as claimed in claim 9, wherein the GUI shows a soft-button clickable by the user for providing the file transfer command.

Documents

Application Documents

# Name Date
1 202141015091-PROVISIONAL SPECIFICATION [31-03-2021(online)].pdf 2021-03-31
2 202141015091-FORM 1 [31-03-2021(online)].pdf 2021-03-31
3 202141015091-DRAWINGS [31-03-2021(online)].pdf 2021-03-31
4 202141015091-Proof of Right [04-05-2021(online)].pdf 2021-05-04
5 202141015091-FORM-26 [15-07-2021(online)].pdf 2021-07-15
6 202141015091-Correspondence, Form-1_15-07-2021.pdf 2021-07-15
7 202141015091-FORM 3 [26-08-2021(online)].pdf 2021-08-26
8 202141015091-ENDORSEMENT BY INVENTORS [26-08-2021(online)].pdf 2021-08-26
9 202141015091-DRAWING [26-08-2021(online)].pdf 2021-08-26
10 202141015091-CORRESPONDENCE-OTHERS [26-08-2021(online)].pdf 2021-08-26
11 202141015091-COMPLETE SPECIFICATION [26-08-2021(online)].pdf 2021-08-26
12 202141015091-FORM 18 [22-07-2022(online)].pdf 2022-07-22
13 202141015091-FER.pdf 2023-01-17
14 202141015091-FER_SER_REPLY [17-07-2023(online)].pdf 2023-07-17
15 202141015091-COMPLETE SPECIFICATION [17-07-2023(online)].pdf 2023-07-17
16 202141015091-CLAIMS [17-07-2023(online)].pdf 2023-07-17
17 202141015091-ABSTRACT [17-07-2023(online)].pdf 2023-07-17
18 202141015091-RELEVANT DOCUMENTS [04-10-2024(online)].pdf 2024-10-04
19 202141015091-POA [04-10-2024(online)].pdf 2024-10-04
20 202141015091-FORM 13 [04-10-2024(online)].pdf 2024-10-04
21 202141015091-Response to office action [01-11-2024(online)].pdf 2024-11-01
22 202141015091-US(14)-HearingNotice-(HearingDate-23-12-2025).pdf 2025-11-24

Search Strategy

1 16jANUARY1202141015091E_16-01-2023.pdf