首页2免费电影 > 编程 > Java > 正文

如何和Whois++网连接查询

2019-09-06 23:33:15
字体:
源泉:转载
供稿:网友

                    在Whois++结构中,由客户认真开展网状图漫游,因为每个电脑主机报价仅通报客户与它相邻的电脑主机报价是什么,以此共商倒不是复杂。客户张开到一台加速器的连接。殡葬查询请求,接收酬答,关闭连接。客户在接收到酬答后开展条分缕析,后来决定下一期联系哪一台电脑主机报价。这样使得客户必须有一种算法使得客户查询的电脑主机报价完了重复的,并且能够尽快找到要找的电脑主机报价。

每个Whois++客户应该被布局为自动和一期一定的Whois++加速器联系。以此默认的加速器可能性有这样那样的要求,不过最基本的要求就是最好是本地加速器。

在接收到加速器的酬答后,如果命中数大于0,则把结果赶回用户。如果客户被要求和一期或多个加速器开展上书,客户要能够知道该署加速器指针是什么。

查询的抓挠有两种一种是扩充查询,一种是动用加速器目录。如果命中数为0。或用户指望壮大查询,enovia电子仓客户机应该开展壮大查询,它只需要向加速器殡葬下面两种讯息便可:'polled-by'或'polled-for',客户白璧无瑕向新点名的电脑主机报价开展扩充查询。

客户必须保存查询过的加速器,不要查询过的加速器再查询一次。

3.1.1. 优化网络

如果A指望经常动用B的WHOIS++加速器,A会指望通过创建一期本地索引加速器将B的加速器成为本地并用的。当A的客户通过扩充查询指望查询B时,条分缕析的速度就会快得多。

Whois++网络已经不是一期树了。B和F之间已经成立了直接通道旅游景点。这样查询的速度就快得多了,不用在查询完B后查询A,再查询C,最后再查询F。因为B和F已经成立了归并。据此,当客户只需要查询其中之一的数据透视表时需要指时要的是哪一期,不然会赶回B和F结点的内容。在客户方还白璧无瑕动用黑名单抓挠将查询中的一些加速器屏蔽掉,因为访问该署加速器幸福生活麻辣烫代价太大或另一期孙俪邓超离婚原因不指望让用户访问该署加速器。

3.1.2. 客户动用的算法

Query := 需要查询的数据透视表;
QueriedServers := {};
AnswerList := {};
OriginalServers := { 客户所知的加速器 };
while OriginalServers非空 do:
 ServerList = OriginalServers;
 while ServerList非空 do:
   Server := ServerList[1];
   if Server未包括在QueriedServers中 then do:
    send Query to Server;
    Answer := 从Server赶回的响应;
    将ServersToAsk附加到ServerList;
    将Server从ServerList删去;
    将Answers附加到AnswerList;
   end;
 done;
 if 应该扩充查询 then do:
   ServerList := OriginalServers;
   OriginalServers := {};
   while ServerList非空 do:
     Server := ServerList[1];
     殡葬Polled-For-Query到Server;
     Answer := 从Server赶回的响应;
     将Answer附加到OriginalServers;
     将Server从ServerList删去;
   end;
 done;
done;
显示AnswerList;

3.2. 加速器目录

第二个搜索正确加速器的抓挠是动用一期单独的劳动,我们称之为加速器目录。加速器目录计算机病毒实际上是是一期特殊的Whois++加速器。以此加速器内包括了从头至尾加速器上信息。用户在查询前先查询些加速器,由此加速器指出应该查询哪一期加速器,未来的广东技术师范学院可能性允许客户选择加速器,而不是由加速器。

3.2.3. 例子

下面是一期客户与加速器联系的例子。

> % 220-This is services.bunyip.com running Bunyip-Whois++: DIGGER 1.0.5
> % 220 Ready to go!
< template=serverhandle and bunyip
> % 200 Search is executing
> # FULL SERVERHANDLE BUNYIPCOM01 BUNYIPCOM01
> SERVER-HANDLE: BUNYIPCOM01
> HOST-NAME: services.bunyip.com
> HOST-PORT: 63
> ADMIN-NAME: Patrik Faltstrom
> ADMIN-EMAIL: paf@bunyip.com
> ORGANIZATION-NAME: Bunyip Information Systems Inc.
> DESCRIPTION: USER information
> DESCRIPTION: Directory of Servers
> DESCRIPTION: Toplevel Index server in the world
> MENU-ITEM: World (Bunyip Information Systems inc)
> CITY: Montreal
> COUNTRY: Canada
> # END
>
> # FULL SERVERHANDLE BUNYIPCOM01 BUNYIPCOM02
> SERVER-HANDLE: BUNYIPCOM02
> HOST-NAME: services.bunyip.com
> HOST-PORT: 7778
> ADMIN-NAME: Patrik Faltstrom
> ADMIN-EMAIL: paf@bunyip.com
> ORGANIZATION-NAME: Bunyip Information Systems Inc.
> DESCRIPTION: USER information
> MENU-ITEM: Bunyip Information Systems
> CITY: Montreal
> COUNTRY: Canada
> # END
>
> % 226 Transaction complete
> % 203 Bye, bye

4. 缓冲

客户白璧无瑕缓冲它从加速器取得的信息。客户自行选择缓冲多长时间更新。

4.1. 缓冲Whois++加速器电脑主机报价名

下面是一期缓冲算法:

response := 从加速器A获得的servers-to-ask响应
IP-address := 搜索DNS中response.hostname的IP我的ip地址
连接IP我的ip地址上的端口
if 衔接失败 {
 衔接加速器目录加速器
 查询电脑主机报价
 response := 由加速器目录加速器获得的响应
 IP-address := 搜索DNS中response.hostname的IP我的ip地址
 connect to ip-address at port response.portnumber
 if 衔接失败 {
   以错误讯息赶回
 }
}
查询以此新加速器

5. 无恙问题

客户应该维护一期黑名单,因为在网络上可能性有假的Whois++加速器,一旦发觉这样的加速器,应该把它入伙黑名单,以后不再查询。因为在扩充查询时比较费时。应该允许用户在操作开展中退出。
通告评说 公有条评说
户名: 密码:
验证码: 匿名通告

图片精选

Baidu