Code Newbie
News     Forums     Search     Members     Sign Up    

My Code Newbie
Username

Password

Articles/Snippets
ASP Classic
ASP.NET
C
C#
C++
HTML / CSS
Java
Javascript
Linux / BSD
Perl
PHP
Python
Ruby
SQL
VB 6
VB.NET

C.N. Friends
  Planet Rome

Link to Us!
Code Newbie
  Code Newbie
    forums
Old 03-01-2004, 06:04 PM   #1 (permalink)
iNaNimAtE
Registered User
 
iNaNimAtE's Avatar
 
Join Date: Feb 2004
Posts: 6
iNaNimAtE is on a distinguished road
A New Peer-to-Peer Network

Considering this is a forum all about programming, I thought it appropriate for this post.

For years now, I have seen peer-to-peer networks come and go. Each of them has their good qualities, but in each lies a tragic flaw (individually unique). There recently has also been some problems with the RIAA and MPAA coming in and busting up people for downloading (mainly the RIAA). While I could preach for hours about this issue, I am going to state clearly the topic of this post: I am interested in making a new peer-to-peer network (and, obviously, client).

Although it seems like just another failing attempt, I hope to include (enhanced) the great successes from each of the clients today, along with some new ideas, into a "mean-lean-downloading-machine."

This new network utilizes hash-verified downloading; no fake files. I am to the point of thinking of taking out the "search feature," and instead, all searching will take place on a website, and then the website will send the hash to the client to begin the download. Similar to the "ed2k://" link you can find on www.sharereactor.com that utilizes eMule. Hash-verified downloading also accomplishes another task; extremely fast downloading speeds. If there is one copy of a a file floating around, when someone requests it, each person who has it will add their bandwidth to the total (multiple thread downloading) to create blazing speeds.

At this point, it is beginning to remind me of eMule. However, the queuing problem that eMule has will not be present in this application. Instead of limiting uploading by concurrent connections, uploading will be limited by your upload speed. This will be determined by a speed test which will be executed upon installation.

Also, the entire network is, of course, decentralized. This seems to contradict a previous statement I made about "...all searching will take place on a website...," but there are ways around this. I have a basic idea on how the decentralization will occur, but it is still just an idea.

*The reason for this post: Does anyone want to help out?*
This is obviously not a one-person job, so post your comments.
iNaNimAtE is offline   Reply With Quote
Old 03-01-2004, 10:26 PM   #2 (permalink)
redhead
Newbie
 
redhead's Avatar
 
Join Date: Jun 2002
Location: Denmark
Posts: 1,711
redhead is on a distinguished road
Re: A New Peer-to-Peer Network

Quote:
Originally posted by iNaNimAtE

This new network utilizes hash-verified downloading; no fake files. I am to the point of thinking of taking out the "search feature," and instead, all searching will take place on a website, and then the website will send the hash to the client to begin the download.
Why not use md5sum instead of hash?

Quote:

If there is one copy of a file floating around, when someone requests it, each person who has it will add their bandwidth to the total (multiple thread downloading) to create blazing speeds.

At this point, it is beginning to remind me of eMule. However, the queuing problem that eMule has will not be present in this application. Instead of limiting uploading by concurrent connections, uploading will be limited by your upload speed. This will be determined by a speed test which will be executed upon installation.
Hmm... why not make a test for "possible upload speed" uppon installation, then lateron the user can specify "I want to use 50% of possible upload speed" This way you wont have users complaining about extreem latancy, due to some one using their bandwith.

Quote:

Also, the entire network is, of course, decentralized. This seems to contradict a previous statement I made about "...all searching will take place on a website...," but there are ways around this. I have a basic idea on how the decentralization will occur, but it is still just an idea.
Are you thinking of the client sending info to some server about md5sum of available files, with info on where these files are, which then on this server produces the download.

If you want, I could use some time on it, altho I would like to know what type of license a thing like this would be available under. Personaly I wouldn't put any time into things not worthy a GPL like license.
__________________
Don't worry Ma'am, We're university students, We know what We're doing.
-----
If you pull the pin, Mr.Grenade would no longer be your friend.
-----
01000111 01101111 00100000 01000011 00100000 00100001
redhead is offline   Reply With Quote
Old 03-01-2004, 11:06 PM   #3 (permalink)
joe_bruin
LOAD "*",8,1
 
Join Date: Feb 2003
Location: la.ca.us
Posts: 254
joe_bruin is on a distinguished road
Re: Re: A New Peer-to-Peer Network

Quote:
Originally posted by redhead
Why not use md5sum instead of hash?
md5 is a hash.
joe_bruin is offline   Reply With Quote
Old 03-02-2004, 11:03 AM   #4 (permalink)
rdove
Masked Moderator
 
rdove's Avatar
 
Join Date: May 2002
Location: Indianapolis, IN
Posts: 260
rdove is on a distinguished road
You guys are getting me high talking about all this hash
__________________
~Ryan

rdove is offline   Reply With Quote
Old 03-03-2004, 02:41 AM   #5 (permalink)
safecracker
Registered User
 
safecracker's Avatar
 
Join Date: Feb 2004
Posts: 20
safecracker is on a distinguished road
are you the same guy as from thebroken....if so you already know my thoughts.
safecracker is offline   Reply With Quote
Old 03-03-2004, 06:00 AM   #6 (permalink)
Belisarius
Java fanboy
 
Belisarius's Avatar
 
Join Date: Aug 2003
Posts: 1,161
Belisarius is on a distinguished road
Re: Re: Re: A New Peer-to-Peer Network

I think he's confusing hash with crypt().

Quote:
Originally posted by joe_bruin
md5 is a hash.
__________________
GitS
Belisarius is offline   Reply With Quote
Old 03-03-2004, 05:58 PM   #7 (permalink)
iNaNimAtE
Registered User
 
iNaNimAtE's Avatar
 
Join Date: Feb 2004
Posts: 6
iNaNimAtE is on a distinguished road
Yes, I am the same person as thebroken. ( I sure hope no one else is using my handle). I think MD5 would be fine as a hash.
How the hashing works:
Method #1: Each person has a list of available hashes on their system. You use a main website to search and download files. This website sends hashes to the program. The program goes in search of people's hash lists to find the file.
Method #2: Same as #1, but there are supernodes who keep a master hash list of the shared files for 100 users or so.

Redhead: The bandwidth idea was good. I like it. This program would probably be under a GPL license. It would obviously be freeware, and no advertising.
iNaNimAtE is offline   Reply With Quote
Reply

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
China's New Generation Of Ipv9 Network Technology Ready redhead Code Newbie News 0 07-05-2004 05:13 AM
network time synchronisation in java bossebo Java 1 06-21-2004 05:17 PM
Inheriting a badly setup network. DesertWolf Lounge 3 04-18-2004 09:18 PM
What makes a network application? sde Program Design and Methods 3 08-03-2003 05:19 PM
School District Fails Network Security sde Code Newbie News 0 07-03-2003 03:12 PM


All times are GMT -8. The time now is 04:08 AM.


Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.0.0 RC8





Copyright © 2000-2008, Milano Interactive
Web Hosting provided by Portal 360 Web Hosting