You are currently running version 1.0.0.6 release of bunzilla
Version 1.0.0.7 released 5/20/9
- enhancements
- Added "clear" button to search result window to allow the user to clear results
they have already reviewed
- Modified system to perform 15 day partial file cleanup during maintenace cycle rather then
just at startup so those who leave the program running 24 x 7 have files cleaned up. Made this
a user controllable option via the storage configuration page
- Bugs
- Modified 15 day partial file cleanup to remove the file reference if no segments exist rather then
just removing the segment.
- Modified code to properly reset default values when the corresponding key is not found in the registry
Version 1.0.0.6 released 4/20/9
- enhancements
- modified search screen so pressing the enter key will start the search so user does
not have to click on the search button
- Bugs
- Some programs such as eraser which cleans directory entries and cluster tips on
the file system during a free space wipe caused some shared files to stop being shared.
The program has been modified to allow continued sharing of a file if it detects another
program has a prolonged lock on the file. A periodic rescan of indexed files has
been added to assist in reindexing files that were modified by another program, but will
now be left on the sharable list.
Version 1.0.0.5 released 3/20/9
- enhancements
- Added autodownload feature to search results. This allows you to automatically download
all matching results, which is useful as a 'scout' feature where you initiate a search for
a hard to find files. You can leave the program running in the background and whenever a
match is found, it will initiate a download automatically.
- Updated status screen to show performance graphs
- Added status information to task bar
- Added General configuration tab
- Setting to allow clearing of download upon completion to be set perminently
- Added a checkbox to each search page which allows the user to control the automatic selection of
the progress tab when the user clicks the download button. This allows the user to stay on the
search result page and quickly pick additional items to download. User can define the
default state of this check box thru the new general configuration settings.
- other changes
- Updated help files and screen shots
Version 1.0.0.4 released 2/20/9
- enhancements
- Modified clicking on notify in task bar to automatically restore normal size if screen was minimized
- Tuned performance metrics
- Enhanced startup to remove partial downloads that are more then 15 days old
- Further tuned timing of how long known remote document references are retained. Known remote docs represent files
recently seen. The source may have gone off-line since it was last seen. Shorter time means less likely the source
has become unavailable.
- Refined critera for how long to keep known peers that have been unreachable. Eliminating infrequent users decreases time spent
trying to connect to users who are no longer available.
- Modified upper limit to 500 on known peer database to keep fewer known peers since there aren't a large number of
persistent users
- Enhanced connection management to wait a short while (2min) and then re-attempt connection to a failed peer. This should
improve reconnect time to peers that are on poor quality networks and have lots of lost packets.
- Bugs
- Fixed drawing of partially available files, set to white rather then background which was leaving whatever was
on the screen show in the free space
Version 1.0.0.3 released 1/20/2009
- enhancements
- Modified download progress bars, added mouse-over showing of percent downloaded
- Modified result tabs to display count on tab
- improved drawing of border on progress bar
- bug fixes
- fixed bug: monitor screen not updated after flushing expired known remote docs. No
user or performance issue, just incorrect display on screen
- removed tooltip on progress bar
Version 1.0.0.2 released 12/27/2008
- bug fixes
- fixed bug: remote connection close/fail while closing connection could result
in double reporting of closing leading to less then 0 connnections open. No
functional problem, but status screen reports some huge number of open
connections
- Fixed bug: delete from known remote documents when path returns rejected was
failing to delete during download. Deletes occcur when the existing path is no
longer valid because someone along the path joined or left the network or the
hosting node removed the file. This could result in a prolonged hang in download
that is unnecessary if other paths or sources could be located. Note, this only
would effect someone who was along a single node path (eg. none of the nodes upstream
from the failed node have more then 1 connection and thus can not initiate a new path
search) otherwise a timeout would occur upstream and a new path search initiated.
- Tuned performance metrics
- adjusted computation of busy level, scaled up level of activity required
- modified task manager to clean up tasks left abandon by remote nodes disconnecting
more frequently
- modified connection manager to slowdown attempting connection once all known peers
have been tried
- modify cache metrics to retain known remote documents for shorter periods of
time to reduce period where a file might be no longer be available but is reported
as such by a caching node
Initial Release: version 1.0.0.1 released 12/17/2008
- Searching
- Filter results by file type
- Filter results by file size
- Display results with fragment and number of source indicators
- Search local cache
- Search cache of known remote documents
- Manage remote cache lifecycle by age
- Clear remote cache entry on report of not found
- Search peers
- Propogate request to additonal peers
- Downloading
- Download progress status bar
- Split requests across multiple sources
- Auto seek additional sources
- pass content thru peer
- refer client to other peer
- Assisted connect to referred peer
- Share partial files with other peers
- Manage paritalfile lifecycle by age
- Join ajacent or overlapping fragments
- monitor cache for external change
- validate partial fragments on restart
- maintain fragment with in-progress upload until complete
- Cancel download
- Move download to library
- Validate integrety
- manage duplicate names that are different content
- Clear completed download
- Uploading
- monitor library for external change
- Networking
- encrypted data and key exchange
- Dynamic packet sizing
- multi-threaded TCP listener & TCP connection management
- multi-threaded UDP listener & UDP connection management
- packet resequencing
- lost packet rerequest
- connection keepalive and dead connection detection
- UDP nat traversal
- UDP listen port keepalive technique
- UDP connection keepalive technique
- Assistent UDP referral for nat router traversal
- UPNP router configuration
- multiple NIC support
- bandwidth throttling
- Clean shutdown notification
- Connection management
- Connection initiation
- Dead connection cleanup
- Inactive connection cleanup
- Excessive connection pearing
- known peer management
- manage peer database lifecycle
- Track connectabability of peers
- Track peer value
- Disgard outdated peer info
- exchange peer info at connect
- exchange peer info on request
- Monitoring
- internal performance monitor and activity prioritization
- status info for user
- configuration
- user reqested peer connection
- dynamic reconfiguration of listening port
- dynamic reconfiguration of network throttling
- dynamic reconfiguration of sharing directory
- dynamic reconfiguration of temp storage allocation
- Future expansion
- UI communicate with app via message system so app can be split into
client and server with server running as service
- Help files
Background
Bunzilla was created as a planned learning activity in the .net framework, object oriented programming,
concurrency, multithreading, c# programming, and experimenting in new p2p networking concepts. It is
not a commerical product. I hope you enjoy using it and find it a useful tool. The product will be enhanced
as time permits. If it appears this tool is getting lots of interest, I will be more committed to updating
it. I'm not much of a file sharer, but it seemed like an interesting and challenging project to spend some
free time on.