有效传送信息的系统及方法 本发明一般地涉及把信息提供者和网络服务的最终用户连接起来的计算机网络。更具体地,本发明涉及一种用于向用户有效地提供目标(targeted)信息的系统。
用户常常和网络服务连接,以便从广泛的资源中观看和下载信息。网络服务包括各种各样的网络,例如因特网或者其它联机服务,诸如America Online、Compuserve、DIALOG、GEnie、及PRODIGY。当用户从这种服务中选择所需的信息时,该服务通过网络传输媒体用分组形式向用户发送选定的信息。网络的传输能力是用带宽测量的,而信息分组是利用TCP/IP(传输控制协议/互联网协议)在可使用的带宽上传送的。目前,网络服务用户独占地控制供观看或下载的选定信息。
但是,这种系统有许多缺点。首先,网络服务的用户不能充分地利用可使用的带宽。例如,在现用传输介质上传送的信息分组之间的自由空间是未被使用的。此外,当同户不请求信息传送时,空闲链路的整个带宽是浪费掉的。
除了带宽的明显使用不足外,从用户以及信息提供者的角度而言,用户对信息传送地单侧控制是不合乎需要的,这些信息提供者例如是通过网络服务向用户提供信息的商业实体或非商业实体。因特网提供大量的信息并持续高速扩展,使得任何用户都难以对所有可使用的信息和资源保持全面的了解并且难以对因特网资源的变化和增加保持跟踪。最经常的是,用户仅访问现有信息的一小部分并且用户的访问幅度极大地取决于用户目前对现有资源的了解。因此,用户只接收因特网可提供的好处的一部分。
用户单侧控制还限制了信息提供者提供更好的服务。目前,信息提供者不能直接向一族特定的用户提供信息。只有知道该特定信息的并且做出访问该特定信息努力的用户才能接收该信息。此外,信息提供者只通过电子邮件向特定的用户发送信息。但是,大量的电子邮件不是专门瞄向特定的读者的,许多用户发现许多电子邮件是无关的或不令人感兴趣的并且迅速作为“无用邮件”删除。
另外,信息提供者常常收集不到有关用户对它的产品访问的信息,诸如用户观看什么内容、什么时候观看、以什么频率观看以及观看多久。信息提供者还可能不了解他的用户数量或者用户统计。例如,尽管有可能记录访问某因特网网址的次数,该己录并不表明用户实际上是否观看了信息。好的统计信息数据可以帮助信息提供者评估用户的兴趣,从而改进并使这些信息能更好的迎合用户的兴趣。
因此,希望通过在网络未被其它方占用时发送瞄向用户兴趣和爱好的信息,来最大限度的利用网络带宽。例如,希望在未占用时间内向用户发送信息。还希望通过利用其他空闲的带宽向用户发送目标信息,并且对正常的网络通信只会造成很小的或者不造成附加延迟。
此外,希望在不侵犯用户隐私情况下收集有关用户的信息。
还希望产生带有对用户需求准确评估的用户对信息提供者的响应报告,以创建更有吸引力的和更动态的网络服务环境。
从而,本发明针对的是一种可以极大解除因相关技术的局限和缺点带来的一个或多个问题的计算机网络。
根据本发明的目的,如具体化地和概括说明地那样,本发明提供一种用于连接信息提供者和用户的计算机网络,来向用户发送目标信息,它包括一个用户网点,一个主数据库,一个主网点和一个主程序。用户网点包括用于发送对应于该用户网点的网点ID的装置,用于控制目标信息传送并同时在无附加的通信延迟下向该用户网点传送非目标信息的装置,以及用于接收目标信息的装置。主数据库包含特征信息和对应的目标信息参照。和用户网点连接的主网点包括用于向用户网点传送目标信息参照的装置。主程序和主网点及主数据库连接,并包括用于从用户网点接收网点ID的装置,用于从主数据库访问对应于网点ID的特征信息的装置,以及用于向用户网点发送对应于所访问的特征信息的目标信息参照的装置。
根据本发明的另一个方法,一种用于连接信息提供者和用户的方法包括几个步骤。用户网点向主程序发送和该用户网点对应的网点ID。该主程序访问对应于该网点ID的特征信息,并且向该用户网点发送对应于所访问的特征信息的目标信息参照。用户网点控制目标信息的传送同时在没有附加的通信延迟下向该用户网点传送非目标信息,并且接收目标信息。
本说明书中所包含的并且构成本说明书的一部分的附图示意本发明并且和本说明书一起解释本发明的原理。
附图中:
图1是根据本发明的计算机网络的最佳实施方式的方块图;
图2是图1中所示的计算机网络的功能表示;
图3是根据本发明的一种最佳实施方式的用户注册进程的流程图;
图4示出图1中的主数据库里的几个列表;
图5A和5B是图1的计算机网络的总进程的流程图;
图6是根据本发明的一种实施方式的网络通信量监视器的原理图;
图7是一个流程图,说明图6的网络通信量监视器的过程;
图8是根据本发明的另一种实施方式的专用FTP服务软件的原理图;以及
图9是一个流程图,说明根据本发明的另一个实施方式的控制网络通信量的过程。
图1表示根据本发明的计算机网络100。通过传输媒体110连接计算机网络100的各种硬件和软件部件。用户网点120典型地是一台个人计算机,而Client 122是一个驻留在用户网点120上用于控制制网络信息传送的程序。
主网点130最好是一个具有专用FTP(文件传送协议)服务软件132的服务器,该软件把Client 122和信息传送给用户。服务程序132最好包括FTP软件,FTP软件提供必要的使对网络通信的干扰为最小的机制。专利FTP服务程序130还访问包含着参照信息项的信息数据库133。
主程序140是一个大服务器,最好建立在Sybase SQL-服务器平台142上,然而,一般的技术人员可以用其它的类似数据库技术取代Sybase SQL-服务器。Sybase SQL-服务器平台142访问主数据库143,后者含有包括着用户特征信息和目标信息参照在内的用户信息。客户控制程序144在用户网点120上和Client 122交互。用户鉴别程序146监视网络访问,而Web服务器148提供用于用户网点注册、信息和维护的主页。
具有用于监视网络访问的用户鉴别程序162的信息提供者160可包括为网络提供信息的大量的商业和非商业机构。
图2是图1中所示的计算机网络100的功能表示。出于方便,把因特网作为示例性的网络服务。
利用网络100的第一步是参照图3解释的用户网点注册过程。要启动一次网络通话,用户网点120处的用户和图2的因特网200连接(步骤302)。当在因特网200上“冲浪”时,用户可选择主程序140的主页(步骤304)。
若用户网点120未注册,用户可选择下载Client 122(步骤306)。然后用户可以启动Client 122(步骤308)并且通过在屏蔽上提供用户特征信息,例如年龄、性别、教育水平、工作状态、感兴趣的项目以及爱好,来填写注册表(步骤310)。在注册过程中和之后的任一时刻能更新用户特征信息。此外,任何时刻在保存已注册的用户特征信息的同时还能下载Client 122的更新版本。
用户网点120把填好的表发送到主程序140,后者把它存储在主数据库143中(步骤312)。一旦主程序140接收到来自用户网点120的填好的表,程序140向用户网点120发送一个唯一网点ID(步骤314)。这样完成用户网点的注册过程。在一随后的用户连接中,主程序140利用和用户网点120的网点ID对应的已注册用户的特征信息,而不关心用户网点120处具体用户的身份。此外,在已经下载了Client 122并且它在用户网点120上有效之后,在用户对网络100的随后访问中就不再执行用户鉴别程序146。
图4表示二个表,即用户网点表410和信息项目表430。和已注册的用户网点120对应的网点ID编译到用户网点表410中。采用网点ID确保用户隐私和匿名,这是因为网点ID不披露用户网点120处具体用户的身份和特征。用户网点表410的每个区段(最好含有单个网点ID)指向信息项目表430的某特定区段,该区段包括指向发送给用户网点120的有关目标信息的指针或地址。
图5A包含一个流程图,表示利用其他空闲的带宽向用户网点120发送目标信息的过程。当用户网点120的某用户和主程序140的Web服务器148连接时(步骤502),Client122通知主程序140网点ID(步骤506)。若主程序140接收来自已注册用户网点120的网点ID(步骤508),主程序140访问用户网点表410,以确定信息项目表430的对应区段存储在主数据库143中(以下称为“参照”)(步骤510)。一旦Client请求时,主程序140向用户网点120的Client 122发送该参照(步骤512)。这使Client 122对该参照相对应的存储在信息数据库133中的目标信息开始请求。
在用户计算机网络上的通话期间,主网点130或Client 122中的一个自动地在后台中向用户网点120发送参照的目标信息,从而对网络通信造成很小或不造成延迟(步骤516)。在传输介质上用分组方式发送目标信息,直至传送完全部的分组(步骤518)。
为使传送目标信息只对主网点130和用户网点120之间的非目标信息产生很小的或不产生附加的通信延迟,Client 122在不传送非目标信息时使主网点130于某现用链路上传送目标信息。若某链路是完全空闲的,例如当该用户不请求任何信息时,Client 122使主网点130沿该空闲的链路发送目标信息分组。
图6和图7分别是一个原理图和流程图,表示一个根据本发明的专用FTP服务程序132的一种实施方式而采用的用于消除非目标信息通信延迟的电路。网络通信监视器600驻留在主网点130上并包括一个移位寄存器610、一个延迟电路620、一个检测器630和一个流量控制器640。网络通信监视器600监视用户网点120和主网点130之间的传输媒体上的网络通信量。
首先,把非目标信息分组输入到网络通信监视器600(步骤702)。接着把移位寄存器610的每个位和检测器630的某平行位进行比较,以检测非目标信息分组的位模式识别,即标题和报尾(步骤704)。若检测到某信息分组的报尾(步骤710),延迟电路620向流量控制器640发送一个延迟启动信号(步骤712),以打开传送目标信息分组的门(步骤714)。该延迟启动信号确保在启动目标信息传送之前已经传送了全部的非目标信息。
另一方面,若检测出标题(步骤716),立即向流控制器640发送停止信号(步骤718),以关闭该门从而禁止目标信息分组的传送(步骤720)。实际上在检测到的非目标信息分组之前延迟电路620就发出该停止信号,以保证进入的非目标信息和进入的目标信息分组冲突。
图8表示根据专用FTP服务132的另一种实施方式,用于使无目标信息的通信延迟为最小的专用FTP服务程序的原理图。在该实施方式中,主网点130根据传输媒体上的网络通信量调节目标信息分组的传送。
如上面所解释,用户网点120上的Client开始请求从主网点130传送目标信息(步骤802)。一旦接收对目标信息的请求,主网点130向Client 122发送目标信息的分组(步骤804)。Client 122接收目标信息分组并且对每个接收到的分组向主网点130回送一个接收确认。重复步骤804和806直至把完整的目标信息传送到用户网节120上的一个暂存文件中。
通过测量传输目标信息分组和接收来自Client 122的确认之间的时间长度,主网点130估计非目标信息通信量的等级。若只存在很少的网络通信,会很快地回送确认。网络通信量的等级越高,接收到确认所需时间越长。主网点130根据接收Client 122确认所需的时间量调节所发送的目标信息分组量。当接收确认的时间量达到预定的最大值时,主网点130则减少所传送的目标信息分组的数量。从而,目标信息分组的传送对非目标信息通信的影响为最小。
在常规TCP/IP中,发送最大量的数据并且在接收侧排着IP分组的长列。然而,本实施方式只发送有限数量的目标数据以避免干扰非目标信息的传送。因此,用户察觉不到普通因特网通信传输时间的明显增加。
可以修改图8中所示的过程以通过对确认的时间采样动态地对目标信息分组的传送进行调步。这可把主网点130从等待每个分组的实际确认中解放出来。
另外,还可以修改该过程以便动态地调节发送窗口的大小(接收确认前每个分组发送的字节数量)。主网点130可以根据从跟踪接收确认所需时间量得出的估计调节发送窗口大小。例如,带有28.8Kbps调制解调器的用户网点120可以允许要比带有12.4Kbps调制解调器的用户网点高得多的传送速率。这样,可相应地调节发送窗口。
图9表示本发明中的另一个过程,其中Client 122控制对用户网点120的目标信息的传送。类似于上面的实施方式,用户网点120上的Client122请求从主网点130传送目标信息(步骤900)。对此响应,主网点130定位和该网点ID有关的用户网点表410的区段相对应的参照。一旦主网点130定位包含着目标信息指针的参照,网点130把该参照发送给Client 122(步骤905)。
Client 122接收来自主网点130的参照,并且根据目标信息指针组调节目标信息的发送。最初,Client 122设定一个最小往返延迟(MRD)的预定值,即从请求到接收网络信息所需的最小时间量(步骤910)。例如可以把目标信息分组的MRD设定为200毫秒。在最佳实施方式中,应把MRD设定为略低于实际估定的MRD。这可增大目标信息传送不会干扰非目标信息通信的可能性。
一旦设定初始MRD,Client 122开始从信息库133取对应于目标信息各指针的目标信息(步骤915)。最好Client 122一次只取一个分组的目标信息。通过这个过程,Client 122最好测量目标信息的每个分组的实际往返延迟(ARD)并且把它和MRD进行比较(步骤920)。Client 122根据ARD对MRD(ARD/MRD)的比率调节目标信息的传送速率(步骤925)。
若ARD/MRD比率为1∶1,Client 122在取下一个目标信息的分组之前可能等待预置的时间周期即2秒钟。随着ARD/MRD比率增大,在取另一个目标信息分组之前的等待时间则应该相应地增加。例如,若ARD为300毫秒而MRD为200毫秒,则在下一次取之前Client可能等待3秒钟。
低ARD/MRD意味着很少的或者没有非目标信息网络通信,从而允许利用其他未被充分利用的带宽传送目标信息分组。反之,高ARD/MRD比意味高等级的非目标信息网络通信量,从而Client 122相应地减少目标信息分组的传输率。
一般的技术人员可改变该比率和对应的等待时间之间的关系,例如线性地或按指数律地。通过根据ARD/MRD比率动态地调节等待时间,Client 122确保目标信息的传送不会对非目标的网络通信造成附加延迟。此处所说明的各比率和各等待时间仅是示范性的,熟练的技术人员可以容易地修改包括对ARD/MRD比率进行比较的频率、初始MRD以及对应的等待时间的不同设置。
参照图5B,一旦完成目标信息的传送,Client 122通过在用户的屏幕上呈现浮动图标通知用户目标信息已准备好可供显示(步骤520)。可通过用户点击浮动图标启动目标信息的显示(步骤522)。但是,最好在显示目标信息之前,Client 122去掉用户的窗口控制并且禁止用户网点120处的常规键盘及鼠标输入,以确保用户不受打扰地观看显示出的信息(步骤526)。
一旦Client 122检测出已选择了浮动图标,Client 122打开新的浏览器窗口,例如SpyGlass API兼容浏览器或者标准浏览器。该窗口最大化充满整个显示屏幕,并且按预定的显示时间周期向用户呈现目标信息的显示(步骤528)。如上面所提及,在该预定的时期内,用户不具有对输入设备如键盘或鼠标的控制。
Client 122设置显示计时器以确定目标信息的显示时期。在该显示计时器到时时(步骤530),用户可点击鼠标按钮以确认用户结束对该报文的观看(步骤532)。对鼠标器的点击开锁并使用户能控制输入设备。另外,Client 122在目标信息的显示中显示一个功能菜单。
这些功能,例如DONE、MORE、SAVE、GET和EXIT可以用图标表示。DONE图标通知Client 122用户结束观看所显示的信息。MORE图标允许用户访问有关显示项目的更多信息。激活该图标会把用户和所显示的目标信息的具体信息提供者的预定Web网页连接起来。SAVE图标把所显示的目标信息保存在用户网点120上供以后的检索或观看。GET图标允许用户检索以前保存好的目标信息,而EXIT图标关闭目标信息显示并返回到先前的显示上。
当用户选择其中一个功能时,Client 122通知主网点130(步骤534)并从用户网点120上删除暂存文件中的目标信息(步骤536)。Client 122还编译和生成用户报告,其中包含着诸如所显示的目标信息、显示时间和日期、显示的持续时间、利用MORE图标的任选请求以及计数信息的显示统计(步骤538)。Client 122最后把该用户报告发送到主程序140(步骤540),而主程序140利用该用户报告更新主数据库143(步骤542)。根据该更新的信息,Client 122得到对新目标信息的另一参照(步骤544)。
在结束用户计算机网络100上的通话之前一直继续上面所讨论的传送及显示目标信息的过程(步骤546)。同时,信息提供者160可访问主程序140以得到有关用户的显示统计的准确和及时结果。
在用户在网络100上的通话期间,客户控制程序周期性地在后台向Client 122发送报文以指令Client 122继续操作。若在预定的时间周期内Client 122未接收报文,例如用户和网络100断开或者由于电源故障出现异常终止,Client 122清除用户网点120的暂存文件区并且终止它的操作。这样,当用户不和网络100连接时,Client 122不会不必要地占用用户网点120的暂存文件。
本发明通过发送专用于用户特征的信息利用了否则是空闲的带宽并且同时使对常规网络通信的附加延迟为最小,而且为信息提供者产生带有对用户需求精确评估的用户响应报告。本发明通过提供新的媒体信道来收集、分配和显示信息,本发明还收集用户响应。
本发明对于希望向目标读者传播信息的非商业实体是有利的,例如在竞选期间。此外,商业广告商现在可以得到准确的用户响应,以便战略销售他们的产品和服务。本发明还为商业信息提供者提供一个论坛,以在网上用户通话时,通过周期性地交换用户所观看的目标信息来补偿用户联机服务的成本。
很显然,在不背离本发明的范围和实质下熟练的技术人员可对本发明的计算机网络和对该计算机网络的结构做出各种修改和改变。考虑到在此所公开的本发明的技术说明和操作,本发明的其它实施方式对于熟练的技术人员是明晰的。在下述权利要求书所指出的真正范围和实质中,本文中所计及到的技术说明和例子仅是示例性的。