create a Gnutella crawler that discovers all currently present peers in the system.

終了済み 投稿 7年前 着払い
終了済み 着払い

2. Description

Using Winsock and Visual Studio .NET 2013, your goal is to create a Gnutella crawler that discovers all currently present peers in the system. Your program will first contact a seed web- server to acquire a set of initial ultrapeers, traverse the entire Gnutella network in the BFS order, and then record the identities of found ultrapeers and their children (i.e., leaf nodes) in some text file. Using this information, you will then analyze the collected data to answer several questions about geographic and domain diversity of peers as well as popularity of individual user agents (i.e., client software).

Requirements for the implementation:

1. Must be able to connect to a GWebCache (specified at the command prompt using a URL

string host[:port][/path] where parts in [] are optional) and download a list of active seed ultrapeers. Make sure to check that the status code of the response is 200 OK and the protocol type in the first line of the response is indeed HTTP.

2. Must be able to use BFS to crawl the entire Gnutella network of ultrapeers starting from the seed list (each ultrapeer must be contacted no more than once, leaf nodes must not be contacted at all). Make sure to check that the response begins with the correct string compliant with the protocol (i.e., GNUTELLA/version statusCode statusText).

3. During the crawl, the program must record all found ultrapeers and their leaves into a set and then write it on disk at the end of the crawl (this set needs to contain unique elements only).

4. The final version must support operation with N threads and crawls up to M contacted ul- trapeers, where both N and M are specified by the user in the command prompt (e.g., [url removed, login to view] [url removed, login to view] 200 300000). For sim- plicity, count each ultrapeer pulled from the BFS queue as “contacted.”

アルゴリズム C#プログラミング C++プログラミング 電気工学 エンジニアリング

プロジェクトID: #13123022

プロジェクトについて

3個の提案 リモートプロジェクト アクティブ 7年前

3人のフリーランサーが、平均$45 で、この仕事に入札しています。

kotharigaurav90

We will Provide Services Until You get 100% satisfied. We are not just looking for money OR one project, as we firmly believe in long term business relationships. We highly value our relationship with our clients, W もっと

$45 USD 1日以内
(レビュー1件)
3.2
JNickSoftware

I have extensive experience writing applications using the Gnutella protocol. I am a long time .NET developer and I have recently decided to do only freelance and consultant work. I am very experienced with SQL Server, もっと

$1388 USD 7日以内
(0件のレビュー)
0.0
Chromsytech

Hi Sir, I have 11+ years of exp in ASP.net, MVC, Angular JS, jQuery, WPF, WCF, WinForm. Till now I had work as software engineer in two different company (MNC) but for last two month I am doing full time freelancin もっと

$15 USD 5日以内
(0件のレビュー)
0.0
graphichaks24

A proposal has not yet been provided

$45 USD 1日以内
(0件のレビュー)
0.0