CN100418089C - 加速本地高速缓存中资源记录到期的方法和装置 - Google Patents

加速本地高速缓存中资源记录到期的方法和装置 Download PDF

Info

Publication number
CN100418089C
CN100418089C CNB2004800193742A CN200480019374A CN100418089C CN 100418089 C CN100418089 C CN 100418089C CN B2004800193742 A CNB2004800193742 A CN B2004800193742A CN 200480019374 A CN200480019374 A CN 200480019374A CN 100418089 C CN100418089 C CN 100418089C
Authority
CN
China
Prior art keywords
record
response
inquiry
resource record
invalid
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
CNB2004800193742A
Other languages
English (en)
Other versions
CN1820268A (zh
Inventor
S·D·切舍尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Computer Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Computer Inc filed Critical Apple Computer Inc
Publication of CN1820268A publication Critical patent/CN1820268A/zh
Application granted granted Critical
Publication of CN100418089C publication Critical patent/CN100418089C/zh
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明的一个实施例提供了一种便于对高速缓存中的资源记录进行再确认或验证的***。所述***开始于在客户机处检索资源记录,并尝试使用所述资源记录中的数据来建立通信。在通信不成功的情况下,所述***通过发出可疑资源记录的一个或多个查询进行响应。然后所述***等待对该查询的响应。如果在一个预定时间里没有收到对该查询的响应,那么所述***就无效所述资源记录。来自该设备的响应是一个组播响应,从而在无需查询该设备的情况下允许其他客户机更新所述资源记录的相应副本,节约了网络带宽。

Description

加速本地高速缓存中资源记录到期的方法和装置
背景
技术领域
本发明涉及计算机网络。更具体地,本发明是涉及加速本地高速缓存中的资源记录到期的方法和装置。
背景技术
宽带技术和网络设施的***性增长,以及价格的持续下降,使得家庭和小型企业中计算机网络的数量不断增加。与这种小型办公室/家庭办公室网络革命随之而来的是配置和管理这些网络的艰巨任务。即插即用网络协议,例如苹果计算机公司(Apple Computer,Inc.)的集结(Rendezvous)技术已经被开发出来,以简化管理任务。在集结技术中,诸如打印机、扫描仪和网络附加存储器之类的设备会自动配置自身,并且在连接到网络时就通告它们的服务。网络上的计算机***在接收到通告时就将这些设备的资源记录增加到它们的本地高速缓存,从而保持一个网络上可用服务的列表。
问题也随保持本地高速缓存的好处而来。网络上的计算机***必须不断地更新它们的高速缓存记录,以保持可用服务的当前列表。传统上,计算机***是通过查询服务并且等待响应来完成这个工作的。如果在指定的时间内或者在指定的尝试次数之后没有收到响应,那么就从高速缓存删除该服务或关联设备的记录。以这种方式频繁轮询服务(和相关的设备)提供了更准确的服务列表,但是会显著地增加网络流量。
对资源记录进行高速缓存的一个问题源于过期数据。从网络中移除设备时,该设备可能并不会报告它的服务不再可用。电源故障、不适当的关机、以及网络电缆断开等仅仅是能够引起无效高速缓存记录的各种普通事故中的几个例子而已。通常,用户尝试使用一个服务不成功是因为该服务相应的本地高速缓存记录是无效的,这导致该服务不正确地显示为本地可用的。这会导致用户受挫,因为该服务在本地列表中仍然显示为可用的。而且,即使某些高速缓存记录在某些计算机***上被无效,但是同样无效的高速缓存记录仍然会出现在网络上的其他计算机***上。
因此,需要一种在高速缓存中保持资源记录的方法和装置,其不存在上述限制。
发明内容
本发明的一个实施例提供了一种便于验证高速缓存中资源记录的***。所述***始于在客户机检索资源记录,以及尝试使用这个信息来建立和对应设备的通信。如果尝试建立通信不成功,那么这意味着资源记录中的数据可能是不正确的,所以在网络上发出对那个资源记录的查询。如果收到包含不同资源记录数据的响应,那么就用新的数据更新高速缓存,并且使用新的信息重复建立通信的尝试。如果在适当地发送查询一次、两次、三次或者更多次之后,没有收到响应,那么这表示资源记录不再有效,并且它被从高速缓存删除。以这种方式,更迅速删除了过期数据,如果仅仅是基于原始附加到这个数据的使用期限做决定的话。
当从高速缓存删除记录时,这个技术可被循环应用,以质疑引用现在删除的记录的任何记录。从域名***取一个例子,如果现在删除的记录是地址记录,那么在它们的右手侧包含这个地址记录的名字的任何其他记录(例如SRV,PTR,CNAME等等)是类似可疑的,并且应该适当被类似更新或删除。在苹果计算机公司的集结技术实例中,来自设备的响应是组播响应,因此允许其他客户机更新它们本地高速缓存中的相应资源记录,而无需查询设备,因此节省网络带宽。
在这个实施例的一个变化中,在使资源记录无效之前,所述***发出对该资源记录的第二查询,并且等待来自设备对该第二查询的响应。如果在预定的时间中没有收到对该第二查询的响应,所述***就使得资源记录无效。
在这个实施例的一个变化中,所述***从第二客户机收到对第二资源记录的查询消息。在收到该查询时,所述***定位第二资源记录,并且等待对组播消息的组播响应。如果在预定的时间中没有收到对组播消息的组播响应,所述***就使得第二资源记录无效。
在这个实施例的一个变化中,无效资源记录也包括无效资源记录的子记录。
在这个实施例的一个变化中,如果在预定的时间中没有收到对查询的响应,所述***就在客户机检索资源记录的父记录,并且组播对父记录的查询。所述***然后等待来自设备的对查询的响应,并且如果在预定的时间中没有收到对查询的响应,所述***就使得父记录无效。
在这个实施例的一个变化中,如果在预定的时间中没有收到对查询的响应,所述***就在客户机检索资源记录的父记录,并且组播对父记录的查询。所述***然后从设备接收对该查询的响应,并且用响应中包括的信息更新资源记录。
在又一个变化中,所述***用响应中接收的信息更新父记录。
在这个实施例的一个变化中,所述***在预先指定的时间间隔被调用,以验证高速缓存中的资源记录(或说成,使高速缓存中的资源记录有效)。
附图说明
图1示出了根据本发明一个实施例的计算机网络;
图2示出了根据本发明的一个实施例被高速缓存的资源记录;
图3示出了一个流程图,其说明了根据本发明的一个实施例来更新高速缓存中资源记录的过程;
图4示出了一个流程图,其说明了根据本发明的一个实施例来响应查询以更新高速缓存中资源记录的过程。
具体实施方式
给出的以下描述将使本领域技术人员能够实现和使用本发明,并且是在一个特定应用中及其要求的背景下来提供这些描述的。对于本领域技术人员来说,所公开实施例的各种修改是十分明显的,而且在不脱离本发明精神和范围的情况下,本文所确定的一般性原理可应用在其他的实施例和具体应用中。因此,并无意将本发明限于所示的实施例,而是应该符合与本文所公开的原理和特征相一致的最广泛的范围。
在这个详细描述中所介绍的数据结构和代码通常存储在计算机可读介质上,其可以是能够存储计算机所用代码和/或数据的任何设备或介质。这包括但不限于:磁存储和光存储设备,例如磁盘驱动器、磁带、CD(压缩光盘)和DVD(数字通用光盘或数字视频光盘),以及体现在传输介质中(利用或未利用载波,信号被调制在其上)的计算机指令信号。例如传输介质可包括通信网络,例如因特网。
计算机网络
图1示出了根据本发明一个实施例的计算机网络100。网络100一般包括能够将计算节点连接到一起的任何类型的有线或无线通信信道。这包括但不限于:局域网、广域网或者组合型网络。在本发明的一个实施例中,网络100包括因特网。
网络100包括计算机***102和104,打印机106和108,以及扫描仪110。计算机***102和104一般包括任何类型的计算机***,这包括但不限于:基于微处理器的计算机***、大型计算机、数字信号处理器、便携式计算设备、个人记事本(personal organizer)、设备控制器以及在某种设备中的计算引擎。
在本发明的一个实施例中,网络100上的设备遵循即插即用协议,例如苹果计算机公司的集结技术。打印机106和108,以及扫描仪自配置到网络100,并且通过组播或广播(multicast)消息向网络100上的所有节点来通告它们的服务。计算机***102和104均采用包含网络100上已知设备和服务的资源记录的本地高速缓存。
被高速缓存的资源记录
图2描述了根据本发明一个实施例的被高速缓存的资源记录。网络100上的每个设备(例如打印机106)可以在网络100上的计算机***的高速缓存中具有几个资源记录,这些资源记录包含有与该设备有关的信息,例如服务指针记录202。服务指针记录202包括服务类型和服务实例的名字。在图2所示的例子中,服务指针记录202标识了一个名为“斯图亚特的打印机”的打印服务。
每个服务指针记录202通过名字引用相应的服务记录204,其含有关于在服务记录204中指定设备上服务的信息。注意一个设备可提供多种服务,因此可以具有多个服务记录。服务记录204包含提供服务的设备名字。在图2所示的例子中,服务记录204包含相应的地址记录206的名字,地址记录206包含了该服务的网际协议(IP)地址。
验证本地高速缓存中的资源记录
图3给出了一个流程图,其说明了根据本发明一个实施例更新或使本地高速缓存中的资源记录无效的过程。当从用户接收一个使用网络100上某个服务的请求时(步骤302),所述***开始。一旦收到该请求,所述***就会查找该设备的服务记录(步骤304)。
然后所述***确定用于连接到资源所提供的服务的主机地址(步骤306)。这是通过查找服务记录204引用的地址记录206来完成的。一旦知道了主机地址和端口号,所述***就尝试与以该主机和端口号与服务通信(步骤308)。如果通信成功,所述***就按照用户请求来使用该资源(步骤312)。
如果通信不成功,所述***就将地址记录206标记为可疑的(步骤316)。然后所述***通过向整个网络发送一个或多个组播消息(步骤318)并且等待响应(步骤320)来查询该地址记录。如果服务响应了,那么所述***就用包括在该响应中的信息来更新地址记录206,并且根据用户指示来使用该服务(步骤322)。如果在指定时间和指定查询次数之后仍然没有收到响应,那么就从高速缓存中删除该地址记录,并且所述***将服务记录206标记为可疑的(步骤324)。
在这一点上,重复该过程,并且所述***通过向整个网络发送组播消息并且等待响应来发送对服务记录204的查询。如果没有收到响应,那么服务记录204就被从高速缓存删除,并且所述***以同样的方式继续再确认服务指针202。
高速缓存中资源记录的间接更新
图4给出了一个流程图,其说明了根据本发明的一个实施例、基于其他计算机***执行的查询来更新本地高速缓存中资源记录202的过程。当计算机***102从计算机***104接收到组播消息时,所述***开始,其中该组播消息查询打印机106提供的服务(步骤402)。计算机***102查看其本地高速缓存,以定位一个与来自计算机***104的查询相对应的服务记录204(步骤404)。然后计算机***102等待来自该服务的响应(步骤406)。注意在本发明中,设备和服务通过向网络100发送组播消息来响应查询,而不是只向创建该查询的***发送单播消息来响应该查询。通过发送组播消息,这就允许网络100上的其他设备更新其本地高速缓存中的相应条目,而无需消耗额外的带宽。如果服务响应了,那么计算机***102就更新相应的资源记录,例如地址记录206和服务记录204,或者如果需要,就会创建地址记录206和服务记录204的新的版本(步骤408)。如果没有来自该服务的响应,那么计算机***102就会删除服务记录204(步骤410),并继续进行本地高速缓存中可能引用它的任何记录的再确认。
给出本发明各个实施例的前述介绍仅仅式为了说明和描述的目的。并无意对它们进行穷举或者用它们来将本发明限制为所公开的形式。因此,许多修改和变化对于本领域的技术人员而言是明显的。此外,上述公开并无意限制本发明。本发明的范围是由所附的权利要求确定的。

Claims (14)

1. 一种验证高速缓存中资源记录的方法,其包括:
在一个客户机处检索资源记录;
发布对所述资源记录的一个或多个查询;
等待对所述查询的响应;和
如果在一个预定时间内没有收到对所述查询的响应,就无效所述资源记录,并在所述客户机处检索所述资源记录的父记录,其中所述父记录引用所述资源记录;
发布对所述父记录的一个查询;
等待来自所述设备的对所述父记录的查询的响应;和
如果在一个预定时间内没有收到对所述父记录的查询的响应,那么就无效所述父记录,然后通过对任何引用现在无效的父记录的记录递归地应用上述过程,来重复上述过程。
2. 根据权利要求1所述的方法,其中对所述查询的响应是一个组播响应,从而在无需查询该设备的情况下允许其他客户机更新所述资源记录的相应副本,节约了网络带宽。
3. 根据权利要求1所述的方法,进一步包括:
接收一个组播消息,其来自于一个对第二设备进行查询的第二客户机;
定位一个与所述第二设备有关的第二资源记录;
等待对所述组播查询的组播响应;和
如果在预定查询次数之后,在所述预定时间内没有收到对所述组播查询的组播响应,那么就无效所述第二资源记录。
4. 根据权利要求1所述的方法,其中无效所述资源记录进一步包括无效所述资源记录的子记录。
5. 根据权利要求1所述的方法,其中如果在一个预定时间内没有收到对所述查询的响应,那么所述方法进一步包括:
在所述客户机检索所述资源记录的父记录,其中所述父记录引用所述资源记录;
发布对所述父记录的一个查询;
从所述设备接收对所述查询的响应,其中所述响应包括用于更新所述资源记录的信息;和
利用在所述响应中接收的信息来更新所述资源记录。
6. 根据权利要求5所述的方法,其中所述方法进一步包括利用在所述响应中接收的信息来更新所述父记录。
7. 根据权利要求1所述的方法,其中所述方法是以一个预定的时间间隔而被调用的。
8. 一种验证高速缓存中资源记录的装置,其包括:
在一个客户机处的检索机构,其被配置为检索所述资源记录;以及
一个无效机构,其被配置为:
发布对所述资源记录的一个或多个查询;
等待对所述查询的响应;和
如果在一个预定时间内没有收到对所述查询的响应,就无效所述资源记录;
其中如果在一个预定时间内没有收到对所述查询的响应,那么所述无效机构就被额外配置为:
在所述客户机处检索所述资源记录的父记录,其中所述父记录引用所述资源记录;
发布对所述父记录的一个查询;
等待来自所述设备的对所述父记录的查询的响应;和
如果在一个预定时间内没有收到对所述父记录的查询的响应,那么就无效所述父记录,然后通过对任何引用现在无效的父记录的记录递归地应用上述过程,来重复上述过程。
9. 根据权利要求8所述的装置,其中对所述查询的响应是一个组播响应,从而在无需查询该设备的情况下允许其他客户机更新所述资源记录的相应副本,因此节约了网络带宽。
10. 根据权利要求8所述的装置,其中所述无效机构被配置为:
接收一个组播消息,其来自于一个对第二设备进行查询的第二客户机;
定位一个与所述第二设备有关的第二资源记录;
等待对所述组播查询的组播响应;和
如果在预定查询次数之后,在所述预定时间内没有收到对所述组播查询的组播响应,那么就无效所述第二资源记录。
11. 根据权利要求8所述的装置,其中无效所述资源记录进一步包括无效所述资源记录的子记录。
12. 根据权利要求8所述的装置,进一步包括一个更新机构,其中如果在一个预定时间内没有收到对所述查询的响应,那么所述更新机构就被配置为:
在所述客户机检索所述资源记录的父记录,其中所述父记录引用所述资源记录;
发布对所述父记录的一个查询;
从所述设备接收对所述查询的响应,其中所述响应包括用于更新所述资源记录的信息;和
利用在所述响应中接收的信息来更新所述资源记录。
13. 根据权利要求12所述的装置,其中所述更新机构被额外配置为利用在所述响应中接收的信息来更新所述父记录。
14. 根据权利要求8所述的装置,其中所述装置是以一个预定的时间间隔而被调用的。
CNB2004800193742A 2003-08-20 2004-04-29 加速本地高速缓存中资源记录到期的方法和装置 Expired - Lifetime CN100418089C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US49684303P 2003-08-20 2003-08-20
US60/496,843 2003-08-20
US10/676,572 2003-09-30

Publications (2)

Publication Number Publication Date
CN1820268A CN1820268A (zh) 2006-08-16
CN100418089C true CN100418089C (zh) 2008-09-10

Family

ID=36919525

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004800193742A Expired - Lifetime CN100418089C (zh) 2003-08-20 2004-04-29 加速本地高速缓存中资源记录到期的方法和装置

Country Status (1)

Country Link
CN (1) CN100418089C (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101316226B (zh) 2007-06-01 2011-11-02 阿里巴巴集团控股有限公司 一种获取资源的方法、装置及***
CN110138850B (zh) * 2019-05-06 2022-05-03 福建星网智慧科技有限公司 一种基于DNSmasq实现云PBX业务负载均衡的方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1298503A (zh) * 1998-02-26 2001-06-06 太阳微***公司 分布式***中的动态查找服务
CN1317191A (zh) * 1998-09-09 2001-10-10 太阳微***公司 用于透明地处理dns业务的方法和装置
US20030046703A1 (en) * 2001-08-29 2003-03-06 Knowles Gregory T. Systems and methods for facilitating user access to content stored on private networks
US20030097464A1 (en) * 2001-11-21 2003-05-22 Frank Martinez Distributed web services network architecture
CN1423885A (zh) * 1999-11-26 2003-06-11 尼泰卡公司 网络地址服务器
CN1435974A (zh) * 2002-01-29 2003-08-13 三星电子株式会社 域名管理方法及其设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1298503A (zh) * 1998-02-26 2001-06-06 太阳微***公司 分布式***中的动态查找服务
CN1317191A (zh) * 1998-09-09 2001-10-10 太阳微***公司 用于透明地处理dns业务的方法和装置
CN1423885A (zh) * 1999-11-26 2003-06-11 尼泰卡公司 网络地址服务器
US20030046703A1 (en) * 2001-08-29 2003-03-06 Knowles Gregory T. Systems and methods for facilitating user access to content stored on private networks
US20030097464A1 (en) * 2001-11-21 2003-05-22 Frank Martinez Distributed web services network architecture
CN1435974A (zh) * 2002-01-29 2003-08-13 三星电子株式会社 域名管理方法及其设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Multicast DNS. Stuart Chehire, Marc Krochmal.Internet Draft. 2003
Multicast DNS. Stuart Chehire, Marc Krochmal.Internet Draft. 2003 *

Also Published As

Publication number Publication date
CN1820268A (zh) 2006-08-16

Similar Documents

Publication Publication Date Title
EP1532538B1 (en) System and method for automatically updating a wireless device
CN100504751C (zh) 在工作站上远程创建打印机的方法和***
EP0838056B1 (en) Method, apparatus and electronic storage medium for managing multiple server requests and collating responses
US7765228B2 (en) Method and system for data collection for alert delivery
US8065318B2 (en) Systems and methods for managing application configuration
RU2357283C2 (ru) Схема обновления соединений с сетевым печатающим устройством для клиентов печатающего устройства
US7475133B2 (en) Method for configuring a monitoring system to monitor selected network elements
US7343395B2 (en) Facilitating resource access using prioritized multicast responses to a discovery request
US20030090716A1 (en) Management information transmission apparatus, apparatus management apparatus, and apparatus management system
EP1039692A2 (en) Network peripheral server discovery method
JP2009151560A (ja) リソースの管理方法、情報処理システム、情報処理装置、及びプログラム
US20020198972A1 (en) Pre-boot multicast address management protocol for a computer network
CN101675424A (zh) 用于可扩展和冗余电信***的进程间通信方法和装置
US20040193601A1 (en) Method and contact list server for modifying the entry names in a contact list
CN100418089C (zh) 加速本地高速缓存中资源记录到期的方法和装置
US9619517B2 (en) Method and apparatus for accelerating the expiration of resource records in a local cache
US20050141041A1 (en) Network scanner and method of organizing and maintaining network scanning system
JP3811615B2 (ja) 情報配信システム、装置及び方法並びに記録媒体
JPH03157742A (ja) ファイルサーバ装置
JPH10301786A (ja) ネットワーク経由によるソフトウェアの自動インストール方式
US20090276496A1 (en) Systems, methods and computer program products for building a user's buddy list through public group membership
JP3638175B2 (ja) 通信アクセス制御装置
JPH09307582A (ja) ネットワーク資源管理システム
JPH0846623A (ja) 通信システム及びその構築方法
EP1615379A1 (en) Method for configuring a monitoring system to monitor selected network elements

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CX01 Expiry of patent term
CX01 Expiry of patent term

Granted publication date: 20080910