摘要
- WHOIS++ 服务器可以返回记录,也可以返回
SERVER-TO-ASK;是否把引用变成下一次连接,由客户端决定。 - 服务器能够同时进入多套层级,目录网因而是可能有环的图;RFC 1914 把去环所需的访问记忆全部放在客户端。
- 扩大搜索能提高找到记录的可能,也可能让资源与收费指数增长;空结果的证据范围取决于客户端走了多远、排除了什么、为何停止。
防环不在网里,在访问清单里
RFC 1914 描述的单次交互很短:客户端连接一台服务器,发出查询,接收回答,然后断开。回答可能是记录,也可能是指向其他服务器的引用。网内没有一个持续会话替客户端记住全程。
这套设计允许一台服务器被多套层级索引,也允许机构之间建立捷径。图上的边不必形成一棵树,某个引用可能把查询带回已经见过的节点。服务器只知道自己给出了什么;它无法从一次独立连接中知道客户端曾经问过谁。
因此,RFC 把全部环路发现与消除交给客户端。示例算法把 QueriedServers、待访问列表、起始服务器和答案列表分开保存。每次发送前,客户端都要检查目标是否已在访问集合中。真正阻止循环的不是拓扑承诺,而是一份本地、跨连接的记忆。
若最终只保留答案,防环过程就消失了。审计者无法判断某分支是已经走完、被认作重复、因策略屏蔽、连接失败,还是根本未被发现。一次负面搜索要有说服力,访问集合与答案集合必须同时存在。
“下一台去问”还不是答案
SERVER-TO-ASK 只说明索引服务器认为另一个端点可能相关。它不能保证对方在线、便宜、可信,也不能保证那里一定存在匹配记录。引用属于前向知识;底层服务器真正返回记录之后,结果证据才出现。
这使控制面分成三层。底层 WHOIS++ 服务维护自己的数据。索引服务器从摘要中选择可能的下一站。客户端决定是否遵循选择,并把不同来源的回答合并给用户。任何一层都不能替整条链路宣称“目录已经查全”。
起点同样由客户端配置。RFC 建议尽量选择本地服务器,以缩短路径或降低代价。但“本地”不等于数据范围只在本地。一个位于美国的索引可以因为轮询关系包含瑞典记录。若用户只要美国对象,国家条件必须写进查询。
空结果可以触发一张更大的图
第一次没有命中时,客户端可以询问 polled-by 与 polled-for,发现谁在索引当前服务器、当前服务器又索引了谁,再把原查询发给新节点。搜索不仅查数据,也逐步探测索引关系。
扩大范围并非无成本。RFC 1914 明确警告,盲目扩展可能让资源开销指数增长;它还写到目录网的一些部分已经对回答收费。多走一条边可能增加召回,也可能增加等待、字节与账单。
因此,文档不推荐不受限制的自动扩展。客户端应当能切断某些服务器,例如价格过高的端点;用户也应能终止耗时过长的交易。停止按钮不是界面装饰,而是对搜索深度、经济成本和证据边界的最终决定。
服务器目录仍然需要一个预设地址
另一种导航方法是 Directory of Servers。它是一台特殊 WHOIS++ 服务器,提供服务器 handle、当前主机名、端口与描述。客户端可以用它找出某类数据由哪些服务提供,再让用户选择更合适的起点。
可这套发现服务本身的主机名和端口必须预先配置。它没有消除引导问题,只是把一部分引导压缩到一个已知入口。1996 年的文本也没有要求客户端自动作出选择,而是建议把导航记录呈现给人。
handle 还用于修复过期引用。索引返回的主机名或 IP 可能来自数周前的轮询。连接失败后,客户端可用稳定 handle 查询最后已知主机名。这个办法证明“记录中的联系点已经更新”,却仍不能证明新联系点此刻可达,更不能证明底层数据没有变化。
Centroid 只表示某个词出现过
RFC 1913 给出了索引引用的基础。服务器可以生成 centroid:列出模板、字段,以及每个字段中至少出现过一次的去重词表。索引无需复制全部记录,就能判断哪台底层服务器可能值得查询。
压缩带来边界。centroid 里的词没有指出它属于哪条记录,也不能证明两个词同时出现在同一条记录,不能证明记录仍存在,更不能证明字段内容真实。它最多授权下一步查询,而不是授权最终结论。
所以,证据链要保存 centroid 版本、轮询时间、产生引用的索引、引用里的 handle 与端点、实际连接,以及底层返回的记录。若从词表直接跳到事实,分布式索引的每个不确定层都会被抹掉。
黑名单只表达拒绝
RFC 1914 提醒,网上可能出现假的 WHOIS++ 服务器,客户端应支持黑名单。这是一项本地拒绝权,却不是一套完整认证。没有被列入黑名单的服务,可能可信,也可能只是尚未被认识。
发现路径与信任路径不能合并。索引说明“去哪里问”,服务器目录说明“最后知道它在哪里”,DNS 给出当时的地址,网络决定能否连接,远端服务再提供其自身身份与数据。客户端必须说明自己在哪一层接受了什么证据。
CIP 把负担解释为控制权
RFC 2651 后来把索引思想推广为 Common Indexing Protocol。它承认,从客户端看,困难工作似乎都被推到自己肩上;但它同时指出,客户端因此掌握结果规模、搜索速度与深度。为了伸缩性,架构仍拒绝单一根节点,并承认入口会改变可找到的结果。
RFC 2968 又记录 TISDAG 多 DAG 服务的网状设想。它是 Informational,不是全球部署证明。它与 CIP 共同表明:不建立中央数据库,并不意味着无需协调。索引对象、查询映射、安全关系和引用语义都需要新的协议与约定。
RFC 1914 目前是 Historic,WNILS 工作组也已结束。这些是当下可验证的文档状态,不是精确停用日或使用率。能够确证的历史更窄:早在 1996 年,规范就把“分布式搜索的完整性由谁承担”写进了客户端算法。
“没有找到”需要完整行程
可靠的负面结果应记录原查询、字段与地域约束、起始服务器、每个引用、索引或 centroid 版本、handle、DNS 回答、缓存年龄、连接失败、重复节点、黑名单命中、耗时、请求数、字节、费用以及停止者。
缺少这些收据,“空”可能指本地数据库没有记录、摘要没有词、引用已过期、端点不可达、昂贵分支被排除、环路节点不再重访,或用户提前退出。RFC 1914 的无根目录并没有消灭完整性的所有者;它把所有权移到了真正走路的客户端。
来源
- RFC Editor 的 RFC 1914 信息页
- RFC 1914——How to Interact with a Whois++ Mesh
- RFC Editor 的 RFC 1913 信息页
- RFC 1913——Architecture of the Whois++ Index Service
- RFC Editor 的 RFC 1835 信息页
- RFC 1835——Architecture of the WHOIS++ service
- RFC Editor 的 RFC 2651 信息页
- RFC 2651——The Architecture of the Common Indexing Protocol
- RFC Editor 的 RFC 2968 信息页
- RFC 2968——Mesh of Multiple DAG servers: Results from TISDAG
- IETF Datatracker——已结束的 WNILS 工作组文档
会员简报
档案背景详情
使用相应会员等级登录,即可解锁完整简报与来源注释。
仅限 Strategic Circle
Strategic Circle
所有读者均可浏览。加入并登录后可解锁档案简报。
加入 Strategic Circle仅限 Leadership Alliance
Leadership Alliance
符合条件的 IP 资产所有者和管理层可登录查看 Leadership Alliance 简报。
加入 Leadership Alliance
