Thumbnail Image

NitroShare

Version 0.2 - Last updated 10 months, 1 week ago

A simple, cross-platform tool for sending files to other machines on a local network.

License: GNU General Public License 3

c++ qt ubuntu

Website

Description

NitroShare makes it easy to transfer files from one machine to another on the same network. Most of the time, no configuration is necessary - all of the machines on your network running NitroShare should immediately find each other and you can instantly begin sharing files.

NitroShare introduces the concept of "share boxes", which are small widgets that are placed on your desktop. Each share box represents another machine on your local network that you can instantly share files with by dropping them on it. (You can also create a share box that will ask you which machine you want to send the files to.)

NitroShare offers a number of other features, including:

  • dynamic file compress during transfer to decrease transfer time and bandwidth
  • CRC checksum generation to ensure file integrity during transfer
  • full compatibility with clients running on other operating systems
  • a helpful configuration wizard to guide you through setting up the application on your machines

The application was developed using the Qt framework and therefore runs on any platform supported by Qt, including Windows, Mac, and Linux.


Comments

9 months, 3 weeks ago

letoloke

theres ir a way to make it faster? because i see at the setting in the app says "...use too much band width" (i have it in spanish, i translates as bes as i can :P) so I will like to use as much as i can :P i have a lot of things to transfer

9 months, 3 weeks ago

letoloke

any way, its an awesome app!

9 months, 3 weeks ago

Nathan Osman

@letoloke: Thank you. Assuming you have enabled compression, there really isn't any way to speed up the transfer. I am currently making some changes to the code that performs the transfer that should speed things up.

9 months, 2 weeks ago

Ian

How is it better than the good old Giver app? Could it be built under Mac PPC? And which protocol does it use to discover neighbours / send files? Bonjour? UPnP? / SMB? FTP?

9 months, 2 weeks ago

Nathan Osman

@Ian: I haven't used Giver so I can't really compare them - however, it would appear that Giver hasn't been updated for a significant amount of time. NitroShare should compile without any issue on Mac PPC using this Git repository.

NitroShare uses a custom protocol for discovering other machines on the network. It sends out UDP broadcast packets to the interface's broadcast address which contain the machine's local IPv4 address and some other metadata. Other machines on the network listen for these packets.

For file transfers, NitroShare uses an extremely simple TCP protocol, transparently implementing CRC checksums and compression when enabled.

9 months, 2 weeks ago

Ian

Thanks for your answers! However, I have a few more: why don't you use UDP protocol, like in FTP, to boost file transfers? And is it possible to share files outside LAN, through the router? Which ports should be opened?

9 months, 2 weeks ago

Vadi

I've got two computers on a LAN network, but NitroShare can't find either of them on both of them. Firewalls are disabled on both Ubuntu 12.04's. NitroShare has errors when launching for the first time:

"Unable to find an IPv4 broadcast and netmask address for the current network interface" along with "Unable to find an IPv4 address on the current network interface".

I'm not sure why does it complain about an address when it correctly identifies the external network interface and lists the IP address in settings. If this error is before it does this, then leaving it on or restarting doesn't make it detect the other computer (but it doesn't show errors anymore).

What can I do to fix this?

9 months, 2 weeks ago

Nathan Osman

@Ian: FTP doesn't use UDP sockets for file transfers. TCP offers far more reliability, ensuring packets are received in the correct order and missing packets are retransmitted. Using UDP would result in either extremely unreliable file transfers or a reimplementation of the TCP protocol.

It is currently not possible to share files outside of a local network. There are plans underway for an online service that will allow you to share with machines anywhere on the Internet. However, these features are a long way off and are currently in the planning stages.

Leave a Comment

Please login to comment.