Sign In to Follow Application
View All Documents & Correspondence

Sharing Of A File Using Electronic Devices

Abstract: The embodiments herein provide a method and system for sharing a file using a plurality of paired electronic devices. The method includes sending a request from a first electronic device to download the file from a server. Further, the method includes fragmenting said file into a plurality of portions at the server, and sharing a directory of the portions with the first electronic device. Furthermore, the method includes sharing the directory by the first electronic device with the paired second electronic devices, where the paired second electronic device downloads one or more portions of the file in accordance to the directory.

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
14 November 2013
Publication Number
22/2015
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
Parent Application
Patent Number
Legal Status
Grant Date
2022-02-18
Renewal Date

Applicants

Samsung India Electronics Pvt Ltd.
Logix Cyber Park Tower C 8th to 10th floor, Tower D, Ground to 10th floor, Plot No.C - 28-29, Sector -62, Noida-201301 (U.P), India

Inventors

1. Mohammad Aslam
#9/670, Opp. Basera Colony,Bhartiya Nagar Main Road,Bhartiya Nagar, Bilaspur.Chattisgarh-495001
2. Vishwesh Yadav
Village- Baramadpur, Post- Makhadoom-Baramadpur, Tehsil- Kadipur, Dist- Sultapur, Uttar Pradesh, Pin Code- 224159
3. Anant Jindal
Flat no.202, sdc royal, plot c-12 moti marg, bapu nagar, Jaipur, Rajasthan -302015
4. Priyanka Goel
308, Chawmandi, State bank colony, Roorkee-247667 (Uttarakhand)
5. Ananya Vetaal
326,Durgesh Vihar JK Road Bhopal -462041
6. Aditi Chaturvedi
609, Anand Tower, Sarvodaya Nagar, Near Rave Moti Mall, KANPUR - 208001
7. Munwar Khan
H. No 9-6-761 , Devi Nagar , Degloor Naka road Nanded , Maharashtra – 431604
8. Sanket Magarkar
102, Nandanvan, Tilak Nagar, Dombivali(E), Dist - Thane, Pin 421201, Maharashtra

Specification

