View Single Post
Old 18.10.2010, 13:26
drbits's Avatar
drbits drbits is offline
JD English Support (inactive)
Join Date: Sep 2009
Location: Physically in Los Angeles, CA, USA
Posts: 4,437

There is no difference in terms of firewalls and antiviruses between Linux and Microsoft. All computers need a firewall to detect attacks and stop them. The best firewalls do not run on the computer they are protecting.

Viruses in Linux are like viruses in early MS-DOS. People ignored them, because they weren't common. However, there is no added security in the Linux kernel compared to the Windows kernel. Make sure you obtain a bootable antivirus disk (usually ISO Linux) and scan your system.

You could try reverting to Java 6u17 and see if that helps you.


To really find the cause of your crashes, somebody will probably have to use your environment with the JDK debugging tools.


What do you mean "My firewall is iptables"? Do you mean that you are relying on a blacklist? That is not comparable to a firewall, which uses header information to determine whether sequences of packets are reasonable.

If nothing else, you should be using an intrusion detection system (a program that subscribes to OS events to and warns when event sequences occur that are not compatible with good programming practices (or even common practices).

Summary: If you have no antivirus, you probably have a virus (that is the way the Linux world works). If there is no antivirus and no virus, and JD keeps losing connections with major servers, then you are probably trying to download too many streams at the same time (See General Discussion -> Self Help Index -> Optimizing the number of connections). This is OS independent.

You can also try changing the timeout values, packet size, and total window buffer size in inetd. The proper packet size depends on your type of internet connection. The Window is defined as the number of packets that can be sent from the server to your computer (bandwidth) in the time it takes a message to make a round trip from your computer to the server and back (latency). Even though it is Windows-Centric, you should look at the documentation about Optimizing your connection in the Self Help Index.

For example, if you are using a non-PPP connection, your total packet size is 1500 bytes. Because of overhead, the data area of your packet is 1470 bytes. If you have PPP, then your packet size is 1472 and your data per packet is 1450 bytes.

The maximum internet transmission time (assuming satellite communication between continents) is under 300 ms. This is the worst latency. If you know your upload and download speeds, you can estimate the number of packets per second (for example, if you run use, it will tell you the number of bits per second of net data in both directions. Multiple that by .3 (latency time), by 8/9 to account for overhead and by 128 to convert to KBytes. That is the amount of data you have to buffer to keep a clean internet connection. You round that up to a multiple of the number of data bytes in your packets.


How large is your system's memory? Check PS to see the size of JD. Make sure it is not being paged or swapped to disk. The buffers to take care of latency are associated with inetd, so they are not swapped except in extreme circumstances. However, jD also relies on a 50KiB buffer per connection inside the program. If that is swapped it could cause trouble.

That is all I can think of at the moment (3:30 AM). Let us know how things go.
Reply With Quote