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 webserver
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).
To Search:
File list (Check if you may need any files):
PeertoPeer
..........\CPS570-asgn01-2nd
..........\CPS570-asgn01-2nd.sdf
..........\CPS570-asgn01-2nd.sln
..........\CPS570-asgn01-2nd.v12.suo
..........\.................\All_Peers_Crawled.txt
..........\.................\CPS570-asgn01-2nd.vcxproj
..........\.................\CPS570-asgn01-2nd.vcxproj.filters
..........\.................\CPS570-asgn01-headers.h
..........\.................\Debug
..........\.................\.....\CPS570-a.B52406FA.tlog
..........\.................\.....\......................\CL.read.1.tlog
..........\.................\.....\......................\CL.write.1.tlog
..........\.................\.....\......................\CPS570-asgn01-2nd.lastbuildstate
..........\.................\.....\......................\link.read.1.tlog
..........\.................\.....\......................\link.write.1.tlog
..........\.................\.....\CPS570-asgn01-2nd.log
..........\.................\.....\vc120.idb
..........\.................\.....\vc120.pdb
..........\.................\.....\zhang-as2-Crawl.obj
..........\.................\.....\zhang-as2-HttpSeeds.obj
..........\.................\.....\zhang-as2-main.obj
..........\.................\.....\zhang-as2-OnePeer.obj
..........\.................\.....\zhang-DNSlookup.obj
..........\.................\Release
..........\.................\.......\CPS570-a.B52406FA.tlog
..........\.................\.......\......................\CL.read.1.tlog
..........\.................\.......\......................\CL.write.1.tlog
..........\.................\.......\......................\CPS570-asgn01-2nd.lastbuildstate
..........\.................\.......\......................\link.read.1.tlog
..........\.................\.......\......................\link.write.1.tlog
..........\.................\.......\......................\unsuccessfulbuild
..........\.................\.......\CPS570-asgn01-2nd.log
..........\.................\.......\vc120.pdb
..........\.................\.......\zhang-as2-Crawl.obj
..........\.................\.......\zhang-as2-HttpSeeds.obj
..........\.................\.......\zhang-as2-main.obj
..........\.................\.......\zhang-as2-OnePeer.obj
..........\.................\.......\zhang-DNSlookup.obj
..........\.................\zhang-as2-Crawl.cpp
..........\.................\zhang-as2-HttpSeeds.cpp
..........\.................\zhang-as2-main.cpp
..........\.................\zhang-as2-OnePeer.cpp
..........\.................\zhang-DNSlookup.cpp
..........\Debug
..........\.....\CPS570-asgn01-2nd.exe
..........\.....\CPS570-asgn01-2nd.ilk
..........\.....\CPS570-asgn01-2nd.pdb
..........\Release