FIELD OF INVENTION
[001] The embodiments herein are generally relates to electronic devices, and more particularly to a mechanism for sharing portions of a file using a plurality of electronic devices in vicinity to an electronic device.
BACKGROUND
[002] With penetration of the Internet, users started sharing 5 (downloading and uploading) a lot of data such as songs, videos, documents, and the like over the Internet. Typically, the data is shared as one or more files, which are downloaded or uploaded by electronic devices from a location on a network, such as a local area network (LAN) or the Internet. The data is free but the user has to pay for the Internet charges to 10 share the data. As the size of the data increases the Internet usage cost also increases. At an instance, after downloading a file at a high cost, the users can share the file freely with other users in vicinity using a Peer-to-Peer (P2P) communication mechanism like Bluetooth, Near Field Communication (NFC), Wi-Fi direct, and the like. Thus, the file which 15 resulted in the high Internet cost to one user can be freely available to the other user.
[003] Different methods and systems have been proposed for downloading data content from the Internet. In one mechanism, system and method for downloading by different processes are described. A download 20 manager is configured to download content using a plurality of different download processes to obtain different portions of the content. The download processes may download a single file from a single or multiple different sources using any type of download process, including but not limited to Hyper Text Transfer Protocol (HTTP), HTTP Secure (HTTPS), 25 File Transfer Protocol (FTP), P2P processes, and the like. The downloading content by the different processes includes separating a file of content into chunks or byte ranges and downloading the chunks using different
3/34
download processes. One disadvantage of this mechanism is that it involves different download processes to obtain the data content which may increase the overall Internet usage cost and time. Another mechanism provides a system and method for simultaneous download of application file portions. The system allows multiple file portions to be received from multiple 5 network connections or sources. One disadvantage of this mechanism is that the multiple portions of the data content are received from different network sources or connections which may increase the overall Internet usage cost and time. Also, the Internet usage cost is borne by a single user downloading the file portions from multiple network connections. Further, 10 the conventional system and method focuses mainly on download process of the data content while neglecting the upload process which also increases the overall Internet usage cost for a single user.
[004] Though the existing systems and methods are effective to a degree in downloading the data content but include both advantages and 15 disadvantages in terms of cost, number of data sources, download processes, upload processes, and the like. Thus, there remains a need of a system and method for uploading and downloading data content on a shared Internet usage cost.
OBJECT OF INVENTION 20
[005] The principal object of the embodiments herein is to provide a method and system for sharing different portions of a file using a plurality of electronic devices in vicinity.
[006] Another object of the embodiments herein is to provide a mechanism for downloading different portions of a file in parallel with 25 electronic devices in vicinity to share download cost.
[007] Another object of the embodiments herein is to provide a mechanism for uploading different portions of a file in parallel with electronic devices in vicinity to share upload cost.
30
4/34
SUMMARY
[008] Accordingly the invention provides a system and method for sharing a file using a plurality of electronic devices in vicinity. The method includes sending a request from a first electronic device to download the file from a server. Further, the method includes fragmenting sequentially 5 the file into a plurality of portions at the server. Furthermore, the method includes receiving, at the first electronic device, a directory of the plurality of portions of the file from the server. Furthermore, the method includes pairing the second electronic devices in vicinity to the first electronic device using a short range communication, and sharing the directory with 10 the paired second electronic devices in vicinity to download the portion of the file from the server. Furthermore, the method includes downloading the portion of the file from the server in accordance to the directory at the first electronic device and the second electronic device. Furthermore, the method includes sharing the downloaded portion of the file among the first 15 electronic device and the paired second electronic device using the short range communication. Furthermore, the method includes merging the downloaded portion of the first electronic device and the downloaded portion of the paired second electronic device to form the file.
[009] Accordingly the invention provides a computer program 20 product for sharing a file using a plurality of electronic devices in vicinity. The computer program product includes an integrated circuit. The integrated circuit includes a processor, a memory including a computer program code within the circuit. Further, the memory and the computer program code with the processor cause the product to receive send a 25 request from a first electronic device to download the file from a server. Furthermore, the memory and the computer program code with the processor cause the product to fragment sequentially the file into a plurality of portions at the server. Furthermore, the memory and the computer
5/34
program code with the processor cause the product to receive, at the first electronic device, a directory of the plurality of portions of the file from the server. Furthermore, the memory and the computer program code with the processor cause the product to pair the second electronic devices in vicinity to the first electronic device using a short range communication, and share 5 the directory with the paired second electronic devices in vicinity to download the portion of the file from the server. Furthermore, the memory and the computer program code with the processor cause the product to download the portion of the file from the server in accordance to the directory at the first electronic device and the second electronic device. 10 Furthermore, the memory and the computer program code with the processor cause the product to share the downloaded portion of the file among the first electronic device and the paired second electronic device using the short range communication. Furthermore, the memory and the computer program code with the processor cause the product to merge the 15 downloaded portion of the first electronic device and the downloaded portion of the paired second electronic device to form the file.
[0010] These and other aspects of the embodiments herein will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be 20 understood, however, that the following descriptions, while indicating preferred embodiments and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments herein without departing from the spirit thereof, and the embodiments herein include all such 25 modifications.
6/34
BRIEF DESCRIPTION OF FIGURES
[0011] This invention is illustrated in the accompanying drawings, throughout which like reference letters indicate corresponding parts in the various figures. The embodiments herein will be better understood from the following description with reference to the drawings, in which:
[0012] FIG. 1 is a diagram illustrating, among other things, a high 5 level overview of a system, according to embodiments as disclosed herein;
[0013] FIG. 2 is a block diagram showing different modules of the system, according to embodiments disclosed herein;
[0014] FIG. 3 is a flow chart illustrating a method for downloading different portions of a file in parallel with electronic devices in vicinity, 10 according to embodiments disclosed herein;
[0015] FIG. 4a shows an example illustration of sending a request to the second electronic devices(s) in vicinity, according to embodiments disclosed herein;
[0016] FIG. 4b shows an example illustration of confirming the 15 request received from the second electronic devices(s) in vicinity, according to embodiments disclosed herein;
[0017] FIG. 4c shows an example illustration of parallel download of different portions of the data using electronic devices in vicinity, according to embodiments disclosed herein; 20
[0018] FIG. 5 is a flow chart illustrating a method for uploading different portions of a file in parallel with electronic devices in vicinity, according to embodiments disclosed herein; and
[0019] FIG. 6 depicts a computing environment implementing the system and method, according to embodiments disclosed herein. 25
7/34
DETAILED DESCRIPTION OF INVENTION
[0020] The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-5 known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. Also, the various embodiments described herein are not necessarily mutually exclusive, as some embodiments can be combined with one or more other embodiments to form new embodiments. The term “or” as used herein, refers to a non-10 exclusive or, unless otherwise indicated. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein can be practiced and to further enable those skilled in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein. 15
[0021] The embodiments herein achieve a system and method for sharing a file using a plurality of electronic devices in vicinity. In an embodiment, a method and system for downloading different portions of a file in parallel with electronic devices in vicinity to share download cost is described. A server is configured to receive a request from a first electronic 20 device. The request indicates the file to be downloaded by the first electronic device form the server. The server is configured to sequentially fragment the file into a plurality of portions and send a directory of the plurality of portions to the first electronic device. The directory described herein can include names of the plurality of portions, numbers of the 25 plurality of portions, address of the plurality of portions, and the like. The first electronic device is configured to pair one or more second electronic devices (peers) in vicinity and share the directory with the paired second electronic devices. Further, the first electronic device and the paired second
8/34
electronic device download the one or more portions of the file from the server in accordance to the directory. Concurrently, the first electronic device and the paired second electronic devices share the respective downloaded portions of the file among each other using a short range communication so that each electronic device has a copy of all the 5 downloaded portions of the file. After all the portions of the file are downloaded and shared among the first and the paired second electronic devices, the portions are merged to get the complete file in the respective electronic devices.
[0022] In an embodiment, a method and system for uploading 10 different portions of a file in parallel with electronic devices in vicinity to share upload cost is described. The first electronic device can be configured to sequentially fragment a file into a plurality of portions and share a directory of the plurality of portions with the server. The first electronic device is configured to pair the one or more second electronic devices 15 (peers) in vicinity and share the fragmented portions of the file with the paired second electronic devices using the short range communication. Further, the first electronic device and the paired second electronic device upload the one or more portions of the file to the server in accordance to the directory. After all the portions of the file are received from the first 20 electronic device and the paired second electronic devices, the portions are merged to get the complete file at the server.
[0023] The method and system disclosed herein is simple, dynamic, robust, and reliable for downloading and uploading different portions of a file using electronic devices in vicinity. The users can share the download 25 and upload cost by collectively downloading and uploading the file using the electronic devices in vicinity. For example, if „n‟ users are collectively downloading a file then the Internet charges for downloading that file can be distributed equally among the „n‟ users. Each user downloads only 1/nth
9/34
portion of the file. Hence, each user has to pay only for 1/nth of the Internet cost of download. When all the users have downloaded their respective portions, all the portions of the file are combined to make the complete file. All the members now have the complete file in their respective devices by paying only for 1/nth of the Internet cost. Unlike conventional systems, 5 there is no serial download process. The file is fragmented into different portions and the portions are evenly assigned to the peers to download or upload. Further, as the file is downloaded or uploaded in parallel by multiple devices, the system and method can be used to increase the overall speed of downloading or uploading the files. Furthermore, the proposed 10 system and method can be implemented using existing infrastructure, components, and modules, and may not require extensive set-up or instrumentation.
[0024] Referring now to the drawings, and more particularly to FIGS. 1 through 6, where similar reference characters denote corresponding 15 features consistently throughout the figures, there are shown preferred embodiments.
[0025] FIG. 1 illustrating generally, among other things, a high level overview of a system 100, according to embodiments as disclosed herein. In an embodiment, the system 100 includes a first electronic device 20 102, a second electronic device 104, and a server 106 communicating among each other over a communication network 108.
[0026] The first electronic device 102 described herein can be for example, but not limited to, Smartphone, tablet, laptop, computer, wired devices, wireless devices, communicator, portable electronic device, 25 wearable computing devices, flexible devices, electronic kiosk, and the like. The first electronic device 102 can be configured to be connected to one or more second electronic devices 104 (also referred as peer devices). The second electronic device 104 described herein can be for example, but
10/34
not limited to, peer, Smartphone, tablet, laptop, computer, wired devices, wireless devices, communicator, portable electronic device, wearable computing devices, flexible devices, electronic kiosk, and the like. Also, peers may be any electronic device such as other network connected devices or even servers. The first electronic device 102 can be configured 5 to communicate with the second electronic device 104 using a short range communication. The short range communication described herein can be for example, but not limited to, Bluetooth, Near Field Communication (NFC), Wi-Fi direct, Peer-to-Peer communication (P2P) and the like.
[0027] Further, the first electronic device 102 can be configured to 10 interact with the server 106 to download or upload data files. The server 106 described herein can be any computing device or general purpose computer communicating directly or indirectly (using a third-party server) with the first electronic device 102 and the second electronic devices 104 over the communication network 108. The communication network 108 15 described herein can include for example, but not limited to, an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), a portion of the Internet, a portion of the Public Switched Telephone 20 Network (PSTN), a cellular telephone network, a combination thereof, or any other type of network.
[0028] The FIG. 1 shows a limited overview of the system 100 but, it is to be understood that another embodiment is not limited thereto. Further, the system 100 can include different modules communicating 25 among each other along with other hardware or software components. For example, the component can be, but not limited to, a process running in the electronic device, an executable process, a thread of execution, a program,
11/34
and/or a computer. By way of illustration, both an application running on an electronic device and the electronic device can be the component.
[0029] FIG. 2 is a block diagram showing different modules 200 of the system 100, according to embodiments disclosed herein. In an embodiment, the system 100 can be configured to include a short range 5 communication module 202, a fragmentation module 204, a download manager module 206, a controller module 208, and a storage module 210.
[0030] The short range communication module 202 can be configured to enable communication with the second electronic device 104 in vicinity to the first electronic device 102. The short range 10 communication module 202 may use a Peer-to-Peer (P2P) communication mechanism like Bluetooth, Near Field Communication (NFC), Wi-Fi direct, and the like to share the portions of files with the electronic devices in vicinity. The P2P communication mechanism can be a distributed application architecture that allows the peers to share and communicate 15 among each other. The fragmentation module 204 can be configured to sequentially fragment the file in to a plurality of portions based on one or more parameters. The parameter described herein can be a minimum size, maximum size, data plan of the user, and the like. The sequential fragmentation of the file allows the system 100 to easily identify the 20 sequence of the different portions of the file. The fragmentation module 204 can be configured to implement or use any fragmentation algorithm known in the art to divide the file into different portions. For each request, the fragmentation module 204 can be configured to create a directory including the details of the plurality of the portions in sequence. The 25 directory described herein can include names of the plurality of portions, numbers of the plurality of portions, address of the plurality of portions, and the like. The portions are saved in the directory created by the web-service for that request.
12/34
[0031] The download manager module 206 can be configured to download the different portions of the file from the server 106 and store locally on the electronic devices. The download manager module 206 in accordance with many embodiments can integrate a download manager application that enable downloading of different portions of the file over 5 the communication network 108 to be saved locally on the electronic devices. Further, the download manager module 206 in accordance with many different embodiments can be implemented as a background process. A background process describes a process that runs independent of user intervention, as opposed to a process such as word processing that requires 10 active user intervention to be useful. Allowing the download manager module 206 to run as background process may further enhance the ease at which a user can utilize the download manager as the user need not actively intervene to instruct on how to operate. The controller module 208 can be configured to merge the different portions of the file to get the complete 15 file. After all the portions of the file are downloaded, the portions are merged to get the complete file. The controller module 208 can merge the files by combining the different portions of the file in sequence.
[0032] The storage module 210 can be configured to locally store the different portions of the file. Further, the storage module 210 can be 20 configured to store other instructions and signals required to process different operations of the system 100.
[0033] Further, various operations performed by the system 100 is described in conjunction with the FIGS. 3 through 5. The modules 200 described with respect to the FIG. 2 are only for illustrative purpose and 25 does not limit the scope of the invention. All or some of the modules 200 can be implemented on the first electronic device 102, the second electronic device 104, and the server 106 to perform the various operations described
13/34
herein. Furthermore, different module with different labels and names can be used to achieve the similar or substantially similar operations.
[0034] FIG. 3 is a flow chart illustrating a method 300 for downloading different portions of a file in parallel with electronic devices in vicinity, according to embodiments disclosed herein. In an embodiment, 5 at step 302, the method 300 includes selecting a resource location of a file. Generally, each file on the Internet is associated with a resource locator such as a web address. The method 300 allows the user of the first electronic device 102 to select the resource locator of the file to be downloaded. 10
[0035] At step 304, the method 300 includes pairing the second electronic devices 104 in vicinity. The first electronic device 102 can be configured to identify the second electronic devices 104 in vicinity and request them to participate in the downloading process of the file. At step 304a, the method 300 includes sending a request to participate in the 15 downloading process to the second electronic device(s) 104 in vicinity. The first electronic device 102 can select the second electronic devices in vicinity and send the request to the nearby electronic devices. The first electronic device 102 shares the name of the file to be downloaded and also the list of peers to which the request has been send. At step 304b, the 20 method 300 includes receiving the request from the first electronic device 102. The second electronic devices 104 which are nearby to the first electronic device 102 can receive the request for participating in the downloading process shared by the first electronic device 102. At step 304c, the method 300 includes sending a response to the first electronic 25 device 102. The second electronic devices 104 can accept, reject, or ignore the request sent by the first electronic device 102. The second electronic devices 104 which are interested in participating in the download process send a response indicating their interest to participate in the downloading
14/34
process to the first electronic device 102. The responses of the second electronic devices 104 can be visible to other devices which have not yet rejected the request. At step 304d, the method 300 includes receiving the response from the second electronic devices 104. Further, at step 305, the paired second electronic devices 104 waits for the download to be started 5 from the first electronic device 102.
[0036] At step 306, the method 300 includes sending the selected resource locator to the server 106. The method 300 allows the first electronic device 102 to send the selected resource locator to the sever 102, such as to download the file. At step 308, the method 300 includes 10 fragmenting the file into a plurality of portions. The method 300 allows the server 106 to sequentially fragment the file in to a plurality of portions based on one or more parameters. The parameter described herein can be a minimum data size, maximum data size, data plan of the users and peer electronic devices, and the like. The sequential fragmentation of the file 15 allows the system 100 to easily identify the sequence of the different portions of the file. Further, the partial fragmentation of the file can also be done in some embodiments, where only some portions of the file are required by the user. For example, if the user is interested in downloading only a first page of a document then the document can be partially 20 fragmented pursuant to the user requirement.
[0037] At step 310, the method 300 includes receiving by the first electronic device 102, a directory of plurality of portions from the server 106. The fragmented portions of the file are stored on the directory created by the server 106 for that request in its file-system. For each request, the 25 server 106 can fragment the file into plurality of portions and create the directory including the details of the plurality of the portions in sequence. The directory described herein can include names of the plurality of portions, numbers of the plurality of portions, address of the plurality of
15/34
portions, and the like. At step 312, the method 300 includes sharing the directory with the paired second electronic device(s) 104. The method 300 allows the first electronic device 102 to share the directory information with all second electronic devices 104 that have accepted the request.
[0038] At step 314, the method 300 includes downloading one or 5 more portions of the file in accordance to the directory at the first electronic device. Using the name of the directory in the server 106, the method 300 allows the first electronic device 102 to start downloading non-overlapping set of file portions. At step 314a, the first electronic device 102 can send a Hyper Text Transfer Protocol (HTTP) Get operation (or any other protocol 10 get operation such as FTP, HTTPS, and the like) to get a portion of the file from the server 106. The get operation request can be provided from the first electronic device 102 in accordance to the directory information. At step 314b, the method 300 includes sending the requested portion of the file to the first electronic device 102. In response to receiving the Get operation 15 request, the server 106 allows the first electronic device 102 to download the portion of the file.
[0039] At step 316, the method 300 includes downloading one or more portions of the file in accordance to the directory at the paired second electronic devices 104. Unlike conventional systems, the system 100 allows 20 the electronic devices to download the portions of the files in parallel. The file is fragmented into different portions and the portions are evenly provided to the peers to download in accordance to directory. Using the name of the directory in the server 106, the method 300 allows the paired second electronic devices 104 to download non-overlapping set of the file 25 portions. At step 316a, the paired second electronic device(s) 104 can send a HTTP Get operation request to get a portion of the file from the server 106. The get operation request can be provided from the paired second electronic device (s) 104 in accordance to the directory information. At step
16/34
316b, the method 300 includes sending the requested portion of the file to the second electronic device 104. In response to receiving the Get operation request, the server 106 allows the second electronic device 104 to download the portion of the file. While the portions of the file are being downloaded, it is simultaneously being transferred to all the other 5 participating electronic devices (such as the first and the paired second electronic devices). This ensures that portion of a file downloaded by any electronic device is not repeatedly downloaded by any other participating electronic device. Further, if any of the paired second electronic devices leaves or terminates download process while the downloading is in 10 progress, the remaining file can be re-distributed among the remaining electronic devices. This ensures that there is no dependency on any particular participant.
[0040] At step 318, the method 300 includes sharing the downloaded portions of the file with the first electronic device 102 and the 15 paired second electronic devices 104 using the short range communication. In an embodiment, the method 300 allows the first electronic device 102 to share the downloaded portions with the paired second electronic devices 104 and vice versa. This ensures that any portion of the file downloaded by any of the peer becomes available to the other peer electronic devices. For 20 example, as the peers download designated portions of the file from the server 106 and they share the downloaded portions with the other electronic devices through parallel P2P communication. The P2P communication is free. This result in reduction of download cost. Further, any portion downloaded by any of the electronic devices will not be downloaded again 25 by any of the other electronic devices. At step 320, the method 300 includes merging the downloaded portions to form the complete file. After all the portions of the file are downloaded and shared among the first and the
17/34
paired second electronic devices, the portions are merged to get the complete file in the respective electronic devices.
[0041] Further, the system 100 and method 300 allows the users to download the portions of the file with peers while they are away from each other. The electronic devices can download the portions of the file 5 separately from same or different networks and merge the portions of the file when they come in vicinity using the short range communication. For this the users need to agree on downloading a file offline. The file portions can be allocated to the electronic devices by the server 106 in accordance to the directory. The users can then move away with their electronic devices 10 and download the portions of the file in their own networks. When the users return in vicinity the portions of the file can be available to the other users.
[0042] The various steps, blocks, operations, and acts described with respect to the FIG. 3 can be performed in sequential order, in random 15 order, simultaneously, parallel, or a combination thereof. Further, in some embodiments, some of the steps, blocks, operations, and acts can be omitted, skipped, modified, or added without departing from scope of the invention.
[0043] FIG. 4a shows an example illustration 400 of sending a 20 request to the second electronic devices(s) in vicinity, according to embodiments disclosed herein. In an embodiment, the user can search for a file on the Internet using the first electronic device 102 and send a resource locator of the file in which the user is interested in downloading to the server 106. The user then searches for the nearby peers by scanning through 25 a short range communication technique. As shown in the FIG. 4a, the list of peers in vicinity to the user is listed on the user electronic device. The list of peer electronic devices available in vicinity can be displayed with their names. The user can select multiple devices with in which the user is
18/34
interested to pool the file. A pooling request is then sent to the selected peers with the details of the file that is to be downloaded.
[0044] FIG. 4b shows an example illustration 402 of confirming the request received from the second electronic device(s) in vicinity, according to embodiments disclosed herein. In an embodiment, the peer electronic 5 devices can view the pooling request. As shown in the FIG. 4b, the peer can decide to accept, reject, or ignore the pooling request sent by the user. The peers can also report the pooling request as spam after which the request from the user will be blocked. Further, the peers which are interested in participating in the download process send a response indicating their 10 interest to participate in the downloading process to the user. The pooling requests and their responses of other peers can be visible to the peers which have not yet rejected the pooling request.
[0045] FIG. 4c shows an example illustration 404 of parallel download of different portions of the data using electronic devices in 15 vicinity, according to embodiments disclosed herein. Once the responses from the nearby peers are received, the user can start downloading the portions of the file from the server 106. As shown in the FIG. 4c, the user and the nearby peers can start downloading non-overlapping set of file portions using the name of the directory in the server 106. The server 106 20 can allocate different portions of the file to be downloaded by each peer electronic device in accordance to the directory. Each electronic device then downloads only the portion allocated to it using a get operation. At the same time, the portions of the file downloaded by each electronic device are shared among the user and the peers using a short range communication 25 (such as P2P communication mechanism). As a result, a portion of the file downloaded by one electronic device is available to all other participating electronic devices. When all the portions of the file are downloaded, the portions are merged to get the complete file while paying for downloading
19/34
only for some portions of the file. For example, if „5‟ users (or peers) collectively downloads a 100 MB file then the Internet charges for downloading that file can be distributed equally among the „5‟ users. Each user downloads only a 10 MB portion of the file. Hence, each user has to pay only for the 10 MB usage as the Internet cost of download. 5 Concurrently, each 10 MB portions of the file downloaded by each user are shared among the other users using a parallel P2P communication mechanism. When all the users have downloaded their respective portions, all the portions of the file are combined to make the complete 100 MB file. All the members now have the complete 100 MB file in their respective 10 devices by paying only for 10 MB of the Internet cost.
[0046] FIG. 5 is a flow chart illustrating a method for uploading different portions of a file in parallel with electronic devices in vicinity, according to embodiments disclosed herein. In an embodiment, at step 502, the method 500 includes fragmenting the file into a plurality of portions. If 15 the user of the first electronic device 102 is interested in uploading a file to the server 106, the method 500 allows the first electronic device 102 to sequentially fragment the file in to a plurality of portions based on one or more parameters. The parameter described herein can be a minimum data size, maximum data size, data plan of the user and peer electronic devices, 20 and the like. The sequential fragmentation of the file allows the system 100 to easily identify the sequence of the different portions of the file.
[0047] At step 504, the method 500 includes pairing the second electronic devices 104 in vicinity. The first electronic device 102 can be configured to identify the second electronic devices 104 in vicinity to 25 request them to participate in the uploading process of the file. At step 504a, the method 500 includes sending a request to participate in the uploading process to the second electronic device(s) 104 in vicinity. The first electronic device 102 can select the second electronic devices in
20/34
vicinity and send request to the nearby electronic devices. The first electronic device 102 shares the name of the file to be uploaded and also the list of peers to which the request has been send. At step 504b, the method 500 includes receiving the request from the first electronic device 102. The second electronic devices 104 which are nearby to the first 5 electronic device 102 can receive the request for participating in the uploading process shared by the first electronic device 102. At step 504c, the method 500 includes sending a response to the first electronic device 102. The second electronic devices 104 can accept, reject, or ignore the request sent by the first electronic device 102. The second electronic 10 devices 104 which are interested in participating in the upload process send a response indicating their interest to participate in the uploading process to the first electronic device 102. The responses of the second electronic devices 104 can be visible to other electronic devices which have not yet rejected the request. At step 504d, the method 500 includes receiving the 15 response from the second electronic devices 104.
[0048] At step 506, the method 500 includes sharing the one or more portions of the file with the paired second electronic devices 104 using a parallel P2P communication mechanism. After receiving the responses from the second electronic devices 104, the method 500 allows 20 the first electronic device 102 to share the one or more portion of the files using the parallel P2P communication. The P2P communication is free. This result in reduction of upload cost. Further, any portion uploaded by any of the electronic device will not be uploaded again by any of the other electronic devices. At step 508, the method 500 includes receiving the one 25 or more portions of the file at the paired second electronic devices 104. At step 510, the method 500 includes sharing a directory of the plurality of portions of the file with the server 106. The fragmented portions of the file are stored on the directory created by the first electronic device 102 for that
21/34
file in its file-system. For each file, the first electronic device 102 can fragment the file into plurality of portions and create the directory including the details of the plurality of the portions in sequence. The directory described herein can include names of the plurality of portions, numbers of the plurality of portions, address of the plurality of portions, and the like. 5 At step 512, the method 500 includes receiving, at the server 106, the directory of plurality of portions from the first electronic device 102.
[0049] At step 514, the method 500 includes uploading the one or more portions of the file in accordance to the directory from the first electronic device. Using the name of the directory in the first electronic 10 device 102, the method 500 allows the first electronic device 102 to start uploading non-overlapping set of file portions to the server 106. At step 514a, the server 106 can send a Hyper Text Transfer Protocol (HTTP) Get operation (or any other protocol get operation such as FTP, HTTPS, and the like) to get a portion of the file from the first electronic device 102. The get 15 operation request can be provided from the server 106 in accordance to the directory information. At step 514b, the method 500 includes uploading the requested portion of the file from the first electronic device 102. In response to receiving the Get operation request, the method 500 allows the first electronic device 102 to upload the portion of the file. 20
[0050] At step 516, the method 500 includes uploading the one or more portions of the file in accordance to the directory. Unlike conventional systems, the system 100 allows the electronic devices to upload the portions of the files in parallel. The file is fragmented into different portions and the portions are evenly provided to the peers to 25 upload in accordance to directory. Using the name of the directory, the method 500 allows the second electronic devices 104 to upload non-overlapping set of the file portions. At step 516a, the server 106 can send a HTTP Get operation request (or any other protocol get operation such as
22/34
FTP, HTTPS, and the like) to get a portion of the file from the paired second electronic device(s) 104. The get operation request can be provided from the server 106 in accordance to the directory information. At step 516b, the method 500 includes uploading the requested portion of the file from the paired second electronic devices 104. In response to receiving the 5 Get operation request, the method 500 allows the paired second electronic device 104 to upload the one or more portions of the file. At step 518, the method 500 includes merging the uploaded portions to form the complete file at the server 106. After all the portions of the file are uploaded by the first and the paired second electronic devices, the portions are merged to 10 get the complete file in the server 106. Further, the server may upload the file to any other source over the communication network 108.
[0051] Further, the system 100 and method 500 allows the users to upload the portions of the file with peers while they are away from each other. Once the user shares the different portions of the file with the peers 15 using the short range communication and the peers can upload the portions of the file separately from same or different networks. For this the users need to agree on upload a file offline. The file portions can be shared with the peer electronic devices in accordance to the directory. The peers can then move away with their electronic devices and upload the portions of the 20 file in their own networks.
[0052] The various steps, blocks, operations, and acts described with respect to the FIG. 5 can be performed in sequential order, in random order, simultaneously, parallel, or a combination thereof. Further, in some embodiments, some of the steps, blocks, operations, and acts can be 25 omitted, skipped, modified, or added without departing from scope of the invention.
[0053] Further, the methods and other description described herein provide a basis for a control program which can be implemented using a
23/34
microcontroller, microprocessor, or an equivalent thereof. The various labels, modules, components, devices, names, elements, operations, or the like described with respective to FIGS. 1 through 5 are only for illustrative purpose and does not limit the scope of the invention. Furthermore, it is understood that any other labels, modules, components, devices, names, 5 elements, operations, can be used to perform the same, similar, or substantially similar operations or functions without departing from the scope of the invention.
[0054] FIG. 6 depicts a computing environment 602 implementing the application, in accordance with various embodiments of the present 10 invention. As depicted, the computing environment 602 comprises at least one processing unit 604 that is equipped with a control unit 606 and an Arithmetic Logic Unit (ALU) 608, a memory 610, a storage unit 612, a clock chip 614, plurality of networking devices 616, and a plurality Input output (I/O) devices 618. The processing unit 604 is responsible for 15 processing the instructions of the algorithm. The processing unit 604 receives commands from the control unit 606 in order to perform its processing. Further, any logical and arithmetic operations involved in the execution of the instructions are computed with the help of the ALU 608.
[0055] The overall computing environment 602 can be composed of 20 multiple homogeneous and/or heterogeneous cores, multiple CPUs of different kinds, special media and other accelerators. The processing unit 604 is responsible for processing the instructions of the algorithm. The processing unit 604 receives commands from the control unit 606 in order to perform its processing. Further, any logical and arithmetic operations 25 involved in the execution of the instructions are computed with the help of the ALU 608. Further, the plurality of process units may be located on a single chip or over multiple chips.
24/34
[0056] The algorithm comprising of instructions and codes required for the implementation are stored in either the memory unit 610 or the storage 612 or both. At the time of execution, the instructions may be fetched from the corresponding memory 610 and/or storage 612, and executed by the processing unit 604. The processing unit 604 synchronizes 5 the operations and executes the instructions based on the timing signals generated by the clock chip 614. The embodiments disclosed herein can be implemented through at least one software program running on at least one hardware device and performing network management functions to control the elements. The elements shown in the FIGS. 1-6 include various units, 10 blocks, modules, or steps described in relation with methods, processes, algorithms, or systems of the present invention, which can be implemented using any general purpose processor and any combination of programming language, application, and embedded processor.
[0057] The foregoing description of the specific embodiments will 15 so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents 20 of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments herein have been described in terms of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit 25 and scope of the embodiments as described herein.
25/34
STATEMENT OF CLAIMS
We claim:
1. A method for sharing a file using a plurality of paired electronic devices, the method comprising:
sending a request from a first electronic device to download said file from a server;
fragmenting said file into a plurality of portions at said server;
receiving, at said first electronic device, a directory of said plurality of portions of said file from said server; and
sharing said directory by said first electronic device with said at least one paired second electronic device, wherein said at least one paired second electronic device downloads said at least one portion of said file from said server in accordance to said directory.
2. The method of claim 1, wherein said request comprises a resource locator of said file .
3. The method of claim 1, wherein said directory comprises at least one of names of said plurality of portions, numbers of said plurality of portions, and address of said plurality of portions.
4. The method of claim 1, wherein fragmenting said file into a plurality of portions further comprises:
receiving said resource locator associated with said file at said server; and
fragmenting sequentially said file into said plurality of portions based on at least one parameter at said server.
5. The method of claim 1, wherein said method further comprises:
26/34
downloading said at least one portion of said file from said server in accordance to said directory at said first electronic device and at said at least one second electronic device;
sharing said at least one downloaded portion of said file among said first electronic device and said at least one paired second electronic device using said short range communication; and
merging said at least one downloaded portion of said first electronic device and said at least one downloaded portion of said at least one paired second electronic device to form said file.
6. The method of claim 5, wherein downloading said at least one portion of said file in accordance to said directory at said first electronic device further comprises:
sending a request to said at least one sever to download said at least one portion of said file from said first electronic device; and
downloading said at least one portion of said file at said first electronic device in accordance to said directory.
7. The method of claim 5, wherein downloading said at least one portion of said file at said in accordance to said directory at said at least one paired second electronic device further comprises:
sending a request to said sever to download said at least one portion of said file from said at least one paired second electronic device; and
downloading said at least one portion of said file at said at least one paired second electronic device in accordance to said directory.
8. The method of claim 5, wherein merging said at least one downloaded portion of said first electronic device and said at least one downloaded portion of said at least one paired second electronic device to form said file further comprises:
27/34
receiving said at least one downloaded portion from said at least one paired second electronic device;
identifying said at least one downloaded portion of said file at said first electronic device; and
merging said at least one downloaded portion received from said first electronic device and said at least one downloaded portion received from said at least one paired second electronic device to form said file.
9. A method for sharing a file using a plurality of paired electronic devices, the method comprising:
fragmenting said file into a plurality of portions at a first electronic device;
sharing a directory of said plurality of portions of said file from said first electronic device with a server; and
sharing said at least one portion of said file with said at least one paired second electronic device, wherein said at least one paired second electronic device uploads said at least one portion of said file to said server in accordance to said directory.
10. The method of claim 9, wherein said request comprises a resource locator of said file .
11. The method of claim 9, wherein said directory comprises at least one of names of said plurality of portions, numbers of said plurality of portions, and address of said plurality of portions.
12. The method of claim 9, wherein said method further comprises:
uploading said at least one portion of said file from said first electronic device and said at least one portion of said file from said at least one paired second electronic device in accordance to said directory; and
28/34
merging, at said server, said at least one uploaded portion received from said first electronic device said at least one uploaded portion received from said at least one paired second electronic device to form said file.
13. The method of claim 12, wherein uploading said at least one portion of said file from said first electronic device in accordance to said directory further comprises:
receiving a request from said at least one sever to upload said at least one portion of said file at said first electronic device; and
uploading said at least one portion of said file from said first electronic device in accordance to said directory.
14. The method of claim 12, wherein uploading said at least one portion of said file at said at least one paired second electronic device in accordance to said directory further comprises:
receiving at least one request from said at least one sever to upload said at least one portion of said file at said at least one paired second electronic device;
uploading said at least one portion of said file from said at least one paired second electronic device in accordance to said directory.
15. The method of claim 12, wherein merging said at least one uploaded portion received from said first electronic device and said at least one uploaded portion received from said at least one paired second electronic device to form said file comprises:
receiving said at least one uploaded portion from said at least one paired second electronic device;
identifying said at least one uploaded portion of said file at said first electronic device; and
29/34
merging said at least one uploaded portion received from said first electronic device and said at least one uploaded portion received from said at least one paired second electronic device to form said file at said server.
16. A computer program product for sharing a file using a plurality of electronic devices in vicinity, the product comprising:
an integrated circuit comprising at least one processor;
at least one memory having a computer program code within said circuit, wherein said at least one memory and said computer program code with said at least one processor cause said product to perform steps as claimed in at least one of claim 1 to 8.
17. A computer program product for sharing a file using a plurality of electronic devices in vicinity, the product comprising:
an integrated circuit comprising at least one processor;
at least one memory having a computer program code within said circuit, wherein said at least one memory and said computer program code with said at least one processor cause said product to perform steps as claimed in at least one of claim 10 to 16.
18. A system for sharing a file using a plurality of paired electronic devices, the system comprising:
a server configured to:
receive a request from a first electronic device, wherein said request indicates said file to be downloaded by said first electronic device from said server,
fragment said file into a plurality of portions at said server; and
a first electronic device configured to:
receive a directory of said plurality of portions of said file from said server, and
30/34
share said directory with said at least one paired second electronic device, wherein said at least one paired second electronic device is configured to download said at least one portion of said file from said server in accordance to said directory.
19. The system of claim 19, wherein said request comprises a resource locator of said file.
20. The system of claim 19, wherein said directory comprises at least one of names of said plurality of portions, numbers of said plurality of portions, and address of said plurality of portions.
21. The system of claim 19, wherein fragment said file into a plurality of portions further comprises:
receive said resource locator associated with said file at said server, and
fragment sequentially said file into said plurality of portions based on at least one parameter at said server.
22. The system of claim 19, wherein system is further configured to:
download said at least one portion of said file from said server in accordance to said directory at said first electronic device and at said at least one second electronic device,
share said at least one downloaded portion of said file among said first electronic device and said at least one paired second electronic device using said short range communication, and
merge said at least one downloaded portion of said first electronic device and said at least one downloaded portion of said at least one paired second electronic device to form said file.
23. The system of claim 22, wherein download said at least one portion of said file in accordance to said directory at said first electronic device further comprises:
31/34
send a request to said at least one sever to download said at least one portion of said file from said first electronic device, and
download said at least one portion of said file at said first electronic device in accordance to said directory.
24. The system of claim 22, wherein download said at least one portion of said file in accordance to said directory at said at least one paired second electronic device further comprises:
send a request to said at least one sever to download said at least one portion of said file from said at least one paired second electronic device, and
download said at least one portion of said file at said at least one paired second electronic device in accordance to said directory.
25. The system of claim 22, wherein merge said at least one downloaded portion of said first electronic device and said at least one downloaded portion of said at least one paired second electronic device to form said file further comprises:
receive said at least one downloaded portion from said at least one paired second electronic device,
identify said at least one downloaded portion of said file at said first electronic device, and
merging said at least one downloaded portion of said first electronic device and said at least one downloaded portion of said at least one paired second electronic device to form said file.
26. A system for sharing a file using a plurality of paired electronic devices, the system comprising:
a first electronic device configured to:
fragment sequentially said file into a plurality of portions at said first electronic device,
32/34
share a directory of said plurality of portions of said file with a server, and
share said at least one portion of said file with said at least one paired second electronic device, wherein said at least one paired second electronic device is configured to upload said at least one portion of said file to said server in accordance to said directory.
27. The system of claim 26, wherein said request comprises a resource locator of said file .
28. The system of claim 26, wherein said directory comprises at least one of names of said plurality of portions, numbers of said plurality of portions, and address of said plurality of portions.
29. The system of claim 26, wherein said system is further configured to:
upload said at least one portion of said file from said first electronic device and said at least one portion of said file from said at least one paired second electronic device in accordance to said directory, and
merge, at said server, said at least one uploaded portion received from said first electronic device said at least one uploaded portion received from said at least one paired second electronic device to form said file.
30. The system of claim 29, wherein upload said at least one portion of said file from said first electronic device in accordance to said directory further comprises:
receive a request from said at least one sever to upload said at least one portion of said file at said first electronic device, and
upload said at least one portion of said file from said first electronic device in accordance to said directory.
33/34
31. The system of claim 29, wherein upload said at least one portion of said file at said at least one paired second electronic device in accordance to said directory further comprises:
receive at least one request from said at least one sever to upload said at least one portion of said file at said at least one paired second electronic device,
upload said at least one portion of said file from said at least one paired second electronic device in accordance to said directory.
32. The system of claim 29, wherein merge said at least one uploaded portion received from said first electronic device and said at least one uploaded portion received from said at least one paired second electronic device to form said file comprises:
receive said at least one uploaded portion from said at least one paired second electronic device,
identify said at least one uploaded portion of said file at said first electronic device, and
merge said at least one uploaded portion received from said first electronic device and said at least one uploaded portion received from said at least one paired second electronic device to form said file at said server.

Documents

Orders

Section Controller Decision Date

Application Documents

# Name Date
1 3353-DEL-2013-PROOF OF ALTERATION [15-01-2024(online)].pdf 2024-01-15
1 Form 5.pdf 2013-11-18
2 3353-DEL-2013-RELEVANT DOCUMENTS [23-08-2022(online)].pdf 2022-08-23
2 Form 3.pdf 2013-11-18
3 Drawings.pdf 2013-11-18
3 3353-DEL-2013-IntimationOfGrant18-02-2022.pdf 2022-02-18
4 Disclosure 35_SEL_13_1712_Form 2.pdf 2013-11-18
4 3353-DEL-2013-PatentCertificate18-02-2022.pdf 2022-02-18
5 3353-DEL-2013-Response to office action [06-12-2021(online)].pdf 2021-12-06
5 3353-del-2013-GPA-(29-11-2013).pdf 2013-11-29
6 3353-DEL-2013-US(14)-HearingNotice-(HearingDate-17-09-2021).pdf 2021-10-17
6 3353-del-2013-Form-1-(29-11-2013).pdf 2013-11-29
7 3353-DEL-2013-Written submissions and relevant documents [01-10-2021(online)].pdf 2021-10-01
7 3353-del-2013-Correspondence Others-(29-11-2013).pdf 2013-11-29
8 SEL_New POA_ipmetrix.pdf 2015-04-16
8 3353-DEL-2013-Correspondence to notify the Controller [02-09-2021(online)].pdf 2021-09-02
9 3353-DEL-2013-FORM-26 [02-09-2021(online)].pdf 2021-09-02
9 FORM 13-change of POA - Attroney.pdf 2015-04-16
10 3353-DEL-2013-8(i)-Substitution-Change Of Applicant - Form 6 [11-10-2019(online)].pdf 2019-10-11
10 3353-DEL-2013-FER.pdf 2018-06-08
11 3353-DEL-2013-ASSIGNMENT DOCUMENTS [11-10-2019(online)].pdf 2019-10-11
11 3353-DEL-2013-FER_SER_REPLY [29-11-2018(online)].pdf 2018-11-29
12 3353-DEL-2013-Annexure [29-11-2018(online)].pdf 2018-11-29
12 3353-DEL-2013-PA [11-10-2019(online)].pdf 2019-10-11
13 3353-DEL-2013-Annexure [29-11-2018(online)].pdf 2018-11-29
13 3353-DEL-2013-PA [11-10-2019(online)].pdf 2019-10-11
14 3353-DEL-2013-ASSIGNMENT DOCUMENTS [11-10-2019(online)].pdf 2019-10-11
14 3353-DEL-2013-FER_SER_REPLY [29-11-2018(online)].pdf 2018-11-29
15 3353-DEL-2013-8(i)-Substitution-Change Of Applicant - Form 6 [11-10-2019(online)].pdf 2019-10-11
15 3353-DEL-2013-FER.pdf 2018-06-08
16 3353-DEL-2013-FORM-26 [02-09-2021(online)].pdf 2021-09-02
16 FORM 13-change of POA - Attroney.pdf 2015-04-16
17 SEL_New POA_ipmetrix.pdf 2015-04-16
17 3353-DEL-2013-Correspondence to notify the Controller [02-09-2021(online)].pdf 2021-09-02
18 3353-DEL-2013-Written submissions and relevant documents [01-10-2021(online)].pdf 2021-10-01
18 3353-del-2013-Correspondence Others-(29-11-2013).pdf 2013-11-29
19 3353-DEL-2013-US(14)-HearingNotice-(HearingDate-17-09-2021).pdf 2021-10-17
19 3353-del-2013-Form-1-(29-11-2013).pdf 2013-11-29
20 3353-DEL-2013-Response to office action [06-12-2021(online)].pdf 2021-12-06
20 3353-del-2013-GPA-(29-11-2013).pdf 2013-11-29
21 Disclosure 35_SEL_13_1712_Form 2.pdf 2013-11-18
21 3353-DEL-2013-PatentCertificate18-02-2022.pdf 2022-02-18
22 Drawings.pdf 2013-11-18
22 3353-DEL-2013-IntimationOfGrant18-02-2022.pdf 2022-02-18
23 Form 3.pdf 2013-11-18
23 3353-DEL-2013-RELEVANT DOCUMENTS [23-08-2022(online)].pdf 2022-08-23
24 Form 5.pdf 2013-11-18
24 3353-DEL-2013-PROOF OF ALTERATION [15-01-2024(online)].pdf 2024-01-15

Search Strategy

1 search_13-04-2018.pdf
1 search_new_31-05-2018.pdf
2 search_new1_01-06-2018.pdf
3 search_13-04-2018.pdf
3 search_new_31-05-2018.pdf

ERegister / Renewals

3rd: 18 May 2022

From 14/11/2015 - To 14/11/2016

4th: 18 May 2022

From 14/11/2016 - To 14/11/2017

5th: 18 May 2022

From 14/11/2017 - To 14/11/2018

6th: 18 May 2022

From 14/11/2018 - To 14/11/2019

7th: 18 May 2022

From 14/11/2019 - To 14/11/2020

8th: 18 May 2022

From 14/11/2020 - To 14/11/2021

9th: 18 May 2022

From 14/11/2021 - To 14/11/2022

10th: 15 Sep 2022

From 14/11/2022 - To 14/11/2023

11th: 09 Nov 2023

From 14/11/2023 - To 14/11/2024

12th: 11 Nov 2024

From 14/11/2024 - To 14/11/2025

13th: 23 Oct 2025

From 14/11/2025 - To 14/11/2026